/*! jQuery v1.6.4 http://jquery.com/ | http://jquery.org/license */
(function(a,b){function cu(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cr(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cq(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cp(){cn=b}function co(){setTimeout(cp,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function bZ(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function bY(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bA.test(a)?d(a,e):bY(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)bY(a+"["+e+"]",b[e],c,d);else d(a,b)}function bX(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function bW(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bP,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bW(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bW(a,c,d,e,"*",g));return l}function bV(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bL),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function by(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bt:bu;if(d>0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bv(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bl(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bd,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bk(a){f.nodeName(a,"input")?bj(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bj)}function bj(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bi(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bh(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bg(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bf(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function V(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(Q.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function U(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function M(a,b){return(a&&a!=="*"?a+".":"")+b.replace(y,"`").replace(z,"&")}function L(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(w,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function J(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function D(){return!0}function C(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function K(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(K,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z]|[0-9])/ig,x=/^-ms-/,y=function(a,b){return(b+"").toUpperCase()},z=d.userAgent,A,B,C,D=Object.prototype.toString,E=Object.prototype.hasOwnProperty,F=Array.prototype.push,G=Array.prototype.slice,H=String.prototype.trim,I=Array.prototype.indexOf,J={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.4",length:0,size:function(){return this.length},toArray:function(){return G.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?F.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),B.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(G.apply(this,arguments),"slice",G.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:F,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;B.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!B){B=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",C,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",C),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&K()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):J[D.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!E.call(a,"constructor")&&!E.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||E.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(x,"ms-").replace(w,y)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:H?function(a){return a==null?"":H.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?F.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(!b)return-1;if(I)return I.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=G.call(arguments,2),g=function(){return a.apply(c,f.concat(G.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){J["[object "+b+"]"]=b.toLowerCase()}),A=e.uaMatch(z),A.browser&&(e.browser[A.browser]=!0,e.browser.version=A.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?C=function(){c.removeEventListener("DOMContentLoaded",C,!1),e.ready()}:c.attachEvent&&(C=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",C),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g+"With"](this===b?d:this,[h])}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;a.setAttribute("className","t"),a.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},m&&f.extend(p,{position:"absolute",left:"-1000px",top:"-1000px"});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i=f.expando,j=typeof c=="string",k=a.nodeType,l=k?f.cache:a,m=k?a[f.expando]:a[f.expando]&&f.expando;if((!m||e&&m&&l[m]&&!l[m][i])&&j&&d===b)return;m||(k?a[f.expando]=m=++f.uuid:m=f.expando),l[m]||(l[m]={},k||(l[m].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?l[m][i]=f.extend(l[m][i],c):l[m]=f.extend(l[m],c);g=l[m],e&&(g[i]||(g[i]={}),g=g[i]),d!==b&&(g[f.camelCase(c)]=d);if(c==="events"&&!g[c])return g[i]&&g[i].events;j?(h=g[c],h==null&&(h=g[f.camelCase(c)])):h=g;return h}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e=f.expando,g=a.nodeType,h=g?f.cache:a,i=g?a[f.expando]:f.expando;if(!h[i])return;if(b){d=c?h[i][e]:h[i];if(d){d[b]||(b=f.camelCase(b)),delete d[b];if(!l(d))return}}if(c){delete h[i][e];if(!l(h[i]))return}var j=h[i][e];f.support.deleteExpando||!h.setInterval?delete h[i]:h[i]=null,j?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=j):g&&(f.support.deleteExpando?delete a[f.expando]:a.removeAttribute?a.removeAttribute(f.expando):a[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u,v;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(o);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(o);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(n," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=v:u&&(i=u)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.attr(a,b,""),a.removeAttribute(b),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(u&&f.nodeName(a,"button"))return u.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(u&&f.nodeName(a,"button"))return u.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==null?g:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabIndex=f.propHooks.tabIndex,v={get:function(a,c){var d;return f.prop(a,c)===!0||(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(u=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var w=/\.(.*)$/,x=/^(?:textarea|input|select)$/i,y=/\./g,z=/ /g,A=/[^\w\s.|`]/g,B=function(a){return a.replace(A,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=C;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=C);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),B).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete 
t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,M(a.origType,a.selector),f.extend({},a,{handler:L,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,M(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?D:C):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=D;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=D;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=D,this.stopPropagation()},isDefaultPrevented:C,isPropagationStopped:C,isImmediatePropagationStopped:C};var E=function(a){var b=a.relatedTarget,c=!1,d=a.type;a.type=a.data,b!==this&&(b&&(c=f.contains(this,b)),c||(f.event.handle.apply(this,arguments),a.type=d))},F=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?F:E,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?F:E)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=f.nodeName(b,"input")||f.nodeName(b,"button")?b.type:"";(c==="submit"||c==="image")&&f(b).closest("form").length&&J("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=f.nodeName(b,"input")||f.nodeName(b,"button")?b.type:"";(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&J("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var G,H=function(a){var b=f.nodeName(a,"input")?a.type:"",c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},I=function(c){var d=c.target,e,g;if(!!x.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=H(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:I,beforedeactivate:I,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&I.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&I.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",H(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in G)f.event.add(this,c+".specialChange",G[c]);return x.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return x.test(this.nodeName)}},G=f.event.special.change.filters,G.focus=G.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var K={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||C,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=w.exec(h),k="",j&&(k=j[0],h=h.replace(w,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,K[h]?(a.push(K[h]+k),h=h+k):h=(K[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+M(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+M(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var N=/Until$/,O=/^(?:parents|prevUntil|prevAll)/,P=/,/,Q=/^.[^:#\[\.,]*$/,R=Array.prototype.slice,S=f.expr.match.POS,T={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(V(this,a,!1),"not",a)},filter:function(a){return this.pushStack(V(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=S.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=S.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(U(c[0])||U(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=R.call(arguments);N.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!T[a]?f.unique(e):e,(this.length>1||P.test(d))&&O.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|object|embed|option|style)/i,bb=/checked\s*(?:[^=]|=\s*.checked.)/i,bc=/\/(java|ecma)script/i,bd=/^\s*<!(?:\[CDATA\[|\-\-)/,be={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};be.optgroup=be.option,be.tbody=be.tfoot=be.colgroup=be.caption=be.thead,be.th=be.td,f.support.htmlSerialize||(be._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!be[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bb.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bf(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bl)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i;b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!ba.test(a[0])&&(f.support.checkClone||!bb.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean
(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bh(a,d),e=bi(a),g=bi(d);for(h=0;e[h];++h)g[h]&&bh(e[h],g[h])}if(b){bg(a,d);if(c){e=bi(a),g=bi(d);for(h=0;e[h];++h)bg(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1></$2>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=be[l]||be._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bk(k[i]);else bk(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||bc.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bm=/alpha\([^)]*\)/i,bn=/opacity=([^)]*)/,bo=/([A-Z]|^ms)/g,bp=/^-?\d+(?:px)?$/i,bq=/^-?\d/,br=/^([\-+])=([\-+.\de]+)/,bs={position:"absolute",visibility:"hidden",display:"block"},bt=["Left","Right"],bu=["Top","Bottom"],bv,bw,bx;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bv(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=br.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bv)return bv(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return by(a,b,d);f.swap(a,bs,function(){e=by(a,b,d)});return e}},set:function(a,b){if(!bp.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bn.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bm,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bm.test(g)?g.replace(bm,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bv(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bw=function(a,c){var d,e,g;c=c.replace(bo,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bx=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bp.test(d)&&bq.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bv=bw||bx,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bz=/%20/g,bA=/\[\]$/,bB=/\r?\n/g,bC=/#.*$/,bD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bE=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bF=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bG=/^(?:GET|HEAD)$/,bH=/^\/\//,bI=/\?/,bJ=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bK=/^(?:select|textarea)/i,bL=/\s+/,bM=/([?&])_=[^&]*/,bN=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bO=f.fn.load,bP={},bQ={},bR,bS,bT=["*/"]+["*"];try{bR=e.href}catch(bU){bR=c.createElement("a"),bR.href="",bR=bR.href}bS=bN.exec(bR.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bO)return bO.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bJ,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bK.test(this.nodeName)||bE.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bB,"\r\n")}}):{name:b.name,value:c.replace(bB,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?bX(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),bX(a,b);return a},ajaxSettings:{url:bR,isLocal:bF.test(bS[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bT},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bV(bP),ajaxTransport:bV(bQ),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?bZ(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=b$(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bD.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bC,"").replace(bH,bS[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bL),d.crossDomain==null&&(r=bN.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bS[1]&&r[2]==bS[2]&&(r[3]||(r[1]==="http:"?80:443))==(bS[3]||(bS[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bW(bP,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bG.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bI.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bM,"$1_="+x);d.url=y+(y===d.url?(bI.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bT+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bW(bQ,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){s<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bz,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cq("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cr(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cq("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cq("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cr(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cj.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=ck.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cq("show",1),slideUp:cq("hide",1),slideToggle:cq("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function g(a){return d.step(a)}var d=this,e=f.fx;this.startTime=cn||co(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,g.elem=this.elem,g()&&f.timers.push(g)&&!cl&&(cl=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cn||co(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cl),cl=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cs=/^t(?:able|d|h)$/i,ct=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cu(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!cs.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=ct.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!ct.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cu(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cu(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNaN(j)?i:j}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window);/*!
 * jQuery UI 1.8.17
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI
 */(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.17",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e<d.length;e++)a.options[d[e][0]]&&d[e][1].apply(a.element,c)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(b,c){if(a(b).css("overflow")==="hidden")return!1;var d=c&&c==="left"?"scrollLeft":"scrollTop",e=!1;if(b[d]>0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a<b+c},isOver:function(b,c,d,e,f,g){return a.ui.isOverAxis(b,d,f)&&a.ui.isOverAxis(c,e,g)}}))})(jQuery),function(a,b){if(a.cleanData){var c=a.cleanData;a.cleanData=function(b){for(var d=0,e;(e=b[d])!=null;d++)try{a(e).triggerHandler("remove")}catch(f){}c(b)}}else{var d=a.fn.remove;a.fn.remove=function(b,c){return this.each(function(){c||(!b||a.filter(b,[this]).length)&&a("*",this).add([this]).each(function(){try{a(this).triggerHandler("remove")}catch(b){}});return d.call(a(this),b,c)})}}a.widget=function(b,c,d){var e=b.split(".")[0],f;b=b.split(".")[1],f=e+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][f]=function(c){return!!a.data(c,b)},a[e]=a[e]||{},a[e][b]=function(a,b){arguments.length&&this._createWidget(a,b)};var g=new c;g.options=a.extend(!0,{},g.options),a[e][b].prototype=a.extend(!0,g,{namespace:e,widgetName:b,widgetEventPrefix:a[e][b].prototype.widgetEventPrefix||b,widgetBaseClass:f},d),a.widget.bridge(b,a[e][b])},a.widget.bridge=function(c,d){a.fn[c]=function(e){var f=typeof e=="string",g=Array.prototype.slice.call(arguments,1),h=this;e=!f&&g.length?a.extend.apply(null,[!0,e].concat(g)):e;if(f&&e.charAt(0)==="_")return h;f?this.each(function(){var d=a.data(this,c),f=d&&a.isFunction(d[e])?d[e].apply(d,g):d;if(f!==d&&f!==b){h=f;return!1}}):this.each(function(){var b=a.data(this,c);b?b.option(e||{})._init():a.data(this,c,new d(e,this))});return h}},a.Widget=function(a,b){arguments.length&&this._createWidget(a,b)},a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:!1},_createWidget:function(b,c){a.data(c,this.widgetName,this),this.element=a(c),this.options=a.extend(!0,{},this.options,this._getCreateOptions(),b);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()}),this._create(),this._trigger("create"),this._init()},_getCreateOptions:function(){return a.metadata&&a.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName),this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled "+"ui-state-disabled")},widget:function(){return this.element},option:function(c,d){var e=c;if(arguments.length===0)return a.extend({},this.options);if(typeof c=="string"){if(d===b)return this.options[c];e={},e[c]=d}this._setOptions(e);return this},_setOptions:function(b){var c=this;a.each(b,function(a,b){c._setOption(a,b)});return this},_setOption:function(a,b){this.options[a]=b,a==="disabled"&&this.widget()[b?"addClass":"removeClass"](this.widgetBaseClass+"-disabled"+" "+"ui-state-disabled").attr("aria-disabled",b);return this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_trigger:function(b,c,d){var e,f,g=this.options[b];d=d||{},c=a.Event(c),c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase(),c.target=this.element[0],f=c.originalEvent;if(f)for(e in f)e in c||(c[e]=f[e]);this.element.trigger(c,d);return!(a.isFunction(g)&&g.call(this.element[0],c,d)===!1||c.isDefaultPrevented())}}}(jQuery),function(a,b){var c=!1;a(document).mouseup(function(a){c=!1}),a.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var b=this;this.element.bind("mousedown."+this.widgetName,function(a){return b._mouseDown(a)}).bind("click."+this.widgetName,function(c){if(!0===a.data(c.target,b.widgetName+".preventClickEvent")){a.removeData(c.target,b.widgetName+".preventClickEvent"),c.stopImmediatePropagation();return!1}}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(b){if(!c){this._mouseStarted&&this._mouseUp(b),this._mouseDownEvent=b;var d=this,e=b.which==1,f=typeof this.options.cancel=="string"&&b.target.nodeName?a(b.target).closest(this.options.cancel).length:!1;if(!e||f||!this._mouseCapture(b))return!0;this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){d.mouseDelayMet=!0},this.options.delay));if(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)){this._mouseStarted=this._mouseStart(b)!==!1;if(!this._mouseStarted){b.preventDefault();return!0}}!0===a.data(b.target,this.widgetName+".preventClickEvent")&&a.removeData(b.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(a){return d._mouseMove(a)},this._mouseUpDelegate=function(a){return d._mouseUp(a)},a(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),b.preventDefault(),c=!0;return!0}},_mouseMove:function(b){if(a.browser.msie&&!(document.documentMode>=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})}(jQuery),function(a,b){a.widget("ui.draggable",a.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1},_create:function(){this.options.helper=="original"&&!/^(?:r|a|f)/.test(this.element.css("position"))&&(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},destroy:function(){if(!!this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy();return this}},_mouseCapture:function(b){var c=this.options;if(this.helper||c.disabled||a(b.target).is(".ui-resizable-handle"))return!1;this.handle=this._getHandle(b);if(!this.handle)return!1;c.iframeFix&&a(c.iframeFix===!0?"iframe":c.iframeFix).each(function(){a('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(a(this).offset()).appendTo("body")});return!0},_mouseStart:function(b){var c=this.options;this.helper=this._createHelper(b),this._cacheHelperProportions(),a.ui.ddmanager&&(a.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,c.cursorAt&&this._adjustOffsetFromHelper(c.cursorAt),c.containment&&this._setContainment();if(this._trigger("start",b)===!1){this._clear();return!1}this._cacheHelperProportions(),a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this.helper.addClass("ui-draggable-dragging"),this._mouseDrag(b,!0),a.ui.ddmanager&&a.ui.ddmanager.dragStart(this,b);return!0},_mouseDrag:function(b,c){this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute");if(!c){var d=this._uiHash();if(this._trigger("drag",b,d)===!1){this._mouseUp({});return!1}this.position=d.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";a.ui.ddmanager&&a.ui.ddmanager.drag(this,b);return!1},_mouseStop:function(b){var c=!1;a.ui.ddmanager&&!this.options.dropBehaviour&&(c=a.ui.ddmanager.drop(this,b)),this.dropped&&(c=this.dropped,this.dropped=!1);if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return!1;if(this.options.revert=="invalid"&&!c||this.options.revert=="valid"&&c||this.options.revert===!0||a.isFunction(this.options.revert)&&this.options.revert.call(this.element,c)){var d=this;a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){d._trigger("stop",b)!==!1&&d._clear()})}else this._trigger("stop",b)!==!1&&this._clear();return!1},_mouseUp:function(b){this.options.iframeFix===!0&&a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,b);return a.ui.mouse.prototype._mouseUp.call(this,b)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(b){var c=!this.options.handle||!a(this.options.handle,this.element).length?!0:!1;a(this.options.handle,this.element).find("*").andSelf().each(function(){this==b.target&&(c=!0)});return c},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper)?a(c.helper.apply(this.element[0],[b])):c.helper=="clone"?this.element.clone().removeAttr("id"):this.element;d.parents("body").length||d.appendTo(c.appendTo=="parent"?this.element[0].parentNode:c.appendTo),d[0]!=this.element[0]&&!/(fixed|absolute)/.test(d.css("position"))&&d.css("position","absolute");return d},_adjustOffsetFromHelper:function(b){typeof b=="string"&&(b=b.split(" ")),a.isArray(b)&&(b={left:+b[0],top:+b[1]||0}),"left"in b&&(this.offset.click.left=b.left+this.margins.left),"right"in b&&(this.offset.click.left=this.helperProportions.width-b.right+this.margins.left),"top"in b&&(this.offset.click.top=b.top+this.margins.top),"bottom"in b&&(this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var b=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(b.left+=this.scrollParent.scrollLeft(),b.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&a.browser.msie)b={top:0,left:0};return{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var b=this.options;b.containment=="parent"&&(b.containment=this.helper[0].parentNode);if(b.containment=="document"||b.containment=="window")this.containment=[b.containment=="document"?0:a(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,b.containment=="document"?0:a(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,(b.containment=="document"?0:a(window).scrollLeft())+a(b.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(b.containment=="document"?0:a(window).scrollTop())+(a(b.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(b.containment)&&b.containment.constructor!=Array){var c=a(b.containment),d=c[0];if(!d)return;var e=c.offset(),f=a(d).css("overflow")!="hidden";this.containment=[(parseInt(a(d).css("borderLeftWidth"),10)||0)+(parseInt(a(d).css("paddingLeft"),10)||0),(parseInt(a(d).css("borderTopWidth"),10)||0)+(parseInt(a(d).css("paddingTop"),10)||0),(f?Math.max(d.scrollWidth,d.offsetWidth):d.offsetWidth)-(parseInt(a(d).css("borderLeftWidth"),10)||0)-(parseInt(a(d).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(f?Math.max(d.scrollHeight,d.offsetHeight):d.offsetHeight)-(parseInt(a(d).css("borderTopWidth"),10)||0)-(parseInt(a(d).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=c}else b.containment.constructor==Array&&(this.containment=b.containment)},_convertPositionTo:function(b,c){c||(c=this.position);var d=b=="absolute"?1:-1,e=this.options,f=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,g=/(html|body)/i.test(f[0].tagName);return{top:c.top+this.offset.relative.top*d+this.offset.parent.top*d-(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():g?0:f.scrollTop())*d),left:c.left+this.offset.relative.left*d+this.offset.parent.left*d-(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():g?0:f.scrollLeft())*d)}},_generatePosition:function(b){var c=this.options,d=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(d[0].tagName),f=b.pageX,g=b.pageY;if(this.originalPosition){var h;if(this.containment){if(this.relative_container){var i=this.relative_container.offset();h=[this.containment[0]+i.left,this.containment[1]+i.top,this.containment[2]+i.left,this.containment[3]+i.top]}else h=this.containment;b.pageX-this.offset.click.left<h[0]&&(f=h[0]+this.offset.click.left),b.pageY-this.offset.click.top<h[1]&&(g=h[1]+this.offset.click.top),b.pageX-this.offset.click.left>h[2]&&(f=h[2]+this.offset.click.left),b.pageY-this.offset.click.top>h[3]&&(g=h[3]+this.offset.click.top)}if(c.grid){var j=c.grid[1]?this.originalPageY+Math.round((g-this.originalPageY)/c.grid[1])*c.grid[1]:this.originalPageY;g=h?j-this.offset.click.top<h[1]||j-this.offset.click.top>h[3]?j-this.offset.click.top<h[1]?j+c.grid[1]:j-c.grid[1]:j:j;var k=c.grid[0]?this.originalPageX+Math.round((f-this.originalPageX)/c.grid[0])*c.grid[0]:this.originalPageX;f=h?k-this.offset.click.left<h[0]||k-this.offset.click.left>h[2]?k-this.offset.click.left<h[0]?k+c.grid[0]:k-c.grid[0]:k:k}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:d.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:d.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1},_trigger:function(b,c,d){d=d||this._uiHash(),a.ui.plugin.call(this,b,[c,d]),b=="drag"&&(this.positionAbs=this._convertPositionTo("absolute"));return a.Widget.prototype._trigger.call(this,b,c,d)},plugins:{},_uiHash:function(a){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),a.extend(a.ui.draggable,{version:"1.8.17"}),a.ui.plugin.add("draggable","connectToSortable",{start:function(b,c){var d=a(this).data("draggable"),e=d.options,f=a.extend({},c,{item:d.element});d.sortables=[],a(e.connectToSortable).each(function(){var c=a.data(this,"sortable");c&&!c.options.disabled&&(d.sortables.push({instance:c,shouldRevert:c.options.revert}),c.refreshPositions(),c._trigger("activate",b,f))})},stop:function(b,c){var d=a(this).data("draggable"),e=a.extend({},c,{item:d.element});a.each(d.sortables,function(){this.instance.isOver?(this.instance.isOver=0,d.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=!0),this.instance._mouseStop(b),this.instance.options.helper=this.instance.options._helper,d.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",b,e))})},drag:function(b,c){var d=a(this).data("draggable"),e=this,f=function(b){var c=this.offset.click.top,d=this.offset.click.left,e=this.positionAbs.top,f=this.positionAbs.left,g=b.height,h=b.width,i=b.top,j=b.left;return a.ui.isOver(e+c,f+d,i,j,g,h)};a.each(d.sortables,function(f){this.instance.positionAbs=d.positionAbs,this.instance.helperProportions=d.helperProportions,this.instance.offset.click=d.offset.click,this.instance._intersectsWith(this.instance.containerCache)?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=a(e).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return c.helper[0]},b.target=this.instance.currentItem[0],this.instance._mouseCapture(b,!0),this.instance._mouseStart(b,!0,!0),this.instance.offset.click.top=d.offset.click.top,this.instance.offset.click.left=d.offset.click.left,this.instance.offset.parent.left-=d.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=d.offset.parent.top-this.instance.offset.parent.top,d._trigger("toSortable",b),d.dropped=this.instance.element,d.currentItem=d.element,this.instance.fromOutside=d),this.instance.currentItem&&this.instance._mouseDrag(b)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",b,this.instance._uiHash(this.instance)),this.instance._mouseStop(b,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),d._trigger("fromSortable",b),d.dropped=!1)})}}),a.ui.plugin.add("draggable","cursor",{start:function(b,c){var d=a("body"),e=a(this).data("draggable").options;d.css("cursor")&&(e._cursor=d.css("cursor")),d.css("cursor",e.cursor)},stop:function(b,c){var d=a(this).data("draggable").options;d._cursor&&a("body").css("cursor",d._cursor)}}),a.ui.plugin.add("draggable","opacity",{start:function(b,c){var d=a(c.helper),e=a(this).data("draggable").options;d.css("opacity")&&(e._opacity=d.css("opacity")),d.css("opacity",e.opacity)},stop:function(b,c){var d=a(this).data("draggable").options;d._opacity&&a(c.helper).css("opacity",d._opacity)}}),a.ui.plugin.add("draggable","scroll",{start:function(b,c){var d=a(this).data("draggable");d.scrollParent[0]!=document&&d.scrollParent[0].tagName!="HTML"&&(d.overflowOffset=d.scrollParent.offset())},drag:function(b,c){var d=a(this).data("draggable"),e=d.options,f=!1;if(d.scrollParent[0]!=document&&d.scrollParent[0].tagName!="HTML"){if(!e.axis||e.axis!="x")d.overflowOffset.top+d.scrollParent[0].offsetHeight-b.pageY<e.scrollSensitivity?d.scrollParent[0].scrollTop=f=d.scrollParent[0].scrollTop+e.scrollSpeed:b.pageY-d.overflowOffset.top<e.scrollSensitivity&&(d.scrollParent[0].scrollTop=f=d.scrollParent[0].scrollTop-e.scrollSpeed);if(!e.axis||e.axis!="y")d.overflowOffset.left+d.scrollParent[0].offsetWidth-b.pageX<e.scrollSensitivity?d.scrollParent[0].scrollLeft=f=d.scrollParent[0].scrollLeft+e.scrollSpeed:b.pageX-d.overflowOffset.left<e.scrollSensitivity&&(d.scrollParent[0].scrollLeft=f=d.scrollParent[0].scrollLeft-e.scrollSpeed)}else{if(!e.axis||e.axis!="x")b.pageY-a(document).scrollTop()<e.scrollSensitivity?f=a(document).scrollTop(a(document).scrollTop()-e.scrollSpeed):a(window).height()-(b.pageY-a(document).scrollTop())<e.scrollSensitivity&&(f=a(document).scrollTop(a(document).scrollTop()+e.scrollSpeed));if(!e.axis||e.axis!="y")b.pageX-a(document).scrollLeft()<e.scrollSensitivity?f=a(document).scrollLeft(a(document).scrollLeft()-e.scrollSpeed):a(window).width()-(b.pageX-a(document).scrollLeft())<e.scrollSensitivity&&(f=a(document).scrollLeft(a(document).scrollLeft()+e.scrollSpeed))}f!==!1&&a.ui.ddmanager&&!e.dropBehaviour&&a.ui.ddmanager.prepareOffsets(d,b)}}),a.ui.plugin.add("draggable","snap",{start:function(b,c){var d=a(this).data("draggable"),e=d.options;d.snapElements=[],a(e.snap.constructor!=String?e.snap.items||":data(draggable)":e.snap).each(function(){var b=a(this),c=b.offset();this!=d.element[0]&&d.snapElements.push({item:this,width:b.outerWidth(),height:b.outerHeight(),top:c.top,left:c.left})})},drag:function(b,c){var d=a(this).data("draggable"),e=d.options,f=e.snapTolerance,g=c.offset.left,h=g+d.helperProportions.width,i=c.offset.top,j=i+d.helperProportions.height;for(var k=d.snapElements.length-1;k>=0;k--){var l=d.snapElements[k].left,m=l+d.snapElements[k].width,n=d.snapElements[k].top,o=n+d.snapElements[k].height;if(!(l-f<g&&g<m+f&&n-f<i&&i<o+f||l-f<g&&g<m+f&&n-f<j&&j<o+f||l-f<h&&h<m+f&&n-f<i&&i<o+f||l-f<h&&h<m+f&&n-f<j&&j<o+f)){d.snapElements[k].snapping&&d.options.snap.release&&d.options.snap.release.call(d.element,b,a.extend(d._uiHash(),{snapItem:d.snapElements[k].item})),d.snapElements[k].snapping=!1;continue}if(e.snapMode!="inner"){var p=Math.abs(n-j)<=f,q=Math.abs(o-i)<=f,r=Math.abs(l-h)<=f,s=Math.abs(m-g)<=f;p&&(c.position.top=d._convertPositionTo("relative",{top:n-d.helperProportions.height,left:0}).top-d.margins.top),q&&(c.position.top=d._convertPositionTo("relative",{top:o,left:0}).top-d.margins.top),r&&(c.position.left=d._convertPositionTo("relative",{top:0,left:l-d.helperProportions.width}).left-d.margins.left),s&&(c.position.left=d._convertPositionTo("relative",{top:0,left:m}).left-d.margins.left)}var t=p||q||r||s;if(e.snapMode!="outer"){var p=Math.abs(n-i)<=f,q=Math.abs(o-j)<=f,r=Math.abs(l-g)<=f,s=Math.abs(m-h)<=f;p&&(c.position.top=d._convertPositionTo("relative",{top:n,left:0}).top-d.margins.top),q&&(c.position.top=d._convertPositionTo("relative",{top:o-d.helperProportions.height,left:0}).top-d.margins.top),r&&(c.position.left=d._convertPositionTo("relative",{top:0,left:l}).left-d.margins.left),s&&(c.position.left=d._convertPositionTo("relative",{top:0,left:m-d.helperProportions.width}).left-d.margins.left)}!d.snapElements[k].snapping&&(p||q||r||s||t)&&d.options.snap.snap&&d.options.snap.snap.call(d.element,b,a.extend(d._uiHash(),{snapItem:d.snapElements[k].item})),d.snapElements[k].snapping=p||q||r||s||t}}}),a.ui.plugin.add("draggable","stack",{start:function(b,c){var d=a(this).data("draggable").options,e=a.makeArray(a(d.stack)).sort(function(b,c){return(parseInt(a(b).css("zIndex"),10)||0)-(parseInt(a(c).css("zIndex"),10)||0)});if(!!e.length){var f=parseInt(e[0].style.zIndex)||0;a(e).each(function(a){this.style.zIndex=f+a}),this[0].style.zIndex=f+e.length}}}),a.ui.plugin.add("draggable","zIndex",{start:function(b,c){var d=a(c.helper),e=a(this).data("draggable").options;d.css("zIndex")&&(e._zIndex=d.css("zIndex")),d.css("zIndex",e.zIndex)},stop:function(b,c){var d=a(this).data("draggable").options;d._zIndex&&a(c.helper).css("zIndex",d._zIndex)}})}(jQuery),function(a,b){a.widget("ui.droppable",{widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect"},_create:function(){var b=this.options,c=b.accept;this.isover=0,this.isout=1,this.accept=a.isFunction(c)?c:function(a){return a.is(c)},this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight},a.ui.ddmanager.droppables[b.scope]=a.ui.ddmanager.droppables[b.scope]||[],a.ui.ddmanager.droppables[b.scope].push(this),b.addClasses&&this.element.addClass("ui-droppable")},destroy:function(){var b=a.ui.ddmanager.droppables[this.options.scope];for(var c=0;c<b.length;c++)b[c]==this&&b.splice(c,1);this.element.removeClass("ui-droppable ui-droppable-disabled").removeData("droppable").unbind(".droppable");return this},_setOption:function(b,c){b=="accept"&&(this.accept=a.isFunction(c)?c:function(a){return a.is(c)}),a.Widget.prototype._setOption.apply(this,arguments)},_activate:function(b){var c=a.ui.ddmanager.current;this.options.activeClass&&this.element.addClass(this.options.activeClass),c&&this._trigger("activate",b,this.ui(c))},_deactivate:function(b){var c=a.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass),c&&this._trigger("deactivate",b,this.ui(c))},_over:function(b){var c=a.ui.ddmanager.current;!!c&&(c.currentItem||c.element)[0]!=this.element[0]&&this.accept.call(this.element[0],c.currentItem||c.element)&&(this.options.hoverClass&&this.element.addClass(this.options.hoverClass),this._trigger("over",b,this.ui(c)))},_out:function(b){var c=a.ui.ddmanager.current;!!c&&(c.currentItem||c.element)[0]!=this.element[0]&&this.accept.call(this.element[0],c.currentItem||c.element)&&(this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("out",b,this.ui(c)))},_drop:function(b,c){var d=c||a.ui.ddmanager.current;if(!d||(d.currentItem||d.element)[0]==this.element[0])return!1;var e=!1;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var b=a.data(this,"droppable");if(b.options.greedy&&!b.options.disabled&&b.options.scope==d.options.scope&&b.accept.call(b.element[0],d.currentItem||d.element)&&a.ui.intersect(d,a.extend(b,{offset:b.element.offset()}),b.options.tolerance)){e=!0;return!1}});if(e)return!1;if(this.accept.call(this.element[0],d.currentItem||d.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass),this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("drop",b,this.ui(d));return this.element}return!1},ui:function(a){return{draggable:a.currentItem||a.element,helper:a.helper,position:a.position,offset:a.positionAbs}}}),a.extend(a.ui.droppable,{version:"1.8.17"}),a.ui.intersect=function(b,c,d){if(!c.offset)return!1;var e=(b.positionAbs||b.position.absolute).left,f=e+b.helperProportions.width,g=(b.positionAbs||b.position.absolute).top,h=g+b.helperProportions.height,i=c.offset.left,j=i+c.proportions.width,k=c.offset.top,l=k+c.proportions.height;switch(d){case"fit":return i<=e&&f<=j&&k<=g&&h<=l;case"intersect":return i<e+b.helperProportions.width/2&&f-b.helperProportions.width/2<j&&k<g+b.helperProportions.height/2&&h-b.helperProportions.height/2<l;case"pointer":var m=(b.positionAbs||b.position.absolute).left+(b.clickOffset||b.offset.click).left,n=(b.positionAbs||b.position.absolute).top+(b.clickOffset||b.offset.click).top,o=a.ui.isOver(n,m,k,i,c.proportions.height,c.proportions.width);return o;case"touch":return(g>=k&&g<=l||h>=k&&h<=l||g<k&&h>l)&&(e>=i&&e<=j||f>=i&&f<=j||e<i&&f>j);default:return!1}},a.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(b,c){var d=a.ui.ddmanager.droppables[b.options.scope]||[],e=c?c.type:null,f=(b.currentItem||b.element).find(":data(droppable)").andSelf();droppablesLoop:for(var g=0;g<d.length;g++){if(d[g].options.disabled||b&&!d[g].accept.call(d[g].element[0],b.currentItem||b.element))continue;for(var h=0;h<f.length;h++)if(f[h]==d[g].element[0]){d[g].proportions.height=0;continue droppablesLoop}d[g].visible=d[g].element.css("display")!="none";if(!d[g].visible)continue;e=="mousedown"&&d[g]._activate.call(d[g],c),d[g].offset=d[g].element.offset(),d[g].proportions={width:d[g].element[0].offsetWidth,height:d[g].element
[0].offsetHeight}}},drop:function(b,c){var d=!1;a.each(a.ui.ddmanager.droppables[b.options.scope]||[],function(){!this.options||(!this.options.disabled&&this.visible&&a.ui.intersect(b,this,this.options.tolerance)&&(d=this._drop.call(this,c)||d),!this.options.disabled&&this.visible&&this.accept.call(this.element[0],b.currentItem||b.element)&&(this.isout=1,this.isover=0,this._deactivate.call(this,c)))});return d},dragStart:function(b,c){b.element.parents(":not(body,html)").bind("scroll.droppable",function(){b.options.refreshPositions||a.ui.ddmanager.prepareOffsets(b,c)})},drag:function(b,c){b.options.refreshPositions&&a.ui.ddmanager.prepareOffsets(b,c),a.each(a.ui.ddmanager.droppables[b.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var d=a.ui.intersect(b,this,this.options.tolerance),e=!d&&this.isover==1?"isout":d&&this.isover==0?"isover":null;if(!e)return;var f;if(this.options.greedy){var g=this.element.parents(":data(droppable):eq(0)");g.length&&(f=a.data(g[0],"droppable"),f.greedyChild=e=="isover"?1:0)}f&&e=="isover"&&(f.isover=0,f.isout=1,f._out.call(f,c)),this[e]=1,this[e=="isout"?"isover":"isout"]=0,this[e=="isover"?"_over":"_out"].call(this,c),f&&e=="isout"&&(f.isout=0,f.isover=1,f._over.call(f,c))}})},dragStop:function(b,c){b.element.parents(":not(body,html)").unbind("scroll.droppable"),b.options.refreshPositions||a.ui.ddmanager.prepareOffsets(b,c)}}}(jQuery),function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(/relative/.test(this.element.css("position"))&&a.browser.opera&&this.element.css({position:"relative",top:"auto",left:"auto"}),this.element.wrap(a('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e<d.length;e++){var f=a.trim(d[e]),g="ui-resizable-"+f,h=a('<div class="ui-resizable-handle '+g+'"></div>');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),a.browser.opera&&/relative/.test(f.css("position"))&&f.css({position:"relative",top:"auto",left:"auto"}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),e<h.maxWidth&&(h.maxWidth=e),g<h.maxHeight&&(h.maxHeight=g);this._vBoundaries=h},_updateCache:function(a){var b=this.options;this.offset=this.helper.offset(),d(a.left)&&(this.position.left=a.left),d(a.top)&&(this.position.top=a.top),d(a.height)&&(this.size.height=a.height),d(a.width)&&(this.size.width=a.width)},_updateRatio:function(a,b){var c=this.options,e=this.position,f=this.size,g=this.axis;d(a.height)?a.width=a.height*this.aspectRatio:d(a.width)&&(a.height=a.width/this.aspectRatio),g=="sw"&&(a.left=e.left+(f.width-a.width),a.top=null),g=="nw"&&(a.top=e.top+(f.height-a.height),a.left=e.left+(f.width-a.width));return a},_respectSize:function(a,b){var c=this.helper,e=this._vBoundaries,f=this._aspectRatio||b.shiftKey,g=this.axis,h=d(a.width)&&e.maxWidth&&e.maxWidth<a.width,i=d(a.height)&&e.maxHeight&&e.maxHeight<a.height,j=d(a.width)&&e.minWidth&&e.minWidth>a.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d<this._proportionallyResizeElements.length;d++){var e=this._proportionallyResizeElements[d];if(!this.borderDif){var f=[e.css("borderTopWidth"),e.css("borderRightWidth"),e.css("borderBottomWidth"),e.css("borderLeftWidth")],g=[e.css("paddingTop"),e.css("paddingRight"),e.css("paddingBottom"),e.css("paddingLeft")];this.borderDif=a.map(f,function(a,b){var c=parseInt(a,10)||0,d=parseInt(g[b],10)||0;return c+d})}if(a.browser.msie&&(!!a(c).is(":hidden")||!!a(c).parents(":hidden").length))continue;e.css({height:c.height()-this.borderDif[0]-this.borderDif[2]||0,width:c.width()-this.borderDif[1]-this.borderDif[3]||0})}}},_renderProxy:function(){var b=this.element,c=this.options;this.elementOffset=b.offset();if(this._helper){this.helper=this.helper||a('<div style="overflow:hidden;"></div>');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.17"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10),position:b.css("position")})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,e){a(b).each(function(){var b=a(this),f=a(this).data("resizable-alsoresize"),g={},i=e&&e.length?e:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(i,function(a,b){var c=(f[b]||0)+(h[b]||0);c&&c>=0&&(g[b]=c||null)}),a.browser.opera&&/relative/.test(b.css("position"))&&(d._revertToRelativePosition=!0,b.css({position:"absolute",top:"auto",left:"auto"})),b.css(g)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.css({position:b.data("resizable-alsoresize").position})})};d._revertToRelativePosition&&(d._revertToRelativePosition=!1,typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)),a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}}(jQuery),function(a,b){a.widget("ui.selectable",a.ui.mouse,{options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch"},_create:function(){var b=this;this.element.addClass("ui-selectable"),this.dragged=!1;var c;this.refresh=function(){c=a(b.options.filter,b.element[0]),c.addClass("ui-selectee"),c.each(function(){var b=a(this),c=b.offset();a.data(this,"selectable-item",{element:this,$element:b,left:c.left,top:c.top,right:c.left+b.outerWidth(),bottom:c.top+b.outerHeight(),startselected:!1,selected:b.hasClass("ui-selected"),selecting:b.hasClass("ui-selecting"),unselecting:b.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=c.addClass("ui-selectee"),this._mouseInit(),this.helper=a("<div class='ui-selectable-helper'></div>")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable"),this._mouseDestroy();return this},_mouseStart:function(b){var c=this;this.opos=[b.pageX,b.pageY];if(!this.options.disabled){var d=this.options;this.selectees=a(d.filter,this.element[0]),this._trigger("start",b),a(d.appendTo).append(this.helper),this.helper.css({left:b.clientX,top:b.clientY,width:0,height:0}),d.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var d=a.data(this,"selectable-item");d.startselected=!0,!b.metaKey&&!b.ctrlKey&&(d.$element.removeClass("ui-selected"),d.selected=!1,d.$element.addClass("ui-unselecting"),d.unselecting=!0,c._trigger("unselecting",b,{unselecting:d.element}))}),a(b.target).parents().andSelf().each(function(){var d=a.data(this,"selectable-item");if(d){var e=!b.metaKey&&!b.ctrlKey||!d.$element.hasClass("ui-selected");d.$element.removeClass(e?"ui-unselecting":"ui-selected").addClass(e?"ui-selecting":"ui-unselecting"),d.unselecting=!e,d.selecting=e,d.selected=e,e?c._trigger("selecting",b,{selecting:d.element}):c._trigger("unselecting",b,{unselecting:d.element});return!1}})}},_mouseDrag:function(b){var c=this;this.dragged=!0;if(!this.options.disabled){var d=this.options,e=this.opos[0],f=this.opos[1],g=b.pageX,h=b.pageY;if(e>g){var i=g;g=e,e=i}if(f>h){var i=h;h=f,f=i}this.helper.css({left:e,top:f,width:g-e,height:h-f}),this.selectees.each(function(){var i=a.data(this,"selectable-item");if(!!i&&i.element!=c.element[0]){var j=!1;d.tolerance=="touch"?j=!(i.left>g||i.right<e||i.top>h||i.bottom<f):d.tolerance=="fit"&&(j=i.left>e&&i.right<g&&i.top>f&&i.bottom<h),j?(i.selected&&(i.$element.removeClass("ui-selected"),i.selected=!1),i.unselecting&&(i.$element.removeClass("ui-unselecting"),i.unselecting=!1),i.selecting||(i.$element.addClass("ui-selecting"),i.selecting=!0,c._trigger("selecting",b,{selecting:i.element}))):(i.selecting&&((b.metaKey||b.ctrlKey)&&i.startselected?(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.$element.addClass("ui-selected"),i.selected=!0):(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.startselected&&(i.$element.addClass("ui-unselecting"),i.unselecting=!0),c._trigger("unselecting",b,{unselecting:i.element}))),i.selected&&!b.metaKey&&!b.ctrlKey&&!i.startselected&&(i.$element.removeClass("ui-selected"),i.selected=!1,i.$element.addClass("ui-unselecting"),i.unselecting=!0,c._trigger("unselecting",b,{unselecting:i.element})))}});return!1}},_mouseStop:function(b){var c=this;this.dragged=!1;var d=this.options;a(".ui-unselecting",this.element[0]).each(function(){var d=a.data(this,"selectable-item");d.$element.removeClass("ui-unselecting"),d.unselecting=!1,d.startselected=!1,c._trigger("unselected",b,{unselected:d.element})}),a(".ui-selecting",this.element[0]).each(function(){var d=a.data(this,"selectable-item");d.$element.removeClass("ui-selecting").addClass("ui-selected"),d.selecting=!1,d.selected=!0,d.startselected=!0,c._trigger("selected",b,{selected:d.element})}),this._trigger("stop",b),this.helper.remove();return!1}}),a.extend(a.ui.selectable,{version:"1.8.17"})}(jQuery),function(a,b){a.widget("ui.sortable",a.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3},_create:function(){var a=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):!1,this.offset=this.element.offset(),this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData(this.widgetName+"-item");return this},_setOption:function(b,c){b==="disabled"?(this.options[b]=c,this.widget()[c?"addClass":"removeClass"]("ui-sortable-disabled")):a.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(b,c){var d=this;if(this.reverting)return!1;if(this.options.disabled||this.options.type=="static")return!1;this._refreshItems(b);var e=null,f=this,g=a(b.target).parents().each(function(){if(a.data(this,d.widgetName+"-item")==f){e=a(this);return!1}});a.data(b.target,d.widgetName+"-item")==f&&(e=a(b.target));if(!e)return!1;if(this.options.handle&&!c){var h=!1;a(this.options.handle,e).find("*").andSelf().each(function(){this==b.target&&(h=!0)});if(!h)return!1}this.currentItem=e,this._removeCurrentsFromItems();return!0},_mouseStart:function(b,c,d){var e=this.options,f=this;this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(b),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,e.cursorAt&&this._adjustOffsetFromHelper(e.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!=this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),e.containment&&this._setContainment(),e.cursor&&(a("body").css("cursor")&&(this._storedCursor=a("body").css("cursor")),a("body").css("cursor",e.cursor)),e.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",e.opacity)),e.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",e.zIndex)),this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",b,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions();if(!d)for(var g=this.containers.length-1;g>=0;g--)this.containers[g]._trigger("activate",b,f._uiHash(this));a.ui.ddmanager&&(a.ui.ddmanager.current=this),a.ui.ddmanager&&!e.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(b);return!0},_mouseDrag:function(b){this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs);if(this.options.scroll){var c=this.options,d=!1;this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-b.pageY<c.scrollSensitivity?this.scrollParent[0].scrollTop=d=this.scrollParent[0].scrollTop+c.scrollSpeed:b.pageY-this.overflowOffset.top<c.scrollSensitivity&&(this.scrollParent[0].scrollTop=d=this.scrollParent[0].scrollTop-c.scrollSpeed),this.overflowOffset.left+this.scrollParent[0].offsetWidth-b.pageX<c.scrollSensitivity?this.scrollParent[0].scrollLeft=d=this.scrollParent[0].scrollLeft+c.scrollSpeed:b.pageX-this.overflowOffset.left<c.scrollSensitivity&&(this.scrollParent[0].scrollLeft=d=this.scrollParent[0].scrollLeft-c.scrollSpeed)):(b.pageY-a(document).scrollTop()<c.scrollSensitivity?d=a(document).scrollTop(a(document).scrollTop()-c.scrollSpeed):a(window).height()-(b.pageY-a(document).scrollTop())<c.scrollSensitivity&&(d=a(document).scrollTop(a(document).scrollTop()+c.scrollSpeed)),b.pageX-a(document).scrollLeft()<c.scrollSensitivity?d=a(document).scrollLeft(a(document).scrollLeft()-c.scrollSpeed):a(window).width()-(b.pageX-a(document).scrollLeft())<c.scrollSensitivity&&(d=a(document).scrollLeft(a(document).scrollLeft()+c.scrollSpeed))),d!==!1&&a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b)}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";for(var e=this.items.length-1;e>=0;e--){var f=this.items[e],g=f.item[0],h=this._intersectsWithPointer(f);if(!h)continue;if(g!=this.currentItem[0]&&this.placeholder[h==1?"next":"prev"]()[0]!=g&&!a.ui.contains(this.placeholder[0],g)&&(this.options.type=="semi-dynamic"?!a.ui.contains(this.element[0],g):!0)){this.direction=h==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(f))this._rearrange(b,f);else break;this._trigger("change",b,this._uiHash());break}}this._contactContainers(b),a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),this._trigger("sort",b,this._uiHash()),this.lastPositionAbs=this.positionAbs;return!1},_mouseStop:function(b,c){if(!!b){a.ui.ddmanager&&!this.options.dropBehaviour&&a.ui.ddmanager.drop(this,b);if(this.options.revert){var d=this,e=d.placeholder.offset();d.reverting=!0,a(this.helper).animate({left:e.left-this.offset.parent.left-d.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:e.top-this.offset.parent.top-d.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){d._clear(b)})}else this._clear(b,c);return!1}},cancel:function(){var b=this;if(this.dragging){this._mouseUp({target:null}),this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("deactivate",null,b._uiHash(this)),this.containers[c].containerCache.over&&(this.containers[c]._trigger("out",null,b._uiHash(this)),this.containers[c].containerCache.over=0)}this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),a.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?a(this.domPosition.prev).after(this.currentItem):a(this.domPosition.parent).prepend(this.currentItem));return this},serialize:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];b=b||{},a(c).each(function(){var c=(a(b.item||this).attr(b.attribute||"id")||"").match(b.expression||/(.+)[-=_](.+)/);c&&d.push((b.key||c[1]+"[]")+"="+(b.key&&b.expression?c[1]:c[2]))}),!d.length&&b.key&&d.push(b.key+"=");return d.join("&")},toArray:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];b=b||{},c.each(function(){d.push(a(b.item||this).attr(b.attribute||"id")||"")});return d},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,d=this.positionAbs.top,e=d+this.helperProportions.height,f=a.left,g=f+a.width,h=a.top,i=h+a.height,j=this.offset.click.top,k=this.offset.click.left,l=d+j>h&&d+j<i&&b+k>f&&b+k<g;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>a[this.floating?"width":"height"]?l:f<b+this.helperProportions.width/2&&c-this.helperProportions.width/2<g&&h<d+this.helperProportions.height/2&&e-this.helperProportions.height/2<i},_intersectsWithPointer:function(b){var c=a.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,b.top,b.height),d=a.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,b.left,b.width),e=c&&d,f=this._getDragVerticalDirection(),g=this._getDragHorizontalDirection();if(!e)return!1;return this.floating?g&&g=="right"||f=="down"?2:1:f&&(f=="down"?2:1)},_intersectsWithSides:function(b){var c=a.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,b.top+b.height/2,b.height),d=a.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,b.left+b.width/2,b.width),e=this._getDragVerticalDirection(),f=this._getDragHorizontalDirection();return this.floating&&f?f=="right"&&d||f=="left"&&!d:e&&(e=="down"&&c||e=="up"&&!c)},_getDragVerticalDirection:function(){var a=this.positionAbs.top-this.lastPositionAbs.top;return a!=0&&(a>0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this
.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a),this.refreshPositions();return this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(b){var c=this,d=[],e=[],f=this._connectWith();if(f&&b)for(var g=f.length-1;g>=0;g--){var h=a(f[g]);for(var i=h.length-1;i>=0;i--){var j=a.data(h[i],this.widgetName);j&&j!=this&&!j.options.disabled&&e.push([a.isFunction(j.options.items)?j.options.items.call(j.element):a(j.options.items,j.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),j])}}e.push([a.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):a(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);for(var g=e.length-1;g>=0;g--)e[g][0].each(function(){d.push(this)});return a(d)},_removeCurrentsFromItems:function(){var a=this.currentItem.find(":data("+this.widgetName+"-item)");for(var b=0;b<this.items.length;b++)for(var c=0;c<a.length;c++)a[c]==this.items[b].item[0]&&this.items.splice(b,1)},_refreshItems:function(b){this.items=[],this.containers=[this];var c=this.items,d=this,e=[[a.isFunction(this.options.items)?this.options.items.call(this.element[0],b,{item:this.currentItem}):a(this.options.items,this.element),this]],f=this._connectWith();if(f)for(var g=f.length-1;g>=0;g--){var h=a(f[g]);for(var i=h.length-1;i>=0;i--){var j=a.data(h[i],this.widgetName);j&&j!=this&&!j.options.disabled&&(e.push([a.isFunction(j.options.items)?j.options.items.call(j.element[0],b,{item:this.currentItem}):a(j.options.items,j.element),j]),this.containers.push(j))}}for(var g=e.length-1;g>=0;g--){var k=e[g][1],l=e[g][0];for(var i=0,m=l.length;i<m;i++){var n=a(l[i]);n.data(this.widgetName+"-item",k),c.push({item:n,instance:k,width:0,height:0,left:0,top:0})}}},refreshPositions:function(b){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());for(var c=this.items.length-1;c>=0;c--){var d=this.items[c];if(d.instance!=this.currentContainer&&this.currentContainer&&d.item[0]!=this.currentItem[0])continue;var e=this.options.toleranceElement?a(this.options.toleranceElement,d.item):d.item;b||(d.width=e.outerWidth(),d.height=e.outerHeight());var f=e.offset();d.left=f.left,d.top=f.top}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(var c=this.containers.length-1;c>=0;c--){var f=this.containers[c].element.offset();this.containers[c].containerCache.left=f.left,this.containers[c].containerCache.top=f.top,this.containers[c].containerCache.width=this.containers[c].element.outerWidth(),this.containers[c].containerCache.height=this.containers[c].element.outerHeight()}return this},_createPlaceholder:function(b){var c=b||this,d=c.options;if(!d.placeholder||d.placeholder.constructor==String){var e=d.placeholder;d.placeholder={element:function(){var b=a(document.createElement(c.currentItem[0].nodeName)).addClass(e||c.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];e||(b.style.visibility="hidden");return b},update:function(a,b){if(!e||!!d.forcePlaceholderSize)b.height()||b.height(c.currentItem.innerHeight()-parseInt(c.currentItem.css("paddingTop")||0,10)-parseInt(c.currentItem.css("paddingBottom")||0,10)),b.width()||b.width(c.currentItem.innerWidth()-parseInt(c.currentItem.css("paddingLeft")||0,10)-parseInt(c.currentItem.css("paddingRight")||0,10))}}}c.placeholder=a(d.placeholder.element.call(c.element,c.currentItem)),c.currentItem.after(c.placeholder),d.placeholder.update(c,c.placeholder)},_contactContainers:function(b){var c=null,d=null;for(var e=this.containers.length-1;e>=0;e--){if(a.ui.contains(this.currentItem[0],this.containers[e].element[0]))continue;if(this._intersectsWith(this.containers[e].containerCache)){if(c&&a.ui.contains(this.containers[e].element[0],c.element[0]))continue;c=this.containers[e],d=e}else this.containers[e].containerCache.over&&(this.containers[e]._trigger("out",b,this._uiHash(this)),this.containers[e].containerCache.over=0)}if(!!c)if(this.containers.length===1)this.containers[d]._trigger("over",b,this._uiHash(this)),this.containers[d].containerCache.over=1;else if(this.currentContainer!=this.containers[d]){var f=1e4,g=null,h=this.positionAbs[this.containers[d].floating?"left":"top"];for(var i=this.items.length-1;i>=0;i--){if(!a.ui.contains(this.containers[d].element[0],this.items[i].item[0]))continue;var j=this.items[i][this.containers[d].floating?"left":"top"];Math.abs(j-h)<f&&(f=Math.abs(j-h),g=this.items[i])}if(!g&&!this.options.dropOnEmpty)return;this.currentContainer=this.containers[d],g?this._rearrange(b,g,null,!0):this._rearrange(b,null,this.containers[d].element,!0),this._trigger("change",b,this._uiHash()),this.containers[d]._trigger("change",b,this._uiHash(this)),this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[d]._trigger("over",b,this._uiHash(this)),this.containers[d].containerCache.over=1}},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper)?a(c.helper.apply(this.element[0],[b,this.currentItem])):c.helper=="clone"?this.currentItem.clone():this.currentItem;d.parents("body").length||a(c.appendTo!="parent"?c.appendTo:this.currentItem[0].parentNode)[0].appendChild(d[0]),d[0]==this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(d[0].style.width==""||c.forceHelperSize)&&d.width(this.currentItem.width()),(d[0].style.height==""||c.forceHelperSize)&&d.height(this.currentItem.height());return d},_adjustOffsetFromHelper:function(b){typeof b=="string"&&(b=b.split(" ")),a.isArray(b)&&(b={left:+b[0],top:+b[1]||0}),"left"in b&&(this.offset.click.left=b.left+this.margins.left),"right"in b&&(this.offset.click.left=this.helperProportions.width-b.right+this.margins.left),"top"in b&&(this.offset.click.top=b.top+this.margins.top),"bottom"in b&&(this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var b=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(b.left+=this.scrollParent.scrollLeft(),b.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&a.browser.msie)b={top:0,left:0};return{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.currentItem.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var b=this.options;b.containment=="parent"&&(b.containment=this.helper[0].parentNode);if(b.containment=="document"||b.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,a(b.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a(b.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(b.containment)){var c=a(b.containment)[0],d=a(b.containment).offset(),e=a(c).css("overflow")!="hidden";this.containment=[d.left+(parseInt(a(c).css("borderLeftWidth"),10)||0)+(parseInt(a(c).css("paddingLeft"),10)||0)-this.margins.left,d.top+(parseInt(a(c).css("borderTopWidth"),10)||0)+(parseInt(a(c).css("paddingTop"),10)||0)-this.margins.top,d.left+(e?Math.max(c.scrollWidth,c.offsetWidth):c.offsetWidth)-(parseInt(a(c).css("borderLeftWidth"),10)||0)-(parseInt(a(c).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,d.top+(e?Math.max(c.scrollHeight,c.offsetHeight):c.offsetHeight)-(parseInt(a(c).css("borderTopWidth"),10)||0)-(parseInt(a(c).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(b,c){c||(c=this.position);var d=b=="absolute"?1:-1,e=this.options,f=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,g=/(html|body)/i.test(f[0].tagName);return{top:c.top+this.offset.relative.top*d+this.offset.parent.top*d-(a.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():g?0:f.scrollTop())*d),left:c.left+this.offset.relative.left*d+this.offset.parent.left*d-(a.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():g?0:f.scrollLeft())*d)}},_generatePosition:function(b){var c=this.options,d=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(d[0].tagName);this.cssPosition=="relative"&&(this.scrollParent[0]==document||this.scrollParent[0]==this.offsetParent[0])&&(this.offset.relative=this._getRelativeOffset());var f=b.pageX,g=b.pageY;if(this.originalPosition){this.containment&&(b.pageX-this.offset.click.left<this.containment[0]&&(f=this.containment[0]+this.offset.click.left),b.pageY-this.offset.click.top<this.containment[1]&&(g=this.containment[1]+this.offset.click.top),b.pageX-this.offset.click.left>this.containment[2]&&(f=this.containment[2]+this.offset.click.left),b.pageY-this.offset.click.top>this.containment[3]&&(g=this.containment[3]+this.offset.click.top));if(c.grid){var h=this.originalPageY+Math.round((g-this.originalPageY)/c.grid[1])*c.grid[1];g=this.containment?h-this.offset.click.top<this.containment[1]||h-this.offset.click.top>this.containment[3]?h-this.offset.click.top<this.containment[1]?h+c.grid[1]:h-c.grid[1]:h:h;var i=this.originalPageX+Math.round((f-this.originalPageX)/c.grid[0])*c.grid[0];f=this.containment?i-this.offset.click.left<this.containment[0]||i-this.offset.click.left>this.containment[2]?i-this.offset.click.left<this.containment[0]?i+c.grid[0]:i-c.grid[0]:i:i}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(a.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:d.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(a.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:d.scrollLeft())}},_rearrange:function(a,b,c,d){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],this.direction=="down"?b.item[0]:b.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var e=this,f=this.counter;window.setTimeout(function(){f==e.counter&&e.refreshPositions(!d)},0)},_clear:function(b,c){this.reverting=!1;var d=[],e=this;!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var f in this._storedCSS)if(this._storedCSS[f]=="auto"||this._storedCSS[f]=="static")this._storedCSS[f]="";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!c&&d.push(function(a){this._trigger("receive",a,this._uiHash(this.fromOutside))}),(this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!c&&d.push(function(a){this._trigger("update",a,this._uiHash())});if(!a.ui.contains(this.element[0],this.currentItem[0])){c||d.push(function(a){this._trigger("remove",a,this._uiHash())});for(var f=this.containers.length-1;f>=0;f--)a.ui.contains(this.containers[f].element[0],this.currentItem[0])&&!c&&(d.push(function(a){return function(b){a._trigger("receive",b,this._uiHash(this))}}.call(this,this.containers[f])),d.push(function(a){return function(b){a._trigger("update",b,this._uiHash(this))}}.call(this,this.containers[f])))}for(var f=this.containers.length-1;f>=0;f--)c||d.push(function(a){return function(b){a._trigger("deactivate",b,this._uiHash(this))}}.call(this,this.containers[f])),this.containers[f].containerCache.over&&(d.push(function(a){return function(b){a._trigger("out",b,this._uiHash(this))}}.call(this,this.containers[f])),this.containers[f].containerCache.over=0);this._storedCursor&&a("body").css("cursor",this._storedCursor),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex),this.dragging=!1;if(this.cancelHelperRemoval){if(!c){this._trigger("beforeStop",b,this._uiHash());for(var f=0;f<d.length;f++)d[f].call(this,b);this._trigger("stop",b,this._uiHash())}return!1}c||this._trigger("beforeStop",b,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!=this.currentItem[0]&&this.helper.remove(),this.helper=null;if(!c){for(var f=0;f<d.length;f++)d[f].call(this,b);this._trigger("stop",b,this._uiHash())}this.fromOutside=!1;return!0},_trigger:function(){a.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(b){var c=b||this;return{helper:c.helper,placeholder:c.placeholder||a([]),position:c.position,originalPosition:c.originalPosition,offset:c.positionAbs,item:c.currentItem,sender:b?b.element:null}}}),a.extend(a.ui.sortable,{version:"1.8.17"})}(jQuery),jQuery.effects||function(a,b){function l(b){if(!b||typeof b=="number"||a.fx.speeds[b])return!0;if(typeof b=="string"&&!a.effects[b])return!0;return!1}function k(b,c,d,e){typeof b=="object"&&(e=c,d=null,c=b,b=c.effect),a.isFunction(c)&&(e=c,d=null,c={});if(typeof c=="number"||a.fx.speeds[c])e=d,d=c,c={};a.isFunction(d)&&(e=d,d=null),c=c||{},d=d||c.duration,d=a.fx.off?0:typeof d=="number"?d:d in a.fx.speeds?a.fx.speeds[d]:a.fx.speeds._default,e=e||c.complete;return[b,c,d,e]}function j(a,b){var c={_:0},d;for(d in b)a[d]!=b[d]&&(c[d]=b[d]);return c}function i(b){var c,d;for(c in b)d=b[c],(d==null||a.isFunction(d)||c in g||/scrollbar/.test(c)||!/color/i.test(c)&&isNaN(parseFloat(d)))&&delete b[c];return b}function h(){var a=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,b={},c,d;if(a&&a.length&&a[0]&&a[a[0]]){var e=a.length;while(e--)c=a[e],typeof a[c]=="string"&&(d=c.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),b[d]=a[c])}else for(c in a)typeof a[c]=="string"&&(b[c]=a[c]);return b}function d(b,d){var e;do{e=a.curCSS(b,d);if(e!=""&&e!="transparent"||a.nodeName(b,"body"))break;d="backgroundColor"}while(b=b.parentNode);return c(e)}function c(b){var c;if(b&&b.constructor==Array&&b.length==3)return b;if(c=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(b))return[parseInt(c[1],10),parseInt(c[2],10),parseInt(c[3],10)];if(c=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(b))return[parseFloat(c[1])*2.55,parseFloat(c[2])*2.55,parseFloat(c[3])*2.55];if(c=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(b))return[parseInt(c[1],16),parseInt(c[2],16),parseInt(c[3],16)];if(c=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(b))return[parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16),parseInt(c[3]+c[3],16)];if(c=/rgba\(0, 0, 0, 0\)/.exec(b))return e.transparent;return e[a.trim(b).toLowerCase()]}a.effects={},a.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","borderColor","color","outlineColor"],function(b,e){a.fx.step[e]=function(a){a.colorInit||(a.start=d(a.elem,e),a.end=c(a.end),a.colorInit=!0),a.elem.style[e]="rgb("+Math.max(Math.min(parseInt(a.pos*(a.end[0]-a.start[0])+a.start[0],10),255),0)+","+Math.max(Math.min(parseInt(a.pos*(a.end[1]-a.start[1])+a.start[1],10),255),0)+","+Math.max(Math.min(parseInt(a.pos*(a.end[2]-a.start[2])+a.start[2],10),255),0)+")"}});var e={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},f=["add","remove","toggle"],g={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};a.effects.animateClass=function(b,c,d,e){a.isFunction(d)&&(e=d,d=null);return this.queue(function(){var g=a(this),k=g.attr("style")||" ",l=i(h.call(this)),m,n=g.attr("class");a.each(f,function(a,c){b[c]&&g[c+"Class"](b[c])}),m=i(h.call(this)),g.attr("class",n),g.animate(j(l,m),{queue:!1,duration:c,easing:d,complete:function(){a.each(f,function(a,c){b[c]&&g[c+"Class"](b[c])}),typeof g.attr("style")=="object"?(g.attr("style").cssText="",g.attr("style").cssText=k):g.attr("style",k),e&&e.apply(this,arguments),a.dequeue(this)}})})},a.fn.extend({_addClass:a.fn.addClass,addClass:function(b,c,d,e){return c?a.effects.animateClass.apply(this,[{add:b},c,d,e]):this._addClass(b)},_removeClass:a.fn.removeClass,removeClass:function(b,c,d,e){return c?a.effects.animateClass.apply(this,[{remove:b},c,d,e]):this._removeClass(b)},_toggleClass:a.fn.toggleClass,toggleClass:function(c,d,e,f,g){return typeof d=="boolean"||d===b?e?a.effects.animateClass.apply(this,[d?{add:c}:{remove:c},e,f,g]):this._toggleClass(c,d):a.effects.animateClass.apply(this,[{toggle:c},d,e,f])},switchClass:function(b,c,d,e,f){return a.effects.animateClass.apply(this,[{add:c,remove:b},d,e,f])}}),a.extend(a.effects,{version:"1.8.17",save:function(a,b){for(var c=0;c<b.length;c++)b[c]!==null&&a.data("ec.storage."+b[c],a[0].style[b[c]])},restore:function(a,b){for(var c=0;c<b.length;c++)b[c]!==null&&a.css(b[c],a.data("ec.storage."+b[c]))},setMode:function(a,b){b=="toggle"&&(b=a.is(":hidden")?"show":"hide");return b},getBaseline:function(a,b){var c,d;switch(a[0]){case"top":c=0;break;case"middle":c=.5;break;case"bottom":c=1;break;default:c=a[0]/b.height}switch(a[1]){case"left":d=0;break;case"center":d=.5;break;case"right":d=1;break;default:d=a[1]/b.width}return{x:d,y:c}},createWrapper:function(b){if(b.parent().is(".ui-effects-wrapper"))return b.parent();var c={width:b.outerWidth(!0),height:b.outerHeight(!0),"float":b.css("float")},d=a("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),e=document.activeElement;b.wrap(d),(b[0]===e||a.contains(b[0],e))&&a(e).focus(),d=b.parent(),b.css("position")=="static"?(d.css({position:"relative"}),b.css({position:"relative"})):(a.extend(c,{position:b.css("position"),zIndex:b.css("z-index")}),a.each(["top","left","bottom","right"],function(a,d){c[d]=b.css(d),isNaN(parseInt(c[d],10))&&(c[d]="auto")}),b.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"}));return d.css(c).show()},removeWrapper:function(b){var c,d=document.activeElement;if(b.parent().is(".ui-effects-wrapper")){c=b.parent().replaceWith(b),(b[0]===d||a.contains(b[0],d))&&a(d).focus();return c}return b},setTransition:function(b,c,d,e){e=e||{},a.each(c,function(a,c){unit=b.cssUnit(c),unit[0]>0&&(e[c]=unit[0]*d+unit[1])});return e}}),a.fn.extend({effect:function(b,c,d,e){var f=k.apply(this,arguments),g={options:f[1],duration:f[2],callback:f[3]},h=g.options.mode,i=a.effects[b];if(a.fx.off||!i)return h?this[h](g.duration,g.callback):this.each(function(){g.callback&&g.callback.call(this)});return i.call(this,g)},_show:a.fn.show,show:function(a){if(l(a))return this._show.apply(this,arguments);var b=k.apply(this,arguments);b[1].mode="show";return this.effect.apply(this,b)},_hide:a.fn.hide,hide:function(a){if(l(a))return this._hide.apply(this,arguments);var b=k.apply(this,arguments);b[1].mode="hide";return this.effect.apply(this,b)},__toggle:a.fn.toggle,toggle:function(b){if(l(b)||typeof b=="boolean"||a.isFunction(b))return this.__toggle.apply(this,arguments);var c=k.apply(this,arguments);c[1].mode="toggle";return this.effect.apply(this,c)},cssUnit:function(b){var c=this.css(b),d=[];a.each(["em","px","%","pt"],function(a,b){c.indexOf(b)>0&&(d=[parseFloat(c),b])});return d}}),a.easing.jswing=a.easing.swing,a.extend(a.easing,{def:"easeOutQuad",swing:function(b,c,d,e,f){return a.easing[a.easing.def](b,c,d,e,f)},easeInQuad:function(a,b,c,d,e){return d*(b/=e)*b+c},easeOutQuad:function(a,b,c,d,e){return-d*(b/=e)*(b-2)+c},easeInOutQuad:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b+c;return-d/2*(--b*(b-2)-1)+c},easeInCubic:function(a,b,c,d,e){return d*(b/=e)*b*b+c},easeOutCubic:function(a,b,c,d,e){return d*((b=b/e-1)*b*b+1)+c},easeInOutCubic:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b+c;return d/2*((b-=2)*b*b+2)+c},easeInQuart:function(a,b,c,d,e){return d*(b/=e)*b*b*b+c},easeOutQuart:function(a,b,c,d,e){return-d*((b=b/e-1)*b*b*b-1)+c},easeInOutQuart:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b*b+c;return-d/2*((b-=2)*b*b*b-2)+c},easeInQuint:function(a,b,c,d,e){return d*(b/=e)*b*b*b*b+c},easeOutQuint:function(a,b,c,d,e){return d*((b=b/e-1)*b*b*b*b+1)+c},easeInOutQuint:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b*b*b+c;return d/2*((b-=2)*b*b*b*b+2)+c},easeInSine:function(a,b,c,d,e){return-d*Math.cos(b/e*(Math.PI/2))+d+c},easeOutSine:function(a,b,c,d,e){return d*Math.sin(b/e*(Math.PI/2))+c},easeInOutSine:function(a,b,c,d,e){return-d/2*(Math.cos(Math.PI*b/e)-1)+c},easeInExpo:function(a,b,c,d,e){return b==0?c:d*Math.pow(2,10*(b/e-1))+c},easeOutExpo:function(a,b,c,d,e){return b==e?c+d:d*(-Math.pow(2,-10*b/e)+1)+c},easeInOutExpo:function(a,b,c,d,e){if(b==0)return c;if(b==e)return c+d;if((b/=e/2)<1)return d/2*Math.pow(2,10*(b-1))+c;return d/2*(-Math.pow(2,-10*--b)+2)+c},easeInCirc:function(a,b,c,d,e){return-d*(Math.sqrt(1-(b/=e)*b)-1)+c},easeOutCirc:function(a,b,c,d,e){return d*Math.sqrt(1-(b=b/e-1)*b)+c},easeInOutCirc:function(a,b,c,d,e){if((b/=e/2)<1)return-d/2*(Math.sqrt(1-b*b)-1)+c;return d/2*(Math.sqrt(1-(b-=2)*b)+1)+c},easeInElastic:function(a,b,c,d,e){var f=1.70158,g=0,h=d;if(b==0)return c;if((b/=e)==1)return c+d;g||(g=e*.3);if(h<Math.abs(d)){h=d;var f=g/4}else var f=g/(2*Math.PI)*Math.asin(d/h);return-(h*Math.pow(2,10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g))+c},easeOutElastic:function(a,b,c,d,e){var f=1.70158,g=0,h=d;if(b==0)return c;if((b/=e)==1)return c+d;g||(g=e*.3);if(h<Math.abs(d)){h=d;var f=g/4}else var f=g/(2*Math.PI)*Math.asin(d/h);return h*Math.pow(2,-10*b)*Math.sin((b*e-f)*2*Math.PI/g)+d+c},easeInOutElastic:function(a,b,c,d,e){var f=1.70158,g=0,h=d;if(b==0)return c;if((b/=e/2)==2)return c+d;g||(g=e*.3*1.5);if(h<Math.abs(d)){h=d;var f=g/4}else var f=g/(2*Math.PI)*Math.asin(d/h);if(b<1)return-0.5*h*Math.pow(2,10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g)+c;return h*Math.pow(2,-10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g)*.5+d+c},easeInBack:function(a,c,d,e,f,g){g==b&&(g=1.70158);return e*(c/=f)*c*((g+1)*c-g)+d},easeOutBack:function(a,c,d,e,f,g){g==b&&(g=1.70158);return e*((c=c/f-1)*c*((g+1)*c+g)+1)+d},easeInOutBack:function(a,c,d,e,f,g){g==b&&(g=1.70158);if((c/=f/2)<1)return e/2*c*c*(((g*=1.525)+1)*c-g)+d;return e/2*((c-=2)*c*(((g*=1.525)+1)*c+g)+2)+d},easeInBounce:function(b,c,d,e,f){return e-a.easing.easeOutBounce(b,f-c,0,e,f)+d},easeOutBounce:function(a,b,c,d,e){return(b/=e)<1/2.75?d*7.5625*b*b+c:b<2/2.75?d*(7.5625*(b-=1.5/2.75)*b+.75)+c:b<2.5/2.75?d*(7.5625*(b-=2.25/2.75)*b+.9375)+c:d*(7.5625*(b-=2.625/2.75)*b+.984375)+c},easeInOutBounce:function(b,c,d,e,f){if(c<f/2)return a.easing.easeInBounce(b,c*2,0,e,f)*.5+d;return a.easing.easeOutBounce(b,c*2-f,0,e,f)*.5+e*.5+d}})}(jQuery),function(a,b){a.effects.blind=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.direction||"vertical";a.effects.save(c,d),c.show();var g=a.effects.createWrapper(c).css({overflow:"hidden"}),h=f=="vertical"?"height":"width",i=f=="vertical"?g.height():g.width();e=="show"&&g.css(h,0);var j={};j[h]=e=="show"?i:0,g.animate(j,b.duration,b.options.easing,function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(c[0],arguments),c.dequeue()})})}}(jQuery),function(a,b){a.effects.bounce=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"effect"),f=b.options.direction||"up",g=b.options.distance||20,h=b.options.times||5,i=b.duration||250;/show|hide/.test(e)&&d.push("opacity"),a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var j=f=="up"||f=="down"?"top":"left",k=f=="up"||f=="left"?"pos":"neg",g=b.options.distance||(j=="top"?c.outerHeight({margin:!0})/3:c.outerWidth({margin:!0})/3);e=="show"&&c.css("opacity",0).css(j,k=="pos"?-g:g),e=="hide"&&(g=g/(h*2)),e!="hide"&&h--;if(e=="show"){var l={opacity:1};l[j]=(k=="pos"?"+=":"-=")+g,c.animate(l,i/2,b.options.easing),g=g/2,h--}for(var m=0;m<h;m++){var n={},p={};n[j]=(k=="pos"?"-=":"+=")+g,p[j]=(k=="pos"?"+=":"-=")+g,c.animate(n,i/2,b.options.easing).animate(p,i/2,b.options.easing),g=e=="hide"?g*2:g/2}if(e=="hide"){var l={opacity:0};l[j]=(k=="pos"?"-=":"+=")+g,c.animate(l,i/2,b.options.easing,function(){c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments)})}else{var n={},p={};n[j]=(k=="pos"?"-=":"+=")+g,p[j]=(k=="pos"?"+=":"-=")+g,c.animate(n,i/2,b.options.easing).animate(p,i/2,b.options.easing,function(){a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments)})}c.queue("fx",function(){c.dequeue()}),c.dequeue()})}}(jQuery),function(a,b){a.effects.clip=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","height","width"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.direction||"vertical";a.effects.save(c,d),c.show();var g=a.effects.createWrapper(c).css({overflow:"hidden"}),h=c[0].tagName=="IMG"?g:c,i={size:f=="vertical"?"height":"width",position:f=="vertical"?"top":"left"},j=f=="vertical"?h.height():h.width();e=="show"&&(h.css(i.size,0),h.css(i.position,j/2));var k={};k[i.size]=e=="show"?j:0,k[i.position]=e=="show"?0:j/2,h.animate(k,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(c[0],arguments),c.dequeue()}})})}}(jQuery),function(a,b){a.effects.drop=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","opacity"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.direction||"left";a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var g=f=="up"||f=="down"?"top":"left",h=f=="up"||f=="left"?"pos":"neg",i=b.options.distance||(g=="top"?c.outerHeight({margin:!0})/2:c.outerWidth({margin:!0})/2);e=="show"&&c.css("opacity",0).css(g,h=="pos"?-i:i);var j={opacity:e=="show"?1:0};j[g]=(e=="show"?h=="pos"?"+=":"-=":h=="pos"?"-=":"+=")+i,c.animate(j,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}}(jQuery),function(a,b){a.effects.explode=function(b){return this.queue(function(){var c=b.options.pieces?Math.round(Math.sqrt(b.options.pieces)):3,d=b.options.pieces?Math.round(Math.sqrt(b.options.pieces)):3;b.options.mode=b.options.mode=="toggle"?a(this).is(":visible")?"hide":"show":b.options.mode;var e=a(this).show().css("visibility","hidden"),f=e.offset();f.top-=parseInt(e.css("marginTop"),10)||0,f.left-=parseInt(e.css("marginLeft"),10)||0;var g=e.outerWidth(!0),h=e.outerHeight(!0);for(var i=0;i<c;i++)for(var j=0;j<d;j++)e.clone().appendTo("body").wrap("<div></div>").css({position:"absolute",visibility:"visible",left:-j*(g/d),top:-i*(h/c)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:g/d,height:h/c,left:f.left+j*(g/d)+(b.options.mode=="show"?(j-Math.floor(d/2))*(g/d):0),top:f.top+i*(h/c)+(b.options.mode=="show"?(i-Math.floor(c/2))*(h/c):0),opacity:b.options.mode=="show"?0:1}).animate({left:f.left+j*(g/d)+(b.options.mode=="show"?0:(j-Math.floor(d/2))*(g/d)),top:f.top+i*(h/c)+(b.options.mode=="show"?0:(i-Math.floor(c/2))*(h/c)),opacity:b.options.mode=="show"?1:0},b.duration||500);setTimeout(function(){b.options.mode=="show"?e.css({visibility:"visible"}):e.css({visibility:"visible"}).hide(),b.callback&&b.callback.apply(e[0]),e.dequeue(),a("div.ui-effects-explode").remove()},b.duration||500)})}}(jQuery),function(a,b){a.effects.fade=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"hide");c.animate({opacity:d},{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}}(jQuery),function(a,b){a.effects.fold=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.size||15,g=!!b.options.horizFirst,h=b.duration?b.duration/2:a.fx.speeds._default/2;a.effects.save(c,d),c.show();var i=a.effects.createWrapper(c).css({overflow:"hidden"}),j=e=="show"!=g,k=j?["width","height"]:["height","width"],l=j?[i.width(),i.height()]:[i.height(),i.width()],m=/([0-9]+)%/.exec(f);m&&(f=parseInt(m[1],10)/100*l[e=="hide"?0:1]),e=="show"&&i.css(g?{height:0,width:f}:{height:f,width:0});var n={},p={};n[k[0]]=e=="show"?l[0]:f,p[k[1]]=e=="show"?l[1]:0,i.animate(n,h,b.options.easing).animate(p,h,b.options.easing,function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(c[0],arguments),c.dequeue()})})}}(jQuery),function(a,b){a.effects.highlight=function(b){return this.queue(function(){var c=a(this),d=["backgroundImage","backgroundColor","opacity"],e=a.effects.setMode(c,b.options.mode||"show"),f={backgroundColor:c.css("backgroundColor")};e=="hide"&&(f.opacity=0),a.effects.save(c,d),c.show().css({backgroundImage:"none",backgroundColor:b.options.color||"#ffff99"}).animate(f,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),e=="show"&&!a.support.opacity&&this.style.removeAttribute("filter"),b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}}(jQuery),function(a,b){a.effects.pulsate=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"show");times=(b.options.times||5)*2-1,duration=b.duration?b.duration/2:a.fx.speeds._default/2,isVisible=c.is(":visible"),animateTo=0,isVisible||(c.css("opacity",0).show(),animateTo=1),(d=="hide"&&isVisible||d=="show"&&!isVisible)&&times--;for(var e=0;e<times;e++)c.animate({opacity:animateTo},duration,b.options.easing),animateTo=(animateTo+1)%2;c.animate({opacity:animateTo},duration,b.options.easing,function(){animateTo==0&&c.hide(),b.callback&&b.callback.apply(this,arguments)}),c.queue("fx",function(){c.dequeue()}).dequeue()})}}(jQuery),function(a,b){a.effects.puff=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"hide"),e=parseInt(b.options.percent,10)||150,f=e/100,g={height:c.height(),width:c.width()};a.extend(b.options,{fade:!0,mode:d,percent:d=="hide"?e:100,from:d=="hide"?g:{height:g.height*f,width:g.width*f}}),c.effect("scale",b.options,b.duration,b.callback),c.dequeue()})},a.effects.scale=function(b){return this.queue(function(){var c=a(this),d=a.extend(!0,{},b.options
),e=a.effects.setMode(c,b.options.mode||"effect"),f=parseInt(b.options.percent,10)||(parseInt(b.options.percent,10)==0?0:e=="hide"?0:100),g=b.options.direction||"both",h=b.options.origin;e!="effect"&&(d.origin=h||["middle","center"],d.restore=!0);var i={height:c.height(),width:c.width()};c.from=b.options.from||(e=="show"?{height:0,width:0}:i);var j={y:g!="horizontal"?f/100:1,x:g!="vertical"?f/100:1};c.to={height:i.height*j.y,width:i.width*j.x},b.options.fade&&(e=="show"&&(c.from.opacity=0,c.to.opacity=1),e=="hide"&&(c.from.opacity=1,c.to.opacity=0)),d.from=c.from,d.to=c.to,d.mode=e,c.effect("size",d,b.duration,b.callback),c.dequeue()})},a.effects.size=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","width","height","overflow","opacity"],e=["position","top","bottom","left","right","overflow","opacity"],f=["width","height","overflow"],g=["fontSize"],h=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],i=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],j=a.effects.setMode(c,b.options.mode||"effect"),k=b.options.restore||!1,l=b.options.scale||"both",m=b.options.origin,n={height:c.height(),width:c.width()};c.from=b.options.from||n,c.to=b.options.to||n;if(m){var p=a.effects.getBaseline(m,n);c.from.top=(n.height-c.from.height)*p.y,c.from.left=(n.width-c.from.width)*p.x,c.to.top=(n.height-c.to.height)*p.y,c.to.left=(n.width-c.to.width)*p.x}var q={from:{y:c.from.height/n.height,x:c.from.width/n.width},to:{y:c.to.height/n.height,x:c.to.width/n.width}};if(l=="box"||l=="both")q.from.y!=q.to.y&&(d=d.concat(h),c.from=a.effects.setTransition(c,h,q.from.y,c.from),c.to=a.effects.setTransition(c,h,q.to.y,c.to)),q.from.x!=q.to.x&&(d=d.concat(i),c.from=a.effects.setTransition(c,i,q.from.x,c.from),c.to=a.effects.setTransition(c,i,q.to.x,c.to));(l=="content"||l=="both")&&q.from.y!=q.to.y&&(d=d.concat(g),c.from=a.effects.setTransition(c,g,q.from.y,c.from),c.to=a.effects.setTransition(c,g,q.to.y,c.to)),a.effects.save(c,k?d:e),c.show(),a.effects.createWrapper(c),c.css("overflow","hidden").css(c.from);if(l=="content"||l=="both")h=h.concat(["marginTop","marginBottom"]).concat(g),i=i.concat(["marginLeft","marginRight"]),f=d.concat(h).concat(i),c.find("*[width]").each(function(){child=a(this),k&&a.effects.save(child,f);var c={height:child.height(),width:child.width()};child.from={height:c.height*q.from.y,width:c.width*q.from.x},child.to={height:c.height*q.to.y,width:c.width*q.to.x},q.from.y!=q.to.y&&(child.from=a.effects.setTransition(child,h,q.from.y,child.from),child.to=a.effects.setTransition(child,h,q.to.y,child.to)),q.from.x!=q.to.x&&(child.from=a.effects.setTransition(child,i,q.from.x,child.from),child.to=a.effects.setTransition(child,i,q.to.x,child.to)),child.css(child.from),child.animate(child.to,b.duration,b.options.easing,function(){k&&a.effects.restore(child,f)})});c.animate(c.to,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){c.to.opacity===0&&c.css("opacity",c.from.opacity),j=="hide"&&c.hide(),a.effects.restore(c,k?d:e),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}}(jQuery),function(a,b){a.effects.shake=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"effect"),f=b.options.direction||"left",g=b.options.distance||20,h=b.options.times||3,i=b.duration||b.options.duration||140;a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var j=f=="up"||f=="down"?"top":"left",k=f=="up"||f=="left"?"pos":"neg",l={},m={},n={};l[j]=(k=="pos"?"-=":"+=")+g,m[j]=(k=="pos"?"+=":"-=")+g*2,n[j]=(k=="pos"?"-=":"+=")+g*2,c.animate(l,i,b.options.easing);for(var p=1;p<h;p++)c.animate(m,i,b.options.easing).animate(n,i,b.options.easing);c.animate(m,i,b.options.easing).animate(l,i/2,b.options.easing,function(){a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments)}),c.queue("fx",function(){c.dequeue()}),c.dequeue()})}}(jQuery),function(a,b){a.effects.slide=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"show"),f=b.options.direction||"left";a.effects.save(c,d),c.show(),a.effects.createWrapper(c).css({overflow:"hidden"});var g=f=="up"||f=="down"?"top":"left",h=f=="up"||f=="left"?"pos":"neg",i=b.options.distance||(g=="top"?c.outerHeight({margin:!0}):c.outerWidth({margin:!0}));e=="show"&&c.css(g,h=="pos"?isNaN(i)?"-"+i:-i:i);var j={};j[g]=(e=="show"?h=="pos"?"+=":"-=":h=="pos"?"-=":"+=")+i,c.animate(j,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}}(jQuery),function(a,b){a.effects.transfer=function(b){return this.queue(function(){var c=a(this),d=a(b.options.to),e=d.offset(),f={top:e.top,left:e.left,height:d.innerHeight(),width:d.innerWidth()},g=c.offset(),h=a('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(b.options.className).css({top:g.top,left:g.left,height:c.innerHeight(),width:c.innerWidth(),position:"absolute"}).animate(f,b.duration,b.options.easing,function(){h.remove(),b.callback&&b.callback.apply(c[0],arguments),c.dequeue()})})}}(jQuery),function(a,b){a.widget("ui.accordion",{options:{active:0,animated:"slide",autoHeight:!0,clearStyle:!1,collapsible:!1,event:"click",fillSpace:!1,header:"> li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:!1,navigationFilter:function(){return this.href.toLowerCase()===location.href.toLowerCase()}},_create:function(){var b=this,c=b.options;b.running=0,b.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix"),b.headers=b.element.find(c.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){c.disabled||a(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){c.disabled||a(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){c.disabled||a(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){c.disabled||a(this).removeClass("ui-state-focus")}),b.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");if(c.navigation){var d=b.element.find("a").filter(c.navigationFilter).eq(0);if(d.length){var e=d.closest(".ui-accordion-header");e.length?b.active=e:b.active=d.closest(".ui-accordion-content").prev()}}b.active=b._findActive(b.active||c.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top"),b.active.next().addClass("ui-accordion-content-active"),b._createIcons(),b.resize(),b.element.attr("role","tablist"),b.headers.attr("role","tab").bind("keydown.accordion",function(a){return b._keydown(a)}).next().attr("role","tabpanel"),b.headers.not(b.active||"").attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).next().hide(),b.active.length?b.active.attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}):b.headers.eq(0).attr("tabIndex",0),a.browser.safari||b.headers.find("a").attr("tabIndex",-1),c.event&&b.headers.bind(c.event.split(" ").join(".accordion ")+".accordion",function(a){b._clickHandler.call(b,a,this),a.preventDefault()})},_createIcons:function(){var b=this.options;b.icons&&(a("<span></span>").addClass("ui-icon "+b.icons.header).prependTo(this.headers),this.active.children(".ui-icon").toggleClass(b.icons.header).toggleClass(b.icons.headerSelected),this.element.addClass("ui-accordion-icons"))},_destroyIcons:function(){this.headers.children(".ui-icon").remove(),this.element.removeClass("ui-accordion-icons")},destroy:function(){var b=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role"),this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("tabIndex"),this.headers.find("a").removeAttr("tabIndex"),this._destroyIcons();var c=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");(b.autoHeight||b.fillHeight)&&c.css("height","");return a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments),b=="active"&&this.activate(c),b=="icons"&&(this._destroyIcons(),c&&this._createIcons()),b=="disabled"&&this.headers.add(this.headers.next())[c?"addClass":"removeClass"]("ui-accordion-disabled ui-state-disabled")},_keydown:function(b){if(!(this.options.disabled||b.altKey||b.ctrlKey)){var c=a.ui.keyCode,d=this.headers.length,e=this.headers.index(b.target),f=!1;switch(b.keyCode){case c.RIGHT:case c.DOWN:f=this.headers[(e+1)%d];break;case c.LEFT:case c.UP:f=this.headers[(e-1+d)%d];break;case c.SPACE:case c.ENTER:this._clickHandler({target:b.target},b.target),b.preventDefault()}if(f){a(b.target).attr("tabIndex",-1),a(f).attr("tabIndex",0),f.focus();return!1}return!0}},resize:function(){var b=this.options,c;if(b.fillSpace){if(a.browser.msie){var d=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}c=this.element.parent().height(),a.browser.msie&&this.element.parent().css("overflow",d),this.headers.each(function(){c-=a(this).outerHeight(!0)}),this.headers.next().each(function(){a(this).height(Math.max(0,c-a(this).innerHeight()+a(this).height()))}).css("overflow","auto")}else b.autoHeight&&(c=0,this.headers.next().each(function(){c=Math.max(c,a(this).height("").height())}).height(c));return this},activate:function(a){this.options.active=a;var b=this._findActive(a)[0];this._clickHandler({target:b},b);return this},_findActive:function(b){return b?typeof b=="number"?this.headers.filter(":eq("+b+")"):this.headers.not(this.headers.not(b)):b===!1?a([]):this.headers.filter(":eq(0)")},_clickHandler:function(b,c){var d=this.options;if(!d.disabled){if(!b.target){if(!d.collapsible)return;this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header),this.active.next().addClass("ui-accordion-content-active");var e=this.active.next(),f={options:d,newHeader:a([]),oldHeader:d.active,newContent:a([]),oldContent:e},g=this.active=a([]);this._toggle(g,e,f);return}var h=a(b.currentTarget||c),i=h[0]===this.active[0];d.active=d.collapsible&&i?!1:this.headers.index(h);if(this.running||!d.collapsible&&i)return;var j=this.active,g=h.next(),e=this.active.next(),f={options:d,newHeader:i&&d.collapsible?a([]):h,oldHeader:this.active,newContent:i&&d.collapsible?a([]):g,oldContent:e},k=this.headers.index(this.active[0])>this.headers.index(h[0]);this.active=i?a([]):h,this._toggle(g,e,f,i,k),j.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header),i||(h.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected),h.next().addClass("ui-accordion-content-active"));return}},_toggle:function(b,c,d,e,f){var g=this,h=g.options;g.toShow=b,g.toHide=c,g.data=d;var i=function(){if(!!g)return g._completed.apply(g,arguments)};g._trigger("changestart",null,g.data),g.running=c.size()===0?b.size():c.size();if(h.animated){var j={};h.collapsible&&e?j={toShow:a([]),toHide:c,complete:i,down:f,autoHeight:h.autoHeight||h.fillSpace}:j={toShow:b,toHide:c,complete:i,down:f,autoHeight:h.autoHeight||h.fillSpace},h.proxied||(h.proxied=h.animated),h.proxiedDuration||(h.proxiedDuration=h.duration),h.animated=a.isFunction(h.proxied)?h.proxied(j):h.proxied,h.duration=a.isFunction(h.proxiedDuration)?h.proxiedDuration(j):h.proxiedDuration;var k=a.ui.accordion.animations,l=h.duration,m=h.animated;m&&!k[m]&&!a.easing[m]&&(m="slide"),k[m]||(k[m]=function(a){this.slide(a,{easing:m,duration:l||700})}),k[m](j)}else h.collapsible&&e?b.toggle():(c.hide(),b.show()),i(!0);c.prev().attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).blur(),b.prev().attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}).focus()},_completed:function(a){this.running=a?0:--this.running;this.running||(this.options.clearStyle&&this.toShow.add(this.toHide).css({height:"",overflow:""}),this.toHide.removeClass("ui-accordion-content-active"),this.toHide.length&&(this.toHide.parent()[0].className=this.toHide.parent()[0].className),this._trigger("change",null,this.data))}}),a.extend(a.ui.accordion,{version:"1.8.17",animations:{slide:function(b,c){b=a.extend({easing:"swing",duration:300},b,c);if(!b.toHide.size())b.toShow.animate({height:"show",paddingTop:"show",paddingBottom:"show"},b);else{if(!b.toShow.size()){b.toHide.animate({height:"hide",paddingTop:"hide",paddingBottom:"hide"},b);return}var d=b.toShow.css("overflow"),e=0,f={},g={},h=["height","paddingTop","paddingBottom"],i,j=b.toShow;i=j[0].style.width,j.width(j.parent().width()-parseFloat(j.css("paddingLeft"))-parseFloat(j.css("paddingRight"))-(parseFloat(j.css("borderLeftWidth"))||0)-(parseFloat(j.css("borderRightWidth"))||0)),a.each(h,function(c,d){g[d]="hide";var e=(""+a.css(b.toShow[0],d)).match(/^([\d+-.]+)(.*)$/);f[d]={value:e[1],unit:e[2]||"px"}}),b.toShow.css({height:0,overflow:"hidden"}).show(),b.toHide.filter(":hidden").each(b.complete).end().filter(":visible").animate(g,{step:function(a,c){c.prop=="height"&&(e=c.end-c.start===0?0:(c.now-c.start)/(c.end-c.start)),b.toShow[0].style[c.prop]=e*f[c.prop].value+f[c.prop].unit},duration:b.duration,easing:b.easing,complete:function(){b.autoHeight||b.toShow.css("height",""),b.toShow.css({width:i,overflow:d}),b.complete()}})}},bounceslide:function(a){this.slide(a,{easing:a.down?"easeOutBounce":"swing",duration:a.down?1e3:200})}}})}(jQuery),function(a,b){var c=0;a.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var b=this,c=this.element[0].ownerDocument,d;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(!b.options.disabled&&!b.element.propAttr("readOnly")){d=!1;var e=a.ui.keyCode;switch(c.keyCode){case e.PAGE_UP:b._move("previousPage",c);break;case e.PAGE_DOWN:b._move("nextPage",c);break;case e.UP:b._move("previous",c),c.preventDefault();break;case e.DOWN:b._move("next",c),c.preventDefault();break;case e.ENTER:case e.NUMPAD_ENTER:b.menu.active&&(d=!0,c.preventDefault());case e.TAB:if(!b.menu.active)return;b.menu.select(c);break;case e.ESCAPE:b.element.val(b.term),b.close(c);break;default:clearTimeout(b.searching),b.searching=setTimeout(function(){b.term!=b.element.val()&&(b.selectedItem=null,b.search(null,c))},b.options.delay)}}}).bind("keypress.autocomplete",function(a){d&&(d=!1,a.preventDefault())}).bind("focus.autocomplete",function(){b.options.disabled||(b.selectedItem=null,b.previous=b.element.val())}).bind("blur.autocomplete",function(a){b.options.disabled||(clearTimeout(b.searching),b.closing=setTimeout(function(){b.close(a),b._change(a)},150))}),this._initSource(),this.response=function(){return b._response.apply(b,arguments)},this.menu=a("<ul></ul>").addClass("ui-autocomplete").appendTo(a(this.options.appendTo||"body",c)[0]).mousedown(function(c){var d=b.menu.element[0];a(c.target).closest(".ui-menu-item").length||setTimeout(function(){a(document).one("mousedown",function(c){c.target!==b.element[0]&&c.target!==d&&!a.ui.contains(d,c.target)&&b.close()})},1),setTimeout(function(){clearTimeout(b.closing)},13)}).menu({focus:function(a,c){var d=c.item.data("item.autocomplete");!1!==b._trigger("focus",a,{item:d})&&/^key/.test(a.originalEvent.type)&&b.element.val(d.value)},selected:function(a,d){var e=d.item.data("item.autocomplete"),f=b.previous;b.element[0]!==c.activeElement&&(b.element.focus(),b.previous=f,setTimeout(function(){b.previous=f,b.selectedItem=e},1)),!1!==b._trigger("select",a,{item:e})&&b.element.val(e.value),b.term=b.element.val(),b.close(a),b.selectedItem=e},blur:function(a,c){b.menu.element.is(":visible")&&b.element.val()!==b.term&&b.element.val(b.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu"),a.fn.bgiframe&&this.menu.element.bgiframe(),b.beforeunloadHandler=function(){b.element.removeAttr("autocomplete")},a(window).bind("beforeunload",b.beforeunloadHandler)},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup"),this.menu.element.remove(),a(window).unbind("beforeunload",this.beforeunloadHandler),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments),b==="source"&&this._initSource(),b==="appendTo"&&this.menu.element.appendTo(a(c||"body",this.element[0].ownerDocument)[0]),b==="disabled"&&c&&this.xhr&&this.xhr.abort()},_initSource:function(){var b=this,d,e;a.isArray(this.options.source)?(d=this.options.source,this.source=function(b,c){c(a.ui.autocomplete.filter(d,b.term))}):typeof this.options.source=="string"?(e=this.options.source,this.source=function(d,f){b.xhr&&b.xhr.abort(),b.xhr=a.ajax({url:e,data:d,dataType:"json",autocompleteRequest:++c,success:function(a,b){this.autocompleteRequest===c&&f(a)},error:function(){this.autocompleteRequest===c&&f([])}})}):this.source=this.options.source},search:function(a,b){a=a!=null?a:this.element.val(),this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)!==!1)return this._search(a)},_search:function(a){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.source({term:a},this.response)},_response:function(a){!this.options.disabled&&a&&a.length?(a=this._normalize(a),this._suggest(a),this._trigger("open")):this.close(),this.pending--,this.pending||this.element.removeClass("ui-autocomplete-loading")},close:function(a){clearTimeout(this.closing),this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.deactivate(),this._trigger("close",a))},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(b){if(b.length&&b[0].label&&b[0].value)return b;return a.map(b,function(b){if(typeof b=="string")return{label:b,value:b};return a.extend({label:b.label||b.value,value:b.value||b.label},b)})},_suggest:function(b){var c=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(c,b),this.menu.deactivate(),this.menu.refresh(),c.show(),this._resizeMenu(),c.position(a.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next(new a.Event("mouseover"))},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(b,c){var d=this;a.each(c,function(a,c){d._renderItem(b,c)})},_renderItem:function(b,c){return a("<li></li>").data("item.autocomplete",c).append(a("<a></a>").text(c.label)).appendTo(b)},_move:function(a,b){if(!this.menu.element.is(":visible"))this.search(null,b);else{if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term),this.menu.deactivate();return}this.menu[a](b)}},widget:function(){return this.menu.element}}),a.extend(a.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},filter:function(b,c){var d=new RegExp(a.ui.autocomplete.escapeRegex(c),"i");return a.grep(b,function(a){return d.test(a.label||a.value||a)})}})}(jQuery),function(a){a.widget("ui.menu",{_create:function(){var b=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(c){!a(c.target).closest(".ui-menu-item a").length||(c.preventDefault(),b.select(c))}),this.refresh()},refresh:function(){var b=this,c=this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem");c.children("a").addClass("ui-corner-all").attr("tabindex",-1).mouseenter(function(c){b.activate(c,a(this).parent())}).mouseleave(function(){b.deactivate()})},activate:function(a,b){this.deactivate();if(this.hasScroll()){var c=b.offset().top-this.element.offset().top,d=this.element.scrollTop(),e=this.element.height();c<0?this.element.scrollTop(d+c):c>=e&&this.element.scrollTop(d+c-e+b.height())}this.active=b.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end(),this._trigger("focus",a,{item:b})},deactivate:function(){!this.active||(this.active.children("a").removeClass("ui-state-hover").removeAttr("id"),this._trigger("blur"),this.active=null)},next:function(a){this.move("next",".ui-menu-item:first",a)},previous:function(a){this.move("prev",".ui-menu-item:last",a)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(a,b,c){if(!this.active)this.activate(c,this.element.children(b));else{var d=this.active[a+"All"](".ui-menu-item").eq(0);d.length?this.activate(c,d):this.activate(c,this.element.children(b))}},nextPage:function(b){if(this.hasScroll()){if(!this.active||this.last()){this.activate(b,this.element.children(".ui-menu-item:first"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c-d+a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:last")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.last()?":first":":last"))},previousPage:function(b){if(this.hasScroll()){if(!this.active||this.first()){this.activate(b,this.element.children(".ui-menu-item:last"));return}var c=this.active.offset().top,d=this.element.height();result=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c+d-a(this).height();return b<10&&b>-10}),result.length||(result=this.element.children(".ui-menu-item:first")),this.activate(b,result)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.first()?":last":":first"))},hasScroll:function(){return this.element.height()<this.element[a.fn.prop?"prop":"attr"]("scrollHeight")},select:function(a){this._trigger("selected",a,{item:this.active})}})}(jQuery),function(a,b){var c,d,e,f,g="ui-button ui-widget ui-state-default ui-corner-all",h="ui-state-hover ui-state-active ",i="ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only",j=function(){var b=a(this).find(":ui-button");setTimeout(function(){b.button("refresh")},1)},k=function(b){var c=b.name,d=b.form,e=a([]);c&&(d?e=a(d).find("[name='"+c+"']"):e=a("[name='"+c+"']",b.ownerDocument).filter(function(){return!this.form}));return e};a.widget("ui.button",{options:{disabled:null,text:!0,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset.button").bind("reset.button",j),typeof this.options.disabled!="boolean"&&(this.options.disabled=this.element.propAttr("disabled")),this._determineButtonType(),this.hasTitle=!!this.buttonElement.attr("title");var b=this,h=this.options,i=this.type==="checkbox"||this.type==="radio",l="ui-state-hover"+(i?"":" ui-state-active"),m="ui-state-focus";h.label===null&&(h.label=this.buttonElement.html()),this.element.is(":disabled")&&(h.disabled=!0),this.buttonElement.addClass(g).attr("role","button").bind("mouseenter.button",function(){h.disabled||(a(this).addClass("ui-state-hover"),this===c&&a(this).addClass("ui-state-active"))}).bind("mouseleave.button",function(){h.disabled||a(this).removeClass(l)}).bind("click.button",function(a){h.disabled&&(a.preventDefault(),a.stopImmediatePropagation())}),this.element.bind("focus.button",function(){b.buttonElement.addClass(m)}).bind("blur.button",function(){b.buttonElement.removeClass(m)}),i&&(this.element.bind("change.button",function(){f||b.refresh()}),this.buttonElement.bind("mousedown.button",function(a){h.disabled||(f=!1,d=a.pageX,e=a.pageY)}).bind("mouseup.button",function(a){!h.disabled&&(d!==a.pageX||e!==a.pageY)&&(f=!0)})),this.type==="checkbox"?this.buttonElement.bind("click.button",function(){if(h.disabled||f)return!1;a(this).toggleClass("ui-state-active"),b.buttonElement.attr("aria-pressed",b.element[0].checked)}):this.type==="radio"?this.buttonElement.bind("click.button",function(){if(h.disabled||f)return!1;a(this).addClass("ui-state-active"),b.buttonElement.attr("aria-pressed","true");var c=b.element[0];k(c).not(c).map(function(){return a(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed","false")}):(this.buttonElement.bind("mousedown.button",function(){if(h.disabled)return!1;a(this).addClass("ui-state-active"),c=this,a(document).one("mouseup",function(){c=null})}).bind("mouseup.button",function(){if(h.disabled)return!1;a(this).removeClass("ui-state-active")}).bind("keydown.button",function(b){if(h.disabled)return!1;(b.keyCode==a.ui.keyCode.SPACE||b.keyCode==a.ui.keyCode.ENTER)&&a(this).addClass("ui-state-active")}).bind("keyup.button",function(){a(this).removeClass("ui-state-active")}),this.buttonElement.is("a")&&this.buttonElement.keyup(function(b){b.keyCode===a.ui.keyCode.SPACE&&a(this).click()})),this._setOption("disabled",h.disabled),this._resetButton()},_determineButtonType:function(){this.element.is(":checkbox")?this.type="checkbox":this.element.is(":radio")?this.type="radio":this.element.is("input")?this.type="input":this.type="button";if(this.type==="checkbox"||this.type==="radio"){var a=this.element.parents().filter(":last"),b="label[for='"+this.element.attr("id")+"']";this.buttonElement=a.find(b),this.buttonElement.length||(a=a.length?a.siblings():this.element.siblings(),this.buttonElement=a.filter(b),this.buttonElement.length||(this.buttonElement=a.find(b))),this.element.addClass("ui-helper-hidden-accessible");var c=this.element.is(":checked");c&&this.buttonElement.addClass("ui-state-active"),this.buttonElement.attr("aria-pressed",c)}else this.buttonElement=this.element},widget:function(){return this.buttonElement},destroy:function(){this.element.removeClass("ui-helper-hidden-accessible"),this.buttonElement.removeClass(g+" "+h+" "+i).removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html()),this.hasTitle||this.buttonElement.removeAttr("title"),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments);b==="disabled"?c?this.element.propAttr("disabled",!0):this.element.propAttr("disabled",!1):this._resetButton()},refresh:function(){var b=this.element.is(":disabled");b!==this.options.disabled&&this._setOption("disabled",b),this.type==="radio"?k(this.element[0]).each(function(){a(this).is(":checked")?a(this).button("widget").addClass("ui-state-active").attr("aria-pressed","true"):a(this).button("widget").removeClass("ui-state-active").attr("aria-pressed","false")}):this.type==="checkbox"&&(this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed","true"):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed","false"))},_resetButton:function(){if(this.type==="input")this.options.label&&this.element.val(this.options.label);else{var b=this.buttonElement.removeClass(i),c=a("<span></span>",this.element[0].ownerDocument).addClass("ui-button-text").html(this.options.label).appendTo(b.empty()).text(),d=this.options.icons,e=d.primary&&d.secondary,f=[];d.primary||d.secondary?(this.options.text&&f.push("ui-button-text-icon"+(e?"s":d.primary?"-primary":"-secondary")),d.primary&&b.prepend("<span class='ui-button-icon-primary ui-icon "+d.primary+"'></span>"),d.secondary&&b.append("<span class='ui-button-icon-secondary ui-icon "+d.secondary+"'></span>"),this.options.text||(f.push(e?"ui-button-icons-only":"ui-button-icon-only"),this.hasTitle||b.attr("title",c))):f.push("ui-button-text-only"),b.addClass(f.join(" "))}}}),a.widget("ui.buttonset",{options:{items:":button, :submit, :reset, :checkbox, :radio, a, :data(button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(b,c){b==="disabled"&&this.buttons.button("option",b,c),a.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){var b=this.element.css("direction")==="rtl";this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(b?"ui-corner-right":"ui-corner-left").end().filter(":last").addClass(b?"ui-corner-left":"ui-corner-right").end().end()},destroy:function(){this.element.removeClass("ui-buttonset"),this.buttons.map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy"),a.Widget.prototype.destroy.call(this)}})}(jQuery),function($,undefined){function isArray(a){return a&&($.browser.safari&&typeof a=="object"&&a.length||a.constructor&&a.constructor.toString().match(/\Array\(\)/))}function extendRemove(a,b){$.extend(a,b);for(var c in b)if(b[c]==null||b[c]==undefined)a[c]=b[c];return a}function bindHover(a){var b="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return a.bind("mouseout",function(a){var c=$(a.target).closest(b);!c.length||c.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(c){var d=$(c.target).closest(b);!$.datepicker._isDisabledDatepicker(instActive.inline?a.parent()[0]:instActive.input[0])&&!!d.length&&(d.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),d.addClass("ui-state-hover"),d.hasClass("ui-datepicker-prev")&&d.addClass("ui-datepicker-prev-hover"),d.hasClass("ui-datepicker-next")&&d.addClass("ui-datepicker-next-hover"))})}function Datepicker(){this.debug=!1,this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},$.extend(this._defaults,this.regional[""]),this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}$.extend($.ui,{datepicker:{version:"1.8.17"}});var PROP_NAME="datepicker"
,dpuuid=(new Date).getTime(),instActive;$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){extendRemove(this._defaults,a||{});return this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline=nodeName=="div"||nodeName=="span";target.id||(this.uuid+=1,target.id="dp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),nodeName=="input"?this._connectDatepicker(target,inst):inline&&this._inlineDatepicker(target,inst)},_newInst:function(a,b){var c=a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:c,input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:b?bindHover($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')):this.dpDiv}},_connectDatepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]);c.hasClass(this.markerClassName)||(this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),this._autoSize(b),$.data(a,PROP_NAME,b),b.settings.disabled&&this._disableDatepicker(a))},_attachments:function(a,b){var c=this._get(b,"appendText"),d=this._get(b,"isRTL");b.append&&b.append.remove(),c&&(b.append=$('<span class="'+this._appendClass+'">'+c+"</span>"),a[d?"before":"after"](b.append)),a.unbind("focus",this._showDatepicker),b.trigger&&b.trigger.remove();var e=this._get(b,"showOn");(e=="focus"||e=="both")&&a.focus(this._showDatepicker);if(e=="button"||e=="both"){var f=this._get(b,"buttonText"),g=this._get(b,"buttonImage");b.trigger=$(this._get(b,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:g,alt:f,title:f}):$('<button type="button"></button>').addClass(this._triggerClass).html(g==""?f:$("<img/>").attr({src:g,alt:f,title:f}))),a[d?"before":"after"](b.trigger),b.trigger.click(function(){$.datepicker._datepickerShowing&&$.datepicker._lastInput==a[0]?$.datepicker._hideDatepicker():$.datepicker._showDatepicker(a[0]);return!1})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var d=function(a){var b=0,c=0;for(var d=0;d<a.length;d++)a[d].length>b&&(b=a[d].length,c=d);return c};b.setMonth(d(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort"))),b.setDate(d(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,b){var c=$(a);c.hasClass(this.markerClassName)||(c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b),this._setDate(b,this._getDefaultDate(b),!0),this._updateDatepicker(b),this._updateAlternate(b),b.settings.disabled&&this._disableDatepicker(a),b.dpDiv.css("display","block"))},_dialogDatepicker:function(a,b,c,d,e){var f=this._dialogInst;if(!f){this.uuid+=1;var g="dp"+this.uuid;this._dialogInput=$('<input type="text" id="'+g+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>'),this._dialogInput.keydown(this._doKeyDown),$("body").append(this._dialogInput),f=this._dialogInst=this._newInst(this._dialogInput,!1),f.settings={},$.data(this._dialogInput[0],PROP_NAME,f)}extendRemove(f.settings,d||{}),b=b&&b.constructor==Date?this._formatDate(f,b):b,this._dialogInput.val(b),this._pos=e?e.length?e:[e.pageX,e.pageY]:null;if(!this._pos){var h=document.documentElement.clientWidth,i=document.documentElement.clientHeight,j=document.documentElement.scrollLeft||document.body.scrollLeft,k=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[h/2-100+j,i/2-150+k]}this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),f.settings.onSelect=c,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),$.blockUI&&$.blockUI(this.dpDiv),$.data(this._dialogInput[0],PROP_NAME,f);return this},_destroyDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!!b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();$.removeData(a,PROP_NAME),d=="input"?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):(d=="div"||d=="span")&&b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!!b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!1,c.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().removeClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b})}},_disableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!!b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!0,c.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().addClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b}),this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return!1;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return!0;return!1},_getInst:function(a){try{return $.data(a,PROP_NAME)}catch(b){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(a,b,c){var d=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?$.extend({},$.datepicker._defaults):d?b=="all"?$.extend({},d.settings):this._get(d,b):null;var e=b||{};typeof b=="string"&&(e={},e[b]=c);if(d){this._curInst==d&&this._hideDatepicker();var f=this._getDateDatepicker(a,!0),g=this._getMinMaxDate(d,"min"),h=this._getMinMaxDate(d,"max");extendRemove(d.settings,e),g!==null&&e.dateFormat!==undefined&&e.minDate===undefined&&(d.settings.minDate=this._formatDate(d,g)),h!==null&&e.dateFormat!==undefined&&e.maxDate===undefined&&(d.settings.maxDate=this._formatDate(d,h)),this._attachments($(a),d),this._autoSize(d),this._setDate(d,f),this._updateAlternate(d),this._updateDatepicker(d)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){var b=this._getInst(a);b&&this._updateDatepicker(b)},_setDateDatepicker:function(a,b){var c=this._getInst(a);c&&(this._setDate(c,b),this._updateDatepicker(c),this._updateAlternate(c))},_getDateDatepicker:function(a,b){var c=this._getInst(a);c&&!c.inline&&this._setDateFromField(c,b);return c?this._getDate(c):null},_doKeyDown:function(a){var b=$.datepicker._getInst(a.target),c=!0,d=b.dpDiv.is(".ui-datepicker-rtl");b._keyEvent=!0;if($.datepicker._datepickerShowing)switch(a.keyCode){case 9:$.datepicker._hideDatepicker(),c=!1;break;case 13:var e=$("td."+$.datepicker._dayOverClass+":not(."+$.datepicker._currentClass+")",b.dpDiv);e[0]&&$.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,e[0]);var f=$.datepicker._get(b,"onSelect");if(f){var g=$.datepicker._formatDate(b);f.apply(b.input?b.input[0]:null,[g,b])}else $.datepicker._hideDatepicker();return!1;case 27:$.datepicker._hideDatepicker();break;case 33:$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 34:$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 35:(a.ctrlKey||a.metaKey)&&$.datepicker._clearDate(a.target),c=a.ctrlKey||a.metaKey;break;case 36:(a.ctrlKey||a.metaKey)&&$.datepicker._gotoToday(a.target),c=a.ctrlKey||a.metaKey;break;case 37:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?1:-1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 38:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,-7,"D"),c=a.ctrlKey||a.metaKey;break;case 39:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?-1:1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 40:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,7,"D"),c=a.ctrlKey||a.metaKey;break;default:c=!1}else a.keyCode==36&&a.ctrlKey?$.datepicker._showDatepicker(this):c=!1;c&&(a.preventDefault(),a.stopPropagation())},_doKeyPress:function(a){var b=$.datepicker._getInst(a.target);if($.datepicker._get(b,"constrainInput")){var c=$.datepicker._possibleChars($.datepicker._get(b,"dateFormat")),d=String.fromCharCode(a.charCode==undefined?a.keyCode:a.charCode);return a.ctrlKey||a.metaKey||d<" "||!c||c.indexOf(d)>-1}},_doKeyUp:function(a){var b=$.datepicker._getInst(a.target);if(b.input.val()!=b.lastVal)try{var c=$.datepicker.parseDate($.datepicker._get(b,"dateFormat"),b.input?b.input.val():null,$.datepicker._getFormatConfig(b));c&&($.datepicker._setDateFromField(b),$.datepicker._updateAlternate(b),$.datepicker._updateDatepicker(b))}catch(a){$.datepicker.log(a)}return!0},_showDatepicker:function(a){a=a.target||a,a.nodeName.toLowerCase()!="input"&&(a=$("input",a.parentNode)[0]);if(!$.datepicker._isDisabledDatepicker(a)&&$.datepicker._lastInput!=a){var b=$.datepicker._getInst(a);$.datepicker._curInst&&$.datepicker._curInst!=b&&($.datepicker._curInst.dpDiv.stop(!0,!0),b&&$.datepicker._datepickerShowing&&$.datepicker._hideDatepicker($.datepicker._curInst.input[0]));var c=$.datepicker._get(b,"beforeShow"),d=c?c.apply(a,[a,b]):{};if(d===!1)return;extendRemove(b.settings,d),b.lastVal=null,$.datepicker._lastInput=a,$.datepicker._setDateFromField(b),$.datepicker._inDialog&&(a.value=""),$.datepicker._pos||($.datepicker._pos=$.datepicker._findPos(a),$.datepicker._pos[1]+=a.offsetHeight);var e=!1;$(a).parents().each(function(){e|=$(this).css("position")=="fixed";return!e}),e&&$.browser.opera&&($.datepicker._pos[0]-=document.documentElement.scrollLeft,$.datepicker._pos[1]-=document.documentElement.scrollTop);var f={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null,b.dpDiv.empty(),b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.datepicker._updateDatepicker(b),f=$.datepicker._checkOffset(b,f,e),b.dpDiv.css({position:$.datepicker._inDialog&&$.blockUI?"static":e?"fixed":"absolute",display:"none",left:f.left+"px",top:f.top+"px"});if(!b.inline){var g=$.datepicker._get(b,"showAnim"),h=$.datepicker._get(b,"duration"),i=function(){var a=b.dpDiv.find("iframe.ui-datepicker-cover");if(!!a.length){var c=$.datepicker._getBorders(b.dpDiv);a.css({left:-c[0],top:-c[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex($(a).zIndex()+1),$.datepicker._datepickerShowing=!0,$.effects&&$.effects[g]?b.dpDiv.show(g,$.datepicker._get(b,"showOptions"),h,i):b.dpDiv[g||"show"](g?h:null,i),(!g||!h)&&i(),b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus(),$.datepicker._curInst=b}}},_updateDatepicker:function(a){var b=this;b.maxRows=4;var c=$.datepicker._getBorders(a.dpDiv);instActive=a,a.dpDiv.empty().append(this._generateHTML(a));var d=a.dpDiv.find("iframe.ui-datepicker-cover");!d.length||d.css({left:-c[0],top:-c[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()}),a.dpDiv.find("."+this._dayOverClass+" a").mouseover();var e=this._getNumberOfMonths(a),f=e[1],g=17;a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),f>1&&a.dpDiv.addClass("ui-datepicker-multi-"+f).css("width",g*f+"em"),a.dpDiv[(e[0]!=1||e[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi"),a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),a==$.datepicker._curInst&&$.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var h=a.yearshtml;setTimeout(function(){h===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml),h=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(a){return{thin:1,medium:2,thick:3}[a]||a};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var d=a.dpDiv.outerWidth(),e=a.dpDiv.outerHeight(),f=a.input?a.input.outerWidth():0,g=a.input?a.input.outerHeight():0,h=document.documentElement.clientWidth+$(document).scrollLeft(),i=document.documentElement.clientHeight+$(document).scrollTop();b.left-=this._get(a,"isRTL")?d-f:0,b.left-=c&&b.left==a.input.offset().left?$(document).scrollLeft():0,b.top-=c&&b.top==a.input.offset().top+g?$(document).scrollTop():0,b.left-=Math.min(b.left,b.left+d>h&&h>d?Math.abs(b.left+d-h):0),b.top-=Math.min(b.top,b.top+e>i&&i>e?Math.abs(e+g):0);return b},_findPos:function(a){var b=this._getInst(a),c=this._get(b,"isRTL");while(a&&(a.type=="hidden"||a.nodeType!=1||$.expr.filters.hidden(a)))a=a[c?"previousSibling":"nextSibling"];var d=$(a).offset();return[d.left,d.top]},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=$.data(a,PROP_NAME))&&this._datepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=this,f=function(){$.datepicker._tidyDialog(b),e._curInst=null};$.effects&&$.effects[c]?b.dpDiv.hide(c,$.datepicker._get(b,"showOptions"),d,f):b.dpDiv[c=="slideDown"?"slideUp":c=="fadeIn"?"fadeOut":"hide"](c?d:null,f),c||f(),this._datepickerShowing=!1;var g=this._get(b,"onClose");g&&g.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.dpDiv))),this._inDialog=!1}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(a){if(!!$.datepicker._curInst){var b=$(a.target),c=$.datepicker._getInst(b[0]);(b[0].id!=$.datepicker._mainDivId&&b.parents("#"+$.datepicker._mainDivId).length==0&&!b.hasClass($.datepicker.markerClassName)&&!b.hasClass($.datepicker._triggerClass)&&$.datepicker._datepickerShowing&&(!$.datepicker._inDialog||!$.blockUI)||b.hasClass($.datepicker.markerClassName)&&$.datepicker._curInst!=c)&&$.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){var d=$(a),e=this._getInst(d[0]);this._isDisabledDatepicker(d[0])||(this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):0),c),this._updateDatepicker(e))},_gotoToday:function(a){var b=$(a),c=this._getInst(b[0]);if(this._get(c,"gotoCurrent")&&c.currentDay)c.selectedDay=c.currentDay,c.drawMonth=c.selectedMonth=c.currentMonth,c.drawYear=c.selectedYear=c.currentYear;else{var d=new Date;c.selectedDay=d.getDate(),c.drawMonth=c.selectedMonth=d.getMonth(),c.drawYear=c.selectedYear=d.getFullYear()}this._notifyChange(c),this._adjustDate(b)},_selectMonthYear:function(a,b,c){var d=$(a),e=this._getInst(d[0]);e["selected"+(c=="M"?"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10),this._notifyChange(e),this._adjustDate(d)},_selectDay:function(a,b,c,d){var e=$(a);if(!$(d).hasClass(this._unselectableClass)&&!this._isDisabledDatepicker(e[0])){var f=this._getInst(e[0]);f.selectedDay=f.currentDay=$("a",d).html(),f.selectedMonth=f.currentMonth=b,f.selectedYear=f.currentYear=c,this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))}},_clearDate:function(a){var b=$(a),c=this._getInst(b[0]);this._selectDate(b,"")},_selectDate:function(a,b){var c=$(a),d=this._getInst(c[0]);b=b!=null?b:this._formatDate(d),d.input&&d.input.val(b),this._updateAlternate(d);var e=this._get(d,"onSelect");e?e.apply(d.input?d.input[0]:null,[b,d]):d.input&&d.input.trigger("change"),d.inline?this._updateDatepicker(d):(this._hideDatepicker(),this._lastInput=d.input[0],typeof d.input[0]!="object"&&d.input.focus(),this._lastInput=null)},_updateAlternate:function(a){var b=this._get(a,"altField");if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),d=this._getDate(a),e=this.formatDate(c,d,this._getFormatConfig(a));$(b).each(function(){$(this).val(e)})}},noWeekends:function(a){var b=a.getDay();return[b>0&&b<6,""]},iso8601Week:function(a){var b=new Date(a.getTime());b.setDate(b.getDate()+4-(b.getDay()||7));var c=b.getTime();b.setMonth(0),b.setDate(1);return Math.floor(Math.round((c-b)/864e5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?b.toString():b+"";if(b=="")return null;var d=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;d=typeof d!="string"?d:(new Date).getFullYear()%100+parseInt(d,10);var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,g=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,h=(c?c.monthNames:null)||this._defaults.monthNames,i=-1,j=-1,k=-1,l=-1,m=!1,n=function(b){var c=s+1<a.length&&a.charAt(s+1)==b;c&&s++;return c},o=function(a){var c=n(a),d=a=="@"?14:a=="!"?20:a=="y"&&c?4:a=="o"?3:2,e=new RegExp("^\\d{1,"+d+"}"),f=b.substring(r).match(e);if(!f)throw"Missing number at position "+r;r+=f[0].length;return parseInt(f[0],10)},p=function(a,c,d){var e=$.map(n(a)?d:c,function(a,b){return[[b,a]]}).sort(function(a,b){return-(a[1].length-b[1].length)}),f=-1;$.each(e,function(a,c){var d=c[1];if(b.substr(r,d.length).toLowerCase()==d.toLowerCase()){f=c[0],r+=d.length;return!1}});if(f!=-1)return f+1;throw"Unknown name at position "+r},q=function(){if(b.charAt(r)!=a.charAt(s))throw"Unexpected literal at position "+r;r++},r=0;for(var s=0;s<a.length;s++)if(m)a.charAt(s)=="'"&&!n("'")?m=!1:q();else switch(a.charAt(s)){case"d":k=o("d");break;case"D":p("D",e,f);break;case"o":l=o("o");break;case"m":j=o("m");break;case"M":j=p("M",g,h);break;case"y":i=o("y");break;case"@":var t=new Date(o("@"));i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"!":var t=new Date((o("!")-this._ticksTo1970)/1e4);i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"'":n("'")?q():m=!0;break;default:q()}if(r<b.length)throw"Extra/unparsed characters found in date: "+b.substring(r);i==-1?i=(new Date).getFullYear():i<100&&(i+=(new Date).getFullYear()-(new Date).getFullYear()%100+(i<=d?0:-100));if(l>-1){j=1,k=l;for(;;){var u=this._getDaysInMonth(i,j-1);if(k<=u)break;j++,k-=u}}var t=this._daylightSavingAdjust(new Date(i,j-1,k));if(t.getFullYear()!=i||t.getMonth()+1!=j||t.getDate()!=k)throw"Invalid date";return t},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1e7,formatDate:function(a,b,c){if(!b)return"";var d=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,e=(c?c.dayNames:null)||this._defaults.dayNames,f=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,h=function(b){var c=m+1<a.length&&a.charAt(m+1)==b;c&&m++;return c},i=function(a,b,c){var d=""+b;if(h(a))while(d.length<c)d="0"+d;return d},j=function(a,b,c,d){return h(a)?d[b]:c[b]},k="",l=!1;if(b)for(var m=0;m<a.length;m++)if(l)a.charAt(m)=="'"&&!h("'")?l=!1:k+=a.charAt(m);else switch(a.charAt(m)){case"d":k+=i("d",b.getDate(),2);break;case"D":k+=j("D",b.getDay(),d,e);break;case"o":k+=i("o",Math.round(((new Date(b.getFullYear(),b.getMonth(),b.getDate())).getTime()-(new Date(b.getFullYear(),0,0)).getTime())/864e5),3);break;case"m":k+=i("m",b.getMonth()+1,2);break;case"M":k+=j("M",b.getMonth(),f,g);break;case"y":k+=h("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case"@":k+=b.getTime();break;case"!":k+=b.getTime()*1e4+this._ticksTo1970;break;case"'":h("'")?k+="'":l=!0;break;default:k+=a.charAt(m)}return k},_possibleChars:function(a){var b="",c=!1,d=function(b){var c=e+1<a.length&&a.charAt(e+1)==b;c&&e++;return c};for(var e=0;e<a.length;e++)if(c)a.charAt(e)=="'"&&!d("'")?c=!1:b+=a.charAt(e);else switch(a.charAt(e)){case"d":case"m":case"y":case"@":b+="0123456789";break;case"D":case"M":return null;case"'":d("'")?b+="'":c=!0;break;default:b+=a.charAt(e)}return b},_get:function(a,b){return a.settings[b]!==undefined?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()!=a.lastVal){var c=this._get(a,"dateFormat"),d=a.lastVal=a.input?a.input.val():null,e,f;e=f=this._getDefaultDate(a);var g=this._getFormatConfig(a);try{e=this.parseDate(c,d,g)||f}catch(h){this.log(h),d=b?"":d}a.selectedDay=e.getDate(),a.drawMonth=a.selectedMonth=e.getMonth(),a.drawYear=a.selectedYear=e.getFullYear(),a.currentDay=d?e.getDate():0,a.currentMonth=d?e.getMonth():0,a.currentYear=d?e.getFullYear():0,this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var d=function(a){var b=new Date;b.setDate(b.getDate()+a);return b},e=function(b){try{return $.datepicker.parseDate($.datepicker._get(a,"dateFormat"),b,$.datepicker._getFormatConfig(a))}catch(c){}var d=(b.toLowerCase().match(/^c/)?$.datepicker._getDate(a):null)||new Date,e=d.getFullYear(),f=d.getMonth(),g=d.getDate(),h=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,i=h.exec(b);while(i){switch(i[2]||"d"){case"d":case"D":g+=parseInt(i[1],10);break;case"w":case"W":g+=parseInt(i[1],10)*7;break;case"m":case"M":f+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f));break;case"y":case"Y":e+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f))}i=h.exec(b)}return new Date(e,f,g)},f=b==null||b===""?c:typeof b=="string"?e(b):typeof b=="number"?isNaN(b)?c:d(b):new Date(b.getTime());f=f&&f.toString()=="Invalid Date"?c:f,f&&(f.setHours(0),f.setMinutes(0),f.setSeconds(0),f.setMilliseconds(0));return this._daylightSavingAdjust(f)},_daylightSavingAdjust:function(a){if(!a)return null;a.setHours(a.getHours()>12?a.getHours()+2:0);return a},_setDate:function(a,b,c){var d=!b,e=a.selectedMonth,f=a.selectedYear,g=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=g.getDate(),a.drawMonth=a.selectedMonth=a.currentMonth=g.getMonth(),a.drawYear=a.selectedYear=a.currentYear=g.getFullYear(),(e!=a.selectedMonth||f!=a.selectedYear)&&!c&&this._notifyChange(a),this._adjustInstDate(a),a.input&&a.input.val(d?"":this._formatDate(a))},_getDate:function(a){var b=!a.currentYear||a.input&&a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return b},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),d=this._get(a,"showButtonPanel"),e=this._get(a,"hideIfNoPrevNext"),f=this._get(a,"navigationAsDateFormat"),g=this._getNumberOfMonths(a),h=this._get(a,"showCurrentAtPos"),i=this._get(a,"stepMonths"),j=g[0]!=1||g[1]!=1,k=this._daylightSavingAdjust(a.currentDay?new Date(a.currentYear,a.currentMonth,a.currentDay):new Date(9999,9,9)),l=this._getMinMaxDate(a,"min"),m=this._getMinMaxDate(a,"max"),n=a.drawMonth-h,o=a.drawYear;n<0&&(n+=12,o--);if(m){var p=this._daylightSavingAdjust(new Date(m.getFullYear(),m.getMonth()-g[0]*g[1]+1,m.getDate()));p=l&&p<l?l:p;while(this._daylightSavingAdjust(new Date(o,n,1))>p)n--,n<0&&(n=11,o--)}a.drawMonth=n,a.drawYear=o;var q=this._get(a,"prevText");q=f?this.formatDate(q,this._daylightSavingAdjust(new Date(o,n-i,1)),this._getFormatConfig(a)):q;var r=this._canAdjustMonth(a,-1,o,n)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._adjustDate('#"+a.id+"', -"+i+", 'M');\""+' title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>":e?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>",s=this._get(a,"nextText");s=f?this.formatDate(s,this._daylightSavingAdjust(new Date(o,n+i,1)),this._getFormatConfig(a)):s;var t=this._canAdjustMonth(a,1,o,n)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._adjustDate('#"+a.id+"', +"+i+", 'M');\""+' title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>":e?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>",u=this._get(a,"currentText"),v=this._get(a,"gotoCurrent")&&a.currentDay?k:b;u=f?this.formatDate(u,v,this._getFormatConfig(a)):u;var w=a.inline?"":'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+dpuuid+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>",x=d?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?w:"")+(this._isInRange(a,v)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._gotoToday('#"+a.id+"');\""+">"+u+"</button>":"")+(c?"":w)+"</div>":"",y=parseInt(this._get(a,"firstDay"),10);y=isNaN(y)?0:y;var z=this._get(a,"showWeek"),A=this._get(a,"dayNames"),B=this._get(a,"dayNamesShort"),C=this._get(a,"dayNamesMin"),D=this._get(a,"monthNames"),E=this._get(a,"monthNamesShort"),F=this._get(a,"beforeShowDay"),G=this._get(a,"showOtherMonths"),H=this._get(a,"selectOtherMonths"),I=this._get(a,"calculateWeek")||this.iso8601Week,J=this._getDefaultDate(a),K="";for(var L=0;L<g[0];L++){var M="";this.maxRows=4;for(var N=0;N<g[1];N++){var O=this._daylightSavingAdjust(new Date(o,n,a.selectedDay)),P=" ui-corner-all",Q="";if(j){Q+='<div class="ui-datepicker-group';if(g[1]>1)switch(N){case 0:Q+=" ui-datepicker-group-first",P=" ui-corner-"+(c?"right":"left");break;case g[1]-1:Q+=" ui-datepicker-group-last",P=" ui-corner-"+(c?"left":"right");break;default:Q+=" ui-datepicker-group-middle",P=""}Q+='">'}Q+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+P+'">'+(/all|left/.test(P)&&L==0?c?t:r:"")+(/all|right/.test(P)&&L==0?c?r:t:"")+this._generateMonthYearHeader(a,n,o,l,m,L>0||N>0,D,E)+'</div><table class="ui-datepicker-calendar"><thead>'+"<tr>";var R=z?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(var S=0;S<7;S++){var T=(S+y)%7;R+="<th"+((S+y+6)%7>=5?' class="ui-datepicker-week-end"':"")+">"+'<span title="'+A[T]+'">'+C[T]+"</span></th>"}Q+=R+"</tr></thead><tbody>";var U=this._getDaysInMonth(o,n);o==a.selectedYear&&n==a.selectedMonth&&(a.selectedDay=Math.min(a.selectedDay,U));var V=(this._getFirstDayOfMonth(o,n)-y+7)%7,W=Math.ceil((V+U)/7),X=j?this.maxRows>W?this.maxRows:W:W;this.maxRows=X;var Y=this._daylightSavingAdjust(new Date(o,n,1-V));for(var Z=0;Z<X;Z++){Q+="<tr>";var _=z?'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(Y)+"</td>":"";for(var S=0;S<7;S++){var ba=F?F.apply(a.input?a.input[0]:null,[Y]):[!0,""],bb=Y.getMonth()!=n,bc=bb&&!H||!ba[0]||l&&Y<l||m&&Y>m;_+='<td class="'+((S+y+6)%7>=5?" ui-datepicker-week-end":"")+(bb?" ui-datepicker-other-month":"")+(Y.getTime()==O.getTime()&&n==a.selectedMonth&&a._keyEvent||J.getTime()==Y.getTime()&&J.getTime()==O.getTime()?" "+this._dayOverClass:"")+(bc?" "+this._unselectableClass+" ui-state-disabled":"")+(bb&&!G?"":" "+ba[1]+(Y.getTime()==k.getTime()?" "+this._currentClass:"")+(Y.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!bb||G)&&ba[2]?' title="'+ba[2]+'"':"")+(bc?"":' onclick="DP_jQuery_'+dpuuid+".datepicker._selectDay('#"+a.id+"',"+Y.getMonth()+","+Y.getFullYear()+', this);return false;"')+">"+(bb&&!G?"&#xa0;":bc?'<span class="ui-state-default">'+Y.getDate()+"</span>":'<a class="ui-state-default'+(Y.getTime()==b.getTime()?" ui-state-highlight":"")+(Y.getTime()==k.getTime()?" ui-state-active":"")+(bb?" ui-priority-secondary":"")+'" href="#">'+Y.getDate()+"</a>")+"</td>",Y.setDate(Y.getDate()+1),Y=this._daylightSavingAdjust(Y)}Q+=_+"</tr>"}n++,n>11&&(n=0,o++),Q+="</tbody></table>"+(j?"</div>"+(g[0]>0&&N==g[1]-1?'<div class="ui-datepicker-row-break"></div>':""):""),M+=Q}K+=M}K+=x+($.browser.msie&&parseInt($.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':""),a._keyEvent=!1;return K},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i=this._get(a,"changeMonth"),j=this._get(a,"changeYear"),k=this._get(a,"showMonthAfterYear"),l='<div class="ui-datepicker-title">',m="";if(f||!i)m+='<span class="ui-datepicker-month">'+g[b]+"</span>";else{var n=d&&d.getFullYear()==c,o=e&&e.getFullYear()==c;m+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+dpuuid+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" "+">";for(var p=0;p<12;p++)(!n||p>=d.getMonth())&&(!o||p<=e.getMonth())&&(m+='<option value="'+p+'"'+(p==b?' selected="selected"':"")+">"+h[p]+"</option>");m+="</select>"}k||(l+=m+(f||!i||!j?"&#xa0;":""));if(!a.yearshtml){a.yearshtml="";if(f||!j)l+='<span class="ui-datepicker-year">'+c+"</span>";else{var q=this._get(a,"yearRange").split(":"),r=(new Date).getFullYear(),s=function(a){var b=a.match(/c[+-].*/)?c+parseInt(a.substring(1),10):a.match(/[+-].*/)?r+parseInt(a,10):parseInt(a,10);return isNaN(b)?r:b},t=s(q[0]),u=Math.max(t,s(q[1]||""));t=d?Math.max(t,d.getFullYear()):t,u=e?Math.min(u,e.getFullYear()):u,a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+dpuuid+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" "+">";for(;t<=u;t++)a.yearshtml+='<option value="'+t+'"'+(t==c?' selected="selected"':"")+">"+t+"</option>";a.yearshtml+="</select>",l+=a.yearshtml,a.yearshtml=null}}l+=this._get(a,"yearSuffix"),k&&(l+=(f||!i||!j?"&#xa0;":"")+m),l+="</div>";return l},_adjustInstDate:function(a,b,c){var d=a.drawYear+(c=="Y"?b:0),e=a.drawMonth+(c=="M"?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+(c=="D"?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),(c=="M"||c=="Y")&&this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&b<c?c:b;e=d&&e>d?d:e;return e},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return b==null?[1,1]:typeof b=="number"?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth()));return this._isInRange(a,f)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!d||b.getTime()<=d.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date
(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),$.fn.datepicker=function(a){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return $.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return $.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b));return this.each(function(){typeof a=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this].concat(b)):$.datepicker._attachDatepicker(this,a)})},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.8.17",window["DP_jQuery_"+dpuuid]=$}(jQuery),function(a,b){var c="ui-dialog ui-widget ui-widget-content ui-corner-all ",d={buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},e={maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0},f=a.attrFn||{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0,click:!0};a.widget("ui.dialog",{options:{autoOpen:!0,buttons:{},closeOnEscape:!0,closeText:"close",dialogClass:"",draggable:!0,hide:null,height:"auto",maxHeight:!1,maxWidth:!1,minHeight:150,minWidth:150,modal:!1,position:{my:"center",at:"center",collision:"fit",using:function(b){var c=a(this).css(b).offset().top;c<0&&a(this).css("top",b.top-c)}},resizable:!0,show:null,stack:!0,title:"",width:300,zIndex:1e3},_create:function(){this.originalTitle=this.element.attr("title"),typeof this.originalTitle!="string"&&(this.originalTitle=""),this.options.title=this.options.title||this.originalTitle;var b=this,d=b.options,e=d.title||"&#160;",f=a.ui.dialog.getTitleId(b.element),g=(b.uiDialog=a("<div></div>")).appendTo(document.body).hide().addClass(c+d.dialogClass).css({zIndex:d.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(c){d.closeOnEscape&&!c.isDefaultPrevented()&&c.keyCode&&c.keyCode===a.ui.keyCode.ESCAPE&&(b.close(c),c.preventDefault())}).attr({role:"dialog","aria-labelledby":f}).mousedown(function(a){b.moveToTop(!1,a)}),h=b.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g),i=(b.uiDialogTitlebar=a("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),j=a('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){j.addClass("ui-state-hover")},function(){j.removeClass("ui-state-hover")}).focus(function(){j.addClass("ui-state-focus")}).blur(function(){j.removeClass("ui-state-focus")}).click(function(a){b.close(a);return!1}).appendTo(i),k=(b.uiDialogTitlebarCloseText=a("<span></span>")).addClass("ui-icon ui-icon-closethick").text(d.closeText).appendTo(j),l=a("<span></span>").addClass("ui-dialog-title").attr("id",f).html(e).prependTo(i);a.isFunction(d.beforeclose)&&!a.isFunction(d.beforeClose)&&(d.beforeClose=d.beforeclose),i.find("*").add(i).disableSelection(),d.draggable&&a.fn.draggable&&b._makeDraggable(),d.resizable&&a.fn.resizable&&b._makeResizable(),b._createButtons(d.buttons),b._isOpen=!1,a.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy(),a.uiDialog.hide(),a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body"),a.uiDialog.remove(),a.originalTitle&&a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(b){var c=this,d,e;if(!1!==c._trigger("beforeClose",b)){c.overlay&&c.overlay.destroy(),c.uiDialog.unbind("keypress.ui-dialog"),c._isOpen=!1,c.options.hide?c.uiDialog.hide(c.options.hide,function(){c._trigger("close",b)}):(c.uiDialog.hide(),c._trigger("close",b)),a.ui.dialog.overlay.resize(),c.options.modal&&(d=0,a(".ui-dialog").each(function(){this!==c.uiDialog[0]&&(e=a(this).css("z-index"),isNaN(e)||(d=Math.max(d,e)))}),a.ui.dialog.maxZ=d);return c}},isOpen:function(){return this._isOpen},moveToTop:function(b,c){var d=this,e=d.options,f;if(e.modal&&!b||!e.stack&&!e.modal)return d._trigger("focus",c);e.zIndex>a.ui.dialog.maxZ&&(a.ui.dialog.maxZ=e.zIndex),d.overlay&&(a.ui.dialog.maxZ+=1,d.overlay.$el.css("z-index",a.ui.dialog.overlay.maxZ=a.ui.dialog.maxZ)),f={scrollTop:d.element.scrollTop(),scrollLeft:d.element.scrollLeft()},a.ui.dialog.maxZ+=1,d.uiDialog.css("z-index",a.ui.dialog.maxZ),d.element.attr(f),d._trigger("focus",c);return d},open:function(){if(!this._isOpen){var b=this,c=b.options,d=b.uiDialog;b.overlay=c.modal?new a.ui.dialog.overlay(b):null,b._size(),b._position(c.position),d.show(c.show),b.moveToTop(!0),c.modal&&d.bind("keydown.ui-dialog",function(b){if(b.keyCode===a.ui.keyCode.TAB){var c=a(":tabbable",this),d=c.filter(":first"),e=c.filter(":last");if(b.target===e[0]&&!b.shiftKey){d.focus(1);return!1}if(b.target===d[0]&&b.shiftKey){e.focus(1);return!1}}}),a(b.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus(),b._isOpen=!0,b._trigger("open");return b}},_createButtons:function(b){var c=this,d=!1,e=a("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=a("<div></div>").addClass("ui-dialog-buttonset").appendTo(e);c.uiDialog.find(".ui-dialog-buttonpane").remove(),typeof b=="object"&&b!==null&&a.each(b,function(){return!(d=!0)}),d&&(a.each(b,function(b,d){d=a.isFunction(d)?{click:d,text:b}:d;var e=a('<button type="button"></button>').click(function(){d.click.apply(c.element[0],arguments)}).appendTo(g);a.each(d,function(a,b){a!=="click"&&(a in f?e[a](b):e.attr(a,b))}),a.fn.button&&e.button()}),e.appendTo(c.uiDialog))},_makeDraggable:function(){function f(a){return{position:a.position,offset:a.offset}}var b=this,c=b.options,d=a(document),e;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(d,g){e=c.height==="auto"?"auto":a(this).height(),a(this).height(a(this).height()).addClass("ui-dialog-dragging"),b._trigger("dragStart",d,f(g))},drag:function(a,c){b._trigger("drag",a,f(c))},stop:function(g,h){c.position=[h.position.left-d.scrollLeft(),h.position.top-d.scrollTop()],a(this).removeClass("ui-dialog-dragging").height(e),b._trigger("dragStop",g,f(h)),a.ui.dialog.overlay.resize()}})},_makeResizable:function(c){function h(a){return{originalPosition:a.originalPosition,originalSize:a.originalSize,position:a.position,size:a.size}}c=c===b?this.options.resizable:c;var d=this,e=d.options,f=d.uiDialog.css("position"),g=typeof c=="string"?c:"n,e,s,w,se,sw,ne,nw";d.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:d.element,maxWidth:e.maxWidth,maxHeight:e.maxHeight,minWidth:e.minWidth,minHeight:d._minHeight(),handles:g,start:function(b,c){a(this).addClass("ui-dialog-resizing"),d._trigger("resizeStart",b,h(c))},resize:function(a,b){d._trigger("resize",a,h(b))},stop:function(b,c){a(this).removeClass("ui-dialog-resizing"),e.height=a(this).height(),e.width=a(this).width(),d._trigger("resizeStop",b,h(c)),a.ui.dialog.overlay.resize()}}).css("position",f).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var a=this.options;return a.height==="auto"?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(b){var c=[],d=[0,0],e;if(b){if(typeof b=="string"||typeof b=="object"&&"0"in b)c=b.split?b.split(" "):[b[0],b[1]],c.length===1&&(c[1]=c[0]),a.each(["left","top"],function(a,b){+c[a]===c[a]&&(d[a]=c[a],c[a]=b)}),b={my:c.join(" "),at:c.join(" "),offset:d.join(" ")};b=a.extend({},a.ui.dialog.prototype.options.position,b)}else b=a.ui.dialog.prototype.options.position;e=this.uiDialog.is(":visible"),e||this.uiDialog.show(),this.uiDialog.css({top:0,left:0}).position(a.extend({of:window},b)),e||this.uiDialog.hide()},_setOptions:function(b){var c=this,f={},g=!1;a.each(b,function(a,b){c._setOption(a,b),a in d&&(g=!0),a in e&&(f[a]=b)}),g&&this._size(),this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",f)},_setOption:function(b,d){var e=this,f=e.uiDialog;switch(b){case"beforeclose":b="beforeClose";break;case"buttons":e._createButtons(d);break;case"closeText":e.uiDialogTitlebarCloseText.text(""+d);break;case"dialogClass":f.removeClass(e.options.dialogClass).addClass(c+d);break;case"disabled":d?f.addClass("ui-dialog-disabled"):f.removeClass("ui-dialog-disabled");break;case"draggable":var g=f.is(":data(draggable)");g&&!d&&f.draggable("destroy"),!g&&d&&e._makeDraggable();break;case"position":e._position(d);break;case"resizable":var h=f.is(":data(resizable)");h&&!d&&f.resizable("destroy"),h&&typeof d=="string"&&f.resizable("option","handles",d),!h&&d!==!1&&e._makeResizable(d);break;case"title":a(".ui-dialog-title",e.uiDialogTitlebar).html(""+(d||"&#160;"))}a.Widget.prototype._setOption.apply(e,arguments)},_size:function(){var b=this.options,c,d,e=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0}),b.minWidth>b.width&&(b.width=b.minWidth),c=this.uiDialog.css({height:"auto",width:b.width}).height(),d=Math.max(0,b.minHeight-c);if(b.height==="auto")if(a.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();var f=this.element.css("height","auto").height();e||this.uiDialog.hide(),this.element.height(Math.max(f,d))}else this.element.height(Math.max(b.height-c,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}}),a.extend(a.ui.dialog,{version:"1.8.17",uuid:0,maxZ:0,getTitleId:function(a){var b=a.attr("id");b||(this.uuid+=1,b=this.uuid);return"ui-dialog-title-"+b},overlay:function(b){this.$el=a.ui.dialog.overlay.create(b)}}),a.extend(a.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:a.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "),create:function(b){this.instances.length===0&&(setTimeout(function(){a.ui.dialog.overlay.instances.length&&a(document).bind(a.ui.dialog.overlay.events,function(b){if(a(b.target).zIndex()<a.ui.dialog.overlay.maxZ)return!1})},1),a(document).bind("keydown.dialog-overlay",function(c){b.options.closeOnEscape&&!c.isDefaultPrevented()&&c.keyCode&&c.keyCode===a.ui.keyCode.ESCAPE&&(b.close(c),c.preventDefault())}),a(window).bind("resize.dialog-overlay",a.ui.dialog.overlay.resize));var c=(this.oldInstances.pop()||a("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),height:this.height()});a.fn.bgiframe&&c.bgiframe(),this.instances.push(c);return c},destroy:function(b){var c=a.inArray(b,this.instances);c!=-1&&this.oldInstances.push(this.instances.splice(c,1)[0]),this.instances.length===0&&a([document,window]).unbind(".dialog-overlay"),b.remove();var d=0;a.each(this.instances,function(){d=Math.max(d,this.css("z-index"))}),this.maxZ=d},height:function(){var b,c;if(a.browser.msie&&a.browser.version<7){b=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),c=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return b<c?a(window).height()+"px":b+"px"}return a(document).height()+"px"},width:function(){var b,c;if(a.browser.msie){b=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),c=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth);return b<c?a(window).width()+"px":b+"px"}return a(document).width()+"px"},resize:function(){var b=a([]);a.each(a.ui.dialog.overlay.instances,function(){b=b.add(this)}),b.css({width:0,height:0}).css({width:a.ui.dialog.overlay.width(),height:a.ui.dialog.overlay.height()})}}),a.extend(a.ui.dialog.overlay.prototype,{destroy:function(){a.ui.dialog.overlay.destroy(this.$el)}})}(jQuery),function(a,b){a.ui=a.ui||{};var c=/left|center|right/,d=/top|center|bottom/,e="center",f={},g=a.fn.position,h=a.fn.offset;a.fn.position=function(b){if(!b||!b.of)return g.apply(this,arguments);b=a.extend({},b);var h=a(b.of),i=h[0],j=(b.collision||"flip").split(" "),k=b.offset?b.offset.split(" "):[0,0],l,m,n;i.nodeType===9?(l=h.width(),m=h.height(),n={top:0,left:0}):i.setTimeout?(l=h.width(),m=h.height(),n={top:h.scrollTop(),left:h.scrollLeft()}):i.preventDefault?(b.at="left top",l=m=0,n={top:b.of.pageY,left:b.of.pageX}):(l=h.outerWidth(),m=h.outerHeight(),n=h.offset()),a.each(["my","at"],function(){var a=(b[this]||"").split(" ");a.length===1&&(a=c.test(a[0])?a.concat([e]):d.test(a[0])?[e].concat(a):[e,e]),a[0]=c.test(a[0])?a[0]:e,a[1]=d.test(a[1])?a[1]:e,b[this]=a}),j.length===1&&(j[1]=j[0]),k[0]=parseInt(k[0],10)||0,k.length===1&&(k[1]=k[0]),k[1]=parseInt(k[1],10)||0,b.at[0]==="right"?n.left+=l:b.at[0]===e&&(n.left+=l/2),b.at[1]==="bottom"?n.top+=m:b.at[1]===e&&(n.top+=m/2),n.left+=k[0],n.top+=k[1];return this.each(function(){var c=a(this),d=c.outerWidth(),g=c.outerHeight(),h=parseInt(a.curCSS(this,"marginLeft",!0))||0,i=parseInt(a.curCSS(this,"marginTop",!0))||0,o=d+h+(parseInt(a.curCSS(this,"marginRight",!0))||0),p=g+i+(parseInt(a.curCSS(this,"marginBottom",!0))||0),q=a.extend({},n),r;b.my[0]==="right"?q.left-=d:b.my[0]===e&&(q.left-=d/2),b.my[1]==="bottom"?q.top-=g:b.my[1]===e&&(q.top-=g/2),f.fractions||(q.left=Math.round(q.left),q.top=Math.round(q.top)),r={left:q.left-h,top:q.top-i},a.each(["left","top"],function(c,e){a.ui.position[j[c]]&&a.ui.position[j[c]][e](q,{targetWidth:l,targetHeight:m,elemWidth:d,elemHeight:g,collisionPosition:r,collisionWidth:o,collisionHeight:p,offset:k,my:b.my,at:b.at})}),a.fn.bgiframe&&c.bgiframe(),c.offset(a.extend(q,{using:b.using}))})},a.ui.position={fit:{left:function(b,c){var d=a(window),e=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft();b.left=e>0?b.left-e:Math.max(b.left-c.collisionPosition.left,b.left)},top:function(b,c){var d=a(window),e=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop();b.top=e>0?b.top-e:Math.max(b.top-c.collisionPosition.top,b.top)}},flip:{left:function(b,c){if(c.at[0]!==e){var d=a(window),f=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft(),g=c.my[0]==="left"?-c.elemWidth:c.my[0]==="right"?c.elemWidth:0,h=c.at[0]==="left"?c.targetWidth:-c.targetWidth,i=-2*c.offset[0];b.left+=c.collisionPosition.left<0?g+h+i:f>0?g+h+i:0}},top:function(b,c){if(c.at[1]!==e){var d=a(window),f=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop(),g=c.my[1]==="top"?-c.elemHeight:c.my[1]==="bottom"?c.elemHeight:0,h=c.at[1]==="top"?c.targetHeight:-c.targetHeight,i=-2*c.offset[1];b.top+=c.collisionPosition.top<0?g+h+i:f>0?g+h+i:0}}}},a.offset.setOffset||(a.offset.setOffset=function(b,c){/static/.test(a.curCSS(b,"position"))&&(b.style.position="relative");var d=a(b),e=d.offset(),f=parseInt(a.curCSS(b,"top",!0),10)||0,g=parseInt(a.curCSS(b,"left",!0),10)||0,h={top:c.top-e.top+f,left:c.left-e.left+g};"using"in c?c.using.call(b,h):d.css(h)},a.fn.offset=function(b){var c=this[0];if(!c||!c.ownerDocument)return null;if(b)return this.each(function(){a.offset.setOffset(this,b)});return h.call(this)}),function(){var b=document.getElementsByTagName("body")[0],c=document.createElement("div"),d,e,g,h,i;d=document.createElement(b?"div":"body"),g={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},b&&jQuery.extend(g,{position:"absolute",left:"-1000px",top:"-1000px"});for(var j in g)d.style[j]=g[j];d.appendChild(c),e=b||document.documentElement,e.insertBefore(d,e.firstChild),c.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",h=a(c).offset(function(a,b){return b}).offset(),d.innerHTML="",e.removeChild(d),i=h.top+h.left+(b?2e3:0),f.fractions=i>21&&i<22}()}(jQuery),function(a,b){a.widget("ui.progressbar",{options:{value:0,max:100},min:0,_create:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min,"aria-valuemax":this.options.max,"aria-valuenow":this._value()}),this.valueDiv=a("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element),this.oldValue=this._value(),this._refreshValue()},destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.valueDiv.remove(),a.Widget.prototype.destroy.apply(this,arguments)},value:function(a){if(a===b)return this._value();this._setOption("value",a);return this},_setOption:function(b,c){b==="value"&&(this.options.value=c,this._refreshValue(),this._value()===this.options.max&&this._trigger("complete")),a.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var a=this.options.value;typeof a!="number"&&(a=0);return Math.min(this.options.max,Math.max(this.min,a))},_percentage:function(){return 100*this._value()/this.options.max},_refreshValue:function(){var a=this.value(),b=this._percentage();this.oldValue!==a&&(this.oldValue=a,this._trigger("change")),this.valueDiv.toggle(a>this.min).toggleClass("ui-corner-right",a===this.options.max).width(b.toFixed(0)+"%"),this.element.attr("aria-valuenow",a)}}),a.extend(a.ui.progressbar,{version:"1.8.17"})}(jQuery),function(a,b){var c=5;a.widget("ui.slider",a.ui.mouse,{widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null},_create:function(){var b=this,d=this.options,e=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f="<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>",g=d.values&&d.values.length||1,h=[];this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget"+" ui-widget-content"+" ui-corner-all"+(d.disabled?" ui-slider-disabled ui-disabled":"")),this.range=a([]),d.range&&(d.range===!0&&(d.values||(d.values=[this._valueMin(),this._valueMin()]),d.values.length&&d.values.length!==2&&(d.values=[d.values[0],d.values[0]])),this.range=a("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(d.range==="min"||d.range==="max"?" ui-slider-range-"+d.range:"")));for(var i=e.length;i<g;i+=1)h.push(f);this.handles=e.add(a(h.join("")).appendTo(b.element)),this.handle=this.handles.eq(0),this.handles.add(this.range).filter("a").click(function(a){a.preventDefault()}).hover(function(){d.disabled||a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")}).focus(function(){d.disabled?a(this).blur():(a(".ui-slider .ui-state-focus").removeClass("ui-state-focus"),a(this).addClass("ui-state-focus"))}).blur(function(){a(this).removeClass("ui-state-focus")}),this.handles.each(function(b){a(this).data("index.ui-slider-handle",b)}),this.handles.keydown(function(d){var e=!0,f=a(this).data("index.ui-slider-handle"),g,h,i,j;if(!b.options.disabled){switch(d.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:e=!1;if(!b._keySliding){b._keySliding=!0,a(this).addClass("ui-state-active"),g=b._start(d,f);if(g===!1)return}}j=b.options.step,b.options.values&&b.options.values.length?h=i=b.values(f):h=i=b.value();switch(d.keyCode){case a.ui.keyCode.HOME:i=b._valueMin();break;case a.ui.keyCode.END:i=b._valueMax();break;case a.ui.keyCode.PAGE_UP:i=b._trimAlignValue(h+(b._valueMax()-b._valueMin())/c);break;case a.ui.keyCode.PAGE_DOWN:i=b._trimAlignValue(h-(b._valueMax()-b._valueMin())/c);break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(h===b._valueMax())return;i=b._trimAlignValue(h+j);break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(h===b._valueMin())return;i=b._trimAlignValue(h-j)}b._slide(d,f,i);return e}}).keyup(function(c){var d=a(this).data("index.ui-slider-handle");b._keySliding&&(b._keySliding=!1,b._stop(c,d),b._change(c,d),a(this).removeClass("ui-state-active"))}),this._refreshValue(),this._animateOff=!1},destroy:function(){this.handles.remove(),this.range.remove(),this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider"),this._mouseDestroy();return this},_mouseCapture:function(b){var c=this.options,d,e,f,g,h,i,j,k,l;if(c.disabled)return!1;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),d={x:b.pageX,y:b.pageY},e=this._normValueFromMouse(d),f=this._valueMax()-this._valueMin()+1,h=this,this.handles.each(function(b){var c=Math.abs(e-h.values(b));f>c&&(f=c,g=a(this),i=b)}),c.range===!0&&this.values(1)===c.min&&(i+=1,g=a(this.handles[i])),j=this._start(b,i);if(j===!1)return!1;this._mouseSliding=!0,h._handleIndex=i,g.addClass("ui-state-active").focus(),k=g.offset(),l=!a(b.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=l?{left:0,top:0}:{left:b.pageX-k.left-g.width()/2,top:b.pageY-k.top-g.height()/2-(parseInt(g.css("borderTopWidth"),10)||0)-(parseInt(g.css("borderBottomWidth"),10)||0)+(parseInt(g.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(b,i,e),this._animateOff=!0;return!0},_mouseStart:function(a){return!0},_mouseDrag:function(a){var b={x:a.pageX,y:a.pageY},c=this._normValueFromMouse(b);this._slide(a,this._handleIndex,c);return!1},_mouseStop:function(a){this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(a,this._handleIndex),this._change(a,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1;return!1},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(a){var b,c,d,e,f;this.orientation==="horizontal"?(b=this.elementSize.width,c=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(b=this.elementSize.height,c=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),d=c/b,d>1&&(d=1),d<0&&(d=0),this.orientation==="vertical"&&(d=1-d),e=this._valueMax()-this._valueMin(),f=this._valueMin()+d*e;return this._trimAlignValue(f)},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values());return this._trigger("start",a,c)},_slide:function(a,b,c){var d,e,f;this.options.values&&this.options.values.length?(d=this.values(b?0:1),this.options.values.length===2&&this.options.range===!0&&(b===0&&c>d||b===1&&c<d)&&(c=d),c!==this.values(b)&&(e=this.values(),e[b]=c,f=this._trigger("slide",a,{handle:this.handles[b],value:c,values:e}),d=this.values(b?0:1),f!==!1&&this.values(b,c,!0))):c!==this.value()&&(f=this._trigger("slide",a,{handle:this.handles[b],value:c}),f!==!1&&this.value(c))},_stop:function(a,b){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("stop",a,c)},_change:function(a,b){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("change",a,c)}},value:function(a){if(arguments.length)this.options.value=this._trimAlignValue(a),this._refreshValue(),this._change(null,0);else return this._value()},values:function(b,c){var d,e,f;if(arguments.length>1)this.options.values[b]=this._trimAlignValue(c),this._refreshValue(),this._change(null,b);else{if(!arguments.length)return this._values();if(!a.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(b):this.value();d=this.options.values,e=arguments[0];for(f=0;f<d.length;f+=1)d[f]=this._trimAlignValue(e[f]),this._change(null,f);this._refreshValue()}},_setOption:function(b,c){var d,e=0;a.isArray(this.options.values)&&(e=this.options.values.length),a.Widget.prototype._setOption.apply(this,arguments);switch(b){case"disabled":c?(this.handles.filter(".ui-state-focus").blur(),this.handles.removeClass("ui-state-hover"),this.handles.propAttr("disabled",!0),this.element.addClass("ui-disabled")):(this.handles.propAttr("disabled",!1),this.element.removeClass("ui-disabled"));break;case"orientation":this._detectOrientation(),this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation),this._refreshValue();break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":this._animateOff=!0,this._refreshValue();for(d=0;d<e;d+=1)this._change(null,d);this._animateOff=!1}},_value:function(){var a=this.options.value;a=this._trimAlignValue(a);return a},_values:function(a){var b,c,d;if(arguments.length){b=this.options.values[a],b=this._trimAlignValue(b);return b}c=this.options.values.slice();for(d=0;d<c.length;d+=1)c[d]=this._trimAlignValue(c[d]);return c},_trimAlignValue:function(a){if(a<=this._valueMin())return this._valueMin();if(a>=this._valueMax())return this._valueMax();var b=this.options.step>0?this.options.step:1,c=(a-this._valueMin())%b,d=a-c;Math.abs(c)*2>=b&&(d+=c>0?b:-b);return parseFloat(d.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var b=this.options.range,c=this.options,d=this,e=this._animateOff?!1:c.animate,f,g={},h,i,j,k;this.options.values&&this.options.values.length?this.handles.each(function(b,i){f=(d.values(b)-d._valueMin())/(d._valueMax()-d._valueMin())*100,g[d.orientation==="horizontal"?"left":"bottom"]=f+"%",a(this).stop(1,1)[e?"animate":"css"](g,c.animate),d.options.range===!0&&(d.orientation==="horizontal"?(b===0&&d.range.stop(1,1)[e?"animate":"css"]({left:f+"%"},c.animate),b===1&&d.range[e?"animate":"css"]({width:f-h+"%"},{queue:!1,duration:c.animate})):(b===0&&d.range.stop(1,1)[e?"animate":"css"]({bottom:f+"%"},c.animate),b===1&&d.range[e?"animate":"css"]({height:f-h+"%"},{queue:!1,duration:c.animate}))),h=f}):(i=this.value(),j=this._valueMin(),k=this._valueMax(),f=k!==j?(i-j)/(k-j)*100:0,g[d.orientation==="horizontal"?"left":"bottom"]=f+"%",this.handle.stop(1,1)[e?"animate":"css"](g,c.animate),b==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[e?"animate":"css"]({width:f+"%"},c.animate),b==="max"&&this.orientation==="horizontal"&&this.range[e?"animate":"css"]({width:100-f+"%"},{queue:!1,duration:c.animate}),b==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[e?"animate":"css"]({height:f+"%"},c.animate),b==="max"&&this.orientation==="vertical"&&this.range[e?"animate":"css"]({height:100-f+"%"},{queue:!1,duration:c.animate}))}}),a.extend(a.ui.slider,{version:"1.8.17"})}(jQuery),function(a,b){function f(){return++d}function e(){return++c}var c=0,d=0;a.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:!1,cookie:null,collapsible:!1,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading&#8230;</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_create:function(){this._tabify(!0)},_setOption:function(a,b){if(a=="selected"){if(this.options.collapsible&&b==this.options.selected)return;this.select(b)}else this.options[a]=b,this._tabify()},_tabId:function(a){return a.title&&a.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+e()},_sanitizeSelector:function(a){return a.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+f());return a.cookie.apply(null,[b].concat(a.makeArray(arguments)))},_ui:function(a,b){return{tab:a,panel:b,index:this.anchors.index(a)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=a(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(c){function m(b,c){b.css("display",""),!a.support.opacity&&c.opacity&&b[0].style.removeAttribute("filter")}var d=this,e=this.options,f=/^#.+/;this.list=this.element.find("ol,ul").eq(0),this.lis=a(" > li:has(a[href])",this.list),this.anchors=this.lis.map(function(){return a("a",this)[0]}),this.panels=a([]),this.anchors.each(function(b,c){var g=a(c).attr("href"),h=g.split("#")[0],i;h&&(h===location.toString().split("#")[0]||(i=a("base")[0])&&h===i.href)&&(g=c.hash,c.href=g);if(f.test(g))d.panels=d.panels.add(d.element.find(d._sanitizeSelector(g)));else if(g&&g!=="#"){a.data(c,"href.tabs",g),a.data(c,"load.tabs",g.replace(/#.*$/,""));var j=d._tabId(c);c.href="#"+j;var k=d.element.find("#"+j);k.length||(k=a(e.panelTemplate).attr("id",j).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(d.panels[b-1]||d.list),k.data("destroy.tabs",!0)),d.panels=d.panels.add(k)}else e.disabled.push(b)}),c?(this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all"),this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.lis.addClass("ui-state-default ui-corner-top"),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom"),e.selected===b?(location.hash&&this.anchors.each(function(a,b){if(b.hash==location.hash){e.selected=a;return!1}}),typeof e.selected!="number"&&e.cookie&&(e.selected=parseInt(d._cookie(),10)),typeof e.selected!="number"&&this.lis.filter(".ui-tabs-selected").length&&(e.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))),e.selected=e.selected||(this.lis.length?0:-1)):e.selected===null&&(e.selected=-1),e.selected=e.selected>=0&&this.anchors[e.selected]||e.selected<0?e.selected:0,e.disabled=a.unique(e.disabled.concat(a.map(this.lis.filter(".ui-state-disabled"),function(a,b){return d.lis.index(a)}))).sort(),a.inArray(e.selected,e.disabled)!=-1&&e.disabled.splice(a.inArray(e.selected,e.disabled),1),this.panels.addClass("ui-tabs-hide"),this.lis.removeClass("ui-tabs-selected ui-state-active"),e.selected>=0&&this.anchors.length&&(d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash)).removeClass("ui-tabs-hide"),this.lis.eq(e.selected).addClass("ui-tabs-selected ui-state-active"),d.element.queue("tabs",function(){d._trigger("show",null,d._ui(d.anchors[e.selected],d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash))[0]))}),this.load(e.selected)),a(window).bind("unload",function(){d.lis.add(d.anchors).unbind(".tabs"),d.lis=d.anchors=d.panels=null})):e.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")),this.element[e.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible"),e.cookie&&this._cookie(e.selected,e.cookie);for(var g=0,h;h=this.lis[g];g++)a(h)[a.inArray(g,e.disabled)!=-1&&!a(h).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");e.cache===!1&&this.anchors.removeData("cache.tabs"),this.lis.add(this.anchors).unbind(".tabs");if(e.event!=="mouseover"){var i=function(a,b){b.is(":not(.ui-state-disabled)")&&b.addClass("ui-state-"+a)},j=function(a,b){b.removeClass("ui-state-"+a)};this.lis.bind("mouseover.tabs",function(){i("hover",a(this))}),this.lis.bind("mouseout.tabs",function(){j("hover",a(this))}),this.anchors.bind("focus.tabs",function(){i("focus",a(this).closest("li"))}),this.anchors.bind("blur.tabs",function(){j("focus",a(this).closest("li"))})}var k,l;e.fx&&(a.isArray(e.fx)?(k=e.fx[0],l=e.fx[1]):k=l=e.fx);var n=l?function(b,c){a(b).closest("li").addClass("ui-tabs-selected ui-state-active"),c.hide().removeClass("ui-tabs-hide").animate(l,l.duration||"normal",function(){m(c,l),d._trigger("show",null,d._ui(b,c[0]))})}:function(b,c){a(b).closest("li").addClass("ui-tabs-selected ui-state-active"),c.removeClass("ui-tabs-hide"),d._trigger("show",null,d._ui(b,c[0]))},o=k?function(a,b){b.animate(k,k.duration||"normal",function(){d.lis.removeClass("ui-tabs-selected ui-state-active"),b.addClass("ui-tabs-hide"),m(b,k),d.element.dequeue("tabs")})}:function(a,b,c){d.lis.removeClass("ui-tabs-selected ui-state-active"),b.addClass("ui-tabs-hide"),d.element.dequeue("tabs")};this.anchors.bind(e.event+".tabs",function(){var b=this,c=a(b).closest("li"),f=d.panels.filter(":not(.ui-tabs-hide)"),g=d.element.find(d._sanitizeSelector(b.hash));if(c.hasClass("ui-tabs-selected")&&!e.collapsible||c.hasClass("ui-state-disabled")||c.hasClass("ui-state-processing"
)||d.panels.filter(":animated").length||d._trigger("select",null,d._ui(this,g[0]))===!1){this.blur();return!1}e.selected=d.anchors.index(this),d.abort();if(e.collapsible){if(c.hasClass("ui-tabs-selected")){e.selected=-1,e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){o(b,f)}).dequeue("tabs"),this.blur();return!1}if(!f.length){e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this)),this.blur();return!1}}e.cookie&&d._cookie(e.selected,e.cookie);if(g.length)f.length&&d.element.queue("tabs",function(){o(b,f)}),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this));else throw"jQuery UI Tabs: Mismatching fragment identifier.";a.browser.msie&&this.blur()}),this.anchors.bind("click.tabs",function(){return!1})},_getIndex:function(a){typeof a=="string"&&(a=this.anchors.index(this.anchors.filter("[href$="+a+"]")));return a},destroy:function(){var b=this.options;this.abort(),this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs"),this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.anchors.each(function(){var b=a.data(this,"href.tabs");b&&(this.href=b);var c=a(this).unbind(".tabs");a.each(["href","load","cache"],function(a,b){c.removeData(b+".tabs")})}),this.lis.unbind(".tabs").add(this.panels).each(function(){a.data(this,"destroy.tabs")?a(this).remove():a(this).removeClass(["ui-state-default","ui-corner-top","ui-tabs-selected","ui-state-active","ui-state-hover","ui-state-focus","ui-state-disabled","ui-tabs-panel","ui-widget-content","ui-corner-bottom","ui-tabs-hide"].join(" "))}),b.cookie&&this._cookie(null,b.cookie);return this},add:function(c,d,e){e===b&&(e=this.anchors.length);var f=this,g=this.options,h=a(g.tabTemplate.replace(/#\{href\}/g,c).replace(/#\{label\}/g,d)),i=c.indexOf("#")?this._tabId(a("a",h)[0]):c.replace("#","");h.addClass("ui-state-default ui-corner-top").data("destroy.tabs",!0);var j=f.element.find("#"+i);j.length||(j=a(g.panelTemplate).attr("id",i).data("destroy.tabs",!0)),j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"),e>=this.lis.length?(h.appendTo(this.list),j.appendTo(this.list[0].parentNode)):(h.insertBefore(this.lis[e]),j.insertBefore(this.panels[e])),g.disabled=a.map(g.disabled,function(a,b){return a>=e?++a:a}),this._tabify(),this.anchors.length==1&&(g.selected=0,h.addClass("ui-tabs-selected ui-state-active"),j.removeClass("ui-tabs-hide"),this.element.queue("tabs",function(){f._trigger("show",null,f._ui(f.anchors[0],f.panels[0]))}),this.load(0)),this._trigger("add",null,this._ui(this.anchors[e],this.panels[e]));return this},remove:function(b){b=this._getIndex(b);var c=this.options,d=this.lis.eq(b).remove(),e=this.panels.eq(b).remove();d.hasClass("ui-tabs-selected")&&this.anchors.length>1&&this.select(b+(b+1<this.anchors.length?1:-1)),c.disabled=a.map(a.grep(c.disabled,function(a,c){return a!=b}),function(a,c){return a>=b?--a:a}),this._tabify(),this._trigger("remove",null,this._ui(d.find("a")[0],e[0]));return this},enable:function(b){b=this._getIndex(b);var c=this.options;if(a.inArray(b,c.disabled)!=-1){this.lis.eq(b).removeClass("ui-state-disabled"),c.disabled=a.grep(c.disabled,function(a,c){return a!=b}),this._trigger("enable",null,this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(a){a=this._getIndex(a);var b=this,c=this.options;a!=c.selected&&(this.lis.eq(a).addClass("ui-state-disabled"),c.disabled.push(a),c.disabled.sort(),this._trigger("disable",null,this._ui(this.anchors[a],this.panels[a])));return this},select:function(a){a=this._getIndex(a);if(a==-1)if(this.options.collapsible&&this.options.selected!=-1)a=this.options.selected;else return this;this.anchors.eq(a).trigger(this.options.event+".tabs");return this},load:function(b){b=this._getIndex(b);var c=this,d=this.options,e=this.anchors.eq(b)[0],f=a.data(e,"load.tabs");this.abort();if(!f||this.element.queue("tabs").length!==0&&a.data(e,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(d.spinner){var g=a("span",e);g.data("label.tabs",g.html()).html(d.spinner)}this.xhr=a.ajax(a.extend({},d.ajaxOptions,{url:f,success:function(f,g){c.element.find(c._sanitizeSelector(e.hash)).html(f),c._cleanup(),d.cache&&a.data(e,"cache.tabs",!0),c._trigger("load",null,c._ui(c.anchors[b],c.panels[b]));try{d.ajaxOptions.success(f,g)}catch(h){}},error:function(a,f,g){c._cleanup(),c._trigger("load",null,c._ui(c.anchors[b],c.panels[b]));try{d.ajaxOptions.error(a,f,b,e)}catch(g){}}})),c.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]),this.panels.stop(!1,!0),this.element.queue("tabs",this.element.queue("tabs").splice(-2,2)),this.xhr&&(this.xhr.abort(),delete this.xhr),this._cleanup();return this},url:function(a,b){this.anchors.eq(a).removeData("cache.tabs").data("load.tabs",b);return this},length:function(){return this.anchors.length}}),a.extend(a.ui.tabs,{version:"1.8.17"}),a.extend(a.ui.tabs.prototype,{rotation:null,rotate:function(a,b){var c=this,d=this.options,e=c._rotate||(c._rotate=function(b){clearTimeout(c.rotation),c.rotation=setTimeout(function(){var a=d.selected;c.select(++a<c.anchors.length?a:0)},a),b&&b.stopPropagation()}),f=c._unrotate||(c._unrotate=b?function(a){t=d.selected,e()}:function(a){a.clientX&&c.rotate(null)});a?(this.element.bind("tabsshow",e),this.anchors.bind(d.event+".tabs",f),e()):(clearTimeout(c.rotation),this.element.unbind("tabsshow",e),this.anchors.unbind(d.event+".tabs",f),delete this._rotate,delete this._unrotate);return this}})}(jQuery);
$(document).ready(function(){$('.nav-drop-down').each(function(){var toggle=$(this).parent().find('> a');var menu=$(this).parent().find('ul');var timeoutHide,timeoutShow;var blinkrate=100;menu.hide();toggle.hover(function(){clearTimeout(timeoutHide);var this_elem=$(this);timeoutShow=setTimeout(function(){this_elem.parent().find('ul').slideDown('fast');},150);},function(){clearTimeout(timeoutShow);var this_elem=$(this);timeoutHide=setTimeout(function(){this_elem.parent().find('ul').slideUp();},400);});menu.hover(function(){clearTimeout(timeoutHide);},function(){var this_elem=$(this);timeoutHide=setTimeout(function(){this_elem.slideUp();},400);});toggle.click(function(){if($(this).attr('href')==='#'){menu.find('a').animate({color:"white"},blinkrate).animate({color:"#565656"},blinkrate).animate({color:"white"},blinkrate).animate({color:"#565656"},blinkrate);return false;}});});if($('#featured').length){$("#featured").tabs({fx:{opacity:"toggle"}}).tabs("rotate",0,true);}
if($('.disabled a').length){$('.disabled a').click(function(){return false;});}
if($('.facet-remove').length){$('.facet-remove').hover(function(){$(this).parent().find('span').css('text-decoration','line-through');},function(){$(this).parent().find('span').css('text-decoration','none');});}
if($('.col-side .more-show').length){$('.col-side .more-show').each(function(){var moreShow=$(this);moreShow.hide();var toggle=$("<div class='more-show-toggle'><a href='#'>more...</a></div>").click(function(){var anchor=$(this).find('a');if(anchor.text()=='more...'){anchor.text('less...')}else{anchor.text('more...')}
moreShow.toggle();return false;});moreShow.before(toggle);});}
if($('#maps-services-wms')){$('.wms-hide-show').hide();$('.wms-toggle').click(function(){$(this).parent().next('.wms-hide-show').slideToggle('fast').siblings('ul:visible').slideUp('fast');window.location.hash=$(this).attr('href');return false;});}
if($('#tabs').length){$("#tabs").tabs({select:function(event,ui){var el=$(ui.tab.hash);el.attr('id',ui.tab.hash+"-magic");window.location.hash=ui.tab.hash;el.attr('id',ui.tab.hash.split('#')[1]);}});}
if($('.map-lightbox').length){$('.map-lightbox').click(function(){if($('#modal-window').length){$('#modal-window').remove();}
var imgElem=$('<img/>',{src:$(this).attr('href')});var modalWindowClose=$('<a>',{id:'modal-window-close',href:'#modal-close',click:function(){SEDAC.ui.blinds(false);$('#modal-window').fadeOut('fast',function(){$(this).remove();});return false;}}).text('close (x)');var modalWindowElem=$('<div>',{id:'modal-window',css:{position:'fixed',top:0,left:0}}).append(modalWindowClose);var centerModalWindow=function(){modalWindowElem.append(imgElem);SEDAC.ui.blinds(true);modalWindowElem.appendTo($('body')).fadeIn('fast',function(){modalWindowElem.position({my:'center',at:'center',of:window});});};imgElem.load(centerModalWindow);$(window).resize(centerModalWindow);return false;});}
if($('.gist-help').length){$('.gist-help').effect('shake');}
if($('.js-submit').length){$('.js-submit').change(function(){$(this).parents('form').submit();});}});
if(typeof SEDAC=="undefined"||!SEDAC){var SEDAC={};SEDAC.ui={};}else if(!SEDAC.ui){SEDAC.ui={};}
SEDAC.ui.blinds=function(bool){if(typeof bool==='boolean'){if(bool){$('<div>',{id:'modal-window-blinds',click:function(){if($('#modal-window').length){$('#modal-window').fadeOut('fast',function(){$(this).remove();});}else if($('#gist-windowed').length){$('#gist-windowed').fadeOut('fast');if($('#gist-container').hasClass('fullscreen')){SEDAC.gistUtils.fullscreen(false);$('#gist-client-tgl-fullscreen').text('fullscreen');}
SEDAC.gistUtils.destroy($('#'+CIESIN.ol.gistClient.gist_id));$('#gist-windowed').hide();}
SEDAC.ui.blinds(false);return false;}}).hide().appendTo($('body')).fadeIn('fast');}else{if($('#modal-window-blinds').length){$('#modal-window-blinds').fadeOut('fast',function(){$(this).remove();});}}}};/*

  OpenLayers.js -- OpenLayers Map Viewer Library

  Copyright 2005-2011 OpenLayers Contributors, released under the FreeBSD
  license. Please see http://svn.openlayers.org/trunk/openlayers/license.txt
  for the full text of the license.

  Includes compressed code under the following licenses:

  (For uncompressed versions of the code used please see the
  OpenLayers SVN repository: <http://openlayers.org/>)

*/

/* Contains portions of Prototype.js:
 *
 * Prototype JavaScript framework, version 1.4.0
 *  (c) 2005 Sam Stephenson <sam@conio.net>
 *
 *  Prototype is freely distributable under the terms of an MIT-style license.
 *  For details, see the Prototype web site: http://prototype.conio.net/
 *
 *--------------------------------------------------------------------------*/

/**  
*  
*  Contains portions of Rico <http://openrico.org/>
* 
*  Copyright 2005 Sabre Airline Solutions  
*  
*  Licensed under the Apache License, Version 2.0 (the "License"); you
*  may not use this file except in compliance with the License. You
*  may obtain a copy of the License at
*  
*         http://www.apache.org/licenses/LICENSE-2.0  
*  
*  Unless required by applicable law or agreed to in writing, software
*  distributed under the License is distributed on an "AS IS" BASIS,
*  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
*  implied. See the License for the specific language governing
*  permissions and limitations under the License. 
*
**/

/**
 * Contains XMLHttpRequest.js <http://code.google.com/p/xmlhttprequest/>
 * Copyright 2007 Sergey Ilinsky (http://www.ilinsky.com)
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * http://www.apache.org/licenses/LICENSE-2.0
 */

/**
 * Contains portions of Gears <http://code.google.com/apis/gears/>
 *
 * Copyright 2007, Google Inc.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 *  1. Redistributions of source code must retain the above copyright notice,
 *     this list of conditions and the following disclaimer.
 *  2. Redistributions in binary form must reproduce the above copyright notice,
 *     this list of conditions and the following disclaimer in the documentation
 *     and/or other materials provided with the distribution.
 *  3. Neither the name of Google Inc. nor the names of its contributors may be
 *     used to endorse or promote products derived from this software without
 *     specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
 * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * Sets up google.gears.*, which is *the only* supported way to access Gears.
 *
 * Circumvent this file at your own risk!
 *
 * In the future, Gears may automatically define google.gears.* without this
 * file. Gears may use these objects to transparently fix bugs and compatibility
 * issues. Applications that use the code below will continue to work seamlessly
 * when that happens.
 */

/**
 * OpenLayers.Util.pagePosition is based on Yahoo's getXY method, which is
 * Copyright (c) 2006, Yahoo! Inc.
 * All rights reserved.
 * 
 * Redistribution and use of this software in source and binary forms, with or
 * without modification, are permitted provided that the following conditions
 * are met:
 * 
 * * Redistributions of source code must retain the above copyright notice,
 *   this list of conditions and the following disclaimer.
 * 
 * * Redistributions in binary form must reproduce the above copyright notice,
 *   this list of conditions and the following disclaimer in the documentation
 *   and/or other materials provided with the distribution.
 * 
 * * Neither the name of Yahoo! Inc. nor the names of its contributors may be
 *   used to endorse or promote products derived from this software without
 *   specific prior written permission of Yahoo! Inc.
 * 
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
 * POSSIBILITY OF SUCH DAMAGE.
 */var OpenLayers={VERSION_NUMBER:"Release 2.11",singleFile:true,_getScriptLocation:(function(){var r=new RegExp("(^|(.*?\\/))(OpenLayers\.js)(\\?|$)"),s=document.getElementsByTagName('script'),src,m,l="";for(var i=0,len=s.length;i<len;i++){src=s[i].getAttribute('src');if(src){var m=src.match(r);if(m){l=m[1];break;}}}
return(function(){return l;});})()};(function(){var singleFile=(typeof OpenLayers=="object"&&OpenLayers.singleFile);var scriptName=(!singleFile)?"lib/OpenLayers.js":"OpenLayers.js";var jsFiles=window.OpenLayers;window.OpenLayers={_getScriptLocation:(function(){var r=new RegExp("(^|(.*?\\/))("+scriptName+")(\\?|$)"),s=document.getElementsByTagName('script'),src,m,l="";for(var i=0,len=s.length;i<len;i++){src=s[i].getAttribute('src');if(src){var m=src.match(r);if(m){l=m[1];break;}}}
return(function(){return l;});})()};if(!singleFile){if(!jsFiles){jsFiles=["OpenLayers/BaseTypes/Class.js","OpenLayers/Util.js","OpenLayers/BaseTypes.js","OpenLayers/BaseTypes/Bounds.js","OpenLayers/BaseTypes/Date.js","OpenLayers/BaseTypes/Element.js","OpenLayers/BaseTypes/LonLat.js","OpenLayers/BaseTypes/Pixel.js","OpenLayers/BaseTypes/Size.js","OpenLayers/Console.js","OpenLayers/Tween.js","OpenLayers/Kinetic.js","Rico/Corner.js","Rico/Color.js","OpenLayers/Ajax.js","OpenLayers/Events.js","OpenLayers/Request.js","OpenLayers/Request/XMLHttpRequest.js","OpenLayers/Projection.js","OpenLayers/Map.js","OpenLayers/Layer.js","OpenLayers/Icon.js","OpenLayers/Marker.js","OpenLayers/Marker/Box.js","OpenLayers/Popup.js","OpenLayers/Tile.js","OpenLayers/Tile/Image.js","OpenLayers/Tile/Image/IFrame.js","OpenLayers/Tile/WFS.js","OpenLayers/Layer/Image.js","OpenLayers/Layer/SphericalMercator.js","OpenLayers/Layer/EventPane.js","OpenLayers/Layer/FixedZoomLevels.js","OpenLayers/Layer/Google.js","OpenLayers/Layer/Google/v3.js","OpenLayers/Layer/VirtualEarth.js","OpenLayers/Layer/Yahoo.js","OpenLayers/Layer/HTTPRequest.js","OpenLayers/Layer/Grid.js","OpenLayers/Layer/MapGuide.js","OpenLayers/Layer/MapServer.js","OpenLayers/Layer/MapServer/Untiled.js","OpenLayers/Layer/KaMap.js","OpenLayers/Layer/KaMapCache.js","OpenLayers/Layer/MultiMap.js","OpenLayers/Layer/Markers.js","OpenLayers/Layer/Text.js","OpenLayers/Layer/WorldWind.js","OpenLayers/Layer/ArcGIS93Rest.js","OpenLayers/Layer/WMS.js","OpenLayers/Layer/WMS/Untiled.js","OpenLayers/Layer/WMS/Post.js","OpenLayers/Layer/WMTS.js","OpenLayers/Layer/ArcIMS.js","OpenLayers/Layer/GeoRSS.js","OpenLayers/Layer/Boxes.js","OpenLayers/Layer/XYZ.js","OpenLayers/Layer/Bing.js","OpenLayers/Layer/TMS.js","OpenLayers/Layer/TileCache.js","OpenLayers/Layer/Zoomify.js","OpenLayers/Layer/ArcGISCache.js","OpenLayers/Popup/Anchored.js","OpenLayers/Popup/AnchoredBubble.js","OpenLayers/Popup/Framed.js","OpenLayers/Popup/FramedCloud.js","OpenLayers/Feature.js","OpenLayers/Feature/Vector.js","OpenLayers/Feature/WFS.js","OpenLayers/Handler.js","OpenLayers/Handler/Click.js","OpenLayers/Handler/Hover.js","OpenLayers/Handler/Point.js","OpenLayers/Handler/Path.js","OpenLayers/Handler/Polygon.js","OpenLayers/Handler/Feature.js","OpenLayers/Handler/Drag.js","OpenLayers/Handler/Pinch.js","OpenLayers/Handler/RegularPolygon.js","OpenLayers/Handler/Box.js","OpenLayers/Handler/MouseWheel.js","OpenLayers/Handler/Keyboard.js","OpenLayers/Control.js","OpenLayers/Control/Attribution.js","OpenLayers/Control/Button.js","OpenLayers/Control/ZoomBox.js","OpenLayers/Control/ZoomToMaxExtent.js","OpenLayers/Control/DragPan.js","OpenLayers/Control/Navigation.js","OpenLayers/Control/PinchZoom.js","OpenLayers/Control/TouchNavigation.js","OpenLayers/Control/MouseDefaults.js","OpenLayers/Control/MousePosition.js","OpenLayers/Control/OverviewMap.js","OpenLayers/Control/KeyboardDefaults.js","OpenLayers/Control/PanZoom.js","OpenLayers/Control/PanZoomBar.js","OpenLayers/Control/ArgParser.js","OpenLayers/Control/Permalink.js","OpenLayers/Control/Scale.js","OpenLayers/Control/ScaleLine.js","OpenLayers/Control/Snapping.js","OpenLayers/Control/Split.js","OpenLayers/Control/LayerSwitcher.js","OpenLayers/Control/DrawFeature.js","OpenLayers/Control/DragFeature.js","OpenLayers/Control/ModifyFeature.js","OpenLayers/Control/Panel.js","OpenLayers/Control/SelectFeature.js","OpenLayers/Control/NavigationHistory.js","OpenLayers/Control/Measure.js","OpenLayers/Control/WMSGetFeatureInfo.js","OpenLayers/Control/WMTSGetFeatureInfo.js","OpenLayers/Control/Graticule.js","OpenLayers/Control/TransformFeature.js","OpenLayers/Control/SLDSelect.js","OpenLayers/Geometry.js","OpenLayers/Geometry/Rectangle.js","OpenLayers/Geometry/Collection.js","OpenLayers/Geometry/Point.js","OpenLayers/Geometry/MultiPoint.js","OpenLayers/Geometry/Curve.js","OpenLayers/Geometry/LineString.js","OpenLayers/Geometry/LinearRing.js","OpenLayers/Geometry/Polygon.js","OpenLayers/Geometry/MultiLineString.js","OpenLayers/Geometry/MultiPolygon.js","OpenLayers/Geometry/Surface.js","OpenLayers/Renderer.js","OpenLayers/Renderer/Elements.js","OpenLayers/Renderer/NG.js","OpenLayers/Renderer/SVG.js","OpenLayers/Renderer/SVG2.js","OpenLayers/Renderer/Canvas.js","OpenLayers/Renderer/VML.js","OpenLayers/Layer/Vector.js","OpenLayers/Layer/PointGrid.js","OpenLayers/Layer/Vector/RootContainer.js","OpenLayers/Strategy.js","OpenLayers/Strategy/Filter.js","OpenLayers/Strategy/Fixed.js","OpenLayers/Strategy/Cluster.js","OpenLayers/Strategy/Paging.js","OpenLayers/Strategy/BBOX.js","OpenLayers/Strategy/Save.js","OpenLayers/Strategy/Refresh.js","OpenLayers/Filter.js","OpenLayers/Filter/FeatureId.js","OpenLayers/Filter/Logical.js","OpenLayers/Filter/Comparison.js","OpenLayers/Filter/Spatial.js","OpenLayers/Filter/Function.js","OpenLayers/Protocol.js","OpenLayers/Protocol/HTTP.js","OpenLayers/Protocol/SQL.js","OpenLayers/Protocol/SQL/Gears.js","OpenLayers/Protocol/WFS.js","OpenLayers/Protocol/WFS/v1.js","OpenLayers/Protocol/WFS/v1_0_0.js","OpenLayers/Protocol/WFS/v1_1_0.js","OpenLayers/Protocol/Script.js","OpenLayers/Protocol/SOS.js","OpenLayers/Protocol/SOS/v1_0_0.js","OpenLayers/Layer/PointTrack.js","OpenLayers/Layer/GML.js","OpenLayers/Style.js","OpenLayers/Style2.js","OpenLayers/StyleMap.js","OpenLayers/Rule.js","OpenLayers/Format.js","OpenLayers/Format/QueryStringFilter.js","OpenLayers/Format/XML.js","OpenLayers/Format/XML/VersionedOGC.js","OpenLayers/Format/Context.js","OpenLayers/Format/ArcXML.js","OpenLayers/Format/ArcXML/Features.js","OpenLayers/Format/GML.js","OpenLayers/Format/GML/Base.js","OpenLayers/Format/GML/v2.js","OpenLayers/Format/GML/v3.js","OpenLayers/Format/Atom.js","OpenLayers/Format/KML.js","OpenLayers/Format/GeoRSS.js","OpenLayers/Format/WFS.js","OpenLayers/Format/WFSCapabilities.js","OpenLayers/Format/WFSCapabilities/v1.js","OpenLayers/Format/WFSCapabilities/v1_0_0.js","OpenLayers/Format/WFSCapabilities/v1_1_0.js","OpenLayers/Format/WFSDescribeFeatureType.js","OpenLayers/Format/WMSDescribeLayer.js","OpenLayers/Format/WMSDescribeLayer/v1_1.js","OpenLayers/Format/WKT.js","OpenLayers/Format/CQL.js","OpenLayers/Format/OSM.js","OpenLayers/Format/GPX.js","OpenLayers/Format/Filter.js","OpenLayers/Format/Filter/v1.js","OpenLayers/Format/Filter/v1_0_0.js","OpenLayers/Format/Filter/v1_1_0.js","OpenLayers/Format/SLD.js","OpenLayers/Format/SLD/v1.js","OpenLayers/Format/SLD/v1_0_0.js","OpenLayers/Format/OWSCommon.js","OpenLayers/Format/OWSCommon/v1.js","OpenLayers/Format/OWSCommon/v1_0_0.js","OpenLayers/Format/OWSCommon/v1_1_0.js","OpenLayers/Format/CSWGetDomain.js","OpenLayers/Format/CSWGetDomain/v2_0_2.js","OpenLayers/Format/CSWGetRecords.js","OpenLayers/Format/CSWGetRecords/v2_0_2.js","OpenLayers/Format/WFST.js","OpenLayers/Format/WFST/v1.js","OpenLayers/Format/WFST/v1_0_0.js","OpenLayers/Format/WFST/v1_1_0.js","OpenLayers/Format/Text.js","OpenLayers/Format/JSON.js","OpenLayers/Format/GeoJSON.js","OpenLayers/Format/WMC.js","OpenLayers/Format/WMC/v1.js","OpenLayers/Format/WMC/v1_0_0.js","OpenLayers/Format/WMC/v1_1_0.js","OpenLayers/Format/WCSGetCoverage.js","OpenLayers/Format/WMSCapabilities.js","OpenLayers/Format/WMSCapabilities/v1.js","OpenLayers/Format/WMSCapabilities/v1_1.js","OpenLayers/Format/WMSCapabilities/v1_1_0.js","OpenLayers/Format/WMSCapabilities/v1_1_1.js","OpenLayers/Format/WMSCapabilities/v1_3.js","OpenLayers/Format/WMSCapabilities/v1_3_0.js","OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js","OpenLayers/Format/WMSGetFeatureInfo.js","OpenLayers/Format/SOSCapabilities.js","OpenLayers/Format/SOSCapabilities/v1_0_0.js","OpenLayers/Format/SOSGetFeatureOfInterest.js","OpenLayers/Format/SOSGetObservation.js","OpenLayers/Format/OWSContext.js","OpenLayers/Format/OWSContext/v0_3_1.js","OpenLayers/Format/WMTSCapabilities.js","OpenLayers/Format/WMTSCapabilities/v1_0_0.js","OpenLayers/Format/WPSCapabilities.js","OpenLayers/Format/WPSCapabilities/v1_0_0.js","OpenLayers/Format/WPSDescribeProcess.js","OpenLayers/Format/WPSExecute.js","OpenLayers/Format/XLS.js","OpenLayers/Format/XLS/v1.js","OpenLayers/Format/XLS/v1_1_0.js","OpenLayers/Format/OGCExceptionReport.js","OpenLayers/Layer/WFS.js","OpenLayers/Control/GetFeature.js","OpenLayers/Control/MouseToolbar.js","OpenLayers/Control/NavToolbar.js","OpenLayers/Control/PanPanel.js","OpenLayers/Control/Pan.js","OpenLayers/Control/ZoomIn.js","OpenLayers/Control/ZoomOut.js","OpenLayers/Control/ZoomPanel.js","OpenLayers/Control/EditingToolbar.js","OpenLayers/Control/Geolocate.js","OpenLayers/Symbolizer.js","OpenLayers/Symbolizer/Point.js","OpenLayers/Symbolizer/Line.js","OpenLayers/Symbolizer/Polygon.js","OpenLayers/Symbolizer/Text.js","OpenLayers/Symbolizer/Raster.js","OpenLayers/Lang.js","OpenLayers/Lang/en.js"];}
var scriptTags=new Array(jsFiles.length);var host=OpenLayers._getScriptLocation()+"lib/";for(var i=0,len=jsFiles.length;i<len;i++){scriptTags[i]="<script src='"+host+jsFiles[i]+"'></script>";}
if(scriptTags.length>0){document.write(scriptTags.join(""));}}})();OpenLayers.VERSION_NUMBER="Release 2.11";OpenLayers.String={startsWith:function(str,sub){return(str.indexOf(sub)==0);},contains:function(str,sub){return(str.indexOf(sub)!=-1);},trim:function(str){return str.replace(/^\s\s*/,'').replace(/\s\s*$/,'');},camelize:function(str){var oStringList=str.split('-');var camelizedString=oStringList[0];for(var i=1,len=oStringList.length;i<len;i++){var s=oStringList[i];camelizedString+=s.charAt(0).toUpperCase()+s.substring(1);}
return camelizedString;},format:function(template,context,args){if(!context){context=window;}
var replacer=function(str,match){var replacement;var subs=match.split(/\.+/);for(var i=0;i<subs.length;i++){if(i==0){replacement=context;}
replacement=replacement[subs[i]];}
if(typeof replacement=="function"){replacement=args?replacement.apply(null,args):replacement();}
if(typeof replacement=='undefined'){return'undefined';}else{return replacement;}};return template.replace(OpenLayers.String.tokenRegEx,replacer);},tokenRegEx:/\$\{([\w.]+?)\}/g,numberRegEx:/^([+-]?)(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?$/,isNumeric:function(value){return OpenLayers.String.numberRegEx.test(value);},numericIf:function(value){return OpenLayers.String.isNumeric(value)?parseFloat(value):value;}};if(!String.prototype.startsWith){String.prototype.startsWith=function(sStart){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'OpenLayers.String.startsWith'}));return OpenLayers.String.startsWith(this,sStart);};}
if(!String.prototype.contains){String.prototype.contains=function(str){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'OpenLayers.String.contains'}));return OpenLayers.String.contains(this,str);};}
if(!String.prototype.trim){String.prototype.trim=function(){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'OpenLayers.String.trim'}));return OpenLayers.String.trim(this);};}
if(!String.prototype.camelize){String.prototype.camelize=function(){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'OpenLayers.String.camelize'}));return OpenLayers.String.camelize(this);};}
OpenLayers.Number={decimalSeparator:".",thousandsSeparator:",",limitSigDigs:function(num,sig){var fig=0;if(sig>0){fig=parseFloat(num.toPrecision(sig));}
return fig;},format:function(num,dec,tsep,dsep){dec=(typeof dec!="undefined")?dec:0;tsep=(typeof tsep!="undefined")?tsep:OpenLayers.Number.thousandsSeparator;dsep=(typeof dsep!="undefined")?dsep:OpenLayers.Number.decimalSeparator;if(dec!=null){num=parseFloat(num.toFixed(dec));}
var parts=num.toString().split(".");if(parts.length==1&&dec==null){dec=0;}
var integer=parts[0];if(tsep){var thousands=/(-?[0-9]+)([0-9]{3})/;while(thousands.test(integer)){integer=integer.replace(thousands,"$1"+tsep+"$2");}}
var str;if(dec==0){str=integer;}else{var rem=parts.length>1?parts[1]:"0";if(dec!=null){rem=rem+new Array(dec-rem.length+1).join("0");}
str=integer+dsep+rem;}
return str;}};if(!Number.prototype.limitSigDigs){Number.prototype.limitSigDigs=function(sig){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'OpenLayers.Number.limitSigDigs'}));return OpenLayers.Number.limitSigDigs(this,sig);};}
OpenLayers.Function={bind:function(func,object){var args=Array.prototype.slice.apply(arguments,[2]);return function(){var newArgs=args.concat(Array.prototype.slice.apply(arguments,[0]));return func.apply(object,newArgs);};},bindAsEventListener:function(func,object){return function(event){return func.call(object,event||window.event);};},False:function(){return false;},True:function(){return true;},Void:function(){}};if(!Function.prototype.bind){Function.prototype.bind=function(){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'OpenLayers.Function.bind'}));Array.prototype.unshift.apply(arguments,[this]);return OpenLayers.Function.bind.apply(null,arguments);};}
if(!Function.prototype.bindAsEventListener){Function.prototype.bindAsEventListener=function(object){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'OpenLayers.Function.bindAsEventListener'}));return OpenLayers.Function.bindAsEventListener(this,object);};}
OpenLayers.Array={filter:function(array,callback,caller){var selected=[];if(Array.prototype.filter){selected=array.filter(callback,caller);}else{var len=array.length;if(typeof callback!="function"){throw new TypeError();}
for(var i=0;i<len;i++){if(i in array){var val=array[i];if(callback.call(caller,val,i,array)){selected.push(val);}}}}
return selected;}};OpenLayers.Class=function(){var len=arguments.length;var P=arguments[0];var F=arguments[len-1];var C=typeof F.initialize=="function"?F.initialize:function(){P.prototype.initialize.apply(this,arguments);};if(len>1){var newArgs=[C,P].concat(Array.prototype.slice.call(arguments).slice(1,len-1),F);OpenLayers.inherit.apply(null,newArgs);}else{C.prototype=F;}
return C;};OpenLayers.Class.isPrototype=function(){};OpenLayers.Class.create=function(){return function(){if(arguments&&arguments[0]!=OpenLayers.Class.isPrototype){this.initialize.apply(this,arguments);}};};OpenLayers.Class.inherit=function(P){var C=function(){P.call(this);};var newArgs=[C].concat(Array.prototype.slice.call(arguments));OpenLayers.inherit.apply(null,newArgs);return C.prototype;};OpenLayers.inherit=function(C,P){var F=function(){};F.prototype=P.prototype;C.prototype=new F;var i,l,o;for(i=2,l=arguments.length;i<l;i++){o=arguments[i];if(typeof o==="function"){o=o.prototype;}
OpenLayers.Util.extend(C.prototype,o);}};OpenLayers.Util=OpenLayers.Util||{};OpenLayers.Util.extend=function(destination,source){destination=destination||{};if(source){for(var property in source){var value=source[property];if(value!==undefined){destination[property]=value;}}
var sourceIsEvt=typeof window.Event=="function"&&source instanceof window.Event;if(!sourceIsEvt&&source.hasOwnProperty&&source.hasOwnProperty("toString")){destination.toString=source.toString;}}
return destination;};OpenLayers.Util=OpenLayers.Util||{};OpenLayers.Util.getElement=function(){var elements=[];for(var i=0,len=arguments.length;i<len;i++){var element=arguments[i];if(typeof element=='string'){element=document.getElementById(element);}
if(arguments.length==1){return element;}
elements.push(element);}
return elements;};OpenLayers.Util.isElement=function(o){return!!(o&&o.nodeType===1);};OpenLayers.Util.isArray=function(a){return(Object.prototype.toString.call(a)==='[object Array]');};if(typeof window.$==="undefined"){window.$=OpenLayers.Util.getElement;}
OpenLayers.Util.removeItem=function(array,item){for(var i=array.length-1;i>=0;i--){if(array[i]==item){array.splice(i,1);}}
return array;};OpenLayers.Util.clearArray=function(array){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'array = []'}));array.length=0;};OpenLayers.Util.indexOf=function(array,obj){if(typeof array.indexOf=="function"){return array.indexOf(obj);}else{for(var i=0,len=array.length;i<len;i++){if(array[i]==obj){return i;}}
return-1;}};OpenLayers.Util.modifyDOMElement=function(element,id,px,sz,position,border,overflow,opacity){if(id){element.id=id;}
if(px){element.style.left=px.x+"px";element.style.top=px.y+"px";}
if(sz){element.style.width=sz.w+"px";element.style.height=sz.h+"px";}
if(position){element.style.position=position;}
if(border){element.style.border=border;}
if(overflow){element.style.overflow=overflow;}
if(parseFloat(opacity)>=0.0&&parseFloat(opacity)<1.0){element.style.filter='alpha(opacity='+(opacity*100)+')';element.style.opacity=opacity;}else if(parseFloat(opacity)==1.0){element.style.filter='';element.style.opacity='';}};OpenLayers.Util.createDiv=function(id,px,sz,imgURL,position,border,overflow,opacity){var dom=document.createElement('div');if(imgURL){dom.style.backgroundImage='url('+imgURL+')';}
if(!id){id=OpenLayers.Util.createUniqueID("OpenLayersDiv");}
if(!position){position="absolute";}
OpenLayers.Util.modifyDOMElement(dom,id,px,sz,position,border,overflow,opacity);return dom;};OpenLayers.Util.createImage=function(id,px,sz,imgURL,position,border,opacity,delayDisplay){var image=document.createElement("img");if(!id){id=OpenLayers.Util.createUniqueID("OpenLayersDiv");}
if(!position){position="relative";}
OpenLayers.Util.modifyDOMElement(image,id,px,sz,position,border,null,opacity);if(delayDisplay){image.style.display="none";OpenLayers.Event.observe(image,"load",OpenLayers.Function.bind(OpenLayers.Util.onImageLoad,image));OpenLayers.Event.observe(image,"error",OpenLayers.Function.bind(OpenLayers.Util.onImageLoadError,image));}
image.style.alt=id;image.galleryImg="no";if(imgURL){image.src=imgURL;}
return image;};OpenLayers.Util.setOpacity=function(element,opacity){OpenLayers.Util.modifyDOMElement(element,null,null,null,null,null,null,opacity);};OpenLayers.Util.onImageLoad=function(){if(!this.viewRequestID||(this.map&&this.viewRequestID==this.map.viewRequestID)){this.style.display="";}
OpenLayers.Element.removeClass(this,"olImageLoadError");};OpenLayers.IMAGE_RELOAD_ATTEMPTS=0;OpenLayers.Util.onImageLoadError=function(){this._attempts=(this._attempts)?(this._attempts+1):1;if(this._attempts<=OpenLayers.IMAGE_RELOAD_ATTEMPTS){var urls=this.urls;if(urls&&OpenLayers.Util.isArray(urls)&&urls.length>1){var src=this.src.toString();var current_url,k;for(k=0;current_url=urls[k];k++){if(src.indexOf(current_url)!=-1){break;}}
var guess=Math.floor(urls.length*Math.random());var new_url=urls[guess];k=0;while(new_url==current_url&&k++<4){guess=Math.floor(urls.length*Math.random());new_url=urls[guess];}
this.src=src.replace(current_url,new_url);}else{this.src=this.src;}}else{OpenLayers.Element.addClass(this,"olImageLoadError");}
this.style.display="";};OpenLayers.Util.alphaHackNeeded=null;OpenLayers.Util.alphaHack=function(){if(OpenLayers.Util.alphaHackNeeded==null){var arVersion=navigator.appVersion.split("MSIE");var version=parseFloat(arVersion[1]);var filter=false;try{filter=!!(document.body.filters);}catch(e){}
OpenLayers.Util.alphaHackNeeded=(filter&&(version>=5.5)&&(version<7));}
return OpenLayers.Util.alphaHackNeeded;};OpenLayers.Util.modifyAlphaImageDiv=function(div,id,px,sz,imgURL,position,border,sizing,opacity){OpenLayers.Util.modifyDOMElement(div,id,px,sz,position,null,null,opacity);var img=div.childNodes[0];if(imgURL){img.src=imgURL;}
OpenLayers.Util.modifyDOMElement(img,div.id+"_innerImage",null,sz,"relative",border);if(OpenLayers.Util.alphaHack()){if(div.style.display!="none"){div.style.display="inline-block";}
if(sizing==null){sizing="scale";}
div.style.filter="progid:DXImageTransform.Microsoft"+".AlphaImageLoader(src='"+img.src+"', "+"sizingMethod='"+sizing+"')";if(parseFloat(div.style.opacity)>=0.0&&parseFloat(div.style.opacity)<1.0){div.style.filter+=" alpha(opacity="+div.style.opacity*100+")";}
img.style.filter="alpha(opacity=0)";}};OpenLayers.Util.createAlphaImageDiv=function(id,px,sz,imgURL,position,border,sizing,opacity,delayDisplay){var div=OpenLayers.Util.createDiv();var img=OpenLayers.Util.createImage(null,null,null,null,null,null,null,false);div.appendChild(img);if(delayDisplay){img.style.display="none";OpenLayers.Event.observe(img,"load",OpenLayers.Function.bind(OpenLayers.Util.onImageLoad,div));OpenLayers.Event.observe(img,"error",OpenLayers.Function.bind(OpenLayers.Util.onImageLoadError,div));}
OpenLayers.Util.modifyAlphaImageDiv(div,id,px,sz,imgURL,position,border,sizing,opacity);return div;};OpenLayers.Util.upperCaseObject=function(object){var uObject={};for(var key in object){uObject[key.toUpperCase()]=object[key];}
return uObject;};OpenLayers.Util.applyDefaults=function(to,from){to=to||{};var fromIsEvt=typeof window.Event=="function"&&from instanceof window.Event;for(var key in from){if(to[key]===undefined||(!fromIsEvt&&from.hasOwnProperty&&from.hasOwnProperty(key)&&!to.hasOwnProperty(key))){to[key]=from[key];}}
if(!fromIsEvt&&from&&from.hasOwnProperty&&from.hasOwnProperty('toString')&&!to.hasOwnProperty('toString')){to.toString=from.toString;}
return to;};OpenLayers.Util.getParameterString=function(params){var paramsArray=[];for(var key in params){var value=params[key];if((value!=null)&&(typeof value!='function')){var encodedValue;if(typeof value=='object'&&value.constructor==Array){var encodedItemArray=[];var item;for(var itemIndex=0,len=value.length;itemIndex<len;itemIndex++){item=value[itemIndex];encodedItemArray.push(encodeURIComponent((item===null||item===undefined)?"":item));}
encodedValue=encodedItemArray.join(",");}
else{encodedValue=encodeURIComponent(value);}
paramsArray.push(encodeURIComponent(key)+"="+encodedValue);}}
return paramsArray.join("&");};OpenLayers.Util.urlAppend=function(url,paramStr){var newUrl=url;if(paramStr){var parts=(url+" ").split(/[?&]/);newUrl+=(parts.pop()===" "?paramStr:parts.length?"&"+paramStr:"?"+paramStr);}
return newUrl;};OpenLayers.ImgPath='';OpenLayers.Util.getImagesLocation=function(){return OpenLayers.ImgPath||(OpenLayers._getScriptLocation()+"img/");};OpenLayers.Util.Try=function(){var returnValue=null;for(var i=0,len=arguments.length;i<len;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}
return returnValue;};OpenLayers.Util.getXmlNodeValue=function(node){var val=null;OpenLayers.Util.Try(function(){val=node.text;if(!val){val=node.textContent;}
if(!val){val=node.firstChild.nodeValue;}},function(){val=node.textContent;});return val;};OpenLayers.Util.mouseLeft=function(evt,div){var target=(evt.relatedTarget)?evt.relatedTarget:evt.toElement;while(target!=div&&target!=null){target=target.parentNode;}
return(target!=div);};OpenLayers.Util.DEFAULT_PRECISION=14;OpenLayers.Util.toFloat=function(number,precision){if(precision==null){precision=OpenLayers.Util.DEFAULT_PRECISION;}
if(typeof number!=="number"){number=parseFloat(number);}
return precision===0?number:parseFloat(number.toPrecision(precision));};OpenLayers.Util.rad=function(x){return x*Math.PI/180;};OpenLayers.Util.deg=function(x){return x*180/Math.PI;};OpenLayers.Util.VincentyConstants={a:6378137,b:6356752.3142,f:1/298.257223563};OpenLayers.Util.distVincenty=function(p1,p2){var ct=OpenLayers.Util.VincentyConstants;var a=ct.a,b=ct.b,f=ct.f;var L=OpenLayers.Util.rad(p2.lon-p1.lon);var U1=Math.atan((1-f)*Math.tan(OpenLayers.Util.rad(p1.lat)));var U2=Math.atan((1-f)*Math.tan(OpenLayers.Util.rad(p2.lat)));var sinU1=Math.sin(U1),cosU1=Math.cos(U1);var sinU2=Math.sin(U2),cosU2=Math.cos(U2);var lambda=L,lambdaP=2*Math.PI;var iterLimit=20;while(Math.abs(lambda-lambdaP)>1e-12&&--iterLimit>0){var sinLambda=Math.sin(lambda),cosLambda=Math.cos(lambda);var sinSigma=Math.sqrt((cosU2*sinLambda)*(cosU2*sinLambda)+
(cosU1*sinU2-sinU1*cosU2*cosLambda)*(cosU1*sinU2-sinU1*cosU2*cosLambda));if(sinSigma==0){return 0;}
var cosSigma=sinU1*sinU2+cosU1*cosU2*cosLambda;var sigma=Math.atan2(sinSigma,cosSigma);var alpha=Math.asin(cosU1*cosU2*sinLambda/sinSigma);var cosSqAlpha=Math.cos(alpha)*Math.cos(alpha);var cos2SigmaM=cosSigma-2*sinU1*sinU2/cosSqAlpha;var C=f/16*cosSqAlpha*(4+f*(4-3*cosSqAlpha));lambdaP=lambda;lambda=L+(1-C)*f*Math.sin(alpha)*(sigma+C*sinSigma*(cos2SigmaM+C*cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)));}
if(iterLimit==0){return NaN;}
var uSq=cosSqAlpha*(a*a-b*b)/(b*b);var A=1+uSq/16384*(4096+uSq*(-768+uSq*(320-175*uSq)));var B=uSq/1024*(256+uSq*(-128+uSq*(74-47*uSq)));var deltaSigma=B*sinSigma*(cos2SigmaM+B/4*(cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)-
B/6*cos2SigmaM*(-3+4*sinSigma*sinSigma)*(-3+4*cos2SigmaM*cos2SigmaM)));var s=b*A*(sigma-deltaSigma);var d=s.toFixed(3)/1000;return d;};OpenLayers.Util.destinationVincenty=function(lonlat,brng,dist){var u=OpenLayers.Util;var ct=u.VincentyConstants;var a=ct.a,b=ct.b,f=ct.f;var lon1=lonlat.lon;var lat1=lonlat.lat;var s=dist;var alpha1=u.rad(brng);var sinAlpha1=Math.sin(alpha1);var cosAlpha1=Math.cos(alpha1);var tanU1=(1-f)*Math.tan(u.rad(lat1));var cosU1=1/Math.sqrt((1+tanU1*tanU1)),sinU1=tanU1*cosU1;var sigma1=Math.atan2(tanU1,cosAlpha1);var sinAlpha=cosU1*sinAlpha1;var cosSqAlpha=1-sinAlpha*sinAlpha;var uSq=cosSqAlpha*(a*a-b*b)/(b*b);var A=1+uSq/16384*(4096+uSq*(-768+uSq*(320-175*uSq)));var B=uSq/1024*(256+uSq*(-128+uSq*(74-47*uSq)));var sigma=s/(b*A),sigmaP=2*Math.PI;while(Math.abs(sigma-sigmaP)>1e-12){var cos2SigmaM=Math.cos(2*sigma1+sigma);var sinSigma=Math.sin(sigma);var cosSigma=Math.cos(sigma);var deltaSigma=B*sinSigma*(cos2SigmaM+B/4*(cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)-
B/6*cos2SigmaM*(-3+4*sinSigma*sinSigma)*(-3+4*cos2SigmaM*cos2SigmaM)));sigmaP=sigma;sigma=s/(b*A)+deltaSigma;}
var tmp=sinU1*sinSigma-cosU1*cosSigma*cosAlpha1;var lat2=Math.atan2(sinU1*cosSigma+cosU1*sinSigma*cosAlpha1,(1-f)*Math.sqrt(sinAlpha*sinAlpha+tmp*tmp));var lambda=Math.atan2(sinSigma*sinAlpha1,cosU1*cosSigma-sinU1*sinSigma*cosAlpha1);var C=f/16*cosSqAlpha*(4+f*(4-3*cosSqAlpha));var L=lambda-(1-C)*f*sinAlpha*(sigma+C*sinSigma*(cos2SigmaM+C*cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)));var revAz=Math.atan2(sinAlpha,-tmp);return new OpenLayers.LonLat(lon1+u.deg(L),u.deg(lat2));};OpenLayers.Util.getParameters=function(url){url=(url===null||url===undefined)?window.location.href:url;var paramsString="";if(OpenLayers.String.contains(url,'?')){var start=url.indexOf('?')+1;var end=OpenLayers.String.contains(url,"#")?url.indexOf('#'):url.length;paramsString=url.substring(start,end);}
var parameters={};var pairs=paramsString.split(/[&;]/);for(var i=0,len=pairs.length;i<len;++i){var keyValue=pairs[i].split('=');if(keyValue[0]){var key=keyValue[0];try{key=decodeURIComponent(key);}catch(err){key=unescape(key);}
var value=(keyValue[1]||'').replace(/\+/g," ");try{value=decodeURIComponent(value);}catch(err){value=unescape(value);}
value=value.split(",");if(value.length==1){value=value[0];}
parameters[key]=value;}}
return parameters;};OpenLayers.Util.getArgs=function(url){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{'newMethod':'OpenLayers.Util.getParameters'}));return OpenLayers.Util.getParameters(url);};OpenLayers.Util.lastSeqID=0;OpenLayers.Util.createUniqueID=function(prefix){if(prefix==null){prefix="id_";}
OpenLayers.Util.lastSeqID+=1;return prefix+OpenLayers.Util.lastSeqID;};OpenLayers.INCHES_PER_UNIT={'inches':1.0,'ft':12.0,'mi':63360.0,'m':39.3701,'km':39370.1,'dd':4374754,'yd':36};OpenLayers.INCHES_PER_UNIT["in"]=OpenLayers.INCHES_PER_UNIT.inches;OpenLayers.INCHES_PER_UNIT["degrees"]=OpenLayers.INCHES_PER_UNIT.dd;OpenLayers.INCHES_PER_UNIT["nmi"]=1852*OpenLayers.INCHES_PER_UNIT.m;OpenLayers.METERS_PER_INCH=0.02540005080010160020;OpenLayers.Util.extend(OpenLayers.INCHES_PER_UNIT,{"Inch":OpenLayers.INCHES_PER_UNIT.inches,"Meter":1.0/OpenLayers.METERS_PER_INCH,"Foot":0.30480060960121920243/OpenLayers.METERS_PER_INCH,"IFoot":0.30480000000000000000/OpenLayers.METERS_PER_INCH,"ClarkeFoot":0.3047972651151/OpenLayers.METERS_PER_INCH,"SearsFoot":0.30479947153867624624/OpenLayers.METERS_PER_INCH,"GoldCoastFoot":0.30479971018150881758/OpenLayers.METERS_PER_INCH,"IInch":0.02540000000000000000/OpenLayers.METERS_PER_INCH,"MicroInch":0.00002540000000000000/OpenLayers.METERS_PER_INCH,"Mil":0.00000002540000000000/OpenLayers.METERS_PER_INCH,"Centimeter":0.01000000000000000000/OpenLayers.METERS_PER_INCH,"Kilometer":1000.00000000000000000000/OpenLayers.METERS_PER_INCH,"Yard":0.91440182880365760731/OpenLayers.METERS_PER_INCH,"SearsYard":0.914398414616029/OpenLayers.METERS_PER_INCH,"IndianYard":0.91439853074444079983/OpenLayers.METERS_PER_INCH,"IndianYd37":0.91439523/OpenLayers.METERS_PER_INCH,"IndianYd62":0.9143988/OpenLayers.METERS_PER_INCH,"IndianYd75":0.9143985/OpenLayers.METERS_PER_INCH,"IndianFoot":0.30479951/OpenLayers.METERS_PER_INCH,"IndianFt37":0.30479841/OpenLayers.METERS_PER_INCH,"IndianFt62":0.3047996/OpenLayers.METERS_PER_INCH,"IndianFt75":0.3047995/OpenLayers.METERS_PER_INCH,"Mile":1609.34721869443738887477/OpenLayers.METERS_PER_INCH,"IYard":0.91440000000000000000/OpenLayers.METERS_PER_INCH,"IMile":1609.34400000000000000000/OpenLayers.METERS_PER_INCH,"NautM":1852.00000000000000000000/OpenLayers.METERS_PER_INCH,"Lat-66":110943.316488932731/OpenLayers.METERS_PER_INCH,"Lat-83":110946.25736872234125/OpenLayers.METERS_PER_INCH,"Decimeter":0.10000000000000000000/OpenLayers.METERS_PER_INCH,"Millimeter":0.00100000000000000000/OpenLayers.METERS_PER_INCH,"Dekameter":10.00000000000000000000/OpenLayers.METERS_PER_INCH,"Decameter":10.00000000000000000000/OpenLayers.METERS_PER_INCH,"Hectometer":100.00000000000000000000/OpenLayers.METERS_PER_INCH,"GermanMeter":1.0000135965/OpenLayers.METERS_PER_INCH,"CaGrid":0.999738/OpenLayers.METERS_PER_INCH,"ClarkeChain":20.1166194976/OpenLayers.METERS_PER_INCH,"GunterChain":20.11684023368047/OpenLayers.METERS_PER_INCH,"BenoitChain":20.116782494375872/OpenLayers.METERS_PER_INCH,"SearsChain":20.11676512155/OpenLayers.METERS_PER_INCH,"ClarkeLink":0.201166194976/OpenLayers.METERS_PER_INCH,"GunterLink":0.2011684023368047/OpenLayers.METERS_PER_INCH,"BenoitLink":0.20116782494375872/OpenLayers.METERS_PER_INCH,"SearsLink":0.2011676512155/OpenLayers.METERS_PER_INCH,"Rod":5.02921005842012/OpenLayers.METERS_PER_INCH,"IntnlChain":20.1168/OpenLayers.METERS_PER_INCH,"IntnlLink":0.201168/OpenLayers.METERS_PER_INCH,"Perch":5.02921005842012/OpenLayers.METERS_PER_INCH,"Pole":5.02921005842012/OpenLayers.METERS_PER_INCH,"Furlong":201.1684023368046/OpenLayers.METERS_PER_INCH,"Rood":3.778266898/OpenLayers.METERS_PER_INCH,"CapeFoot":0.3047972615/OpenLayers.METERS_PER_INCH,"Brealey":375.00000000000000000000/OpenLayers.METERS_PER_INCH,"ModAmFt":0.304812252984505969011938/OpenLayers.METERS_PER_INCH,"Fathom":1.8288/OpenLayers.METERS_PER_INCH,"NautM-UK":1853.184/OpenLayers.METERS_PER_INCH,"50kilometers":50000.0/OpenLayers.METERS_PER_INCH,"150kilometers":150000.0/OpenLayers.METERS_PER_INCH});OpenLayers.Util.extend(OpenLayers.INCHES_PER_UNIT,{"mm":OpenLayers.INCHES_PER_UNIT["Meter"]/1000.0,"cm":OpenLayers.INCHES_PER_UNIT["Meter"]/100.0,"dm":OpenLayers.INCHES_PER_UNIT["Meter"]*100.0,"km":OpenLayers.INCHES_PER_UNIT["Meter"]*1000.0,"kmi":OpenLayers.INCHES_PER_UNIT["nmi"],"fath":OpenLayers.INCHES_PER_UNIT["Fathom"],"ch":OpenLayers.INCHES_PER_UNIT["IntnlChain"],"link":OpenLayers.INCHES_PER_UNIT["IntnlLink"],"us-in":OpenLayers.INCHES_PER_UNIT["inches"],"us-ft":OpenLayers.INCHES_PER_UNIT["Foot"],"us-yd":OpenLayers.INCHES_PER_UNIT["Yard"],"us-ch":OpenLayers.INCHES_PER_UNIT["GunterChain"],"us-mi":OpenLayers.INCHES_PER_UNIT["Mile"],"ind-yd":OpenLayers.INCHES_PER_UNIT["IndianYd37"],"ind-ft":OpenLayers.INCHES_PER_UNIT["IndianFt37"],"ind-ch":20.11669506/OpenLayers.METERS_PER_INCH});OpenLayers.DOTS_PER_INCH=72;OpenLayers.Util.normalizeScale=function(scale){var normScale=(scale>1.0)?(1.0/scale):scale;return normScale;};OpenLayers.Util.getResolutionFromScale=function(scale,units){var resolution;if(scale){if(units==null){units="degrees";}
var normScale=OpenLayers.Util.normalizeScale(scale);resolution=1/(normScale*OpenLayers.INCHES_PER_UNIT[units]*OpenLayers.DOTS_PER_INCH);}
return resolution;};OpenLayers.Util.getScaleFromResolution=function(resolution,units){if(units==null){units="degrees";}
var scale=resolution*OpenLayers.INCHES_PER_UNIT[units]*OpenLayers.DOTS_PER_INCH;return scale;};OpenLayers.Util.safeStopPropagation=function(evt){OpenLayers.Event.stop(evt,true);};OpenLayers.Util.pagePosition=function(forElement){var pos=[0,0];var viewportElement=OpenLayers.Util.getViewportElement();if(!forElement||forElement==window||forElement==viewportElement){return pos;}
var BUGGY_GECKO_BOX_OBJECT=OpenLayers.IS_GECKO&&document.getBoxObjectFor&&OpenLayers.Element.getStyle(forElement,'position')=='absolute'&&(forElement.style.top==''||forElement.style.left=='');var parent=null;var box;if(forElement.getBoundingClientRect){box=forElement.getBoundingClientRect();var scrollTop=viewportElement.scrollTop;var scrollLeft=viewportElement.scrollLeft;pos[0]=box.left+scrollLeft;pos[1]=box.top+scrollTop;}else if(document.getBoxObjectFor&&!BUGGY_GECKO_BOX_OBJECT){box=document.getBoxObjectFor(forElement);var vpBox=document.getBoxObjectFor(viewportElement);pos[0]=box.screenX-vpBox.screenX;pos[1]=box.screenY-vpBox.screenY;}else{pos[0]=forElement.offsetLeft;pos[1]=forElement.offsetTop;parent=forElement.offsetParent;if(parent!=forElement){while(parent){pos[0]+=parent.offsetLeft;pos[1]+=parent.offsetTop;parent=parent.offsetParent;}}
var browser=OpenLayers.BROWSER_NAME;if(browser=="opera"||(browser=="safari"&&OpenLayers.Element.getStyle(forElement,'position')=='absolute')){pos[1]-=document.body.offsetTop;}
parent=forElement.offsetParent;while(parent&&parent!=document.body){pos[0]-=parent.scrollLeft;if(browser!="opera"||parent.tagName!='TR'){pos[1]-=parent.scrollTop;}
parent=parent.offsetParent;}}
return pos;};OpenLayers.Util.getViewportElement=function(){var viewportElement=arguments.callee.viewportElement;if(viewportElement==undefined){viewportElement=(OpenLayers.BROWSER_NAME=="msie"&&document.compatMode!='CSS1Compat')?document.body:document.documentElement;arguments.callee.viewportElement=viewportElement;}
return viewportElement;};OpenLayers.Util.isEquivalentUrl=function(url1,url2,options){options=options||{};OpenLayers.Util.applyDefaults(options,{ignoreCase:true,ignorePort80:true,ignoreHash:true});var urlObj1=OpenLayers.Util.createUrlObject(url1,options);var urlObj2=OpenLayers.Util.createUrlObject(url2,options);for(var key in urlObj1){if(key!=="args"){if(urlObj1[key]!=urlObj2[key]){return false;}}}
for(var key in urlObj1.args){if(urlObj1.args[key]!=urlObj2.args[key]){return false;}
delete urlObj2.args[key];}
for(var key in urlObj2.args){return false;}
return true;};OpenLayers.Util.createUrlObject=function(url,options){options=options||{};if(!(/^\w+:\/\//).test(url)){var loc=window.location;var port=loc.port?":"+loc.port:"";var fullUrl=loc.protocol+"//"+loc.host.split(":").shift()+port;if(url.indexOf("/")===0){url=fullUrl+url;}else{var parts=loc.pathname.split("/");parts.pop();url=fullUrl+parts.join("/")+"/"+url;}}
if(options.ignoreCase){url=url.toLowerCase();}
var a=document.createElement('a');a.href=url;var urlObject={};urlObject.host=a.host.split(":").shift();urlObject.protocol=a.protocol;if(options.ignorePort80){urlObject.port=(a.port=="80"||a.port=="0")?"":a.port;}else{urlObject.port=(a.port==""||a.port=="0")?"80":a.port;}
urlObject.hash=(options.ignoreHash||a.hash==="#")?"":a.hash;var queryString=a.search;if(!queryString){var qMark=url.indexOf("?");queryString=(qMark!=-1)?url.substr(qMark):"";}
urlObject.args=OpenLayers.Util.getParameters(queryString);urlObject.pathname=(a.pathname.charAt(0)=="/")?a.pathname:"/"+a.pathname;return urlObject;};OpenLayers.Util.removeTail=function(url){var head=null;var qMark=url.indexOf("?");var hashMark=url.indexOf("#");if(qMark==-1){head=(hashMark!=-1)?url.substr(0,hashMark):url;}else{head=(hashMark!=-1)?url.substr(0,Math.min(qMark,hashMark)):url.substr(0,qMark);}
return head;};OpenLayers.IS_GECKO=(function(){var ua=navigator.userAgent.toLowerCase();return ua.indexOf("webkit")==-1&&ua.indexOf("gecko")!=-1;})();OpenLayers.BROWSER_NAME=(function(){var name="";var ua=navigator.userAgent.toLowerCase();if(ua.indexOf("opera")!=-1){name="opera";}else if(ua.indexOf("msie")!=-1){name="msie";}else if(ua.indexOf("safari")!=-1){name="safari";}else if(ua.indexOf("mozilla")!=-1){if(ua.indexOf("firefox")!=-1){name="firefox";}else{name="mozilla";}}
return name;})();OpenLayers.Util.getBrowserName=function(){return OpenLayers.BROWSER_NAME;};OpenLayers.Util.getRenderedDimensions=function(contentHTML,size,options){var w,h;var container=document.createElement("div");container.style.visibility="hidden";var containerElement=(options&&options.containerElement)?options.containerElement:document.body;if(size){if(size.w){w=size.w;container.style.width=w+"px";}else if(size.h){h=size.h;container.style.height=h+"px";}}
if(options&&options.displayClass){container.className=options.displayClass;}
var content=document.createElement("div");content.innerHTML=contentHTML;content.style.overflow="visible";if(content.childNodes){for(var i=0,l=content.childNodes.length;i<l;i++){if(!content.childNodes[i].style)continue;content.childNodes[i].style.overflow="visible";}}
container.appendChild(content);containerElement.appendChild(container);var parentHasPositionAbsolute=false;var parent=container.parentNode;while(parent&&parent.tagName.toLowerCase()!="body"){var parentPosition=OpenLayers.Element.getStyle(parent,"position");if(parentPosition=="absolute"){parentHasPositionAbsolute=true;break;}else if(parentPosition&&parentPosition!="static"){break;}
parent=parent.parentNode;}
if(!parentHasPositionAbsolute){container.style.position="absolute";}
if(!w){w=parseInt(content.scrollWidth);container.style.width=w+"px";}
if(!h){h=parseInt(content.scrollHeight);}
container.removeChild(content);containerElement.removeChild(container);return new OpenLayers.Size(w,h);};OpenLayers.Util.getScrollbarWidth=function(){var scrollbarWidth=OpenLayers.Util._scrollbarWidth;if(scrollbarWidth==null){var scr=null;var inn=null;var wNoScroll=0;var wScroll=0;scr=document.createElement('div');scr.style.position='absolute';scr.style.top='-1000px';scr.style.left='-1000px';scr.style.width='100px';scr.style.height='50px';scr.style.overflow='hidden';inn=document.createElement('div');inn.style.width='100%';inn.style.height='200px';scr.appendChild(inn);document.body.appendChild(scr);wNoScroll=inn.offsetWidth;scr.style.overflow='scroll';wScroll=inn.offsetWidth;document.body.removeChild(document.body.lastChild);OpenLayers.Util._scrollbarWidth=(wNoScroll-wScroll);scrollbarWidth=OpenLayers.Util._scrollbarWidth;}
return scrollbarWidth;};OpenLayers.Util.getFormattedLonLat=function(coordinate,axis,dmsOption){if(!dmsOption){dmsOption='dms';}
coordinate=(coordinate+540)%360-180;var abscoordinate=Math.abs(coordinate);var coordinatedegrees=Math.floor(abscoordinate);var coordinateminutes=(abscoordinate-coordinatedegrees)/(1/60);var tempcoordinateminutes=coordinateminutes;coordinateminutes=Math.floor(coordinateminutes);var coordinateseconds=(tempcoordinateminutes-coordinateminutes)/(1/60);coordinateseconds=Math.round(coordinateseconds*10);coordinateseconds/=10;if(coordinateseconds>=60){coordinateseconds-=60;coordinateminutes+=1;if(coordinateminutes>=60){coordinateminutes-=60;coordinatedegrees+=1;}}
if(coordinatedegrees<10){coordinatedegrees="0"+coordinatedegrees;}
var str=coordinatedegrees+"\u00B0";if(dmsOption.indexOf('dm')>=0){if(coordinateminutes<10){coordinateminutes="0"+coordinateminutes;}
str+=coordinateminutes+"'";if(dmsOption.indexOf('dms')>=0){if(coordinateseconds<10){coordinateseconds="0"+coordinateseconds;}
str+=coordinateseconds+'"';}}
if(axis=="lon"){str+=coordinate<0?OpenLayers.i18n("W"):OpenLayers.i18n("E");}else{str+=coordinate<0?OpenLayers.i18n("S"):OpenLayers.i18n("N");}
return str;};OpenLayers.Console={log:function(){},debug:function(){},info:function(){},warn:function(){},error:function(){},userError:function(error){alert(error);},assert:function(){},dir:function(){},dirxml:function(){},trace:function(){},group:function(){},groupEnd:function(){},time:function(){},timeEnd:function(){},profile:function(){},profileEnd:function(){},count:function(){},CLASS_NAME:"OpenLayers.Console"};(function(){var scripts=document.getElementsByTagName("script");for(var i=0,len=scripts.length;i<len;++i){if(scripts[i].src.indexOf("firebug.js")!=-1){if(console){OpenLayers.Util.extend(OpenLayers.Console,console);break;}}}})();OpenLayers.Lang={code:null,defaultCode:"en",getCode:function(){if(!OpenLayers.Lang.code){OpenLayers.Lang.setCode();}
return OpenLayers.Lang.code;},setCode:function(code){var lang;if(!code){code=(OpenLayers.BROWSER_NAME=="msie")?navigator.userLanguage:navigator.language;}
var parts=code.split('-');parts[0]=parts[0].toLowerCase();if(typeof OpenLayers.Lang[parts[0]]=="object"){lang=parts[0];}
if(parts[1]){var testLang=parts[0]+'-'+parts[1].toUpperCase();if(typeof OpenLayers.Lang[testLang]=="object"){lang=testLang;}}
if(!lang){OpenLayers.Console.warn('Failed to find OpenLayers.Lang.'+parts.join("-")+' dictionary, falling back to default language');lang=OpenLayers.Lang.defaultCode;}
OpenLayers.Lang.code=lang;},translate:function(key,context){var dictionary=OpenLayers.Lang[OpenLayers.Lang.getCode()];var message=dictionary&&dictionary[key];if(!message){message=key;}
if(context){message=OpenLayers.String.format(message,context);}
return message;}};OpenLayers.i18n=OpenLayers.Lang.translate;OpenLayers.Bounds=OpenLayers.Class({left:null,bottom:null,right:null,top:null,centerLonLat:null,initialize:function(left,bottom,right,top){if(left!=null){this.left=OpenLayers.Util.toFloat(left);}
if(bottom!=null){this.bottom=OpenLayers.Util.toFloat(bottom);}
if(right!=null){this.right=OpenLayers.Util.toFloat(right);}
if(top!=null){this.top=OpenLayers.Util.toFloat(top);}},clone:function(){return new OpenLayers.Bounds(this.left,this.bottom,this.right,this.top);},equals:function(bounds){var equals=false;if(bounds!=null){equals=((this.left==bounds.left)&&(this.right==bounds.right)&&(this.top==bounds.top)&&(this.bottom==bounds.bottom));}
return equals;},toString:function(){return[this.left,this.bottom,this.right,this.top].join(",");},toArray:function(reverseAxisOrder){if(reverseAxisOrder===true){return[this.bottom,this.left,this.top,this.right];}else{return[this.left,this.bottom,this.right,this.top];}},toBBOX:function(decimal,reverseAxisOrder){if(decimal==null){decimal=6;}
var mult=Math.pow(10,decimal);var xmin=Math.round(this.left*mult)/mult;var ymin=Math.round(this.bottom*mult)/mult;var xmax=Math.round(this.right*mult)/mult;var ymax=Math.round(this.top*mult)/mult;if(reverseAxisOrder===true){return ymin+","+xmin+","+ymax+","+xmax;}else{return xmin+","+ymin+","+xmax+","+ymax;}},toGeometry:function(){return new OpenLayers.Geometry.Polygon([new OpenLayers.Geometry.LinearRing([new OpenLayers.Geometry.Point(this.left,this.bottom),new OpenLayers.Geometry.Point(this.right,this.bottom),new OpenLayers.Geometry.Point(this.right,this.top),new OpenLayers.Geometry.Point(this.left,this.top)])]);},getWidth:function(){return(this.right-this.left);},getHeight:function(){return(this.top-this.bottom);},getSize:function(){return new OpenLayers.Size(this.getWidth(),this.getHeight());},getCenterPixel:function(){return new OpenLayers.Pixel((this.left+this.right)/2,(this.bottom+this.top)/2);},getCenterLonLat:function(){if(!this.centerLonLat){this.centerLonLat=new OpenLayers.LonLat((this.left+this.right)/2,(this.bottom+this.top)/2);}
return this.centerLonLat;},scale:function(ratio,origin){if(origin==null){origin=this.getCenterLonLat();}
var origx,origy;if(origin.CLASS_NAME=="OpenLayers.LonLat"){origx=origin.lon;origy=origin.lat;}else{origx=origin.x;origy=origin.y;}
var left=(this.left-origx)*ratio+origx;var bottom=(this.bottom-origy)*ratio+origy;var right=(this.right-origx)*ratio+origx;var top=(this.top-origy)*ratio+origy;return new OpenLayers.Bounds(left,bottom,right,top);},add:function(x,y){if((x==null)||(y==null)){var msg=OpenLayers.i18n("boundsAddError");OpenLayers.Console.error(msg);return null;}
return new OpenLayers.Bounds(this.left+x,this.bottom+y,this.right+x,this.top+y);},extend:function(object){var bounds=null;if(object){switch(object.CLASS_NAME){case"OpenLayers.LonLat":bounds=new OpenLayers.Bounds(object.lon,object.lat,object.lon,object.lat);break;case"OpenLayers.Geometry.Point":bounds=new OpenLayers.Bounds(object.x,object.y,object.x,object.y);break;case"OpenLayers.Bounds":bounds=object;break;}
if(bounds){this.centerLonLat=null;if((this.left==null)||(bounds.left<this.left)){this.left=bounds.left;}
if((this.bottom==null)||(bounds.bottom<this.bottom)){this.bottom=bounds.bottom;}
if((this.right==null)||(bounds.right>this.right)){this.right=bounds.right;}
if((this.top==null)||(bounds.top>this.top)){this.top=bounds.top;}}}},containsLonLat:function(ll,inclusive){return this.contains(ll.lon,ll.lat,inclusive);},containsPixel:function(px,inclusive){return this.contains(px.x,px.y,inclusive);},contains:function(x,y,inclusive){if(inclusive==null){inclusive=true;}
if(x==null||y==null){return false;}
x=OpenLayers.Util.toFloat(x);y=OpenLayers.Util.toFloat(y);var contains=false;if(inclusive){contains=((x>=this.left)&&(x<=this.right)&&(y>=this.bottom)&&(y<=this.top));}else{contains=((x>this.left)&&(x<this.right)&&(y>this.bottom)&&(y<this.top));}
return contains;},intersectsBounds:function(bounds,inclusive){if(inclusive==null){inclusive=true;}
var intersects=false;var mightTouch=(this.left==bounds.right||this.right==bounds.left||this.top==bounds.bottom||this.bottom==bounds.top);if(inclusive||!mightTouch){var inBottom=(((bounds.bottom>=this.bottom)&&(bounds.bottom<=this.top))||((this.bottom>=bounds.bottom)&&(this.bottom<=bounds.top)));var inTop=(((bounds.top>=this.bottom)&&(bounds.top<=this.top))||((this.top>bounds.bottom)&&(this.top<bounds.top)));var inLeft=(((bounds.left>=this.left)&&(bounds.left<=this.right))||((this.left>=bounds.left)&&(this.left<=bounds.right)));var inRight=(((bounds.right>=this.left)&&(bounds.right<=this.right))||((this.right>=bounds.left)&&(this.right<=bounds.right)));intersects=((inBottom||inTop)&&(inLeft||inRight));}
return intersects;},containsBounds:function(bounds,partial,inclusive){if(partial==null){partial=false;}
if(inclusive==null){inclusive=true;}
var bottomLeft=this.contains(bounds.left,bounds.bottom,inclusive);var bottomRight=this.contains(bounds.right,bounds.bottom,inclusive);var topLeft=this.contains(bounds.left,bounds.top,inclusive);var topRight=this.contains(bounds.right,bounds.top,inclusive);return(partial)?(bottomLeft||bottomRight||topLeft||topRight):(bottomLeft&&bottomRight&&topLeft&&topRight);},determineQuadrant:function(lonlat){var quadrant="";var center=this.getCenterLonLat();quadrant+=(lonlat.lat<center.lat)?"b":"t";quadrant+=(lonlat.lon<center.lon)?"l":"r";return quadrant;},transform:function(source,dest){this.centerLonLat=null;var ll=OpenLayers.Projection.transform({'x':this.left,'y':this.bottom},source,dest);var lr=OpenLayers.Projection.transform({'x':this.right,'y':this.bottom},source,dest);var ul=OpenLayers.Projection.transform({'x':this.left,'y':this.top},source,dest);var ur=OpenLayers.Projection.transform({'x':this.right,'y':this.top},source,dest);this.left=Math.min(ll.x,ul.x);this.bottom=Math.min(ll.y,lr.y);this.right=Math.max(lr.x,ur.x);this.top=Math.max(ul.y,ur.y);return this;},wrapDateLine:function(maxExtent,options){options=options||{};var leftTolerance=options.leftTolerance||0;var rightTolerance=options.rightTolerance||0;var newBounds=this.clone();if(maxExtent){while(newBounds.left<maxExtent.left&&(newBounds.right-rightTolerance)<=maxExtent.left){newBounds=newBounds.add(maxExtent.getWidth(),0);}
while((newBounds.left+leftTolerance)>=maxExtent.right&&newBounds.right>maxExtent.right){newBounds=newBounds.add(-maxExtent.getWidth(),0);}}
return newBounds;},CLASS_NAME:"OpenLayers.Bounds"});OpenLayers.Bounds.fromString=function(str,reverseAxisOrder){var bounds=str.split(",");return OpenLayers.Bounds.fromArray(bounds,reverseAxisOrder);};OpenLayers.Bounds.fromArray=function(bbox,reverseAxisOrder){return reverseAxisOrder===true?new OpenLayers.Bounds(parseFloat(bbox[1]),parseFloat(bbox[0]),parseFloat(bbox[3]),parseFloat(bbox[2])):new OpenLayers.Bounds(parseFloat(bbox[0]),parseFloat(bbox[1]),parseFloat(bbox[2]),parseFloat(bbox[3]));};OpenLayers.Bounds.fromSize=function(size){return new OpenLayers.Bounds(0,size.h,size.w,0);};OpenLayers.Bounds.oppositeQuadrant=function(quadrant){var opp="";opp+=(quadrant.charAt(0)=='t')?'b':'t';opp+=(quadrant.charAt(1)=='l')?'r':'l';return opp;};OpenLayers.Element={visible:function(element){return OpenLayers.Util.getElement(element).style.display!='none';},toggle:function(){for(var i=0,len=arguments.length;i<len;i++){var element=OpenLayers.Util.getElement(arguments[i]);var display=OpenLayers.Element.visible(element)?'hide':'show';OpenLayers.Element[display](element);}},hide:function(){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{newMethod:"element.style.display = 'none';"}));for(var i=0,len=arguments.length;i<len;i++){var element=OpenLayers.Util.getElement(arguments[i]);if(element){element.style.display='none';}}},show:function(){OpenLayers.Console.warn(OpenLayers.i18n("methodDeprecated",{newMethod:"element.style.display = '';"}));for(var i=0,len=arguments.length;i<len;i++){var element=OpenLayers.Util.getElement(arguments[i]);if(element){element.style.display='';}}},remove:function(element){element=OpenLayers.Util.getElement(element);element.parentNode.removeChild(element);},getHeight:function(element){element=OpenLayers.Util.getElement(element);return element.offsetHeight;},getDimensions:function(element){element=OpenLayers.Util.getElement(element);if(OpenLayers.Element.getStyle(element,'display')!='none'){return{width:element.offsetWidth,height:element.offsetHeight};}
var els=element.style;var originalVisibility=els.visibility;var originalPosition=els.position;var originalDisplay=els.display;els.visibility='hidden';els.position='absolute';els.display='';var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;els.display=originalDisplay;els.position=originalPosition;els.visibility=originalVisibility;return{width:originalWidth,height:originalHeight};},hasClass:function(element,name){var names=element.className;return(!!names&&new RegExp("(^|\\s)"+name+"(\\s|$)").test(names));},addClass:function(element,name){if(!OpenLayers.Element.hasClass(element,name)){element.className+=(element.className?" ":"")+name;}
return element;},removeClass:function(element,name){var names=element.className;if(names){element.className=OpenLayers.String.trim(names.replace(new RegExp("(^|\\s+)"+name+"(\\s+|$)")," "));}
return element;},toggleClass:function(element,name){if(OpenLayers.Element.hasClass(element,name)){OpenLayers.Element.removeClass(element,name);}else{OpenLayers.Element.addClass(element,name);}
return element;},getStyle:function(element,style){element=OpenLayers.Util.getElement(element);var value=null;if(element&&element.style){value=element.style[OpenLayers.String.camelize(style)];if(!value){if(document.defaultView&&document.defaultView.getComputedStyle){var css=document.defaultView.getComputedStyle(element,null);value=css?css.getPropertyValue(style):null;}else if(element.currentStyle){value=element.currentStyle[OpenLayers.String.camelize(style)];}}
var positions=['left','top','right','bottom'];if(window.opera&&(OpenLayers.Util.indexOf(positions,style)!=-1)&&(OpenLayers.Element.getStyle(element,'position')=='static')){value='auto';}}
return value=='auto'?null:value;}};OpenLayers.LonLat=OpenLayers.Class({lon:0.0,lat:0.0,initialize:function(lon,lat){this.lon=OpenLayers.Util.toFloat(lon);this.lat=OpenLayers.Util.toFloat(lat);},toString:function(){return("lon="+this.lon+",lat="+this.lat);},toShortString:function(){return(this.lon+", "+this.lat);},clone:function(){return new OpenLayers.LonLat(this.lon,this.lat);},add:function(lon,lat){if((lon==null)||(lat==null)){var msg=OpenLayers.i18n("lonlatAddError");OpenLayers.Console.error(msg);return null;}
return new OpenLayers.LonLat(this.lon+OpenLayers.Util.toFloat(lon),this.lat+OpenLayers.Util.toFloat(lat));},equals:function(ll){var equals=false;if(ll!=null){equals=((this.lon==ll.lon&&this.lat==ll.lat)||(isNaN(this.lon)&&isNaN(this.lat)&&isNaN(ll.lon)&&isNaN(ll.lat)));}
return equals;},transform:function(source,dest){var point=OpenLayers.Projection.transform({'x':this.lon,'y':this.lat},source,dest);this.lon=point.x;this.lat=point.y;return this;},wrapDateLine:function(maxExtent){var newLonLat=this.clone();if(maxExtent){while(newLonLat.lon<maxExtent.left){newLonLat.lon+=maxExtent.getWidth();}
while(newLonLat.lon>maxExtent.right){newLonLat.lon-=maxExtent.getWidth();}}
return newLonLat;},CLASS_NAME:"OpenLayers.LonLat"});OpenLayers.LonLat.fromString=function(str){var pair=str.split(",");return new OpenLayers.LonLat(pair[0],pair[1]);};OpenLayers.LonLat.fromArray=function(arr){var gotArr=OpenLayers.Util.isArray(arr),lon=gotArr&&arr[0],lat=gotArr&&arr[1];return new OpenLayers.LonLat(lon,lat);};OpenLayers.Pixel=OpenLayers.Class({x:0.0,y:0.0,initialize:function(x,y){this.x=parseFloat(x);this.y=parseFloat(y);},toString:function(){return("x="+this.x+",y="+this.y);},clone:function(){return new OpenLayers.Pixel(this.x,this.y);},equals:function(px){var equals=false;if(px!=null){equals=((this.x==px.x&&this.y==px.y)||(isNaN(this.x)&&isNaN(this.y)&&isNaN(px.x)&&isNaN(px.y)));}
return equals;},distanceTo:function(px){return Math.sqrt(Math.pow(this.x-px.x,2)+
Math.pow(this.y-px.y,2));},add:function(x,y){if((x==null)||(y==null)){var msg=OpenLayers.i18n("pixelAddError");OpenLayers.Console.error(msg);return null;}
return new OpenLayers.Pixel(this.x+x,this.y+y);},offset:function(px){var newPx=this.clone();if(px){newPx=this.add(px.x,px.y);}
return newPx;},CLASS_NAME:"OpenLayers.Pixel"});OpenLayers.Size=OpenLayers.Class({w:0.0,h:0.0,initialize:function(w,h){this.w=parseFloat(w);this.h=parseFloat(h);},toString:function(){return("w="+this.w+",h="+this.h);},clone:function(){return new OpenLayers.Size(this.w,this.h);},equals:function(sz){var equals=false;if(sz!=null){equals=((this.w==sz.w&&this.h==sz.h)||(isNaN(this.w)&&isNaN(this.h)&&isNaN(sz.w)&&isNaN(sz.h)));}
return equals;},CLASS_NAME:"OpenLayers.Size"});OpenLayers.Feature=OpenLayers.Class({layer:null,id:null,lonlat:null,data:null,marker:null,popupClass:null,popup:null,initialize:function(layer,lonlat,data){this.layer=layer;this.lonlat=lonlat;this.data=(data!=null)?data:{};this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+"_");},destroy:function(){if((this.layer!=null)&&(this.layer.map!=null)){if(this.popup!=null){this.layer.map.removePopup(this.popup);}}
if(this.layer!=null&&this.marker!=null){this.layer.removeMarker(this.marker);}
this.layer=null;this.id=null;this.lonlat=null;this.data=null;if(this.marker!=null){this.destroyMarker(this.marker);this.marker=null;}
if(this.popup!=null){this.destroyPopup(this.popup);this.popup=null;}},onScreen:function(){var onScreen=false;if((this.layer!=null)&&(this.layer.map!=null)){var screenBounds=this.layer.map.getExtent();onScreen=screenBounds.containsLonLat(this.lonlat);}
return onScreen;},createMarker:function(){if(this.lonlat!=null){this.marker=new OpenLayers.Marker(this.lonlat,this.data.icon);}
return this.marker;},destroyMarker:function(){this.marker.destroy();},createPopup:function(closeBox){if(this.lonlat!=null){if(!this.popup){var anchor=(this.marker)?this.marker.icon:null;var popupClass=this.popupClass?this.popupClass:OpenLayers.Popup.AnchoredBubble;this.popup=new popupClass(this.id+"_popup",this.lonlat,this.data.popupSize,this.data.popupContentHTML,anchor,closeBox);}
if(this.data.overflow!=null){this.popup.contentDiv.style.overflow=this.data.overflow;}
this.popup.feature=this;}
return this.popup;},destroyPopup:function(){if(this.popup){this.popup.feature=null;this.popup.destroy();this.popup=null;}},CLASS_NAME:"OpenLayers.Feature"});OpenLayers.State={UNKNOWN:'Unknown',INSERT:'Insert',UPDATE:'Update',DELETE:'Delete'};OpenLayers.Feature.Vector=OpenLayers.Class(OpenLayers.Feature,{fid:null,geometry:null,attributes:null,bounds:null,state:null,style:null,url:null,renderIntent:"default",modified:null,initialize:function(geometry,attributes,style){OpenLayers.Feature.prototype.initialize.apply(this,[null,null,attributes]);this.lonlat=null;this.geometry=geometry?geometry:null;this.state=null;this.attributes={};if(attributes){this.attributes=OpenLayers.Util.extend(this.attributes,attributes);}
this.style=style?style:null;},destroy:function(){if(this.layer){this.layer.removeFeatures(this);this.layer=null;}
this.geometry=null;this.modified=null;OpenLayers.Feature.prototype.destroy.apply(this,arguments);},clone:function(){return new OpenLayers.Feature.Vector(this.geometry?this.geometry.clone():null,this.attributes,this.style);},onScreen:function(boundsOnly){var onScreen=false;if(this.layer&&this.layer.map){var screenBounds=this.layer.map.getExtent();if(boundsOnly){var featureBounds=this.geometry.getBounds();onScreen=screenBounds.intersectsBounds(featureBounds);}else{var screenPoly=screenBounds.toGeometry();onScreen=screenPoly.intersects(this.geometry);}}
return onScreen;},getVisibility:function(){return!(this.style&&this.style.display=='none'||!this.layer||this.layer&&this.layer.styleMap&&this.layer.styleMap.createSymbolizer(this,this.renderIntent).display=='none'||this.layer&&!this.layer.getVisibility());},createMarker:function(){return null;},destroyMarker:function(){},createPopup:function(){return null;},atPoint:function(lonlat,toleranceLon,toleranceLat){var atPoint=false;if(this.geometry){atPoint=this.geometry.atPoint(lonlat,toleranceLon,toleranceLat);}
return atPoint;},destroyPopup:function(){},move:function(location){if(!this.layer||!this.geometry.move){return undefined;}
var pixel;if(location.CLASS_NAME=="OpenLayers.LonLat"){pixel=this.layer.getViewPortPxFromLonLat(location);}else{pixel=location;}
var lastPixel=this.layer.getViewPortPxFromLonLat(this.geometry.getBounds().getCenterLonLat());var res=this.layer.map.getResolution();this.geometry.move(res*(pixel.x-lastPixel.x),res*(lastPixel.y-pixel.y));this.layer.drawFeature(this);return lastPixel;},toState:function(state){if(state==OpenLayers.State.UPDATE){switch(this.state){case OpenLayers.State.UNKNOWN:case OpenLayers.State.DELETE:this.state=state;break;case OpenLayers.State.UPDATE:case OpenLayers.State.INSERT:break;}}else if(state==OpenLayers.State.INSERT){switch(this.state){case OpenLayers.State.UNKNOWN:break;default:this.state=state;break;}}else if(state==OpenLayers.State.DELETE){switch(this.state){case OpenLayers.State.INSERT:break;case OpenLayers.State.DELETE:break;case OpenLayers.State.UNKNOWN:case OpenLayers.State.UPDATE:this.state=state;break;}}else if(state==OpenLayers.State.UNKNOWN){this.state=state;}},CLASS_NAME:"OpenLayers.Feature.Vector"});OpenLayers.Feature.Vector.style={'default':{fillColor:"#ee9900",fillOpacity:0.4,hoverFillColor:"white",hoverFillOpacity:0.8,strokeColor:"#ee9900",strokeOpacity:1,strokeWidth:1,strokeLinecap:"round",strokeDashstyle:"solid",hoverStrokeColor:"red",hoverStrokeOpacity:1,hoverStrokeWidth:0.2,pointRadius:6,hoverPointRadius:1,hoverPointUnit:"%",pointerEvents:"visiblePainted",cursor:"inherit"},'select':{fillColor:"blue",fillOpacity:0.4,hoverFillColor:"white",hoverFillOpacity:0.8,strokeColor:"blue",strokeOpacity:1,strokeWidth:2,strokeLinecap:"round",strokeDashstyle:"solid",hoverStrokeColor:"red",hoverStrokeOpacity:1,hoverStrokeWidth:0.2,pointRadius:6,hoverPointRadius:1,hoverPointUnit:"%",pointerEvents:"visiblePainted",cursor:"pointer"},'temporary':{fillColor:"#66cccc",fillOpacity:0.2,hoverFillColor:"white",hoverFillOpacity:0.8,strokeColor:"#66cccc",strokeOpacity:1,strokeLinecap:"round",strokeWidth:2,strokeDashstyle:"solid",hoverStrokeColor:"red",hoverStrokeOpacity:1,hoverStrokeWidth:0.2,pointRadius:6,hoverPointRadius:1,hoverPointUnit:"%",pointerEvents:"visiblePainted",cursor:"inherit"},'delete':{display:"none"}};OpenLayers.Style=OpenLayers.Class({id:null,name:null,title:null,description:null,layerName:null,isDefault:false,rules:null,context:null,defaultStyle:null,defaultsPerSymbolizer:false,propertyStyles:null,initialize:function(style,options){OpenLayers.Util.extend(this,options);this.rules=[];if(options&&options.rules){this.addRules(options.rules);}
this.setDefaultStyle(style||OpenLayers.Feature.Vector.style["default"]);this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+"_");},destroy:function(){for(var i=0,len=this.rules.length;i<len;i++){this.rules[i].destroy();this.rules[i]=null;}
this.rules=null;this.defaultStyle=null;},createSymbolizer:function(feature){var style=this.defaultsPerSymbolizer?{}:this.createLiterals(OpenLayers.Util.extend({},this.defaultStyle),feature);var rules=this.rules;var rule,context;var elseRules=[];var appliedRules=false;for(var i=0,len=rules.length;i<len;i++){rule=rules[i];var applies=rule.evaluate(feature);if(applies){if(rule instanceof OpenLayers.Rule&&rule.elseFilter){elseRules.push(rule);}else{appliedRules=true;this.applySymbolizer(rule,style,feature);}}}
if(appliedRules==false&&elseRules.length>0){appliedRules=true;for(var i=0,len=elseRules.length;i<len;i++){this.applySymbolizer(elseRules[i],style,feature);}}
if(rules.length>0&&appliedRules==false){style.display="none";}
if(style.label&&typeof style.label!=="string"){style.label=String(style.label);}
return style;},applySymbolizer:function(rule,style,feature){var symbolizerPrefix=feature.geometry?this.getSymbolizerPrefix(feature.geometry):OpenLayers.Style.SYMBOLIZER_PREFIXES[0];var symbolizer=rule.symbolizer[symbolizerPrefix]||rule.symbolizer;if(this.defaultsPerSymbolizer===true){var defaults=this.defaultStyle;OpenLayers.Util.applyDefaults(symbolizer,{pointRadius:defaults.pointRadius});if(symbolizer.stroke===true||symbolizer.graphic===true){OpenLayers.Util.applyDefaults(symbolizer,{strokeWidth:defaults.strokeWidth,strokeColor:defaults.strokeColor,strokeOpacity:defaults.strokeOpacity,strokeDashstyle:defaults.strokeDashstyle,strokeLinecap:defaults.strokeLinecap});}
if(symbolizer.fill===true||symbolizer.graphic===true){OpenLayers.Util.applyDefaults(symbolizer,{fillColor:defaults.fillColor,fillOpacity:defaults.fillOpacity});}
if(symbolizer.graphic===true){OpenLayers.Util.applyDefaults(symbolizer,{pointRadius:this.defaultStyle.pointRadius,externalGraphic:this.defaultStyle.externalGraphic,graphicName:this.defaultStyle.graphicName,graphicOpacity:this.defaultStyle.graphicOpacity,graphicWidth:this.defaultStyle.graphicWidth,graphicHeight:this.defaultStyle.graphicHeight,graphicXOffset:this.defaultStyle.graphicXOffset,graphicYOffset:this.defaultStyle.graphicYOffset});}}
return this.createLiterals(OpenLayers.Util.extend(style,symbolizer),feature);},createLiterals:function(style,feature){var context=OpenLayers.Util.extend({},feature.attributes||feature.data);OpenLayers.Util.extend(context,this.context);for(var i in this.propertyStyles){style[i]=OpenLayers.Style.createLiteral(style[i],context,feature,i);}
return style;},findPropertyStyles:function(){var propertyStyles={};var style=this.defaultStyle;this.addPropertyStyles(propertyStyles,style);var rules=this.rules;var symbolizer,value;for(var i=0,len=rules.length;i<len;i++){symbolizer=rules[i].symbolizer;for(var key in symbolizer){value=symbolizer[key];if(typeof value=="object"){this.addPropertyStyles(propertyStyles,value);}else{this.addPropertyStyles(propertyStyles,symbolizer);break;}}}
return propertyStyles;},addPropertyStyles:function(propertyStyles,symbolizer){var property;for(var key in symbolizer){property=symbolizer[key];if(typeof property=="string"&&property.match(/\$\{\w+\}/)){propertyStyles[key]=true;}}
return propertyStyles;},addRules:function(rules){Array.prototype.push.apply(this.rules,rules);this.propertyStyles=this.findPropertyStyles();},setDefaultStyle:function(style){this.defaultStyle=style;this.propertyStyles=this.findPropertyStyles();},getSymbolizerPrefix:function(geometry){var prefixes=OpenLayers.Style.SYMBOLIZER_PREFIXES;for(var i=0,len=prefixes.length;i<len;i++){if(geometry.CLASS_NAME.indexOf(prefixes[i])!=-1){return prefixes[i];}}},clone:function(){var options=OpenLayers.Util.extend({},this);if(this.rules){options.rules=[];for(var i=0,len=this.rules.length;i<len;++i){options.rules.push(this.rules[i].clone());}}
options.context=this.context&&OpenLayers.Util.extend({},this.context);var defaultStyle=OpenLayers.Util.extend({},this.defaultStyle);return new OpenLayers.Style(defaultStyle,options);},CLASS_NAME:"OpenLayers.Style"});OpenLayers.Style.createLiteral=function(value,context,feature,property){if(typeof value=="string"&&value.indexOf("${")!=-1){value=OpenLayers.String.format(value,context,[feature,property]);value=(isNaN(value)||!value)?value:parseFloat(value);}
return value;};OpenLayers.Style.SYMBOLIZER_PREFIXES=['Point','Line','Polygon','Text','Raster'];OpenLayers.Renderer=OpenLayers.Class({container:null,root:null,extent:null,locked:false,size:null,resolution:null,map:null,initialize:function(containerID,options){this.container=OpenLayers.Util.getElement(containerID);OpenLayers.Util.extend(this,options);},destroy:function(){this.container=null;this.extent=null;this.size=null;this.resolution=null;this.map=null;},supported:function(){return false;},setExtent:function(extent,resolutionChanged){this.extent=extent.clone();if(resolutionChanged){this.resolution=null;}},setSize:function(size){this.size=size.clone();this.resolution=null;},getResolution:function(){this.resolution=this.resolution||this.map.getResolution();return this.resolution;},drawFeature:function(feature,style){if(style==null){style=feature.style;}
if(feature.geometry){var bounds=feature.geometry.getBounds();if(bounds){if(!bounds.intersectsBounds(this.extent)){style={display:"none"};}
var rendered=this.drawGeometry(feature.geometry,style,feature.id);if(style.display!="none"&&style.label&&rendered!==false){var location=feature.geometry.getCentroid();if(style.labelXOffset||style.labelYOffset){var xOffset=isNaN(style.labelXOffset)?0:style.labelXOffset;var yOffset=isNaN(style.labelYOffset)?0:style.labelYOffset;var res=this.getResolution();location.move(xOffset*res,yOffset*res);}
this.drawText(feature.id,style,location);}else{this.removeText(feature.id);}
return rendered;}}},drawGeometry:function(geometry,style,featureId){},drawText:function(featureId,style,location){},removeText:function(featureId){},clear:function(){},getFeatureIdFromEvent:function(evt){},eraseFeatures:function(features){if(!(OpenLayers.Util.isArray(features))){features=[features];}
for(var i=0,len=features.length;i<len;++i){var feature=features[i];this.eraseGeometry(feature.geometry,feature.id);this.removeText(feature.id);}},eraseGeometry:function(geometry,featureId){},moveRoot:function(renderer){},getRenderLayerId:function(){return this.container.id;},applyDefaultSymbolizer:function(symbolizer){var result=OpenLayers.Util.extend({},OpenLayers.Renderer.defaultSymbolizer);if(symbolizer.stroke===false){delete result.strokeWidth;delete result.strokeColor;}
if(symbolizer.fill===false){delete result.fillColor;}
OpenLayers.Util.extend(result,symbolizer);return result;},CLASS_NAME:"OpenLayers.Renderer"});OpenLayers.Renderer.defaultSymbolizer={fillColor:"#000000",strokeColor:"#000000",strokeWidth:2,fillOpacity:1,strokeOpacity:1,pointRadius:0};OpenLayers.ElementsIndexer=OpenLayers.Class({maxZIndex:null,order:null,indices:null,compare:null,initialize:function(yOrdering){this.compare=yOrdering?OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER_Y_ORDER:OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER_DRAWING_ORDER;this.clear();},insert:function(newNode){if(this.exists(newNode)){this.remove(newNode);}
var nodeId=newNode.id;this.determineZIndex(newNode);var leftIndex=-1;var rightIndex=this.order.length;var middle;while(rightIndex-leftIndex>1){middle=parseInt((leftIndex+rightIndex)/2);var placement=this.compare(this,newNode,OpenLayers.Util.getElement(this.order[middle]));if(placement>0){leftIndex=middle;}else{rightIndex=middle;}}
this.order.splice(rightIndex,0,nodeId);this.indices[nodeId]=this.getZIndex(newNode);return this.getNextElement(rightIndex);},remove:function(node){var nodeId=node.id;var arrayIndex=OpenLayers.Util.indexOf(this.order,nodeId);if(arrayIndex>=0){this.order.splice(arrayIndex,1);delete this.indices[nodeId];if(this.order.length>0){var lastId=this.order[this.order.length-1];this.maxZIndex=this.indices[lastId];}else{this.maxZIndex=0;}}},clear:function(){this.order=[];this.indices={};this.maxZIndex=0;},exists:function(node){return(this.indices[node.id]!=null);},getZIndex:function(node){return node._style.graphicZIndex;},determineZIndex:function(node){var zIndex=node._style.graphicZIndex;if(zIndex==null){zIndex=this.maxZIndex;node._style.graphicZIndex=zIndex;}else if(zIndex>this.maxZIndex){this.maxZIndex=zIndex;}},getNextElement:function(index){var nextIndex=index+1;if(nextIndex<this.order.length){var nextElement=OpenLayers.Util.getElement(this.order[nextIndex]);if(nextElement==undefined){nextElement=this.getNextElement(nextIndex);}
return nextElement;}else{return null;}},CLASS_NAME:"OpenLayers.ElementsIndexer"});OpenLayers.ElementsIndexer.IndexingMethods={Z_ORDER:function(indexer,newNode,nextNode){var newZIndex=indexer.getZIndex(newNode);var returnVal=0;if(nextNode){var nextZIndex=indexer.getZIndex(nextNode);returnVal=newZIndex-nextZIndex;}
return returnVal;},Z_ORDER_DRAWING_ORDER:function(indexer,newNode,nextNode){var returnVal=OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER(indexer,newNode,nextNode);if(nextNode&&returnVal==0){returnVal=1;}
return returnVal;},Z_ORDER_Y_ORDER:function(indexer,newNode,nextNode){var returnVal=OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER(indexer,newNode,nextNode);if(nextNode&&returnVal===0){var result=nextNode._boundsBottom-newNode._boundsBottom;returnVal=(result===0)?1:result;}
return returnVal;}};OpenLayers.Renderer.Elements=OpenLayers.Class(OpenLayers.Renderer,{rendererRoot:null,root:null,vectorRoot:null,textRoot:null,xmlns:null,indexer:null,BACKGROUND_ID_SUFFIX:"_background",LABEL_ID_SUFFIX:"_label",initialize:function(containerID,options){OpenLayers.Renderer.prototype.initialize.apply(this,arguments);this.rendererRoot=this.createRenderRoot();this.root=this.createRoot("_root");this.vectorRoot=this.createRoot("_vroot");this.textRoot=this.createRoot("_troot");this.root.appendChild(this.vectorRoot);this.root.appendChild(this.textRoot);this.rendererRoot.appendChild(this.root);this.container.appendChild(this.rendererRoot);if(options&&(options.zIndexing||options.yOrdering)){this.indexer=new OpenLayers.ElementsIndexer(options.yOrdering);}},destroy:function(){this.clear();this.rendererRoot=null;this.root=null;this.xmlns=null;OpenLayers.Renderer.prototype.destroy.apply(this,arguments);},clear:function(){var child;var root=this.vectorRoot;if(root){while(child=root.firstChild){root.removeChild(child);}}
root=this.textRoot;if(root){while(child=root.firstChild){root.removeChild(child);}}
if(this.indexer){this.indexer.clear();}},getNodeType:function(geometry,style){},drawGeometry:function(geometry,style,featureId){var className=geometry.CLASS_NAME;var rendered=true;if((className=="OpenLayers.Geometry.Collection")||(className=="OpenLayers.Geometry.MultiPoint")||(className=="OpenLayers.Geometry.MultiLineString")||(className=="OpenLayers.Geometry.MultiPolygon")){for(var i=0,len=geometry.components.length;i<len;i++){rendered=this.drawGeometry(geometry.components[i],style,featureId)&&rendered;}
return rendered;};rendered=false;var removeBackground=false;if(style.display!="none"){if(style.backgroundGraphic){this.redrawBackgroundNode(geometry.id,geometry,style,featureId);}else{removeBackground=true;}
rendered=this.redrawNode(geometry.id,geometry,style,featureId);}
if(rendered==false){var node=document.getElementById(geometry.id);if(node){if(node._style.backgroundGraphic){removeBackground=true;}
node.parentNode.removeChild(node);}}
if(removeBackground){var node=document.getElementById(geometry.id+this.BACKGROUND_ID_SUFFIX);if(node){node.parentNode.removeChild(node);}}
return rendered;},redrawNode:function(id,geometry,style,featureId){style=this.applyDefaultSymbolizer(style);var node=this.nodeFactory(id,this.getNodeType(geometry,style));node._featureId=featureId;node._boundsBottom=geometry.getBounds().bottom;node._geometryClass=geometry.CLASS_NAME;node._style=style;var drawResult=this.drawGeometryNode(node,geometry,style);if(drawResult===false){return false;}
node=drawResult.node;if(this.indexer){var insert=this.indexer.insert(node);if(insert){this.vectorRoot.insertBefore(node,insert);}else{this.vectorRoot.appendChild(node);}}else{if(node.parentNode!==this.vectorRoot){this.vectorRoot.appendChild(node);}}
this.postDraw(node);return drawResult.complete;},redrawBackgroundNode:function(id,geometry,style,featureId){var backgroundStyle=OpenLayers.Util.extend({},style);backgroundStyle.externalGraphic=backgroundStyle.backgroundGraphic;backgroundStyle.graphicXOffset=backgroundStyle.backgroundXOffset;backgroundStyle.graphicYOffset=backgroundStyle.backgroundYOffset;backgroundStyle.graphicZIndex=backgroundStyle.backgroundGraphicZIndex;backgroundStyle.graphicWidth=backgroundStyle.backgroundWidth||backgroundStyle.graphicWidth;backgroundStyle.graphicHeight=backgroundStyle.backgroundHeight||backgroundStyle.graphicHeight;backgroundStyle.backgroundGraphic=null;backgroundStyle.backgroundXOffset=null;backgroundStyle.backgroundYOffset=null;backgroundStyle.backgroundGraphicZIndex=null;return this.redrawNode(id+this.BACKGROUND_ID_SUFFIX,geometry,backgroundStyle,null);},drawGeometryNode:function(node,geometry,style){style=style||node._style;var options={'isFilled':style.fill===undefined?true:style.fill,'isStroked':style.stroke===undefined?!!style.strokeWidth:style.stroke};var drawn;switch(geometry.CLASS_NAME){case"OpenLayers.Geometry.Point":if(style.graphic===false){options.isFilled=false;options.isStroked=false;}
drawn=this.drawPoint(node,geometry);break;case"OpenLayers.Geometry.LineString":options.isFilled=false;drawn=this.drawLineString(node,geometry);break;case"OpenLayers.Geometry.LinearRing":drawn=this.drawLinearRing(node,geometry);break;case"OpenLayers.Geometry.Polygon":drawn=this.drawPolygon(node,geometry);break;case"OpenLayers.Geometry.Surface":drawn=this.drawSurface(node,geometry);break;case"OpenLayers.Geometry.Rectangle":drawn=this.drawRectangle(node,geometry);break;default:break;}
node._options=options;if(drawn!=false){return{node:this.setStyle(node,style,options,geometry),complete:drawn};}else{return false;}},postDraw:function(node){},drawPoint:function(node,geometry){},drawLineString:function(node,geometry){},drawLinearRing:function(node,geometry){},drawPolygon:function(node,geometry){},drawRectangle:function(node,geometry){},drawCircle:function(node,geometry){},drawSurface:function(node,geometry){},removeText:function(featureId){var label=document.getElementById(featureId+this.LABEL_ID_SUFFIX);if(label){this.textRoot.removeChild(label);}},getFeatureIdFromEvent:function(evt){var target=evt.target;var useElement=target&&target.correspondingUseElement;var node=useElement?useElement:(target||evt.srcElement);var featureId=node._featureId;return featureId;},eraseGeometry:function(geometry,featureId){if((geometry.CLASS_NAME=="OpenLayers.Geometry.MultiPoint")||(geometry.CLASS_NAME=="OpenLayers.Geometry.MultiLineString")||(geometry.CLASS_NAME=="OpenLayers.Geometry.MultiPolygon")||(geometry.CLASS_NAME=="OpenLayers.Geometry.Collection")){for(var i=0,len=geometry.components.length;i<len;i++){this.eraseGeometry(geometry.components[i],featureId);}}else{var element=OpenLayers.Util.getElement(geometry.id);if(element&&element.parentNode){if(element.geometry){element.geometry.destroy();element.geometry=null;}
element.parentNode.removeChild(element);if(this.indexer){this.indexer.remove(element);}
if(element._style.backgroundGraphic){var backgroundId=geometry.id+this.BACKGROUND_ID_SUFFIX;var bElem=OpenLayers.Util.getElement(backgroundId);if(bElem&&bElem.parentNode){bElem.parentNode.removeChild(bElem);}}}}},nodeFactory:function(id,type){var node=OpenLayers.Util.getElement(id);if(node){if(!this.nodeTypeCompare(node,type)){node.parentNode.removeChild(node);node=this.nodeFactory(id,type);}}else{node=this.createNode(type,id);}
return node;},nodeTypeCompare:function(node,type){},createNode:function(type,id){},moveRoot:function(renderer){var root=this.root;if(renderer.root.parentNode==this.rendererRoot){root=renderer.root;}
root.parentNode.removeChild(root);renderer.rendererRoot.appendChild(root);},getRenderLayerId:function(){return this.root.parentNode.parentNode.id;},isComplexSymbol:function(graphicName){return(graphicName!="circle")&&!!graphicName;},CLASS_NAME:"OpenLayers.Renderer.Elements"});OpenLayers.Renderer.symbol={"star":[350,75,379,161,469,161,397,215,423,301,350,250,277,301,303,215,231,161,321,161,350,75],"cross":[4,0,6,0,6,4,10,4,10,6,6,6,6,10,4,10,4,6,0,6,0,4,4,4,4,0],"x":[0,0,25,0,50,35,75,0,100,0,65,50,100,100,75,100,50,65,25,100,0,100,35,50,0,0],"square":[0,0,0,1,1,1,1,0,0,0],"triangle":[0,10,10,10,5,0,0,10]};OpenLayers.Renderer.VML=OpenLayers.Class(OpenLayers.Renderer.Elements,{xmlns:"urn:schemas-microsoft-com:vml",symbolCache:{},offset:null,initialize:function(containerID){if(!this.supported()){return;}
if(!document.namespaces.olv){document.namespaces.add("olv",this.xmlns);var style=document.createStyleSheet();var shapes=['shape','rect','oval','fill','stroke','imagedata','group','textbox'];for(var i=0,len=shapes.length;i<len;i++){style.addRule('olv\\:'+shapes[i],"behavior: url(#default#VML); "+"position: absolute; display: inline-block;");}}
OpenLayers.Renderer.Elements.prototype.initialize.apply(this,arguments);},supported:function(){return!!(document.namespaces);},setExtent:function(extent,resolutionChanged){OpenLayers.Renderer.Elements.prototype.setExtent.apply(this,arguments);var resolution=this.getResolution();var left=(extent.left/resolution)|0;var top=(extent.top/resolution-this.size.h)|0;if(resolutionChanged||!this.offset){this.offset={x:left,y:top};left=0;top=0;}else{left=left-this.offset.x;top=top-this.offset.y;}
var org=left+" "+top;this.root.coordorigin=org;var roots=[this.root,this.vectorRoot,this.textRoot];var root;for(var i=0,len=roots.length;i<len;++i){root=roots[i];var size=this.size.w+" "+this.size.h;root.coordsize=size;}
this.root.style.flip="y";return true;},setSize:function(size){OpenLayers.Renderer.prototype.setSize.apply(this,arguments);var roots=[this.rendererRoot,this.root,this.vectorRoot,this.textRoot];var w=this.size.w+"px";var h=this.size.h+"px";var root;for(var i=0,len=roots.length;i<len;++i){root=roots[i];root.style.width=w;root.style.height=h;}},getNodeType:function(geometry,style){var nodeType=null;switch(geometry.CLASS_NAME){case"OpenLayers.Geometry.Point":if(style.externalGraphic){nodeType="olv:rect";}else if(this.isComplexSymbol(style.graphicName)){nodeType="olv:shape";}else{nodeType="olv:oval";}
break;case"OpenLayers.Geometry.Rectangle":nodeType="olv:rect";break;case"OpenLayers.Geometry.LineString":case"OpenLayers.Geometry.LinearRing":case"OpenLayers.Geometry.Polygon":case"OpenLayers.Geometry.Curve":case"OpenLayers.Geometry.Surface":nodeType="olv:shape";break;default:break;}
return nodeType;},setStyle:function(node,style,options,geometry){style=style||node._style;options=options||node._options;var fillColor=style.fillColor;if(node._geometryClass==="OpenLayers.Geometry.Point"){if(style.externalGraphic){options.isFilled=true;if(style.graphicTitle){node.title=style.graphicTitle;}
var width=style.graphicWidth||style.graphicHeight;var height=style.graphicHeight||style.graphicWidth;width=width?width:style.pointRadius*2;height=height?height:style.pointRadius*2;var resolution=this.getResolution();var xOffset=(style.graphicXOffset!=undefined)?style.graphicXOffset:-(0.5*width);var yOffset=(style.graphicYOffset!=undefined)?style.graphicYOffset:-(0.5*height);node.style.left=(((geometry.x/resolution-this.offset.x)+xOffset)|0)+"px";node.style.top=(((geometry.y/resolution-this.offset.y)-(yOffset+height))|0)+"px";node.style.width=width+"px";node.style.height=height+"px";node.style.flip="y";fillColor="none";options.isStroked=false;}else if(this.isComplexSymbol(style.graphicName)){var cache=this.importSymbol(style.graphicName);node.path=cache.path;node.coordorigin=cache.left+","+cache.bottom;var size=cache.size;node.coordsize=size+","+size;this.drawCircle(node,geometry,style.pointRadius);node.style.flip="y";}else{this.drawCircle(node,geometry,style.pointRadius);}}
if(options.isFilled){node.fillcolor=fillColor;}else{node.filled="false";}
var fills=node.getElementsByTagName("fill");var fill=(fills.length==0)?null:fills[0];if(!options.isFilled){if(fill){node.removeChild(fill);}}else{if(!fill){fill=this.createNode('olv:fill',node.id+"_fill");}
fill.opacity=style.fillOpacity;if(node._geometryClass==="OpenLayers.Geometry.Point"&&style.externalGraphic){if(style.graphicOpacity){fill.opacity=style.graphicOpacity;}
fill.src=style.externalGraphic;fill.type="frame";if(!(style.graphicWidth&&style.graphicHeight)){fill.aspect="atmost";}}
if(fill.parentNode!=node){node.appendChild(fill);}}
var rotation=style.rotation;if((rotation!==undefined||node._rotation!==undefined)){node._rotation=rotation;if(style.externalGraphic){this.graphicRotate(node,xOffset,yOffset,style);fill.opacity=0;}else if(node._geometryClass==="OpenLayers.Geometry.Point"){node.style.rotation=rotation||0;}}
var strokes=node.getElementsByTagName("stroke");var stroke=(strokes.length==0)?null:strokes[0];if(!options.isStroked){node.stroked=false;if(stroke){stroke.on=false;}}else{if(!stroke){stroke=this.createNode('olv:stroke',node.id+"_stroke");node.appendChild(stroke);}
stroke.on=true;stroke.color=style.strokeColor;stroke.weight=style.strokeWidth+"px";stroke.opacity=style.strokeOpacity;stroke.endcap=style.strokeLinecap=='butt'?'flat':(style.strokeLinecap||'round');if(style.strokeDashstyle){stroke.dashstyle=this.dashStyle(style);}}
if(style.cursor!="inherit"&&style.cursor!=null){node.style.cursor=style.cursor;}
return node;},graphicRotate:function(node,xOffset,yOffset,style){var style=style||node._style;var rotation=style.rotation||0;var aspectRatio,size;if(!(style.graphicWidth&&style.graphicHeight)){var img=new Image();img.onreadystatechange=OpenLayers.Function.bind(function(){if(img.readyState=="complete"||img.readyState=="interactive"){aspectRatio=img.width/img.height;size=Math.max(style.pointRadius*2,style.graphicWidth||0,style.graphicHeight||0);xOffset=xOffset*aspectRatio;style.graphicWidth=size*aspectRatio;style.graphicHeight=size;this.graphicRotate(node,xOffset,yOffset,style);}},this);img.src=style.externalGraphic;return;}else{size=Math.max(style.graphicWidth,style.graphicHeight);aspectRatio=style.graphicWidth/style.graphicHeight;}
var width=Math.round(style.graphicWidth||size*aspectRatio);var height=Math.round(style.graphicHeight||size);node.style.width=width+"px";node.style.height=height+"px";var image=document.getElementById(node.id+"_image");if(!image){image=this.createNode("olv:imagedata",node.id+"_image");node.appendChild(image);}
image.style.width=width+"px";image.style.height=height+"px";image.src=style.externalGraphic;image.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader("+"src='', sizingMethod='scale')";var rot=rotation*Math.PI/180;var sintheta=Math.sin(rot);var costheta=Math.cos(rot);var filter="progid:DXImageTransform.Microsoft.Matrix(M11="+costheta+",M12="+(-sintheta)+",M21="+sintheta+",M22="+costheta+",SizingMethod='auto expand')\n";var opacity=style.graphicOpacity||style.fillOpacity;if(opacity&&opacity!=1){filter+="progid:DXImageTransform.Microsoft.BasicImage(opacity="+
opacity+")\n";}
node.style.filter=filter;var centerPoint=new OpenLayers.Geometry.Point(-xOffset,-yOffset);var imgBox=new OpenLayers.Bounds(0,0,width,height).toGeometry();imgBox.rotate(style.rotation,centerPoint);var imgBounds=imgBox.getBounds();node.style.left=Math.round(parseInt(node.style.left)+imgBounds.left)+"px";node.style.top=Math.round(parseInt(node.style.top)-imgBounds.bottom)+"px";},postDraw:function(node){node.style.visibility="visible";var fillColor=node._style.fillColor;var strokeColor=node._style.strokeColor;if(fillColor=="none"&&node.fillcolor!=fillColor){node.fillcolor=fillColor;}
if(strokeColor=="none"&&node.strokecolor!=strokeColor){node.strokecolor=strokeColor;}},setNodeDimension:function(node,geometry){var bbox=geometry.getBounds();if(bbox){var resolution=this.getResolution();var scaledBox=new OpenLayers.Bounds((bbox.left/resolution-this.offset.x)|0,(bbox.bottom/resolution-this.offset.y)|0,(bbox.right/resolution-this.offset.x)|0,(bbox.top/resolution-this.offset.y)|0);node.style.left=scaledBox.left+"px";node.style.top=scaledBox.top+"px";node.style.width=scaledBox.getWidth()+"px";node.style.height=scaledBox.getHeight()+"px";node.coordorigin=scaledBox.left+" "+scaledBox.top;node.coordsize=scaledBox.getWidth()+" "+scaledBox.getHeight();}},dashStyle:function(style){var dash=style.strokeDashstyle;switch(dash){case'solid':case'dot':case'dash':case'dashdot':case'longdash':case'longdashdot':return dash;default:var parts=dash.split(/[ ,]/);if(parts.length==2){if(1*parts[0]>=2*parts[1]){return"longdash";}
return(parts[0]==1||parts[1]==1)?"dot":"dash";}else if(parts.length==4){return(1*parts[0]>=2*parts[1])?"longdashdot":"dashdot";}
return"solid";}},createNode:function(type,id){var node=document.createElement(type);if(id){node.id=id;}
node.unselectable='on';node.onselectstart=OpenLayers.Function.False;return node;},nodeTypeCompare:function(node,type){var subType=type;var splitIndex=subType.indexOf(":");if(splitIndex!=-1){subType=subType.substr(splitIndex+1);}
var nodeName=node.nodeName;splitIndex=nodeName.indexOf(":");if(splitIndex!=-1){nodeName=nodeName.substr(splitIndex+1);}
return(subType==nodeName);},createRenderRoot:function(){return this.nodeFactory(this.container.id+"_vmlRoot","div");},createRoot:function(suffix){return this.nodeFactory(this.container.id+suffix,"olv:group");},drawPoint:function(node,geometry){return this.drawCircle(node,geometry,1);},drawCircle:function(node,geometry,radius){if(!isNaN(geometry.x)&&!isNaN(geometry.y)){var resolution=this.getResolution();node.style.left=(((geometry.x/resolution-this.offset.x)|0)-radius)+"px";node.style.top=(((geometry.y/resolution-this.offset.y)|0)-radius)+"px";var diameter=radius*2;node.style.width=diameter+"px";node.style.height=diameter+"px";return node;}
return false;},drawLineString:function(node,geometry){return this.drawLine(node,geometry,false);},drawLinearRing:function(node,geometry){return this.drawLine(node,geometry,true);},drawLine:function(node,geometry,closeLine){this.setNodeDimension(node,geometry);var resolution=this.getResolution();var numComponents=geometry.components.length;var parts=new Array(numComponents);var comp,x,y;for(var i=0;i<numComponents;i++){comp=geometry.components[i];x=(comp.x/resolution-this.offset.x)|0;y=(comp.y/resolution-this.offset.y)|0;parts[i]=" "+x+","+y+" l ";}
var end=(closeLine)?" x e":" e";node.path="m"+parts.join("")+end;return node;},drawPolygon:function(node,geometry){this.setNodeDimension(node,geometry);var resolution=this.getResolution();var path=[];var j,jj,points,area,first,second,i,ii,comp,pathComp,x,y;for(j=0,jj=geometry.components.length;j<jj;j++){path.push("m");points=geometry.components[j].components;area=(j===0);first=null;second=null;for(i=0,ii=points.length;i<ii;i++){comp=points[i];x=(comp.x/resolution-this.offset.x)|0;y=(comp.y/resolution-this.offset.y)|0;pathComp=" "+x+","+y;path.push(pathComp);if(i==0){path.push(" l");}
if(!area){if(!first){first=pathComp;}else if(first!=pathComp){if(!second){second=pathComp;}else if(second!=pathComp){area=true;}}}}
path.push(area?" x ":" ");}
path.push("e");node.path=path.join("");return node;},drawRectangle:function(node,geometry){var resolution=this.getResolution();node.style.left=((geometry.x/resolution-this.offset.x)|0)+"px";node.style.top=((geometry.y/resolution-this.offset.y)|0)+"px";node.style.width=((geometry.width/resolution)|0)+"px";node.style.height=((geometry.height/resolution)|0)+"px";return node;},drawText:function(featureId,style,location){var label=this.nodeFactory(featureId+this.LABEL_ID_SUFFIX,"olv:rect");var textbox=this.nodeFactory(featureId+this.LABEL_ID_SUFFIX+"_textbox","olv:textbox");var resolution=this.getResolution();label.style.left=((location.x/resolution-this.offset.x)|0)+"px";label.style.top=((location.y/resolution-this.offset.y)|0)+"px";label.style.flip="y";textbox.innerText=style.label;if(style.cursor!="inherit"&&style.cursor!=null){textbox.style.cursor=style.cursor;}
if(style.fontColor){textbox.style.color=style.fontColor;}
if(style.fontOpacity){textbox.style.filter='alpha(opacity='+(style.fontOpacity*100)+')';}
if(style.fontFamily){textbox.style.fontFamily=style.fontFamily;}
if(style.fontSize){textbox.style.fontSize=style.fontSize;}
if(style.fontWeight){textbox.style.fontWeight=style.fontWeight;}
if(style.fontStyle){textbox.style.fontStyle=style.fontStyle;}
if(style.labelSelect===true){label._featureId=featureId;textbox._featureId=featureId;textbox._geometry=location;textbox._geometryClass=location.CLASS_NAME;}
textbox.style.whiteSpace="nowrap";textbox.inset="1px,0px,0px,0px";if(!label.parentNode){label.appendChild(textbox);this.textRoot.appendChild(label);}
var align=style.labelAlign||"cm";if(align.length==1){align+="m";}
var xshift=textbox.clientWidth*(OpenLayers.Renderer.VML.LABEL_SHIFT[align.substr(0,1)]);var yshift=textbox.clientHeight*(OpenLayers.Renderer.VML.LABEL_SHIFT[align.substr(1,1)]);label.style.left=parseInt(label.style.left)-xshift-1+"px";label.style.top=parseInt(label.style.top)+yshift+"px";},drawSurface:function(node,geometry){this.setNodeDimension(node,geometry);var resolution=this.getResolution();var path=[];var comp,x,y;for(var i=0,len=geometry.components.length;i<len;i++){comp=geometry.components[i];x=(comp.x/resolution-this.offset.x)|0;y=(comp.y/resolution-this.offset.y)|0;if((i%3)==0&&(i/3)==0){path.push("m");}else if((i%3)==1){path.push(" c");}
path.push(" "+x+","+y);}
path.push(" x e");node.path=path.join("");return node;},moveRoot:function(renderer){var layer=this.map.getLayer(renderer.container.id);if(layer instanceof OpenLayers.Layer.Vector.RootContainer){layer=this.map.getLayer(this.container.id);}
layer&&layer.renderer.clear();OpenLayers.Renderer.Elements.prototype.moveRoot.apply(this,arguments);layer&&layer.redraw();},importSymbol:function(graphicName){var id=this.container.id+"-"+graphicName;var cache=this.symbolCache[id];if(cache){return cache;}
var symbol=OpenLayers.Renderer.symbol[graphicName];if(!symbol){throw new Error(graphicName+' is not a valid symbol name');}
var symbolExtent=new OpenLayers.Bounds(Number.MAX_VALUE,Number.MAX_VALUE,0,0);var pathitems=["m"];for(var i=0;i<symbol.length;i=i+2){var x=symbol[i];var y=symbol[i+1];symbolExtent.left=Math.min(symbolExtent.left,x);symbolExtent.bottom=Math.min(symbolExtent.bottom,y);symbolExtent.right=Math.max(symbolExtent.right,x);symbolExtent.top=Math.max(symbolExtent.top,y);pathitems.push(x);pathitems.push(y);if(i==0){pathitems.push("l");}}
pathitems.push("x e");var path=pathitems.join(" ");var diff=(symbolExtent.getWidth()-symbolExtent.getHeight())/2;if(diff>0){symbolExtent.bottom=symbolExtent.bottom-diff;symbolExtent.top=symbolExtent.top+diff;}else{symbolExtent.left=symbolExtent.left+diff;symbolExtent.right=symbolExtent.right-diff;}
cache={path:path,size:symbolExtent.getWidth(),left:symbolExtent.left,bottom:symbolExtent.bottom};this.symbolCache[id]=cache;return cache;},CLASS_NAME:"OpenLayers.Renderer.VML"});OpenLayers.Renderer.VML.LABEL_SHIFT={"l":0,"c":.5,"r":1,"t":0,"m":.5,"b":1};OpenLayers.Tween=OpenLayers.Class({INTERVAL:10,easing:null,begin:null,finish:null,duration:null,callbacks:null,time:null,interval:null,playing:false,initialize:function(easing){this.easing=(easing)?easing:OpenLayers.Easing.Expo.easeOut;},start:function(begin,finish,duration,options){this.playing=true;this.begin=begin;this.finish=finish;this.duration=duration;this.callbacks=options.callbacks;this.time=0;if(this.interval){window.clearInterval(this.interval);this.interval=null;}
if(this.callbacks&&this.callbacks.start){this.callbacks.start.call(this,this.begin);}
this.interval=window.setInterval(OpenLayers.Function.bind(this.play,this),this.INTERVAL);},stop:function(){if(!this.playing){return;}
if(this.callbacks&&this.callbacks.done){this.callbacks.done.call(this,this.finish);}
window.clearInterval(this.interval);this.interval=null;this.playing=false;},play:function(){var value={};for(var i in this.begin){var b=this.begin[i];var f=this.finish[i];if(b==null||f==null||isNaN(b)||isNaN(f)){OpenLayers.Console.error('invalid value for Tween');}
var c=f-b;value[i]=this.easing.apply(this,[this.time,b,c,this.duration]);}
this.time++;if(this.callbacks&&this.callbacks.eachStep){this.callbacks.eachStep.call(this,value);}
if(this.time>this.duration){this.stop();}},CLASS_NAME:"OpenLayers.Tween"});OpenLayers.Easing={CLASS_NAME:"OpenLayers.Easing"};OpenLayers.Easing.Linear={easeIn:function(t,b,c,d){return c*t/d+b;},easeOut:function(t,b,c,d){return c*t/d+b;},easeInOut:function(t,b,c,d){return c*t/d+b;},CLASS_NAME:"OpenLayers.Easing.Linear"};OpenLayers.Easing.Expo={easeIn:function(t,b,c,d){return(t==0)?b:c*Math.pow(2,10*(t/d-1))+b;},easeOut:function(t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;},easeInOut:function(t,b,c,d){if(t==0)return b;if(t==d)return b+c;if((t/=d/2)<1)return c/2*Math.pow(2,10*(t-1))+b;return c/2*(-Math.pow(2,-10*--t)+2)+b;},CLASS_NAME:"OpenLayers.Easing.Expo"};OpenLayers.Easing.Quad={easeIn:function(t,b,c,d){return c*(t/=d)*t+b;},easeOut:function(t,b,c,d){return-c*(t/=d)*(t-2)+b;},easeInOut:function(t,b,c,d){if((t/=d/2)<1)return c/2*t*t+b;return-c/2*((--t)*(t-2)-1)+b;},CLASS_NAME:"OpenLayers.Easing.Quad"};OpenLayers.Format=OpenLayers.Class({options:null,externalProjection:null,internalProjection:null,data:null,keepData:false,initialize:function(options){OpenLayers.Util.extend(this,options);this.options=options;},destroy:function(){},read:function(data){OpenLayers.Console.userError(OpenLayers.i18n("readNotImplemented"));},write:function(object){OpenLayers.Console.userError(OpenLayers.i18n("writeNotImplemented"));},CLASS_NAME:"OpenLayers.Format"});OpenLayers.Format.WKT=OpenLayers.Class(OpenLayers.Format,{initialize:function(options){this.regExes={'typeStr':/^\s*(\w+)\s*\(\s*(.*)\s*\)\s*$/,'spaces':/\s+/,'parenComma':/\)\s*,\s*\(/,'doubleParenComma':/\)\s*\)\s*,\s*\(\s*\(/,'trimParens':/^\s*\(?(.*?)\)?\s*$/};OpenLayers.Format.prototype.initialize.apply(this,[options]);},read:function(wkt){var features,type,str;wkt=wkt.replace(/[\n\r]/g," ");var matches=this.regExes.typeStr.exec(wkt);if(matches){type=matches[1].toLowerCase();str=matches[2];if(this.parse[type]){features=this.parse[type].apply(this,[str]);}
if(this.internalProjection&&this.externalProjection){if(features&&features.CLASS_NAME=="OpenLayers.Feature.Vector"){features.geometry.transform(this.externalProjection,this.internalProjection);}else if(features&&type!="geometrycollection"&&typeof features=="object"){for(var i=0,len=features.length;i<len;i++){var component=features[i];component.geometry.transform(this.externalProjection,this.internalProjection);}}}}
return features;},write:function(features){var collection,geometry,type,data,isCollection;if(features.constructor==Array){collection=features;isCollection=true;}else{collection=[features];isCollection=false;}
var pieces=[];if(isCollection){pieces.push('GEOMETRYCOLLECTION(');}
for(var i=0,len=collection.length;i<len;++i){if(isCollection&&i>0){pieces.push(',');}
geometry=collection[i].geometry;pieces.push(this.extractGeometry(geometry));}
if(isCollection){pieces.push(')');}
return pieces.join('');},extractGeometry:function(geometry){var type=geometry.CLASS_NAME.split('.')[2].toLowerCase();if(!this.extract[type]){return null;}
if(this.internalProjection&&this.externalProjection){geometry=geometry.clone();geometry.transform(this.internalProjection,this.externalProjection);}
var wktType=type=='collection'?'GEOMETRYCOLLECTION':type.toUpperCase();var data=wktType+'('+this.extract[type].apply(this,[geometry])+')';return data;},extract:{'point':function(point){return point.x+' '+point.y;},'multipoint':function(multipoint){var array=[];for(var i=0,len=multipoint.components.length;i<len;++i){array.push('('+
this.extract.point.apply(this,[multipoint.components[i]])+')');}
return array.join(',');},'linestring':function(linestring){var array=[];for(var i=0,len=linestring.components.length;i<len;++i){array.push(this.extract.point.apply(this,[linestring.components[i]]));}
return array.join(',');},'multilinestring':function(multilinestring){var array=[];for(var i=0,len=multilinestring.components.length;i<len;++i){array.push('('+
this.extract.linestring.apply(this,[multilinestring.components[i]])+')');}
return array.join(',');},'polygon':function(polygon){var array=[];for(var i=0,len=polygon.components.length;i<len;++i){array.push('('+
this.extract.linestring.apply(this,[polygon.components[i]])+')');}
return array.join(',');},'multipolygon':function(multipolygon){var array=[];for(var i=0,len=multipolygon.components.length;i<len;++i){array.push('('+
this.extract.polygon.apply(this,[multipolygon.components[i]])+')');}
return array.join(',');},'collection':function(collection){var array=[];for(var i=0,len=collection.components.length;i<len;++i){array.push(this.extractGeometry.apply(this,[collection.components[i]]));}
return array.join(',');}},parse:{'point':function(str){var coords=OpenLayers.String.trim(str).split(this.regExes.spaces);return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(coords[0],coords[1]));},'multipoint':function(str){var point;var points=OpenLayers.String.trim(str).split(',');var components=[];for(var i=0,len=points.length;i<len;++i){point=points[i].replace(this.regExes.trimParens,'$1');components.push(this.parse.point.apply(this,[point]).geometry);}
return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.MultiPoint(components));},'linestring':function(str){var points=OpenLayers.String.trim(str).split(',');var components=[];for(var i=0,len=points.length;i<len;++i){components.push(this.parse.point.apply(this,[points[i]]).geometry);}
return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.LineString(components));},'multilinestring':function(str){var line;var lines=OpenLayers.String.trim(str).split(this.regExes.parenComma);var components=[];for(var i=0,len=lines.length;i<len;++i){line=lines[i].replace(this.regExes.trimParens,'$1');components.push(this.parse.linestring.apply(this,[line]).geometry);}
return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.MultiLineString(components));},'polygon':function(str){var ring,linestring,linearring;var rings=OpenLayers.String.trim(str).split(this.regExes.parenComma);var components=[];for(var i=0,len=rings.length;i<len;++i){ring=rings[i].replace(this.regExes.trimParens,'$1');linestring=this.parse.linestring.apply(this,[ring]).geometry;linearring=new OpenLayers.Geometry.LinearRing(linestring.components);components.push(linearring);}
return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Polygon(components));},'multipolygon':function(str){var polygon;var polygons=OpenLayers.String.trim(str).split(this.regExes.doubleParenComma);var components=[];for(var i=0,len=polygons.length;i<len;++i){polygon=polygons[i].replace(this.regExes.trimParens,'$1');components.push(this.parse.polygon.apply(this,[polygon]).geometry);}
return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.MultiPolygon(components));},'geometrycollection':function(str){str=str.replace(/,\s*([A-Za-z])/g,'|$1');var wktArray=OpenLayers.String.trim(str).split('|');var components=[];for(var i=0,len=wktArray.length;i<len;++i){components.push(OpenLayers.Format.WKT.prototype.read.apply(this,[wktArray[i]]));}
return components;}},CLASS_NAME:"OpenLayers.Format.WKT"});OpenLayers.Geometry=OpenLayers.Class({id:null,parent:null,bounds:null,initialize:function(){this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+"_");},destroy:function(){this.id=null;this.bounds=null;},clone:function(){return new OpenLayers.Geometry();},setBounds:function(bounds){if(bounds){this.bounds=bounds.clone();}},clearBounds:function(){this.bounds=null;if(this.parent){this.parent.clearBounds();}},extendBounds:function(newBounds){var bounds=this.getBounds();if(!bounds){this.setBounds(newBounds);}else{this.bounds.extend(newBounds);}},getBounds:function(){if(this.bounds==null){this.calculateBounds();}
return this.bounds;},calculateBounds:function(){},distanceTo:function(geometry,options){},getVertices:function(nodes){},atPoint:function(lonlat,toleranceLon,toleranceLat){var atPoint=false;var bounds=this.getBounds();if((bounds!=null)&&(lonlat!=null)){var dX=(toleranceLon!=null)?toleranceLon:0;var dY=(toleranceLat!=null)?toleranceLat:0;var toleranceBounds=new OpenLayers.Bounds(this.bounds.left-dX,this.bounds.bottom-dY,this.bounds.right+dX,this.bounds.top+dY);atPoint=toleranceBounds.containsLonLat(lonlat);}
return atPoint;},getLength:function(){return 0.0;},getArea:function(){return 0.0;},getCentroid:function(){return null;},toString:function(){return OpenLayers.Format.WKT.prototype.write(new OpenLayers.Feature.Vector(this));},CLASS_NAME:"OpenLayers.Geometry"});OpenLayers.Geometry.fromWKT=function(wkt){var format=arguments.callee.format;if(!format){format=new OpenLayers.Format.WKT();arguments.callee.format=format;}
var geom;var result=format.read(wkt);if(result instanceof OpenLayers.Feature.Vector){geom=result.geometry;}else if(OpenLayers.Util.isArray(result)){var len=result.length;var components=new Array(len);for(var i=0;i<len;++i){components[i]=result[i].geometry;}
geom=new OpenLayers.Geometry.Collection(components);}
return geom;};OpenLayers.Geometry.segmentsIntersect=function(seg1,seg2,options){var point=options&&options.point;var tolerance=options&&options.tolerance;var intersection=false;var x11_21=seg1.x1-seg2.x1;var y11_21=seg1.y1-seg2.y1;var x12_11=seg1.x2-seg1.x1;var y12_11=seg1.y2-seg1.y1;var y22_21=seg2.y2-seg2.y1;var x22_21=seg2.x2-seg2.x1;var d=(y22_21*x12_11)-(x22_21*y12_11);var n1=(x22_21*y11_21)-(y22_21*x11_21);var n2=(x12_11*y11_21)-(y12_11*x11_21);if(d==0){if(n1==0&&n2==0){intersection=true;}}else{var along1=n1/d;var along2=n2/d;if(along1>=0&&along1<=1&&along2>=0&&along2<=1){if(!point){intersection=true;}else{var x=seg1.x1+(along1*x12_11);var y=seg1.y1+(along1*y12_11);intersection=new OpenLayers.Geometry.Point(x,y);}}}
if(tolerance){var dist;if(intersection){if(point){var segs=[seg1,seg2];var seg,x,y;outer:for(var i=0;i<2;++i){seg=segs[i];for(var j=1;j<3;++j){x=seg["x"+j];y=seg["y"+j];dist=Math.sqrt(Math.pow(x-intersection.x,2)+
Math.pow(y-intersection.y,2));if(dist<tolerance){intersection.x=x;intersection.y=y;break outer;}}}}}else{var segs=[seg1,seg2];var source,target,x,y,p,result;outer:for(var i=0;i<2;++i){source=segs[i];target=segs[(i+1)%2];for(var j=1;j<3;++j){p={x:source["x"+j],y:source["y"+j]};result=OpenLayers.Geometry.distanceToSegment(p,target);if(result.distance<tolerance){if(point){intersection=new OpenLayers.Geometry.Point(p.x,p.y);}else{intersection=true;}
break outer;}}}}}
return intersection;};OpenLayers.Geometry.distanceToSegment=function(point,segment){var x0=point.x;var y0=point.y;var x1=segment.x1;var y1=segment.y1;var x2=segment.x2;var y2=segment.y2;var dx=x2-x1;var dy=y2-y1;var along=((dx*(x0-x1))+(dy*(y0-y1)))/(Math.pow(dx,2)+Math.pow(dy,2));var x,y;if(along<=0.0){x=x1;y=y1;}else if(along>=1.0){x=x2;y=y2;}else{x=x1+along*dx;y=y1+along*dy;}
return{distance:Math.sqrt(Math.pow(x-x0,2)+Math.pow(y-y0,2)),x:x,y:y};};OpenLayers.Geometry.Collection=OpenLayers.Class(OpenLayers.Geometry,{components:null,componentTypes:null,initialize:function(components){OpenLayers.Geometry.prototype.initialize.apply(this,arguments);this.components=[];if(components!=null){this.addComponents(components);}},destroy:function(){this.components.length=0;this.components=null;OpenLayers.Geometry.prototype.destroy.apply(this,arguments);},clone:function(){var geometry=eval("new "+this.CLASS_NAME+"()");for(var i=0,len=this.components.length;i<len;i++){geometry.addComponent(this.components[i].clone());}
OpenLayers.Util.applyDefaults(geometry,this);return geometry;},getComponentsString:function(){var strings=[];for(var i=0,len=this.components.length;i<len;i++){strings.push(this.components[i].toShortString());}
return strings.join(",");},calculateBounds:function(){this.bounds=null;var bounds=new OpenLayers.Bounds();var components=this.components;if(components){for(var i=0,len=components.length;i<len;i++){bounds.extend(components[i].getBounds());}}
if(bounds.left!=null&&bounds.bottom!=null&&bounds.right!=null&&bounds.top!=null){this.setBounds(bounds);}},addComponents:function(components){if(!(OpenLayers.Util.isArray(components))){components=[components];}
for(var i=0,len=components.length;i<len;i++){this.addComponent(components[i]);}},addComponent:function(component,index){var added=false;if(component){if(this.componentTypes==null||(OpenLayers.Util.indexOf(this.componentTypes,component.CLASS_NAME)>-1)){if(index!=null&&(index<this.components.length)){var components1=this.components.slice(0,index);var components2=this.components.slice(index,this.components.length);components1.push(component);this.components=components1.concat(components2);}else{this.components.push(component);}
component.parent=this;this.clearBounds();added=true;}}
return added;},removeComponents:function(components){var removed=false;if(!(OpenLayers.Util.isArray(components))){components=[components];}
for(var i=components.length-1;i>=0;--i){removed=this.removeComponent(components[i])||removed;}
return removed;},removeComponent:function(component){OpenLayers.Util.removeItem(this.components,component);this.clearBounds();return true;},getLength:function(){var length=0.0;for(var i=0,len=this.components.length;i<len;i++){length+=this.components[i].getLength();}
return length;},getArea:function(){var area=0.0;for(var i=0,len=this.components.length;i<len;i++){area+=this.components[i].getArea();}
return area;},getGeodesicArea:function(projection){var area=0.0;for(var i=0,len=this.components.length;i<len;i++){area+=this.components[i].getGeodesicArea(projection);}
return area;},getCentroid:function(weighted){if(!weighted){return this.components.length&&this.components[0].getCentroid();}
var len=this.components.length;if(!len){return false;}
var areas=[];var centroids=[];var areaSum=0;var minArea=Number.MAX_VALUE;var component;for(var i=0;i<len;++i){component=this.components[i];var area=component.getArea();var centroid=component.getCentroid(true);if(isNaN(area)||isNaN(centroid.x)||isNaN(centroid.y)){continue;}
areas.push(area);areaSum+=area;minArea=(area<minArea&&area>0)?area:minArea;centroids.push(centroid);}
len=areas.length;if(areaSum===0){for(var i=0;i<len;++i){areas[i]=1;}
areaSum=areas.length;}else{for(var i=0;i<len;++i){areas[i]/=minArea;}
areaSum/=minArea;}
var xSum=0,ySum=0,centroid,area;for(var i=0;i<len;++i){centroid=centroids[i];area=areas[i];xSum+=centroid.x*area;ySum+=centroid.y*area;}
return new OpenLayers.Geometry.Point(xSum/areaSum,ySum/areaSum);},getGeodesicLength:function(projection){var length=0.0;for(var i=0,len=this.components.length;i<len;i++){length+=this.components[i].getGeodesicLength(projection);}
return length;},move:function(x,y){for(var i=0,len=this.components.length;i<len;i++){this.components[i].move(x,y);}},rotate:function(angle,origin){for(var i=0,len=this.components.length;i<len;++i){this.components[i].rotate(angle,origin);}},resize:function(scale,origin,ratio){for(var i=0;i<this.components.length;++i){this.components[i].resize(scale,origin,ratio);}
return this;},distanceTo:function(geometry,options){var edge=!(options&&options.edge===false);var details=edge&&options&&options.details;var result,best,distance;var min=Number.POSITIVE_INFINITY;for(var i=0,len=this.components.length;i<len;++i){result=this.components[i].distanceTo(geometry,options);distance=details?result.distance:result;if(distance<min){min=distance;best=result;if(min==0){break;}}}
return best;},equals:function(geometry){var equivalent=true;if(!geometry||!geometry.CLASS_NAME||(this.CLASS_NAME!=geometry.CLASS_NAME)){equivalent=false;}else if(!(OpenLayers.Util.isArray(geometry.components))||(geometry.components.length!=this.components.length)){equivalent=false;}else{for(var i=0,len=this.components.length;i<len;++i){if(!this.components[i].equals(geometry.components[i])){equivalent=false;break;}}}
return equivalent;},transform:function(source,dest){if(source&&dest){for(var i=0,len=this.components.length;i<len;i++){var component=this.components[i];component.transform(source,dest);}
this.bounds=null;}
return this;},intersects:function(geometry){var intersect=false;for(var i=0,len=this.components.length;i<len;++i){intersect=geometry.intersects(this.components[i]);if(intersect){break;}}
return intersect;},getVertices:function(nodes){var vertices=[];for(var i=0,len=this.components.length;i<len;++i){Array.prototype.push.apply(vertices,this.components[i].getVertices(nodes));}
return vertices;},CLASS_NAME:"OpenLayers.Geometry.Collection"});OpenLayers.Geometry.Point=OpenLayers.Class(OpenLayers.Geometry,{x:null,y:null,initialize:function(x,y){OpenLayers.Geometry.prototype.initialize.apply(this,arguments);this.x=parseFloat(x);this.y=parseFloat(y);},clone:function(obj){if(obj==null){obj=new OpenLayers.Geometry.Point(this.x,this.y);}
OpenLayers.Util.applyDefaults(obj,this);return obj;},calculateBounds:function(){this.bounds=new OpenLayers.Bounds(this.x,this.y,this.x,this.y);},distanceTo:function(geometry,options){var edge=!(options&&options.edge===false);var details=edge&&options&&options.details;var distance,x0,y0,x1,y1,result;if(geometry instanceof OpenLayers.Geometry.Point){x0=this.x;y0=this.y;x1=geometry.x;y1=geometry.y;distance=Math.sqrt(Math.pow(x0-x1,2)+Math.pow(y0-y1,2));result=!details?distance:{x0:x0,y0:y0,x1:x1,y1:y1,distance:distance};}else{result=geometry.distanceTo(this,options);if(details){result={x0:result.x1,y0:result.y1,x1:result.x0,y1:result.y0,distance:result.distance};}}
return result;},equals:function(geom){var equals=false;if(geom!=null){equals=((this.x==geom.x&&this.y==geom.y)||(isNaN(this.x)&&isNaN(this.y)&&isNaN(geom.x)&&isNaN(geom.y)));}
return equals;},toShortString:function(){return(this.x+", "+this.y);},move:function(x,y){this.x=this.x+x;this.y=this.y+y;this.clearBounds();},rotate:function(angle,origin){angle*=Math.PI/180;var radius=this.distanceTo(origin);var theta=angle+Math.atan2(this.y-origin.y,this.x-origin.x);this.x=origin.x+(radius*Math.cos(theta));this.y=origin.y+(radius*Math.sin(theta));this.clearBounds();},getCentroid:function(){return new OpenLayers.Geometry.Point(this.x,this.y);},resize:function(scale,origin,ratio){ratio=(ratio==undefined)?1:ratio;this.x=origin.x+(scale*ratio*(this.x-origin.x));this.y=origin.y+(scale*(this.y-origin.y));this.clearBounds();return this;},intersects:function(geometry){var intersect=false;if(geometry.CLASS_NAME=="OpenLayers.Geometry.Point"){intersect=this.equals(geometry);}else{intersect=geometry.intersects(this);}
return intersect;},transform:function(source,dest){if((source&&dest)){OpenLayers.Projection.transform(this,source,dest);this.bounds=null;}
return this;},getVertices:function(nodes){return[this];},CLASS_NAME:"OpenLayers.Geometry.Point"});OpenLayers.Geometry.MultiPoint=OpenLayers.Class(OpenLayers.Geometry.Collection,{componentTypes:["OpenLayers.Geometry.Point"],initialize:function(components){OpenLayers.Geometry.Collection.prototype.initialize.apply(this,arguments);},addPoint:function(point,index){this.addComponent(point,index);},removePoint:function(point){this.removeComponent(point);},CLASS_NAME:"OpenLayers.Geometry.MultiPoint"});OpenLayers.Geometry.Curve=OpenLayers.Class(OpenLayers.Geometry.MultiPoint,{componentTypes:["OpenLayers.Geometry.Point"],initialize:function(points){OpenLayers.Geometry.MultiPoint.prototype.initialize.apply(this,arguments);},getLength:function(){var length=0.0;if(this.components&&(this.components.length>1)){for(var i=1,len=this.components.length;i<len;i++){length+=this.components[i-1].distanceTo(this.components[i]);}}
return length;},getGeodesicLength:function(projection){var geom=this;if(projection){var gg=new OpenLayers.Projection("EPSG:4326");if(!gg.equals(projection)){geom=this.clone().transform(projection,gg);}}
var length=0.0;if(geom.components&&(geom.components.length>1)){var p1,p2;for(var i=1,len=geom.components.length;i<len;i++){p1=geom.components[i-1];p2=geom.components[i];length+=OpenLayers.Util.distVincenty({lon:p1.x,lat:p1.y},{lon:p2.x,lat:p2.y});}}
return length*1000;},CLASS_NAME:"OpenLayers.Geometry.Curve"});OpenLayers.Geometry.LineString=OpenLayers.Class(OpenLayers.Geometry.Curve,{initialize:function(points){OpenLayers.Geometry.Curve.prototype.initialize.apply(this,arguments);},removeComponent:function(point){var removed=this.components&&(this.components.length>2);if(removed){OpenLayers.Geometry.Collection.prototype.removeComponent.apply(this,arguments);}
return removed;},intersects:function(geometry){var intersect=false;var type=geometry.CLASS_NAME;if(type=="OpenLayers.Geometry.LineString"||type=="OpenLayers.Geometry.LinearRing"||type=="OpenLayers.Geometry.Point"){var segs1=this.getSortedSegments();var segs2;if(type=="OpenLayers.Geometry.Point"){segs2=[{x1:geometry.x,y1:geometry.y,x2:geometry.x,y2:geometry.y}];}else{segs2=geometry.getSortedSegments();}
var seg1,seg1x1,seg1x2,seg1y1,seg1y2,seg2,seg2y1,seg2y2;outer:for(var i=0,len=segs1.length;i<len;++i){seg1=segs1[i];seg1x1=seg1.x1;seg1x2=seg1.x2;seg1y1=seg1.y1;seg1y2=seg1.y2;inner:for(var j=0,jlen=segs2.length;j<jlen;++j){seg2=segs2[j];if(seg2.x1>seg1x2){break;}
if(seg2.x2<seg1x1){continue;}
seg2y1=seg2.y1;seg2y2=seg2.y2;if(Math.min(seg2y1,seg2y2)>Math.max(seg1y1,seg1y2)){continue;}
if(Math.max(seg2y1,seg2y2)<Math.min(seg1y1,seg1y2)){continue;}
if(OpenLayers.Geometry.segmentsIntersect(seg1,seg2)){intersect=true;break outer;}}}}else{intersect=geometry.intersects(this);}
return intersect;},getSortedSegments:function(){var numSeg=this.components.length-1;var segments=new Array(numSeg),point1,point2;for(var i=0;i<numSeg;++i){point1=this.components[i];point2=this.components[i+1];if(point1.x<point2.x){segments[i]={x1:point1.x,y1:point1.y,x2:point2.x,y2:point2.y};}else{segments[i]={x1:point2.x,y1:point2.y,x2:point1.x,y2:point1.y};}}
function byX1(seg1,seg2){return seg1.x1-seg2.x1;}
return segments.sort(byX1);},splitWithSegment:function(seg,options){var edge=!(options&&options.edge===false);var tolerance=options&&options.tolerance;var lines=[];var verts=this.getVertices();var points=[];var intersections=[];var split=false;var vert1,vert2,point;var node,vertex,target;var interOptions={point:true,tolerance:tolerance};var result=null;for(var i=0,stop=verts.length-2;i<=stop;++i){vert1=verts[i];points.push(vert1.clone());vert2=verts[i+1];target={x1:vert1.x,y1:vert1.y,x2:vert2.x,y2:vert2.y};point=OpenLayers.Geometry.segmentsIntersect(seg,target,interOptions);if(point instanceof OpenLayers.Geometry.Point){if((point.x===seg.x1&&point.y===seg.y1)||(point.x===seg.x2&&point.y===seg.y2)||point.equals(vert1)||point.equals(vert2)){vertex=true;}else{vertex=false;}
if(vertex||edge){if(!point.equals(intersections[intersections.length-1])){intersections.push(point.clone());}
if(i===0){if(point.equals(vert1)){continue;}}
if(point.equals(vert2)){continue;}
split=true;if(!point.equals(vert1)){points.push(point);}
lines.push(new OpenLayers.Geometry.LineString(points));points=[point.clone()];}}}
if(split){points.push(vert2.clone());lines.push(new OpenLayers.Geometry.LineString(points));}
if(intersections.length>0){var xDir=seg.x1<seg.x2?1:-1;var yDir=seg.y1<seg.y2?1:-1;result={lines:lines,points:intersections.sort(function(p1,p2){return(xDir*p1.x-xDir*p2.x)||(yDir*p1.y-yDir*p2.y);})};}
return result;},split:function(target,options){var results=null;var mutual=options&&options.mutual;var sourceSplit,targetSplit,sourceParts,targetParts;if(target instanceof OpenLayers.Geometry.LineString){var verts=this.getVertices();var vert1,vert2,seg,splits,lines,point;var points=[];sourceParts=[];for(var i=0,stop=verts.length-2;i<=stop;++i){vert1=verts[i];vert2=verts[i+1];seg={x1:vert1.x,y1:vert1.y,x2:vert2.x,y2:vert2.y};targetParts=targetParts||[target];if(mutual){points.push(vert1.clone());}
for(var j=0;j<targetParts.length;++j){splits=targetParts[j].splitWithSegment(seg,options);if(splits){lines=splits.lines;if(lines.length>0){lines.unshift(j,1);Array.prototype.splice.apply(targetParts,lines);j+=lines.length-2;}
if(mutual){for(var k=0,len=splits.points.length;k<len;++k){point=splits.points[k];if(!point.equals(vert1)){points.push(point);sourceParts.push(new OpenLayers.Geometry.LineString(points));if(point.equals(vert2)){points=[];}else{points=[point.clone()];}}}}}}}
if(mutual&&sourceParts.length>0&&points.length>0){points.push(vert2.clone());sourceParts.push(new OpenLayers.Geometry.LineString(points));}}else{results=target.splitWith(this,options);}
if(targetParts&&targetParts.length>1){targetSplit=true;}else{targetParts=[];}
if(sourceParts&&sourceParts.length>1){sourceSplit=true;}else{sourceParts=[];}
if(targetSplit||sourceSplit){if(mutual){results=[sourceParts,targetParts];}else{results=targetParts;}}
return results;},splitWith:function(geometry,options){return geometry.split(this,options);},getVertices:function(nodes){var vertices;if(nodes===true){vertices=[this.components[0],this.components[this.components.length-1]];}else if(nodes===false){vertices=this.components.slice(1,this.components.length-1);}else{vertices=this.components.slice();}
return vertices;},distanceTo:function(geometry,options){var edge=!(options&&options.edge===false);var details=edge&&options&&options.details;var result,best={};var min=Number.POSITIVE_INFINITY;if(geometry instanceof OpenLayers.Geometry.Point){var segs=this.getSortedSegments();var x=geometry.x;var y=geometry.y;var seg;for(var i=0,len=segs.length;i<len;++i){seg=segs[i];result=OpenLayers.Geometry.distanceToSegment(geometry,seg);if(result.distance<min){min=result.distance;best=result;if(min===0){break;}}else{if(seg.x2>x&&((y>seg.y1&&y<seg.y2)||(y<seg.y1&&y>seg.y2))){break;}}}
if(details){best={distance:best.distance,x0:best.x,y0:best.y,x1:x,y1:y};}else{best=best.distance;}}else if(geometry instanceof OpenLayers.Geometry.LineString){var segs0=this.getSortedSegments();var segs1=geometry.getSortedSegments();var seg0,seg1,intersection,x0,y0;var len1=segs1.length;var interOptions={point:true};outer:for(var i=0,len=segs0.length;i<len;++i){seg0=segs0[i];x0=seg0.x1;y0=seg0.y1;for(var j=0;j<len1;++j){seg1=segs1[j];intersection=OpenLayers.Geometry.segmentsIntersect(seg0,seg1,interOptions);if(intersection){min=0;best={distance:0,x0:intersection.x,y0:intersection.y,x1:intersection.x,y1:intersection.y};break outer;}else{result=OpenLayers.Geometry.distanceToSegment({x:x0,y:y0},seg1);if(result.distance<min){min=result.distance;best={distance:min,x0:x0,y0:y0,x1:result.x,y1:result.y};}}}}
if(!details){best=best.distance;}
if(min!==0){if(seg0){result=geometry.distanceTo(new OpenLayers.Geometry.Point(seg0.x2,seg0.y2),options);var dist=details?result.distance:result;if(dist<min){if(details){best={distance:min,x0:result.x1,y0:result.y1,x1:result.x0,y1:result.y0};}else{best=dist;}}}}}else{best=geometry.distanceTo(this,options);if(details){best={distance:best.distance,x0:best.x1,y0:best.y1,x1:best.x0,y1:best.y0};}}
return best;},simplify:function(tolerance){if(this&&this!==null){var points=this.getVertices();if(points.length<3){return this;}
var compareNumbers=function(a,b){return(a-b);};var douglasPeuckerReduction=function(points,firstPoint,lastPoint,tolerance){var maxDistance=0;var indexFarthest=0;for(var index=firstPoint,distance;index<lastPoint;index++){distance=perpendicularDistance(points[firstPoint],points[lastPoint],points[index]);if(distance>maxDistance){maxDistance=distance;indexFarthest=index;}}
if(maxDistance>tolerance&&indexFarthest!=firstPoint){pointIndexsToKeep.push(indexFarthest);douglasPeuckerReduction(points,firstPoint,indexFarthest,tolerance);douglasPeuckerReduction(points,indexFarthest,lastPoint,tolerance);}};var perpendicularDistance=function(point1,point2,point){var area=Math.abs(0.5*(point1.x*point2.y+point2.x*point.y+point.x*point1.y-point2.x*point1.y-point.x*point2.y-point1.x*point.y));var bottom=Math.sqrt(Math.pow(point1.x-point2.x,2)+Math.pow(point1.y-point2.y,2));var height=area/bottom*2;return height;};var firstPoint=0;var lastPoint=points.length-1;var pointIndexsToKeep=[];pointIndexsToKeep.push(firstPoint);pointIndexsToKeep.push(lastPoint);while(points[firstPoint].equals(points[lastPoint])){lastPoint--;pointIndexsToKeep.push(lastPoint);}
douglasPeuckerReduction(points,firstPoint,lastPoint,tolerance);var returnPoints=[];pointIndexsToKeep.sort(compareNumbers);for(var index=0;index<pointIndexsToKeep.length;index++){returnPoints.push(points[pointIndexsToKeep[index]]);}
return new OpenLayers.Geometry.LineString(returnPoints);}
else{return this;}},CLASS_NAME:"OpenLayers.Geometry.LineString"});OpenLayers.Geometry.LinearRing=OpenLayers.Class(OpenLayers.Geometry.LineString,{componentTypes:["OpenLayers.Geometry.Point"],initialize:function(points){OpenLayers.Geometry.LineString.prototype.initialize.apply(this,arguments);},addComponent:function(point,index){var added=false;var lastPoint=this.components.pop();if(index!=null||!point.equals(lastPoint)){added=OpenLayers.Geometry.Collection.prototype.addComponent.apply(this,arguments);}
var firstPoint=this.components[0];OpenLayers.Geometry.Collection.prototype.addComponent.apply(this,[firstPoint]);return added;},removeComponent:function(point){var removed=this.components&&(this.components.length>3);if(removed){this.components.pop();OpenLayers.Geometry.Collection.prototype.removeComponent.apply(this,arguments);var firstPoint=this.components[0];OpenLayers.Geometry.Collection.prototype.addComponent.apply(this,[firstPoint]);}
return removed;},move:function(x,y){for(var i=0,len=this.components.length;i<len-1;i++){this.components[i].move(x,y);}},rotate:function(angle,origin){for(var i=0,len=this.components.length;i<len-1;++i){this.components[i].rotate(angle,origin);}},resize:function(scale,origin,ratio){for(var i=0,len=this.components.length;i<len-1;++i){this.components[i].resize(scale,origin,ratio);}
return this;},transform:function(source,dest){if(source&&dest){for(var i=0,len=this.components.length;i<len-1;i++){var component=this.components[i];component.transform(source,dest);}
this.bounds=null;}
return this;},getCentroid:function(){if(this.components&&(this.components.length>2)){var sumX=0.0;var sumY=0.0;for(var i=0;i<this.components.length-1;i++){var b=this.components[i];var c=this.components[i+1];sumX+=(b.x+c.x)*(b.x*c.y-c.x*b.y);sumY+=(b.y+c.y)*(b.x*c.y-c.x*b.y);}
var area=-1*this.getArea();var x=sumX/(6*area);var y=sumY/(6*area);return new OpenLayers.Geometry.Point(x,y);}else{return null;}},getArea:function(){var area=0.0;if(this.components&&(this.components.length>2)){var sum=0.0;for(var i=0,len=this.components.length;i<len-1;i++){var b=this.components[i];var c=this.components[i+1];sum+=(b.x+c.x)*(c.y-b.y);}
area=-sum/2.0;}
return area;},getGeodesicArea:function(projection){var ring=this;if(projection){var gg=new OpenLayers.Projection("EPSG:4326");if(!gg.equals(projection)){ring=this.clone().transform(projection,gg);}}
var area=0.0;var len=ring.components&&ring.components.length;if(len>2){var p1,p2;for(var i=0;i<len-1;i++){p1=ring.components[i];p2=ring.components[i+1];area+=OpenLayers.Util.rad(p2.x-p1.x)*(2+Math.sin(OpenLayers.Util.rad(p1.y))+
Math.sin(OpenLayers.Util.rad(p2.y)));}
area=area*6378137.0*6378137.0/2.0;}
return area;},containsPoint:function(point){var approx=OpenLayers.Number.limitSigDigs;var digs=14;var px=approx(point.x,digs);var py=approx(point.y,digs);function getX(y,x1,y1,x2,y2){return(((x1-x2)*y)+((x2*y1)-(x1*y2)))/(y1-y2);}
var numSeg=this.components.length-1;var start,end,x1,y1,x2,y2,cx,cy;var crosses=0;for(var i=0;i<numSeg;++i){start=this.components[i];x1=approx(start.x,digs);y1=approx(start.y,digs);end=this.components[i+1];x2=approx(end.x,digs);y2=approx(end.y,digs);if(y1==y2){if(py==y1){if(x1<=x2&&(px>=x1&&px<=x2)||x1>=x2&&(px<=x1&&px>=x2)){crosses=-1;break;}}
continue;}
cx=approx(getX(py,x1,y1,x2,y2),digs);if(cx==px){if(y1<y2&&(py>=y1&&py<=y2)||y1>y2&&(py<=y1&&py>=y2)){crosses=-1;break;}}
if(cx<=px){continue;}
if(x1!=x2&&(cx<Math.min(x1,x2)||cx>Math.max(x1,x2))){continue;}
if(y1<y2&&(py>=y1&&py<y2)||y1>y2&&(py<y1&&py>=y2)){++crosses;}}
var contained=(crosses==-1)?1:!!(crosses&1);return contained;},intersects:function(geometry){var intersect=false;if(geometry.CLASS_NAME=="OpenLayers.Geometry.Point"){intersect=this.containsPoint(geometry);}else if(geometry.CLASS_NAME=="OpenLayers.Geometry.LineString"){intersect=geometry.intersects(this);}else if(geometry.CLASS_NAME=="OpenLayers.Geometry.LinearRing"){intersect=OpenLayers.Geometry.LineString.prototype.intersects.apply(this,[geometry]);}else{for(var i=0,len=geometry.components.length;i<len;++i){intersect=geometry.components[i].intersects(this);if(intersect){break;}}}
return intersect;},getVertices:function(nodes){return(nodes===true)?[]:this.components.slice(0,this.components.length-1);},CLASS_NAME:"OpenLayers.Geometry.LinearRing"});OpenLayers.Geometry.Polygon=OpenLayers.Class(OpenLayers.Geometry.Collection,{componentTypes:["OpenLayers.Geometry.LinearRing"],initialize:function(components){OpenLayers.Geometry.Collection.prototype.initialize.apply(this,arguments);},getArea:function(){var area=0.0;if(this.components&&(this.components.length>0)){area+=Math.abs(this.components[0].getArea());for(var i=1,len=this.components.length;i<len;i++){area-=Math.abs(this.components[i].getArea());}}
return area;},getGeodesicArea:function(projection){var area=0.0;if(this.components&&(this.components.length>0)){area+=Math.abs(this.components[0].getGeodesicArea(projection));for(var i=1,len=this.components.length;i<len;i++){area-=Math.abs(this.components[i].getGeodesicArea(projection));}}
return area;},containsPoint:function(point){var numRings=this.components.length;var contained=false;if(numRings>0){contained=this.components[0].containsPoint(point);if(contained!==1){if(contained&&numRings>1){var hole;for(var i=1;i<numRings;++i){hole=this.components[i].containsPoint(point);if(hole){if(hole===1){contained=1;}else{contained=false;}
break;}}}}}
return contained;},intersects:function(geometry){var intersect=false;var i,len;if(geometry.CLASS_NAME=="OpenLayers.Geometry.Point"){intersect=this.containsPoint(geometry);}else if(geometry.CLASS_NAME=="OpenLayers.Geometry.LineString"||geometry.CLASS_NAME=="OpenLayers.Geometry.LinearRing"){for(i=0,len=this.components.length;i<len;++i){intersect=geometry.intersects(this.components[i]);if(intersect){break;}}
if(!intersect){for(i=0,len=geometry.components.length;i<len;++i){intersect=this.containsPoint(geometry.components[i]);if(intersect){break;}}}}else{for(i=0,len=geometry.components.length;i<len;++i){intersect=this.intersects(geometry.components[i]);if(intersect){break;}}}
if(!intersect&&geometry.CLASS_NAME=="OpenLayers.Geometry.Polygon"){var ring=this.components[0];for(i=0,len=ring.components.length;i<len;++i){intersect=geometry.containsPoint(ring.components[i]);if(intersect){break;}}}
return intersect;},distanceTo:function(geometry,options){var edge=!(options&&options.edge===false);var result;if(!edge&&this.intersects(geometry)){result=0;}else{result=OpenLayers.Geometry.Collection.prototype.distanceTo.apply(this,[geometry,options]);}
return result;},CLASS_NAME:"OpenLayers.Geometry.Polygon"});OpenLayers.Geometry.Polygon.createRegularPolygon=function(origin,radius,sides,rotation){var angle=Math.PI*((1/sides)-(1/2));if(rotation){angle+=(rotation/180)*Math.PI;}
var rotatedAngle,x,y;var points=[];for(var i=0;i<sides;++i){rotatedAngle=angle+(i*2*Math.PI/sides);x=origin.x+(radius*Math.cos(rotatedAngle));y=origin.y+(radius*Math.sin(rotatedAngle));points.push(new OpenLayers.Geometry.Point(x,y));}
var ring=new OpenLayers.Geometry.LinearRing(points);return new OpenLayers.Geometry.Polygon([ring]);};OpenLayers.Event={observers:false,KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,element:function(event){return event.target||event.srcElement;},isSingleTouch:function(event){return event.touches&&event.touches.length==1;},isMultiTouch:function(event){return event.touches&&event.touches.length>1;},isLeftClick:function(event){return(((event.which)&&(event.which==1))||((event.button)&&(event.button==1)));},isRightClick:function(event){return(((event.which)&&(event.which==3))||((event.button)&&(event.button==2)));},stop:function(event,allowDefault){if(!allowDefault){if(event.preventDefault){event.preventDefault();}else{event.returnValue=false;}}
if(event.stopPropagation){event.stopPropagation();}else{event.cancelBubble=true;}},findElement:function(event,tagName){var element=OpenLayers.Event.element(event);while(element.parentNode&&(!element.tagName||(element.tagName.toUpperCase()!=tagName.toUpperCase()))){element=element.parentNode;}
return element;},observe:function(elementParam,name,observer,useCapture){var element=OpenLayers.Util.getElement(elementParam);useCapture=useCapture||false;if(name=='keypress'&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.attachEvent)){name='keydown';}
if(!this.observers){this.observers={};}
if(!element._eventCacheID){var idPrefix="eventCacheID_";if(element.id){idPrefix=element.id+"_"+idPrefix;}
element._eventCacheID=OpenLayers.Util.createUniqueID(idPrefix);}
var cacheID=element._eventCacheID;if(!this.observers[cacheID]){this.observers[cacheID]=[];}
this.observers[cacheID].push({'element':element,'name':name,'observer':observer,'useCapture':useCapture});if(element.addEventListener){element.addEventListener(name,observer,useCapture);}else if(element.attachEvent){element.attachEvent('on'+name,observer);}},stopObservingElement:function(elementParam){var element=OpenLayers.Util.getElement(elementParam);var cacheID=element._eventCacheID;this._removeElementObservers(OpenLayers.Event.observers[cacheID]);},_removeElementObservers:function(elementObservers){if(elementObservers){for(var i=elementObservers.length-1;i>=0;i--){var entry=elementObservers[i];var args=new Array(entry.element,entry.name,entry.observer,entry.useCapture);var removed=OpenLayers.Event.stopObserving.apply(this,args);}}},stopObserving:function(elementParam,name,observer,useCapture){useCapture=useCapture||false;var element=OpenLayers.Util.getElement(elementParam);var cacheID=element._eventCacheID;if(name=='keypress'){if(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.detachEvent){name='keydown';}}
var foundEntry=false;var elementObservers=OpenLayers.Event.observers[cacheID];if(elementObservers){var i=0;while(!foundEntry&&i<elementObservers.length){var cacheEntry=elementObservers[i];if((cacheEntry.name==name)&&(cacheEntry.observer==observer)&&(cacheEntry.useCapture==useCapture)){elementObservers.splice(i,1);if(elementObservers.length==0){delete OpenLayers.Event.observers[cacheID];}
foundEntry=true;break;}
i++;}}
if(foundEntry){if(element.removeEventListener){element.removeEventListener(name,observer,useCapture);}else if(element&&element.detachEvent){element.detachEvent('on'+name,observer);}}
return foundEntry;},unloadCache:function(){if(OpenLayers.Event&&OpenLayers.Event.observers){for(var cacheID in OpenLayers.Event.observers){var elementObservers=OpenLayers.Event.observers[cacheID];OpenLayers.Event._removeElementObservers.apply(this,[elementObservers]);}
OpenLayers.Event.observers=false;}},CLASS_NAME:"OpenLayers.Event"};OpenLayers.Event.observe(window,'unload',OpenLayers.Event.unloadCache,false);if(window.Event){OpenLayers.Util.applyDefaults(window.Event,OpenLayers.Event);}else{var Event=OpenLayers.Event;}
OpenLayers.Events=OpenLayers.Class({BROWSER_EVENTS:["mouseover","mouseout","mousedown","mouseup","mousemove","click","dblclick","rightclick","dblrightclick","resize","focus","blur","touchstart","touchmove","touchend"],listeners:null,object:null,element:null,eventTypes:null,eventHandler:null,fallThrough:null,includeXY:false,clearMouseListener:null,initialize:function(object,element,eventTypes,fallThrough,options){OpenLayers.Util.extend(this,options);this.object=object;this.fallThrough=fallThrough;this.listeners={};this.eventHandler=OpenLayers.Function.bindAsEventListener(this.handleBrowserEvent,this);this.clearMouseListener=OpenLayers.Function.bind(this.clearMouseCache,this);this.eventTypes=[];if(eventTypes!=null){for(var i=0,len=eventTypes.length;i<len;i++){this.addEventType(eventTypes[i]);}}
if(element!=null){this.attachToElement(element);}},destroy:function(){if(this.element){OpenLayers.Event.stopObservingElement(this.element);if(this.element.hasScrollEvent){OpenLayers.Event.stopObserving(window,"scroll",this.clearMouseListener);}}
this.element=null;this.listeners=null;this.object=null;this.eventTypes=null;this.fallThrough=null;this.eventHandler=null;},addEventType:function(eventName){if(!this.listeners[eventName]){this.eventTypes.push(eventName);this.listeners[eventName]=[];}},attachToElement:function(element){if(this.element){OpenLayers.Event.stopObservingElement(this.element);}
this.element=element;for(var i=0,len=this.BROWSER_EVENTS.length;i<len;i++){var eventType=this.BROWSER_EVENTS[i];this.addEventType(eventType);OpenLayers.Event.observe(element,eventType,this.eventHandler);}
OpenLayers.Event.observe(element,"dragstart",OpenLayers.Event.stop);},on:function(object){for(var type in object){if(type!="scope"){this.register(type,object.scope,object[type]);}}},register:function(type,obj,func){if((func!=null)&&(OpenLayers.Util.indexOf(this.eventTypes,type)!=-1)){if(obj==null){obj=this.object;}
var listeners=this.listeners[type];listeners.push({obj:obj,func:func});}},registerPriority:function(type,obj,func){if(func!=null){if(obj==null){obj=this.object;}
var listeners=this.listeners[type];if(listeners!=null){listeners.unshift({obj:obj,func:func});}}},un:function(object){for(var type in object){if(type!="scope"){this.unregister(type,object.scope,object[type]);}}},unregister:function(type,obj,func){if(obj==null){obj=this.object;}
var listeners=this.listeners[type];if(listeners!=null){for(var i=0,len=listeners.length;i<len;i++){if(listeners[i].obj==obj&&listeners[i].func==func){listeners.splice(i,1);break;}}}},remove:function(type){if(this.listeners[type]!=null){this.listeners[type]=[];}},triggerEvent:function(type,evt){var listeners=this.listeners[type];if(!listeners||listeners.length==0){return undefined;}
if(evt==null){evt={};}
evt.object=this.object;evt.element=this.element;if(!evt.type){evt.type=type;}
listeners=listeners.slice();var continueChain;for(var i=0,len=listeners.length;i<len;i++){var callback=listeners[i];continueChain=callback.func.apply(callback.obj,[evt]);if((continueChain!=undefined)&&(continueChain==false)){break;}}
if(!this.fallThrough){OpenLayers.Event.stop(evt,true);}
return continueChain;},handleBrowserEvent:function(evt){var type=evt.type,listeners=this.listeners[type];if(!listeners||listeners.length==0){return;}
var touches=evt.touches;if(touches&&touches[0]){var x=0;var y=0;var num=touches.length;var touch;for(var i=0;i<num;++i){touch=touches[i];x+=touch.clientX;y+=touch.clientY;}
evt.clientX=x/num;evt.clientY=y/num;}
if(this.includeXY){evt.xy=this.getMousePosition(evt);}
this.triggerEvent(type,evt);},clearMouseCache:function(){this.element.scrolls=null;this.element.lefttop=null;var body=document.body;if(body&&!((body.scrollTop!=0||body.scrollLeft!=0)&&navigator.userAgent.match(/iPhone/i))){this.element.offsets=null;}},getMousePosition:function(evt){if(!this.includeXY){this.clearMouseCache();}else if(!this.element.hasScrollEvent){OpenLayers.Event.observe(window,"scroll",this.clearMouseListener);this.element.hasScrollEvent=true;}
if(!this.element.scrolls){var viewportElement=OpenLayers.Util.getViewportElement();this.element.scrolls=[viewportElement.scrollLeft,viewportElement.scrollTop];}
if(!this.element.lefttop){this.element.lefttop=[(document.documentElement.clientLeft||0),(document.documentElement.clientTop||0)];}
if(!this.element.offsets){this.element.offsets=OpenLayers.Util.pagePosition(this.element);}
return new OpenLayers.Pixel((evt.clientX+this.element.scrolls[0])-this.element.offsets[0]
-this.element.lefttop[0],(evt.clientY+this.element.scrolls[1])-this.element.offsets[1]
-this.element.lefttop[1]);},CLASS_NAME:"OpenLayers.Events"});OpenLayers.Map=OpenLayers.Class({Z_INDEX_BASE:{BaseLayer:100,Overlay:325,Feature:725,Popup:750,Control:1000},EVENT_TYPES:["preaddlayer","addlayer","preremovelayer","removelayer","changelayer","movestart","move","moveend","zoomend","popupopen","popupclose","addmarker","removemarker","clearmarkers","mouseover","mouseout","mousemove","dragstart","drag","dragend","changebaselayer"],id:null,fractionalZoom:false,events:null,allOverlays:false,div:null,dragging:false,size:null,viewPortDiv:null,layerContainerOrigin:null,layerContainerDiv:null,layers:null,controls:null,popups:null,baseLayer:null,center:null,resolution:null,zoom:0,panRatio:1.5,viewRequestID:0,tileSize:null,projection:"EPSG:4326",units:'degrees',resolutions:null,maxResolution:1.40625,minResolution:null,maxScale:null,minScale:null,maxExtent:null,minExtent:null,restrictedExtent:null,numZoomLevels:16,theme:null,displayProjection:null,fallThrough:true,panTween:null,eventListeners:null,panMethod:OpenLayers.Easing.Expo.easeOut,panDuration:50,paddingForPopups:null,minPx:null,maxPx:null,initialize:function(div,options){if(arguments.length===1&&typeof div==="object"){options=div;div=options&&options.div;}
this.tileSize=new OpenLayers.Size(OpenLayers.Map.TILE_WIDTH,OpenLayers.Map.TILE_HEIGHT);this.maxExtent=new OpenLayers.Bounds(-180,-90,180,90);this.paddingForPopups=new OpenLayers.Bounds(15,15,15,15);this.theme=OpenLayers._getScriptLocation()+'theme/default/style.css';OpenLayers.Util.extend(this,options);this.layers=[];this.id=OpenLayers.Util.createUniqueID("OpenLayers.Map_");this.div=OpenLayers.Util.getElement(div);if(!this.div){this.div=document.createElement("div");this.div.style.height="1px";this.div.style.width="1px";}
OpenLayers.Element.addClass(this.div,'olMap');var id=this.id+"_OpenLayers_ViewPort";this.viewPortDiv=OpenLayers.Util.createDiv(id,null,null,null,"relative",null,"hidden");this.viewPortDiv.style.width="100%";this.viewPortDiv.style.height="100%";this.viewPortDiv.className="olMapViewport";this.div.appendChild(this.viewPortDiv);var eventsDiv=document.createElement("div");eventsDiv.id=this.id+"_events";eventsDiv.style.position="absolute";eventsDiv.style.width="100%";eventsDiv.style.height="100%";eventsDiv.style.zIndex=this.Z_INDEX_BASE.Control-1;this.viewPortDiv.appendChild(eventsDiv);this.eventsDiv=eventsDiv;this.events=new OpenLayers.Events(this,this.eventsDiv,this.EVENT_TYPES,this.fallThrough,{includeXY:true});id=this.id+"_OpenLayers_Container";this.layerContainerDiv=OpenLayers.Util.createDiv(id);this.layerContainerDiv.style.zIndex=this.Z_INDEX_BASE['Popup']-1;this.eventsDiv.appendChild(this.layerContainerDiv);this.updateSize();if(this.eventListeners instanceof Object){this.events.on(this.eventListeners);}
this.events.register("movestart",this,this.updateSize);if(OpenLayers.String.contains(navigator.appName,"Microsoft")){this.events.register("resize",this,this.updateSize);}else{this.updateSizeDestroy=OpenLayers.Function.bind(this.updateSize,this);OpenLayers.Event.observe(window,'resize',this.updateSizeDestroy);}
if(this.theme){var addNode=true;var nodes=document.getElementsByTagName('link');for(var i=0,len=nodes.length;i<len;++i){if(OpenLayers.Util.isEquivalentUrl(nodes.item(i).href,this.theme)){addNode=false;break;}}
if(addNode){var cssNode=document.createElement('link');cssNode.setAttribute('rel','stylesheet');cssNode.setAttribute('type','text/css');cssNode.setAttribute('href',this.theme);document.getElementsByTagName('head')[0].appendChild(cssNode);}}
if(this.controls==null){if(OpenLayers.Control!=null){this.controls=[new OpenLayers.Control.Navigation(),new OpenLayers.Control.PanZoom(),new OpenLayers.Control.ArgParser(),new OpenLayers.Control.Attribution()];}else{this.controls=[];}}
for(var i=0,len=this.controls.length;i<len;i++){this.addControlToMap(this.controls[i]);}
this.popups=[];this.unloadDestroy=OpenLayers.Function.bind(this.destroy,this);OpenLayers.Event.observe(window,'unload',this.unloadDestroy);if(options&&options.layers){delete this.center;this.addLayers(options.layers);if(options.center){this.setCenter(options.center,options.zoom);}}},render:function(div){this.div=OpenLayers.Util.getElement(div);OpenLayers.Element.addClass(this.div,'olMap');this.viewPortDiv.parentNode.removeChild(this.viewPortDiv);this.div.appendChild(this.viewPortDiv);this.updateSize();},unloadDestroy:null,updateSizeDestroy:null,destroy:function(){if(!this.unloadDestroy){return false;}
if(this.panTween){this.panTween.stop();this.panTween=null;}
OpenLayers.Event.stopObserving(window,'unload',this.unloadDestroy);this.unloadDestroy=null;if(this.updateSizeDestroy){OpenLayers.Event.stopObserving(window,'resize',this.updateSizeDestroy);}else{this.events.unregister("resize",this,this.updateSize);}
this.paddingForPopups=null;if(this.controls!=null){for(var i=this.controls.length-1;i>=0;--i){this.controls[i].destroy();}
this.controls=null;}
if(this.layers!=null){for(var i=this.layers.length-1;i>=0;--i){this.layers[i].destroy(false);}
this.layers=null;}
if(this.viewPortDiv){this.div.removeChild(this.viewPortDiv);}
this.viewPortDiv=null;if(this.eventListeners){this.events.un(this.eventListeners);this.eventListeners=null;}
this.events.destroy();this.events=null;},setOptions:function(options){var updatePxExtent=this.minPx&&options.restrictedExtent!=this.restrictedExtent;OpenLayers.Util.extend(this,options);updatePxExtent&&this.moveTo(this.getCachedCenter(),this.zoom,{forceZoomChange:true});},getTileSize:function(){return this.tileSize;},getBy:function(array,property,match){var test=(typeof match.test=="function");var found=OpenLayers.Array.filter(this[array],function(item){return item[property]==match||(test&&match.test(item[property]));});return found;},getLayersBy:function(property,match){return this.getBy("layers",property,match);},getLayersByName:function(match){return this.getLayersBy("name",match);},getLayersByClass:function(match){return this.getLayersBy("CLASS_NAME",match);},getControlsBy:function(property,match){return this.getBy("controls",property,match);},getControlsByClass:function(match){return this.getControlsBy("CLASS_NAME",match);},getLayer:function(id){var foundLayer=null;for(var i=0,len=this.layers.length;i<len;i++){var layer=this.layers[i];if(layer.id==id){foundLayer=layer;break;}}
return foundLayer;},setLayerZIndex:function(layer,zIdx){layer.setZIndex(this.Z_INDEX_BASE[layer.isBaseLayer?'BaseLayer':'Overlay']
+zIdx*5);},resetLayersZIndex:function(){for(var i=0,len=this.layers.length;i<len;i++){var layer=this.layers[i];this.setLayerZIndex(layer,i);}},addLayer:function(layer){for(var i=0,len=this.layers.length;i<len;i++){if(this.layers[i]==layer){var msg=OpenLayers.i18n('layerAlreadyAdded',{'layerName':layer.name});OpenLayers.Console.warn(msg);return false;}}
if(this.events.triggerEvent("preaddlayer",{layer:layer})===false){return;}
if(this.allOverlays){layer.isBaseLayer=false;}
layer.div.className="olLayerDiv";layer.div.style.overflow="";this.setLayerZIndex(layer,this.layers.length);if(layer.isFixed){this.viewPortDiv.appendChild(layer.div);}else{this.layerContainerDiv.appendChild(layer.div);}
this.layers.push(layer);layer.setMap(this);if(layer.isBaseLayer||(this.allOverlays&&!this.baseLayer)){if(this.baseLayer==null){this.setBaseLayer(layer);}else{layer.setVisibility(false);}}else{layer.redraw();}
this.events.triggerEvent("addlayer",{layer:layer});layer.events.triggerEvent("added",{map:this,layer:layer});layer.afterAdd();},addLayers:function(layers){for(var i=0,len=layers.length;i<len;i++){this.addLayer(layers[i]);}},removeLayer:function(layer,setNewBaseLayer){if(this.events.triggerEvent("preremovelayer",{layer:layer})===false){return;}
if(setNewBaseLayer==null){setNewBaseLayer=true;}
if(layer.isFixed){this.viewPortDiv.removeChild(layer.div);}else{this.layerContainerDiv.removeChild(layer.div);}
OpenLayers.Util.removeItem(this.layers,layer);layer.removeMap(this);layer.map=null;if(this.baseLayer==layer){this.baseLayer=null;if(setNewBaseLayer){for(var i=0,len=this.layers.length;i<len;i++){var iLayer=this.layers[i];if(iLayer.isBaseLayer||this.allOverlays){this.setBaseLayer(iLayer);break;}}}}
this.resetLayersZIndex();this.events.triggerEvent("removelayer",{layer:layer});layer.events.triggerEvent("removed",{map:this,layer:layer});},getNumLayers:function(){return this.layers.length;},getLayerIndex:function(layer){return OpenLayers.Util.indexOf(this.layers,layer);},setLayerIndex:function(layer,idx){var base=this.getLayerIndex(layer);if(idx<0){idx=0;}else if(idx>this.layers.length){idx=this.layers.length;}
if(base!=idx){this.layers.splice(base,1);this.layers.splice(idx,0,layer);for(var i=0,len=this.layers.length;i<len;i++){this.setLayerZIndex(this.layers[i],i);}
this.events.triggerEvent("changelayer",{layer:layer,property:"order"});if(this.allOverlays){if(idx===0){this.setBaseLayer(layer);}else if(this.baseLayer!==this.layers[0]){this.setBaseLayer(this.layers[0]);}}}},raiseLayer:function(layer,delta){var idx=this.getLayerIndex(layer)+delta;this.setLayerIndex(layer,idx);},setBaseLayer:function(newBaseLayer){if(newBaseLayer!=this.baseLayer){if(OpenLayers.Util.indexOf(this.layers,newBaseLayer)!=-1){var center=this.getCachedCenter();var newResolution=OpenLayers.Util.getResolutionFromScale(this.getScale(),newBaseLayer.units);if(this.baseLayer!=null&&!this.allOverlays){this.baseLayer.setVisibility(false);}
this.baseLayer=newBaseLayer;this.viewRequestID++;if(!this.allOverlays||this.baseLayer.visibility){this.baseLayer.setVisibility(true);}
if(center!=null){var newZoom=this.getZoomForResolution(newResolution||this.resolution,true);this.setCenter(center,newZoom,false,true);}
this.events.triggerEvent("changebaselayer",{layer:this.baseLayer});}}},addControl:function(control,px){this.controls.push(control);this.addControlToMap(control,px);},addControls:function(controls,pixels){var pxs=(arguments.length===1)?[]:pixels;for(var i=0,len=controls.length;i<len;i++){var ctrl=controls[i];var px=(pxs[i])?pxs[i]:null;this.addControl(ctrl,px);}},addControlToMap:function(control,px){control.outsideViewport=(control.div!=null);if(this.displayProjection&&!control.displayProjection){control.displayProjection=this.displayProjection;}
control.setMap(this);var div=control.draw(px);if(div){if(!control.outsideViewport){div.style.zIndex=this.Z_INDEX_BASE['Control']+
this.controls.length;this.viewPortDiv.appendChild(div);}}
if(control.autoActivate){control.activate();}},getControl:function(id){var returnControl=null;for(var i=0,len=this.controls.length;i<len;i++){var control=this.controls[i];if(control.id==id){returnControl=control;break;}}
return returnControl;},removeControl:function(control){if((control)&&(control==this.getControl(control.id))){if(control.div&&(control.div.parentNode==this.viewPortDiv)){this.viewPortDiv.removeChild(control.div);}
OpenLayers.Util.removeItem(this.controls,control);}},addPopup:function(popup,exclusive){if(exclusive){for(var i=this.popups.length-1;i>=0;--i){this.removePopup(this.popups[i]);}}
popup.map=this;this.popups.push(popup);var popupDiv=popup.draw();if(popupDiv){popupDiv.style.zIndex=this.Z_INDEX_BASE['Popup']+
this.popups.length;this.layerContainerDiv.appendChild(popupDiv);}},removePopup:function(popup){OpenLayers.Util.removeItem(this.popups,popup);if(popup.div){try{this.layerContainerDiv.removeChild(popup.div);}
catch(e){}}
popup.map=null;},getSize:function(){var size=null;if(this.size!=null){size=this.size.clone();}
return size;},updateSize:function(){var newSize=this.getCurrentSize();if(newSize&&!isNaN(newSize.h)&&!isNaN(newSize.w)){this.events.clearMouseCache();var oldSize=this.getSize();if(oldSize==null){this.size=oldSize=newSize;}
if(!newSize.equals(oldSize)){this.size=newSize;for(var i=0,len=this.layers.length;i<len;i++){this.layers[i].onMapResize();}
var center=this.getCachedCenter();if(this.baseLayer!=null&&center!=null){var zoom=this.getZoom();this.zoom=null;this.setCenter(center,zoom);}}}},getCurrentSize:function(){var size=new OpenLayers.Size(this.div.clientWidth,this.div.clientHeight);if(size.w==0&&size.h==0||isNaN(size.w)&&isNaN(size.h)){size.w=this.div.offsetWidth;size.h=this.div.offsetHeight;}
if(size.w==0&&size.h==0||isNaN(size.w)&&isNaN(size.h)){size.w=parseInt(this.div.style.width);size.h=parseInt(this.div.style.height);}
return size;},calculateBounds:function(center,resolution){var extent=null;if(center==null){center=this.getCachedCenter();}
if(resolution==null){resolution=this.getResolution();}
if((center!=null)&&(resolution!=null)){var size=this.getSize();var w_deg=size.w*resolution;var h_deg=size.h*resolution;extent=new OpenLayers.Bounds(center.lon-w_deg/2,center.lat-h_deg/2,center.lon+w_deg/2,center.lat+h_deg/2);}
return extent;},getCenter:function(){var center=null;var cachedCenter=this.getCachedCenter();if(cachedCenter){center=cachedCenter.clone();}
return center;},getCachedCenter:function(){if(!this.center&&this.size){this.center=this.getLonLatFromViewPortPx(new OpenLayers.Pixel(this.size.w/2,this.size.h/2));}
return this.center;},getZoom:function(){return this.zoom;},pan:function(dx,dy,options){options=OpenLayers.Util.applyDefaults(options,{animate:true,dragging:false});if(options.dragging){if(dx!=0||dy!=0){this.moveByPx(dx,dy);}}else{var centerPx=this.getViewPortPxFromLonLat(this.getCachedCenter());var newCenterPx=centerPx.add(dx,dy);if(this.dragging||!newCenterPx.equals(centerPx)){var newCenterLonLat=this.getLonLatFromViewPortPx(newCenterPx);if(options.animate){this.panTo(newCenterLonLat);}else{this.moveTo(newCenterLonLat);this.dragging=false;this.events.triggerEvent("moveend");}}}},panTo:function(lonlat){if(this.panMethod&&this.getExtent().scale(this.panRatio).containsLonLat(lonlat)){if(!this.panTween){this.panTween=new OpenLayers.Tween(this.panMethod);}
var center=this.getCachedCenter();if(lonlat.equals(center)){return;}
var from=this.getPixelFromLonLat(center);var to=this.getPixelFromLonLat(lonlat);var vector={x:to.x-from.x,y:to.y-from.y};var last={x:0,y:0};this.panTween.start({x:0,y:0},vector,this.panDuration,{callbacks:{eachStep:OpenLayers.Function.bind(function(px){var x=px.x-last.x,y=px.y-last.y;this.moveByPx(x,y);last.x=Math.round(px.x);last.y=Math.round(px.y);},this),done:OpenLayers.Function.bind(function(px){this.moveTo(lonlat);this.dragging=false;this.events.triggerEvent("moveend");},this)}});}else{this.setCenter(lonlat);}},setCenter:function(lonlat,zoom,dragging,forceZoomChange){this.panTween&&this.panTween.stop();this.moveTo(lonlat,zoom,{'dragging':dragging,'forceZoomChange':forceZoomChange});},moveByPx:function(dx,dy){var hw=this.size.w/2;var hh=this.size.h/2;var x=hw+dx;var y=hh+dy;var wrapDateLine=this.baseLayer.wrapDateLine;var xRestriction=0;var yRestriction=0;if(this.restrictedExtent){xRestriction=hw;yRestriction=hh;wrapDateLine=false;}
dx=wrapDateLine||x<=this.maxPx.x-xRestriction&&x>=this.minPx.x+xRestriction?Math.round(dx):0;dy=y<=this.maxPx.y-yRestriction&&y>=this.minPx.y+yRestriction?Math.round(dy):0;var minX=this.minPx.x,maxX=this.maxPx.x;if(dx||dy){if(!this.dragging){this.dragging=true;this.events.triggerEvent("movestart");}
this.center=null;if(dx){this.layerContainerDiv.style.left=parseInt(this.layerContainerDiv.style.left)-dx+"px";this.minPx.x-=dx;this.maxPx.x-=dx;if(wrapDateLine){if(this.maxPx.x>maxX){this.maxPx.x-=(maxX-minX);}
if(this.minPx.x<minX){this.minPx.x+=(maxX-minX);}}}
if(dy){this.layerContainerDiv.style.top=parseInt(this.layerContainerDiv.style.top)-dy+"px";this.minPx.y-=dy;this.maxPx.y-=dy;}
var layer,i,len;for(i=0,len=this.layers.length;i<len;++i){layer=this.layers[i];if(layer.visibility&&(layer===this.baseLayer||layer.inRange)){layer.moveByPx(dx,dy);layer.events.triggerEvent("move");}}
this.events.triggerEvent("move");}},moveTo:function(lonlat,zoom,options){if(!options){options={};}
if(zoom!=null){zoom=parseFloat(zoom);if(!this.fractionalZoom){zoom=Math.round(zoom);}}
var dragging=options.dragging||this.dragging;var forceZoomChange=options.forceZoomChange;if(!this.getCachedCenter()&&!this.isValidLonLat(lonlat)){lonlat=this.maxExtent.getCenterLonLat();this.center=lonlat.clone();}
if(this.restrictedExtent!=null){if(lonlat==null){lonlat=this.center;}
if(zoom==null){zoom=this.getZoom();}
var resolution=this.getResolutionForZoom(zoom);var extent=this.calculateBounds(lonlat,resolution);if(!this.restrictedExtent.containsBounds(extent)){var maxCenter=this.restrictedExtent.getCenterLonLat();if(extent.getWidth()>this.restrictedExtent.getWidth()){lonlat=new OpenLayers.LonLat(maxCenter.lon,lonlat.lat);}else if(extent.left<this.restrictedExtent.left){lonlat=lonlat.add(this.restrictedExtent.left-
extent.left,0);}else if(extent.right>this.restrictedExtent.right){lonlat=lonlat.add(this.restrictedExtent.right-
extent.right,0);}
if(extent.getHeight()>this.restrictedExtent.getHeight()){lonlat=new OpenLayers.LonLat(lonlat.lon,maxCenter.lat);}else if(extent.bottom<this.restrictedExtent.bottom){lonlat=lonlat.add(0,this.restrictedExtent.bottom-
extent.bottom);}
else if(extent.top>this.restrictedExtent.top){lonlat=lonlat.add(0,this.restrictedExtent.top-
extent.top);}}}
var zoomChanged=forceZoomChange||((this.isValidZoomLevel(zoom))&&(zoom!=this.getZoom()));var centerChanged=(this.isValidLonLat(lonlat))&&(!lonlat.equals(this.center));if(zoomChanged||centerChanged||dragging){dragging||this.events.triggerEvent("movestart");if(centerChanged){if(!zoomChanged&&this.center){this.centerLayerContainer(lonlat);}
this.center=lonlat.clone();}
var res=zoomChanged?this.getResolutionForZoom(zoom):this.getResolution();if(zoomChanged||this.layerContainerOrigin==null){this.layerContainerOrigin=this.getCachedCenter();this.layerContainerDiv.style.left="0px";this.layerContainerDiv.style.top="0px";var maxExtent=this.getMaxExtent({restricted:true});var maxExtentCenter=maxExtent.getCenterLonLat();var lonDelta=this.center.lon-maxExtentCenter.lon;var latDelta=maxExtentCenter.lat-this.center.lat;var extentWidth=Math.round(maxExtent.getWidth()/res);var extentHeight=Math.round(maxExtent.getHeight()/res);var left=(this.size.w-extentWidth)/2-lonDelta/res;var top=(this.size.h-extentHeight)/2-latDelta/res;this.minPx=new OpenLayers.Pixel(left,top);this.maxPx=new OpenLayers.Pixel(left+extentWidth,top+extentHeight);}
if(zoomChanged){this.zoom=zoom;this.resolution=res;this.viewRequestID++;}
var bounds=this.getExtent();if(this.baseLayer.visibility){this.baseLayer.moveTo(bounds,zoomChanged,options.dragging);options.dragging||this.baseLayer.events.triggerEvent("moveend",{zoomChanged:zoomChanged});}
bounds=this.baseLayer.getExtent();for(var i=this.layers.length-1;i>=0;--i){var layer=this.layers[i];if(layer!==this.baseLayer&&!layer.isBaseLayer){var inRange=layer.calculateInRange();if(layer.inRange!=inRange){layer.inRange=inRange;if(!inRange){layer.display(false);}
this.events.triggerEvent("changelayer",{layer:layer,property:"visibility"});}
if(inRange&&layer.visibility){layer.moveTo(bounds,zoomChanged,options.dragging);options.dragging||layer.events.triggerEvent("moveend",{zoomChanged:zoomChanged});}}}
this.events.triggerEvent("move");dragging||this.events.triggerEvent("moveend");if(zoomChanged){for(var i=0,len=this.popups.length;i<len;i++){this.popups[i].updatePosition();}
this.events.triggerEvent("zoomend");}}},centerLayerContainer:function(lonlat){var originPx=this.getViewPortPxFromLonLat(this.layerContainerOrigin);var newPx=this.getViewPortPxFromLonLat(lonlat);if((originPx!=null)&&(newPx!=null)){var oldLeft=parseInt(this.layerContainerDiv.style.left);var oldTop=parseInt(this.layerContainerDiv.style.top);var newLeft=Math.round(originPx.x-newPx.x);var newTop=Math.round(originPx.y-newPx.y);this.layerContainerDiv.style.left=newLeft+"px";this.layerContainerDiv.style.top=newTop+"px";var dx=oldLeft-newLeft;var dy=oldTop-newTop;this.minPx.x-=dx;this.maxPx.x-=dx;this.minPx.y-=dy;this.maxPx.y-=dy;}},isValidZoomLevel:function(zoomLevel){return((zoomLevel!=null)&&(zoomLevel>=0)&&(zoomLevel<this.getNumZoomLevels()));},isValidLonLat:function(lonlat){var valid=false;if(lonlat!=null){var maxExtent=this.getMaxExtent();valid=maxExtent.containsLonLat(lonlat);}
return valid;},getProjection:function(){var projection=this.getProjectionObject();return projection?projection.getCode():null;},getProjectionObject:function(){var projection=null;if(this.baseLayer!=null){projection=this.baseLayer.projection;}
return projection;},getMaxResolution:function(){var maxResolution=null;if(this.baseLayer!=null){maxResolution=this.baseLayer.maxResolution;}
return maxResolution;},getMaxExtent:function(options){var maxExtent=null;if(options&&options.restricted&&this.restrictedExtent){maxExtent=this.restrictedExtent;}else if(this.baseLayer!=null){maxExtent=this.baseLayer.maxExtent;}
return maxExtent;},getNumZoomLevels:function(){var numZoomLevels=null;if(this.baseLayer!=null){numZoomLevels=this.baseLayer.numZoomLevels;}
return numZoomLevels;},getExtent:function(){var extent=null;if(this.baseLayer!=null){extent=this.baseLayer.getExtent();}
return extent;},getResolution:function(){var resolution=null;if(this.baseLayer!=null){resolution=this.baseLayer.getResolution();}else if(this.allOverlays===true&&this.layers.length>0){resolution=this.layers[0].getResolution();}
return resolution;},getUnits:function(){var units=null;if(this.baseLayer!=null){units=this.baseLayer.units;}
return units;},getScale:function(){var scale=null;if(this.baseLayer!=null){var res=this.getResolution();var units=this.baseLayer.units;scale=OpenLayers.Util.getScaleFromResolution(res,units);}
return scale;},getZoomForExtent:function(bounds,closest){var zoom=null;if(this.baseLayer!=null){zoom=this.baseLayer.getZoomForExtent(bounds,closest);}
return zoom;},getResolutionForZoom:function(zoom){var resolution=null;if(this.baseLayer){resolution=this.baseLayer.getResolutionForZoom(zoom);}
return resolution;},getZoomForResolution:function(resolution,closest){var zoom=null;if(this.baseLayer!=null){zoom=this.baseLayer.getZoomForResolution(resolution,closest);}
return zoom;},zoomTo:function(zoom){if(this.isValidZoomLevel(zoom)){this.setCenter(null,zoom);}},zoomIn:function(){this.zoomTo(this.getZoom()+1);},zoomOut:function(){this.zoomTo(this.getZoom()-1);},zoomToExtent:function(bounds,closest){var center=bounds.getCenterLonLat();if(this.baseLayer.wrapDateLine){var maxExtent=this.getMaxExtent();bounds=bounds.clone();while(bounds.right<bounds.left){bounds.right+=maxExtent.getWidth();}
center=bounds.getCenterLonLat().wrapDateLine(maxExtent);}
this.setCenter(center,this.getZoomForExtent(bounds,closest));},zoomToMaxExtent:function(options){var restricted=(options)?options.restricted:true;var maxExtent=this.getMaxExtent({'restricted':restricted});this.zoomToExtent(maxExtent);},zoomToScale:function(scale,closest){var res=OpenLayers.Util.getResolutionFromScale(scale,this.baseLayer.units);var size=this.getSize();var w_deg=size.w*res;var h_deg=size.h*res;var center=this.getCachedCenter();var extent=new OpenLayers.Bounds(center.lon-w_deg/2,center.lat-h_deg/2,center.lon+w_deg/2,center.lat+h_deg/2);this.zoomToExtent(extent,closest);},getLonLatFromViewPortPx:function(viewPortPx){var lonlat=null;if(this.baseLayer!=null){lonlat=this.baseLayer.getLonLatFromViewPortPx(viewPortPx);}
return lonlat;},getViewPortPxFromLonLat:function(lonlat){var px=null;if(this.baseLayer!=null){px=this.baseLayer.getViewPortPxFromLonLat(lonlat);}
return px;},getLonLatFromPixel:function(px){return this.getLonLatFromViewPortPx(px);},getPixelFromLonLat:function(lonlat){var px=this.getViewPortPxFromLonLat(lonlat);px.x=Math.round(px.x);px.y=Math.round(px.y);return px;},getGeodesicPixelSize:function(px){var lonlat=px?this.getLonLatFromPixel(px):(this.getCachedCenter()||new OpenLayers.LonLat(0,0));var res=this.getResolution();var left=lonlat.add(-res/2,0);var right=lonlat.add(res/2,0);var bottom=lonlat.add(0,-res/2);var top=lonlat.add(0,res/2);var dest=new OpenLayers.Projection("EPSG:4326");var source=this.getProjectionObject()||dest;if(!source.equals(dest)){left.transform(source,dest);right.transform(source,dest);bottom.transform(source,dest);top.transform(source,dest);}
return new OpenLayers.Size(OpenLayers.Util.distVincenty(left,right),OpenLayers.Util.distVincenty(bottom,top));},getViewPortPxFromLayerPx:function(layerPx){var viewPortPx=null;if(layerPx!=null){var dX=parseInt(this.layerContainerDiv.style.left);var dY=parseInt(this.layerContainerDiv.style.top);viewPortPx=layerPx.add(dX,dY);}
return viewPortPx;},getLayerPxFromViewPortPx:function(viewPortPx){var layerPx=null;if(viewPortPx!=null){var dX=-parseInt(this.layerContainerDiv.style.left);var dY=-parseInt(this.layerContainerDiv.style.top);layerPx=viewPortPx.add(dX,dY);if(isNaN(layerPx.x)||isNaN(layerPx.y)){layerPx=null;}}
return layerPx;},getLonLatFromLayerPx:function(px){px=this.getViewPortPxFromLayerPx(px);return this.getLonLatFromViewPortPx(px);},getLayerPxFromLonLat:function(lonlat){var px=this.getPixelFromLonLat(lonlat);return this.getLayerPxFromViewPortPx(px);},CLASS_NAME:"OpenLayers.Map"});OpenLayers.Map.TILE_WIDTH=256;OpenLayers.Map.TILE_HEIGHT=256;OpenLayers.Projection=OpenLayers.Class({proj:null,projCode:null,titleRegEx:/\+title=[^\+]*/,initialize:function(projCode,options){OpenLayers.Util.extend(this,options);this.projCode=projCode;if(window.Proj4js){this.proj=new Proj4js.Proj(projCode);}},getCode:function(){return this.proj?this.proj.srsCode:this.projCode;},getUnits:function(){return this.proj?this.proj.units:null;},toString:function(){return this.getCode();},equals:function(projection){var p=projection,equals=false;if(p){if(window.Proj4js&&this.proj.defData&&p.proj.defData){equals=this.proj.defData.replace(this.titleRegEx,"")==p.proj.defData.replace(this.titleRegEx,"");}else if(p.getCode){var source=this.getCode(),target=p.getCode();equals=source==target||!!OpenLayers.Projection.transforms[source]&&OpenLayers.Projection.transforms[source][target]===OpenLayers.Projection.nullTransform;}}
return equals;},destroy:function(){delete this.proj;delete this.projCode;},CLASS_NAME:"OpenLayers.Projection"});OpenLayers.Projection.transforms={};OpenLayers.Projection.addTransform=function(from,to,method){if(!OpenLayers.Projection.transforms[from]){OpenLayers.Projection.transforms[from]={};}
OpenLayers.Projection.transforms[from][to]=method;};OpenLayers.Projection.transform=function(point,source,dest){if(source.proj&&dest.proj){point=Proj4js.transform(source.proj,dest.proj,point);}else if(source&&dest&&OpenLayers.Projection.transforms[source.getCode()]&&OpenLayers.Projection.transforms[source.getCode()][dest.getCode()]){OpenLayers.Projection.transforms[source.getCode()][dest.getCode()](point);}
return point;};OpenLayers.Projection.nullTransform=function(point){return point;};OpenLayers.Layer=OpenLayers.Class({id:null,name:null,div:null,opacity:null,alwaysInRange:null,EVENT_TYPES:["loadstart","loadend","loadcancel","visibilitychanged","move","moveend","added","removed"],RESOLUTION_PROPERTIES:['scales','resolutions','maxScale','minScale','maxResolution','minResolution','numZoomLevels','maxZoomLevel'],events:null,map:null,isBaseLayer:false,alpha:false,displayInLayerSwitcher:true,visibility:true,attribution:null,inRange:false,imageSize:null,imageOffset:null,options:null,eventListeners:null,gutter:0,projection:null,units:null,scales:null,resolutions:null,maxExtent:null,minExtent:null,maxResolution:null,minResolution:null,numZoomLevels:null,minScale:null,maxScale:null,displayOutsideMaxExtent:false,wrapDateLine:false,transitionEffect:null,SUPPORTED_TRANSITIONS:['resize'],metadata:{},initialize:function(name,options){this.addOptions(options);this.name=name;if(this.id==null){this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+"_");this.div=OpenLayers.Util.createDiv(this.id);this.div.style.width="100%";this.div.style.height="100%";this.div.dir="ltr";this.events=new OpenLayers.Events(this,this.div,this.EVENT_TYPES);if(this.eventListeners instanceof Object){this.events.on(this.eventListeners);}}
if(this.wrapDateLine){this.displayOutsideMaxExtent=true;}},destroy:function(setNewBaseLayer){if(setNewBaseLayer==null){setNewBaseLayer=true;}
if(this.map!=null){this.map.removeLayer(this,setNewBaseLayer);}
this.projection=null;this.map=null;this.name=null;this.div=null;this.options=null;if(this.events){if(this.eventListeners){this.events.un(this.eventListeners);}
this.events.destroy();}
this.eventListeners=null;this.events=null;},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer(this.name,this.getOptions());}
OpenLayers.Util.applyDefaults(obj,this);obj.map=null;return obj;},getOptions:function(){var options={};for(var o in this.options){options[o]=this[o];}
return options;},setName:function(newName){if(newName!=this.name){this.name=newName;if(this.map!=null){this.map.events.triggerEvent("changelayer",{layer:this,property:"name"});}}},addOptions:function(newOptions,reinitialize){if(this.options==null){this.options={};}
OpenLayers.Util.extend(this.options,newOptions);OpenLayers.Util.extend(this,newOptions);if(typeof this.projection=="string"){this.projection=new OpenLayers.Projection(this.projection);}
if(this.projection&&this.projection.getUnits()){this.units=this.projection.getUnits();}
if(this.map){var resolution=this.map.getResolution();var properties=this.RESOLUTION_PROPERTIES.concat(["projection","units","minExtent","maxExtent"]);for(var o in newOptions){if(newOptions.hasOwnProperty(o)&&OpenLayers.Util.indexOf(properties,o)>=0){this.initResolutions();if(reinitialize&&this.map.baseLayer===this){this.map.setCenter(this.map.getCenter(),this.map.getZoomForResolution(resolution),false,true);this.map.events.triggerEvent("changebaselayer",{layer:this});}
break;}}}},onMapResize:function(){},redraw:function(){var redrawn=false;if(this.map){this.inRange=this.calculateInRange();var extent=this.getExtent();if(extent&&this.inRange&&this.visibility){var zoomChanged=true;this.moveTo(extent,zoomChanged,false);this.events.triggerEvent("moveend",{"zoomChanged":zoomChanged});redrawn=true;}}
return redrawn;},moveTo:function(bounds,zoomChanged,dragging){var display=this.visibility;if(!this.isBaseLayer){display=display&&this.inRange;}
this.display(display);},moveByPx:function(dx,dy){},setMap:function(map){if(this.map==null){this.map=map;this.maxExtent=this.maxExtent||this.map.maxExtent;this.minExtent=this.minExtent||this.map.minExtent;this.projection=this.projection||this.map.projection;if(typeof this.projection=="string"){this.projection=new OpenLayers.Projection(this.projection);}
this.units=this.projection.getUnits()||this.units||this.map.units;this.initResolutions();if(!this.isBaseLayer){this.inRange=this.calculateInRange();var show=((this.visibility)&&(this.inRange));this.div.style.display=show?"":"none";}
this.setTileSize();}},afterAdd:function(){},removeMap:function(map){},getImageSize:function(bounds){return(this.imageSize||this.tileSize);},setTileSize:function(size){var tileSize=(size)?size:((this.tileSize)?this.tileSize:this.map.getTileSize());this.tileSize=tileSize;if(this.gutter){this.imageOffset=new OpenLayers.Pixel(-this.gutter,-this.gutter);this.imageSize=new OpenLayers.Size(tileSize.w+(2*this.gutter),tileSize.h+(2*this.gutter));}},getVisibility:function(){return this.visibility;},setVisibility:function(visibility){if(visibility!=this.visibility){this.visibility=visibility;this.display(visibility);this.redraw();if(this.map!=null){this.map.events.triggerEvent("changelayer",{layer:this,property:"visibility"});}
this.events.triggerEvent("visibilitychanged");}},display:function(display){if(display!=(this.div.style.display!="none")){this.div.style.display=(display&&this.calculateInRange())?"block":"none";}},calculateInRange:function(){var inRange=false;if(this.alwaysInRange){inRange=true;}else{if(this.map){var resolution=this.map.getResolution();inRange=((resolution>=this.minResolution)&&(resolution<=this.maxResolution));}}
return inRange;},setIsBaseLayer:function(isBaseLayer){if(isBaseLayer!=this.isBaseLayer){this.isBaseLayer=isBaseLayer;if(this.map!=null){this.map.events.triggerEvent("changebaselayer",{layer:this});}}},initResolutions:function(){var i,len,p;var props={},alwaysInRange=true;for(i=0,len=this.RESOLUTION_PROPERTIES.length;i<len;i++){p=this.RESOLUTION_PROPERTIES[i];props[p]=this.options[p];if(alwaysInRange&&this.options[p]){alwaysInRange=false;}}
if(this.alwaysInRange==null){this.alwaysInRange=alwaysInRange;}
if(props.resolutions==null){props.resolutions=this.resolutionsFromScales(props.scales);}
if(props.resolutions==null){props.resolutions=this.calculateResolutions(props);}
if(props.resolutions==null){for(i=0,len=this.RESOLUTION_PROPERTIES.length;i<len;i++){p=this.RESOLUTION_PROPERTIES[i];props[p]=this.options[p]!=null?this.options[p]:this.map[p];}
if(props.resolutions==null){props.resolutions=this.resolutionsFromScales(props.scales);}
if(props.resolutions==null){props.resolutions=this.calculateResolutions(props);}}
var maxResolution;if(this.options.maxResolution&&this.options.maxResolution!=="auto"){maxResolution=this.options.maxResolution;}
if(this.options.minScale){maxResolution=OpenLayers.Util.getResolutionFromScale(this.options.minScale,this.units);}
var minResolution;if(this.options.minResolution&&this.options.minResolution!=="auto"){minResolution=this.options.minResolution;}
if(this.options.maxScale){minResolution=OpenLayers.Util.getResolutionFromScale(this.options.maxScale,this.units);}
if(props.resolutions){props.resolutions.sort(function(a,b){return(b-a);});if(!maxResolution){maxResolution=props.resolutions[0];}
if(!minResolution){var lastIdx=props.resolutions.length-1;minResolution=props.resolutions[lastIdx];}}
this.resolutions=props.resolutions;if(this.resolutions){len=this.resolutions.length;this.scales=new Array(len);for(i=0;i<len;i++){this.scales[i]=OpenLayers.Util.getScaleFromResolution(this.resolutions[i],this.units);}
this.numZoomLevels=len;}
this.minResolution=minResolution;if(minResolution){this.maxScale=OpenLayers.Util.getScaleFromResolution(minResolution,this.units);}
this.maxResolution=maxResolution;if(maxResolution){this.minScale=OpenLayers.Util.getScaleFromResolution(maxResolution,this.units);}},resolutionsFromScales:function(scales){if(scales==null){return;}
var resolutions,i,len;len=scales.length;resolutions=new Array(len);for(i=0;i<len;i++){resolutions[i]=OpenLayers.Util.getResolutionFromScale(scales[i],this.units);}
return resolutions;},calculateResolutions:function(props){var viewSize,wRes,hRes;var maxResolution=props.maxResolution;if(props.minScale!=null){maxResolution=OpenLayers.Util.getResolutionFromScale(props.minScale,this.units);}else if(maxResolution=="auto"&&this.maxExtent!=null){viewSize=this.map.getSize();wRes=this.maxExtent.getWidth()/viewSize.w;hRes=this.maxExtent.getHeight()/viewSize.h;maxResolution=Math.max(wRes,hRes);}
var minResolution=props.minResolution;if(props.maxScale!=null){minResolution=OpenLayers.Util.getResolutionFromScale(props.maxScale,this.units);}else if(props.minResolution=="auto"&&this.minExtent!=null){viewSize=this.map.getSize();wRes=this.minExtent.getWidth()/viewSize.w;hRes=this.minExtent.getHeight()/viewSize.h;minResolution=Math.max(wRes,hRes);}
var maxZoomLevel=props.maxZoomLevel;var numZoomLevels=props.numZoomLevels;if(typeof minResolution==="number"&&typeof maxResolution==="number"&&numZoomLevels===undefined){var ratio=maxResolution/minResolution;numZoomLevels=Math.floor(Math.log(ratio)/Math.log(2))+1;}else if(numZoomLevels===undefined&&maxZoomLevel!=null){numZoomLevels=maxZoomLevel+1;}
if(typeof numZoomLevels!=="number"||numZoomLevels<=0||(typeof maxResolution!=="number"&&typeof minResolution!=="number")){return;}
var resolutions=new Array(numZoomLevels);var base=2;if(typeof minResolution=="number"&&typeof maxResolution=="number"){base=Math.pow((maxResolution/minResolution),(1/(numZoomLevels-1)));}
var i;if(typeof maxResolution==="number"){for(i=0;i<numZoomLevels;i++){resolutions[i]=maxResolution/Math.pow(base,i);}}else{for(i=0;i<numZoomLevels;i++){resolutions[numZoomLevels-1-i]=minResolution*Math.pow(base,i);}}
return resolutions;},getResolution:function(){var zoom=this.map.getZoom();return this.getResolutionForZoom(zoom);},getExtent:function(){return this.map.calculateBounds();},getZoomForExtent:function(extent,closest){var viewSize=this.map.getSize();var idealResolution=Math.max(extent.getWidth()/viewSize.w,extent.getHeight()/viewSize.h);return this.getZoomForResolution(idealResolution,closest);},getDataExtent:function(){},getResolutionForZoom:function(zoom){zoom=Math.max(0,Math.min(zoom,this.resolutions.length-1));var resolution;if(this.map.fractionalZoom){var low=Math.floor(zoom);var high=Math.ceil(zoom);resolution=this.resolutions[low]-
((zoom-low)*(this.resolutions[low]-this.resolutions[high]));}else{resolution=this.resolutions[Math.round(zoom)];}
return resolution;},getZoomForResolution:function(resolution,closest){var zoom,i,len;if(this.map.fractionalZoom){var lowZoom=0;var highZoom=this.resolutions.length-1;var highRes=this.resolutions[lowZoom];var lowRes=this.resolutions[highZoom];var res;for(i=0,len=this.resolutions.length;i<len;++i){res=this.resolutions[i];if(res>=resolution){highRes=res;lowZoom=i;}
if(res<=resolution){lowRes=res;highZoom=i;break;}}
var dRes=highRes-lowRes;if(dRes>0){zoom=lowZoom+((highRes-resolution)/dRes);}else{zoom=lowZoom;}}else{var diff;var minDiff=Number.POSITIVE_INFINITY;for(i=0,len=this.resolutions.length;i<len;i++){if(closest){diff=Math.abs(this.resolutions[i]-resolution);if(diff>minDiff){break;}
minDiff=diff;}else{if(this.resolutions[i]<resolution){break;}}}
zoom=Math.max(0,i-1);}
return zoom;},getLonLatFromViewPortPx:function(viewPortPx){var lonlat=null;var map=this.map;if(viewPortPx!=null&&map.minPx){var res=map.getResolution();var maxExtent=map.getMaxExtent({restricted:true});var lon=(viewPortPx.x-map.minPx.x)*res+maxExtent.left;var lat=(map.minPx.y-viewPortPx.y)*res+maxExtent.top;lonlat=new OpenLayers.LonLat(lon,lat);if(this.wrapDateLine){lonlat=lonlat.wrapDateLine(this.maxExtent);}}
return lonlat;},getViewPortPxFromLonLat:function(lonlat){var px=null;if(lonlat!=null){var resolution=this.map.getResolution();var extent=this.map.getExtent();px=new OpenLayers.Pixel((1/resolution*(lonlat.lon-extent.left)),(1/resolution*(extent.top-lonlat.lat)));}
return px;},setOpacity:function(opacity){if(opacity!=this.opacity){this.opacity=opacity;for(var i=0,len=this.div.childNodes.length;i<len;++i){var element=this.div.childNodes[i].firstChild;OpenLayers.Util.modifyDOMElement(element,null,null,null,null,null,null,opacity);}
if(this.map!=null){this.map.events.triggerEvent("changelayer",{layer:this,property:"opacity"});}}},getZIndex:function(){return this.div.style.zIndex;},setZIndex:function(zIndex){this.div.style.zIndex=zIndex;},adjustBounds:function(bounds){if(this.gutter){var mapGutter=this.gutter*this.map.getResolution();bounds=new OpenLayers.Bounds(bounds.left-mapGutter,bounds.bottom-mapGutter,bounds.right+mapGutter,bounds.top+mapGutter);}
if(this.wrapDateLine){var wrappingOptions={'rightTolerance':this.getResolution(),'leftTolerance':this.getResolution()};bounds=bounds.wrapDateLine(this.maxExtent,wrappingOptions);}
return bounds;},CLASS_NAME:"OpenLayers.Layer"});OpenLayers.Layer.HTTPRequest=OpenLayers.Class(OpenLayers.Layer,{URL_HASH_FACTOR:(Math.sqrt(5)-1)/2,url:null,params:null,reproject:false,initialize:function(name,url,params,options){OpenLayers.Layer.prototype.initialize.apply(this,[name,options]);this.url=url;this.params=OpenLayers.Util.extend({},params);},destroy:function(){this.url=null;this.params=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.HTTPRequest(this.name,this.url,this.params,this.getOptions());}
obj=OpenLayers.Layer.prototype.clone.apply(this,[obj]);return obj;},setUrl:function(newUrl){this.url=newUrl;},mergeNewParams:function(newParams){this.params=OpenLayers.Util.extend(this.params,newParams);var ret=this.redraw();if(this.map!=null){this.map.events.triggerEvent("changelayer",{layer:this,property:"params"});}
return ret;},redraw:function(force){if(force){return this.mergeNewParams({"_olSalt":Math.random()});}else{return OpenLayers.Layer.prototype.redraw.apply(this,[]);}},selectUrl:function(paramString,urls){var product=1;for(var i=0,len=paramString.length;i<len;i++){product*=paramString.charCodeAt(i)*this.URL_HASH_FACTOR;product-=Math.floor(product);}
return urls[Math.floor(product*urls.length)];},getFullRequestString:function(newParams,altUrl){var url=altUrl||this.url;var allParams=OpenLayers.Util.extend({},this.params);allParams=OpenLayers.Util.extend(allParams,newParams);var paramsString=OpenLayers.Util.getParameterString(allParams);if(OpenLayers.Util.isArray(url)){url=this.selectUrl(paramsString,url);}
var urlParams=OpenLayers.Util.upperCaseObject(OpenLayers.Util.getParameters(url));for(var key in allParams){if(key.toUpperCase()in urlParams){delete allParams[key];}}
paramsString=OpenLayers.Util.getParameterString(allParams);return OpenLayers.Util.urlAppend(url,paramsString);},CLASS_NAME:"OpenLayers.Layer.HTTPRequest"});OpenLayers.Layer.Grid=OpenLayers.Class(OpenLayers.Layer.HTTPRequest,{tileSize:null,tileOriginCorner:"bl",tileOrigin:null,tileOptions:null,grid:null,singleTile:false,ratio:1.5,buffer:0,numLoadingTiles:0,tileLoadingDelay:100,timerId:null,initialize:function(name,url,params,options){OpenLayers.Layer.HTTPRequest.prototype.initialize.apply(this,arguments);this.events.addEventType("tileloaded");this.grid=[];this._moveGriddedTiles=OpenLayers.Function.bind(this.moveGriddedTiles,this);},removeMap:function(map){if(this.timerId!=null){window.clearTimeout(this.timerId);this.timerId=null;}},destroy:function(){this.clearGrid();this.grid=null;this.tileSize=null;OpenLayers.Layer.HTTPRequest.prototype.destroy.apply(this,arguments);},clearGrid:function(){if(this.grid){for(var iRow=0,len=this.grid.length;iRow<len;iRow++){var row=this.grid[iRow];for(var iCol=0,clen=row.length;iCol<clen;iCol++){var tile=row[iCol];this.removeTileMonitoringHooks(tile);tile.destroy();}}
this.grid=[];}},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.Grid(this.name,this.url,this.params,this.getOptions());}
obj=OpenLayers.Layer.HTTPRequest.prototype.clone.apply(this,[obj]);if(this.tileSize!=null){obj.tileSize=this.tileSize.clone();}
obj.grid=[];return obj;},moveTo:function(bounds,zoomChanged,dragging){OpenLayers.Layer.HTTPRequest.prototype.moveTo.apply(this,arguments);bounds=bounds||this.map.getExtent();if(bounds!=null){var forceReTile=!this.grid.length||zoomChanged;var tilesBounds=this.getTilesBounds();if(this.singleTile){if(forceReTile||(!dragging&&!tilesBounds.containsBounds(bounds))){this.initSingleTile(bounds);}}else{if(forceReTile||!tilesBounds.containsBounds(bounds,true)){this.initGriddedTiles(bounds);}else{this.scheduleMoveGriddedTiles();}}}},moveByPx:function(dx,dy){if(!this.singleTile){this.scheduleMoveGriddedTiles();}},scheduleMoveGriddedTiles:function(){if(this.timerId!=null){window.clearTimeout(this.timerId);}
this.timerId=window.setTimeout(this._moveGriddedTiles,this.tileLoadingDelay);},setTileSize:function(size){if(this.singleTile){size=this.map.getSize();size.h=parseInt(size.h*this.ratio);size.w=parseInt(size.w*this.ratio);}
OpenLayers.Layer.HTTPRequest.prototype.setTileSize.apply(this,[size]);},getGridBounds:function(){var msg="The getGridBounds() function is deprecated. It will be "+"removed in 3.0. Please use getTilesBounds() instead.";OpenLayers.Console.warn(msg);return this.getTilesBounds();},getTilesBounds:function(){var bounds=null;if(this.grid.length){var bottom=this.grid.length-1;var bottomLeftTile=this.grid[bottom][0];var right=this.grid[0].length-1;var topRightTile=this.grid[0][right];bounds=new OpenLayers.Bounds(bottomLeftTile.bounds.left,bottomLeftTile.bounds.bottom,topRightTile.bounds.right,topRightTile.bounds.top);}
return bounds;},initSingleTile:function(bounds){var center=bounds.getCenterLonLat();var tileWidth=bounds.getWidth()*this.ratio;var tileHeight=bounds.getHeight()*this.ratio;var tileBounds=new OpenLayers.Bounds(center.lon-(tileWidth/2),center.lat-(tileHeight/2),center.lon+(tileWidth/2),center.lat+(tileHeight/2));var ul=new OpenLayers.LonLat(tileBounds.left,tileBounds.top);var px=this.map.getLayerPxFromLonLat(ul);if(!this.grid.length){this.grid[0]=[];}
var tile=this.grid[0][0];if(!tile){tile=this.addTile(tileBounds,px);this.addTileMonitoringHooks(tile);tile.draw();this.grid[0][0]=tile;}else{tile.moveTo(tileBounds,px);}
this.removeExcessTiles(1,1);},calculateGridLayout:function(bounds,origin,resolution){var tilelon=resolution*this.tileSize.w;var tilelat=resolution*this.tileSize.h;var offsetlon=bounds.left-origin.lon;var tilecol=Math.floor(offsetlon/tilelon)-this.buffer;var tilecolremain=offsetlon/tilelon-tilecol;var tileoffsetx=-tilecolremain*this.tileSize.w;var tileoffsetlon=origin.lon+tilecol*tilelon;var offsetlat=bounds.top-(origin.lat+tilelat);var tilerow=Math.ceil(offsetlat/tilelat)+this.buffer;var tilerowremain=tilerow-offsetlat/tilelat;var tileoffsety=-tilerowremain*this.tileSize.h;var tileoffsetlat=origin.lat+tilerow*tilelat;return{tilelon:tilelon,tilelat:tilelat,tileoffsetlon:tileoffsetlon,tileoffsetlat:tileoffsetlat,tileoffsetx:tileoffsetx,tileoffsety:tileoffsety};},getTileOrigin:function(){var origin=this.tileOrigin;if(!origin){var extent=this.getMaxExtent();var edges=({"tl":["left","top"],"tr":["right","top"],"bl":["left","bottom"],"br":["right","bottom"]})[this.tileOriginCorner];origin=new OpenLayers.LonLat(extent[edges[0]],extent[edges[1]]);}
return origin;},initGriddedTiles:function(bounds){var viewSize=this.map.getSize();var minRows=Math.ceil(viewSize.h/this.tileSize.h)+
Math.max(1,2*this.buffer);var minCols=Math.ceil(viewSize.w/this.tileSize.w)+
Math.max(1,2*this.buffer);var origin=this.getTileOrigin();var resolution=this.map.getResolution();var tileLayout=this.calculateGridLayout(bounds,origin,resolution);var tileoffsetx=Math.round(tileLayout.tileoffsetx);var tileoffsety=Math.round(tileLayout.tileoffsety);var tileoffsetlon=tileLayout.tileoffsetlon;var tileoffsetlat=tileLayout.tileoffsetlat;var tilelon=tileLayout.tilelon;var tilelat=tileLayout.tilelat;this.origin=new OpenLayers.Pixel(tileoffsetx,tileoffsety);var startX=tileoffsetx;var startLon=tileoffsetlon;var rowidx=0;var layerContainerDivLeft=parseInt(this.map.layerContainerDiv.style.left);var layerContainerDivTop=parseInt(this.map.layerContainerDiv.style.top);do{var row=this.grid[rowidx++];if(!row){row=[];this.grid.push(row);}
tileoffsetlon=startLon;tileoffsetx=startX;var colidx=0;do{var tileBounds=new OpenLayers.Bounds(tileoffsetlon,tileoffsetlat,tileoffsetlon+tilelon,tileoffsetlat+tilelat);var x=tileoffsetx;x-=layerContainerDivLeft;var y=tileoffsety;y-=layerContainerDivTop;var px=new OpenLayers.Pixel(x,y);var tile=row[colidx++];if(!tile){tile=this.addTile(tileBounds,px);this.addTileMonitoringHooks(tile);row.push(tile);}else{tile.moveTo(tileBounds,px,false);}
tileoffsetlon+=tilelon;tileoffsetx+=this.tileSize.w;}while((tileoffsetlon<=bounds.right+tilelon*this.buffer)||colidx<minCols);tileoffsetlat-=tilelat;tileoffsety+=this.tileSize.h;}while((tileoffsetlat>=bounds.bottom-tilelat*this.buffer)||rowidx<minRows);this.removeExcessTiles(rowidx,colidx);this.spiralTileLoad();},getMaxExtent:function(){return this.maxExtent;},spiralTileLoad:function(){var tileQueue=[];var directions=["right","down","left","up"];var iRow=0;var iCell=-1;var direction=OpenLayers.Util.indexOf(directions,"right");var directionsTried=0;while(directionsTried<directions.length){var testRow=iRow;var testCell=iCell;switch(directions[direction]){case"right":testCell++;break;case"down":testRow++;break;case"left":testCell--;break;case"up":testRow--;break;}
var tile=null;if((testRow<this.grid.length)&&(testRow>=0)&&(testCell<this.grid[0].length)&&(testCell>=0)){tile=this.grid[testRow][testCell];}
if((tile!=null)&&(!tile.queued)){tileQueue.unshift(tile);tile.queued=true;directionsTried=0;iRow=testRow;iCell=testCell;}else{direction=(direction+1)%4;directionsTried++;}}
for(var i=0,len=tileQueue.length;i<len;i++){var tile=tileQueue[i];tile.draw();tile.queued=false;}},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize,this.tileOptions);},addTileMonitoringHooks:function(tile){tile.onLoadStart=function(){if(this.numLoadingTiles==0){this.events.triggerEvent("loadstart");}
this.numLoadingTiles++;};tile.events.register("loadstart",this,tile.onLoadStart);tile.onLoadEnd=function(){this.numLoadingTiles--;this.events.triggerEvent("tileloaded");if(this.numLoadingTiles==0){this.events.triggerEvent("loadend");}};tile.events.register("loadend",this,tile.onLoadEnd);tile.events.register("unload",this,tile.onLoadEnd);},removeTileMonitoringHooks:function(tile){tile.unload();tile.events.un({"loadstart":tile.onLoadStart,"loadend":tile.onLoadEnd,"unload":tile.onLoadEnd,scope:this});},moveGriddedTiles:function(){var shifted=true;var buffer=this.buffer||1;var tlLayer=this.grid[0][0].position;var offsetX=parseInt(this.map.layerContainerDiv.style.left);var offsetY=parseInt(this.map.layerContainerDiv.style.top);var tlViewPort=tlLayer.add(offsetX,offsetY);if(tlViewPort.x>-this.tileSize.w*(buffer-1)){this.shiftColumn(true);}else if(tlViewPort.x<-this.tileSize.w*buffer){this.shiftColumn(false);}else if(tlViewPort.y>-this.tileSize.h*(buffer-1)){this.shiftRow(true);}else if(tlViewPort.y<-this.tileSize.h*buffer){this.shiftRow(false);}else{shifted=false;}
if(shifted){this.timerId=window.setTimeout(this._moveGriddedTiles,0);}},shiftRow:function(prepend){var modelRowIndex=(prepend)?0:(this.grid.length-1);var grid=this.grid;var modelRow=grid[modelRowIndex];var resolution=this.map.getResolution();var deltaY=(prepend)?-this.tileSize.h:this.tileSize.h;var deltaLat=resolution*-deltaY;var row=(prepend)?grid.pop():grid.shift();for(var i=0,len=modelRow.length;i<len;i++){var modelTile=modelRow[i];var bounds=modelTile.bounds.clone();var position=modelTile.position.clone();bounds.bottom=bounds.bottom+deltaLat;bounds.top=bounds.top+deltaLat;position.y=position.y+deltaY;row[i].moveTo(bounds,position);}
if(prepend){grid.unshift(row);}else{grid.push(row);}},shiftColumn:function(prepend){var deltaX=(prepend)?-this.tileSize.w:this.tileSize.w;var resolution=this.map.getResolution();var deltaLon=resolution*deltaX;for(var i=0,len=this.grid.length;i<len;i++){var row=this.grid[i];var modelTileIndex=(prepend)?0:(row.length-1);var modelTile=row[modelTileIndex];var bounds=modelTile.bounds.clone();var position=modelTile.position.clone();bounds.left=bounds.left+deltaLon;bounds.right=bounds.right+deltaLon;position.x=position.x+deltaX;var tile=prepend?this.grid[i].pop():this.grid[i].shift();tile.moveTo(bounds,position);if(prepend){row.unshift(tile);}else{row.push(tile);}}},removeExcessTiles:function(rows,columns){while(this.grid.length>rows){var row=this.grid.pop();for(var i=0,l=row.length;i<l;i++){var tile=row[i];this.removeTileMonitoringHooks(tile);tile.destroy();}}
while(this.grid[0].length>columns){for(var i=0,l=this.grid.length;i<l;i++){var row=this.grid[i];var tile=row.pop();this.removeTileMonitoringHooks(tile);tile.destroy();}}},onMapResize:function(){if(this.singleTile){this.clearGrid();this.setTileSize();}},getTileBounds:function(viewPortPx){var maxExtent=this.maxExtent;var resolution=this.getResolution();var tileMapWidth=resolution*this.tileSize.w;var tileMapHeight=resolution*this.tileSize.h;var mapPoint=this.getLonLatFromViewPortPx(viewPortPx);var tileLeft=maxExtent.left+(tileMapWidth*Math.floor((mapPoint.lon-
maxExtent.left)/tileMapWidth));var tileBottom=maxExtent.bottom+(tileMapHeight*Math.floor((mapPoint.lat-
maxExtent.bottom)/tileMapHeight));return new OpenLayers.Bounds(tileLeft,tileBottom,tileLeft+tileMapWidth,tileBottom+tileMapHeight);},CLASS_NAME:"OpenLayers.Layer.Grid"});OpenLayers.Protocol=OpenLayers.Class({format:null,options:null,autoDestroy:true,defaultFilter:null,initialize:function(options){options=options||{};OpenLayers.Util.extend(this,options);this.options=options;},mergeWithDefaultFilter:function(filter){var merged;if(filter&&this.defaultFilter){merged=new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:[this.defaultFilter,filter]});}else{merged=filter||this.defaultFilter||undefined;}
return merged;},destroy:function(){this.options=null;this.format=null;},read:function(options){options=options||{};options.filter=this.mergeWithDefaultFilter(options.filter);},create:function(){},update:function(){},"delete":function(){},commit:function(){},abort:function(response){},createCallback:function(method,response,options){return OpenLayers.Function.bind(function(){method.apply(this,[response,options]);},this);},CLASS_NAME:"OpenLayers.Protocol"});OpenLayers.Protocol.Response=OpenLayers.Class({code:null,requestType:null,last:true,features:null,reqFeatures:null,priv:null,error:null,initialize:function(options){OpenLayers.Util.extend(this,options);},success:function(){return this.code>0;},CLASS_NAME:"OpenLayers.Protocol.Response"});OpenLayers.Protocol.Response.SUCCESS=1;OpenLayers.Protocol.Response.FAILURE=0;OpenLayers.Filter=OpenLayers.Class({initialize:function(options){OpenLayers.Util.extend(this,options);},destroy:function(){},evaluate:function(context){return true;},clone:function(){return null;},CLASS_NAME:"OpenLayers.Filter"});OpenLayers.Filter.Spatial=OpenLayers.Class(OpenLayers.Filter,{type:null,property:null,value:null,distance:null,distanceUnits:null,initialize:function(options){OpenLayers.Filter.prototype.initialize.apply(this,[options]);},evaluate:function(feature){var intersect=false;switch(this.type){case OpenLayers.Filter.Spatial.BBOX:case OpenLayers.Filter.Spatial.INTERSECTS:if(feature.geometry){var geom=this.value;if(this.value.CLASS_NAME=="OpenLayers.Bounds"){geom=this.value.toGeometry();}
if(feature.geometry.intersects(geom)){intersect=true;}}
break;default:OpenLayers.Console.error(OpenLayers.i18n("filterEvaluateNotImplemented"));break;}
return intersect;},clone:function(){var options=OpenLayers.Util.applyDefaults({value:this.value&&this.value.clone&&this.value.clone()},this);return new OpenLayers.Filter.Spatial(options);},CLASS_NAME:"OpenLayers.Filter.Spatial"});OpenLayers.Filter.Spatial.BBOX="BBOX";OpenLayers.Filter.Spatial.INTERSECTS="INTERSECTS";OpenLayers.Filter.Spatial.DWITHIN="DWITHIN";OpenLayers.Filter.Spatial.WITHIN="WITHIN";OpenLayers.Filter.Spatial.CONTAINS="CONTAINS";OpenLayers.Filter.Comparison=OpenLayers.Class(OpenLayers.Filter,{type:null,property:null,value:null,matchCase:true,lowerBoundary:null,upperBoundary:null,initialize:function(options){OpenLayers.Filter.prototype.initialize.apply(this,[options]);if(this.type===OpenLayers.Filter.Comparison.LIKE&&options.matchCase===undefined){this.matchCase=null;}},evaluate:function(context){if(context instanceof OpenLayers.Feature.Vector){context=context.attributes;}
var result=false;var got=context[this.property];var exp;switch(this.type){case OpenLayers.Filter.Comparison.EQUAL_TO:exp=this.value;if(!this.matchCase&&typeof got=="string"&&typeof exp=="string"){result=(got.toUpperCase()==exp.toUpperCase());}else{result=(got==exp);}
break;case OpenLayers.Filter.Comparison.NOT_EQUAL_TO:exp=this.value;if(!this.matchCase&&typeof got=="string"&&typeof exp=="string"){result=(got.toUpperCase()!=exp.toUpperCase());}else{result=(got!=exp);}
break;case OpenLayers.Filter.Comparison.LESS_THAN:result=got<this.value;break;case OpenLayers.Filter.Comparison.GREATER_THAN:result=got>this.value;break;case OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO:result=got<=this.value;break;case OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO:result=got>=this.value;break;case OpenLayers.Filter.Comparison.BETWEEN:result=(got>=this.lowerBoundary)&&(got<=this.upperBoundary);break;case OpenLayers.Filter.Comparison.LIKE:var regexp=new RegExp(this.value,"gi");result=regexp.test(got);break;}
return result;},value2regex:function(wildCard,singleChar,escapeChar){if(wildCard=="."){var msg="'.' is an unsupported wildCard character for "+"OpenLayers.Filter.Comparison";OpenLayers.Console.error(msg);return null;}
wildCard=wildCard?wildCard:"*";singleChar=singleChar?singleChar:".";escapeChar=escapeChar?escapeChar:"!";this.value=this.value.replace(new RegExp("\\"+escapeChar+"(.|$)","g"),"\\$1");this.value=this.value.replace(new RegExp("\\"+singleChar,"g"),".");this.value=this.value.replace(new RegExp("\\"+wildCard,"g"),".*");this.value=this.value.replace(new RegExp("\\\\.\\*","g"),"\\"+wildCard);this.value=this.value.replace(new RegExp("\\\\\\.","g"),"\\"+singleChar);return this.value;},regex2value:function(){var value=this.value;value=value.replace(/!/g,"!!");value=value.replace(/(\\)?\\\./g,function($0,$1){return $1?$0:"!.";});value=value.replace(/(\\)?\\\*/g,function($0,$1){return $1?$0:"!*";});value=value.replace(/\\\\/g,"\\");value=value.replace(/\.\*/g,"*");return value;},clone:function(){return OpenLayers.Util.extend(new OpenLayers.Filter.Comparison(),this);},CLASS_NAME:"OpenLayers.Filter.Comparison"});OpenLayers.Filter.Comparison.EQUAL_TO="==";OpenLayers.Filter.Comparison.NOT_EQUAL_TO="!=";OpenLayers.Filter.Comparison.LESS_THAN="<";OpenLayers.Filter.Comparison.GREATER_THAN=">";OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO="<=";OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO=">=";OpenLayers.Filter.Comparison.BETWEEN="..";OpenLayers.Filter.Comparison.LIKE="~";OpenLayers.Filter.Logical=OpenLayers.Class(OpenLayers.Filter,{filters:null,type:null,initialize:function(options){this.filters=[];OpenLayers.Filter.prototype.initialize.apply(this,[options]);},destroy:function(){this.filters=null;OpenLayers.Filter.prototype.destroy.apply(this);},evaluate:function(context){var i,len;switch(this.type){case OpenLayers.Filter.Logical.AND:for(i=0,len=this.filters.length;i<len;i++){if(this.filters[i].evaluate(context)==false){return false;}}
return true;case OpenLayers.Filter.Logical.OR:for(i=0,len=this.filters.length;i<len;i++){if(this.filters[i].evaluate(context)==true){return true;}}
return false;case OpenLayers.Filter.Logical.NOT:return(!this.filters[0].evaluate(context));}
return undefined;},clone:function(){var filters=[];for(var i=0,len=this.filters.length;i<len;++i){filters.push(this.filters[i].clone());}
return new OpenLayers.Filter.Logical({type:this.type,filters:filters});},CLASS_NAME:"OpenLayers.Filter.Logical"});OpenLayers.Filter.Logical.AND="&&";OpenLayers.Filter.Logical.OR="||";OpenLayers.Filter.Logical.NOT="!";OpenLayers.Request={DEFAULT_CONFIG:{method:"GET",url:window.location.href,async:true,user:undefined,password:undefined,params:null,proxy:OpenLayers.ProxyHost,headers:{},data:null,callback:function(){},success:null,failure:null,scope:null},URL_SPLIT_REGEX:/([^:]*:)\/\/([^:]*:?[^@]*@)?([^:\/\?]*):?([^\/\?]*)/,events:new OpenLayers.Events(this,null,["complete","success","failure"]),issue:function(config){var defaultConfig=OpenLayers.Util.extend(this.DEFAULT_CONFIG,{proxy:OpenLayers.ProxyHost});config=OpenLayers.Util.applyDefaults(config,defaultConfig);var request=new OpenLayers.Request.XMLHttpRequest();var url=OpenLayers.Util.urlAppend(config.url,OpenLayers.Util.getParameterString(config.params||{}));var sameOrigin=!(url.indexOf("http")==0);var urlParts=!sameOrigin&&url.match(this.URL_SPLIT_REGEX);if(urlParts){var location=window.location;sameOrigin=urlParts[1]==location.protocol&&urlParts[3]==location.hostname;var uPort=urlParts[4],lPort=location.port;if(uPort!=80&&uPort!=""||lPort!="80"&&lPort!=""){sameOrigin=sameOrigin&&uPort==lPort;}}
if(!sameOrigin){if(config.proxy){if(typeof config.proxy=="function"){url=config.proxy(url);}else{url=config.proxy+encodeURIComponent(url);}}else{OpenLayers.Console.warn(OpenLayers.i18n("proxyNeeded"),{url:url});}}
request.open(config.method,url,config.async,config.user,config.password);for(var header in config.headers){request.setRequestHeader(header,config.headers[header]);}
var events=this.events;var self=this;request.onreadystatechange=function(){if(request.readyState==OpenLayers.Request.XMLHttpRequest.DONE){var proceed=events.triggerEvent("complete",{request:request,config:config,requestUrl:url});if(proceed!==false){self.runCallbacks({request:request,config:config,requestUrl:url});}}};if(config.async===false){request.send(config.data);}else{window.setTimeout(function(){if(request.readyState!==0){request.send(config.data);}},0);}
return request;},runCallbacks:function(options){var request=options.request;var config=options.config;var complete=(config.scope)?OpenLayers.Function.bind(config.callback,config.scope):config.callback;var success;if(config.success){success=(config.scope)?OpenLayers.Function.bind(config.success,config.scope):config.success;}
var failure;if(config.failure){failure=(config.scope)?OpenLayers.Function.bind(config.failure,config.scope):config.failure;}
if(OpenLayers.Util.createUrlObject(config.url).protocol=="file:"&&request.responseText){request.status=200;}
complete(request);if(!request.status||(request.status>=200&&request.status<300)){this.events.triggerEvent("success",options);if(success){success(request);}}
if(request.status&&(request.status<200||request.status>=300)){this.events.triggerEvent("failure",options);if(failure){failure(request);}}},GET:function(config){config=OpenLayers.Util.extend(config,{method:"GET"});return OpenLayers.Request.issue(config);},POST:function(config){config=OpenLayers.Util.extend(config,{method:"POST"});config.headers=config.headers?config.headers:{};if(!("CONTENT-TYPE"in OpenLayers.Util.upperCaseObject(config.headers))){config.headers["Content-Type"]="application/xml";}
return OpenLayers.Request.issue(config);},PUT:function(config){config=OpenLayers.Util.extend(config,{method:"PUT"});config.headers=config.headers?config.headers:{};if(!("CONTENT-TYPE"in OpenLayers.Util.upperCaseObject(config.headers))){config.headers["Content-Type"]="application/xml";}
return OpenLayers.Request.issue(config);},DELETE:function(config){config=OpenLayers.Util.extend(config,{method:"DELETE"});return OpenLayers.Request.issue(config);},HEAD:function(config){config=OpenLayers.Util.extend(config,{method:"HEAD"});return OpenLayers.Request.issue(config);},OPTIONS:function(config){config=OpenLayers.Util.extend(config,{method:"OPTIONS"});return OpenLayers.Request.issue(config);}};(function(){var oXMLHttpRequest=window.XMLHttpRequest;var bGecko=!!window.controllers,bIE=window.document.all&&!window.opera,bIE7=bIE&&window.navigator.userAgent.match(/MSIE 7.0/);function fXMLHttpRequest(){this._object=oXMLHttpRequest&&!bIE7?new oXMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");this._listeners=[];};function cXMLHttpRequest(){return new fXMLHttpRequest;};cXMLHttpRequest.prototype=fXMLHttpRequest.prototype;if(bGecko&&oXMLHttpRequest.wrapped)
cXMLHttpRequest.wrapped=oXMLHttpRequest.wrapped;cXMLHttpRequest.UNSENT=0;cXMLHttpRequest.OPENED=1;cXMLHttpRequest.HEADERS_RECEIVED=2;cXMLHttpRequest.LOADING=3;cXMLHttpRequest.DONE=4;cXMLHttpRequest.prototype.readyState=cXMLHttpRequest.UNSENT;cXMLHttpRequest.prototype.responseText='';cXMLHttpRequest.prototype.responseXML=null;cXMLHttpRequest.prototype.status=0;cXMLHttpRequest.prototype.statusText='';cXMLHttpRequest.prototype.priority="NORMAL";cXMLHttpRequest.prototype.onreadystatechange=null;cXMLHttpRequest.onreadystatechange=null;cXMLHttpRequest.onopen=null;cXMLHttpRequest.onsend=null;cXMLHttpRequest.onabort=null;cXMLHttpRequest.prototype.open=function(sMethod,sUrl,bAsync,sUser,sPassword){delete this._headers;if(arguments.length<3)
bAsync=true;this._async=bAsync;var oRequest=this,nState=this.readyState,fOnUnload;if(bIE&&bAsync){fOnUnload=function(){if(nState!=cXMLHttpRequest.DONE){fCleanTransport(oRequest);oRequest.abort();}};window.attachEvent("onunload",fOnUnload);}
if(cXMLHttpRequest.onopen)
cXMLHttpRequest.onopen.apply(this,arguments);if(arguments.length>4)
this._object.open(sMethod,sUrl,bAsync,sUser,sPassword);else
if(arguments.length>3)
this._object.open(sMethod,sUrl,bAsync,sUser);else
this._object.open(sMethod,sUrl,bAsync);this.readyState=cXMLHttpRequest.OPENED;fReadyStateChange(this);this._object.onreadystatechange=function(){if(bGecko&&!bAsync)
return;oRequest.readyState=oRequest._object.readyState;fSynchronizeValues(oRequest);if(oRequest._aborted){oRequest.readyState=cXMLHttpRequest.UNSENT;return;}
if(oRequest.readyState==cXMLHttpRequest.DONE){delete oRequest._data;fCleanTransport(oRequest);if(bIE&&bAsync)
window.detachEvent("onunload",fOnUnload);}
if(nState!=oRequest.readyState)
fReadyStateChange(oRequest);nState=oRequest.readyState;}};function fXMLHttpRequest_send(oRequest){oRequest._object.send(oRequest._data);if(bGecko&&!oRequest._async){oRequest.readyState=cXMLHttpRequest.OPENED;fSynchronizeValues(oRequest);while(oRequest.readyState<cXMLHttpRequest.DONE){oRequest.readyState++;fReadyStateChange(oRequest);if(oRequest._aborted)
return;}}};cXMLHttpRequest.prototype.send=function(vData){if(cXMLHttpRequest.onsend)
cXMLHttpRequest.onsend.apply(this,arguments);if(!arguments.length)
vData=null;if(vData&&vData.nodeType){vData=window.XMLSerializer?new window.XMLSerializer().serializeToString(vData):vData.xml;if(!oRequest._headers["Content-Type"])
oRequest._object.setRequestHeader("Content-Type","application/xml");}
this._data=vData;fXMLHttpRequest_send(this);};cXMLHttpRequest.prototype.abort=function(){if(cXMLHttpRequest.onabort)
cXMLHttpRequest.onabort.apply(this,arguments);if(this.readyState>cXMLHttpRequest.UNSENT)
this._aborted=true;this._object.abort();fCleanTransport(this);this.readyState=cXMLHttpRequest.UNSENT;delete this._data;};cXMLHttpRequest.prototype.getAllResponseHeaders=function(){return this._object.getAllResponseHeaders();};cXMLHttpRequest.prototype.getResponseHeader=function(sName){return this._object.getResponseHeader(sName);};cXMLHttpRequest.prototype.setRequestHeader=function(sName,sValue){if(!this._headers)
this._headers={};this._headers[sName]=sValue;return this._object.setRequestHeader(sName,sValue);};cXMLHttpRequest.prototype.addEventListener=function(sName,fHandler,bUseCapture){for(var nIndex=0,oListener;oListener=this._listeners[nIndex];nIndex++)
if(oListener[0]==sName&&oListener[1]==fHandler&&oListener[2]==bUseCapture)
return;this._listeners.push([sName,fHandler,bUseCapture]);};cXMLHttpRequest.prototype.removeEventListener=function(sName,fHandler,bUseCapture){for(var nIndex=0,oListener;oListener=this._listeners[nIndex];nIndex++)
if(oListener[0]==sName&&oListener[1]==fHandler&&oListener[2]==bUseCapture)
break;if(oListener)
this._listeners.splice(nIndex,1);};cXMLHttpRequest.prototype.dispatchEvent=function(oEvent){var oEventPseudo={'type':oEvent.type,'target':this,'currentTarget':this,'eventPhase':2,'bubbles':oEvent.bubbles,'cancelable':oEvent.cancelable,'timeStamp':oEvent.timeStamp,'stopPropagation':function(){},'preventDefault':function(){},'initEvent':function(){}};if(oEventPseudo.type=="readystatechange"&&this.onreadystatechange)
(this.onreadystatechange.handleEvent||this.onreadystatechange).apply(this,[oEventPseudo]);for(var nIndex=0,oListener;oListener=this._listeners[nIndex];nIndex++)
if(oListener[0]==oEventPseudo.type&&!oListener[2])
(oListener[1].handleEvent||oListener[1]).apply(this,[oEventPseudo]);};cXMLHttpRequest.prototype.toString=function(){return'['+"object"+' '+"XMLHttpRequest"+']';};cXMLHttpRequest.toString=function(){return'['+"XMLHttpRequest"+']';};function fReadyStateChange(oRequest){if(cXMLHttpRequest.onreadystatechange)
cXMLHttpRequest.onreadystatechange.apply(oRequest);oRequest.dispatchEvent({'type':"readystatechange",'bubbles':false,'cancelable':false,'timeStamp':new Date+0});};function fGetDocument(oRequest){var oDocument=oRequest.responseXML,sResponse=oRequest.responseText;if(bIE&&sResponse&&oDocument&&!oDocument.documentElement&&oRequest.getResponseHeader("Content-Type").match(/[^\/]+\/[^\+]+\+xml/)){oDocument=new window.ActiveXObject("Microsoft.XMLDOM");oDocument.async=false;oDocument.validateOnParse=false;oDocument.loadXML(sResponse);}
if(oDocument)
if((bIE&&oDocument.parseError!=0)||!oDocument.documentElement||(oDocument.documentElement&&oDocument.documentElement.tagName=="parsererror"))
return null;return oDocument;};function fSynchronizeValues(oRequest){try{oRequest.responseText=oRequest._object.responseText;}catch(e){}
try{oRequest.responseXML=fGetDocument(oRequest._object);}catch(e){}
try{oRequest.status=oRequest._object.status;}catch(e){}
try{oRequest.statusText=oRequest._object.statusText;}catch(e){}};function fCleanTransport(oRequest){oRequest._object.onreadystatechange=new window.Function;};if(!window.Function.prototype.apply){window.Function.prototype.apply=function(oRequest,oArguments){if(!oArguments)
oArguments=[];oRequest.__func=this;oRequest.__func(oArguments[0],oArguments[1],oArguments[2],oArguments[3],oArguments[4]);delete oRequest.__func;};};OpenLayers.Request.XMLHttpRequest=cXMLHttpRequest;})();OpenLayers.Format.QueryStringFilter=(function(){var cmpToStr={};cmpToStr[OpenLayers.Filter.Comparison.EQUAL_TO]="eq";cmpToStr[OpenLayers.Filter.Comparison.NOT_EQUAL_TO]="ne";cmpToStr[OpenLayers.Filter.Comparison.LESS_THAN]="lt";cmpToStr[OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO]="lte";cmpToStr[OpenLayers.Filter.Comparison.GREATER_THAN]="gt";cmpToStr[OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO]="gte";cmpToStr[OpenLayers.Filter.Comparison.LIKE]="ilike";function regex2value(value){value=value.replace(/%/g,"\\%");value=value.replace(/\\\\\.(\*)?/g,function($0,$1){return $1?$0:"\\\\_";});value=value.replace(/\\\\\.\*/g,"\\\\%");value=value.replace(/(\\)?\.(\*)?/g,function($0,$1,$2){return $1||$2?$0:"_";});value=value.replace(/(\\)?\.\*/g,function($0,$1){return $1?$0:"%";});value=value.replace(/\\\./g,".");value=value.replace(/(\\)?\\\*/g,function($0,$1){return $1?$0:"*";});return value;}
return OpenLayers.Class(OpenLayers.Format,{wildcarded:false,srsInBBOX:false,write:function(filter,params){params=params||{};var className=filter.CLASS_NAME;var filterType=className.substring(className.lastIndexOf(".")+1);switch(filterType){case"Spatial":switch(filter.type){case OpenLayers.Filter.Spatial.BBOX:params.bbox=filter.value.toArray();if(this.srsInBBOX&&filter.projection){params.bbox.push(filter.projection.getCode());}
break;case OpenLayers.Filter.Spatial.DWITHIN:params.tolerance=filter.distance;case OpenLayers.Filter.Spatial.WITHIN:params.lon=filter.value.x;params.lat=filter.value.y;break;default:OpenLayers.Console.warn("Unknown spatial filter type "+filter.type);}
break;case"Comparison":var op=cmpToStr[filter.type];if(op!==undefined){var value=filter.value;if(filter.type==OpenLayers.Filter.Comparison.LIKE){value=regex2value(value);if(this.wildcarded){value="%"+value+"%";}}
params[filter.property+"__"+op]=value;params.queryable=params.queryable||[];params.queryable.push(filter.property);}else{OpenLayers.Console.warn("Unknown comparison filter type "+filter.type);}
break;case"Logical":if(filter.type===OpenLayers.Filter.Logical.AND){for(var i=0,len=filter.filters.length;i<len;i++){params=this.write(filter.filters[i],params);}}else{OpenLayers.Console.warn("Unsupported logical filter type "+filter.type);}
break;default:OpenLayers.Console.warn("Unknown filter type "+filterType);}
return params;},CLASS_NAME:"OpenLayers.Format.QueryStringFilter"});})();OpenLayers.Protocol.HTTP=OpenLayers.Class(OpenLayers.Protocol,{url:null,headers:null,params:null,callback:null,scope:null,readWithPOST:false,wildcarded:false,srsInBBOX:false,initialize:function(options){options=options||{};this.params={};this.headers={};OpenLayers.Protocol.prototype.initialize.apply(this,arguments);if(!this.filterToParams&&OpenLayers.Format.QueryStringFilter){var format=new OpenLayers.Format.QueryStringFilter({wildcarded:this.wildcarded,srsInBBOX:this.srsInBBOX});this.filterToParams=function(filter,params){return format.write(filter,params);}}},destroy:function(){this.params=null;this.headers=null;OpenLayers.Protocol.prototype.destroy.apply(this);},read:function(options){OpenLayers.Protocol.prototype.read.apply(this,arguments);options=options||{};options.params=OpenLayers.Util.applyDefaults(options.params,this.options.params);options=OpenLayers.Util.applyDefaults(options,this.options);if(options.filter&&this.filterToParams){options.params=this.filterToParams(options.filter,options.params);}
var readWithPOST=(options.readWithPOST!==undefined)?options.readWithPOST:this.readWithPOST;var resp=new OpenLayers.Protocol.Response({requestType:"read"});if(readWithPOST){resp.priv=OpenLayers.Request.POST({url:options.url,callback:this.createCallback(this.handleRead,resp,options),data:OpenLayers.Util.getParameterString(options.params),headers:{"Content-Type":"application/x-www-form-urlencoded"}});}else{resp.priv=OpenLayers.Request.GET({url:options.url,callback:this.createCallback(this.handleRead,resp,options),params:options.params,headers:options.headers});}
return resp;},handleRead:function(resp,options){this.handleResponse(resp,options);},create:function(features,options){options=OpenLayers.Util.applyDefaults(options,this.options);var resp=new OpenLayers.Protocol.Response({reqFeatures:features,requestType:"create"});resp.priv=OpenLayers.Request.POST({url:options.url,callback:this.createCallback(this.handleCreate,resp,options),headers:options.headers,data:this.format.write(features)});return resp;},handleCreate:function(resp,options){this.handleResponse(resp,options);},update:function(feature,options){options=options||{};var url=options.url||feature.url||this.options.url+"/"+feature.fid;options=OpenLayers.Util.applyDefaults(options,this.options);var resp=new OpenLayers.Protocol.Response({reqFeatures:feature,requestType:"update"});resp.priv=OpenLayers.Request.PUT({url:url,callback:this.createCallback(this.handleUpdate,resp,options),headers:options.headers,data:this.format.write(feature)});return resp;},handleUpdate:function(resp,options){this.handleResponse(resp,options);},"delete":function(feature,options){options=options||{};var url=options.url||feature.url||this.options.url+"/"+feature.fid;options=OpenLayers.Util.applyDefaults(options,this.options);var resp=new OpenLayers.Protocol.Response({reqFeatures:feature,requestType:"delete"});resp.priv=OpenLayers.Request.DELETE({url:url,callback:this.createCallback(this.handleDelete,resp,options),headers:options.headers});return resp;},handleDelete:function(resp,options){this.handleResponse(resp,options);},handleResponse:function(resp,options){var request=resp.priv;if(options.callback){if(request.status>=200&&request.status<300){if(resp.requestType!="delete"){resp.features=this.parseFeatures(request);}
resp.code=OpenLayers.Protocol.Response.SUCCESS;}else{resp.code=OpenLayers.Protocol.Response.FAILURE;}
options.callback.call(options.scope,resp);}},parseFeatures:function(request){var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}
if(!doc||doc.length<=0){return null;}
return this.format.read(doc);},commit:function(features,options){options=OpenLayers.Util.applyDefaults(options,this.options);var resp=[],nResponses=0;var types={};types[OpenLayers.State.INSERT]=[];types[OpenLayers.State.UPDATE]=[];types[OpenLayers.State.DELETE]=[];var feature,list,requestFeatures=[];for(var i=0,len=features.length;i<len;++i){feature=features[i];list=types[feature.state];if(list){list.push(feature);requestFeatures.push(feature);}}
var nRequests=(types[OpenLayers.State.INSERT].length>0?1:0)+
types[OpenLayers.State.UPDATE].length+
types[OpenLayers.State.DELETE].length;var success=true;var finalResponse=new OpenLayers.Protocol.Response({reqFeatures:requestFeatures});function insertCallback(response){var len=response.features?response.features.length:0;var fids=new Array(len);for(var i=0;i<len;++i){fids[i]=response.features[i].fid;}
finalResponse.insertIds=fids;callback.apply(this,[response]);}
function callback(response){this.callUserCallback(response,options);success=success&&response.success();nResponses++;if(nResponses>=nRequests){if(options.callback){finalResponse.code=success?OpenLayers.Protocol.Response.SUCCESS:OpenLayers.Protocol.Response.FAILURE;options.callback.apply(options.scope,[finalResponse]);}}}
var queue=types[OpenLayers.State.INSERT];if(queue.length>0){resp.push(this.create(queue,OpenLayers.Util.applyDefaults({callback:insertCallback,scope:this},options.create)));}
queue=types[OpenLayers.State.UPDATE];for(var i=queue.length-1;i>=0;--i){resp.push(this.update(queue[i],OpenLayers.Util.applyDefaults({callback:callback,scope:this},options.update)));}
queue=types[OpenLayers.State.DELETE];for(var i=queue.length-1;i>=0;--i){resp.push(this["delete"](queue[i],OpenLayers.Util.applyDefaults({callback:callback,scope:this},options["delete"])));}
return resp;},abort:function(response){if(response){response.priv.abort();}},callUserCallback:function(resp,options){var opt=options[resp.requestType];if(opt&&opt.callback){opt.callback.call(opt.scope,resp);}},CLASS_NAME:"OpenLayers.Protocol.HTTP"});OpenLayers.Handler=OpenLayers.Class({id:null,control:null,map:null,keyMask:null,active:false,evt:null,initialize:function(control,callbacks,options){OpenLayers.Util.extend(this,options);this.control=control;this.callbacks=callbacks;var map=this.map||control.map;if(map){this.setMap(map);}
this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+"_");},setMap:function(map){this.map=map;},checkModifiers:function(evt){if(this.keyMask==null){return true;}
var keyModifiers=(evt.shiftKey?OpenLayers.Handler.MOD_SHIFT:0)|(evt.ctrlKey?OpenLayers.Handler.MOD_CTRL:0)|(evt.altKey?OpenLayers.Handler.MOD_ALT:0);return(keyModifiers==this.keyMask);},activate:function(){if(this.active){return false;}
var events=OpenLayers.Events.prototype.BROWSER_EVENTS;for(var i=0,len=events.length;i<len;i++){if(this[events[i]]){this.register(events[i],this[events[i]]);}}
this.active=true;return true;},deactivate:function(){if(!this.active){return false;}
var events=OpenLayers.Events.prototype.BROWSER_EVENTS;for(var i=0,len=events.length;i<len;i++){if(this[events[i]]){this.unregister(events[i],this[events[i]]);}}
this.active=false;return true;},callback:function(name,args){if(name&&this.callbacks[name]){this.callbacks[name].apply(this.control,args);}},register:function(name,method){this.map.events.registerPriority(name,this,method);this.map.events.registerPriority(name,this,this.setEvent);},unregister:function(name,method){this.map.events.unregister(name,this,method);this.map.events.unregister(name,this,this.setEvent);},setEvent:function(evt){this.evt=evt;return true;},destroy:function(){this.deactivate();this.control=this.map=null;},CLASS_NAME:"OpenLayers.Handler"});OpenLayers.Handler.MOD_NONE=0;OpenLayers.Handler.MOD_SHIFT=1;OpenLayers.Handler.MOD_CTRL=2;OpenLayers.Handler.MOD_ALT=4;OpenLayers.Handler.Click=OpenLayers.Class(OpenLayers.Handler,{delay:300,single:true,'double':false,pixelTolerance:0,dblclickTolerance:13,stopSingle:false,stopDouble:false,timerId:null,touch:false,down:null,last:null,first:null,rightclickTimerId:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);},touchstart:function(evt){if(!this.touch){this.unregisterMouseListeners();this.touch=true;}
this.down=this.getEventInfo(evt);this.last=this.getEventInfo(evt);return true;},touchmove:function(evt){this.last=this.getEventInfo(evt);return true;},touchend:function(evt){if(this.down){evt.xy=this.last.xy;evt.lastTouches=this.last.touches;this.handleSingle(evt);this.down=null;}
return true;},unregisterMouseListeners:function(){this.map.events.un({mousedown:this.mousedown,mouseup:this.mouseup,click:this.click,dblclick:this.dblclick,scope:this});},mousedown:function(evt){this.down=this.getEventInfo(evt);this.last=this.getEventInfo(evt);return true;},mouseup:function(evt){var propagate=true;if(this.checkModifiers(evt)&&this.control.handleRightClicks&&OpenLayers.Event.isRightClick(evt)){propagate=this.rightclick(evt);}
return propagate;},rightclick:function(evt){if(this.passesTolerance(evt)){if(this.rightclickTimerId!=null){this.clearTimer();this.callback('dblrightclick',[evt]);return!this.stopDouble;}else{var clickEvent=this['double']?OpenLayers.Util.extend({},evt):this.callback('rightclick',[evt]);var delayedRightCall=OpenLayers.Function.bind(this.delayedRightCall,this,clickEvent);this.rightclickTimerId=window.setTimeout(delayedRightCall,this.delay);}}
return!this.stopSingle;},delayedRightCall:function(evt){this.rightclickTimerId=null;if(evt){this.callback('rightclick',[evt]);}},click:function(evt){if(!this.last){this.last=this.getEventInfo(evt);}
this.handleSingle(evt);return!this.stopSingle;},dblclick:function(evt){this.handleDouble(evt);return!this.stopDouble;},handleDouble:function(evt){if(this["double"]&&this.passesDblclickTolerance(evt)){this.callback("dblclick",[evt]);}},handleSingle:function(evt){if(this.passesTolerance(evt)){if(this.timerId!=null){if(this.last.touches&&this.last.touches.length===1){if(this["double"]){OpenLayers.Event.stop(evt);}
this.handleDouble(evt);}
if(!this.last.touches||this.last.touches.length!==2){this.clearTimer();}}else{this.first=this.getEventInfo(evt);var clickEvent=this.single?OpenLayers.Util.extend({},evt):null;this.queuePotentialClick(clickEvent);}}},queuePotentialClick:function(evt){this.timerId=window.setTimeout(OpenLayers.Function.bind(this.delayedCall,this,evt),this.delay);},passesTolerance:function(evt){var passes=true;if(this.pixelTolerance!=null&&this.down&&this.down.xy){passes=this.pixelTolerance>=this.down.xy.distanceTo(evt.xy);if(passes&&this.touch&&this.down.touches.length===this.last.touches.length){for(var i=0,ii=this.down.touches.length;i<ii;++i){if(this.getTouchDistance(this.down.touches[i],this.last.touches[i])>this.pixelTolerance){passes=false;break;}}}}
return passes;},getTouchDistance:function(from,to){return Math.sqrt(Math.pow(from.clientX-to.clientX,2)+
Math.pow(from.clientY-to.clientY,2));},passesDblclickTolerance:function(evt){var passes=true;if(this.down&&this.first){passes=this.down.xy.distanceTo(this.first.xy)<=this.dblclickTolerance;}
return passes;},clearTimer:function(){if(this.timerId!=null){window.clearTimeout(this.timerId);this.timerId=null;}
if(this.rightclickTimerId!=null){window.clearTimeout(this.rightclickTimerId);this.rightclickTimerId=null;}},delayedCall:function(evt){this.timerId=null;if(evt){this.callback("click",[evt]);}},getEventInfo:function(evt){var touches;if(evt.touches){var len=evt.touches.length;touches=new Array(len);var touch;for(var i=0;i<len;i++){touch=evt.touches[i];touches[i]={clientX:touch.clientX,clientY:touch.clientY};}}
return{xy:evt.xy,touches:touches};},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){this.clearTimer();this.down=null;this.first=null;this.last=null;this.touch=false;deactivated=true;}
return deactivated;},CLASS_NAME:"OpenLayers.Handler.Click"});OpenLayers.Format.XML=OpenLayers.Class(OpenLayers.Format,{namespaces:null,namespaceAlias:null,defaultPrefix:null,readers:{},writers:{},xmldom:null,initialize:function(options){if(window.ActiveXObject){this.xmldom=new ActiveXObject("Microsoft.XMLDOM");}
OpenLayers.Format.prototype.initialize.apply(this,[options]);this.namespaces=OpenLayers.Util.extend({},this.namespaces);this.namespaceAlias={};for(var alias in this.namespaces){this.namespaceAlias[this.namespaces[alias]]=alias;}},destroy:function(){this.xmldom=null;OpenLayers.Format.prototype.destroy.apply(this,arguments);},setNamespace:function(alias,uri){this.namespaces[alias]=uri;this.namespaceAlias[uri]=alias;},read:function(text){var index=text.indexOf('<');if(index>0){text=text.substring(index);}
var node=OpenLayers.Util.Try(OpenLayers.Function.bind((function(){var xmldom;if(window.ActiveXObject&&!this.xmldom){xmldom=new ActiveXObject("Microsoft.XMLDOM");}else{xmldom=this.xmldom;}
xmldom.loadXML(text);return xmldom;}),this),function(){return new DOMParser().parseFromString(text,'text/xml');},function(){var req=new XMLHttpRequest();req.open("GET","data:"+"text/xml"+";charset=utf-8,"+encodeURIComponent(text),false);if(req.overrideMimeType){req.overrideMimeType("text/xml");}
req.send(null);return req.responseXML;});if(this.keepData){this.data=node;}
return node;},write:function(node){var data;if(this.xmldom){data=node.xml;}else{var serializer=new XMLSerializer();if(node.nodeType==1){var doc=document.implementation.createDocument("","",null);if(doc.importNode){node=doc.importNode(node,true);}
doc.appendChild(node);data=serializer.serializeToString(doc);}else{data=serializer.serializeToString(node);}}
return data;},createElementNS:function(uri,name){var element;if(this.xmldom){if(typeof uri=="string"){element=this.xmldom.createNode(1,name,uri);}else{element=this.xmldom.createNode(1,name,"");}}else{element=document.createElementNS(uri,name);}
return element;},createTextNode:function(text){var node;if(typeof text!=="string"){text=String(text);}
if(this.xmldom){node=this.xmldom.createTextNode(text);}else{node=document.createTextNode(text);}
return node;},getElementsByTagNameNS:function(node,uri,name){var elements=[];if(node.getElementsByTagNameNS){elements=node.getElementsByTagNameNS(uri,name);}else{var allNodes=node.getElementsByTagName("*");var potentialNode,fullName;for(var i=0,len=allNodes.length;i<len;++i){potentialNode=allNodes[i];fullName=(potentialNode.prefix)?(potentialNode.prefix+":"+name):name;if((name=="*")||(fullName==potentialNode.nodeName)){if((uri=="*")||(uri==potentialNode.namespaceURI)){elements.push(potentialNode);}}}}
return elements;},getAttributeNodeNS:function(node,uri,name){var attributeNode=null;if(node.getAttributeNodeNS){attributeNode=node.getAttributeNodeNS(uri,name);}else{var attributes=node.attributes;var potentialNode,fullName;for(var i=0,len=attributes.length;i<len;++i){potentialNode=attributes[i];if(potentialNode.namespaceURI==uri){fullName=(potentialNode.prefix)?(potentialNode.prefix+":"+name):name;if(fullName==potentialNode.nodeName){attributeNode=potentialNode;break;}}}}
return attributeNode;},getAttributeNS:function(node,uri,name){var attributeValue="";if(node.getAttributeNS){attributeValue=node.getAttributeNS(uri,name)||"";}else{var attributeNode=this.getAttributeNodeNS(node,uri,name);if(attributeNode){attributeValue=attributeNode.nodeValue;}}
return attributeValue;},getChildValue:function(node,def){var value=def||"";if(node){for(var child=node.firstChild;child;child=child.nextSibling){switch(child.nodeType){case 3:case 4:value+=child.nodeValue;}}}
return value;},concatChildValues:function(node,def){var value="";var child=node.firstChild;var childValue;while(child){childValue=child.nodeValue;if(childValue){value+=childValue;}
child=child.nextSibling;}
if(value==""&&def!=undefined){value=def;}
return value;},isSimpleContent:function(node){var simple=true;for(var child=node.firstChild;child;child=child.nextSibling){if(child.nodeType===1){simple=false;break;}}
return simple;},contentType:function(node){var simple=false,complex=false;var type=OpenLayers.Format.XML.CONTENT_TYPE.EMPTY;for(var child=node.firstChild;child;child=child.nextSibling){switch(child.nodeType){case 1:complex=true;break;case 8:break;default:simple=true;}
if(complex&&simple){break;}}
if(complex&&simple){type=OpenLayers.Format.XML.CONTENT_TYPE.MIXED;}else if(complex){return OpenLayers.Format.XML.CONTENT_TYPE.COMPLEX;}else if(simple){return OpenLayers.Format.XML.CONTENT_TYPE.SIMPLE;}
return type;},hasAttributeNS:function(node,uri,name){var found=false;if(node.hasAttributeNS){found=node.hasAttributeNS(uri,name);}else{found=!!this.getAttributeNodeNS(node,uri,name);}
return found;},setAttributeNS:function(node,uri,name,value){if(node.setAttributeNS){node.setAttributeNS(uri,name,value);}else{if(this.xmldom){if(uri){var attribute=node.ownerDocument.createNode(2,name,uri);attribute.nodeValue=value;node.setAttributeNode(attribute);}else{node.setAttribute(name,value);}}else{throw"setAttributeNS not implemented";}}},createElementNSPlus:function(name,options){options=options||{};var uri=options.uri||this.namespaces[options.prefix];if(!uri){var loc=name.indexOf(":");uri=this.namespaces[name.substring(0,loc)];}
if(!uri){uri=this.namespaces[this.defaultPrefix];}
var node=this.createElementNS(uri,name);if(options.attributes){this.setAttributes(node,options.attributes);}
var value=options.value;if(value!=null){node.appendChild(this.createTextNode(value));}
return node;},setAttributes:function(node,obj){var value,uri;for(var name in obj){if(obj[name]!=null&&obj[name].toString){value=obj[name].toString();uri=this.namespaces[name.substring(0,name.indexOf(":"))]||null;this.setAttributeNS(node,uri,name,value);}}},readNode:function(node,obj){if(!obj){obj={};}
var group=this.readers[node.namespaceURI?this.namespaceAlias[node.namespaceURI]:this.defaultPrefix];if(group){var local=node.localName||node.nodeName.split(":").pop();var reader=group[local]||group["*"];if(reader){reader.apply(this,[node,obj]);}}
return obj;},readChildNodes:function(node,obj){if(!obj){obj={};}
var children=node.childNodes;var child;for(var i=0,len=children.length;i<len;++i){child=children[i];if(child.nodeType==1){this.readNode(child,obj);}}
return obj;},writeNode:function(name,obj,parent){var prefix,local;var split=name.indexOf(":");if(split>0){prefix=name.substring(0,split);local=name.substring(split+1);}else{if(parent){prefix=this.namespaceAlias[parent.namespaceURI];}else{prefix=this.defaultPrefix;}
local=name;}
var child=this.writers[prefix][local].apply(this,[obj]);if(parent){parent.appendChild(child);}
return child;},getChildEl:function(node,name,uri){return node&&this.getThisOrNextEl(node.firstChild,name,uri);},getNextEl:function(node,name,uri){return node&&this.getThisOrNextEl(node.nextSibling,name,uri);},getThisOrNextEl:function(node,name,uri){outer:for(var sibling=node;sibling;sibling=sibling.nextSibling){switch(sibling.nodeType){case 1:if((!name||name===(sibling.localName||sibling.nodeName.split(":").pop()))&&(!uri||uri===sibling.namespaceURI)){break outer;}
sibling=null;break outer;case 3:if(/^\s*$/.test(sibling.nodeValue)){break;}
case 4:case 6:case 12:case 10:case 11:sibling=null;break outer;}}
return sibling||null;},lookupNamespaceURI:function(node,prefix){var uri=null;if(node){if(node.lookupNamespaceURI){uri=node.lookupNamespaceURI(prefix);}else{outer:switch(node.nodeType){case 1:if(node.namespaceURI!==null&&node.prefix===prefix){uri=node.namespaceURI;break outer;}
var len=node.attributes.length;if(len){var attr;for(var i=0;i<len;++i){attr=node.attributes[i];if(attr.prefix==="xmlns"&&attr.name==="xmlns:"+prefix){uri=attr.value||null;break outer;}else if(attr.name==="xmlns"&&prefix===null){uri=attr.value||null;break outer;}}}
uri=this.lookupNamespaceURI(node.parentNode,prefix);break outer;case 2:uri=this.lookupNamespaceURI(node.ownerElement,prefix);break outer;case 9:uri=this.lookupNamespaceURI(node.documentElement,prefix);break outer;case 6:case 12:case 10:case 11:break outer;default:uri=this.lookupNamespaceURI(node.parentNode,prefix);break outer;}}}
return uri;},getXMLDoc:function(){if(!OpenLayers.Format.XML.document&&!this.xmldom){if(document.implementation&&document.implementation.createDocument){OpenLayers.Format.XML.document=document.implementation.createDocument("","",null);}else if(!this.xmldom&&window.ActiveXObject){this.xmldom=new ActiveXObject("Microsoft.XMLDOM");}}
return OpenLayers.Format.XML.document||this.xmldom;},CLASS_NAME:"OpenLayers.Format.XML"});OpenLayers.Format.XML.CONTENT_TYPE={EMPTY:0,SIMPLE:1,COMPLEX:2,MIXED:3};OpenLayers.Format.XML.lookupNamespaceURI=OpenLayers.Function.bind(OpenLayers.Format.XML.prototype.lookupNamespaceURI,OpenLayers.Format.XML.prototype);OpenLayers.Format.XML.document=null;OpenLayers.Control=OpenLayers.Class({id:null,map:null,div:null,type:null,allowSelection:false,displayClass:"",title:"",autoActivate:false,active:null,handler:null,eventListeners:null,events:null,EVENT_TYPES:["activate","deactivate"],initialize:function(options){this.displayClass=this.CLASS_NAME.replace("OpenLayers.","ol").replace(/\./g,"");OpenLayers.Util.extend(this,options);this.events=new OpenLayers.Events(this,null,this.EVENT_TYPES);if(this.eventListeners instanceof Object){this.events.on(this.eventListeners);}
if(this.id==null){this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+"_");}},destroy:function(){if(this.events){if(this.eventListeners){this.events.un(this.eventListeners);}
this.events.destroy();this.events=null;}
this.eventListeners=null;if(this.handler){this.handler.destroy();this.handler=null;}
if(this.handlers){for(var key in this.handlers){if(this.handlers.hasOwnProperty(key)&&typeof this.handlers[key].destroy=="function"){this.handlers[key].destroy();}}
this.handlers=null;}
if(this.map){this.map.removeControl(this);this.map=null;}
this.div=null;},setMap:function(map){this.map=map;if(this.handler){this.handler.setMap(map);}},draw:function(px){if(this.div==null){this.div=OpenLayers.Util.createDiv(this.id);this.div.className=this.displayClass;if(!this.allowSelection){this.div.className+=" olControlNoSelect";this.div.setAttribute("unselectable","on",0);this.div.onselectstart=OpenLayers.Function.False;}
if(this.title!=""){this.div.title=this.title;}}
if(px!=null){this.position=px.clone();}
this.moveTo(this.position);return this.div;},moveTo:function(px){if((px!=null)&&(this.div!=null)){this.div.style.left=px.x+"px";this.div.style.top=px.y+"px";}},activate:function(){if(this.active){return false;}
if(this.handler){this.handler.activate();}
this.active=true;if(this.map){OpenLayers.Element.addClass(this.map.viewPortDiv,this.displayClass.replace(/ /g,"")+"Active");}
this.events.triggerEvent("activate");return true;},deactivate:function(){if(this.active){if(this.handler){this.handler.deactivate();}
this.active=false;if(this.map){OpenLayers.Element.removeClass(this.map.viewPortDiv,this.displayClass.replace(/ /g,"")+"Active");}
this.events.triggerEvent("deactivate");return true;}
return false;},CLASS_NAME:"OpenLayers.Control"});OpenLayers.Control.TYPE_BUTTON=1;OpenLayers.Control.TYPE_TOGGLE=2;OpenLayers.Control.TYPE_TOOL=3;OpenLayers.Control.PanZoom=OpenLayers.Class(OpenLayers.Control,{slideFactor:50,slideRatio:null,buttons:null,position:null,initialize:function(options){this.position=new OpenLayers.Pixel(OpenLayers.Control.PanZoom.X,OpenLayers.Control.PanZoom.Y);OpenLayers.Control.prototype.initialize.apply(this,arguments);},destroy:function(){this.removeButtons();this.buttons=null;this.position=null;OpenLayers.Control.prototype.destroy.apply(this,arguments);},draw:function(px){OpenLayers.Control.prototype.draw.apply(this,arguments);px=this.position;this.buttons=[];var sz=new OpenLayers.Size(18,18);var centered=new OpenLayers.Pixel(px.x+sz.w/2,px.y);this._addButton("panup","north-mini.png",centered,sz);px.y=centered.y+sz.h;this._addButton("panleft","west-mini.png",px,sz);this._addButton("panright","east-mini.png",px.add(sz.w,0),sz);this._addButton("pandown","south-mini.png",centered.add(0,sz.h*2),sz);this._addButton("zoomin","zoom-plus-mini.png",centered.add(0,sz.h*3+5),sz);this._addButton("zoomworld","zoom-world-mini.png",centered.add(0,sz.h*4+5),sz);this._addButton("zoomout","zoom-minus-mini.png",centered.add(0,sz.h*5+5),sz);return this.div;},_addButton:function(id,img,xy,sz){var imgLocation=OpenLayers.Util.getImagesLocation()+img;var btn=OpenLayers.Util.createAlphaImageDiv(this.id+"_"+id,xy,sz,imgLocation,"absolute");btn.style.cursor="pointer";this.div.appendChild(btn);OpenLayers.Event.observe(btn,"mousedown",OpenLayers.Function.bindAsEventListener(this.buttonDown,btn));OpenLayers.Event.observe(btn,"dblclick",OpenLayers.Function.bindAsEventListener(this.doubleClick,btn));OpenLayers.Event.observe(btn,"click",OpenLayers.Function.bindAsEventListener(this.doubleClick,btn));btn.action=id;btn.map=this.map;if(!this.slideRatio){var slideFactorPixels=this.slideFactor;var getSlideFactor=function(){return slideFactorPixels;};}else{var slideRatio=this.slideRatio;var getSlideFactor=function(dim){return this.map.getSize()[dim]*slideRatio;};}
btn.getSlideFactor=getSlideFactor;this.buttons.push(btn);return btn;},_removeButton:function(btn){OpenLayers.Event.stopObservingElement(btn);btn.map=null;btn.getSlideFactor=null;this.div.removeChild(btn);OpenLayers.Util.removeItem(this.buttons,btn);},removeButtons:function(){for(var i=this.buttons.length-1;i>=0;--i){this._removeButton(this.buttons[i]);}},doubleClick:function(evt){OpenLayers.Event.stop(evt);return false;},buttonDown:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}
switch(this.action){case"panup":this.map.pan(0,-this.getSlideFactor("h"));break;case"pandown":this.map.pan(0,this.getSlideFactor("h"));break;case"panleft":this.map.pan(-this.getSlideFactor("w"),0);break;case"panright":this.map.pan(this.getSlideFactor("w"),0);break;case"zoomin":this.map.zoomIn();break;case"zoomout":this.map.zoomOut();break;case"zoomworld":this.map.zoomToMaxExtent();break;}
OpenLayers.Event.stop(evt);},CLASS_NAME:"OpenLayers.Control.PanZoom"});OpenLayers.Control.PanZoom.X=4;OpenLayers.Control.PanZoom.Y=4;OpenLayers.Control.PanZoomBar=OpenLayers.Class(OpenLayers.Control.PanZoom,{zoomStopWidth:18,zoomStopHeight:11,slider:null,sliderEvents:null,zoombarDiv:null,divEvents:null,zoomWorldIcon:false,panIcons:true,forceFixedZoomLevel:false,mouseDragStart:null,deltaY:null,zoomStart:null,destroy:function(){this._removeZoomBar();this.map.events.un({"changebaselayer":this.redraw,scope:this});OpenLayers.Control.PanZoom.prototype.destroy.apply(this,arguments);delete this.mouseDragStart;delete this.zoomStart;},setMap:function(map){OpenLayers.Control.PanZoom.prototype.setMap.apply(this,arguments);this.map.events.register("changebaselayer",this,this.redraw);},redraw:function(){if(this.div!=null){this.removeButtons();this._removeZoomBar();}
this.draw();},draw:function(px){OpenLayers.Control.prototype.draw.apply(this,arguments);px=this.position.clone();this.buttons=[];var sz=new OpenLayers.Size(18,18);if(this.panIcons){var centered=new OpenLayers.Pixel(px.x+sz.w/2,px.y);var wposition=sz.w;if(this.zoomWorldIcon){centered=new OpenLayers.Pixel(px.x+sz.w,px.y);}
this._addButton("panup","north-mini.png",centered,sz);px.y=centered.y+sz.h;this._addButton("panleft","west-mini.png",px,sz);if(this.zoomWorldIcon){this._addButton("zoomworld","zoom-world-mini.png",px.add(sz.w,0),sz);wposition*=2;}
this._addButton("panright","east-mini.png",px.add(wposition,0),sz);this._addButton("pandown","south-mini.png",centered.add(0,sz.h*2),sz);this._addButton("zoomin","zoom-plus-mini.png",centered.add(0,sz.h*3+5),sz);centered=this._addZoomBar(centered.add(0,sz.h*4+5));this._addButton("zoomout","zoom-minus-mini.png",centered,sz);}
else{this._addButton("zoomin","zoom-plus-mini.png",px,sz);centered=this._addZoomBar(px.add(0,sz.h));this._addButton("zoomout","zoom-minus-mini.png",centered,sz);if(this.zoomWorldIcon){centered=centered.add(0,sz.h+3);this._addButton("zoomworld","zoom-world-mini.png",centered,sz);}}
return this.div;},_addZoomBar:function(centered){var imgLocation=OpenLayers.Util.getImagesLocation();var id=this.id+"_"+this.map.id;var zoomsToEnd=this.map.getNumZoomLevels()-1-this.map.getZoom();var slider=OpenLayers.Util.createAlphaImageDiv(id,centered.add(-1,zoomsToEnd*this.zoomStopHeight),new OpenLayers.Size(20,9),imgLocation+"slider.png","absolute");slider.style.cursor="move";this.slider=slider;this.sliderEvents=new OpenLayers.Events(this,slider,null,true,{includeXY:true});this.sliderEvents.on({"touchstart":this.zoomBarDown,"touchmove":this.zoomBarDrag,"touchend":this.zoomBarUp,"mousedown":this.zoomBarDown,"mousemove":this.zoomBarDrag,"mouseup":this.zoomBarUp,"dblclick":this.doubleClick,"click":this.doubleClick});var sz=new OpenLayers.Size();sz.h=this.zoomStopHeight*this.map.getNumZoomLevels();sz.w=this.zoomStopWidth;var div=null;if(OpenLayers.Util.alphaHack()){var id=this.id+"_"+this.map.id;div=OpenLayers.Util.createAlphaImageDiv(id,centered,new OpenLayers.Size(sz.w,this.zoomStopHeight),imgLocation+"zoombar.png","absolute",null,"crop");div.style.height=sz.h+"px";}else{div=OpenLayers.Util.createDiv('OpenLayers_Control_PanZoomBar_Zoombar'+this.map.id,centered,sz,imgLocation+"zoombar.png");}
div.style.cursor="pointer";this.zoombarDiv=div;this.divEvents=new OpenLayers.Events(this,div,null,true,{includeXY:true});this.divEvents.on({"touchmove":this.passEventToSlider,"mousedown":this.divClick,"mousemove":this.passEventToSlider,"dblclick":this.doubleClick,"click":this.doubleClick});this.div.appendChild(div);this.startTop=parseInt(div.style.top);this.div.appendChild(slider);this.map.events.register("zoomend",this,this.moveZoomBar);centered=centered.add(0,this.zoomStopHeight*this.map.getNumZoomLevels());return centered;},_removeZoomBar:function(){this.sliderEvents.un({"touchmove":this.zoomBarDrag,"mousedown":this.zoomBarDown,"mousemove":this.zoomBarDrag,"mouseup":this.zoomBarUp,"dblclick":this.doubleClick,"click":this.doubleClick});this.sliderEvents.destroy();this.divEvents.un({"touchmove":this.passEventToSlider,"mousedown":this.divClick,"mousemove":this.passEventToSlider,"dblclick":this.doubleClick,"click":this.doubleClick});this.divEvents.destroy();this.div.removeChild(this.zoombarDiv);this.zoombarDiv=null;this.div.removeChild(this.slider);this.slider=null;this.map.events.unregister("zoomend",this,this.moveZoomBar);},passEventToSlider:function(evt){this.sliderEvents.handleBrowserEvent(evt);},divClick:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}
var levels=evt.xy.y/this.zoomStopHeight;if(this.forceFixedZoomLevel||!this.map.fractionalZoom){levels=Math.floor(levels);}
var zoom=(this.map.getNumZoomLevels()-1)-levels;zoom=Math.min(Math.max(zoom,0),this.map.getNumZoomLevels()-1);this.map.zoomTo(zoom);OpenLayers.Event.stop(evt);},zoomBarDown:function(evt){if(!OpenLayers.Event.isLeftClick(evt)&&!OpenLayers.Event.isSingleTouch(evt)){return;}
this.map.events.on({"touchmove":this.passEventToSlider,"mousemove":this.passEventToSlider,"mouseup":this.passEventToSlider,scope:this});this.mouseDragStart=evt.xy.clone();this.zoomStart=evt.xy.clone();this.div.style.cursor="move";this.zoombarDiv.offsets=null;OpenLayers.Event.stop(evt);},zoomBarDrag:function(evt){if(this.mouseDragStart!=null){var deltaY=this.mouseDragStart.y-evt.xy.y;var offsets=OpenLayers.Util.pagePosition(this.zoombarDiv);if((evt.clientY-offsets[1])>0&&(evt.clientY-offsets[1])<parseInt(this.zoombarDiv.style.height)-2){var newTop=parseInt(this.slider.style.top)-deltaY;this.slider.style.top=newTop+"px";this.mouseDragStart=evt.xy.clone();}
this.deltaY=this.zoomStart.y-evt.xy.y;OpenLayers.Event.stop(evt);}},zoomBarUp:function(evt){if(!OpenLayers.Event.isLeftClick(evt)&&evt.type!=="touchend"){return;}
if(this.mouseDragStart){this.div.style.cursor="";this.map.events.un({"touchmove":this.passEventToSlider,"mouseup":this.passEventToSlider,"mousemove":this.passEventToSlider,scope:this});var zoomLevel=this.map.zoom;if(!this.forceFixedZoomLevel&&this.map.fractionalZoom){zoomLevel+=this.deltaY/this.zoomStopHeight;zoomLevel=Math.min(Math.max(zoomLevel,0),this.map.getNumZoomLevels()-1);}else{zoomLevel+=this.deltaY/this.zoomStopHeight;zoomLevel=Math.max(Math.round(zoomLevel),0);}
this.map.zoomTo(zoomLevel);this.mouseDragStart=null;this.zoomStart=null;this.deltaY=0;OpenLayers.Event.stop(evt);}},moveZoomBar:function(){var newTop=((this.map.getNumZoomLevels()-1)-this.map.getZoom())*this.zoomStopHeight+this.startTop+1;this.slider.style.top=newTop+"px";},CLASS_NAME:"OpenLayers.Control.PanZoomBar"});OpenLayers.Handler.Drag=OpenLayers.Class(OpenLayers.Handler,{started:false,stopDown:true,dragging:false,touch:false,last:null,start:null,lastMoveEvt:null,oldOnselectstart:null,interval:0,timeoutId:null,documentDrag:false,documentEvents:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);if(this.documentDrag===true){var me=this;this._docMove=function(evt){me.mousemove({xy:{x:evt.clientX,y:evt.clientY},element:document});};this._docUp=function(evt){me.mouseup({xy:{x:evt.clientX,y:evt.clientY}});};}},dragstart:function(evt){var propagate=true;this.dragging=false;if(this.checkModifiers(evt)&&(OpenLayers.Event.isLeftClick(evt)||OpenLayers.Event.isSingleTouch(evt))){this.started=true;this.start=evt.xy;this.last=evt.xy;OpenLayers.Element.addClass(this.map.viewPortDiv,"olDragDown");this.down(evt);this.callback("down",[evt.xy]);OpenLayers.Event.stop(evt);if(!this.oldOnselectstart){this.oldOnselectstart=document.onselectstart?document.onselectstart:OpenLayers.Function.True;}
document.onselectstart=OpenLayers.Function.False;propagate=!this.stopDown;}else{this.started=false;this.start=null;this.last=null;}
return propagate;},dragmove:function(evt){this.lastMoveEvt=evt;if(this.started&&!this.timeoutId&&(evt.xy.x!=this.last.x||evt.xy.y!=this.last.y)){if(this.documentDrag===true&&this.documentEvents){if(evt.element===document){this.adjustXY(evt);this.setEvent(evt);}else{this.removeDocumentEvents();}}
if(this.interval>0){this.timeoutId=setTimeout(OpenLayers.Function.bind(this.removeTimeout,this),this.interval);}
this.dragging=true;this.move(evt);this.callback("move",[evt.xy]);if(!this.oldOnselectstart){this.oldOnselectstart=document.onselectstart;document.onselectstart=OpenLayers.Function.False;}
this.last=evt.xy;}
return true;},dragend:function(evt){if(this.started){if(this.documentDrag===true&&this.documentEvents){this.adjustXY(evt);this.removeDocumentEvents();}
var dragged=(this.start!=this.last);this.started=false;this.dragging=false;OpenLayers.Element.removeClass(this.map.viewPortDiv,"olDragDown");this.up(evt);this.callback("up",[evt.xy]);if(dragged){this.callback("done",[evt.xy]);}
document.onselectstart=this.oldOnselectstart;}
return true;},down:function(evt){},move:function(evt){},up:function(evt){},out:function(evt){},mousedown:function(evt){return this.dragstart(evt);},touchstart:function(evt){if(!this.touch){this.touch=true;this.map.events.un({mousedown:this.mousedown,mouseup:this.mouseup,mousemove:this.mousemove,click:this.click,scope:this});}
return this.dragstart(evt);},mousemove:function(evt){return this.dragmove(evt);},touchmove:function(evt){return this.dragmove(evt);},removeTimeout:function(){this.timeoutId=null;if(this.dragging){this.mousemove(this.lastMoveEvt);}},mouseup:function(evt){return this.dragend(evt);},touchend:function(evt){evt.xy=this.last;return this.dragend(evt);},mouseout:function(evt){if(this.started&&OpenLayers.Util.mouseLeft(evt,this.map.eventsDiv)){if(this.documentDrag===true){this.addDocumentEvents();}else{var dragged=(this.start!=this.last);this.started=false;this.dragging=false;OpenLayers.Element.removeClass(this.map.viewPortDiv,"olDragDown");this.out(evt);this.callback("out",[]);if(dragged){this.callback("done",[evt.xy]);}
if(document.onselectstart){document.onselectstart=this.oldOnselectstart;}}}
return true;},click:function(evt){return(this.start==this.last);},activate:function(){var activated=false;if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){this.dragging=false;activated=true;}
return activated;},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){this.touch=false;this.started=false;this.dragging=false;this.start=null;this.last=null;deactivated=true;OpenLayers.Element.removeClass(this.map.viewPortDiv,"olDragDown");}
return deactivated;},adjustXY:function(evt){var pos=OpenLayers.Util.pagePosition(this.map.viewPortDiv);evt.xy.x-=pos[0];evt.xy.y-=pos[1];},addDocumentEvents:function(){OpenLayers.Element.addClass(document.body,"olDragDown");this.documentEvents=true;OpenLayers.Event.observe(document,"mousemove",this._docMove);OpenLayers.Event.observe(document,"mouseup",this._docUp);},removeDocumentEvents:function(){OpenLayers.Element.removeClass(document.body,"olDragDown");this.documentEvents=false;OpenLayers.Event.stopObserving(document,"mousemove",this._docMove);OpenLayers.Event.stopObserving(document,"mouseup",this._docUp);},CLASS_NAME:"OpenLayers.Handler.Drag"});OpenLayers.Handler.Box=OpenLayers.Class(OpenLayers.Handler,{dragHandler:null,boxDivClassName:'olHandlerBoxZoomBox',boxOffsets:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);this.dragHandler=new OpenLayers.Handler.Drag(this,{down:this.startBox,move:this.moveBox,out:this.removeBox,up:this.endBox},{keyMask:this.keyMask});},destroy:function(){OpenLayers.Handler.prototype.destroy.apply(this,arguments);if(this.dragHandler){this.dragHandler.destroy();this.dragHandler=null;}},setMap:function(map){OpenLayers.Handler.prototype.setMap.apply(this,arguments);if(this.dragHandler){this.dragHandler.setMap(map);}},startBox:function(xy){this.callback("start",[]);this.zoomBox=OpenLayers.Util.createDiv('zoomBox',new OpenLayers.Pixel(-9999,-9999));this.zoomBox.className=this.boxDivClassName;this.zoomBox.style.zIndex=this.map.Z_INDEX_BASE["Popup"]-1;this.map.eventsDiv.appendChild(this.zoomBox);OpenLayers.Element.addClass(this.map.eventsDiv,"olDrawBox");},moveBox:function(xy){var startX=this.dragHandler.start.x;var startY=this.dragHandler.start.y;var deltaX=Math.abs(startX-xy.x);var deltaY=Math.abs(startY-xy.y);var offset=this.getBoxOffsets();this.zoomBox.style.width=(deltaX+offset.width+1)+"px";this.zoomBox.style.height=(deltaY+offset.height+1)+"px";this.zoomBox.style.left=(xy.x<startX?startX-deltaX-offset.left:startX-offset.left)+"px";this.zoomBox.style.top=(xy.y<startY?startY-deltaY-offset.top:startY-offset.top)+"px";},endBox:function(end){var result;if(Math.abs(this.dragHandler.start.x-end.x)>5||Math.abs(this.dragHandler.start.y-end.y)>5){var start=this.dragHandler.start;var top=Math.min(start.y,end.y);var bottom=Math.max(start.y,end.y);var left=Math.min(start.x,end.x);var right=Math.max(start.x,end.x);result=new OpenLayers.Bounds(left,bottom,right,top);}else{result=this.dragHandler.start.clone();}
this.removeBox();this.callback("done",[result]);},removeBox:function(){this.map.eventsDiv.removeChild(this.zoomBox);this.zoomBox=null;this.boxOffsets=null;OpenLayers.Element.removeClass(this.map.eventsDiv,"olDrawBox");},activate:function(){if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){this.dragHandler.activate();return true;}else{return false;}},deactivate:function(){if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){if(this.dragHandler.deactivate()){if(this.zoomBox){this.removeBox();}}
return true;}else{return false;}},getBoxOffsets:function(){if(!this.boxOffsets){var testDiv=document.createElement("div");testDiv.style.position="absolute";testDiv.style.border="1px solid black";testDiv.style.width="3px";document.body.appendChild(testDiv);var w3cBoxModel=testDiv.clientWidth==3;document.body.removeChild(testDiv);var left=parseInt(OpenLayers.Element.getStyle(this.zoomBox,"border-left-width"));var right=parseInt(OpenLayers.Element.getStyle(this.zoomBox,"border-right-width"));var top=parseInt(OpenLayers.Element.getStyle(this.zoomBox,"border-top-width"));var bottom=parseInt(OpenLayers.Element.getStyle(this.zoomBox,"border-bottom-width"));this.boxOffsets={left:left,right:right,top:top,bottom:bottom,width:w3cBoxModel===false?left+right:0,height:w3cBoxModel===false?top+bottom:0};}
return this.boxOffsets;},CLASS_NAME:"OpenLayers.Handler.Box"});OpenLayers.Control.ZoomBox=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_TOOL,out:false,alwaysZoom:false,draw:function(){this.handler=new OpenLayers.Handler.Box(this,{done:this.zoomBox},{keyMask:this.keyMask});},zoomBox:function(position){if(position instanceof OpenLayers.Bounds){var bounds;if(!this.out){var minXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.left,position.bottom));var maxXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.right,position.top));bounds=new OpenLayers.Bounds(minXY.lon,minXY.lat,maxXY.lon,maxXY.lat);}else{var pixWidth=Math.abs(position.right-position.left);var pixHeight=Math.abs(position.top-position.bottom);var zoomFactor=Math.min((this.map.size.h/pixHeight),(this.map.size.w/pixWidth));var extent=this.map.getExtent();var center=this.map.getLonLatFromPixel(position.getCenterPixel());var xmin=center.lon-(extent.getWidth()/2)*zoomFactor;var xmax=center.lon+(extent.getWidth()/2)*zoomFactor;var ymin=center.lat-(extent.getHeight()/2)*zoomFactor;var ymax=center.lat+(extent.getHeight()/2)*zoomFactor;bounds=new OpenLayers.Bounds(xmin,ymin,xmax,ymax);}
var lastZoom=this.map.getZoom();this.map.zoomToExtent(bounds);if(lastZoom==this.map.getZoom()&&this.alwaysZoom==true){this.map.zoomTo(lastZoom+(this.out?-1:1));}}else{if(!this.out){this.map.setCenter(this.map.getLonLatFromPixel(position),this.map.getZoom()+1);}else{this.map.setCenter(this.map.getLonLatFromPixel(position),this.map.getZoom()-1);}}},CLASS_NAME:"OpenLayers.Control.ZoomBox"});OpenLayers.Control.DragPan=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_TOOL,panned:false,interval:1,documentDrag:false,kinetic:null,enableKinetic:false,kineticInterval:10,draw:function(){if(this.enableKinetic){var config={interval:this.kineticInterval};if(typeof this.enableKinetic==="object"){config=OpenLayers.Util.extend(config,this.enableKinetic);}
this.kinetic=new OpenLayers.Kinetic(config);}
this.handler=new OpenLayers.Handler.Drag(this,{"move":this.panMap,"done":this.panMapDone,"down":this.panMapStart},{interval:this.interval,documentDrag:this.documentDrag});},panMapStart:function(){if(this.kinetic){this.kinetic.begin();}},panMap:function(xy){if(this.kinetic){this.kinetic.update(xy);}
this.panned=true;this.map.pan(this.handler.last.x-xy.x,this.handler.last.y-xy.y,{dragging:true,animate:false});},panMapDone:function(xy){if(this.panned){var res=null;if(this.kinetic){res=this.kinetic.end(xy);}
this.map.pan(this.handler.last.x-xy.x,this.handler.last.y-xy.y,{dragging:!!res,animate:false});if(res){var self=this;this.kinetic.move(res,function(x,y,end){self.map.pan(x,y,{dragging:!end,animate:false});});}
this.panned=false;}},CLASS_NAME:"OpenLayers.Control.DragPan"});OpenLayers.Handler.MouseWheel=OpenLayers.Class(OpenLayers.Handler,{wheelListener:null,mousePosition:null,interval:0,delta:0,cumulative:true,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);this.wheelListener=OpenLayers.Function.bindAsEventListener(this.onWheelEvent,this);},destroy:function(){OpenLayers.Handler.prototype.destroy.apply(this,arguments);this.wheelListener=null;},onWheelEvent:function(e){if(!this.map||!this.checkModifiers(e)){return;}
var overScrollableDiv=false;var overLayerDiv=false;var overMapDiv=false;var elem=OpenLayers.Event.element(e);while((elem!=null)&&!overMapDiv&&!overScrollableDiv){if(!overScrollableDiv){try{if(elem.currentStyle){overflow=elem.currentStyle["overflow"];}else{var style=document.defaultView.getComputedStyle(elem,null);var overflow=style.getPropertyValue("overflow");}
overScrollableDiv=(overflow&&(overflow=="auto")||(overflow=="scroll"));}catch(err){}}
if(!overLayerDiv){for(var i=0,len=this.map.layers.length;i<len;i++){if(elem==this.map.layers[i].div||elem==this.map.layers[i].pane){overLayerDiv=true;break;}}}
overMapDiv=(elem==this.map.div);elem=elem.parentNode;}
if(!overScrollableDiv&&overMapDiv){if(overLayerDiv){var delta=0;if(!e){e=window.event;}
if(e.wheelDelta){delta=e.wheelDelta/120;if(window.opera&&window.opera.version()<9.2){delta=-delta;}}else if(e.detail){delta=-e.detail/3;}
this.delta=this.delta+delta;if(this.interval){window.clearTimeout(this._timeoutId);this._timeoutId=window.setTimeout(OpenLayers.Function.bind(function(){this.wheelZoom(e);},this),this.interval);}else{this.wheelZoom(e);}}
OpenLayers.Event.stop(e);}},wheelZoom:function(e){var delta=this.delta;this.delta=0;if(delta){if(this.mousePosition){e.xy=this.mousePosition;}
if(!e.xy){e.xy=this.map.getPixelFromLonLat(this.map.getCenter());}
if(delta<0){this.callback("down",[e,this.cumulative?delta:-1]);}else{this.callback("up",[e,this.cumulative?delta:1]);}}},mousemove:function(evt){this.mousePosition=evt.xy;},activate:function(evt){if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){var wheelListener=this.wheelListener;OpenLayers.Event.observe(window,"DOMMouseScroll",wheelListener);OpenLayers.Event.observe(window,"mousewheel",wheelListener);OpenLayers.Event.observe(document,"mousewheel",wheelListener);return true;}else{return false;}},deactivate:function(evt){if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){var wheelListener=this.wheelListener;OpenLayers.Event.stopObserving(window,"DOMMouseScroll",wheelListener);OpenLayers.Event.stopObserving(window,"mousewheel",wheelListener);OpenLayers.Event.stopObserving(document,"mousewheel",wheelListener);return true;}else{return false;}},CLASS_NAME:"OpenLayers.Handler.MouseWheel"});OpenLayers.Control.Navigation=OpenLayers.Class(OpenLayers.Control,{dragPan:null,dragPanOptions:null,pinchZoom:null,pinchZoomOptions:null,documentDrag:false,zoomBox:null,zoomBoxEnabled:true,zoomWheelEnabled:true,mouseWheelOptions:null,handleRightClicks:false,zoomBoxKeyMask:OpenLayers.Handler.MOD_SHIFT,autoActivate:true,initialize:function(options){this.handlers={};OpenLayers.Control.prototype.initialize.apply(this,arguments);},destroy:function(){this.deactivate();if(this.dragPan){this.dragPan.destroy();}
this.dragPan=null;if(this.zoomBox){this.zoomBox.destroy();}
this.zoomBox=null;if(this.pinchZoom){this.pinchZoom.destroy();}
this.pinchZoom=null;OpenLayers.Control.prototype.destroy.apply(this,arguments);},activate:function(){this.dragPan.activate();if(this.zoomWheelEnabled){this.handlers.wheel.activate();}
this.handlers.click.activate();if(this.zoomBoxEnabled){this.zoomBox.activate();}
if(this.pinchZoom){this.pinchZoom.activate();}
return OpenLayers.Control.prototype.activate.apply(this,arguments);},deactivate:function(){if(this.pinchZoom){this.pinchZoom.deactivate();}
this.zoomBox.deactivate();this.dragPan.deactivate();this.handlers.click.deactivate();this.handlers.wheel.deactivate();return OpenLayers.Control.prototype.deactivate.apply(this,arguments);},draw:function(){if(this.handleRightClicks){this.map.viewPortDiv.oncontextmenu=OpenLayers.Function.False;}
var clickCallbacks={'click':this.defaultClick,'dblclick':this.defaultDblClick,'dblrightclick':this.defaultDblRightClick};var clickOptions={'double':true,'stopDouble':true};this.handlers.click=new OpenLayers.Handler.Click(this,clickCallbacks,clickOptions);this.dragPan=new OpenLayers.Control.DragPan(OpenLayers.Util.extend({map:this.map,documentDrag:this.documentDrag},this.dragPanOptions));this.zoomBox=new OpenLayers.Control.ZoomBox({map:this.map,keyMask:this.zoomBoxKeyMask});this.dragPan.draw();this.zoomBox.draw();this.handlers.wheel=new OpenLayers.Handler.MouseWheel(this,{"up":this.wheelUp,"down":this.wheelDown},this.mouseWheelOptions);if(OpenLayers.Control.PinchZoom){this.pinchZoom=new OpenLayers.Control.PinchZoom(OpenLayers.Util.extend({map:this.map},this.pinchZoomOptions));}},defaultClick:function(evt){if(evt.lastTouches&&evt.lastTouches.length==2){this.map.zoomOut();}},defaultDblClick:function(evt){var newCenter=this.map.getLonLatFromViewPortPx(evt.xy);this.map.setCenter(newCenter,this.map.zoom+1);},defaultDblRightClick:function(evt){var newCenter=this.map.getLonLatFromViewPortPx(evt.xy);this.map.setCenter(newCenter,this.map.zoom-1);},wheelChange:function(evt,deltaZ){var currentZoom=this.map.getZoom();var newZoom=this.map.getZoom()+Math.round(deltaZ);newZoom=Math.max(newZoom,0);newZoom=Math.min(newZoom,this.map.getNumZoomLevels());if(newZoom===currentZoom){return;}
var size=this.map.getSize();var deltaX=size.w/2-evt.xy.x;var deltaY=evt.xy.y-size.h/2;var newRes=this.map.baseLayer.getResolutionForZoom(newZoom);var zoomPoint=this.map.getLonLatFromPixel(evt.xy);var newCenter=new OpenLayers.LonLat(zoomPoint.lon+deltaX*newRes,zoomPoint.lat+deltaY*newRes);this.map.setCenter(newCenter,newZoom);},wheelUp:function(evt,delta){this.wheelChange(evt,delta||1);},wheelDown:function(evt,delta){this.wheelChange(evt,delta||-1);},disableZoomBox:function(){this.zoomBoxEnabled=false;this.zoomBox.deactivate();},enableZoomBox:function(){this.zoomBoxEnabled=true;if(this.active){this.zoomBox.activate();}},disableZoomWheel:function(){this.zoomWheelEnabled=false;this.handlers.wheel.deactivate();},enableZoomWheel:function(){this.zoomWheelEnabled=true;if(this.active){this.handlers.wheel.activate();}},CLASS_NAME:"OpenLayers.Control.Navigation"});OpenLayers.Date={toISOString:(function(){if("toISOString"in Date.prototype){return function(date){return date.toISOString();};}else{function pad(num,len){var str=num+"";while(str.length<len){str="0"+str;}
return str;}
return function(date){var str;if(isNaN(date.getTime())){str="Invalid Date";}else{str=date.getUTCFullYear()+"-"+
pad(date.getUTCMonth()+1,2)+"-"+
pad(date.getUTCDate(),2)+"T"+
pad(date.getUTCHours(),2)+":"+
pad(date.getUTCMinutes(),2)+":"+
pad(date.getUTCSeconds(),2)+"."+
pad(date.getUTCMilliseconds(),3)+"Z";}
return str;};}})(),parse:function(str){var date;var match=str.match(/^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:T(\d{1,2}):(\d{2}):(\d{2}(?:\.\d+)?)(Z|(?:[+-]\d{1,2}(?::(\d{2}))?)))?$/);if(match&&(match[1]||match[7])){var year=parseInt(match[1],10)||0;var month=(parseInt(match[2],10)-1)||0;var day=parseInt(match[3],10)||1;date=new Date(Date.UTC(year,month,day));var type=match[7];if(type){var hours=parseInt(match[4],10);var minutes=parseInt(match[5],10);var secFrac=parseFloat(match[6]);var seconds=secFrac|0;var milliseconds=Math.round(1000*(secFrac-seconds));date.setUTCHours(hours,minutes,seconds,milliseconds);if(type!=="Z"){var hoursOffset=parseInt(type,10);var minutesOffset=parseInt(match[8],10)||0;var offset=-1000*(60*(hoursOffset*60)+minutesOffset*60);date=new Date(date.getTime()+offset);}}}else{date=new Date("invalid");}
return date;}};OpenLayers.Handler.Feature=OpenLayers.Class(OpenLayers.Handler,{EVENTMAP:{'click':{'in':'click','out':'clickout'},'mousemove':{'in':'over','out':'out'},'dblclick':{'in':'dblclick','out':null},'mousedown':{'in':null,'out':null},'mouseup':{'in':null,'out':null},'touchstart':{'in':'click','out':'clickout'}},feature:null,lastFeature:null,down:null,up:null,touch:false,clickTolerance:4,geometryTypes:null,stopClick:true,stopDown:true,stopUp:false,initialize:function(control,layer,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,[control,callbacks,options]);this.layer=layer;},touchstart:function(evt){if(!this.touch){this.touch=true;this.map.events.un({mousedown:this.mousedown,mouseup:this.mouseup,mousemove:this.mousemove,click:this.click,dblclick:this.dblclick,scope:this});}
return OpenLayers.Event.isMultiTouch(evt)?true:this.mousedown(evt);},touchmove:function(evt){OpenLayers.Event.stop(evt);},mousedown:function(evt){this.down=evt.xy;return this.handle(evt)?!this.stopDown:true;},mouseup:function(evt){this.up=evt.xy;return this.handle(evt)?!this.stopUp:true;},click:function(evt){return this.handle(evt)?!this.stopClick:true;},mousemove:function(evt){if(!this.callbacks['over']&&!this.callbacks['out']){return true;}
this.handle(evt);return true;},dblclick:function(evt){return!this.handle(evt);},geometryTypeMatches:function(feature){return this.geometryTypes==null||OpenLayers.Util.indexOf(this.geometryTypes,feature.geometry.CLASS_NAME)>-1;},handle:function(evt){if(this.feature&&!this.feature.layer){this.feature=null;}
var type=evt.type;var handled=false;var previouslyIn=!!(this.feature);var click=(type=="click"||type=="dblclick"||type=="touchstart");this.feature=this.layer.getFeatureFromEvent(evt);if(this.feature&&!this.feature.layer){this.feature=null;}
if(this.lastFeature&&!this.lastFeature.layer){this.lastFeature=null;}
if(this.feature){if(type==="touchstart"){OpenLayers.Event.stop(evt);}
var inNew=(this.feature!=this.lastFeature);if(this.geometryTypeMatches(this.feature)){if(previouslyIn&&inNew){if(this.lastFeature){this.triggerCallback(type,'out',[this.lastFeature]);}
this.triggerCallback(type,'in',[this.feature]);}else if(!previouslyIn||click){this.triggerCallback(type,'in',[this.feature]);}
this.lastFeature=this.feature;handled=true;}else{if(this.lastFeature&&(previouslyIn&&inNew||click)){this.triggerCallback(type,'out',[this.lastFeature]);}
this.feature=null;}}else{if(this.lastFeature&&(previouslyIn||click)){this.triggerCallback(type,'out',[this.lastFeature]);}}
return handled;},triggerCallback:function(type,mode,args){var key=this.EVENTMAP[type][mode];if(key){if(type=='click'&&this.up&&this.down){var dpx=Math.sqrt(Math.pow(this.up.x-this.down.x,2)+
Math.pow(this.up.y-this.down.y,2));if(dpx<=this.clickTolerance){this.callback(key,args);}}else{this.callback(key,args);}}},activate:function(){var activated=false;if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){this.moveLayerToTop();this.map.events.on({"removelayer":this.handleMapEvents,"changelayer":this.handleMapEvents,scope:this});activated=true;}
return activated;},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){this.moveLayerBack();this.feature=null;this.lastFeature=null;this.down=null;this.up=null;this.touch=false;this.map.events.un({"removelayer":this.handleMapEvents,"changelayer":this.handleMapEvents,scope:this});deactivated=true;}
return deactivated;},handleMapEvents:function(evt){if(evt.type=="removelayer"||evt.property=="order"){this.moveLayerToTop();}},moveLayerToTop:function(){var index=Math.max(this.map.Z_INDEX_BASE['Feature']-1,this.layer.getZIndex())+1;this.layer.setZIndex(index);},moveLayerBack:function(){var index=this.layer.getZIndex()-1;if(index>=this.map.Z_INDEX_BASE['Feature']){this.layer.setZIndex(index);}else{this.map.setLayerZIndex(this.layer,this.map.getLayerIndex(this.layer));}},CLASS_NAME:"OpenLayers.Handler.Feature"});OpenLayers.Tile=OpenLayers.Class({EVENT_TYPES:["loadstart","loadend","reload","unload"],events:null,id:null,layer:null,url:null,bounds:null,size:null,position:null,isLoading:false,initialize:function(layer,position,bounds,url,size,options){this.layer=layer;this.position=position.clone();this.bounds=bounds.clone();this.url=url;if(size){this.size=size.clone();}
this.id=OpenLayers.Util.createUniqueID("Tile_");this.events=new OpenLayers.Events(this,null,this.EVENT_TYPES);OpenLayers.Util.extend(this,options);},unload:function(){if(this.isLoading){this.isLoading=false;this.events.triggerEvent("unload");}},destroy:function(){this.layer=null;this.bounds=null;this.size=null;this.position=null;this.events.destroy();this.events=null;},clone:function(obj){if(obj==null){obj=new OpenLayers.Tile(this.layer,this.position,this.bounds,this.url,this.size);}
OpenLayers.Util.applyDefaults(obj,this);return obj;},draw:function(){var maxExtent=this.layer.maxExtent;var withinMaxExtent=(maxExtent&&this.bounds.intersectsBounds(maxExtent,false));this.shouldDraw=(withinMaxExtent||this.layer.displayOutsideMaxExtent);this.clear();return this.shouldDraw;},moveTo:function(bounds,position,redraw){if(redraw==null){redraw=true;}
this.bounds=bounds.clone();this.position=position.clone();if(redraw){this.draw();}},clear:function(){},getBoundsFromBaseLayer:function(position){var msg=OpenLayers.i18n('reprojectDeprecated',{'layerName':this.layer.name});OpenLayers.Console.warn(msg);var topLeft=this.layer.map.getLonLatFromLayerPx(position);var bottomRightPx=position.clone();bottomRightPx.x+=this.size.w;bottomRightPx.y+=this.size.h;var bottomRight=this.layer.map.getLonLatFromLayerPx(bottomRightPx);if(topLeft.lon>bottomRight.lon){if(topLeft.lon<0){topLeft.lon=-180-(topLeft.lon+180);}else{bottomRight.lon=180+bottomRight.lon+180;}}
var bounds=new OpenLayers.Bounds(topLeft.lon,bottomRight.lat,bottomRight.lon,topLeft.lat);return bounds;},showTile:function(){if(this.shouldDraw){this.show();}},show:function(){},hide:function(){},CLASS_NAME:"OpenLayers.Tile"});OpenLayers.Tile.Image=OpenLayers.Class(OpenLayers.Tile,{url:null,imgDiv:null,frame:null,layerAlphaHack:null,isBackBuffer:false,isFirstDraw:true,backBufferTile:null,maxGetUrlLength:null,initialize:function(layer,position,bounds,url,size,options){OpenLayers.Tile.prototype.initialize.apply(this,arguments);if(this.maxGetUrlLength!=null){OpenLayers.Util.extend(this,OpenLayers.Tile.Image.IFrame);}
this.url=url;this.frame=document.createElement('div');this.frame.style.overflow='hidden';this.frame.style.position='absolute';this.layerAlphaHack=this.layer.alpha&&OpenLayers.Util.alphaHack();},destroy:function(){if(this.imgDiv!=null){this.removeImgDiv();}
this.imgDiv=null;if((this.frame!=null)&&(this.frame.parentNode==this.layer.div)){this.layer.div.removeChild(this.frame);}
this.frame=null;if(this.backBufferTile){this.backBufferTile.destroy();this.backBufferTile=null;}
this.layer.events.unregister("loadend",this,this.resetBackBuffer);OpenLayers.Tile.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Tile.Image(this.layer,this.position,this.bounds,this.url,this.size);}
obj=OpenLayers.Tile.prototype.clone.apply(this,[obj]);obj.imgDiv=null;return obj;},draw:function(){if(this.layer!=this.layer.map.baseLayer&&this.layer.reproject){this.bounds=this.getBoundsFromBaseLayer(this.position);}
var drawTile=OpenLayers.Tile.prototype.draw.apply(this,arguments);if((OpenLayers.Util.indexOf(this.layer.SUPPORTED_TRANSITIONS,this.layer.transitionEffect)!=-1)||this.layer.singleTile){if(drawTile){if(!this.backBufferTile){this.backBufferTile=this.clone();this.backBufferTile.hide();this.backBufferTile.isBackBuffer=true;this.events.register('loadend',this,this.resetBackBuffer);this.layer.events.register("loadend",this,this.resetBackBuffer);}
this.startTransition();}else{if(this.backBufferTile){this.backBufferTile.clear();}}}else{if(drawTile&&this.isFirstDraw){this.events.register('loadend',this,this.showTile);this.isFirstDraw=false;}}
if(!drawTile){return false;}
if(this.isLoading){this.events.triggerEvent("reload");}else{this.isLoading=true;this.events.triggerEvent("loadstart");}
return this.renderTile();},resetBackBuffer:function(){this.showTile();if(this.backBufferTile&&(this.isFirstDraw||!this.layer.numLoadingTiles)){this.isFirstDraw=false;var maxExtent=this.layer.maxExtent;var withinMaxExtent=(maxExtent&&this.bounds.intersectsBounds(maxExtent,false));if(withinMaxExtent){this.backBufferTile.position=this.position;this.backBufferTile.bounds=this.bounds;this.backBufferTile.size=this.size;this.backBufferTile.imageSize=this.layer.getImageSize(this.bounds)||this.size;this.backBufferTile.imageOffset=this.layer.imageOffset;this.backBufferTile.resolution=this.layer.getResolution();this.backBufferTile.renderTile();}
this.backBufferTile.hide();}},renderTile:function(){if(this.layer.async){this.initImgDiv();this.layer.getURLasync(this.bounds,this,"url",this.positionImage);}else{this.url=this.layer.getURL(this.bounds);this.initImgDiv();this.positionImage();}
return true;},positionImage:function(){if(this.layer===null){return;}
OpenLayers.Util.modifyDOMElement(this.frame,null,this.position,this.size);var imageSize=this.layer.getImageSize(this.bounds);if(this.layerAlphaHack){OpenLayers.Util.modifyAlphaImageDiv(this.imgDiv,null,null,imageSize,this.url);}else{OpenLayers.Util.modifyDOMElement(this.imgDiv,null,null,imageSize);this.imgDiv.src=this.url;}},clear:function(){if(this.imgDiv){this.hide();if(OpenLayers.Tile.Image.useBlankTile){this.imgDiv.src=OpenLayers.Util.getImagesLocation()+"blank.gif";}}},initImgDiv:function(){if(this.imgDiv==null){var offset=this.layer.imageOffset;var size=this.layer.getImageSize(this.bounds);if(this.layerAlphaHack){this.imgDiv=OpenLayers.Util.createAlphaImageDiv(null,offset,size,null,"relative",null,null,null,true);}else{this.imgDiv=OpenLayers.Util.createImage(null,offset,size,null,"relative",null,null,true);}
if(OpenLayers.Util.isArray(this.layer.url)){this.imgDiv.urls=this.layer.url.slice();}
this.imgDiv.className='olTileImage';this.frame.style.zIndex=this.isBackBuffer?0:1;this.frame.appendChild(this.imgDiv);this.layer.div.appendChild(this.frame);if(this.layer.opacity!=null){OpenLayers.Util.modifyDOMElement(this.imgDiv,null,null,null,null,null,null,this.layer.opacity);}
this.imgDiv.map=this.layer.map;var onload=function(){if(this.isLoading){this.isLoading=false;this.events.triggerEvent("loadend");}};if(this.layerAlphaHack){OpenLayers.Event.observe(this.imgDiv.childNodes[0],'load',OpenLayers.Function.bind(onload,this));}else{OpenLayers.Event.observe(this.imgDiv,'load',OpenLayers.Function.bind(onload,this));}
var onerror=function(){if(this.imgDiv._attempts>OpenLayers.IMAGE_RELOAD_ATTEMPTS){onload.call(this);}};OpenLayers.Event.observe(this.imgDiv,"error",OpenLayers.Function.bind(onerror,this));}
this.imgDiv.viewRequestID=this.layer.map.viewRequestID;},removeImgDiv:function(){OpenLayers.Event.stopObservingElement(this.imgDiv);if(this.imgDiv.parentNode==this.frame){this.frame.removeChild(this.imgDiv);this.imgDiv.map=null;}
this.imgDiv.urls=null;var child=this.imgDiv.firstChild;if(child){OpenLayers.Event.stopObservingElement(child);this.imgDiv.removeChild(child);delete child;}else{this.imgDiv.src=OpenLayers.Util.getImagesLocation()+"blank.gif";}},checkImgURL:function(){if(this.layer){var loaded=this.layerAlphaHack?this.imgDiv.firstChild.src:this.imgDiv.src;if(!OpenLayers.Util.isEquivalentUrl(loaded,this.url)){this.hide();}}},startTransition:function(){if(!this.backBufferTile||!this.backBufferTile.imgDiv){return;}
var ratio=1;if(this.backBufferTile.resolution){ratio=this.backBufferTile.resolution/this.layer.getResolution();}
if(ratio!=1){if(this.layer.transitionEffect=='resize'){var upperLeft=new OpenLayers.LonLat(this.backBufferTile.bounds.left,this.backBufferTile.bounds.top);var size=new OpenLayers.Size(this.backBufferTile.size.w*ratio,this.backBufferTile.size.h*ratio);var px=this.layer.map.getLayerPxFromLonLat(upperLeft);OpenLayers.Util.modifyDOMElement(this.backBufferTile.frame,null,px,size);var imageSize=this.backBufferTile.imageSize;imageSize=new OpenLayers.Size(imageSize.w*ratio,imageSize.h*ratio);var imageOffset=this.backBufferTile.imageOffset;if(imageOffset){imageOffset=new OpenLayers.Pixel(imageOffset.x*ratio,imageOffset.y*ratio);}
OpenLayers.Util.modifyDOMElement(this.backBufferTile.imgDiv,null,imageOffset,imageSize);this.backBufferTile.show();}}else{if(this.layer.singleTile){this.backBufferTile.show();}else{this.backBufferTile.hide();}}},show:function(){this.frame.style.display='';if(OpenLayers.Util.indexOf(this.layer.SUPPORTED_TRANSITIONS,this.layer.transitionEffect)!=-1){if(OpenLayers.IS_GECKO===true){this.frame.scrollLeft=this.frame.scrollLeft;}}},hide:function(){this.frame.style.display='none';},CLASS_NAME:"OpenLayers.Tile.Image"});OpenLayers.Tile.Image.useBlankTile=(OpenLayers.BROWSER_NAME=="safari"||OpenLayers.BROWSER_NAME=="opera");OpenLayers.Layer.WMS=OpenLayers.Class(OpenLayers.Layer.Grid,{DEFAULT_PARAMS:{service:"WMS",version:"1.1.1",request:"GetMap",styles:"",format:"image/jpeg"},reproject:false,isBaseLayer:true,encodeBBOX:false,noMagic:false,yx:{'EPSG:4326':true},initialize:function(name,url,params,options){var newArguments=[];params=OpenLayers.Util.upperCaseObject(params);if(parseFloat(params.VERSION)>=1.3&&!params.EXCEPTIONS){params.EXCEPTIONS="INIMAGE";}
newArguments.push(name,url,params,options);OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);OpenLayers.Util.applyDefaults(this.params,OpenLayers.Util.upperCaseObject(this.DEFAULT_PARAMS));if(!this.noMagic&&this.params.TRANSPARENT&&this.params.TRANSPARENT.toString().toLowerCase()=="true"){if((options==null)||(!options.isBaseLayer)){this.isBaseLayer=false;}
if(this.params.FORMAT=="image/jpeg"){this.params.FORMAT=OpenLayers.Util.alphaHack()?"image/gif":"image/png";}}},destroy:function(){OpenLayers.Layer.Grid.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.WMS(this.name,this.url,this.params,this.getOptions());}
obj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},reverseAxisOrder:function(){return(parseFloat(this.params.VERSION)>=1.3&&!!this.yx[this.map.getProjectionObject().getCode()]);},getURL:function(bounds){bounds=this.adjustBounds(bounds);var imageSize=this.getImageSize();var newParams={};var reverseAxisOrder=this.reverseAxisOrder();newParams.BBOX=this.encodeBBOX?bounds.toBBOX(null,reverseAxisOrder):bounds.toArray(reverseAxisOrder);newParams.WIDTH=imageSize.w;newParams.HEIGHT=imageSize.h;var requestString=this.getFullRequestString(newParams);return requestString;},mergeNewParams:function(newParams){var upperParams=OpenLayers.Util.upperCaseObject(newParams);var newArguments=[upperParams];return OpenLayers.Layer.Grid.prototype.mergeNewParams.apply(this,newArguments);},getFullRequestString:function(newParams,altUrl){var mapProjection=this.map.getProjectionObject();var projectionCode=this.projection&&this.projection.equals(mapProjection)?this.projection.getCode():mapProjection.getCode();var value=(projectionCode=="none")?null:projectionCode;if(parseFloat(this.params.VERSION)>=1.3){this.params.CRS=value;}else{this.params.SRS=value;}
if(typeof this.params.TRANSPARENT=="boolean"){newParams.TRANSPARENT=this.params.TRANSPARENT?"TRUE":"FALSE";}
return OpenLayers.Layer.Grid.prototype.getFullRequestString.apply(this,arguments);},CLASS_NAME:"OpenLayers.Layer.WMS"});OpenLayers.StyleMap=OpenLayers.Class({styles:null,extendDefault:true,initialize:function(style,options){this.styles={"default":new OpenLayers.Style(OpenLayers.Feature.Vector.style["default"]),"select":new OpenLayers.Style(OpenLayers.Feature.Vector.style["select"]),"temporary":new OpenLayers.Style(OpenLayers.Feature.Vector.style["temporary"]),"delete":new OpenLayers.Style(OpenLayers.Feature.Vector.style["delete"])};if(style instanceof OpenLayers.Style){this.styles["default"]=style;this.styles["select"]=style;this.styles["temporary"]=style;this.styles["delete"]=style;}else if(typeof style=="object"){for(var key in style){if(style[key]instanceof OpenLayers.Style){this.styles[key]=style[key];}else if(typeof style[key]=="object"){this.styles[key]=new OpenLayers.Style(style[key]);}else{this.styles["default"]=new OpenLayers.Style(style);this.styles["select"]=new OpenLayers.Style(style);this.styles["temporary"]=new OpenLayers.Style(style);this.styles["delete"]=new OpenLayers.Style(style);break;}}}
OpenLayers.Util.extend(this,options);},destroy:function(){for(var key in this.styles){this.styles[key].destroy();}
this.styles=null;},createSymbolizer:function(feature,intent){if(!feature){feature=new OpenLayers.Feature.Vector();}
if(!this.styles[intent]){intent="default";}
feature.renderIntent=intent;var defaultSymbolizer={};if(this.extendDefault&&intent!="default"){defaultSymbolizer=this.styles["default"].createSymbolizer(feature);}
return OpenLayers.Util.extend(defaultSymbolizer,this.styles[intent].createSymbolizer(feature));},addUniqueValueRules:function(renderIntent,property,symbolizers,context){var rules=[];for(var value in symbolizers){rules.push(new OpenLayers.Rule({symbolizer:symbolizers[value],context:context,filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:property,value:value})}));}
this.styles[renderIntent].addRules(rules);},CLASS_NAME:"OpenLayers.StyleMap"});OpenLayers.Layer.Vector=OpenLayers.Class(OpenLayers.Layer,{EVENT_TYPES:["beforefeatureadded","beforefeaturesadded","featureadded","featuresadded","beforefeatureremoved","beforefeaturesremoved","featureremoved","featuresremoved","beforefeatureselected","featureselected","featureunselected","beforefeaturemodified","featuremodified","afterfeaturemodified","vertexmodified","vertexremoved","sketchstarted","sketchmodified","sketchcomplete","refresh"],isBaseLayer:false,isFixed:false,features:null,filter:null,selectedFeatures:null,unrenderedFeatures:null,reportError:true,style:null,styleMap:null,strategies:null,protocol:null,renderers:['SVG','VML','Canvas'],renderer:null,rendererOptions:null,geometryType:null,drawn:false,initialize:function(name,options){this.EVENT_TYPES=OpenLayers.Layer.Vector.prototype.EVENT_TYPES.concat(OpenLayers.Layer.prototype.EVENT_TYPES);OpenLayers.Layer.prototype.initialize.apply(this,arguments);if(!this.renderer||!this.renderer.supported()){this.assignRenderer();}
if(!this.renderer||!this.renderer.supported()){this.renderer=null;this.displayError();}
if(!this.styleMap){this.styleMap=new OpenLayers.StyleMap();}
this.features=[];this.selectedFeatures=[];this.unrenderedFeatures={};if(this.strategies){for(var i=0,len=this.strategies.length;i<len;i++){this.strategies[i].setLayer(this);}}},destroy:function(){if(this.strategies){var strategy,i,len;for(i=0,len=this.strategies.length;i<len;i++){strategy=this.strategies[i];if(strategy.autoDestroy){strategy.destroy();}}
this.strategies=null;}
if(this.protocol){if(this.protocol.autoDestroy){this.protocol.destroy();}
this.protocol=null;}
this.destroyFeatures();this.features=null;this.selectedFeatures=null;this.unrenderedFeatures=null;if(this.renderer){this.renderer.destroy();}
this.renderer=null;this.geometryType=null;this.drawn=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.Vector(this.name,this.getOptions());}
obj=OpenLayers.Layer.prototype.clone.apply(this,[obj]);var features=this.features;var len=features.length;var clonedFeatures=new Array(len);for(var i=0;i<len;++i){clonedFeatures[i]=features[i].clone();}
obj.features=clonedFeatures;return obj;},refresh:function(obj){if(this.calculateInRange()&&this.visibility){this.events.triggerEvent("refresh",obj);}},assignRenderer:function(){for(var i=0,len=this.renderers.length;i<len;i++){var rendererClass=this.renderers[i];var renderer=(typeof rendererClass=="function")?rendererClass:OpenLayers.Renderer[rendererClass];if(renderer&&renderer.prototype.supported()){this.renderer=new renderer(this.div,this.rendererOptions);break;}}},displayError:function(){if(this.reportError){OpenLayers.Console.userError(OpenLayers.i18n("browserNotSupported",{'renderers':this.renderers.join("\n")}));}},setMap:function(map){OpenLayers.Layer.prototype.setMap.apply(this,arguments);if(!this.renderer){this.map.removeLayer(this);}else{this.renderer.map=this.map;this.renderer.setSize(this.map.getSize());}},afterAdd:function(){if(this.strategies){var strategy,i,len;for(i=0,len=this.strategies.length;i<len;i++){strategy=this.strategies[i];if(strategy.autoActivate){strategy.activate();}}}},removeMap:function(map){this.drawn=false;if(this.strategies){var strategy,i,len;for(i=0,len=this.strategies.length;i<len;i++){strategy=this.strategies[i];if(strategy.autoActivate){strategy.deactivate();}}}},onMapResize:function(){OpenLayers.Layer.prototype.onMapResize.apply(this,arguments);this.renderer.setSize(this.map.getSize());},moveTo:function(bounds,zoomChanged,dragging){OpenLayers.Layer.prototype.moveTo.apply(this,arguments);var ng=(OpenLayers.Renderer.NG&&this.renderer instanceof OpenLayers.Renderer.NG);if(ng){dragging||this.renderer.updateDimensions(zoomChanged);}else{var coordSysUnchanged=true;if(!dragging){this.renderer.root.style.visibility="hidden";this.div.style.left=-parseInt(this.map.layerContainerDiv.style.left)+"px";this.div.style.top=-parseInt(this.map.layerContainerDiv.style.top)+"px";var extent=this.map.getExtent();coordSysUnchanged=this.renderer.setExtent(extent,zoomChanged);this.renderer.root.style.visibility="visible";if(OpenLayers.IS_GECKO===true){this.div.scrollLeft=this.div.scrollLeft;}
if(!zoomChanged&&coordSysUnchanged){for(var i in this.unrenderedFeatures){var feature=this.unrenderedFeatures[i];this.drawFeature(feature);}}}}
if(!this.drawn||(!ng&&(zoomChanged||!coordSysUnchanged))){this.drawn=true;var feature;for(var i=0,len=this.features.length;i<len;i++){this.renderer.locked=(i!==(len-1));feature=this.features[i];this.drawFeature(feature);}}},redraw:function(){if(OpenLayers.Renderer.NG&&this.renderer instanceof OpenLayers.Renderer.NG){this.drawn=false;}
return OpenLayers.Layer.prototype.redraw.apply(this,arguments);},display:function(display){OpenLayers.Layer.prototype.display.apply(this,arguments);var currentDisplay=this.div.style.display;if(currentDisplay!=this.renderer.root.style.display){this.renderer.root.style.display=currentDisplay;}},addFeatures:function(features,options){if(!(OpenLayers.Util.isArray(features))){features=[features];}
var notify=!options||!options.silent;if(notify){var event={features:features};var ret=this.events.triggerEvent("beforefeaturesadded",event);if(ret===false){return;}
features=event.features;}
var featuresAdded=[];for(var i=0,len=features.length;i<len;i++){if(i!=(features.length-1)){this.renderer.locked=true;}else{this.renderer.locked=false;}
var feature=features[i];if(this.geometryType&&!(feature.geometry instanceof this.geometryType)){var throwStr=OpenLayers.i18n('componentShouldBe',{'geomType':this.geometryType.prototype.CLASS_NAME});throw throwStr;}
feature.layer=this;if(!feature.style&&this.style){feature.style=OpenLayers.Util.extend({},this.style);}
if(notify){if(this.events.triggerEvent("beforefeatureadded",{feature:feature})===false){continue;}
this.preFeatureInsert(feature);}
featuresAdded.push(feature);this.features.push(feature);this.drawFeature(feature);if(notify){this.events.triggerEvent("featureadded",{feature:feature});this.onFeatureInsert(feature);}}
if(notify){this.events.triggerEvent("featuresadded",{features:featuresAdded});}},removeFeatures:function(features,options){if(!features||features.length===0){return;}
if(features===this.features){return this.removeAllFeatures(options);}
if(!(OpenLayers.Util.isArray(features))){features=[features];}
if(features===this.selectedFeatures){features=features.slice();}
var notify=!options||!options.silent;if(notify){this.events.triggerEvent("beforefeaturesremoved",{features:features});}
for(var i=features.length-1;i>=0;i--){if(i!=0&&features[i-1].geometry){this.renderer.locked=true;}else{this.renderer.locked=false;}
var feature=features[i];delete this.unrenderedFeatures[feature.id];if(notify){this.events.triggerEvent("beforefeatureremoved",{feature:feature});}
this.features=OpenLayers.Util.removeItem(this.features,feature);feature.layer=null;if(feature.geometry){this.renderer.eraseFeatures(feature);}
if(OpenLayers.Util.indexOf(this.selectedFeatures,feature)!=-1){OpenLayers.Util.removeItem(this.selectedFeatures,feature);}
if(notify){this.events.triggerEvent("featureremoved",{feature:feature});}}
if(notify){this.events.triggerEvent("featuresremoved",{features:features});}},removeAllFeatures:function(options){var notify=!options||!options.silent;var features=this.features;if(notify){this.events.triggerEvent("beforefeaturesremoved",{features:features});}
var feature;for(var i=features.length-1;i>=0;i--){feature=features[i];if(notify){this.events.triggerEvent("beforefeatureremoved",{feature:feature});}
feature.layer=null;if(notify){this.events.triggerEvent("featureremoved",{feature:feature});}}
this.renderer.clear();this.features=[];this.unrenderedFeatures={};this.selectedFeatures=[];if(notify){this.events.triggerEvent("featuresremoved",{features:features});}},destroyFeatures:function(features,options){var all=(features==undefined);if(all){features=this.features;}
if(features){this.removeFeatures(features,options);for(var i=features.length-1;i>=0;i--){features[i].destroy();}}},drawFeature:function(feature,style){if(!this.drawn){return;}
if(typeof style!="object"){if(!style&&feature.state===OpenLayers.State.DELETE){style="delete";}
var renderIntent=style||feature.renderIntent;style=feature.style||this.style;if(!style){style=this.styleMap.createSymbolizer(feature,renderIntent);}}
var drawn=this.renderer.drawFeature(feature,style);if(drawn===false||drawn===null){this.unrenderedFeatures[feature.id]=feature;}else{delete this.unrenderedFeatures[feature.id];}},eraseFeatures:function(features){this.renderer.eraseFeatures(features);},getFeatureFromEvent:function(evt){if(!this.renderer){OpenLayers.Console.error(OpenLayers.i18n("getFeatureError"));return null;}
var feature=null;var featureId=this.renderer.getFeatureIdFromEvent(evt);if(featureId){if(typeof featureId==="string"){feature=this.getFeatureById(featureId);}else{feature=featureId;}}
return feature;},getFeatureBy:function(property,value){var feature=null;for(var i=0,len=this.features.length;i<len;++i){if(this.features[i][property]==value){feature=this.features[i];break;}}
return feature;},getFeatureById:function(featureId){return this.getFeatureBy('id',featureId);},getFeatureByFid:function(featureFid){return this.getFeatureBy('fid',featureFid);},getFeaturesByAttribute:function(attrName,attrValue){var i,feature,len=this.features.length,foundFeatures=[];for(i=0;i<len;i++){feature=this.features[i];if(feature&&feature.attributes){if(feature.attributes[attrName]===attrValue){foundFeatures.push(feature);}}}
return foundFeatures;},onFeatureInsert:function(feature){},preFeatureInsert:function(feature){},getDataExtent:function(){var maxExtent=null;var features=this.features;if(features&&(features.length>0)){var geometry=null;for(var i=0,len=features.length;i<len;i++){geometry=features[i].geometry;if(geometry){if(maxExtent===null){maxExtent=new OpenLayers.Bounds();}
maxExtent.extend(geometry.getBounds());}}}
return maxExtent;},CLASS_NAME:"OpenLayers.Layer.Vector"});OpenLayers.Renderer.Canvas=OpenLayers.Class(OpenLayers.Renderer,{hitDetection:true,hitOverflow:0,canvas:null,features:null,pendingRedraw:false,initialize:function(containerID,options){OpenLayers.Renderer.prototype.initialize.apply(this,arguments);this.root=document.createElement("canvas");this.container.appendChild(this.root);this.canvas=this.root.getContext("2d");this.features={};if(this.hitDetection){this.hitCanvas=document.createElement("canvas");this.hitContext=this.hitCanvas.getContext("2d");}},eraseGeometry:function(geometry,featureId){this.eraseFeatures(this.features[featureId][0]);},supported:function(){var canvas=document.createElement("canvas");return!!canvas.getContext;},setSize:function(size){this.size=size.clone();var root=this.root;root.style.width=size.w+"px";root.style.height=size.h+"px";root.width=size.w;root.height=size.h;this.resolution=null;if(this.hitDetection){var hitCanvas=this.hitCanvas;hitCanvas.style.width=size.w+"px";hitCanvas.style.height=size.h+"px";hitCanvas.width=size.w;hitCanvas.height=size.h;}},drawFeature:function(feature,style){var rendered;if(feature.geometry){style=this.applyDefaultSymbolizer(style||feature.style);var bounds=feature.geometry.getBounds();rendered=(style.display!=="none")&&!!bounds&&bounds.intersectsBounds(this.extent);if(rendered){this.features[feature.id]=[feature,style];}
else{delete(this.features[feature.id]);}
this.pendingRedraw=true;}
if(this.pendingRedraw&&!this.locked){this.redraw();this.pendingRedraw=false;}
return rendered;},drawGeometry:function(geometry,style,featureId){var className=geometry.CLASS_NAME;if((className=="OpenLayers.Geometry.Collection")||(className=="OpenLayers.Geometry.MultiPoint")||(className=="OpenLayers.Geometry.MultiLineString")||(className=="OpenLayers.Geometry.MultiPolygon")){for(var i=0;i<geometry.components.length;i++){this.drawGeometry(geometry.components[i],style,featureId);}
return;}
switch(geometry.CLASS_NAME){case"OpenLayers.Geometry.Point":this.drawPoint(geometry,style,featureId);break;case"OpenLayers.Geometry.LineString":this.drawLineString(geometry,style,featureId);break;case"OpenLayers.Geometry.LinearRing":this.drawLinearRing(geometry,style,featureId);break;case"OpenLayers.Geometry.Polygon":this.drawPolygon(geometry,style,featureId);break;default:break;}},drawExternalGraphic:function(geometry,style,featureId){var img=new Image();if(style.graphicTitle){img.title=style.graphicTitle;}
var width=style.graphicWidth||style.graphicHeight;var height=style.graphicHeight||style.graphicWidth;width=width?width:style.pointRadius*2;height=height?height:style.pointRadius*2;var xOffset=(style.graphicXOffset!=undefined)?style.graphicXOffset:-(0.5*width);var yOffset=(style.graphicYOffset!=undefined)?style.graphicYOffset:-(0.5*height);var opacity=style.graphicOpacity||style.fillOpacity;var onLoad=function(){if(!this.features[featureId]){return;}
var pt=this.getLocalXY(geometry);var p0=pt[0];var p1=pt[1];if(!isNaN(p0)&&!isNaN(p1)){var x=(p0+xOffset)|0;var y=(p1+yOffset)|0;var canvas=this.canvas;canvas.globalAlpha=opacity;var factor=OpenLayers.Renderer.Canvas.drawImageScaleFactor||(OpenLayers.Renderer.Canvas.drawImageScaleFactor=/android 2.1/.test(navigator.userAgent.toLowerCase())?320/window.screen.width:1);canvas.drawImage(img,x*factor,y*factor,width*factor,height*factor);if(this.hitDetection){this.setHitContextStyle("fill",featureId);this.hitContext.fillRect(x,y,width,height);}}};img.onload=OpenLayers.Function.bind(onLoad,this);img.src=style.externalGraphic;},setCanvasStyle:function(type,style){if(type==="fill"){this.canvas.globalAlpha=style['fillOpacity'];this.canvas.fillStyle=style['fillColor'];}else if(type==="stroke"){this.canvas.globalAlpha=style['strokeOpacity'];this.canvas.strokeStyle=style['strokeColor'];this.canvas.lineWidth=style['strokeWidth'];}else{this.canvas.globalAlpha=0;this.canvas.lineWidth=1;}},featureIdToHex:function(featureId){var id=Number(featureId.split("_").pop())+1;if(id>=16777216){this.hitOverflow=id-16777215;id=id%16777216+1;}
var hex="000000"+id.toString(16);var len=hex.length;hex="#"+hex.substring(len-6,len);return hex;},setHitContextStyle:function(type,featureId,symbolizer){var hex=this.featureIdToHex(featureId);if(type=="fill"){this.hitContext.globalAlpha=1.0;this.hitContext.fillStyle=hex;}else if(type=="stroke"){this.hitContext.globalAlpha=1.0;this.hitContext.strokeStyle=hex;this.hitContext.lineWidth=symbolizer.strokeWidth+2;}else{this.hitContext.globalAlpha=0;this.hitContext.lineWidth=1;}},drawPoint:function(geometry,style,featureId){if(style.graphic!==false){if(style.externalGraphic){this.drawExternalGraphic(geometry,style,featureId);}else{var pt=this.getLocalXY(geometry);var p0=pt[0];var p1=pt[1];if(!isNaN(p0)&&!isNaN(p1)){var twoPi=Math.PI*2;var radius=style.pointRadius;if(style.fill!==false){this.setCanvasStyle("fill",style);this.canvas.beginPath();this.canvas.arc(p0,p1,radius,0,twoPi,true);this.canvas.fill();if(this.hitDetection){this.setHitContextStyle("fill",featureId,style);this.hitContext.beginPath();this.hitContext.arc(p0,p1,radius,0,twoPi,true);this.hitContext.fill();}}
if(style.stroke!==false){this.setCanvasStyle("stroke",style);this.canvas.beginPath();this.canvas.arc(p0,p1,radius,0,twoPi,true);this.canvas.stroke();if(this.hitDetection){this.setHitContextStyle("stroke",featureId,style);this.hitContext.beginPath();this.hitContext.arc(p0,p1,radius,0,twoPi,true);this.hitContext.stroke();}
this.setCanvasStyle("reset");}}}}},drawLineString:function(geometry,style,featureId){style=OpenLayers.Util.applyDefaults({fill:false},style);this.drawLinearRing(geometry,style,featureId);},drawLinearRing:function(geometry,style,featureId){if(style.fill!==false){this.setCanvasStyle("fill",style);this.renderPath(this.canvas,geometry,style,featureId,"fill");if(this.hitDetection){this.setHitContextStyle("fill",featureId,style);this.renderPath(this.hitContext,geometry,style,featureId,"fill");}}
if(style.stroke!==false){this.setCanvasStyle("stroke",style);this.renderPath(this.canvas,geometry,style,featureId,"stroke");if(this.hitDetection){this.setHitContextStyle("stroke",featureId,style);this.renderPath(this.hitContext,geometry,style,featureId,"stroke");}}
this.setCanvasStyle("reset");},renderPath:function(context,geometry,style,featureId,type){var components=geometry.components;var len=components.length;context.beginPath();var start=this.getLocalXY(components[0]);var x=start[0];var y=start[1];if(!isNaN(x)&&!isNaN(y)){context.moveTo(start[0],start[1]);for(var i=1;i<len;++i){var pt=this.getLocalXY(components[i]);context.lineTo(pt[0],pt[1]);}
if(type==="fill"){context.fill();}else{context.stroke();}}},drawPolygon:function(geometry,style,featureId){var components=geometry.components;var len=components.length;this.drawLinearRing(components[0],style,featureId);for(var i=1;i<len;++i){this.canvas.globalCompositeOperation="destination-out";if(this.hitDetection){this.hitContext.globalCompositeOperation="destination-out";}
this.drawLinearRing(components[i],OpenLayers.Util.applyDefaults({stroke:false,fillOpacity:1.0},style),featureId);this.canvas.globalCompositeOperation="source-over";if(this.hitDetection){this.hitContext.globalCompositeOperation="source-over";}
this.drawLinearRing(components[i],OpenLayers.Util.applyDefaults({fill:false},style),featureId);}},drawText:function(location,style){style=OpenLayers.Util.extend({fontColor:"#000000",labelAlign:"cm"},style);var pt=this.getLocalXY(location);this.setCanvasStyle("reset");this.canvas.fillStyle=style.fontColor;this.canvas.globalAlpha=style.fontOpacity||1.0;var fontStyle=[style.fontStyle?style.fontStyle:"normal","normal",style.fontWeight?style.fontWeight:"normal",style.fontSize?style.fontSize:"1em",style.fontFamily?style.fontFamily:"sans-serif"].join(" ");var labelRows=style.label.split('\n');var numRows=labelRows.length;if(this.canvas.fillText){this.canvas.font=fontStyle;this.canvas.textAlign=OpenLayers.Renderer.Canvas.LABEL_ALIGN[style.labelAlign[0]]||"center";this.canvas.textBaseline=OpenLayers.Renderer.Canvas.LABEL_ALIGN[style.labelAlign[1]]||"middle";var vfactor=OpenLayers.Renderer.Canvas.LABEL_FACTOR[style.labelAlign[1]];if(vfactor==null){vfactor=-.5;}
var lineHeight=this.canvas.measureText('Mg').height||this.canvas.measureText('xx').width;pt[1]+=lineHeight*vfactor*(numRows-1);for(var i=0;i<numRows;i++){this.canvas.fillText(labelRows[i],pt[0],pt[1]+(lineHeight*i));}}else if(this.canvas.mozDrawText){this.canvas.mozTextStyle=fontStyle;var hfactor=OpenLayers.Renderer.Canvas.LABEL_FACTOR[style.labelAlign[0]];if(hfactor==null){hfactor=-.5;}
var vfactor=OpenLayers.Renderer.Canvas.LABEL_FACTOR[style.labelAlign[1]];if(vfactor==null){vfactor=-.5;}
var lineHeight=this.canvas.mozMeasureText('xx');pt[1]+=lineHeight*(1+(vfactor*numRows));for(var i=0;i<numRows;i++){var x=pt[0]+(hfactor*this.canvas.mozMeasureText(labelRows[i]));var y=pt[1]+(i*lineHeight);this.canvas.translate(x,y);this.canvas.mozDrawText(labelRows[i]);this.canvas.translate(-x,-y);}}
this.setCanvasStyle("reset");},getLocalXY:function(point){var resolution=this.getResolution();var extent=this.extent;var x=(point.x/resolution+(-extent.left/resolution));var y=((extent.top/resolution)-point.y/resolution);return[x,y];},clear:function(){var height=this.root.height;var width=this.root.width;this.canvas.clearRect(0,0,width,height);this.features={};if(this.hitDetection){this.hitContext.clearRect(0,0,width,height);}},getFeatureIdFromEvent:function(evt){var feature=null;if(this.hitDetection){if(!this.map.dragging){var xy=evt.xy;var x=xy.x|0;var y=xy.y|0;var data=this.hitContext.getImageData(x,y,1,1).data;if(data[3]===255){var id=data[2]+(256*(data[1]+(256*data[0])));if(id){feature=this.features["OpenLayers.Feature.Vector_"+(id-1+this.hitOverflow)][0];}}}}
return feature;},eraseFeatures:function(features){if(!(OpenLayers.Util.isArray(features))){features=[features];}
for(var i=0;i<features.length;++i){delete this.features[features[i].id];}
this.redraw();},redraw:function(){if(!this.locked){var height=this.root.height;var width=this.root.width;this.canvas.clearRect(0,0,width,height);if(this.hitDetection){this.hitContext.clearRect(0,0,width,height);}
var labelMap=[];var feature,style;for(var id in this.features){if(!this.features.hasOwnProperty(id)){continue;}
feature=this.features[id][0];style=this.features[id][1];this.drawGeometry(feature.geometry,style,feature.id);if(style.label){labelMap.push([feature,style]);}}
var item;for(var i=0,len=labelMap.length;i<len;++i){item=labelMap[i];this.drawText(item[0].geometry.getCentroid(),item[1]);}}},CLASS_NAME:"OpenLayers.Renderer.Canvas"});OpenLayers.Renderer.Canvas.LABEL_ALIGN={"l":"left","r":"right","t":"top","b":"bottom"};OpenLayers.Renderer.Canvas.LABEL_FACTOR={"l":0,"r":-1,"t":0,"b":-1};OpenLayers.Renderer.Canvas.drawImageScaleFactor=null;OpenLayers.Renderer.SVG=OpenLayers.Class(OpenLayers.Renderer.Elements,{xmlns:"http://www.w3.org/2000/svg",xlinkns:"http://www.w3.org/1999/xlink",MAX_PIXEL:15000,translationParameters:null,symbolMetrics:null,initialize:function(containerID){if(!this.supported()){return;}
OpenLayers.Renderer.Elements.prototype.initialize.apply(this,arguments);this.translationParameters={x:0,y:0};this.symbolMetrics={};},supported:function(){var svgFeature="http://www.w3.org/TR/SVG11/feature#";return(document.implementation&&(document.implementation.hasFeature("org.w3c.svg","1.0")||document.implementation.hasFeature(svgFeature+"SVG","1.1")||document.implementation.hasFeature(svgFeature+"BasicStructure","1.1")));},inValidRange:function(x,y,xyOnly){var left=x+(xyOnly?0:this.translationParameters.x);var top=y+(xyOnly?0:this.translationParameters.y);return(left>=-this.MAX_PIXEL&&left<=this.MAX_PIXEL&&top>=-this.MAX_PIXEL&&top<=this.MAX_PIXEL);},setExtent:function(extent,resolutionChanged){OpenLayers.Renderer.Elements.prototype.setExtent.apply(this,arguments);var resolution=this.getResolution();var left=-extent.left/resolution;var top=extent.top/resolution;if(resolutionChanged){this.left=left;this.top=top;var extentString="0 0 "+this.size.w+" "+this.size.h;this.rendererRoot.setAttributeNS(null,"viewBox",extentString);this.translate(0,0);return true;}else{var inRange=this.translate(left-this.left,top-this.top);if(!inRange){this.setExtent(extent,true);}
return inRange;}},translate:function(x,y){if(!this.inValidRange(x,y,true)){return false;}else{var transformString="";if(x||y){transformString="translate("+x+","+y+")";}
this.root.setAttributeNS(null,"transform",transformString);this.translationParameters={x:x,y:y};return true;}},setSize:function(size){OpenLayers.Renderer.prototype.setSize.apply(this,arguments);this.rendererRoot.setAttributeNS(null,"width",this.size.w);this.rendererRoot.setAttributeNS(null,"height",this.size.h);},getNodeType:function(geometry,style){var nodeType=null;switch(geometry.CLASS_NAME){case"OpenLayers.Geometry.Point":if(style.externalGraphic){nodeType="image";}else if(this.isComplexSymbol(style.graphicName)){nodeType="svg";}else{nodeType="circle";}
break;case"OpenLayers.Geometry.Rectangle":nodeType="rect";break;case"OpenLayers.Geometry.LineString":nodeType="polyline";break;case"OpenLayers.Geometry.LinearRing":nodeType="polygon";break;case"OpenLayers.Geometry.Polygon":case"OpenLayers.Geometry.Curve":case"OpenLayers.Geometry.Surface":nodeType="path";break;default:break;}
return nodeType;},setStyle:function(node,style,options){style=style||node._style;options=options||node._options;var r=parseFloat(node.getAttributeNS(null,"r"));var widthFactor=1;var pos;if(node._geometryClass=="OpenLayers.Geometry.Point"&&r){node.style.visibility="";if(style.graphic===false){node.style.visibility="hidden";}else if(style.externalGraphic){pos=this.getPosition(node);if(style.graphicTitle){node.setAttributeNS(null,"title",style.graphicTitle);var label=this.nodeFactory(null,"title");label.textContent=style.graphicTitle;node.appendChild(label);}
if(style.graphicWidth&&style.graphicHeight){node.setAttributeNS(null,"preserveAspectRatio","none");}
var width=style.graphicWidth||style.graphicHeight;var height=style.graphicHeight||style.graphicWidth;width=width?width:style.pointRadius*2;height=height?height:style.pointRadius*2;var xOffset=(style.graphicXOffset!=undefined)?style.graphicXOffset:-(0.5*width);var yOffset=(style.graphicYOffset!=undefined)?style.graphicYOffset:-(0.5*height);var opacity=style.graphicOpacity||style.fillOpacity;node.setAttributeNS(null,"x",(pos.x+xOffset).toFixed());node.setAttributeNS(null,"y",(pos.y+yOffset).toFixed());node.setAttributeNS(null,"width",width);node.setAttributeNS(null,"height",height);node.setAttributeNS(this.xlinkns,"href",style.externalGraphic);node.setAttributeNS(null,"style","opacity: "+opacity);node.onclick=OpenLayers.Renderer.SVG.preventDefault;}else if(this.isComplexSymbol(style.graphicName)){var offset=style.pointRadius*3;var size=offset*2;var src=this.importSymbol(style.graphicName);pos=this.getPosition(node);widthFactor=this.symbolMetrics[src.id][0]*3/size;var parent=node.parentNode;var nextSibling=node.nextSibling;if(parent){parent.removeChild(node);}
node.firstChild&&node.removeChild(node.firstChild);node.appendChild(src.firstChild.cloneNode(true));node.setAttributeNS(null,"viewBox",src.getAttributeNS(null,"viewBox"));node.setAttributeNS(null,"width",size);node.setAttributeNS(null,"height",size);node.setAttributeNS(null,"x",pos.x-offset);node.setAttributeNS(null,"y",pos.y-offset);if(nextSibling){parent.insertBefore(node,nextSibling);}else if(parent){parent.appendChild(node);}}else{node.setAttributeNS(null,"r",style.pointRadius);}
var rotation=style.rotation;if((rotation!==undefined||node._rotation!==undefined)&&pos){node._rotation=rotation;rotation|=0;if(node.nodeName!=="svg"){node.setAttributeNS(null,"transform","rotate("+rotation+" "+pos.x+" "+
pos.y+")");}else{var metrics=this.symbolMetrics[src.id];node.firstChild.setAttributeNS(null,"transform","rotate("
+rotation+" "
+metrics[1]+" "
+metrics[2]+")");}}}
if(options.isFilled){node.setAttributeNS(null,"fill",style.fillColor);node.setAttributeNS(null,"fill-opacity",style.fillOpacity);}else{node.setAttributeNS(null,"fill","none");}
if(options.isStroked){node.setAttributeNS(null,"stroke",style.strokeColor);node.setAttributeNS(null,"stroke-opacity",style.strokeOpacity);node.setAttributeNS(null,"stroke-width",style.strokeWidth*widthFactor);node.setAttributeNS(null,"stroke-linecap",style.strokeLinecap||"round");node.setAttributeNS(null,"stroke-linejoin","round");style.strokeDashstyle&&node.setAttributeNS(null,"stroke-dasharray",this.dashStyle(style,widthFactor));}else{node.setAttributeNS(null,"stroke","none");}
if(style.pointerEvents){node.setAttributeNS(null,"pointer-events",style.pointerEvents);}
if(style.cursor!=null){node.setAttributeNS(null,"cursor",style.cursor);}
return node;},dashStyle:function(style,widthFactor){var w=style.strokeWidth*widthFactor;var str=style.strokeDashstyle;switch(str){case'solid':return'none';case'dot':return[1,4*w].join();case'dash':return[4*w,4*w].join();case'dashdot':return[4*w,4*w,1,4*w].join();case'longdash':return[8*w,4*w].join();case'longdashdot':return[8*w,4*w,1,4*w].join();default:return OpenLayers.String.trim(str).replace(/\s+/g,",");}},createNode:function(type,id){var node=document.createElementNS(this.xmlns,type);if(id){node.setAttributeNS(null,"id",id);}
return node;},nodeTypeCompare:function(node,type){return(type==node.nodeName);},createRenderRoot:function(){return this.nodeFactory(this.container.id+"_svgRoot","svg");},createRoot:function(suffix){return this.nodeFactory(this.container.id+suffix,"g");},createDefs:function(){var defs=this.nodeFactory(this.container.id+"_defs","defs");this.rendererRoot.appendChild(defs);return defs;},drawPoint:function(node,geometry){return this.drawCircle(node,geometry,1);},drawCircle:function(node,geometry,radius){var resolution=this.getResolution();var x=(geometry.x/resolution+this.left);var y=(this.top-geometry.y/resolution);if(this.inValidRange(x,y)){node.setAttributeNS(null,"cx",x);node.setAttributeNS(null,"cy",y);node.setAttributeNS(null,"r",radius);return node;}else{return false;}},drawLineString:function(node,geometry){var componentsResult=this.getComponentsString(geometry.components);if(componentsResult.path){node.setAttributeNS(null,"points",componentsResult.path);return(componentsResult.complete?node:null);}else{return false;}},drawLinearRing:function(node,geometry){var componentsResult=this.getComponentsString(geometry.components);if(componentsResult.path){node.setAttributeNS(null,"points",componentsResult.path);return(componentsResult.complete?node:null);}else{return false;}},drawPolygon:function(node,geometry){var d="";var draw=true;var complete=true;var linearRingResult,path;for(var j=0,len=geometry.components.length;j<len;j++){d+=" M";linearRingResult=this.getComponentsString(geometry.components[j].components," ");path=linearRingResult.path;if(path){d+=" "+path;complete=linearRingResult.complete&&complete;}else{draw=false;}}
d+=" z";if(draw){node.setAttributeNS(null,"d",d);node.setAttributeNS(null,"fill-rule","evenodd");return complete?node:null;}else{return false;}},drawRectangle:function(node,geometry){var resolution=this.getResolution();var x=(geometry.x/resolution+this.left);var y=(this.top-geometry.y/resolution);if(this.inValidRange(x,y)){node.setAttributeNS(null,"x",x);node.setAttributeNS(null,"y",y);node.setAttributeNS(null,"width",geometry.width/resolution);node.setAttributeNS(null,"height",geometry.height/resolution);return node;}else{return false;}},drawSurface:function(node,geometry){var d=null;var draw=true;for(var i=0,len=geometry.components.length;i<len;i++){if((i%3)==0&&(i/3)==0){var component=this.getShortString(geometry.components[i]);if(!component){draw=false;}
d="M "+component;}else if((i%3)==1){var component=this.getShortString(geometry.components[i]);if(!component){draw=false;}
d+=" C "+component;}else{var component=this.getShortString(geometry.components[i]);if(!component){draw=false;}
d+=" "+component;}}
d+=" Z";if(draw){node.setAttributeNS(null,"d",d);return node;}else{return false;}},drawText:function(featureId,style,location){var resolution=this.getResolution();var x=(location.x/resolution+this.left);var y=(location.y/resolution-this.top);var label=this.nodeFactory(featureId+this.LABEL_ID_SUFFIX,"text");label.setAttributeNS(null,"x",x);label.setAttributeNS(null,"y",-y);if(style.fontColor){label.setAttributeNS(null,"fill",style.fontColor);}
if(style.fontOpacity){label.setAttributeNS(null,"opacity",style.fontOpacity);}
if(style.fontFamily){label.setAttributeNS(null,"font-family",style.fontFamily);}
if(style.fontSize){label.setAttributeNS(null,"font-size",style.fontSize);}
if(style.fontWeight){label.setAttributeNS(null,"font-weight",style.fontWeight);}
if(style.fontStyle){label.setAttributeNS(null,"font-style",style.fontStyle);}
if(style.labelSelect===true){label.setAttributeNS(null,"pointer-events","visible");label._featureId=featureId;}else{label.setAttributeNS(null,"pointer-events","none");}
var align=style.labelAlign||"cm";label.setAttributeNS(null,"text-anchor",OpenLayers.Renderer.SVG.LABEL_ALIGN[align[0]]||"middle");if(OpenLayers.IS_GECKO===true){label.setAttributeNS(null,"dominant-baseline",OpenLayers.Renderer.SVG.LABEL_ALIGN[align[1]]||"central");}
var labelRows=style.label.split('\n');var numRows=labelRows.length;while(label.childNodes.length>numRows){label.removeChild(label.lastChild);}
for(var i=0;i<numRows;i++){var tspan=this.nodeFactory(featureId+this.LABEL_ID_SUFFIX+"_tspan_"+i,"tspan");if(style.labelSelect===true){tspan._featureId=featureId;tspan._geometry=location;tspan._geometryClass=location.CLASS_NAME;}
if(OpenLayers.IS_GECKO===false){tspan.setAttributeNS(null,"baseline-shift",OpenLayers.Renderer.SVG.LABEL_VSHIFT[align[1]]||"-35%");}
tspan.setAttribute("x",x);if(i==0){var vfactor=OpenLayers.Renderer.SVG.LABEL_VFACTOR[align[1]];if(vfactor==null){vfactor=-.5;}
tspan.setAttribute("dy",(vfactor*(numRows-1))+"em");}else{tspan.setAttribute("dy","1em");}
tspan.textContent=(labelRows[i]==='')?' ':labelRows[i];if(!tspan.parentNode){label.appendChild(tspan);}}
if(!label.parentNode){this.textRoot.appendChild(label);}},getComponentsString:function(components,separator){var renderCmp=[];var complete=true;var len=components.length;var strings=[];var str,component;for(var i=0;i<len;i++){component=components[i];renderCmp.push(component);str=this.getShortString(component);if(str){strings.push(str);}else{if(i>0){if(this.getShortString(components[i-1])){strings.push(this.clipLine(components[i],components[i-1]));}}
if(i<len-1){if(this.getShortString(components[i+1])){strings.push(this.clipLine(components[i],components[i+1]));}}
complete=false;}}
return{path:strings.join(separator||","),complete:complete};},clipLine:function(badComponent,goodComponent){if(goodComponent.equals(badComponent)){return"";}
var resolution=this.getResolution();var maxX=this.MAX_PIXEL-this.translationParameters.x;var maxY=this.MAX_PIXEL-this.translationParameters.y;var x1=goodComponent.x/resolution+this.left;var y1=this.top-goodComponent.y/resolution;var x2=badComponent.x/resolution+this.left;var y2=this.top-badComponent.y/resolution;var k;if(x2<-maxX||x2>maxX){k=(y2-y1)/(x2-x1);x2=x2<0?-maxX:maxX;y2=y1+(x2-x1)*k;}
if(y2<-maxY||y2>maxY){k=(x2-x1)/(y2-y1);y2=y2<0?-maxY:maxY;x2=x1+(y2-y1)*k;}
return x2+","+y2;},getShortString:function(point){var resolution=this.getResolution();var x=(point.x/resolution+this.left);var y=(this.top-point.y/resolution);if(this.inValidRange(x,y)){return x+","+y;}else{return false;}},getPosition:function(node){return({x:parseFloat(node.getAttributeNS(null,"cx")),y:parseFloat(node.getAttributeNS(null,"cy"))});},importSymbol:function(graphicName){if(!this.defs){this.defs=this.createDefs();}
var id=this.container.id+"-"+graphicName;var existing=document.getElementById(id)
if(existing!=null){return existing;}
var symbol=OpenLayers.Renderer.symbol[graphicName];if(!symbol){throw new Error(graphicName+' is not a valid symbol name');}
var symbolNode=this.nodeFactory(id,"symbol");var node=this.nodeFactory(null,"polygon");symbolNode.appendChild(node);var symbolExtent=new OpenLayers.Bounds(Number.MAX_VALUE,Number.MAX_VALUE,0,0);var points=[];var x,y;for(var i=0;i<symbol.length;i=i+2){x=symbol[i];y=symbol[i+1];symbolExtent.left=Math.min(symbolExtent.left,x);symbolExtent.bottom=Math.min(symbolExtent.bottom,y);symbolExtent.right=Math.max(symbolExtent.right,x);symbolExtent.top=Math.max(symbolExtent.top,y);points.push(x,",",y);}
node.setAttributeNS(null,"points",points.join(" "));var width=symbolExtent.getWidth();var height=symbolExtent.getHeight();var viewBox=[symbolExtent.left-width,symbolExtent.bottom-height,width*3,height*3];symbolNode.setAttributeNS(null,"viewBox",viewBox.join(" "));this.symbolMetrics[id]=[Math.max(width,height),symbolExtent.getCenterLonLat().lon,symbolExtent.getCenterLonLat().lat];this.defs.appendChild(symbolNode);return symbolNode;},getFeatureIdFromEvent:function(evt){var featureId=OpenLayers.Renderer.Elements.prototype.getFeatureIdFromEvent.apply(this,arguments);if(!featureId){var target=evt.target;featureId=target.parentNode&&target!=this.rendererRoot&&target.parentNode._featureId;}
return featureId;},CLASS_NAME:"OpenLayers.Renderer.SVG"});OpenLayers.Renderer.SVG.LABEL_ALIGN={"l":"start","r":"end","b":"bottom","t":"hanging"};OpenLayers.Renderer.SVG.LABEL_VSHIFT={"t":"-70%","b":"0"};OpenLayers.Renderer.SVG.LABEL_VFACTOR={"t":0,"b":-1};OpenLayers.Renderer.SVG.preventDefault=function(e){e.preventDefault&&e.preventDefault();};OpenLayers.Control.DrawFeature=OpenLayers.Class(OpenLayers.Control,{layer:null,callbacks:null,EVENT_TYPES:["featureadded"],multi:false,featureAdded:function(){},handlerOptions:null,initialize:function(layer,handler,options){this.EVENT_TYPES=OpenLayers.Control.DrawFeature.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);this.callbacks=OpenLayers.Util.extend({done:this.drawFeature,modify:function(vertex,feature){this.layer.events.triggerEvent("sketchmodified",{vertex:vertex,feature:feature});},create:function(vertex,feature){this.layer.events.triggerEvent("sketchstarted",{vertex:vertex,feature:feature});}},this.callbacks);this.layer=layer;this.handlerOptions=this.handlerOptions||{};if(!("multi"in this.handlerOptions)){this.handlerOptions.multi=this.multi;}
var sketchStyle=this.layer.styleMap&&this.layer.styleMap.styles.temporary;if(sketchStyle){this.handlerOptions.layerOptions=OpenLayers.Util.applyDefaults(this.handlerOptions.layerOptions,{styleMap:new OpenLayers.StyleMap({"default":sketchStyle})});}
this.handler=new handler(this,this.callbacks,this.handlerOptions);},drawFeature:function(geometry){var feature=new OpenLayers.Feature.Vector(geometry);var proceed=this.layer.events.triggerEvent("sketchcomplete",{feature:feature});if(proceed!==false){feature.state=OpenLayers.State.INSERT;this.layer.addFeatures([feature]);this.featureAdded(feature);this.events.triggerEvent("featureadded",{feature:feature});}},insertXY:function(x,y){if(this.handler&&this.handler.line){this.handler.insertXY(x,y);}},insertDeltaXY:function(dx,dy){if(this.handler&&this.handler.line){this.handler.insertDeltaXY(dx,dy);}},insertDirectionLength:function(direction,length){if(this.handler&&this.handler.line){this.handler.insertDirectionLength(direction,length);}},insertDeflectionLength:function(deflection,length){if(this.handler&&this.handler.line){this.handler.insertDeflectionLength(deflection,length);}},undo:function(){return this.handler.undo&&this.handler.undo();},redo:function(){return this.handler.redo&&this.handler.redo();},finishSketch:function(){this.handler.finishGeometry();},cancel:function(){this.handler.cancel();},CLASS_NAME:"OpenLayers.Control.DrawFeature"});OpenLayers.Control.MousePosition=OpenLayers.Class(OpenLayers.Control,{autoActivate:true,element:null,prefix:'',separator:', ',suffix:'',numDigits:5,granularity:10,emptyString:null,lastXy:null,displayProjection:null,destroy:function(){this.deactivate();OpenLayers.Control.prototype.destroy.apply(this,arguments);},activate:function(){if(OpenLayers.Control.prototype.activate.apply(this,arguments)){this.map.events.register('mousemove',this,this.redraw);this.map.events.register('mouseout',this,this.reset);this.redraw();return true;}else{return false;}},deactivate:function(){if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){this.map.events.unregister('mousemove',this,this.redraw);this.map.events.unregister('mouseout',this,this.reset);this.element.innerHTML="";return true;}else{return false;}},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);if(!this.element){this.div.left="";this.div.top="";this.element=this.div;}
return this.div;},redraw:function(evt){var lonLat;if(evt==null){this.reset();return;}else{if(this.lastXy==null||Math.abs(evt.xy.x-this.lastXy.x)>this.granularity||Math.abs(evt.xy.y-this.lastXy.y)>this.granularity)
{this.lastXy=evt.xy;return;}
lonLat=this.map.getLonLatFromPixel(evt.xy);if(!lonLat){return;}
if(this.displayProjection){lonLat.transform(this.map.getProjectionObject(),this.displayProjection);}
this.lastXy=evt.xy;}
var newHtml=this.formatOutput(lonLat);if(newHtml!=this.element.innerHTML){this.element.innerHTML=newHtml;}},reset:function(evt){if(this.emptyString!=null){this.element.innerHTML=this.emptyString;}},formatOutput:function(lonLat){var digits=parseInt(this.numDigits);var newHtml=this.prefix+
lonLat.lon.toFixed(digits)+
this.separator+
lonLat.lat.toFixed(digits)+
this.suffix;return newHtml;},CLASS_NAME:"OpenLayers.Control.MousePosition"});OpenLayers.Strategy=OpenLayers.Class({layer:null,options:null,active:null,autoActivate:true,autoDestroy:true,initialize:function(options){OpenLayers.Util.extend(this,options);this.options=options;this.active=false;},destroy:function(){this.deactivate();this.layer=null;this.options=null;},setLayer:function(layer){this.layer=layer;},activate:function(){if(!this.active){this.active=true;return true;}
return false;},deactivate:function(){if(this.active){this.active=false;return true;}
return false;},CLASS_NAME:"OpenLayers.Strategy"});OpenLayers.Popup=OpenLayers.Class({events:null,id:"",lonlat:null,div:null,contentSize:null,size:null,contentHTML:null,backgroundColor:"",opacity:"",border:"",contentDiv:null,groupDiv:null,closeDiv:null,autoSize:false,minSize:null,maxSize:null,displayClass:"olPopup",contentDisplayClass:"olPopupContent",padding:0,disableFirefoxOverflowHack:false,fixPadding:function(){if(typeof this.padding=="number"){this.padding=new OpenLayers.Bounds(this.padding,this.padding,this.padding,this.padding);}},panMapIfOutOfView:false,keepInMap:false,closeOnMove:false,map:null,initialize:function(id,lonlat,contentSize,contentHTML,closeBox,closeBoxCallback){if(id==null){id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+"_");}
this.id=id;this.lonlat=lonlat;this.contentSize=(contentSize!=null)?contentSize:new OpenLayers.Size(OpenLayers.Popup.WIDTH,OpenLayers.Popup.HEIGHT);if(contentHTML!=null){this.contentHTML=contentHTML;}
this.backgroundColor=OpenLayers.Popup.COLOR;this.opacity=OpenLayers.Popup.OPACITY;this.border=OpenLayers.Popup.BORDER;this.div=OpenLayers.Util.createDiv(this.id,null,null,null,null,null,"hidden");this.div.className=this.displayClass;var groupDivId=this.id+"_GroupDiv";this.groupDiv=OpenLayers.Util.createDiv(groupDivId,null,null,null,"relative",null,"hidden");var id=this.div.id+"_contentDiv";this.contentDiv=OpenLayers.Util.createDiv(id,null,this.contentSize.clone(),null,"relative");this.contentDiv.className=this.contentDisplayClass;this.groupDiv.appendChild(this.contentDiv);this.div.appendChild(this.groupDiv);if(closeBox){this.addCloseBox(closeBoxCallback);}
this.registerEvents();},destroy:function(){this.id=null;this.lonlat=null;this.size=null;this.contentHTML=null;this.backgroundColor=null;this.opacity=null;this.border=null;if(this.closeOnMove&&this.map){this.map.events.unregister("movestart",this,this.hide);}
this.events.destroy();this.events=null;if(this.closeDiv){OpenLayers.Event.stopObservingElement(this.closeDiv);this.groupDiv.removeChild(this.closeDiv);}
this.closeDiv=null;this.div.removeChild(this.groupDiv);this.groupDiv=null;if(this.map!=null){this.map.removePopup(this);}
this.map=null;this.div=null;this.autoSize=null;this.minSize=null;this.maxSize=null;this.padding=null;this.panMapIfOutOfView=null;},draw:function(px){if(px==null){if((this.lonlat!=null)&&(this.map!=null)){px=this.map.getLayerPxFromLonLat(this.lonlat);}}
if(this.closeOnMove){this.map.events.register("movestart",this,this.hide);}
if(!this.disableFirefoxOverflowHack&&OpenLayers.BROWSER_NAME=='firefox'){this.map.events.register("movestart",this,function(){var style=document.defaultView.getComputedStyle(this.contentDiv,null);var currentOverflow=style.getPropertyValue("overflow");if(currentOverflow!="hidden"){this.contentDiv._oldOverflow=currentOverflow;this.contentDiv.style.overflow="hidden";}});this.map.events.register("moveend",this,function(){var oldOverflow=this.contentDiv._oldOverflow;if(oldOverflow){this.contentDiv.style.overflow=oldOverflow;this.contentDiv._oldOverflow=null;}});}
this.moveTo(px);if(!this.autoSize&&!this.size){this.setSize(this.contentSize);}
this.setBackgroundColor();this.setOpacity();this.setBorder();this.setContentHTML();if(this.panMapIfOutOfView){this.panIntoView();}
return this.div;},updatePosition:function(){if((this.lonlat)&&(this.map)){var px=this.map.getLayerPxFromLonLat(this.lonlat);if(px){this.moveTo(px);}}},moveTo:function(px){if((px!=null)&&(this.div!=null)){this.div.style.left=px.x+"px";this.div.style.top=px.y+"px";}},visible:function(){return OpenLayers.Element.visible(this.div);},toggle:function(){if(this.visible()){this.hide();}else{this.show();}},show:function(){this.div.style.display='';if(this.panMapIfOutOfView){this.panIntoView();}},hide:function(){this.div.style.display='none';},setSize:function(contentSize){this.size=contentSize.clone();var contentDivPadding=this.getContentDivPadding();var wPadding=contentDivPadding.left+contentDivPadding.right;var hPadding=contentDivPadding.top+contentDivPadding.bottom;this.fixPadding();wPadding+=this.padding.left+this.padding.right;hPadding+=this.padding.top+this.padding.bottom;if(this.closeDiv){var closeDivWidth=parseInt(this.closeDiv.style.width);wPadding+=closeDivWidth+contentDivPadding.right;}
this.size.w+=wPadding;this.size.h+=hPadding;if(OpenLayers.BROWSER_NAME=="msie"){this.contentSize.w+=contentDivPadding.left+contentDivPadding.right;this.contentSize.h+=contentDivPadding.bottom+contentDivPadding.top;}
if(this.div!=null){this.div.style.width=this.size.w+"px";this.div.style.height=this.size.h+"px";}
if(this.contentDiv!=null){this.contentDiv.style.width=contentSize.w+"px";this.contentDiv.style.height=contentSize.h+"px";}},updateSize:function(){var preparedHTML="<div class='"+this.contentDisplayClass+"'>"+
this.contentDiv.innerHTML+"</div>";var containerElement=(this.map)?this.map.layerContainerDiv:document.body;var realSize=OpenLayers.Util.getRenderedDimensions(preparedHTML,null,{displayClass:this.displayClass,containerElement:containerElement});var safeSize=this.getSafeContentSize(realSize);var newSize=null;if(safeSize.equals(realSize)){newSize=realSize;}else{var fixedSize=new OpenLayers.Size();fixedSize.w=(safeSize.w<realSize.w)?safeSize.w:null;fixedSize.h=(safeSize.h<realSize.h)?safeSize.h:null;if(fixedSize.w&&fixedSize.h){newSize=safeSize;}else{var clippedSize=OpenLayers.Util.getRenderedDimensions(preparedHTML,fixedSize,{displayClass:this.contentDisplayClass,containerElement:containerElement});var currentOverflow=OpenLayers.Element.getStyle(this.contentDiv,"overflow");if((currentOverflow!="hidden")&&(clippedSize.equals(safeSize))){var scrollBar=OpenLayers.Util.getScrollbarWidth();if(fixedSize.w){clippedSize.h+=scrollBar;}else{clippedSize.w+=scrollBar;}}
newSize=this.getSafeContentSize(clippedSize);}}
this.setSize(newSize);},setBackgroundColor:function(color){if(color!=undefined){this.backgroundColor=color;}
if(this.div!=null){this.div.style.backgroundColor=this.backgroundColor;}},setOpacity:function(opacity){if(opacity!=undefined){this.opacity=opacity;}
if(this.div!=null){this.div.style.opacity=this.opacity;this.div.style.filter='alpha(opacity='+this.opacity*100+')';}},setBorder:function(border){if(border!=undefined){this.border=border;}
if(this.div!=null){this.div.style.border=this.border;}},setContentHTML:function(contentHTML){if(contentHTML!=null){this.contentHTML=contentHTML;}
if((this.contentDiv!=null)&&(this.contentHTML!=null)&&(this.contentHTML!=this.contentDiv.innerHTML)){this.contentDiv.innerHTML=this.contentHTML;if(this.autoSize){this.registerImageListeners();this.updateSize();}}},registerImageListeners:function(){var onImgLoad=function(){this.popup.updateSize();if(this.popup.visible()&&this.popup.panMapIfOutOfView){this.popup.panIntoView();}
OpenLayers.Event.stopObserving(this.img,"load",this.img._onImageLoad);};var images=this.contentDiv.getElementsByTagName("img");for(var i=0,len=images.length;i<len;i++){var img=images[i];if(img.width==0||img.height==0){var context={'popup':this,'img':img};img._onImgLoad=OpenLayers.Function.bind(onImgLoad,context);OpenLayers.Event.observe(img,'load',img._onImgLoad);}}},getSafeContentSize:function(size){var safeContentSize=size.clone();var contentDivPadding=this.getContentDivPadding();var wPadding=contentDivPadding.left+contentDivPadding.right;var hPadding=contentDivPadding.top+contentDivPadding.bottom;this.fixPadding();wPadding+=this.padding.left+this.padding.right;hPadding+=this.padding.top+this.padding.bottom;if(this.closeDiv){var closeDivWidth=parseInt(this.closeDiv.style.width);wPadding+=closeDivWidth+contentDivPadding.right;}
if(this.minSize){safeContentSize.w=Math.max(safeContentSize.w,(this.minSize.w-wPadding));safeContentSize.h=Math.max(safeContentSize.h,(this.minSize.h-hPadding));}
if(this.maxSize){safeContentSize.w=Math.min(safeContentSize.w,(this.maxSize.w-wPadding));safeContentSize.h=Math.min(safeContentSize.h,(this.maxSize.h-hPadding));}
if(this.map&&this.map.size){var extraX=0,extraY=0;if(this.keepInMap&&!this.panMapIfOutOfView){var px=this.map.getPixelFromLonLat(this.lonlat);switch(this.relativePosition){case"tr":extraX=px.x;extraY=this.map.size.h-px.y;break;case"tl":extraX=this.map.size.w-px.x;extraY=this.map.size.h-px.y;break;case"bl":extraX=this.map.size.w-px.x;extraY=px.y;break;case"br":extraX=px.x;extraY=px.y;break;default:extraX=px.x;extraY=this.map.size.h-px.y;break;}}
var maxY=this.map.size.h-
this.map.paddingForPopups.top-
this.map.paddingForPopups.bottom-
hPadding-extraY;var maxX=this.map.size.w-
this.map.paddingForPopups.left-
this.map.paddingForPopups.right-
wPadding-extraX;safeContentSize.w=Math.min(safeContentSize.w,maxX);safeContentSize.h=Math.min(safeContentSize.h,maxY);}
return safeContentSize;},getContentDivPadding:function(){var contentDivPadding=this._contentDivPadding;if(!contentDivPadding){if(this.div.parentNode==null){this.div.style.display="none";document.body.appendChild(this.div);}
contentDivPadding=new OpenLayers.Bounds(OpenLayers.Element.getStyle(this.contentDiv,"padding-left"),OpenLayers.Element.getStyle(this.contentDiv,"padding-bottom"),OpenLayers.Element.getStyle(this.contentDiv,"padding-right"),OpenLayers.Element.getStyle(this.contentDiv,"padding-top"));this._contentDivPadding=contentDivPadding;if(this.div.parentNode==document.body){document.body.removeChild(this.div);this.div.style.display="";}}
return contentDivPadding;},addCloseBox:function(callback){this.closeDiv=OpenLayers.Util.createDiv(this.id+"_close",null,new OpenLayers.Size(17,17));this.closeDiv.className="olPopupCloseBox";var contentDivPadding=this.getContentDivPadding();this.closeDiv.style.right=contentDivPadding.right+"px";this.closeDiv.style.top=contentDivPadding.top+"px";this.groupDiv.appendChild(this.closeDiv);var closePopup=callback||function(e){this.hide();OpenLayers.Event.stop(e);};OpenLayers.Event.observe(this.closeDiv,"touchend",OpenLayers.Function.bindAsEventListener(closePopup,this));OpenLayers.Event.observe(this.closeDiv,"click",OpenLayers.Function.bindAsEventListener(closePopup,this));},panIntoView:function(){var mapSize=this.map.getSize();var origTL=this.map.getViewPortPxFromLayerPx(new OpenLayers.Pixel(parseInt(this.div.style.left),parseInt(this.div.style.top)));var newTL=origTL.clone();if(origTL.x<this.map.paddingForPopups.left){newTL.x=this.map.paddingForPopups.left;}else
if((origTL.x+this.size.w)>(mapSize.w-this.map.paddingForPopups.right)){newTL.x=mapSize.w-this.map.paddingForPopups.right-this.size.w;}
if(origTL.y<this.map.paddingForPopups.top){newTL.y=this.map.paddingForPopups.top;}else
if((origTL.y+this.size.h)>(mapSize.h-this.map.paddingForPopups.bottom)){newTL.y=mapSize.h-this.map.paddingForPopups.bottom-this.size.h;}
var dx=origTL.x-newTL.x;var dy=origTL.y-newTL.y;this.map.pan(dx,dy);},registerEvents:function(){this.events=new OpenLayers.Events(this,this.div,null,true);function onTouchstart(evt){OpenLayers.Event.stop(evt,true);}
this.events.on({"mousedown":this.onmousedown,"mousemove":this.onmousemove,"mouseup":this.onmouseup,"click":this.onclick,"mouseout":this.onmouseout,"dblclick":this.ondblclick,"touchstart":onTouchstart,scope:this});},onmousedown:function(evt){this.mousedown=true;OpenLayers.Event.stop(evt,true);},onmousemove:function(evt){if(this.mousedown){OpenLayers.Event.stop(evt,true);}},onmouseup:function(evt){if(this.mousedown){this.mousedown=false;OpenLayers.Event.stop(evt,true);}},onclick:function(evt){OpenLayers.Event.stop(evt,true);},onmouseout:function(evt){this.mousedown=false;},ondblclick:function(evt){OpenLayers.Event.stop(evt,true);},CLASS_NAME:"OpenLayers.Popup"});OpenLayers.Popup.WIDTH=200;OpenLayers.Popup.HEIGHT=200;OpenLayers.Popup.COLOR="white";OpenLayers.Popup.OPACITY=1;OpenLayers.Popup.BORDER="0px";OpenLayers.Popup.Anchored=OpenLayers.Class(OpenLayers.Popup,{relativePosition:null,keepInMap:true,anchor:null,initialize:function(id,lonlat,contentSize,contentHTML,anchor,closeBox,closeBoxCallback){var newArguments=[id,lonlat,contentSize,contentHTML,closeBox,closeBoxCallback];OpenLayers.Popup.prototype.initialize.apply(this,newArguments);this.anchor=(anchor!=null)?anchor:{size:new OpenLayers.Size(0,0),offset:new OpenLayers.Pixel(0,0)};},destroy:function(){this.anchor=null;this.relativePosition=null;OpenLayers.Popup.prototype.destroy.apply(this,arguments);},show:function(){this.updatePosition();OpenLayers.Popup.prototype.show.apply(this,arguments);},moveTo:function(px){var oldRelativePosition=this.relativePosition;this.relativePosition=this.calculateRelativePosition(px);var newPx=this.calculateNewPx(px);var newArguments=new Array(newPx);OpenLayers.Popup.prototype.moveTo.apply(this,newArguments);if(this.relativePosition!=oldRelativePosition){this.updateRelativePosition();}},setSize:function(contentSize){OpenLayers.Popup.prototype.setSize.apply(this,arguments);if((this.lonlat)&&(this.map)){var px=this.map.getLayerPxFromLonLat(this.lonlat);this.moveTo(px);}},calculateRelativePosition:function(px){var lonlat=this.map.getLonLatFromLayerPx(px);var extent=this.map.getExtent();var quadrant=extent.determineQuadrant(lonlat);return OpenLayers.Bounds.oppositeQuadrant(quadrant);},updateRelativePosition:function(){},calculateNewPx:function(px){var newPx=px.offset(this.anchor.offset);var size=this.size||this.contentSize;var top=(this.relativePosition.charAt(0)=='t');newPx.y+=(top)?-size.h:this.anchor.size.h;var left=(this.relativePosition.charAt(1)=='l');newPx.x+=(left)?-size.w:this.anchor.size.w;return newPx;},CLASS_NAME:"OpenLayers.Popup.Anchored"});OpenLayers.Popup.Framed=OpenLayers.Class(OpenLayers.Popup.Anchored,{imageSrc:null,imageSize:null,isAlphaImage:false,positionBlocks:null,blocks:null,fixedRelativePosition:false,initialize:function(id,lonlat,contentSize,contentHTML,anchor,closeBox,closeBoxCallback){OpenLayers.Popup.Anchored.prototype.initialize.apply(this,arguments);if(this.fixedRelativePosition){this.updateRelativePosition();this.calculateRelativePosition=function(px){return this.relativePosition;};}
this.contentDiv.style.position="absolute";this.contentDiv.style.zIndex=1;if(closeBox){this.closeDiv.style.zIndex=1;}
this.groupDiv.style.position="absolute";this.groupDiv.style.top="0px";this.groupDiv.style.left="0px";this.groupDiv.style.height="100%";this.groupDiv.style.width="100%";},destroy:function(){this.imageSrc=null;this.imageSize=null;this.isAlphaImage=null;this.fixedRelativePosition=false;this.positionBlocks=null;for(var i=0;i<this.blocks.length;i++){var block=this.blocks[i];if(block.image){block.div.removeChild(block.image);}
block.image=null;if(block.div){this.groupDiv.removeChild(block.div);}
block.div=null;}
this.blocks=null;OpenLayers.Popup.Anchored.prototype.destroy.apply(this,arguments);},setBackgroundColor:function(color){},setBorder:function(){},setOpacity:function(opacity){},setSize:function(contentSize){OpenLayers.Popup.Anchored.prototype.setSize.apply(this,arguments);this.updateBlocks();},updateRelativePosition:function(){this.padding=this.positionBlocks[this.relativePosition].padding;if(this.closeDiv){var contentDivPadding=this.getContentDivPadding();this.closeDiv.style.right=contentDivPadding.right+
this.padding.right+"px";this.closeDiv.style.top=contentDivPadding.top+
this.padding.top+"px";}
this.updateBlocks();},calculateNewPx:function(px){var newPx=OpenLayers.Popup.Anchored.prototype.calculateNewPx.apply(this,arguments);newPx=newPx.offset(this.positionBlocks[this.relativePosition].offset);return newPx;},createBlocks:function(){this.blocks=[];var firstPosition=null;for(var key in this.positionBlocks){firstPosition=key;break;}
var position=this.positionBlocks[firstPosition];for(var i=0;i<position.blocks.length;i++){var block={};this.blocks.push(block);var divId=this.id+'_FrameDecorationDiv_'+i;block.div=OpenLayers.Util.createDiv(divId,null,null,null,"absolute",null,"hidden",null);var imgId=this.id+'_FrameDecorationImg_'+i;var imageCreator=(this.isAlphaImage)?OpenLayers.Util.createAlphaImageDiv:OpenLayers.Util.createImage;block.image=imageCreator(imgId,null,this.imageSize,this.imageSrc,"absolute",null,null,null);block.div.appendChild(block.image);this.groupDiv.appendChild(block.div);}},updateBlocks:function(){if(!this.blocks){this.createBlocks();}
if(this.size&&this.relativePosition){var position=this.positionBlocks[this.relativePosition];for(var i=0;i<position.blocks.length;i++){var positionBlock=position.blocks[i];var block=this.blocks[i];var l=positionBlock.anchor.left;var b=positionBlock.anchor.bottom;var r=positionBlock.anchor.right;var t=positionBlock.anchor.top;var w=(isNaN(positionBlock.size.w))?this.size.w-(r+l):positionBlock.size.w;var h=(isNaN(positionBlock.size.h))?this.size.h-(b+t):positionBlock.size.h;block.div.style.width=(w<0?0:w)+'px';block.div.style.height=(h<0?0:h)+'px';block.div.style.left=(l!=null)?l+'px':'';block.div.style.bottom=(b!=null)?b+'px':'';block.div.style.right=(r!=null)?r+'px':'';block.div.style.top=(t!=null)?t+'px':'';block.image.style.left=positionBlock.position.x+'px';block.image.style.top=positionBlock.position.y+'px';}
this.contentDiv.style.left=this.padding.left+"px";this.contentDiv.style.top=this.padding.top+"px";}},CLASS_NAME:"OpenLayers.Popup.Framed"});OpenLayers.Popup.FramedCloud=OpenLayers.Class(OpenLayers.Popup.Framed,{contentDisplayClass:"olFramedCloudPopupContent",autoSize:true,panMapIfOutOfView:true,imageSize:new OpenLayers.Size(1276,736),isAlphaImage:false,fixedRelativePosition:false,positionBlocks:{"tl":{'offset':new OpenLayers.Pixel(44,0),'padding':new OpenLayers.Bounds(8,40,8,9),'blocks':[{size:new OpenLayers.Size('auto','auto'),anchor:new OpenLayers.Bounds(0,51,22,0),position:new OpenLayers.Pixel(0,0)},{size:new OpenLayers.Size(22,'auto'),anchor:new OpenLayers.Bounds(null,50,0,0),position:new OpenLayers.Pixel(-1238,0)},{size:new OpenLayers.Size('auto',19),anchor:new OpenLayers.Bounds(0,32,22,null),position:new OpenLayers.Pixel(0,-631)},{size:new OpenLayers.Size(22,18),anchor:new OpenLayers.Bounds(null,32,0,null),position:new OpenLayers.Pixel(-1238,-632)},{size:new OpenLayers.Size(81,35),anchor:new OpenLayers.Bounds(null,0,0,null),position:new OpenLayers.Pixel(0,-688)}]},"tr":{'offset':new OpenLayers.Pixel(-45,0),'padding':new OpenLayers.Bounds(8,40,8,9),'blocks':[{size:new OpenLayers.Size('auto','auto'),anchor:new OpenLayers.Bounds(0,51,22,0),position:new OpenLayers.Pixel(0,0)},{size:new OpenLayers.Size(22,'auto'),anchor:new OpenLayers.Bounds(null,50,0,0),position:new OpenLayers.Pixel(-1238,0)},{size:new OpenLayers.Size('auto',19),anchor:new OpenLayers.Bounds(0,32,22,null),position:new OpenLayers.Pixel(0,-631)},{size:new OpenLayers.Size(22,19),anchor:new OpenLayers.Bounds(null,32,0,null),position:new OpenLayers.Pixel(-1238,-631)},{size:new OpenLayers.Size(81,35),anchor:new OpenLayers.Bounds(0,0,null,null),position:new OpenLayers.Pixel(-215,-687)}]},"bl":{'offset':new OpenLayers.Pixel(45,0),'padding':new OpenLayers.Bounds(8,9,8,40),'blocks':[{size:new OpenLayers.Size('auto','auto'),anchor:new OpenLayers.Bounds(0,21,22,32),position:new OpenLayers.Pixel(0,0)},{size:new OpenLayers.Size(22,'auto'),anchor:new OpenLayers.Bounds(null,21,0,32),position:new OpenLayers.Pixel(-1238,0)},{size:new OpenLayers.Size('auto',21),anchor:new OpenLayers.Bounds(0,0,22,null),position:new OpenLayers.Pixel(0,-629)},{size:new OpenLayers.Size(22,21),anchor:new OpenLayers.Bounds(null,0,0,null),position:new OpenLayers.Pixel(-1238,-629)},{size:new OpenLayers.Size(81,33),anchor:new OpenLayers.Bounds(null,null,0,0),position:new OpenLayers.Pixel(-101,-674)}]},"br":{'offset':new OpenLayers.Pixel(-44,0),'padding':new OpenLayers.Bounds(8,9,8,40),'blocks':[{size:new OpenLayers.Size('auto','auto'),anchor:new OpenLayers.Bounds(0,21,22,32),position:new OpenLayers.Pixel(0,0)},{size:new OpenLayers.Size(22,'auto'),anchor:new OpenLayers.Bounds(null,21,0,32),position:new OpenLayers.Pixel(-1238,0)},{size:new OpenLayers.Size('auto',21),anchor:new OpenLayers.Bounds(0,0,22,null),position:new OpenLayers.Pixel(0,-629)},{size:new OpenLayers.Size(22,21),anchor:new OpenLayers.Bounds(null,0,0,null),position:new OpenLayers.Pixel(-1238,-629)},{size:new OpenLayers.Size(81,33),anchor:new OpenLayers.Bounds(0,null,null,0),position:new OpenLayers.Pixel(-311,-674)}]}},minSize:new OpenLayers.Size(105,10),maxSize:new OpenLayers.Size(1200,660),initialize:function(id,lonlat,contentSize,contentHTML,anchor,closeBox,closeBoxCallback){this.imageSrc=OpenLayers.Util.getImagesLocation()+'cloud-popup-relative.png';OpenLayers.Popup.Framed.prototype.initialize.apply(this,arguments);this.contentDiv.className=this.contentDisplayClass;},destroy:function(){OpenLayers.Popup.Framed.prototype.destroy.apply(this,arguments);},CLASS_NAME:"OpenLayers.Popup.FramedCloud"});OpenLayers.Lang.en={'unhandledRequest':"Unhandled request return ${statusText}",'Permalink':"Permalink",'Overlays':"Overlays",'Base Layer':"Base Layer",'readNotImplemented':"Read not implemented.",'writeNotImplemented':"Write not implemented.",'noFID':"Can't update a feature for which there is no FID.",'errorLoadingGML':"Error in loading GML file ${url}",'browserNotSupported':"Your browser does not support vector rendering. Currently supported renderers are:\n${renderers}",'componentShouldBe':"addFeatures : component should be an ${geomType}",'getFeatureError':"getFeatureFromEvent called on layer with no renderer. This usually means you "+"destroyed a layer, but not some handler which is associated with it.",'minZoomLevelError':"The minZoomLevel property is only intended for use "+"with the FixedZoomLevels-descendent layers. That this "+"wfs layer checks for minZoomLevel is a relic of the"+"past. We cannot, however, remove it without possibly "+"breaking OL based applications that may depend on it."+" Therefore we are deprecating it -- the minZoomLevel "+"check below will be removed at 3.0. Please instead "+"use min/max resolution setting as described here: "+"http://trac.openlayers.org/wiki/SettingZoomLevels",'commitSuccess':"WFS Transaction: SUCCESS ${response}",'commitFailed':"WFS Transaction: FAILED ${response}",'googleWarning':"The Google Layer was unable to load correctly.<br><br>"+"To get rid of this message, select a new BaseLayer "+"in the layer switcher in the upper-right corner.<br><br>"+"Most likely, this is because the Google Maps library "+"script was either not included, or does not contain the "+"correct API key for your site.<br><br>"+"Developers: For help getting this working correctly, "+"<a href='http://trac.openlayers.org/wiki/Google' "+"target='_blank'>click here</a>",'getLayerWarning':"The ${layerType} Layer was unable to load correctly.<br><br>"+"To get rid of this message, select a new BaseLayer "+"in the layer switcher in the upper-right corner.<br><br>"+"Most likely, this is because the ${layerLib} library "+"script was not correctly included.<br><br>"+"Developers: For help getting this working correctly, "+"<a href='http://trac.openlayers.org/wiki/${layerLib}' "+"target='_blank'>click here</a>",'Scale = 1 : ${scaleDenom}':"Scale = 1 : ${scaleDenom}",'W':'W','E':'E','N':'N','S':'S','Graticule':'Graticule','layerAlreadyAdded':"You tried to add the layer: ${layerName} to the map, but it has already been added",'reprojectDeprecated':"You are using the 'reproject' option "+"on the ${layerName} layer. This option is deprecated: "+"its use was designed to support displaying data over commercial "+"basemaps, but that functionality should now be achieved by using "+"Spherical Mercator support. More information is available from "+"http://trac.openlayers.org/wiki/SphericalMercator.",'methodDeprecated':"This method has been deprecated and will be removed in 3.0. "+"Please use ${newMethod} instead.",'boundsAddError':"You must pass both x and y values to the add function.",'lonlatAddError':"You must pass both lon and lat values to the add function.",'pixelAddError':"You must pass both x and y values to the add function.",'unsupportedGeometryType':"Unsupported geometry type: ${geomType}",'filterEvaluateNotImplemented':"evaluate is not implemented for this filter type.",'proxyNeeded':"You probably need to set OpenLayers.ProxyHost to access ${url}."+"See http://trac.osgeo.org/openlayers/wiki/FrequentlyAskedQuestions#ProxyHost",'end':''};OpenLayers.Layer.Vector.RootContainer=OpenLayers.Class(OpenLayers.Layer.Vector,{displayInLayerSwitcher:false,layers:null,initialize:function(name,options){OpenLayers.Layer.Vector.prototype.initialize.apply(this,arguments);},display:function(){},getFeatureFromEvent:function(evt){var layers=this.layers;var feature;for(var i=0;i<layers.length;i++){feature=layers[i].getFeatureFromEvent(evt);if(feature){return feature;}}},setMap:function(map){OpenLayers.Layer.Vector.prototype.setMap.apply(this,arguments);this.collectRoots();map.events.register("changelayer",this,this.handleChangeLayer);},removeMap:function(map){map.events.unregister("changelayer",this,this.handleChangeLayer);this.resetRoots();OpenLayers.Layer.Vector.prototype.removeMap.apply(this,arguments);},collectRoots:function(){var layer;for(var i=0;i<this.map.layers.length;++i){layer=this.map.layers[i];if(OpenLayers.Util.indexOf(this.layers,layer)!=-1){layer.renderer.moveRoot(this.renderer);}}},resetRoots:function(){var layer;for(var i=0;i<this.layers.length;++i){layer=this.layers[i];if(this.renderer&&layer.renderer.getRenderLayerId()==this.id){this.renderer.moveRoot(layer.renderer);}}},handleChangeLayer:function(evt){var layer=evt.layer;if(evt.property=="order"&&OpenLayers.Util.indexOf(this.layers,layer)!=-1){this.resetRoots();this.collectRoots();}},CLASS_NAME:"OpenLayers.Layer.Vector.RootContainer"});OpenLayers.Control.SelectFeature=OpenLayers.Class(OpenLayers.Control,{EVENT_TYPES:["beforefeaturehighlighted","featurehighlighted","featureunhighlighted"],multipleKey:null,toggleKey:null,multiple:false,clickout:true,toggle:false,hover:false,highlightOnly:false,box:false,onBeforeSelect:function(){},onSelect:function(){},onUnselect:function(){},scope:null,geometryTypes:null,layer:null,layers:null,callbacks:null,selectStyle:null,renderIntent:"select",handlers:null,initialize:function(layers,options){this.EVENT_TYPES=OpenLayers.Control.SelectFeature.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);if(this.scope===null){this.scope=this;}
this.initLayer(layers);var callbacks={click:this.clickFeature,clickout:this.clickoutFeature};if(this.hover){callbacks.over=this.overFeature;callbacks.out=this.outFeature;}
this.callbacks=OpenLayers.Util.extend(callbacks,this.callbacks);this.handlers={feature:new OpenLayers.Handler.Feature(this,this.layer,this.callbacks,{geometryTypes:this.geometryTypes})};if(this.box){this.handlers.box=new OpenLayers.Handler.Box(this,{done:this.selectBox},{boxDivClassName:"olHandlerBoxSelectFeature"});}},initLayer:function(layers){if(OpenLayers.Util.isArray(layers)){this.layers=layers;this.layer=new OpenLayers.Layer.Vector.RootContainer(this.id+"_container",{layers:layers});}else{this.layer=layers;}},destroy:function(){if(this.active&&this.layers){this.map.removeLayer(this.layer);}
OpenLayers.Control.prototype.destroy.apply(this,arguments);if(this.layers){this.layer.destroy();}},activate:function(){if(!this.active){if(this.layers){this.map.addLayer(this.layer);}
this.handlers.feature.activate();if(this.box&&this.handlers.box){this.handlers.box.activate();}}
return OpenLayers.Control.prototype.activate.apply(this,arguments);},deactivate:function(){if(this.active){this.handlers.feature.deactivate();if(this.handlers.box){this.handlers.box.deactivate();}
if(this.layers){this.map.removeLayer(this.layer);}}
return OpenLayers.Control.prototype.deactivate.apply(this,arguments);},unselectAll:function(options){var layers=this.layers||[this.layer];var layer,feature;for(var l=0;l<layers.length;++l){layer=layers[l];for(var i=layer.selectedFeatures.length-1;i>=0;--i){feature=layer.selectedFeatures[i];if(!options||options.except!=feature){this.unselect(feature);}}}},clickFeature:function(feature){if(!this.hover){var selected=(OpenLayers.Util.indexOf(feature.layer.selectedFeatures,feature)>-1);if(selected){if(this.toggleSelect()){this.unselect(feature);}else if(!this.multipleSelect()){this.unselectAll({except:feature});}}else{if(!this.multipleSelect()){this.unselectAll({except:feature});}
this.select(feature);}}},multipleSelect:function(){return this.multiple||(this.handlers.feature.evt&&this.handlers.feature.evt[this.multipleKey]);},toggleSelect:function(){return this.toggle||(this.handlers.feature.evt&&this.handlers.feature.evt[this.toggleKey]);},clickoutFeature:function(feature){if(!this.hover&&this.clickout){this.unselectAll();}},overFeature:function(feature){var layer=feature.layer;if(this.hover){if(this.highlightOnly){this.highlight(feature);}else if(OpenLayers.Util.indexOf(layer.selectedFeatures,feature)==-1){this.select(feature);}}},outFeature:function(feature){if(this.hover){if(this.highlightOnly){if(feature._lastHighlighter==this.id){if(feature._prevHighlighter&&feature._prevHighlighter!=this.id){delete feature._lastHighlighter;var control=this.map.getControl(feature._prevHighlighter);if(control){control.highlight(feature);}}else{this.unhighlight(feature);}}}else{this.unselect(feature);}}},highlight:function(feature){var layer=feature.layer;var cont=this.events.triggerEvent("beforefeaturehighlighted",{feature:feature});if(cont!==false){feature._prevHighlighter=feature._lastHighlighter;feature._lastHighlighter=this.id;var style=this.selectStyle||this.renderIntent;layer.drawFeature(feature,style);this.events.triggerEvent("featurehighlighted",{feature:feature});}},unhighlight:function(feature){var layer=feature.layer;if(feature._prevHighlighter==undefined){delete feature._lastHighlighter;}else if(feature._prevHighlighter==this.id){delete feature._prevHighlighter;}else{feature._lastHighlighter=feature._prevHighlighter;delete feature._prevHighlighter;}
layer.drawFeature(feature,feature.style||feature.layer.style||"default");this.events.triggerEvent("featureunhighlighted",{feature:feature});},select:function(feature){var cont=this.onBeforeSelect.call(this.scope,feature);var layer=feature.layer;if(cont!==false){cont=layer.events.triggerEvent("beforefeatureselected",{feature:feature});if(cont!==false){layer.selectedFeatures.push(feature);this.highlight(feature);if(!this.handlers.feature.lastFeature){this.handlers.feature.lastFeature=layer.selectedFeatures[0];}
layer.events.triggerEvent("featureselected",{feature:feature});this.onSelect.call(this.scope,feature);}}},unselect:function(feature){var layer=feature.layer;this.unhighlight(feature);OpenLayers.Util.removeItem(layer.selectedFeatures,feature);layer.events.triggerEvent("featureunselected",{feature:feature});this.onUnselect.call(this.scope,feature);},selectBox:function(position){if(position instanceof OpenLayers.Bounds){var minXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.left,position.bottom));var maxXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.right,position.top));var bounds=new OpenLayers.Bounds(minXY.lon,minXY.lat,maxXY.lon,maxXY.lat);if(!this.multipleSelect()){this.unselectAll();}
var prevMultiple=this.multiple;this.multiple=true;var layers=this.layers||[this.layer];var layer;for(var l=0;l<layers.length;++l){layer=layers[l];for(var i=0,len=layer.features.length;i<len;++i){var feature=layer.features[i];if(!feature.getVisibility()){continue;}
if(this.geometryTypes==null||OpenLayers.Util.indexOf(this.geometryTypes,feature.geometry.CLASS_NAME)>-1){if(bounds.toGeometry().intersects(feature.geometry)){if(OpenLayers.Util.indexOf(layer.selectedFeatures,feature)==-1){this.select(feature);}}}}}
this.multiple=prevMultiple;}},setMap:function(map){this.handlers.feature.setMap(map);if(this.box){this.handlers.box.setMap(map);}
OpenLayers.Control.prototype.setMap.apply(this,arguments);},setLayer:function(layers){var isActive=this.active;this.unselectAll();this.deactivate();if(this.layers){this.layer.destroy();this.layers=null;}
this.initLayer(layers);this.handlers.feature.layer=this.layer;if(isActive){this.activate();}},CLASS_NAME:"OpenLayers.Control.SelectFeature"});OpenLayers.Strategy.Fixed=OpenLayers.Class(OpenLayers.Strategy,{preload:false,activate:function(){if(OpenLayers.Strategy.prototype.activate.apply(this,arguments)){this.layer.events.on({"refresh":this.load,scope:this});if(this.layer.visibility==true||this.preload){this.load();}else{this.layer.events.on({"visibilitychanged":this.load,scope:this});}
return true;}
return false;},deactivate:function(){var deactivated=OpenLayers.Strategy.prototype.deactivate.call(this);if(deactivated){this.layer.events.un({"refresh":this.load,"visibilitychanged":this.load,scope:this});}
return deactivated;},load:function(options){var layer=this.layer;layer.events.triggerEvent("loadstart");layer.protocol.read(OpenLayers.Util.applyDefaults({callback:OpenLayers.Function.bind(this.merge,this,layer.map.getProjectionObject()),filter:layer.filter},options));layer.events.un({"visibilitychanged":this.load,scope:this});},merge:function(mapProjection,resp){var layer=this.layer;layer.destroyFeatures();var features=resp.features;if(features&&features.length>0){if(!mapProjection.equals(layer.projection)){var geom;for(var i=0,len=features.length;i<len;++i){geom=features[i].geometry;if(geom){geom.transform(layer.projection,mapProjection);}}}
layer.addFeatures(features);}
layer.events.triggerEvent("loadend");},CLASS_NAME:"OpenLayers.Strategy.Fixed"});OpenLayers.Handler.RegularPolygon=OpenLayers.Class(OpenLayers.Handler.Drag,{sides:4,radius:null,snapAngle:null,snapToggle:'shiftKey',layerOptions:null,persist:false,irregular:false,angle:null,fixedRadius:false,feature:null,layer:null,origin:null,initialize:function(control,callbacks,options){if(!(options&&options.layerOptions&&options.layerOptions.styleMap)){this.style=OpenLayers.Util.extend(OpenLayers.Feature.Vector.style['default'],{});}
OpenLayers.Handler.Drag.prototype.initialize.apply(this,[control,callbacks,options]);this.options=(options)?options:{};},setOptions:function(newOptions){OpenLayers.Util.extend(this.options,newOptions);OpenLayers.Util.extend(this,newOptions);},activate:function(){var activated=false;if(OpenLayers.Handler.Drag.prototype.activate.apply(this,arguments)){var options=OpenLayers.Util.extend({displayInLayerSwitcher:false,calculateInRange:OpenLayers.Function.True},this.layerOptions);this.layer=new OpenLayers.Layer.Vector(this.CLASS_NAME,options);this.map.addLayer(this.layer);activated=true;}
return activated;},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.Drag.prototype.deactivate.apply(this,arguments)){if(this.dragging){this.cancel();}
if(this.layer.map!=null){this.layer.destroy(false);if(this.feature){this.feature.destroy();}}
this.layer=null;this.feature=null;deactivated=true;}
return deactivated;},down:function(evt){this.fixedRadius=!!(this.radius);var maploc=this.map.getLonLatFromPixel(evt.xy);this.origin=new OpenLayers.Geometry.Point(maploc.lon,maploc.lat);if(!this.fixedRadius||this.irregular){this.radius=this.map.getResolution();}
if(this.persist){this.clear();}
this.feature=new OpenLayers.Feature.Vector();this.createGeometry();this.callback("create",[this.origin,this.feature]);this.layer.addFeatures([this.feature],{silent:true});this.layer.drawFeature(this.feature,this.style);},move:function(evt){var maploc=this.map.getLonLatFromPixel(evt.xy);var point=new OpenLayers.Geometry.Point(maploc.lon,maploc.lat);if(this.irregular){var ry=Math.sqrt(2)*Math.abs(point.y-this.origin.y)/2;this.radius=Math.max(this.map.getResolution()/2,ry);}else if(this.fixedRadius){this.origin=point;}else{this.calculateAngle(point,evt);this.radius=Math.max(this.map.getResolution()/2,point.distanceTo(this.origin));}
this.modifyGeometry();if(this.irregular){var dx=point.x-this.origin.x;var dy=point.y-this.origin.y;var ratio;if(dy==0){ratio=dx/(this.radius*Math.sqrt(2));}else{ratio=dx/dy;}
this.feature.geometry.resize(1,this.origin,ratio);this.feature.geometry.move(dx/2,dy/2);}
this.layer.drawFeature(this.feature,this.style);},up:function(evt){this.finalize();if(this.start==this.last){this.callback("done",[evt.xy]);}},out:function(evt){this.finalize();},createGeometry:function(){this.angle=Math.PI*((1/this.sides)-(1/2));if(this.snapAngle){this.angle+=this.snapAngle*(Math.PI/180);}
this.feature.geometry=OpenLayers.Geometry.Polygon.createRegularPolygon(this.origin,this.radius,this.sides,this.snapAngle);},modifyGeometry:function(){var angle,point;var ring=this.feature.geometry.components[0];if(ring.components.length!=(this.sides+1)){this.createGeometry();ring=this.feature.geometry.components[0];}
for(var i=0;i<this.sides;++i){point=ring.components[i];angle=this.angle+(i*2*Math.PI/this.sides);point.x=this.origin.x+(this.radius*Math.cos(angle));point.y=this.origin.y+(this.radius*Math.sin(angle));point.clearBounds();}},calculateAngle:function(point,evt){var alpha=Math.atan2(point.y-this.origin.y,point.x-this.origin.x);if(this.snapAngle&&(this.snapToggle&&!evt[this.snapToggle])){var snapAngleRad=(Math.PI/180)*this.snapAngle;this.angle=Math.round(alpha/snapAngleRad)*snapAngleRad;}else{this.angle=alpha;}},cancel:function(){this.callback("cancel",null);this.finalize();},finalize:function(){this.origin=null;this.radius=this.options.radius;},clear:function(){if(this.layer){this.layer.renderer.clear();this.layer.destroyFeatures();}},callback:function(name,args){if(this.callbacks[name]){this.callbacks[name].apply(this.control,[this.feature.geometry.clone()]);}
if(!this.persist&&(name=="done"||name=="cancel")){this.clear();}},CLASS_NAME:"OpenLayers.Handler.RegularPolygon"});OpenLayers.Handler.Keyboard=OpenLayers.Class(OpenLayers.Handler,{KEY_EVENTS:["keydown","keyup"],eventListener:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);this.eventListener=OpenLayers.Function.bindAsEventListener(this.handleKeyEvent,this);},destroy:function(){this.deactivate();this.eventListener=null;OpenLayers.Handler.prototype.destroy.apply(this,arguments);},activate:function(){if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){for(var i=0,len=this.KEY_EVENTS.length;i<len;i++){OpenLayers.Event.observe(document,this.KEY_EVENTS[i],this.eventListener);}
return true;}else{return false;}},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){for(var i=0,len=this.KEY_EVENTS.length;i<len;i++){OpenLayers.Event.stopObserving(document,this.KEY_EVENTS[i],this.eventListener);}
deactivated=true;}
return deactivated;},handleKeyEvent:function(evt){if(this.checkModifiers(evt)){this.callback(evt.type,[evt]);}},CLASS_NAME:"OpenLayers.Handler.Keyboard"});OpenLayers.Control.KeyboardDefaults=OpenLayers.Class(OpenLayers.Control,{autoActivate:true,slideFactor:75,draw:function(){this.handler=new OpenLayers.Handler.Keyboard(this,{"keydown":this.defaultKeyPress});},defaultKeyPress:function(evt){switch(evt.keyCode){case OpenLayers.Event.KEY_LEFT:this.map.pan(-this.slideFactor,0);break;case OpenLayers.Event.KEY_RIGHT:this.map.pan(this.slideFactor,0);break;case OpenLayers.Event.KEY_UP:this.map.pan(0,-this.slideFactor);break;case OpenLayers.Event.KEY_DOWN:this.map.pan(0,this.slideFactor);break;case 33:var size=this.map.getSize();this.map.pan(0,-0.75*size.h);break;case 34:var size=this.map.getSize();this.map.pan(0,0.75*size.h);break;case 35:var size=this.map.getSize();this.map.pan(0.75*size.w,0);break;case 36:var size=this.map.getSize();this.map.pan(-0.75*size.w,0);break;case 43:case 61:case 187:case 107:this.map.zoomIn();break;case 45:case 109:case 189:case 95:this.map.zoomOut();break;}},CLASS_NAME:"OpenLayers.Control.KeyboardDefaults"});OpenLayers.Format.KML=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{kml:"http://www.opengis.net/kml/2.2",gx:"http://www.google.com/kml/ext/2.2"},kmlns:"http://earth.google.com/kml/2.0",placemarksDesc:"No description available",foldersName:"OpenLayers export",foldersDesc:"Exported on "+new Date(),extractAttributes:true,extractStyles:false,extractTracks:false,trackAttributes:null,internalns:null,features:null,styles:null,styleBaseUrl:"",fetched:null,maxDepth:0,initialize:function(options){this.regExes={trimSpace:(/^\s*|\s*$/g),removeSpace:(/\s*/g),splitSpace:(/\s+/),trimComma:(/\s*,\s*/g),kmlColor:(/(\w{2})(\w{2})(\w{2})(\w{2})/),kmlIconPalette:(/root:\/\/icons\/palette-(\d+)(\.\w+)/),straightBracket:(/\$\[(.*?)\]/g)};this.externalProjection=new OpenLayers.Projection("EPSG:4326");OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){this.features=[];this.styles={};this.fetched={};var options={depth:0,styleBaseUrl:this.styleBaseUrl};return this.parseData(data,options);},parseData:function(data,options){if(typeof data=="string"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}
var types=["Link","NetworkLink","Style","StyleMap","Placemark"];for(var i=0,len=types.length;i<len;++i){var type=types[i];var nodes=this.getElementsByTagNameNS(data,"*",type);if(nodes.length==0){continue;}
switch(type.toLowerCase()){case"link":case"networklink":this.parseLinks(nodes,options);break;case"style":if(this.extractStyles){this.parseStyles(nodes,options);}
break;case"stylemap":if(this.extractStyles){this.parseStyleMaps(nodes,options);}
break;case"placemark":this.parseFeatures(nodes,options);break;}}
return this.features;},parseLinks:function(nodes,options){if(options.depth>=this.maxDepth){return false;}
var newOptions=OpenLayers.Util.extend({},options);newOptions.depth++;for(var i=0,len=nodes.length;i<len;i++){var href=this.parseProperty(nodes[i],"*","href");if(href&&!this.fetched[href]){this.fetched[href]=true;var data=this.fetchLink(href);if(data){this.parseData(data,newOptions);}}}},fetchLink:function(href){var request=OpenLayers.Request.GET({url:href,async:false});if(request){return request.responseText;}},parseStyles:function(nodes,options){for(var i=0,len=nodes.length;i<len;i++){var style=this.parseStyle(nodes[i]);if(style){var styleName=(options.styleBaseUrl||"")+"#"+style.id;this.styles[styleName]=style;}}},parseKmlColor:function(kmlColor){var color=null;if(kmlColor){var matches=kmlColor.match(this.regExes.kmlColor);if(matches){color={color:'#'+matches[4]+matches[3]+matches[2],opacity:parseInt(matches[1],16)/255};}}
return color;},parseStyle:function(node){var style={};var types=["LineStyle","PolyStyle","IconStyle","BalloonStyle","LabelStyle"];var type,styleTypeNode,nodeList,geometry,parser;for(var i=0,len=types.length;i<len;++i){type=types[i];styleTypeNode=this.getElementsByTagNameNS(node,"*",type)[0];if(!styleTypeNode){continue;}
switch(type.toLowerCase()){case"linestyle":var kmlColor=this.parseProperty(styleTypeNode,"*","color");var color=this.parseKmlColor(kmlColor);if(color){style["strokeColor"]=color.color;style["strokeOpacity"]=color.opacity;}
var width=this.parseProperty(styleTypeNode,"*","width");if(width){style["strokeWidth"]=width;}
break;case"polystyle":var kmlColor=this.parseProperty(styleTypeNode,"*","color");var color=this.parseKmlColor(kmlColor);if(color){style["fillOpacity"]=color.opacity;style["fillColor"]=color.color;}
var fill=this.parseProperty(styleTypeNode,"*","fill");if(fill=="0"){style["fillColor"]="none";}
var outline=this.parseProperty(styleTypeNode,"*","outline");if(outline=="0"){style["strokeWidth"]="0";}
break;case"iconstyle":var scale=parseFloat(this.parseProperty(styleTypeNode,"*","scale")||1);var width=32*scale;var height=32*scale;var iconNode=this.getElementsByTagNameNS(styleTypeNode,"*","Icon")[0];if(iconNode){var href=this.parseProperty(iconNode,"*","href");if(href){var w=this.parseProperty(iconNode,"*","w");var h=this.parseProperty(iconNode,"*","h");var google="http://maps.google.com/mapfiles/kml";if(OpenLayers.String.startsWith(href,google)&&!w&&!h){w=64;h=64;scale=scale/2;}
w=w||h;h=h||w;if(w){width=parseInt(w)*scale;}
if(h){height=parseInt(h)*scale;}
var matches=href.match(this.regExes.kmlIconPalette);if(matches){var palette=matches[1];var file_extension=matches[2];var x=this.parseProperty(iconNode,"*","x");var y=this.parseProperty(iconNode,"*","y");var posX=x?x/32:0;var posY=y?(7-y/32):7;var pos=posY*8+posX;href="http://maps.google.com/mapfiles/kml/pal"
+palette+"/icon"+pos+file_extension;}
style["graphicOpacity"]=1;style["externalGraphic"]=href;}}
var hotSpotNode=this.getElementsByTagNameNS(styleTypeNode,"*","hotSpot")[0];if(hotSpotNode){var x=parseFloat(hotSpotNode.getAttribute("x"));var y=parseFloat(hotSpotNode.getAttribute("y"));var xUnits=hotSpotNode.getAttribute("xunits");if(xUnits=="pixels"){style["graphicXOffset"]=-x*scale;}
else if(xUnits=="insetPixels"){style["graphicXOffset"]=-width+(x*scale);}
else if(xUnits=="fraction"){style["graphicXOffset"]=-width*x;}
var yUnits=hotSpotNode.getAttribute("yunits");if(yUnits=="pixels"){style["graphicYOffset"]=-height+(y*scale)+1;}
else if(yUnits=="insetPixels"){style["graphicYOffset"]=-(y*scale)+1;}
else if(yUnits=="fraction"){style["graphicYOffset"]=-height*(1-y)+1;}}
style["graphicWidth"]=width;style["graphicHeight"]=height;break;case"balloonstyle":var balloonStyle=OpenLayers.Util.getXmlNodeValue(styleTypeNode);if(balloonStyle){style["balloonStyle"]=balloonStyle.replace(this.regExes.straightBracket,"${$1}");}
break;case"labelstyle":var kmlColor=this.parseProperty(styleTypeNode,"*","color");var color=this.parseKmlColor(kmlColor);if(color){style["fontColor"]=color.color;style["fontOpacity"]=color.opacity;}
break;default:}}
if(!style["strokeColor"]&&style["fillColor"]){style["strokeColor"]=style["fillColor"];}
var id=node.getAttribute("id");if(id&&style){style.id=id;}
return style;},parseStyleMaps:function(nodes,options){for(var i=0,len=nodes.length;i<len;i++){var node=nodes[i];var pairs=this.getElementsByTagNameNS(node,"*","Pair");var id=node.getAttribute("id");for(var j=0,jlen=pairs.length;j<jlen;j++){var pair=pairs[j];var key=this.parseProperty(pair,"*","key");var styleUrl=this.parseProperty(pair,"*","styleUrl");if(styleUrl&&key=="normal"){this.styles[(options.styleBaseUrl||"")+"#"+id]=this.styles[(options.styleBaseUrl||"")+styleUrl];}
if(styleUrl&&key=="highlight"){}}}},parseFeatures:function(nodes,options){var features=[];for(var i=0,len=nodes.length;i<len;i++){var featureNode=nodes[i];var feature=this.parseFeature.apply(this,[featureNode]);if(feature){if(this.extractStyles&&feature.attributes&&feature.attributes.styleUrl){feature.style=this.getStyle(feature.attributes.styleUrl,options);}
if(this.extractStyles){var inlineStyleNode=this.getElementsByTagNameNS(featureNode,"*","Style")[0];if(inlineStyleNode){var inlineStyle=this.parseStyle(inlineStyleNode);if(inlineStyle){feature.style=OpenLayers.Util.extend(feature.style,inlineStyle);}}}
if(this.extractTracks){var tracks=this.getElementsByTagNameNS(featureNode,this.namespaces.gx,"Track");if(tracks&&tracks.length>0){var track=tracks[0];var container={features:[],feature:feature};this.readNode(track,container);if(container.features.length>0){features.push.apply(features,container.features);}}}else{features.push(feature);}}else{throw"Bad Placemark: "+i;}}
this.features=this.features.concat(features);},readers:{"kml":{"when":function(node,container){container.whens.push(OpenLayers.Date.parse(this.getChildValue(node)));},"_trackPointAttribute":function(node,container){var name=node.nodeName.split(":").pop();container.attributes[name].push(this.getChildValue(node));}},"gx":{"Track":function(node,container){var obj={whens:[],points:[],angles:[]};if(this.trackAttributes){var name;obj.attributes={};for(var i=0,ii=this.trackAttributes.length;i<ii;++i){name=this.trackAttributes[i];obj.attributes[name]=[];if(!(name in this.readers.kml)){this.readers.kml[name]=this.readers.kml._trackPointAttribute;}}}
this.readChildNodes(node,obj);if(obj.whens.length!==obj.points.length){throw new Error("gx:Track with unequal number of when ("+obj.whens.length+") and gx:coord ("+obj.points.length+") elements.");}
var hasAngles=obj.angles.length>0;if(hasAngles&&obj.whens.length!==obj.angles.length){throw new Error("gx:Track with unequal number of when ("+obj.whens.length+") and gx:angles ("+obj.angles.length+") elements.");}
var feature,point,angles;for(var i=0,ii=obj.whens.length;i<ii;++i){feature=container.feature.clone();feature.fid=container.feature.fid||container.feature.id;point=obj.points[i];feature.geometry=point;if("z"in point){feature.attributes.altitude=point.z;}
if(this.internalProjection&&this.externalProjection){feature.geometry.transform(this.externalProjection,this.internalProjection);}
if(this.trackAttributes){for(var j=0,jj=this.trackAttributes.length;j<jj;++j){feature.attributes[name]=obj.attributes[this.trackAttributes[j]][i];}}
feature.attributes.when=obj.whens[i];feature.attributes.trackId=container.feature.id;if(hasAngles){angles=obj.angles[i];feature.attributes.heading=parseFloat(angles[0]);feature.attributes.tilt=parseFloat(angles[1]);feature.attributes.roll=parseFloat(angles[2]);}
container.features.push(feature);}},"coord":function(node,container){var str=this.getChildValue(node);var coords=str.replace(this.regExes.trimSpace,"").split(/\s+/);var point=new OpenLayers.Geometry.Point(coords[0],coords[1]);if(coords.length>2){point.z=parseFloat(coords[2]);}
container.points.push(point);},"angles":function(node,container){var str=this.getChildValue(node);var parts=str.replace(this.regExes.trimSpace,"").split(/\s+/);container.angles.push(parts);}}},parseFeature:function(node){var order=["MultiGeometry","Polygon","LineString","Point"];var type,nodeList,geometry,parser;for(var i=0,len=order.length;i<len;++i){type=order[i];this.internalns=node.namespaceURI?node.namespaceURI:this.kmlns;nodeList=this.getElementsByTagNameNS(node,this.internalns,type);if(nodeList.length>0){var parser=this.parseGeometry[type.toLowerCase()];if(parser){geometry=parser.apply(this,[nodeList[0]]);if(this.internalProjection&&this.externalProjection){geometry.transform(this.externalProjection,this.internalProjection);}}else{OpenLayers.Console.error(OpenLayers.i18n("unsupportedGeometryType",{'geomType':type}));}
break;}}
var attributes;if(this.extractAttributes){attributes=this.parseAttributes(node);}
var feature=new OpenLayers.Feature.Vector(geometry,attributes);var fid=node.getAttribute("id")||node.getAttribute("name");if(fid!=null){feature.fid=fid;}
return feature;},getStyle:function(styleUrl,options){var styleBaseUrl=OpenLayers.Util.removeTail(styleUrl);var newOptions=OpenLayers.Util.extend({},options);newOptions.depth++;newOptions.styleBaseUrl=styleBaseUrl;if(!this.styles[styleUrl]&&!OpenLayers.String.startsWith(styleUrl,"#")&&newOptions.depth<=this.maxDepth&&!this.fetched[styleBaseUrl]){var data=this.fetchLink(styleBaseUrl);if(data){this.parseData(data,newOptions);}}
var style=OpenLayers.Util.extend({},this.styles[styleUrl]);return style;},parseGeometry:{point:function(node){var nodeList=this.getElementsByTagNameNS(node,this.internalns,"coordinates");var coords=[];if(nodeList.length>0){var coordString=nodeList[0].firstChild.nodeValue;coordString=coordString.replace(this.regExes.removeSpace,"");coords=coordString.split(",");}
var point=null;if(coords.length>1){if(coords.length==2){coords[2]=null;}
point=new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}else{throw"Bad coordinate string: "+coordString;}
return point;},linestring:function(node,ring){var nodeList=this.getElementsByTagNameNS(node,this.internalns,"coordinates");var line=null;if(nodeList.length>0){var coordString=this.getChildValue(nodeList[0]);coordString=coordString.replace(this.regExes.trimSpace,"");coordString=coordString.replace(this.regExes.trimComma,",");var pointList=coordString.split(this.regExes.splitSpace);var numPoints=pointList.length;var points=new Array(numPoints);var coords,numCoords;for(var i=0;i<numPoints;++i){coords=pointList[i].split(",");numCoords=coords.length;if(numCoords>1){if(coords.length==2){coords[2]=null;}
points[i]=new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}else{throw"Bad LineString point coordinates: "+
pointList[i];}}
if(numPoints){if(ring){line=new OpenLayers.Geometry.LinearRing(points);}else{line=new OpenLayers.Geometry.LineString(points);}}else{throw"Bad LineString coordinates: "+coordString;}}
return line;},polygon:function(node){var nodeList=this.getElementsByTagNameNS(node,this.internalns,"LinearRing");var numRings=nodeList.length;var components=new Array(numRings);if(numRings>0){var ring;for(var i=0,len=nodeList.length;i<len;++i){ring=this.parseGeometry.linestring.apply(this,[nodeList[i],true]);if(ring){components[i]=ring;}else{throw"Bad LinearRing geometry: "+i;}}}
return new OpenLayers.Geometry.Polygon(components);},multigeometry:function(node){var child,parser;var parts=[];var children=node.childNodes;for(var i=0,len=children.length;i<len;++i){child=children[i];if(child.nodeType==1){var type=(child.prefix)?child.nodeName.split(":")[1]:child.nodeName;var parser=this.parseGeometry[type.toLowerCase()];if(parser){parts.push(parser.apply(this,[child]));}}}
return new OpenLayers.Geometry.Collection(parts);}},parseAttributes:function(node){var attributes={};var edNodes=node.getElementsByTagName("ExtendedData");if(edNodes.length){attributes=this.parseExtendedData(edNodes[0]);}
var child,grandchildren,grandchild;var children=node.childNodes;for(var i=0,len=children.length;i<len;++i){child=children[i];if(child.nodeType==1){grandchildren=child.childNodes;if(grandchildren.length>=1&&grandchildren.length<=3){var grandchild;switch(grandchildren.length){case 1:grandchild=grandchildren[0];break;case 2:var c1=grandchildren[0];var c2=grandchildren[1];grandchild=(c1.nodeType==3||c1.nodeType==4)?c1:c2;break;case 3:default:grandchild=grandchildren[1];break;}
if(grandchild.nodeType==3||grandchild.nodeType==4){var name=(child.prefix)?child.nodeName.split(":")[1]:child.nodeName;var value=OpenLayers.Util.getXmlNodeValue(grandchild);if(value){value=value.replace(this.regExes.trimSpace,"");attributes[name]=value;}}}}}
return attributes;},parseExtendedData:function(node){var attributes={};var i,len,data,key;var dataNodes=node.getElementsByTagName("Data");for(i=0,len=dataNodes.length;i<len;i++){data=dataNodes[i];key=data.getAttribute("name");var ed={};var valueNode=data.getElementsByTagName("value");if(valueNode.length){ed['value']=this.getChildValue(valueNode[0]);}
var nameNode=data.getElementsByTagName("displayName");if(nameNode.length){ed['displayName']=this.getChildValue(nameNode[0]);}
attributes[key]=ed;}
var simpleDataNodes=node.getElementsByTagName("SimpleData");for(i=0,len=simpleDataNodes.length;i<len;i++){var ed={};data=simpleDataNodes[i];key=data.getAttribute("name");ed['value']=this.getChildValue(data);ed['displayName']=key;attributes[key]=ed;}
return attributes;},parseProperty:function(xmlNode,namespace,tagName){var value;var nodeList=this.getElementsByTagNameNS(xmlNode,namespace,tagName);try{value=OpenLayers.Util.getXmlNodeValue(nodeList[0]);}catch(e){value=null;}
return value;},write:function(features){if(!(OpenLayers.Util.isArray(features))){features=[features];}
var kml=this.createElementNS(this.kmlns,"kml");var folder=this.createFolderXML();for(var i=0,len=features.length;i<len;++i){folder.appendChild(this.createPlacemarkXML(features[i]));}
kml.appendChild(folder);return OpenLayers.Format.XML.prototype.write.apply(this,[kml]);},createFolderXML:function(){var folder=this.createElementNS(this.kmlns,"Folder");if(this.foldersName){var folderName=this.createElementNS(this.kmlns,"name");var folderNameText=this.createTextNode(this.foldersName);folderName.appendChild(folderNameText);folder.appendChild(folderName);}
if(this.foldersDesc){var folderDesc=this.createElementNS(this.kmlns,"description");var folderDescText=this.createTextNode(this.foldersDesc);folderDesc.appendChild(folderDescText);folder.appendChild(folderDesc);}
return folder;},createPlacemarkXML:function(feature){var placemarkName=this.createElementNS(this.kmlns,"name");var name=feature.style&&feature.style.label?feature.style.label:feature.attributes.name||feature.id;placemarkName.appendChild(this.createTextNode(name));var placemarkDesc=this.createElementNS(this.kmlns,"description");var desc=feature.attributes.description||this.placemarksDesc;placemarkDesc.appendChild(this.createTextNode(desc));var placemarkNode=this.createElementNS(this.kmlns,"Placemark");if(feature.fid!=null){placemarkNode.setAttribute("id",feature.fid);}
placemarkNode.appendChild(placemarkName);placemarkNode.appendChild(placemarkDesc);var geometryNode=this.buildGeometryNode(feature.geometry);placemarkNode.appendChild(geometryNode);return placemarkNode;},buildGeometryNode:function(geometry){var className=geometry.CLASS_NAME;var type=className.substring(className.lastIndexOf(".")+1);var builder=this.buildGeometry[type.toLowerCase()];var node=null;if(builder){node=builder.apply(this,[geometry]);}
return node;},buildGeometry:{point:function(geometry){var kml=this.createElementNS(this.kmlns,"Point");kml.appendChild(this.buildCoordinatesNode(geometry));return kml;},multipoint:function(geometry){return this.buildGeometry.collection.apply(this,[geometry]);},linestring:function(geometry){var kml=this.createElementNS(this.kmlns,"LineString");kml.appendChild(this.buildCoordinatesNode(geometry));return kml;},multilinestring:function(geometry){return this.buildGeometry.collection.apply(this,[geometry]);},linearring:function(geometry){var kml=this.createElementNS(this.kmlns,"LinearRing");kml.appendChild(this.buildCoordinatesNode(geometry));return kml;},polygon:function(geometry){var kml=this.createElementNS(this.kmlns,"Polygon");var rings=geometry.components;var ringMember,ringGeom,type;for(var i=0,len=rings.length;i<len;++i){type=(i==0)?"outerBoundaryIs":"innerBoundaryIs";ringMember=this.createElementNS(this.kmlns,type);ringGeom=this.buildGeometry.linearring.apply(this,[rings[i]]);ringMember.appendChild(ringGeom);kml.appendChild(ringMember);}
return kml;},multipolygon:function(geometry){return this.buildGeometry.collection.apply(this,[geometry]);},collection:function(geometry){var kml=this.createElementNS(this.kmlns,"MultiGeometry");var child;for(var i=0,len=geometry.components.length;i<len;++i){child=this.buildGeometryNode.apply(this,[geometry.components[i]]);if(child){kml.appendChild(child);}}
return kml;}},buildCoordinatesNode:function(geometry){var coordinatesNode=this.createElementNS(this.kmlns,"coordinates");var path;var points=geometry.components;if(points){var point;var numPoints=points.length;var parts=new Array(numPoints);for(var i=0;i<numPoints;++i){point=points[i];parts[i]=this.buildCoordinates(point);}
path=parts.join(" ");}else{path=this.buildCoordinates(geometry);}
var txtNode=this.createTextNode(path);coordinatesNode.appendChild(txtNode);return coordinatesNode;},buildCoordinates:function(point){if(this.internalProjection&&this.externalProjection){point=point.clone();point.transform(this.internalProjection,this.externalProjection);}
return point.x+","+point.y;},CLASS_NAME:"OpenLayers.Format.KML"});
if(typeof CIESIN=="undefined"||!CIESIN){var CIESIN={};CIESIN.ol={};CIESIN.ol.ui={};}else if(!CIESIN.ol){CIESIN.ol={};}else if(!CIESIN.ol.ui){CIESIN.ol.ui={};}
if(typeof SEDAC=="undefined"||!SEDAC){var SEDAC={};}
CIESIN.ol.jQueryVer='1.6';CIESIN.ol.jQueryUIVer='1.8';CIESIN.ol.openLayersVer='2.11';CIESIN.ol.svrName='<!--#echo var="SERVER_NAME"-->';if(CIESIN.ol.svrName.match(/^<.*>$/)){CIESIN.ol.svrName='alpha.ciesin.columbia.edu';}
if(typeof jQuery==='undefined'||$().jquery.indexOf(CIESIN.ol.jQueryVer)!==0){if(typeof console!=='undefined'){console.error('gist_ol.js depends on jQuery v'+CIESIN.ol.jQueryVer);}}else{OpenLayers.ImgPath='/gInc/scripts/OpenLayers-'+CIESIN.ol.openLayersVer+'/img/';CIESIN.ol.createMap=function(elem,opts,defaults){if($('.gist-container').length)
var mapInstance=$('.gist-container').length;else
var mapInstance=0;var map;var mapElemId='map-id-'+mapInstance;var viewportId='map-viewport-id-'+mapInstance;var options={};var parentEl;var containerEl=$('<div id="'+mapElemId+'" class="gist-container">');var tableEl=$('<table class="gist-body"/>');var bodyRow=$('<tr/>');var viewportEl=$('<div id="'+viewportId+'" class="gist-viewport"/>');var panZoomEl=$('<div class="gist-pan-zoom"/>');var viewportPanelEl=$('<td class="gist-panel-viewport"/>').append(viewportEl.append(panZoomEl));var bodyHeight;var headerEl,leftPanelEl,layersPanelEl;if(typeof elem==='string'){parentEl=$('#'+elem);}else if(typeof elem==='object'){parentEl=elem;}
if(typeof defaults==="undefined"||defaults===true){options={controls:[new OpenLayers.Control.Navigation(),new OpenLayers.Control.KeyboardDefaults()],resolutions:[2.00167551711953,1.0008377585597652,0.5004188792798824,0.33361258618658834,0.16680629309329414,0.08340314654664707,0.03336125861865884,0.016680629309329415,0.008340314654664708],projection:new OpenLayers.Projection("EPSG:4326")};}
if(opts&&typeof opts=='object'){for(var opt in opts){if(opts.hasOwnProperty(opt)){options[opt]=opts[opt];}}}
if(options.gist_ui&&typeof options.gist_ui==='object'){if((options.gist_ui.titlebar&&typeof options.gist_ui.titlebar==='object'&&options.gist_ui.titlebar.enabled)||(options.gist_ui.toolbar&&typeof options.gist_ui.toolbar==='object'&&options.gist_ui.toolbar.enabled)){headerEl=$('<div class="gist-panel-header"/>');containerEl.append(headerEl);if(options.gist_ui.titlebar&&options.gist_ui.titlebar.enabled)
headerEl.append($('<div class="gist-titlebar"/>'));if(options.gist_ui.toolbar&&options.gist_ui.toolbar.enabled)
headerEl.append($('<div class="gist-toolbar"/>'));}
if(options.gist_ui.layers&&typeof options.gist_ui.layers==='object'&&options.gist_ui.layers.enabled){leftPanelEl=$('<td class="gist-panel-layers"/>');layersPanelEl=$('<div class="gist-layers"/>');bodyRow.append(leftPanelEl.append(layersPanelEl));}}
bodyRow.append(viewportPanelEl);tableEl.append(bodyRow);containerEl.append(tableEl);parentEl.append(containerEl);if(parentEl[0].tagName.toLowerCase()==='body'){$('html, body').css({width:'100%',height:'100%',margin:'0',padding:'0'});}
map=new OpenLayers.Map(viewportId,options);map.addControl(new OpenLayers.Control.PanZoomBar({div:$('#'+mapElemId+' .gist-pan-zoom')[0],zoomWorldIcon:true}));map.gist_id=mapElemId;if(options.layers){var olLayers=[];for(var layer in options.layers){if(options.layers.hasOwnProperty(layer)){if(options.layers[layer].CLASS_NAME.match(/^OpenLayers\.Layer\./)){olLayers.push(options.layers[layer]);}else{olLayers.push(CIESIN.ol.createLayer(options.layers[layer]));}}}
map.addLayers(olLayers);}
if(typeof map.gist_ui==='undefined'||!map.gist_ui){map.gist_ui={};}
if(map.gist_ui.titlebar&&map.gist_ui.titlebar.enabled){CIESIN.ol.ui.titlebar(map,options.gist_ui.titlebar);}
bodyHeight=parentEl.height();if(typeof headerEl!=='undefined'){bodyHeight=bodyHeight-headerEl.height();}
$('#'+mapElemId+' .gist-panel-layers, #'+mapElemId+' .gist-panel-viewport').height(bodyHeight);if(map.gist_ui.layers&&map.gist_ui.layers.enabled){CIESIN.ol.ui.layers(map,options.gist_ui.layers);}
CIESIN.ol.printVisibleLayers(map);map.updateSize();map.zoomToMaxExtent();$(window).resize(function(){bodyHeight=$('#'+mapElemId+'.gist-container').parent().height();if($('#'+mapElemId+' .gist-panel-header').length){bodyHeight=bodyHeight-$('#'+mapElemId+' .gist-panel-header').height();}
$('#'+mapElemId+' .gist-body, #'+mapElemId+' .gist-panel-layers, #'+mapElemId+' .gist-panel-viewport').height(bodyHeight);if($('#'+mapElemId+' .ol_lyrSwitcherContainer').length){$('#'+mapElemId+' .ol_lyrSwitcherContainer').height(bodyHeight);}
map.updateSize();});map.setCenter(new OpenLayers.LonLat(0,15));return map;};CIESIN.ol.createLayer=function(layer,params,opts,defaults){var olayer=null;var queryParams;var options;var olayerTitle;var olayerUrl;queryParams={layers:layer.name,format:'image/png',transparent:true};options={};if(typeof defaults==="undefined"||defaults===true){options={isBaseLayer:true};}
if(params&&typeof params=='object'){for(var param in params){if(params.hasOwnProperty(param)){queryParams[param]=params[param];}}}
if(opts&&typeof opts=='object'){for(var opt in opts){if(opts.hasOwnProperty(opt)){options[opt]=opts[opt];}}}
olayerTitle=layer.title;olayerUrl=layer.url;if(layer.cached_url){olayerUrl=layer.cached_url;queryParams.layers=layer.name.split(':')[1]+":default";if(typeof queryParams.styles!=="undefined"){var style=layer.style[queryParams.styles];olayerTitle=style.title;if(style.cached_url){olayerUrl=style.cached_url;}
queryParams.layers=style.name;}}
olayer=new OpenLayers.Layer.WMS(olayerTitle,olayerUrl,queryParams,options);layer.olayersID=olayer.id;olayer.CIESIN_REF=layer;return olayer;};CIESIN.ol.createSedacLayers=function(collection,dataset,layer){var layerArray=[];if(collection&&dataset&&layer){layerArray.push(CIESIN.ol.createLayer(SEDAC.layers[collection].datasets[dataset].layers[layer]));}else if(collection&&dataset&&!layer){for(var layer in SEDAC.layers[collection].datasets[dataset].layers){if(SEDAC.layers[collection].datasets[dataset].layers.hasOwnProperty(layer)){layerArray.push(CIESIN.ol.createLayer(SEDAC.layers[collection].datasets[dataset].layers[layer]));}}}else if(collection&&!dataset&&!layer){for(var dataset in SEDAC.layers[collection].datasets){if(SEDAC.layers[collection].datasets.hasOwnProperty(dataset)){for(var layer in SEDAC.layers[collection].datasets[dataset].layers){if(SEDAC.layers[collection].datasets[dataset].layers.hasOwnProperty(layer)){layerArray.push(CIESIN.ol.createLayer(SEDAC.layers[collection].datasets[dataset].layers[layer]));}}}}}
return layerArray;};CIESIN.ol.ui.titlebar=function(map,opts){var titlebarEl=$('#'+map.gist_id+' .gist-titlebar');var visibleLayersEl;map.gist_ui.titlebar={enabled:true,title:"Map Layer &raquo;",displayVisibleLayers:true};if(opts&&typeof opts=='object'){for(var opt in opts){if(opts.hasOwnProperty(opt)){map.gist_ui.titlebar[opt]=opts[opt];}}}
titlebarEl.empty();var titleEl=$('<h1/>').html(map.gist_ui.titlebar.title+" ");titlebarEl.append(titleEl);if(map.gist_ui.titlebar.displayVisibleLayers){titleEl.append($('<span class="ol_printVisibleLayers"/>'));}};CIESIN.ol.ui.layers=function(map,opts){map.gist_ui.layers={editable:false,sortable:false,enabled:true,visible:true,width:'250px'};if(opts&&typeof opts=='object'){for(var opt in opts){if(opts.hasOwnProperty(opt)){if((opt=='width'&&opts[opt].match(/^([0-9]+)(px)$/))||opt!='width'){map.gist_ui.layers[opt]=opts[opt];}else{CIESIN.error("ui.layers(): width property must be a string indicating pixel units -> '250px'");}}}}
var leftPanelTglTab;var leftPanelTglEdge;var lyrSwitcherContainer;var lyrSwitcher;var addLyrs;var lyrSwitcherUl;var lyrSwitcherViewableLayers;var overlays;var baseLayers;if(!$('#'+map.gist_id+' .ol_lyrSwitcher').length){lyrSwitcher=$('<div/>',{'class':'ol_lyrSwitcher'});if(!$('#'+map.gist_id+' .ol_lyrSwitcherContainer').length){$('#'+map.gist_id+' .gist-panel-layers').width(map.gist_ui.layers.width);lyrSwitcherContainer=$('<div/>',{'class':'ol_lyrSwitcherContainer'});lyrSwitcherContainer.append(lyrSwitcher);lyrSwitcherContainer.css({height:$('#'+map.gist_id+' .gist-body').height()+'px',width:map.gist_ui.layers.width});var toggleLeftPanel=function(){leftPanelTglTab.toggleClass("action-show");if(lyrSwitcherContainer.is(':visible')){$('#'+map.gist_id+' .gist-panel-layers').hide();}else{$('#'+map.gist_id+' .gist-panel-layers').show();}
map.updateSize();};leftPanelTglTab=$('<div/>',{'class':'gist-panel-layers-toggle-tab',click:toggleLeftPanel});leftPanelTglTab.css('backgroundImage','url('+OpenLayers.ImgPath+'left-panel-toggle-tab.png)');leftPanelTglEdge=$('<div/>',{'class':'gist-panel-layers-toggle-edge',click:toggleLeftPanel});leftPanelTglTab.mousedown(function(e){e.stopPropagation();}).dblclick(function(e){e.stopPropagation();}).disableSelection();leftPanelTglEdge.mousedown(function(e){e.stopPropagation();}).dblclick(function(e){e.stopPropagation();}).disableSelection();lyrSwitcherContainer.disableSelection();leftPanelTglTab.appendTo(map.div);leftPanelTglEdge.appendTo(map.div);$('#'+map.gist_id+' .gist-layers').prepend(lyrSwitcherContainer);$([leftPanelTglTab,leftPanelTglEdge]).each(function(){$(this).hover(function(){$('#'+map.gist_id+' .gist-panel-layers-toggle-tab, #'+map.gist_id+' .gist-panel-layers-toggle-edge').toggleClass("hover");},function(){$('#'+map.gist_id+' .gist-panel-layers-toggle-tab, #'+map.gist_id+' .gist-panel-layers-toggle-edge').toggleClass("hover");});});}}else{lyrSwitcher=$('#'+map.gist_id+' .ol_lyrSwitcher');lyrSwitcher.empty();}
if(map.gist_ui.layers.editable){addLyrs=$('<input/>',{type:'button',value:'Add Layers',click:function(){CIESIN.ol.lolPanel(map);}}).prependTo(lyrSwitcher);}
if(!map.gist_ui.layers.visible){leftPanelTglTab.click();}
lyrSwitcherUl=$('<ul/>',{'class':'ol_lyrList'}).appendTo(lyrSwitcher);overlays=map.getLayersBy('isBaseLayer',false).reverse();baseLayers=map.getLayersBy('isBaseLayer',true);var rmCountOverlays=0;$(overlays).each(function(i,lyr){if(!lyr.displayInLayerSwitcher){overlays.splice(i-rmCountOverlays,1);rmCountOverlays++;}});var rmCountBaseLayers=0;$(baseLayers).each(function(i,lyr){if(!lyr.displayInLayerSwitcher){baseLayers.splice(i-rmCountBaseLayers,1);rmCountBaseLayers++;}});if(overlays.length>=1){CIESIN.ol.layerSwitcherGroup(map,overlays,{type:'checkbox',name:'Overlays',acceptLol:true});}
if(baseLayers.length>=1){CIESIN.ol.layerSwitcherGroup(map,baseLayers,{name:'Base Layers'});}
map.updateSize();};CIESIN.ol.layerSwitcherGroup=function(map,lyrArray,opts){var lyrSwitcherUl=$('#'+map.gist_id+' .ol_lyrList');var lgndDiv,lgndImg;var liElem;var options;options={type:'radio',name:'Layer Group'};if(opts&&typeof opts=='object'){for(var opt in opts){if(opts.hasOwnProperty(opt)){options[opt]=opts[opt];}}}
if(lyrArray.length){var groupUl=$('<ul/>');if(typeof options.acceptLol!='undefined'&&options.acceptLol===true){groupUl.addClass('acceptLol');}
$(lyrArray).each(function(i,lyr){var tableElem=$('<table><tr><td class="ol_lyrVis"></td><td class="ol_lyrInf"></td></tr></table>');var ol_lyrVis=tableElem.find('.ol_lyrVis');var ol_lyrInf=tableElem.find('.ol_lyrInf');var visTglName=(options.type=='radio')?'lyrGroup'+lyrSwitcherUl.children().length:'vis_toggle';var ol_lyrName=$('<label/>',{'class':'ol_lyrName'}).text(lyr.name);ol_lyrInf.append(ol_lyrName);var visTgl=$('<input/>',{type:options.type,name:visTglName,value:lyr.id,click:function(e){e.stopPropagation();},change:function(e){var curInput=$("input[value='"+lyr.id+"']");if(lyr.getVisibility()){if(!lyr.isBaseLayer){lyr.setVisibility(false);}}else{if(!lyr.isBaseLayer){if(curInput.is(":radio")){$("input[name='"+curInput.attr('name')+"']").each(function(){if($(this).val()!=curInput.val()&&$(this).is(":checked")){$(this).change();}});}
lyr.setVisibility(true);}else{map.setBaseLayer(lyr);}}
if($('#'+map.gist_id+' .ol_printVisibleLayers').length){CIESIN.ol.printVisibleLayers(map);}}}).appendTo(ol_lyrVis);liElem=$('<li/>',{'class':'ol_lyrItem',click:function(e){e.stopPropagation();if(visTgl.is(':radio'))
visTgl.change();else if(visTgl.is(':checkbox'))
visTgl.change();}}).appendTo(groupUl);tableElem.appendTo(liElem);var ol_lyrDtls=$("<div class='ol_lyrDtls'>").appendTo(ol_lyrInf);if(lyr.getVisibility()){visTgl.attr('checked','checked');liElem.addClass('enabled');}else{ol_lyrDtls.hide();}
lyr.events.register("visibilitychanged",lyr,function(){$("input[value='"+this.id+"']").parents('.ol_lyrItem').toggleClass('enabled');if(this.getVisibility()){if(visTgl.not(":checked"))visTgl.attr('checked','checked');ol_lyrDtls.slideDown('fast');}else{if(visTgl.is(":checked"))visTgl.removeAttr('checked');if($('#'+map.gist_id+' .gist-panel-layers').is(":hidden")){ol_lyrDtls.hide();}else{ol_lyrDtls.slideUp('fast');}
if(visTgl.is(":radio")){var groupName=$("input[value='"+this.id+"']").attr('name');$("input[name='"+groupName+"']:not(:checked)").each(function(){$(this).parents('.ol_lyrItem').removeClass('enabled');});}}});if(typeof lyr.CIESIN_REF!=='undefined'){if(typeof lyr.CIESIN_REF.legend!=='undefined'&&lyr.CIESIN_REF.legend.url!==null){if(typeof lyr.CIESIN_REF.forceLegend==='undefined'){var lgndReq=lyr.CIESIN_REF.legend.url.split('?')[0]+"?request=GetLegendGraphic&format=image%2Fpng";var lgndReqStyle=(lyr.params.STYLES=="")?"":"&style="+lyr.params.STYLES;var lgndReqLyr="&layer="+lyr.CIESIN_REF.name.split(":")[1];var lgndReqSize="&width=15&height=15";var lgndReqOptions="&legend_options=border:false;mx:0.05;my:0.02;dx:0.2;dy:0.07;fontSize:11;bandInfo:false;";var lgndUrl=lgndReq+lgndReqLyr+lgndReqStyle+lgndReqSize+lgndReqOptions;}else{var lgndUrl='http://'+CIESIN.ol.svrName+'/gInc/scripts/gist_legend_fixes/'+lyr.CIESIN_REF.forceLegend;}
lgndDiv=$("<div class='ol_lgndDiv'>").appendTo(ol_lyrDtls);lgndLoadImg=$("<div class='ol_lgndLoadImg'/>").appendTo(lgndDiv);lgndLoadImg.css({backgroundImage:"url("+OpenLayers.ImgPath+"loading_16.gif)",backgroundPosition:"top left",backgroundRepeat:"no-repeat",width:"16px",height:"16px"});lgndImg=$("<img class='ol_lgndImg' src='"+lgndUrl+"' />").appendTo(lgndDiv).hide();lgndImg.load(function(){$(this).parent().find('.ol_lgndLoadImg').hide();$(this).show();});}
var hasMultipleStyles=false;if(lyr.params.STYLES==""){var num=0;for(var style in lyr.CIESIN_REF.style){if(lyr.CIESIN_REF.style.hasOwnProperty(style)){num+=1;if(num>1){hasMultipleStyles=true;break;}}}}
if(hasMultipleStyles){var styleSelect=$('<select/>',{css:{width:$('#'+map.gist_id+' .ol_lyrSwitcherContainer').width()-40+'px'},change:function(){var newStyle=$(this).val();var newName=$(this).text();if(lyr.CIESIN_REF.style[newStyle].cached_url===null){lyr.mergeNewParams({styles:newStyle});}else{lyr.mergeNewParams({layers:newStyle});}
var thisLgnd=$(this).parent().find('.ol_lgndImg');thisLgnd.hide();thisLgnd.parent().find('.ol_lgndLoadImg').show();thisLgnd.attr('src',lgndUrl+'&style='+newStyle).load(function(){$(this).parent().find('.ol_lgndLoadImg').hide();$(this).show();});}});for(var s in lyr.CIESIN_REF.style){if(lyr.CIESIN_REF.style.hasOwnProperty(s)){var title=lyr.CIESIN_REF.style[s].title;var styleOpt=$('<option/>',{value:s,'title':title}).text(title);if(s.split(":")[1]=='default'){styleOpt.attr('selected','selected');styleOpt.text('Default Style');styleSelect.prepend(styleOpt);}else{styleSelect.append(styleOpt);}}}
lgndDiv.before(styleSelect);}}
if(map.gist_ui.layers.editable){ol_lyrVis.after($('<td class="ol_lyrOpts"/>'));var ol_lyrOpts=tableElem.find('.ol_lyrOpts');var lyrMenu=$('<ul class="ol_lyrMenu"><li><img src="imgs/gear_icon.gif" alt="layer options"/></li></ul>');lyrMenu.find('img').click(function(){lyrMenuOpts.toggle();});var lyrMenuOptsTimeOut;var lyrMenuOpts=$('<ul/>',{mouseover:function(){clearTimeout(lyrMenuOptsTimeOut);},mouseout:function(){lyrMenuOptsTimeOut=setTimeout(function(){lyrMenuOpts.hide();},400);}}).hide();lyrMenu.find('img').after(lyrMenuOpts);ol_lyrOpts.append(lyrMenu);var removeLyr=$('<a/>',{href:'#',title:'Remove Layer',click:function(){e.preventDefault();var thisLyr=map.getLayer(lyr.id);thisLyr.destroy();CIESIN.ol.ui.layers(map);}}).text('Remove Layer');lyrMenuOpts.append($('<li/>').append(removeLyr));if(options.type=='checkbox'){var curOpacity;if(lyr.opacity!==null){curOpacity=lyr.opacity*100;}else{curOpacity=100;}
var opacityCtrl=$('<div class="ol_lyrOpacity"/>').text('Opacity:');var opacityInput=$('<input/>',{type:'text',size:'3',maxlegnth:'3',value:curOpacity}).appendTo(opacityCtrl);var opacitySlider=$('<div/>').css('width','90%').slider({min:1,max:100,value:curOpacity,slide:function(e,u){opacityInput.attr('value',u.value);lyr.setOpacity(u.value*0.01);}}).appendTo(opacityCtrl);lyrMenuOpts.append($('<li/>').append(opacityCtrl));}
if(typeof lyr.CIESIN_REF!=='undefined'&&lyr.CIESIN_REF.metadata!==null){var metadata=$('<a/>',{href:'#',title:'View Metadata'}).text('View Metadata');lyrMenuOpts.append($('<li/>').append(metadata));}}});lyrSwitcherUl.append($('<li/>').append('<div class="ol_lyrGroupTitle">'+options.name+'</div>').append(groupUl));if(options.type=='checkbox'&&map.gist_ui.layers.sortable){groupUl.sortable({axis:'y',opacity:0.75,receive:function(ev,ui){ui.item.draggable('disable');var lyrPkg=ui.item.find('input').attr('name');var lyrName=ui.item.find('input').attr('value');var newLyr=CIESIN.ol.createLayer(CIESIN.layers[lyrPkg][lyrName],{transparent:true},{isBaseLayer:false});map.addLayer(newLyr);},start:function(ev,ui){ui.item.data('startIndex',groupUl.children().index(ui.item));},stop:function(ev,ui){var startIndex=ui.item.data('startIndex');var endIndex=groupUl.children().index(ui.item);var curLyr;if(startIndex!=endIndex){curLyr=map.getLayer(ui.item.find('input').val());map.raiseLayer(curLyr,startIndex-endIndex);}}}).disableSelection();}}};CIESIN.ol.lolPanel=function(map){var lolPanel;if(!$('#ol_lolPanel').length){lolPanel=$('<div/>').attr('id','ol_lolPanel');$("#ol_lyrControlPanel").append(lolPanel);}else{lolPanel=$('#ol_lolPanel');lolPanel.empty();}
var lolPanelUl=$('<ul/>');lolPanel.prepend(lolPanelUl);$.each(CIESIN.layers,function(pkg){var lolPkgLi=$('<li/>').text(pkg).appendTo(lolPanelUl);var pkgLyrsUl=$('<ul/>').appendTo(lolPkgLi);$.each(this,function(lyr){var lyrLi=$('<li/>').text(this.title).appendTo(pkgLyrsUl);lyrLi.draggable({connectToSortable:'.acceptLol',helper:'clone',revert:'invalid'}).disableSelection();var input=$('<input/>').attr({type:'hidden',name:pkg,value:lyr}).prependTo(lyrLi);});});};CIESIN.ol.addLegends=function(map,layers){var lyrArr=[];if(!$('#ol_legends').length){var lgnd=$('<div/>').attr('id','ol_legends');var lgndDiv=$('<div/>');lgnd.append(lgndDiv);$(map.div).prepend(lgnd);}else{$('#ol_legends div').empty();}
if(layers&&typeof layers=='object'){$(layers).each(function(){var curTitle;curTitle=(this.CLASS_NAME==="OpenLayers.Layer.WMS")?this.CIESIN_REF.title:this.title;if(map.getLayersByName(curTitle).length){lyrArr.push(map.getLayersByName(curTitle)[0]);}else{CIESIN.warn("The following CIESIN layer, "+curTitle+", does not exist in the OpenLayers map object");}});}else{lyrArr=map.layers;}
$(lyrArr).each(function(){if(this.CIESIN_REF.legend&&this.CIESIN_REF.legend.url){this.CIESIN_REF.name=this.CIESIN_REF.name.replace(/:/g,"_");var img=$('<img/>').attr({id:this.CIESIN_REF.name,alt:this.name+' legend',src:this.CIESIN_REF.legend.url}).hide();$('#ol_legends div').append(img);this.events.register("visibilitychanged",this,function(){if(this.getVisibility()){$('#'+this.CIESIN_REF.name).show();}else{$('#'+this.CIESIN_REF.name).hide();}});if(this.options.isBaseLayer){map.events.register("changebaselayer",this,function(){if(this.getVisibility()){$('#'+this.CIESIN_REF.name).show();if($("#ol_title").length){$("#ol_title").text("Base Layer: "+this.name);}}});}
if(this.visibility===true){$('#'+this.CIESIN_REF.name).show();if(this.isBaseLayer){if($("#ol_title").length){$('#ol_title').text("Base Layer: "+this.CIESIN_REF.title);}}}}});if($.browser.msie){$('#ol_legends').css('background-color','white');}
return null;};CIESIN.ol.printVisibleLayers=function(map,overridejQueryElem){var overlays=[];var baseLayer=null;var lyrsStr='';$(map.getLayersBy('visibility',true)).each(function(){if(this.displayInLayerSwitcher===true&&!this.CIESIN_REF.name.match(/^cartographic:/)){if(this.isBaseLayer){baseLayer=this.name;}else{overlays.push(this.name);}}});overlays.reverse();if(baseLayer!==null){overlays.push(baseLayer);}
$(overlays).each(function(index){if(index===0){lyrsStr=lyrsStr+this;}else if(overlays.length===2&&index===1){lyrsStr=lyrsStr+' and '+this;}else if(overlays.length>2&&index===overlays.length-1){lyrsStr=lyrsStr+', and '+this;}else if(overlays.length>2){lyrsStr=lyrsStr+', '+this;}});if(typeof overridejQueryElem!='undefined')
overridejQueryElem.text(lyrsStr);else
$('#'+map.gist_id+' .ol_printVisibleLayers').text(lyrsStr);};CIESIN.ol.getLayer=function(map,layerName){var nbrLayers=map.getNumLayers();var layer=map.layers[0];for(var index=0;index<nbrLayers;index++){layer=map.layers[index];if(layerName==layer.name){return layer;}}
return null;};CIESIN.ol.isDuplicateLayer=function(map,layerName){var layer=CIESIN.ol.getLayer(map,layerName);if(null!==layer){return true;}
return false;};CIESIN.ol.removeLayer=function(map,layerName){var layer=CIESIN.ol.getLayer(map,layerName);if(null!==layer){map.removeLayer(layer,false);}};CIESIN.ol.hideLayer=function(map,layerName){var layer=CIESIN.ol.getLayer(map,layerName);if(null!==layer){layer.setVisibility(false);}};CIESIN.ol.showLayer=function(map,layerName){var layer=CIESIN.ol.getLayer(map,layerName);if(null!==layer){layer.setVisibility(true);}};CIESIN.info=function(msg){if(typeof console!='undefined'){console.info(msg);}};CIESIN.warn=function(msg){if(typeof console!='undefined'){console.warn(msg);}};CIESIN.error=function(msg){if(typeof console!='undefined'){console.error(msg);}};CIESIN.ol.initIntervalCounter=0;CIESIN.ol.initInterval=setInterval(function(){CIESIN.ol.initIntervalCounter++;if(CIESIN.ol.init){CIESIN.ol.init();clearInterval(CIESIN.ol.initInterval);}else if(CIESIN.ol.initIntervalCounter>20){clearInterval(CIESIN.ol.initInterval);CIESIN.info("CIESIN.ol.init function not defined in this document");}},250);};
SEDAC.layers={"species-v1":{title:"Gridded Species Distribution",datasets:{"species-v1-global-amphibian-family-richness":{title:"Global Amphibians Family Richness Grids",version:"1.00",layers:{"species-v1-global-amphibian-family-richness":{title:"Amphibian Family Richness",name:"species-v1:species-v1-global-amphibian-family-richness",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Amphibian Family Richness Map shows the spatial distribution of amphibian species richness within families across the globe. Grid values represent the sum of all amphibian species found at a given grid cell.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=species-v1-global-amphibian-family-richness",width:"20",height:"20",format:"image/png"},style:{"species-v1-global-amphibian-family-richness:default":{name:"species-v1-global-amphibian-family-richness:default",title:"Amphibian Species Richness",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=species-v1-global-amphibian-family-richness",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.996",maxx:"180.006",miny:"-58.004",maxy:"84.999"}}}}}},"ferman-v1":{title:"Ferman-v1",datasets:{"ferman-v1-phosphorus-fertilizer-application":{title:"ferman-v1:ferman-v1-phosphorus-fertilizer-application",version:"",layers:{"ferman-v1-phosphorus-fertilizer-application":{title:"Phosphorus Fertilizer Application",name:"ferman-v1:ferman-v1-phosphorus-fertilizer-application",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Phosphorus Fertilizer Application dataset of the Global Fertilizer and Manure, Version 1 Data Collection represents the amount of phosphorus fertilizer nutrients applied to croplands.  The national-level phosphorus fertilizer application rates for crops are from the International Fertilizer Industry Association (IFA)  Fertilizer Use by Crop 2002  statistics database that is available by request from the Food and Agriculture Organization (FAO).The number of crop-specific fertilizer application rates reported for each country ranged from 2 crops (Guinea) to over 50 crops (United States), and the years for which the data are reported range from 1994 to 2001. Spatially explicit fertilizer inputs of Nitrogen (N) were computed by fusing national-level statistics on fertilizer use with global maps of harvested area for 175 crops. The data were compiled by  Potter et al. (2010) and distributed by the Columbia University Center for International Earth Science Information Network (CIESIN).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ferman-v1-phosphorus-fertilizer-application",width:"20",height:"20",format:"image/png"},style:{"ferman-v1-phosphorus-fertilizer-application:default":{name:"ferman-v1-phosphorus-fertilizer-application:default",title:"Global Fertilizer Application and Manure Production Distribution in 2000, Phosphorus Fertilizer Application",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ferman-v1-phosphorus-fertilizer-application",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-183.6",maxx:"183.6",miny:"-169.611",maxy:"197.589"}}}},"ferman-v1-phosphorus-in-manure-production":{title:"ferman-v1:ferman-v1-phosphorus-in-manure-production",version:"",layers:{"ferman-v1-phosphorus-in-manure-production":{title:"Phosphorus in Manure Production",name:"ferman-v1:ferman-v1-phosphorus-in-manure-production",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Phosphorus in Manure Production dataset of the Global Fertilizer and Manure, Version 1 Data Collection represents the amount of phosphorous in manure produced and present on the landscape. The manure production at grid cell level was computed based on livestock population and nutrient excretion rates. The livestock population per grid cell was computed by multiplying the density values from FAO Gridded Livestock of the World by the area of grid cell. Spatially explicit manure produced and present on landscape is derived by combining the number of livestock heads and the nutrient excretion rate. The data were compiled by Potter et al. (2010) and distributed by the Columbia University Center for International Earth Science Information Network (CIESIN).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ferman-v1-phosphorus-in-manure-production",width:"20",height:"20",format:"image/png"},style:{"ferman-v1-phosphorus-in-manure-production:default":{name:"ferman-v1-phosphorus-in-manure-production:default",title:"Global Fertilizer Application and Manure Production Distribution in 2000, Phosphorus in Manure Production",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ferman-v1-phosphorus-in-manure-production",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-183.6",maxx:"183.6",miny:"-169.611",maxy:"197.589"}}}},"ferman-v1-nitrogen-fertilizer-application":{title:"ferman-v1:ferman-v1-nitrogen-fertilizer-application",version:"",layers:{"ferman-v1-nitrogen-fertilizer-application":{title:"Nitrogen Fertilizer Application",name:"ferman-v1:ferman-v1-nitrogen-fertilizer-application",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Nitrogen Fertilizer Application dataset of the Global Fertilizer and Manure, Version 1 Data Collection represents the amount of nitrogen fertilizer nutrients applied to croplands. The national-level nitrogen fertilizer application rates for crops are from the International Fertilizer Industry Association (IFA)  Fertilizer Use by Crop 2002  statistics database that is available by request from the Food and Agriculture Organization (FAO). The number of crop-specific fertilizer application rates reported for each country ranged from 2 crops (Guinea) to over 50 crops (United States), and the years for which the data are reported range from 1994 to 2001. Spatially explicit fertilizer inputs of Nitrogen (N) were computed by fusing national-level statistics on fertilizer use with global maps of harvested area for 175 crops. The data were compiled by Potter  et al. (2010) and distributed by the Columbia University Center for International Earth Science Information Network (CIESIN).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ferman-v1-nitrogen-fertilizer-application",width:"20",height:"20",format:"image/png"},style:{"ferman-v1-nitrogen-fertilizer-application:default":{name:"ferman-v1-nitrogen-fertilizer-application:default",title:"Global Fertilizer Application and Manure Production Distribution in 2000, Nitrogen Fertilizer Application",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ferman-v1-nitrogen-fertilizer-application",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-183.6",maxx:"183.6",miny:"-169.611",maxy:"197.589"}}}},"ferman-v1-nitrogen-in-manure-production":{title:"ferman-v1:ferman-v1-nitrogen-in-manure-production",version:"",layers:{"ferman-v1-nitrogen-in-manure-production":{title:"Nitrogen in Manure Production",name:"ferman-v1:ferman-v1-nitrogen-in-manure-production",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Nitrogen in Manure Production dataset of the Global Fertilizer and Manure, Version 1 Data Collection represents the amount of nitrogen manure produced and present on the landscape. The manure production at grid cell level was computed based on livestock population and nutrient excretion rates. The livestock population per grid cell was computed by multiplying the density values from FAO Gridded Livestock of the World by the area of grid cell. Spatially explicit manure produced and present on landscape is derived by combining the number of livestock heads and the nutrient excretion rate. The data were compiled by Potter et al. (2010) and distributed by the Columbia University Center for International Earth Science Information Network (CIESIN).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ferman-v1-nitrogen-in-manure-production",width:"20",height:"20",format:"image/png"},style:{"ferman-v1-nitrogen-in-manure-production:default":{name:"ferman-v1-nitrogen-in-manure-production:default",title:"Global Fertilizer Application and Manure Production Distribution in 2000, Nitrogen in Manure Production",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ferman-v1-nitrogen-in-manure-production",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.761",maxy:"83.739"}}}}}},"wildareas-v2":{title:"Last of the Wild",datasets:{"wildareas-v2-human-influence-index-geographic":{title:"Global Human Influence Index (Geographic)",version:"2.00",layers:{"wildareas-v2-human-influence-index-geographic":{title:"Human Influence Index Version 2",name:"wildareas-v2:wildareas-v2-human-influence-index-geographic",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Human Influence Index Dataset of the Last of the Wild Project, Version 2, 2005 (LWP-2) is a global dataset of 1-kilometer grid cells, created from nine global data layers covering human population pressure (population density), human land use and infrastructure (built-up areas, nighttime lights, land use/land cover), and human access (coastlines, roads, railroads, navigable rivers). The dataset is produced by the Wildlife Conservation Society (WCS) and the Columbia University Center for International Earth Science Information Network (CIESIN) and is available in the Geographic Coordinate system.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wildareas-v2-human-influence-index-geographic",width:"20",height:"20",format:"image/png"},style:{"wildareas-v2-human-influence-index-geographic:default":{name:"wildareas-v2-human-influence-index-geographic:default",title:"Human Influence Index v2",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wildareas-v2-human-influence-index-geographic&amp;style=wildareas-v2-human-influence-index-geographic%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.008",miny:"-89.919",maxy:"89.931"}}}},"wildareas-v2-last-of-the-wild-geographic":{title:"Last of the Wild (Geographic)",version:"2.00",layers:{"wildareas-v2-last-of-the-wild-geographic":{title:"Last of the Wild Version 2",name:"wildareas-v2:wildareas-v2-last-of-the-wild-geographic",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"This map depicts the 825 terrestrial ecoregions of the globe. Ecoregions are relatively large units of land containing distinct assemblages of natural communities and species, with boundaries that approximate the original extent of natural communities prior to major land-use change.  This comprehensive, global map provides a  useful framework for conducting biogeographical or macroecological research, for identifying areas of outstanding biodiversity and conservation priority, for assessing the representation and gaps in conservation efforts worldwide, and for communicating the global distribution of natural communities on earth. We have based ecoregion delineations on hundreds of previous biogeographical studies, and refined and synthesized existing information in regional workshops over 10 years to assemble the global dataset.  Ecoregions are nested within two higher-order classifications: biomes (14) and biogeographic realms (8).  Together, these nested classification levels provide a framework for comparison among units and the identification of representative habitats and species assemblages.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wildareas-v2-last-of-the-wild-geographic",width:"20",height:"20",format:"image/png"},style:{"wildareas-v2-last-of-the-wild-geographic:default":{name:"wildareas-v2-last-of-the-wild-geographic:default",title:"Last of The Wild v2",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wildareas-v2-last-of-the-wild-geographic&amp;style=wildareas-v2-last-of-the-wild-geographic%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.986",maxy:"83.623"}}}},"wildareas-v2-human-footprint-geographic":{title:"Global Human Footprint (Geographic)",version:"2.00",layers:{"wildareas-v2-human-footprint-geographic":{title:"Human Footprint Version 2",name:"wildareas-v2:wildareas-v2-human-footprint-geographic",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Human Footprint Dataset of the Last of the Wild Project, Version 2, 2005 (LWP-2) is the Human Influence Index (HII) normalized by biome and realm. The HII is a global dataset of 1-kilometer grid cells, created from nine global data layers covering human population pressure (population density), human land use and infrastructure (built-up areas, nighttime lights, land use/land cover), and human access (coastlines, roads, railroads, navigable rivers). The dataset is produced by the Wildlife Conservation Society (WCS) and the Columbia University Center for International Earth Science Information Network (CIESIN) and is available in the Geographic Coordinate system.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wildareas-v2-human-footprint-geographic",width:"20",height:"20",format:"image/png"},style:{"wildareas-v2-human-footprint-geographic:default":{name:"wildareas-v2-human-footprint-geographic:default",title:"Human Footprint v2",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wildareas-v2-human-footprint-geographic&amp;style=wildareas-v2-human-footprint-geographic%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.008",miny:"-89.919",maxy:"89.931"}}}}}},"esi":{title:"Environmental Sustainability Index",datasets:{"esi-environmental-sustainability-index-2005":{title:"Environmental Sustainability Index",version:"2005.00",layers:{"esi-environmental-sustainability-index-2005":{title:"Environmental Sustainability Index 2005",name:"esi:esi-environmental-sustainability-index-2005",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2005 Environmental Sustainability Index (ESI) is a measure of overall progress towards environmental sustainability, developed for 146 countries. The index provides a composite profile of national environmental stewardship based on a compilation of 21 indicators derived from 76 underlying datasets. The 2005 version of the ESI represents a significant update and improvement on earlier versions; the country ESI scores or rankings should not be compared to earlier versions because of changes to the methodology and underlying data. The index was unveiled at the World Economic Forum's annual meeting, January 2005, Davos, Switzerland. The 2005 ESI is a joint product of the Yale Center for Environmental Law and Policy (YCELP) and the Columbia University Center for International Earth Science Information Network (CIESIN), in collaboration with the World Economic Forum (WEF) and the Joint Research Centre (JRC), European Commission.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005:default":{name:"esi-environmental-sustainability-index-2005:default",title:"Overall Environmental Sustainability Index Score",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005&amp;style=esi-environmental-sustainability-index-2005%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_air-quality":{title:"ESI 2005 Air Quality",name:"esi:esi-environmental-sustainability-index-2005_air-quality",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_air-quality",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_air-quality:so2-urban-concentration":{name:"esi-environmental-sustainability-index-2005_air-quality:so2-urban-concentration",title:"Environmental Systems:Urban Populations Weighted SO2 Concentration",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_air-quality&amp;style=esi-environmental-sustainability-index-2005_air-quality%3Aso2-urban-concentration",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_air-quality:indoor-air-pollution-from-solid-fuel-use":{name:"esi-environmental-sustainability-index-2005_air-quality:indoor-air-pollution-from-solid-fuel-use",title:"Environmental Systems: Indoor Air Pollution From Solid Fuel Use",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_air-quality&amp;style=esi-environmental-sustainability-index-2005_air-quality%3Aindoor-air-pollution-from-solid-fuel-use",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_air-quality:tsp-urban-concentration":{name:"esi-environmental-sustainability-index-2005_air-quality:tsp-urban-concentration",title:"Environmental Systems: Urban Population Weighted TSP Concentration",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_air-quality&amp;style=esi-environmental-sustainability-index-2005_air-quality%3Atsp-urban-concentration",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_air-quality:default":{name:"esi-environmental-sustainability-index-2005_air-quality:default",title:"Environmental Systems: Urban Population Weighted NO2 Concentration",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_air-quality&amp;style=esi-environmental-sustainability-index-2005_air-quality%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_biodiversity":{title:"ESI 2005 Biodiversity",name:"esi:esi-environmental-sustainability-index-2005_biodiversity",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_biodiversity",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_biodiversity:threatened-bird-species-percentage":{name:"esi-environmental-sustainability-index-2005_biodiversity:threatened-bird-species-percentage",title:"Environmental Systems: Threatened Bird Species as Percentage of Known Breeding Bird Species in Each Country",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_biodiversity&amp;style=esi-environmental-sustainability-index-2005_biodiversity%3Athreatened-bird-species-percentage",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_biodiversity:threatened-mammal-species-percentage":{name:"esi-environmental-sustainability-index-2005_biodiversity:threatened-mammal-species-percentage",title:"Environmental Systems: Threatened Mammal Species as Percentage of Known Mammal Species in Each Country",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_biodiversity&amp;style=esi-environmental-sustainability-index-2005_biodiversity%3Athreatened-mammal-species-percentage",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_biodiversity:percentage-of-territory-threatened-ecosystems":{name:"esi-environmental-sustainability-index-2005_biodiversity:percentage-of-territory-threatened-ecosystems",title:"Environmental Systems: Percentage of Country's Territory in Threatened Ecoregions",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_biodiversity&amp;style=esi-environmental-sustainability-index-2005_biodiversity%3Apercentage-of-territory-threatened-ecosystems",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_biodiversity:threatened-amphibian-species-percentage":{name:"esi-environmental-sustainability-index-2005_biodiversity:threatened-amphibian-species-percentage",title:"Environmental Systems: Threatened Amphibian Species as Percentage of Known Amphibian Species in Each Country",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_biodiversity&amp;style=esi-environmental-sustainability-index-2005_biodiversity%3Athreatened-amphibian-species-percentage",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_biodiversity:default":{name:"esi-environmental-sustainability-index-2005_biodiversity:default",title:"Environmental Systems: National Biodiversity Index",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_biodiversity&amp;style=esi-environmental-sustainability-index-2005_biodiversity%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_eco-efficiency":{title:"ESI 2005 Eco-Efficiency",name:"esi:esi-environmental-sustainability-index-2005_eco-efficiency",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_eco-efficiency",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_eco-efficiency:default":{name:"esi-environmental-sustainability-index-2005_eco-efficiency:default",title:"Social and Institutional Capacity: Energy Efficiency",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_eco-efficiency&amp;style=esi-environmental-sustainability-index-2005_eco-efficiency%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_eco-efficiency:renewable-energy-production-percentage":{name:"esi-environmental-sustainability-index-2005_eco-efficiency:renewable-energy-production-percentage",title:"Social and Institutional Capacity: Hydropower and Renewable Energy Production as a Percentage of Total Energy Consumption",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_eco-efficiency&amp;style=esi-environmental-sustainability-index-2005_eco-efficiency%3Arenewable-energy-production-percentage",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_environ-governance":{title:"ESI 2005 Environmental Governance",name:"esi:esi-environmental-sustainability-index-2005_environ-governance",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_environ-governance:percentage-land-area-protected":{name:"esi-environmental-sustainability-index-2005_environ-governance:percentage-land-area-protected",title:"Social and Institutional Capacity: Percentage of Total Land Area Under Protected Status",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Apercentage-land-area-protected",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:rule-of-law":{name:"esi-environmental-sustainability-index-2005_environ-governance:rule-of-law",title:"Social and Institutional Capacity: Rule of Law",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Arule-of-law",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:iucn-member-orgs-per-million-pop":{name:"esi-environmental-sustainability-index-2005_environ-governance:iucn-member-orgs-per-million-pop",title:"Social and Institutional Capacity: IUCN Member Organizations Per Million Population",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Aiucn-member-orgs-per-million-pop",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:corruption-measure":{name:"esi-environmental-sustainability-index-2005_environ-governance:corruption-measure",title:"Social and Institutional Capacity: Corruption Measure",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Acorruption-measure",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:local-agenda-21-initiatives-per-million":{name:"esi-environmental-sustainability-index-2005_environ-governance:local-agenda-21-initiatives-per-million",title:"Social and Institutional Capacity: Local Agenda 21 Initiatives Per Million People",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Alocal-agenda-21-initiatives-per-million",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:ratio-gas-price-world-average":{name:"esi-environmental-sustainability-index-2005_environ-governance:ratio-gas-price-world-average",title:"Social and Institutional Capacity: Ratio of Gasoline Price to World Average",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Aratio-gas-price-world-average",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:government-effectiveness":{name:"esi-environmental-sustainability-index-2005_environ-governance:government-effectiveness",title:"Social and Institutional Capacity: Government Effectiveness",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Agovernment-effectiveness",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:civil-and-political-liberties":{name:"esi-environmental-sustainability-index-2005_environ-governance:civil-and-political-liberties",title:"Social and Institutional Capacity: Civil And Political Liberties",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Acivil-and-political-liberties",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:knowledge-environ-tech-science-policy":{name:"esi-environmental-sustainability-index-2005_environ-governance:knowledge-environ-tech-science-policy",title:"Social and Institutional Capacity: Knowledge Creation in Environmental Science, Technology, and Policy",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Aknowledge-environ-tech-science-policy",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:default":{name:"esi-environmental-sustainability-index-2005_environ-governance:default",title:"Social and Institutional Capacity: Democracy Measure",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:world-economic-forum-survey-environ-governance":{name:"esi-environmental-sustainability-index-2005_environ-governance:world-economic-forum-survey-environ-governance",title:"Social and Institutional Capacity: World Economic Forum Survey on Environmental Governance",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Aworld-economic-forum-survey-environ-governance",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-governance:percentage-variables-missing-cgsdi":{name:"esi-environmental-sustainability-index-2005_environ-governance:percentage-variables-missing-cgsdi",title:"Social and Institutional Capacity: Percentage of Variables Missing From The CGSDAI &quot;Rio to Joburg Dashboard&quot;",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-governance&amp;style=esi-environmental-sustainability-index-2005_environ-governance%3Apercentage-variables-missing-cgsdi",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_environ-health":{title:"ESI 2005 Environmental Health",name:"esi:esi-environmental-sustainability-index-2005_environ-health",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-health",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_environ-health:default":{name:"esi-environmental-sustainability-index-2005_environ-health:default",title:"Reducing Human Vulnerability: Children Under Five Mortality Rate Per 1,000 Live Births",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-health&amp;style=esi-environmental-sustainability-index-2005_environ-health%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-health:death-rate-intestinal-disease":{name:"esi-environmental-sustainability-index-2005_environ-health:death-rate-intestinal-disease",title:"Reducing Human Vulnerability: Death Rate From Intestinal Infectious Diseases",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-health&amp;style=esi-environmental-sustainability-index-2005_environ-health%3Adeath-rate-intestinal-disease",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_environ-health:child-death-rate-respiratory-illness":{name:"esi-environmental-sustainability-index-2005_environ-health:child-death-rate-respiratory-illness",title:"Reducing Human Vulnerability: Child Death Rate From Respiratory Illness",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_environ-health&amp;style=esi-environmental-sustainability-index-2005_environ-health%3Achild-death-rate-respiratory-illness",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_greenhouse-gas-emissions":{title:"ESI 2005 Greenhouse Gas Emissions",name:"esi:esi-environmental-sustainability-index-2005_greenhouse-gas-emissions",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_greenhouse-gas-emissions",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_greenhouse-gas-emissions:carbon-emissions-per-million-us-gdp":{name:"esi-environmental-sustainability-index-2005_greenhouse-gas-emissions:carbon-emissions-per-million-us-gdp",title:"Global Stewardship: Carbon Emissions Per Million US Dollars GDP",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_greenhouse-gas-emissions&amp;style=esi-environmental-sustainability-index-2005_greenhouse-gas-emissions%3Acarbon-emissions-per-million-us-gdp",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_greenhouse-gas-emissions:default":{name:"esi-environmental-sustainability-index-2005_greenhouse-gas-emissions:default",title:"Global Stewardship: Carbon Emissions Per Capita",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_greenhouse-gas-emissions&amp;style=esi-environmental-sustainability-index-2005_greenhouse-gas-emissions%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_human-sustenance":{title:"ESI 2005 Human Sustenance",name:"esi:esi-environmental-sustainability-index-2005_human-sustenance",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_human-sustenance",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_human-sustenance:default":{name:"esi-environmental-sustainability-index-2005_human-sustenance:default",title:"Reducing Human Vulnerability: Percentage of Undernourished in Total Population",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_human-sustenance&amp;style=esi-environmental-sustainability-index-2005_human-sustenance%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_human-sustenance:percentage-access-improved-drinking-water":{name:"esi-environmental-sustainability-index-2005_human-sustenance:percentage-access-improved-drinking-water",title:"Reducing Human Vulnerability: Percentage of Population With Access To Improved Drinking Water Source",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_human-sustenance&amp;style=esi-environmental-sustainability-index-2005_human-sustenance%3Apercentage-access-improved-drinking-water",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_land":{title:"ESI 2005 Land",name:"esi:esi-environmental-sustainability-index-2005_land",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_land",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_land:default":{name:"esi-environmental-sustainability-index-2005_land:default",title:"Environmental Systems: Percentage of Total Land Area (including inland waters) Having Very High Anthropogenic Impact",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_land&amp;style=esi-environmental-sustainability-index-2005_land%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_land:percentage-land-area-low-anthropogenic-impact":{name:"esi-environmental-sustainability-index-2005_land:percentage-land-area-low-anthropogenic-impact",title:"Environmental Systems: Percentage of Total Land Area (including inland waters) Having Very Low Anthropogenic Impact",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_land&amp;style=esi-environmental-sustainability-index-2005_land%3Apercentage-land-area-low-anthropogenic-impact",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_nat-disaster-vulnerability":{title:"ESI 2005 Natural Disaster Vulnerability",name:"esi:esi-environmental-sustainability-index-2005_nat-disaster-vulnerability",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-disaster-vulnerability",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_nat-disaster-vulnerability:default":{name:"esi-environmental-sustainability-index-2005_nat-disaster-vulnerability:default",title:"Reducing Human Vulnerability: Environmental Hazard Exposure Index",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-disaster-vulnerability&amp;style=esi-environmental-sustainability-index-2005_nat-disaster-vulnerability%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_nat-disaster-vulnerability:average-deaths-flooding-cyclones":{name:"esi-environmental-sustainability-index-2005_nat-disaster-vulnerability:average-deaths-flooding-cyclones",title:"Reducing Human Vulnerability: Average Number of Deaths Per Million Inhabitants From Floods, Tropical Cyclones, and Droughts",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-disaster-vulnerability&amp;style=esi-environmental-sustainability-index-2005_nat-disaster-vulnerability%3Aaverage-deaths-flooding-cyclones",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_nat-resource-mgmt":{title:"ESI 2005 Natural Resource Management",name:"esi:esi-environmental-sustainability-index-2005_nat-resource-mgmt",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-resource-mgmt",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_nat-resource-mgmt:default":{name:"esi-environmental-sustainability-index-2005_nat-resource-mgmt:default",title:"Reducing Environmental Stresses: Percentage of Total Forest Area That Is Certified For Sustainable Management",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-resource-mgmt&amp;style=esi-environmental-sustainability-index-2005_nat-resource-mgmt%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_nat-resource-mgmt:percentage-irrigation-salinized-area":{name:"esi-environmental-sustainability-index-2005_nat-resource-mgmt:percentage-irrigation-salinized-area",title:"Reducing Environmental Stresses: Salinized Area Due To Irrigation As Percentage of Total Arable Land",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-resource-mgmt&amp;style=esi-environmental-sustainability-index-2005_nat-resource-mgmt%3Apercentage-irrigation-salinized-area",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_nat-resource-mgmt:world-economic-forum-survey-subsidies":{name:"esi-environmental-sustainability-index-2005_nat-resource-mgmt:world-economic-forum-survey-subsidies",title:"Reducing Environmental Stresses: World Economic Forum Survey On Subsidies",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-resource-mgmt&amp;style=esi-environmental-sustainability-index-2005_nat-resource-mgmt%3Aworld-economic-forum-survey-subsidies",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_nat-resource-mgmt:productivity-overfishing":{name:"esi-environmental-sustainability-index-2005_nat-resource-mgmt:productivity-overfishing",title:"Reducing Environmental Stresses: Productivity Overfishing",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-resource-mgmt&amp;style=esi-environmental-sustainability-index-2005_nat-resource-mgmt%3Aproductivity-overfishing",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_nat-resource-mgmt:agricultural-subsidies":{name:"esi-environmental-sustainability-index-2005_nat-resource-mgmt:agricultural-subsidies",title:"Reducing Environmental Stresses: Agricultural Subsidies",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_nat-resource-mgmt&amp;style=esi-environmental-sustainability-index-2005_nat-resource-mgmt%3Aagricultural-subsidies",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_particip-international-collaborate":{title:"ESI 2005 Participation in International Collaborations",name:"esi:esi-environmental-sustainability-index-2005_particip-international-collaborate",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_particip-international-collaborate",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_particip-international-collaborate:contribute-funding-to-international-environ-proj-devel-aid":{name:"esi-environmental-sustainability-index-2005_particip-international-collaborate:contribute-funding-to-international-environ-proj-devel-aid",title:"Global Stewardship: Contribution to International and Bilateral Funding of Environmental Projects and Development Aid",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_particip-international-collaborate&amp;style=esi-environmental-sustainability-index-2005_particip-international-collaborate%3Acontribute-funding-to-international-environ-proj-devel-aid",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_particip-international-collaborate:default":{name:"esi-environmental-sustainability-index-2005_particip-international-collaborate:default",title:"Global Stewardship: Participation in International Environmental Agreements",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_particip-international-collaborate&amp;style=esi-environmental-sustainability-index-2005_particip-international-collaborate%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_particip-international-collaborate:memberships-environ-intergovernmental-orgs":{name:"esi-environmental-sustainability-index-2005_particip-international-collaborate:memberships-environ-intergovernmental-orgs",title:"Global Stewardship: Number of Memberships in Environmental Intergovernmental Organizations",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_particip-international-collaborate&amp;style=esi-environmental-sustainability-index-2005_particip-international-collaborate%3Amemberships-environ-intergovernmental-orgs",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_private-sector-response":{title:"ESI 2005 Private Sector Response",name:"esi:esi-environmental-sustainability-index-2005_private-sector-response",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_private-sector-response",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_private-sector-response:default":{name:"esi-environmental-sustainability-index-2005_private-sector-response:default",title:"Social and Institutional Capacity: Dow Jones Sustainability Group Index (DJSGI)",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_private-sector-response&amp;style=esi-environmental-sustainability-index-2005_private-sector-response%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_private-sector-response:average-innovest-ecovalue-hqs-ratings":{name:"esi-environmental-sustainability-index-2005_private-sector-response:average-innovest-ecovalue-hqs-ratings",title:"Social and Institutional Capacity: Average Innovest EcoValue Rating of Firms Headquartered In A Country",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_private-sector-response&amp;style=esi-environmental-sustainability-index-2005_private-sector-response%3Aaverage-innovest-ecovalue-hqs-ratings",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_private-sector-response:particip-responsible-care-program-of-cma":{name:"esi-environmental-sustainability-index-2005_private-sector-response:particip-responsible-care-program-of-cma",title:"Social and Institutional Capacity: Participation in the Responsible Care Program of the Chemical Manufacturer's Association",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_private-sector-response&amp;style=esi-environmental-sustainability-index-2005_private-sector-response%3Aparticip-responsible-care-program-of-cma",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_private-sector-response:world-economic-forum-survey-private-sect-envir-innov":{name:"esi-environmental-sustainability-index-2005_private-sector-response:world-economic-forum-survey-private-sect-envir-innov",title:"Social and institutional Capacity: World Economic Forum Survey on Private Sector Environmental Innovation",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_private-sector-response&amp;style=esi-environmental-sustainability-index-2005_private-sector-response%3Aworld-economic-forum-survey-private-sect-envir-innov",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_private-sector-response:iso-14001-cert-companies-per-billion-gdp":{name:"esi-environmental-sustainability-index-2005_private-sector-response:iso-14001-cert-companies-per-billion-gdp",title:"Social and institutional Capacity: Number of ISO 14001 Certified Companies Per Billion Dollars GDP",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_private-sector-response&amp;style=esi-environmental-sustainability-index-2005_private-sector-response%3Aiso-14001-cert-companies-per-billion-gdp",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_reduce-air-pollution":{title:"ESI 2005 Reduction of Air Pollution",name:"esi:esi-environmental-sustainability-index-2005_reduce-air-pollution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-air-pollution",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_reduce-air-pollution:anthropogenic-so2-emissions-per-area":{name:"esi-environmental-sustainability-index-2005_reduce-air-pollution:anthropogenic-so2-emissions-per-area",title:"Reducing Environmental Stresses: Anthropogenic SO2 Emissions Per Populated Land Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-air-pollution&amp;style=esi-environmental-sustainability-index-2005_reduce-air-pollution%3Aanthropogenic-so2-emissions-per-area",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-air-pollution:anthropogenic-voc-emissions-per-area":{name:"esi-environmental-sustainability-index-2005_reduce-air-pollution:anthropogenic-voc-emissions-per-area",title:"Reducing Environmental Stresses: Anthropogenic VOC Emissions Per Populated Land Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-air-pollution&amp;style=esi-environmental-sustainability-index-2005_reduce-air-pollution%3Aanthropogenic-voc-emissions-per-area",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-air-pollution:default":{name:"esi-environmental-sustainability-index-2005_reduce-air-pollution:default",title:"Reducing Environmental Stresses: Anthropogenic NOx Emissions Per Populated Land Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-air-pollution&amp;style=esi-environmental-sustainability-index-2005_reduce-air-pollution%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-air-pollution:coal-consumption-per-area":{name:"esi-environmental-sustainability-index-2005_reduce-air-pollution:coal-consumption-per-area",title:"Reducing Environmental Stresses: Coal Consumption Per Populated Land Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-air-pollution&amp;style=esi-environmental-sustainability-index-2005_reduce-air-pollution%3Acoal-consumption-per-area",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-air-pollution:vehicles-used-per-area":{name:"esi-environmental-sustainability-index-2005_reduce-air-pollution:vehicles-used-per-area",title:"Reducing Environmental Stresses: Vehicles In Use Per Populated Land Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-air-pollution&amp;style=esi-environmental-sustainability-index-2005_reduce-air-pollution%3Avehicles-used-per-area",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_reduce-ecosystem-stress":{title:"ESI 2005 Reduction of Ecosystem Stress",name:"esi:esi-environmental-sustainability-index-2005_reduce-ecosystem-stress",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-ecosystem-stress",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_reduce-ecosystem-stress:default":{name:"esi-environmental-sustainability-index-2005_reduce-ecosystem-stress:default",title:"Reducing Environmental Stresses: Annual Average Forest Cover Change Rate From 1990 to 2000",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-ecosystem-stress&amp;style=esi-environmental-sustainability-index-2005_reduce-ecosystem-stress%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-ecosystem-stress:acidification-exceedance-anthropogenic-sulfur":{name:"esi-environmental-sustainability-index-2005_reduce-ecosystem-stress:acidification-exceedance-anthropogenic-sulfur",title:"Reducing Environmental Stresses: Acidification Exceedance From Anthropogenic Sulfur Deposition",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-ecosystem-stress&amp;style=esi-environmental-sustainability-index-2005_reduce-ecosystem-stress%3Aacidification-exceedance-anthropogenic-sulfur",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_reduce-pop-press":{title:"ESI 2005 Reduction of Population Pressure",name:"esi:esi-environmental-sustainability-index-2005_reduce-pop-press",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-pop-press",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_reduce-pop-press:projected-population-percentage-change-by-2050":{name:"esi-environmental-sustainability-index-2005_reduce-pop-press:projected-population-percentage-change-by-2050",title:"Reducing Environmental Stresses: Percentage Change In Projected Population 2004-2050",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-pop-press&amp;style=esi-environmental-sustainability-index-2005_reduce-pop-press%3Aprojected-population-percentage-change-by-2050",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-pop-press:default":{name:"esi-environmental-sustainability-index-2005_reduce-pop-press:default",title:"Reducing Environmental Stresses: Total Fertility Rate",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-pop-press&amp;style=esi-environmental-sustainability-index-2005_reduce-pop-press%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_reduce-trans-environ-press":{title:"ESI 2005 Reduction of Trans-Environmental Pressure",name:"esi:esi-environmental-sustainability-index-2005_reduce-trans-environ-press",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-trans-environ-press",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_reduce-trans-environ-press:so2-exports":{name:"esi-environmental-sustainability-index-2005_reduce-trans-environ-press:so2-exports",title:"Global Stewardship: SO2 Exports",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-trans-environ-press&amp;style=esi-environmental-sustainability-index-2005_reduce-trans-environ-press%3Aso2-exports",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-trans-environ-press:default":{name:"esi-environmental-sustainability-index-2005_reduce-trans-environ-press:default",title:"Global Stewardship: Import of Polluting Goods and Raw Materials as Percentage of  Total Imports of Goods and Services",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-trans-environ-press&amp;style=esi-environmental-sustainability-index-2005_reduce-trans-environ-press%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_reduce-waste-consump-press":{title:"ESI 2005 Reduction of Waste and Consumption Pressure",name:"esi:esi-environmental-sustainability-index-2005_reduce-waste-consump-press",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-waste-consump-press",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_reduce-waste-consump-press:generation-hazardous-wastes":{name:"esi-environmental-sustainability-index-2005_reduce-waste-consump-press:generation-hazardous-wastes",title:"Reducing Environmental Stresses: Generation of Hazardous Waste",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-waste-consump-press&amp;style=esi-environmental-sustainability-index-2005_reduce-waste-consump-press%3Ageneration-hazardous-wastes",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-waste-consump-press:default":{name:"esi-environmental-sustainability-index-2005_reduce-waste-consump-press:default",title:"Reducing Environmental Stresses: Ecological FootprintPer Capita",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-waste-consump-press&amp;style=esi-environmental-sustainability-index-2005_reduce-waste-consump-press%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-waste-consump-press:waste-recycling-rates":{name:"esi-environmental-sustainability-index-2005_reduce-waste-consump-press:waste-recycling-rates",title:"Reducing Environmental Stresses: Waste Recycling Rates",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-waste-consump-press&amp;style=esi-environmental-sustainability-index-2005_reduce-waste-consump-press%3Awaste-recycling-rates",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_reduce-water-stress":{title:"ESI 2005 Reduction of Water Stress",name:"esi:esi-environmental-sustainability-index-2005_reduce-water-stress",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-water-stress",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_reduce-water-stress:pesticide-consumption-per-hectare":{name:"esi-environmental-sustainability-index-2005_reduce-water-stress:pesticide-consumption-per-hectare",title:"Reducing Environmental Stresses: Pesticide Consumption Per Hectare of Arable Land",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-water-stress&amp;style=esi-environmental-sustainability-index-2005_reduce-water-stress%3Apesticide-consumption-per-hectare",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-water-stress:bod-emissions-per-freshwater":{name:"esi-environmental-sustainability-index-2005_reduce-water-stress:bod-emissions-per-freshwater",title:"Reducing Environmental Stresses: Industrial Organic Water Pollutant (BOD) Emissions Per Available Freshwater",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-water-stress&amp;style=esi-environmental-sustainability-index-2005_reduce-water-stress%3Abod-emissions-per-freshwater",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-water-stress:default":{name:"esi-environmental-sustainability-index-2005_reduce-water-stress:default",title:"Reducing Environmental Stresses: Percentage of Country Under Severe Water Stress",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-water-stress&amp;style=esi-environmental-sustainability-index-2005_reduce-water-stress%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_reduce-water-stress:fertilizer-consumption-per-hectare":{name:"esi-environmental-sustainability-index-2005_reduce-water-stress:fertilizer-consumption-per-hectare",title:"Reducing Environmental Stresses: Fertilizer Consumption Per Hectare of Arable Land",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_reduce-water-stress&amp;style=esi-environmental-sustainability-index-2005_reduce-water-stress%3Afertilizer-consumption-per-hectare",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_science-tech":{title:"ESI 2005 Science and Technology",name:"esi:esi-environmental-sustainability-index-2005_science-tech",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_science-tech",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_science-tech:researchers-per-million-inhabitants":{name:"esi-environmental-sustainability-index-2005_science-tech:researchers-per-million-inhabitants",title:"Social and Institutional Capacity: Number of Researchers Per Million Inhabitants",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_science-tech&amp;style=esi-environmental-sustainability-index-2005_science-tech%3Aresearchers-per-million-inhabitants",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_science-tech:female-education-completion-rate":{name:"esi-environmental-sustainability-index-2005_science-tech:female-education-completion-rate",title:"Social and Institutional Capacity: Female Primary Education Completion Rate",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_science-tech&amp;style=esi-environmental-sustainability-index-2005_science-tech%3Afemale-education-completion-rate",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_science-tech:default":{name:"esi-environmental-sustainability-index-2005_science-tech:default",title:"Social and Institutional Capacity: Digital Access Index",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_science-tech&amp;style=esi-environmental-sustainability-index-2005_science-tech%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_science-tech:gross-tertiary-enrollment-rate":{name:"esi-environmental-sustainability-index-2005_science-tech:gross-tertiary-enrollment-rate",title:"Social and Institutional Capacity: Gross Tertiary Enrollment Rate",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_science-tech&amp;style=esi-environmental-sustainability-index-2005_science-tech%3Agross-tertiary-enrollment-rate",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_science-tech:innovation-index":{name:"esi-environmental-sustainability-index-2005_science-tech:innovation-index",title:"Social and Institutional Capacity: Innovation Index",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_science-tech&amp;style=esi-environmental-sustainability-index-2005_science-tech%3Ainnovation-index",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_water-quality":{title:"ESI 2005 Water Quality",name:"esi:esi-environmental-sustainability-index-2005_water-quality",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_water-quality",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_water-quality:default":{name:"esi-environmental-sustainability-index-2005_water-quality:default",title:"Environmental Systems: Dissolved Oxygen Concentration",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_water-quality&amp;style=esi-environmental-sustainability-index-2005_water-quality%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_water-quality:electrical-conductivity":{name:"esi-environmental-sustainability-index-2005_water-quality:electrical-conductivity",title:"Environmental Systems: Electrical Conductivity",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_water-quality&amp;style=esi-environmental-sustainability-index-2005_water-quality%3Aelectrical-conductivity",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_water-quality:phosphorus-concentration":{name:"esi-environmental-sustainability-index-2005_water-quality:phosphorus-concentration",title:"Environmental Systems: Phosphorus Concentration",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_water-quality&amp;style=esi-environmental-sustainability-index-2005_water-quality%3Aphosphorus-concentration",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_water-quality:suspended-solids":{name:"esi-environmental-sustainability-index-2005_water-quality:suspended-solids",title:"Environmental Systems:  Suspended Solids",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_water-quality&amp;style=esi-environmental-sustainability-index-2005_water-quality%3Asuspended-solids",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"esi-environmental-sustainability-index-2005_water-quantity":{title:"ESI 2005 Water Quantity",name:"esi:esi-environmental-sustainability-index-2005_water-quantity",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_water-quantity",width:"20",height:"20",format:"image/png"},style:{"esi-environmental-sustainability-index-2005_water-quantity:groundwater-availability-per-capita":{name:"esi-environmental-sustainability-index-2005_water-quantity:groundwater-availability-per-capita",title:"Environmental Systems: Internal Groundwater Availability Per Capita",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_water-quantity&amp;style=esi-environmental-sustainability-index-2005_water-quantity%3Agroundwater-availability-per-capita",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"esi-environmental-sustainability-index-2005_water-quantity:default":{name:"esi-environmental-sustainability-index-2005_water-quantity:default",title:"Environmental Systems: Freshwater Availability Per Capita",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esi-environmental-sustainability-index-2005_water-quantity&amp;style=esi-environmental-sustainability-index-2005_water-quantity%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}}}}}},"cartographic":{title:"Cartographic",layers:{"esri-administrative-boundaries_level-1":{title:"ESRI Administrative Boundaries - Level 1",name:"cartographic:esri-administrative-boundaries_level-1",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esri-administrative-boundaries_level-1",width:"20",height:"20",format:"image/png"},style:{"esri-administrative-boundaries_level-1:default":{name:"esri-administrative-boundaries_level-1:default",title:"ESRI Administrative Boundaries - Level 1",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=esri-administrative-boundaries_level-1",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-85.47",maxy:"83.624"}},"national-boundaries":{title:"National Boundaries",name:"cartographic:national-boundaries",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Layer-Group type layer: cartographic:national-boundaries",boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"00-grump-v1-national-admin-boundaries":{title:"National Boundaries Large Scale",name:"cartographic:00-grump-v1-national-admin-boundaries",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"National Boundaries Large Scale represents high resolution administrative boundaries for 231 world countries.  This data was derived by the GRUMP Beta project and has been designed be visible at scales larger than 2 Arc Minutes.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=00-grump-v1-national-admin-boundaries",width:"20",height:"20",format:"image/png"},style:{"grump-v1-national-admin-boundaries:default":{name:"grump-v1-national-admin-boundaries:default",title:"National Boundaries Large Scale",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=00-grump-v1-national-admin-boundaries",width:"20",cached_url:null,height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.767",maxy:"83.633"}},"00-global-labels":{title:"Global Labels",name:"cartographic:00-global-labels",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=00-global-labels",width:"20",height:"20",format:"image/png"},style:{"global-labels:default":{name:"global-labels:default",title:"Global Administrative Labels",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=00-global-labels",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-177.225",maxx:"178.45",miny:"-51.741",maxy:"78.877"}},"00-gpw-v3-national-admin-boundaries":{title:"National Boundaries Medium Scale",name:"cartographic:00-gpw-v3-national-admin-boundaries",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"National Boundaries Medium Scale represents medium resolution administrative boundaries for 231 world countries.  This data was derived by the GPWv3 project and has been designed be visible at scales between 20 Arc Minutes and 2 Arc Minutes.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=00-gpw-v3-national-admin-boundaries",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-national-admin-boundaries:default":{name:"gpw-v3-national-admin-boundaries:default",title:"National Boundaries Medium Scale",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=00-gpw-v3-national-admin-boundaries",width:"20",cached_url:null,height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"00-gpw-v3-national-admin-boundaries_generalized":{title:"National Boundaries Small Scale",name:"cartographic:00-gpw-v3-national-admin-boundaries_generalized",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"National Boundaries Small Scale represent low resolution generalized administrative boundaries for 231 world countries.  This data was derived through the generalization of GPWv3 National Boundaries and designed to be viewed at scales smaller than 20 Arc Minutes",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=00-gpw-v3-national-admin-boundaries_generalized",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-national-admin-boundaries_generalized:default":{name:"gpw-v3-national-admin-boundaries_generalized:default",title:"National Boundaries Small Scale",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=00-gpw-v3-national-admin-boundaries_generalized",width:"20",cached_url:null,height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.625"}}}},"grump-v1":{title:"Global Rural-Urban Mapping Project",datasets:{"grump-v1-land-geographic-unit-area":{title:"Land and Geographic Unit Area Grids",version:"1.00",layers:{"grump-v1-land-geographic-unit-area":{title:"GRUMP v1 Mean Geographic Unit Area",name:"grump-v1:grump-v1-land-geographic-unit-area",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-land-geographic-unit-area",width:"20",height:"20",format:"image/png"},style:{"grump-v1-land-geographic-unit-area:default":{name:"grump-v1-land-geographic-unit-area:default",title:"GRUMP v1 Mean Geographic Unit Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-land-geographic-unit-area&amp;style=grump-v1-land-geographic-unit-area%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-57.0",maxy:"84.0"}}}},"grump-v1-population-count":{title:"Population Count Grid",version:"1.00",layers:{"grump-v1-population-count_1990":{title:"GRUMP  v1 Population Count 1990",name:"grump-v1:grump-v1-population-count_1990",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Rural-Urban Mapping Project, Version 1 (GRUMPv1) consists of estimates of human population for the years 1990, 1995, and 2000 by 30 arc-second (1km) grid cells and associated datasets dated circa 2000. A proportional allocation gridding algorithm, utilizing more than 1,000,000 national and sub-national geographic units, is used to assign population values (counts, in persons) to grid cells. This dataset is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the International Food Policy Research Institute (IFPRI), The World Bank, and Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-count_1990",width:"20",height:"20",format:"image/png"},style:{"grump-v1-population-count_1990:default":{name:"grump-v1-population-count_1990:default",title:"GRUMP Population Count 1990",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-count_1990",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"grump-v1-population-count_1995":{title:"GRUMP v1 Population Count 1995",name:"grump-v1:grump-v1-population-count_1995",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Rural-Urban Mapping Project, Version 1 (GRUMPv1) consists of estimates of human population for the years 1990, 1995, and 2000 by 30 arc-second (1km) grid cells and associated datasets dated circa 2000. A proportional allocation gridding algorithm, utilizing more than 1,000,000 national and sub-national geographic units, is used to assign population values (counts, in persons) to grid cells. This dataset is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the International Food Policy Research Institute (IFPRI), The World Bank, and Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-count_1995",width:"20",height:"20",format:"image/png"},style:{"grump-v1-population-count_1995:default":{name:"grump-v1-population-count_1995:default",title:"GRUMP Population Count 1995",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-count_1995",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"grump-v1-population-count_2000":{title:"GRUMP v1 Population Count 2000",name:"grump-v1:grump-v1-population-count_2000",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Rural-Urban Mapping Project, Version 1 (GRUMPv1) consists of estimates of human population for the years 1990, 1995, and 2000 by 30 arc-second (1km) grid cells and associated datasets dated circa 2000. A proportional allocation gridding algorithm, utilizing more than 1,000,000 national and sub-national geographic units, is used to assign population values (counts, in persons) to grid cells. This dataset is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the International Food Policy Research Institute (IFPRI), The World Bank, and Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-count_2000",width:"20",height:"20",format:"image/png"},style:{"grump-v1-population-count_2000:default":{name:"grump-v1-population-count_2000:default",title:"GRUMP Population Count 2000",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-count_2000",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"grump-v1-population-density":{title:"Population Density Grid",version:"1.00",layers:{"grump-v1-population-density_1990":{title:"GRUMP v1 Population Density 1990",name:"grump-v1:grump-v1-population-density_1990",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-density_1990",width:"20",height:"20",format:"image/png"},style:{"grump-v1-population-density_1990:default":{name:"grump-v1-population-density_1990:default",title:"GRUMP v1 Population Density 1990",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-density_1990&amp;style=grump-v1-population-density_1990%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"grump-v1-population-density_1995":{title:"GRUMP v1 Population Density 1995",name:"grump-v1:grump-v1-population-density_1995",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-density_1995",width:"20",height:"20",format:"image/png"},style:{"grump-v1-population-density_1995:default":{name:"grump-v1-population-density_1995:default",title:"GRUMP v1 Population Density 1995",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-density_1995&amp;style=grump-v1-population-density_1995%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"grump-v1-population-density_2000":{title:"GRUMP v1 Population Density 2000",name:"grump-v1:grump-v1-population-density_2000",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-density_2000",width:"20",height:"20",format:"image/png"},style:{"grump-v1-population-density_2000:default":{name:"grump-v1-population-density_2000:default",title:"GRUMP v1 Population Density 2000",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-population-density_2000&amp;style=grump-v1-population-density_2000%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"grump-v1-urban-extents":{title:"Urban Extents Grid",version:"1.00",layers:{"grump-v1-urban-extents":{title:"GRUMP v1 Urban Extents",name:"grump-v1:grump-v1-urban-extents",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Rural-Urban Mapping Project, Version 1 (GRUMPv1) consists of estimates of human population for the years 1990, 1995, and 2000 by 30 arc-second (1km) grid. The urban extent grids distinguish urban and rural areas based on a combination of population counts (persons), settlement points, and the presence of Nighttime Lights . Areas are defined as urban where contiguous lighted cells from the Nighttime Lights or approximated urban extents based on buffered settlement points for which the total population is greater than 5,000 persons. This dataset is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the International Food Policy Research Institute (IFPRI), The World Bank, and Centro Internacional de Agricultura Tropical (CIAT)",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-urban-extents",width:"20",height:"20",format:"image/png"},style:{"grump-v1-urban-extents:default":{name:"grump-v1-urban-extents:default",title:"Urban Extent",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-urban-extents&amp;style=grump-v1-urban-extents%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.008",miny:"-57.0",maxy:"84.0"}}}},"grump-v1-settlement-points":{title:"Settlement Points",version:"1.00",layers:{"grump-v1-settlement-points":{title:"GRUMP v1 Settlement Points",name:"grump-v1:grump-v1-settlement-points",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Rural-Urban Mapping Project, Version 1 (GRUMPv1) consists of estimates of human population for the years 1990, 1995, and 2000 by 30 arc-second (1km) grid cells and associated datasets dated circa 2000. A proportional allocation gridding algorithm, utilizing more than 1,000,000 national and sub-national geographic units, is used to assign population values (counts, in persons) to grid cells. This dataset is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the International Food Policy Research Institute (IFPRI), The World Bank, and Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-settlement-points",width:"20",height:"20",format:"image/png"},style:{"grump-v1-settlement-points:default":{name:"grump-v1-settlement-points:default",title:"GRUMP v1 Settlement Points",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=grump-v1-settlement-points&amp;style=grump-v1-settlement-points%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-178.174",maxx:"179.853",miny:"-54.8",maxy:"78.93"}}}}}},"other":{title:"Other",layers:{"wwf-terrestrial-biomes":{title:"Terrestrial Biomes from WWF",name:"other:wwf-terrestrial-biomes",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"This layer depicts the 16 terrestrial biomes used in the 2007 NRMI Natural Resource Management Index (NRMI). The biomes are derived from the World Wildlife Fund (WWF) ecoregions layer.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wwf-terrestrial-biomes",width:"20",height:"20",format:"image/png"},style:{"wwf-terrestrial-biomes:default":{name:"wwf-terrestrial-biomes:default",title:"Terrestrial Biomes from WWF",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wwf-terrestrial-biomes&amp;style=wwf-terrestrial-biomes%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-89.892",maxy:"83.623"}},"wcmc-world-database-of-protected-areas":{title:"World Database of Protected Areas",name:"other:wcmc-world-database-of-protected-areas",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"This protected areas mask is a modified version of the World Database of Protected Areas (WDPA) Annual Release 2007 (web-download version), December 2007.The WDPA is a joint product of UNEP and IUCN, prepared by UNEP-WCMC, supported by IUCN WCPA and working with Governments, the Secretariats of MEAs and collaborating NGOs. The protected areas mask was created from national and international protected areas in the WDPA, excluding historical, archaeological, or cultural sites. The centroids of protected areas without boundary information were buffered according to the size of the protected area, and these buffered points were then merged with the protected areas with boundary information (polygons).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wcmc-world-database-of-protected-areas",width:"20",height:"20",format:"image/png"},style:{"wcmc-world-database-of-protected-areas:default":{name:"wcmc-world-database-of-protected-areas:default",title:"WCMC World Database of Protected Areas",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=wcmc-world-database-of-protected-areas&amp;style=wcmc-world-database-of-protected-areas%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.749",maxy:"83.634"}}}},"ndh":{title:"Natural Disaster Hotspots",datasets:{"ndh-cyclone-hazard-frequency-distribution":{title:"Global Cyclone Hazard Frequency and Distribution",version:"1.00",layers:{"ndh-cyclone-hazard-frequency-distribution":{title:"Cyclone Hazard Frequency Distribution",name:"ndh:ndh-cyclone-hazard-frequency-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Cyclone Hazard Frequency and Distribution is a 2.5 minute grid based on more than 1,600 storm tracks for the period 1 January 1980 through 31 December 2000 for the Atlantic, Pacific, and Indian Oceans that were assembled and modeled at UNEP/GRID-Geneva PreView. Windspeeds around storm tracks were modeled using Holland's model (1997) to assess the grid cells likely to have been exposed to high wind levels. Post-modeling, the cells were divided into deciles, 10 classes consisting of approximately equal number of grid cells. The higher the value of the grid cell, the higher the decile ranking and the greater the frequency of the hazard relative to other cells. This dataset is the result of collaboration among the Columbia University Center for Hazards and Risk Research (CHRR), International Bank for Reconstruction and Development/The World Bank, United Nations Environment Programme Global Resource Information Database Geneva (UNEP/GRID-Geneva), and Columbia University Center for International Earth Science Information Network (CIESIN).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-cyclone-hazard-frequency-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-cyclone-hazard-frequency-distribution:default":{name:"ndh-cyclone-hazard-frequency-distribution:default",title:"Cyclone Hazard Frequency and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-cyclone-hazard-frequency-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.027",maxx:"180.01",miny:"-57.0",maxy:"72.02"}}}},"ndh-earthquake-proportional-economic-loss-risk-deciles":{title:"Global Earthquake Proportional Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-earthquake-proportional-economic-loss-risk-deciles":{title:"Earthquake Proportional Economic Loss Risk Deciles",name:"ndh:ndh-earthquake-proportional-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Earthquake Proportional Economic Loss Risk Deciles is a 2.5 minute grid of earthquake hazard economic loss as proportions of Gross Domestic Product (GDP) per analytical unit. Estimates of GDP at risk are based on regional economic loss rates derived from historical records of the Emergency Events Database (EM-DAT). Loss rates are weighted by the hazard's frequency and distribution. The methodology of Sachs et al. (2003) is followed to determine baseline estimates of GDP per grid cell. To better reflect the confidence surrounding the data and procedures, the range of proportionalities is classified into deciles, 10 class of an approximately equal number of grid cells of increasing risk. This data is intended to provide a spatial surface of the proportional economic impacts of global earthquake hazard.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-proportional-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-earthquake-proportional-economic-loss-risk-deciles:default":{name:"ndh-earthquake-proportional-economic-loss-risk-deciles:default",title:"Global Earthquake Proportional Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-proportional-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-182.0",maxx:"192.003",miny:"-58.015",maxy:"85.028"}}}},"ndh-drought-mortality-risks-distribution":{title:"Global Drought Mortality Risks and Distribution",version:"1.00",layers:{"ndh-drought-mortality-risks-distribution":{title:"Drought Mortality Risks and Distribution",name:"ndh:ndh-drought-mortality-risks-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Drought Mortality Risks and Distribution is a 2.5 minute grid of global drought mortality risks. Gridded Population of the World, Version 3 (GPWv3) data provide a baseline estimation of population per grid cell from which to estimate potential mortality risks due to drought hazard. Mortality loss estimates per hazard event are calculated using regional, hazard-specific mortality records of the Emergency Events Database (EM-DAT) that span the 20 years between 1981 and 2000. Data regarding the frequency and distribution of drought hazard are obtained from the Global Drought Hazard Frequency and Distribution dataset. In order to more accurately reflect the confidence associated with the data and procedures, the potential mortality estimate range is classified into deciles, 10 classes of increasing risk with an approximately equal number of grid cells per class, producing a relative estimate of drought-based mortality risks. This data is intended to provide a means of assessing global drought mortality risks and distribution.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-drought-mortality-risks-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-drought-mortality-risks-distribution:default":{name:"ndh-drought-mortality-risks-distribution:default",title:"Global Drought Mortality Risks and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-drought-mortality-risks-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-drought-hazard-frequency-distribution":{title:"Global Drought Hazard Frequency and Distribution",version:"1.00",layers:{"ndh-drought-hazard-frequency-distribution":{title:"Drought Hazard Frequency and Distribution",name:"ndh:ndh-drought-hazard-frequency-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-drought-hazard-frequency-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-drought-hazard-frequency-distribution:default":{name:"ndh-drought-hazard-frequency-distribution:default",title:"Drought Hazard Frequency and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-drought-hazard-frequency-distribution&amp;style=ndh-drought-hazard-frequency-distribution%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}}}},"ndh-earthquake-total-economic-loss-risk-deciles":{title:"Global Earthquake Total Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-earthquake-total-economic-loss-risk-deciles":{title:"Earthquake Total Economic Loss Risk Deciles",name:"ndh:ndh-earthquake-total-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Earthquake Total Economic Loss Risk Deciles is a 2.5 minute grid of global earthquake total economic loss risks. A process of spatially allocating Gross Domestic Product (GDP) based upon the Sachs et al. (2003) methodology is utilized. First the proportional contributions of subnational units to their respective national GDP are determined using sources of various origin. The contribution rates are then applied to published World Bank Development Indicators to determine a GDP value for the subnational unit. Once the national GDP has been spatially stratified into the smallest administrative units available, GDP values for grid cells are derived using Gridded Population of the World, Version 3 (GPWv3) data population distributions. A per capita contribution value is determined within each subnational unit, and then this value is multiplied by the population per grid cell. Once a GDP value has been determined on a per grid cell basis, then the regionally variable loss rate as derived from the historical records of EM-DAT is used to determine the total economic loss risks posed to a grid cell by earthquake hazards. The final surface does not present absolute values of total economic loss, but rather a relative decile (1-10 with increasing risk) ranking of grid cells based upon the calculated economic loss risks. This data is intended to provide insight into the relative frequency, distribution, and potential impact of global earthquake hazard events in relation to subnational distributions of GDP.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-total-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-earthquake-total-economic-loss-risk-deciles:default":{name:"ndh-earthquake-total-economic-loss-risk-deciles:default",title:"Global Earthquake Total Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-total-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"181.998",miny:"-58.0",maxy:"86.991"}}}},"ndh-flood-mortality-risks-distribution":{title:"Global Flood Mortality Risks and Distribution",version:"1.00",layers:{"ndh-flood-mortality-risks-distribution":{title:"Flood Mortality Risks and Distribution",name:"ndh:ndh-flood-mortality-risks-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Flood Mortality Risks and Distribution is a 2.5 minute grid of global flood mortality risks. Gridded Population of the World, Version 3 (GPWv3) data provided a baseline population per grid cell from which to estimate potential mortality risks due to flood hazard. Mortality loss estimates per flood event are calculated using regional, hazard-specific mortality records of the Emergency Events Database (EM-DAT) that span the 20 years between 1981 and 2000. Data regarding the frequency and distribution of flood hazard are obtained from the Global Flood Hazard Frequency and Distribution dataset. In order to more accurately reflect the confidence associated with the data and the procedures, the potential mortality estimate range is classified into deciles, 10 classes of increasing hazard with an approximately equal number of grid cells per class, producing a relative estimate of flood-based mortality risks. This data is intended to provide a means of assessing global flood mortality risks and distribution.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-flood-mortality-risks-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-flood-mortality-risks-distribution:default":{name:"ndh-flood-mortality-risks-distribution:default",title:"Global Flood Mortality Risks and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-flood-mortality-risks-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-cyclone-total-economic-loss-risk-deciles":{title:"Global Cyclone Total Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-cyclone-total-economic-loss-risk-deciles":{title:"Cyclone Total Economic Loss Risk Deciles",name:"ndh:ndh-cyclone-total-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Cyclone Total Economic Loss Risk Deciles is a 2.5 minute grid of global cyclone total economic loss risks. A process of spatially allocating Gross Domestic Product (GDP) based upon the Sachs et al. (2003) methodology is utilized. First the proportional contributions of subnational units to their respective national GDP are determined using sources of various origins. The contribution rates are then applied to published World Bank Development Indicators to determine a GDP value for the subnational unit. Once the national GDP is spatially stratified into the smallest administrative units available, GDP values for grid cells are derived using population distribution data. A per capita contribution value is determined within each subnational unit, and this value is multiplied by the population per grid cell as determined from Gridded Population of the World, Version 3 (GPWv3) data. Once a GDP value is determined on a per grid cell basis, then the regionally variable loss rate, as derived from the historical records of EM-DAT, is used to determine the total economic loss risks posed to a grid cell by cyclone hazards. The final surface does not present absolute values of total economic loss, but rather a relative decile (1-10 with increasing risk) ranking of grid cells based upon the calculated economic loss risks. This data is intended to provide insight into the relative frequency, distribution, and potential impact of global cyclone hazard events in relation to subnational distributions of GDP.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-cyclone-total-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-cyclone-total-economic-loss-risk-deciles:default":{name:"ndh-cyclone-total-economic-loss-risk-deciles:default",title:"Global Cyclone Total Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-cyclone-total-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"179.996",miny:"-58.0",maxy:"84.989"}}}},"ndh-volcano-total-economic-loss-risk-deciles":{title:"Global Volcano Total Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-volcano-total-economic-loss-risk-deciles":{title:"Volcano Total Economic Loss Risk Deciles",name:"ndh:ndh-volcano-total-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Volcano Total Economic Loss Risk Deciles is a 2.5 minute grid of global volcano total economic loss risks. First, subnational distributions of Gross Domestic Product (GDP) are computed using a two-fold process. Where applicable, the proportional contribution of subnational units are determined following the methodology of Sachs et al. (2003) and these proportions are used against World Bank Development Indicators to determine a GDP value for the subnational unit. Once a national GDP has been spatially stratified into the smallest administrative units available, it is further distributed based upon Gridded Population of the World, Version 3 (GPWv3) population distributions. A per capita contribution value is determined for each unit, and this value is multiplied by the population per grid cell. Once the GDP has been determined on a per grid cell basis, then the spatially variable loss rate as derived from EM-DAT historical records is used to determine the total economic loss posed to a grid cell by volcano hazards. The final surface does not present absolute values of total economic loss, but rather a relative decile (1-10) ranking of grid cells based upon the calculated economic loss risks. This data is intended to provide insight into the relative frequency, distribution, and potential impact of global volcano hazard events to subnational distributions of GDP.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-volcano-total-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-volcano-total-economic-loss-risk-deciles:default":{name:"ndh-volcano-total-economic-loss-risk-deciles:default",title:"Global Volcano Total Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-volcano-total-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"179.996",miny:"-58.0",maxy:"84.989"}}}},"ndh-earthquake-mortality-risks-distribution":{title:"Global Earthquake Mortality Risks and Distribution",version:"1.00",layers:{"ndh-earthquake-mortality-risks-distribution":{title:"Earthquake Mortality Risks and Distribution",name:"ndh:ndh-earthquake-mortality-risks-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Earthquake Mortality Risks and Distribution is a 2.5 minute grid of global earthquake mortality risks. Gridded Population of the World, Version 3 (GPWv3) data provides a baseline estimate of population per grid cell from which to estimate potential mortality risks due to earthquake hazard. Mortality loss estimates per hazard event are calculated using regional, hazard-specific mortality records of the Emergency Events Database (EM-DAT) that span the 20 years between 1981 and 2000. Data regarding the distribution of earthquake hazard are obtained from the Global Earthquake Hazard Distribution-peak ground acceleration dataset. In order to more accurately reflect the confidence associated with the data and procedures, the potential mortality estimate range is classified into deciles, 10 classes of increasing risk with an approximately equal number of grid cells per class, producing a relative estimate of earthquake-based mortality risks. This data is intended to provide a means of assessing global earthquake mortality risks and distribution.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-mortality-risks-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-earthquake-mortality-risks-distribution:default":{name:"ndh-earthquake-mortality-risks-distribution:default",title:"Global Earthquake Mortality Risks and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-mortality-risks-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-182.0",maxx:"192.003",miny:"-58.015",maxy:"85.028"}}}},"ndh-flood-total-economic-loss-risk-deciles":{title:"Global Flood Total Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-flood-total-economic-loss-risk-deciles":{title:"Flood Total Economic Loss Risk Deciles",name:"ndh:ndh-flood-total-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Landslide Total Economic Loss Risk Deciles is a 2.5 minute grid of global landslide total economic loss risks. A process of spatially allocating Gross Domestic Product (GDP) based upon the Sachs et al. (2003) methodology is utilized. First the proportional contributions of subnational units to their respective national GDP are determined using sources of various origins. The contribution rates are then applied to published World Bank Development Indicators to determine a GDP value for the subnational unit. Once the national GDP has been spatially stratified into the smallest administrative units available, GDP values for grid cells are derived using Gridded Population of the World, Version 3 (GPWv3) data of population distributions. A per capita contribution value is determined within each subnational unit, and this value is multiplied by the population per grid cell. Once a GDP value has been determined on a per grid cell basis, then the regionally variable loss rate as derived from the historical records of EM-DAT is used to determine the total economic loss risks posed to a grid cell by landslide hazards. The final surface does not present absolute values of total economic loss, but rather a relative decile (1-10 with increasing risk) ranking of grid cells based upon the calculated economic loss risks. This data is intended to provide insight into the relative frequency, distribution, and potential impact of global earthquake hazard events in relation to subnational distributions of GDP.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-flood-total-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-flood-total-economic-loss-risk-deciles:default":{name:"ndh-flood-total-economic-loss-risk-deciles:default",title:"Global Flood Total Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-flood-total-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"179.996",miny:"-58.0",maxy:"84.989"}}}},"ndh-volcano-mortality-risks-distribution":{title:"Global Volcano Mortality Risks and Distribution",version:"1.00",layers:{"ndh-volcano-mortality-risks-distribution":{title:"Volcano Mortality Risks and Distribution",name:"ndh:ndh-volcano-mortality-risks-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Volcano Mortality Risks and Distribution is a 2.5 minute grid representing global volcano mortality risks. The data set was constructed using historical hazard-specific mortality loss data from the Emergency Events Database (EM-DAT) maintained by the Centre for Research on the Epidemiology of Disasters (CRED), subnational year 2000 population estimates from Gridded Population of the World, Version 3 (GPWv3), and volcano hazard data from the Global Volcano Hazard Frequency and Distribution dataset. Estimates were made as to the mortality numbers associated with volcano hazard. In turn, these mortality estimates were classified into deciles, 10 class of an approximately equal number of grid cells of increasing mortality risk. This data is intended to provide a means of assessing global volcano mortality risks and distribution.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-volcano-mortality-risks-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-volcano-mortality-risks-distribution:default":{name:"ndh-volcano-mortality-risks-distribution:default",title:"Global Volcano Mortality Risks and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-volcano-mortality-risks-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-cyclone-mortality-risks-distribution":{title:"Global Cyclone Mortality Risks and Distribution",version:"1.00",layers:{"ndh-cyclone-mortality-risks-distribution":{title:"Cyclone Mortality Risks Distribution",name:"ndh:ndh-cyclone-mortality-risks-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Cyclone Mortality Risks and Distribution is a 2.5 minute grid of global cyclone mortality risks. Gridded Population of the World, Version 3 (GPWv3) data provide a baseline estimation of population per grid cell from which to estimate potential mortality loss. Mortality loss estimates per hazard event are calculated using regional, hazard-specific mortality records of the Emergency Events Database (EM-DAT) that span the 20 years between 1981 and 2000. Data regarding the frequency and distribution of cyclone hazard are obtained from the Global Cyclone Hazard Frequency and Distribution dataset. In order to more accurately reflect the confidence associated with the data and procedures, the potential mortality estimate range is classified into deciles, 10 classes of an approximately equal number of grid cells, providing a relative estimate of cyclone-based mortality risks.  This data is intended to provide a means of assessing global cyclone mortality risks and distribution.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-cyclone-mortality-risks-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-cyclone-mortality-risks-distribution:default":{name:"ndh-cyclone-mortality-risks-distribution:default",title:"Global Cyclone Mortality Risks and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-cyclone-mortality-risks-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-182.0",maxx:"192.007",miny:"-58.015",maxy:"85.016"}}}},"ndh-cyclone-proportional-economic-loss-risk-deciles":{title:"Global Cyclone Proportional Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-cyclone-proportional-economic-loss-risk-deciles":{title:"Cyclone Proportional Economic Loss Risk Deciles",name:"ndh:ndh-cyclone-proportional-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Cyclone Proportional Economic Loss Risk Deciles is a 2.5 minute grid of cyclone hazard economic loss as proportions of Gross Domestic Product (GDP) per analytical unit. Estimates of GDP at risk are based on regional economic loss rates derived from historical records of the Emergency Events Database (EM-DAT). Loss rates are weighted by the hazard's frequency and distribution. The methodology of Sachs et al. (2003) is followed to determine baseline estimates of GDP per grid cell. To better reflect the confidence surrounding the data and procedures, the range of proportionalities is classified into deciles, 10 class of an approximately equal number of grid cells of increasing risk. This data is intended to provide a spatial surface of the proportional economic impacts of global cyclone hazard.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-cyclone-proportional-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-cyclone-proportional-economic-loss-risk-deciles:default":{name:"ndh-cyclone-proportional-economic-loss-risk-deciles:default",title:"Global Cyclone Proportional Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-cyclone-proportional-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-earthquake-distribution-peak-ground-acceleration":{title:"Global Earthquake Hazard Distribution - Peak Ground Acceleration",version:"1.00",layers:{"ndh-earthquake-distribution-peak-ground-acceleration":{title:"Earthquake Hazard Distribution - Peak Ground Acceleration",name:"ndh:ndh-earthquake-distribution-peak-ground-acceleration",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-distribution-peak-ground-acceleration",width:"20",height:"20",format:"image/png"},style:{"ndh-earthquake-distribution-peak-ground-acceleration:default":{name:"ndh-earthquake-distribution-peak-ground-acceleration:default",title:"Earthquake Hazard Distribution - Peak Ground Acceleration",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-distribution-peak-ground-acceleration&amp;style=ndh-earthquake-distribution-peak-ground-acceleration%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"ndh-landslide-total-economic-loss-risk-deciles":{title:"Global Landslide Total Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-landslide-total-economic-loss-risk-deciles":{title:"Landslide Total Economic Loss Risk Deciles",name:"ndh:ndh-landslide-total-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Landslide Total Economic Loss Risk Deciles is a 2.5 minute grid of global landslide total economic loss risks. A process of spatially allocating Gross Domestic Product (GDP) based upon the Sachs et al. (2003) methodology is utilized. First the proportional contributions of subnational units to their respective national GDP are determined using sources of various origins. The contribution rates are then applied to published World Bank Development Indicators to determine a GDP value for the subnational unit. Once the national GDP has been spatially stratified into the smallest administrative units available, GDP values for grid cells are derived using Gridded Population of the World, Version 3 (GPWv3) data of population distributions. A per capita contribution value is determined within each subnational unit, and this value is multiplied by the population per grid cell. Once a GDP value has been determined on a per grid cell basis, then the regionally variable loss rate as derived from the historical records of EM-DAT is used to determine the total economic loss risks posed to a grid cell by landslide hazards. The final surface does not present absolute values of total economic loss, but rather a relative decile (1-10 with increasing risk) ranking of grid cells based upon the calculated economic loss risks. This data is intended to provide insight into the relative frequency, distribution, and potential impact of global earthquake hazard events in relation to subnational distributions of GDP.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-landslide-total-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-landslide-total-economic-loss-risk-deciles:default":{name:"ndh-landslide-total-economic-loss-risk-deciles:default",title:"Global Landslide Total Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-landslide-total-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"179.996",miny:"-58.0",maxy:"84.989"}}}},"ndh-landslide-mortality-risks-distribution":{title:"Global Landslide Mortality Risks and Distribution",version:"1.00",layers:{"ndh-landslide-mortality-risks-distribution":{title:"Landslide Mortality Risks and Distribution",name:"ndh:ndh-landslide-mortality-risks-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Landslide Mortality Risks and Distribution is a 2.5 minute grid of global landslide mortality risks. Gridded Population of the World, Version 3 (GPWv3) data provide a baseline estimation of population per grid cell from which to estimate potential mortality risks due to landslide hazard. Mortality loss estimates per hazard event are calculated using regional, hazard-specific mortality records of the Emergency Events Database (EM-DAT) that span the 20 years between 1981 and 2000. Data regarding the frequency and distribution of landslide hazard are obtained from the Global Landslide Hazard Distribution dataset. In order to more accurately reflect the confidence associated with the data and procedures, the potential mortality estimate range is classified into deciles, 10 classes of increasing risk with an approximately equal number of grid cells per class, producing a relative estimate of landslide-based mortality risks. This data is intended to provide a means of assessing global landslide mortality risks and distribution.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-landslide-mortality-risks-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-landslide-mortality-risks-distribution:default":{name:"ndh-landslide-mortality-risks-distribution:default",title:"Global Landslide Mortality Risks and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-landslide-mortality-risks-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-drought-proportional-economic-loss-risk-deciles":{title:"Global Drought Proportional Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-drought-proportional-economic-loss-risk-deciles":{title:"Drought Proportional Economic Loss Risk Deciles",name:"ndh:ndh-drought-proportional-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Drought Proportional Economic Loss Risk Deciles is a 2.5 minute grid of drought hazard economic loss as proportions of Gross Domestic Product (GDP) per analytical unit. Estimates of GDP at risk are based on regional economic loss rates derived from historical records of the Emergency Events Database (EM-DAT). Loss rates are weighted by the hazard's frequency and distribution. The methodology of Sachs et al. (2003) is followed to determine baseline estimates of GDP per grid cell. To better reflect the confidence surrounding the data and procedures, the range of proportionalities is classified into deciles, 10 class of an approximately equal number of grid cells of increasing risk. This data is intended to provide a spatial surface of the proportional economic impacts of global drought hazard.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-drought-proportional-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-drought-proportional-economic-loss-risk-deciles:default":{name:"ndh-drought-proportional-economic-loss-risk-deciles:default",title:"Global Drought Proportional Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-drought-proportional-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-landslide-hazard-frequency-distribution":{title:"ndh:ndh-landslide-hazard-frequency-distribution",version:"",layers:{"ndh-landslide-hazard-frequency-distribution":{title:"Landslide Hazard Frequency Distribution",name:"ndh:ndh-landslide-hazard-frequency-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Landslide Hazard Distribution is a 2.5 minute grid of global landslide and snow avalanche hazards based upon work of the Norwegian Geotechnical Institute (NGI). The hazards mapping of NGI incorporates a range of data including slope, soil, soil moisture conditions, precipitation, seismicity, and temperature. Shuttle Radar Topography Mission (SRTM) elevation data at 30 seconds resolution are also incorporated. Hazards values 4 and below are considered negligible and only values 5 through 9 are utilized in further analyses. To ensure compatibility with other datasets, 1 is added to each of the values to provide a hazard ranking ranging 6 through 10 in increasing hazard.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-landslide-hazard-frequency-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-landslide-hazard-frequency-distribution:default":{name:"ndh-landslide-hazard-frequency-distribution:default",title:"Landslide Hazard Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-landslide-hazard-frequency-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}}}},"ndh-volcano-proportional-economic-loss-risk-deciles":{title:"Global Volcano Proportional Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-volcano-proportional-economic-loss-risk-deciles":{title:"Volcano Proportional Economic Loss Risk Deciles",name:"ndh:ndh-volcano-proportional-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Volcano Proportional Economic Loss Risk Deciles is a 2.5 minute grid of volcano hazard economic loss as proportions of Gross Domestic Product (GDP) per analytical unit. Estimates of GDP at risk are based on regional economic loss rates derived from historical records of the Emergency Events Database (EM-DAT). Loss rates are weighted by the hazard's frequency and distribution. The methodology of Sachs et al. (2003) is followed to determine baseline estimates of GDP per grid cell. To better reflect the confidence surrounding the data and procedures, the range of proportionalities is classified into deciles, 10 class of an approximately equal number of grid cells of increasing risk. This dataset is the result of collaboration among the Columbia University Center for Hazards and Risk Research (CHRR), International Bank for Reconstruction and Development/The World Bank, and Columbia University Center for International Earth Science Information Network (CIESIN).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-volcano-proportional-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-volcano-proportional-economic-loss-risk-deciles:default":{name:"ndh-volcano-proportional-economic-loss-risk-deciles:default",title:"Global Volcano Proportional Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-volcano-proportional-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-earthquake-frequency-distribution":{title:"Global Earthquake Hazard Frequency and Distribution",version:"1.00",layers:{"ndh-earthquake-frequency-distribution":{title:"Earthquake Hazard Frequency and Distribution",name:"ndh:ndh-earthquake-frequency-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Earthquake Hazard Frequency and Distribution is a 2.5 minute grid utilizing Advanced National Seismic System (ANSS) Earthquake Catalog data of actual earthquake events exceeding 4.5 on the Richter scale during the time period 1976 through 2002. To produce the final output, the frequency of an earthquake hazard is calculated for each grid cell, and the resulting grid cells are then classified into deciles (10 classes consisting of an approximately equal number of grid cells). The greater the grid cell value in the final output, the higher the relative frequency of hazard posed by earthquakes. This data is intended to provide a means of assessing the relative distribution and frequency of global earthquake hazard.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-frequency-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-earthquake-frequency-distribution:default":{name:"ndh-earthquake-frequency-distribution:default",title:"Global Earthquake Hazard Frequency and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-earthquake-frequency-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"ndh-flood-proportional-economic-loss-risk-deciles":{title:"Global Flood Proportional Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-flood-proportional-economic-loss-risk-deciles":{title:"Flood Proportional Economic Loss Risk Deciles",name:"ndh:ndh-flood-proportional-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Flood Proportional Economic Loss Risk Deciles is a 2.5 minute grid of flood hazard economic loss as proportions of Gross Domestic Product (GDP) per analytical unit. Estimates of GDP at risk are based on regional economic loss rates derived from historical records of the Emergency Events Database (EM-DAT). Loss rates are weighted by the hazard's frequency and distribution. The methodology of Sachs et al. (2003) is followed to determine baseline estimates of GDP per grid cell. To better reflect the confidence surrounding the data and procedures, the range of proportionalities is classified into deciles, 10 class of an approximately equal number of grid cells of increasing risk. This data is intended to provide a spatial surface of the proportional economic impacts of global flood hazard.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-flood-proportional-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-flood-proportional-economic-loss-risk-deciles:default":{name:"ndh-flood-proportional-economic-loss-risk-deciles:default",title:"Global Flood Proportional Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-flood-proportional-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-landslide-proportional-economic-loss-risk-deciles":{title:"Global Landslide Proportional Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-landslide-proportional-economic-loss-risk-deciles":{title:"Landslide Proportional Economic Loss Risk Deciles",name:"ndh:ndh-landslide-proportional-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Landslide Proportional Economic Loss Risk Deciles is a 2.5 minute grid of landslide hazard economic loss as proportions of Gross Domestic Product (GDP) per analytical unit. Estimates of GDP at risk are based on regional economic loss rates derived from historical records of the Emergency Events Database (EM-DAT). Loss rates are weighted by the hazard's frequency and distribution. The methodology of Sachs et al. (2003) is followed to determine baseline estimates of GDP per grid cell. To better reflect the confidence surrounding the data and procedures, the range of proportionalities is classified into deciles, 10 class of an approximately equal number of grid cells of increasing risk. This data is intended to provide a spatial surface of the proportional economic impacts of global landslide hazard.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-landslide-proportional-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-landslide-proportional-economic-loss-risk-deciles:default":{name:"ndh-landslide-proportional-economic-loss-risk-deciles:default",title:"Global Landslide Proportional Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-landslide-proportional-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.998",maxx:"179.998",miny:"-58.015",maxy:"85.016"}}}},"ndh-volcano-hazard-frequency-distribution":{title:"Global Volcano Hazard Frequency and Distribution",version:"1.00",layers:{"ndh-volcano-hazard-frequency-distribution":{title:"Volcano Hazard Frequency and Distribution",name:"ndh:ndh-volcano-hazard-frequency-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Volcano Hazard Frequency and Distribution is a 2.5 minute gridded data set based upon the National Geophysical Data Center (NGDC) Volcano Database spanning the period of 1979 through 2000. This database includes nearly 4,000 volcanic events categorized as moderate or above (values 2 through 8) according to the Volcano Explosivity Index (VEI). Most volcanoes are georeferenced to the nearest tenth or hundredth of a degree with a few to the nearest thousandth of a degree. To produce the final output, the frequency of a volcanic hazard is computed for each grid cell, with the data set consequently being classified into deciles (10 classes of approximately equal number of grid cells). The higher the grid cell value in the final output, the higher the relative frequency of hazard posed by volcanoes. This data is intended to provide a means of assessing the relative distribution and frequency of global volcano hazard.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-volcano-hazard-frequency-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-volcano-hazard-frequency-distribution:default":{name:"ndh-volcano-hazard-frequency-distribution:default",title:"Global Volcano Hazard Frequency and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-volcano-hazard-frequency-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"ndh-drought-total-economic-loss-risk-deciles":{title:"Global Drought Total Economic Loss Risk Deciles",version:"1.00",layers:{"ndh-drought-total-economic-loss-risk-deciles":{title:"Drought Total Economic Loss Risk Deciles",name:"ndh:ndh-drought-total-economic-loss-risk-deciles",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Drought Total Economic Loss Risk Deciles is a 2.5 minute grid of global drought total economic loss risks. A process of spatially allocating Gross Domestic Product (GDP) based upon the Sachs et al. (2003) methodology is utilized. First the proportional contributions of subnational units to their respective national GDP are determined using sources of various origins. The contribution rates are then applied to published World Bank Development Indicators to determine a GDP value for the subnational unit. Once the national GDP is spatially stratified into the smallest administrative units available, GDP values for grid cells are derived using Gridded Population of the World, Version 3 (GPWv3) data of population distributions. A per capita contribution value is determined within each subnational unit, and this value is multiplied by the population per grid cell. Once a GDP value has been determined on a per grid cell basis, then the regionally variable loss rate as derived from the historical records of EM-DAT is used to determine the total economic loss risks posed to a grid cell by drought hazards. The final surface does not present absolute values of total economic loss, but rather a relative decile (1-10 with increasing risk) ranking of grid cells based upon the calculated economic loss risks. This data is intended to provide insight into the relative frequency, distribution, and potential impact of global drought hazard events in relation to subnational distributions of GDP.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-drought-total-economic-loss-risk-deciles",width:"20",height:"20",format:"image/png"},style:{"ndh-cyclone-total-economic-loss-risk-deciles:default":{name:"ndh-cyclone-total-economic-loss-risk-deciles:default",title:"Global Cyclone Total Economic Loss Risk Deciles",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-drought-total-economic-loss-risk-deciles",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"179.996",miny:"-58.0",maxy:"84.989"}}}},"ndh-flood-hazard-frequency-distribution":{title:"Global Flood Hazard Frequency and Distribution",version:"1.00",layers:{"ndh-flood-hazard-frequency-distribution":{title:"Flood Hazard Frequency and Distribution",name:"ndh:ndh-flood-hazard-frequency-distribution",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Global Flood Hazard Frequency and Distribution is a 2.5 minute grid derived from a global listing of extreme flood events between 1985 and 2003 (poor or missing data in the early/mid 1990s) compiled by Dartmouth Flood Observatory and georeferenced to the nearest degree. The resultant flood frequency grid was then classified into 10 classes of approximately equal number of grid cells. The greater the grid cell value in the final data set, the higher the relative frequency of flood occurrence.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-flood-hazard-frequency-distribution",width:"20",height:"20",format:"image/png"},style:{"ndh-flood-hazard-frequency-distribution:default":{name:"ndh-flood-hazard-frequency-distribution:default",title:"Flood Hazard Frequency and Distribution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ndh-flood-hazard-frequency-distribution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}}}},"epi":{title:"Environmental Performance Index",datasets:{"epi-environmental-performance-index-2010":{title:"Environmental Performance Index",version:"2010.00",layers:{"epi-environmental-performance-index-2010":{title:"Environmental Performance Index 2010",name:"epi:epi-environmental-performance-index-2010",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010:default":{name:"epi-environmental-performance-index-2010:default",title:"Environmental Performance Index 2010",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010&amp;style=epi-environmental-performance-index-2010%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_agriculture":{title:"EPI 2010 Agriculture",name:"epi:epi-environmental-performance-index-2010_agriculture",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a       national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement. For the Agriculture category, we applied principal component analysis (PCA) to determine the weighting for the component indicators. Pesticide Regulation (PEST) received 50% of the policy category weight, Agricultural Subsidies (AGSUB) received 30%, and Agriculture Water Intensity (AGWAT) the remaining 20%. PEST and AGSUB indicators were required in order to calculate the policy category score.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_agriculture",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_agriculture:default":{name:"epi-environmental-performance-index-2010_agriculture:default",title:"Agriculture Subsidies",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_agriculture&amp;style=epi-environmental-performance-index-2010_agriculture%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_agriculture:agricultural-water-intensity":{name:"epi-environmental-performance-index-2010_agriculture:agricultural-water-intensity",title:"Agricultural Water Intensity",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_agriculture&amp;style=epi-environmental-performance-index-2010_agriculture%3Aagricultural-water-intensity",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_agriculture:pesticide-regulation":{name:"epi-environmental-performance-index-2010_agriculture:pesticide-regulation",title:"Pesticide Regulation",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_agriculture&amp;style=epi-environmental-performance-index-2010_agriculture%3Apesticide-regulation",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems":{title:"EPI 2010 Air Pollution Effects on Ecosystems",name:"epi:epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement. For the Air Pollution (effects on ecosystems) category, we had data on ozone exceedences for all countries, and we required that there be data for Sulfur Dioxide (SO2) because of its multiple environmental impacts. If data for any of the other air pollutants was missing, we averaged around them.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems:nitrous_oxide_emissions_per_populated_land_area":{name:"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems:nitrous_oxide_emissions_per_populated_land_area",title:"Proximity to Target : Nitrogen Oxides Emissions per Populated Land Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems&amp;style=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems%3Anitrous_oxide_emissions_per_populated_land_area",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems:default":{name:"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems:default",title:"Proximity to Target : Ecosystem Ozone",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems&amp;style=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems:sulfur-dioxide-emissions-per-populated-land-area":{name:"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems:sulfur-dioxide-emissions-per-populated-land-area",title:"Proximity to Target : Sulfur Dioxide Emissions per Populated Land Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems&amp;style=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems%3Asulfur-dioxide-emissions-per-populated-land-area",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems:non-methane-volatile-organic-compound-emissions-per-populated-land-area":{name:"epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems:non-methane-volatile-organic-compound-emissions-per-populated-land-area",title:"Proximity to Target : Non-methane Volatile Organic Compound Emissions per Populated Land Area",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems&amp;style=epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems%3Anon-methane-volatile-organic-compound-emissions-per-populated-land-area",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_air-pollution-effects-on-human-health":{title:"EPI 2010 Air Pollution Effects on Human Health",name:"epi:epi-environmental-performance-index-2010_air-pollution-effects-on-human-health",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement.  The effects of Air Pollution on human health comprise a portion of the Environmental Health objective and is allocated an eighth of the total score. Within Air Pollution (effects on humans) the constituent indicators are equally weighted.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_air-pollution-effects-on-human-health",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_air-pollution-effects-on-human-health:default":{name:"epi-environmental-performance-index-2010_air-pollution-effects-on-human-health:default",title:"Proximity to Target : Environmental Health:Indoor Air Pollution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_air-pollution-effects-on-human-health&amp;style=epi-environmental-performance-index-2010_air-pollution-effects-on-human-health%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_air-pollution-effects-on-human-health:outdoor-air-pollution":{name:"epi-environmental-performance-index-2010_air-pollution-effects-on-human-health:outdoor-air-pollution",title:"Proximity to Target : Outdoor Air Pollution",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_air-pollution-effects-on-human-health&amp;style=epi-environmental-performance-index-2010_air-pollution-effects-on-human-health%3Aoutdoor-air-pollution",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_biodiversity-and-habitat":{title:"EPI 2010 Biodiversity and Habitat",name:"epi:epi-environmental-performance-index-2010_biodiversity-and-habitat",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement.  For the Biodiversity & Habitat category, if the Marine Protected Areas (MPAEEZ) and Critical Habitat Protection (AZE) indicators were missing, then the Biome Protection (PACOV) indicator received 100% of the weight. Landlocked countries have no marine protected areas, and countries without alliance for zero extinction sites (see Metadata) could not receive a score for Critical Habitat Protection. If either AZE or MPAEEZ were missing, then PACOV was given 75% of the weight and the other indicator received the remaining 25%. If all  three Biodiversity and Habitat indicators were present, then PACOV received 50% of the category weight, and AZE and MPAEEZ received 25% each.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_biodiversity-and-habitat",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_biodiversity-and-habitat:critical-habitat-protection":{name:"epi-environmental-performance-index-2010_biodiversity-and-habitat:critical-habitat-protection",title:"Proximity to Target : Critical Habitat Protection",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_biodiversity-and-habitat&amp;style=epi-environmental-performance-index-2010_biodiversity-and-habitat%3Acritical-habitat-protection",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_biodiversity-and-habitat:marine-protection":{name:"epi-environmental-performance-index-2010_biodiversity-and-habitat:marine-protection",title:"Proximity to Target : Marine Protection",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_biodiversity-and-habitat&amp;style=epi-environmental-performance-index-2010_biodiversity-and-habitat%3Amarine-protection",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_biodiversity-and-habitat:default":{name:"epi-environmental-performance-index-2010_biodiversity-and-habitat:default",title:"Proximity to Target : Biome Protection",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_biodiversity-and-habitat&amp;style=epi-environmental-performance-index-2010_biodiversity-and-habitat%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_climate-change":{title:"EPI 2010 Climate Change",name:"epi:epi-environmental-performance-index-2010_climate-change",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement. All three Climate Change indicators were necessary in order to calculate at the policy category score. For Carbon Intensity of Electricity Generation we imputed some country scores. The weightings given were 50% to Greenhouse Gas Emissions/Capita, 25% Carbon Intensity of Electricity Generation, and 25% Industrial Greenhouse Gas Emissions.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_climate-change",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_climate-change:industrial-greenhouse-gas-emissions-intensity":{name:"epi-environmental-performance-index-2010_climate-change:industrial-greenhouse-gas-emissions-intensity",title:"Proximity to Target : Industrial Greenhouse Gas Emissions Intensity",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_climate-change&amp;style=epi-environmental-performance-index-2010_climate-change%3Aindustrial-greenhouse-gas-emissions-intensity",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_climate-change:default":{name:"epi-environmental-performance-index-2010_climate-change:default",title:"Proximity to Target : Greenhouse Gas Emissions per Capita (Including Land Use Emissions)",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_climate-change&amp;style=epi-environmental-performance-index-2010_climate-change%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_climate-change:co2-emissions-per-electricity-generation":{name:"epi-environmental-performance-index-2010_climate-change:co2-emissions-per-electricity-generation",title:"Proximity to Target : CO2 Emissions per Electricity Generation",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_climate-change&amp;style=epi-environmental-performance-index-2010_climate-change%3Aco2-emissions-per-electricity-generation",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_environmental-burden-of-disease":{title:"EPI 2010 Environmental Burden of Disease",name:"epi:epi-environmental-performance-index-2010_environmental-burden-of-disease",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement.  Within the Environmental Health objective, the Environmental Burden of Disease (EBD) indicator is weighted 50% and thus contributes 25% to the overall EPI score. We gave EBD a high weight in Environmental Health because it integrates the impacts of a large number of environmental stressors on human health.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_environmental-burden-of-disease",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_environmental-burden-of-disease:default":{name:"epi-environmental-performance-index-2010_environmental-burden-of-disease:default",title:"Proximity to Target : Disability Adjusted Life Years",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_environmental-burden-of-disease&amp;style=epi-environmental-performance-index-2010_environmental-burden-of-disease%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_fisheries":{title:"EPI 2010 Fisheries",name:"epi:epi-environmental-performance-index-2010_fisheries",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement. For the Fisheries category, all non-landlocked countries were required to have both the Marine Trophic Index and Trawling Intensity indicators, to which we applied an equal weight.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_fisheries",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_fisheries:trawling-and-dredging-intensity":{name:"epi-environmental-performance-index-2010_fisheries:trawling-and-dredging-intensity",title:"Proximity to Target: Trawling and Dredging Intensity",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_fisheries&amp;style=epi-environmental-performance-index-2010_fisheries%3Atrawling-and-dredging-intensity",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_fisheries:default":{name:"epi-environmental-performance-index-2010_fisheries:default",title:"Proximity to Target: Marine Trophic Index Slope",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_fisheries&amp;style=epi-environmental-performance-index-2010_fisheries%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_forestry":{title:"EPI 2010 Forestry",name:"epi:epi-environmental-performance-index-2010_forestry",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement. For the Forestry category, if one of the two constituent indicators was missing, we substituted the other value due to the very high correlation between Forest Cover Change and Growing Stock Change. If both indicators were available, then a simple average was calculated.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_forestry",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_forestry:default":{name:"epi-environmental-performance-index-2010_forestry:default",title:"Proximity to Target: Annual Change in Forest Cover",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_forestry&amp;style=epi-environmental-performance-index-2010_forestry%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_forestry:growing-stock-rate":{name:"epi-environmental-performance-index-2010_forestry:growing-stock-rate",title:"Proximity to Target: Growing Stock Rate",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_forestry&amp;style=epi-environmental-performance-index-2010_forestry%3Agrowing-stock-rate",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_water-effects-on-ecosystems":{title:"EPI 2010 Water Effects on Ecosystems",name:"epi:epi-environmental-performance-index-2010_water-effects-on-ecosystems",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement.  For the Water (effects on ecosystems) category, we had complete country coverage for the Water Quality Index (WQI) owing to data imputation. No Water Quality Index was reported for several countries that had surface water areas of less than 10 square kilometers, so for these countries we averaged around WQI. The Water Stress Index (WATSTR) was available for all but the smallest countries, in terms of geographic area, owing to the grid cell size of the original data source.  Either WATSTR or the Water Scarcity Index (WSI) wasrequired in order to calculate the policy category score; if both were present we averaged them, and if one indicator was missing we averaged around it.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_water-effects-on-ecosystems",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_water-effects-on-ecosystems:water-quality-index":{name:"epi-environmental-performance-index-2010_water-effects-on-ecosystems:water-quality-index",title:"Proximity to Target: Water Quality Index",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_water-effects-on-ecosystems&amp;style=epi-environmental-performance-index-2010_water-effects-on-ecosystems%3Awater-quality-index",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_water-effects-on-ecosystems:default":{name:"epi-environmental-performance-index-2010_water-effects-on-ecosystems:default",title:"Proximity to Target: Water Scarcity Index",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_water-effects-on-ecosystems&amp;style=epi-environmental-performance-index-2010_water-effects-on-ecosystems%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_water-effects-on-ecosystems:water-stress-index":{name:"epi-environmental-performance-index-2010_water-effects-on-ecosystems:water-stress-index",title:"Proximity to Target: Water Stress Index",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_water-effects-on-ecosystems&amp;style=epi-environmental-performance-index-2010_water-effects-on-ecosystems%3Awater-stress-index",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}},"epi-environmental-performance-index-2010_water-effects-on-human-health":{title:"EPI 2010 Water Effects on Human Health",name:"epi:epi-environmental-performance-index-2010_water-effects-on-human-health",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The 2010 Environmental Performance Index (EPI) ranks 163 countries on 25 performance indicators tracked across ten well-established policy categories covering both environmental public health and ecosystem vitality. These indicators provide a gauge at a national government scale of how close countries are to established environmental policy goals. This proximity-to-target methodology facilitates cross-country comparisons as well as analysis of how the global community performs collectively on each particular policy issue.  In this dataset scores of 100 are on target and scores of 0 show areas that require improvement. The effects of Water Pollution on human health comprise a portion of the Environmental Health objective and is allocated an eighth of the total score. Within Water Pollution (effects on humans) the constituent indicators are equally weighted.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_water-effects-on-human-health",width:"20",height:"20",format:"image/png"},style:{"epi-environmental-performance-index-2010_water-effects-on-human-health:access-to-sanitation":{name:"epi-environmental-performance-index-2010_water-effects-on-human-health:access-to-sanitation",title:"Proximity to Target: Access to Sanitation",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_water-effects-on-human-health&amp;style=epi-environmental-performance-index-2010_water-effects-on-human-health%3Aaccess-to-sanitation",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"epi-environmental-performance-index-2010_water-effects-on-human-health:default":{name:"epi-environmental-performance-index-2010_water-effects-on-human-health:default",title:"Proximity to Target: Access to Water",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=epi-environmental-performance-index-2010_water-effects-on-human-health&amp;style=epi-environmental-performance-index-2010_water-effects-on-human-health%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}}}}}},"gpw-v3":{title:"Gridded Population of the World",datasets:{"gpw-v3-population-count-future-estimates":{title:"Population Count Grid Future Estimates",version:"3.00",layers:{"gpw-v3-population-count-future-estimates_2005":{title:"Population Count Future Estimates 2005",name:"gpw-v3:gpw-v3-population-count-future-estimates_2005",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells.The data products include a population grid (raw counts). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count-future-estimates_2005",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-count-future-estimates_2005:default":{name:"gpw-v3-population-count-future-estimates_2005:default",title:"Population Count 2005",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count-future-estimates_2005",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"gpw-v3-population-count-future-estimates_2010":{title:"Population Count Future Estimates 2010",name:"gpw-v3:gpw-v3-population-count-future-estimates_2010",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells.The data products include a population grid (raw counts). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count-future-estimates_2010",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-count-future-estimates_2010:default":{name:"gpw-v3-population-count-future-estimates_2010:default",title:"Population Count 2010",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count-future-estimates_2010",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"gpw-v3-population-count-future-estimates_2015":{title:"gpw-v3-population-count-future-estimates_2015",name:"gpw-v3:gpw-v3-population-count-future-estimates_2015",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells.The data products include a population grid (raw counts). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count-future-estimates_2015",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-count-future-estimates_2015:default":{name:"gpw-v3-population-count-future-estimates_2015:default",title:"Population Count 2015",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count-future-estimates_2015",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"gpw-v3-population-count":{title:"Population Count Grid",version:"3.00",layers:{"gpw-v3-population-count_1990":{title:"Population Count 1990",name:"gpw-v3:gpw-v3-population-count_1990",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World consists of estimates of human population for the years 1990, 1995, 2000 by 2.5 arc-minute grid cells.The data products include a population grid (raw counts). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resolution). GPWv3 is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count_1990",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-count_1990:default":{name:"gpw-v3-population-count_1990:default",title:"Population Count 1990",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count_1990",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"gpw-v3-population-count_1995":{title:"Population Count 1995",name:"gpw-v3:gpw-v3-population-count_1995",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World consists of estimates of human population for the years 1990, 1995, 2000 by 2.5 arc-minute grid cells.The data products include a population grid (raw counts). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resolution). GPWv3 is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count_1995",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-count_1995:default":{name:"gpw-v3-population-count_1995:default",title:"Population Count 1995",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count_1995",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"gpw-v3-population-count_2000":{title:"Population Count 2000",name:"gpw-v3:gpw-v3-population-count_2000",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World consists of estimates of human population for the years 1990, 1995, 2000 by 2.5 arc-minute grid cells.The data products include a population grid (raw counts). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resolution). GPWv3 is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count_2000",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-count_2000:default":{name:"gpw-v3-population-count_2000:default",title:"Population Count 1995",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-count_2000",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"gpw-v3-land-geographic-unit-area":{title:"Land and Geographic Unit Area Grids",version:"3.00",layers:{"gpw-v3-land-geographic-unit-area":{title:"GPW v3 Geographic Unit Area",name:"gpw-v3:gpw-v3-land-geographic-unit-area",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-land-geographic-unit-area",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-land-geographic-unit-area:default":{name:"gpw-v3-land-geographic-unit-area:default",title:"Population Density 1990",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-land-geographic-unit-area&amp;style=gpw-v3-land-geographic-unit-area%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-187.251",maxx:"187.293",miny:"-173.793",maxy:"200.751"}}}},"gpw-v3-population-density":{title:"Population Density Grid",version:"3.00",layers:{"gpw-v3-population-density_1990":{title:"Population Density 1990",name:"gpw-v3:gpw-v3-population-density_1990",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells. Population density estimates were also created using the GPWv3 land area grid for the year 2000 (also 2.5 arc-minute resolution). The data products include a population grid (raw counts), and a population density grid (per square km). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density_1990",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-density_1990:default":{name:"gpw-v3-population-density_1990:default",title:"GPW v3 Population Density 1990",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density_1990",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"gpw-v3-population-density_1995":{title:"Population Density 1995",name:"gpw-v3:gpw-v3-population-density_1995",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells. Population density estimates were also created using the GPWv3 land area grid for the year 2000 (also 2.5 arc-minute resolution). The data products include a population grid (raw counts), and a population density grid (per square km). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density_1995",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-density_1995:default":{name:"gpw-v3-population-density_1995:default",title:"GPW v3 Population Density 1995",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density_1995",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"gpw-v3-population-density_2000":{title:"Population Density 2000",name:"gpw-v3:gpw-v3-population-density_2000",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells. Population density estimates were also created using the GPWv3 land area grid for the year 2000 (also 2.5 arc-minute resolution). The data products include a population grid (raw counts), and a population density grid (per square km). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density_2000",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-density_2000:default":{name:"gpw-v3-population-density_2000:default",title:"GPW v3 Population Density 2000",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density_2000",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"gpw-v3-coastlines":{title:"Coastlines",version:"3.00",layers:{"gpw-v3-coastlines":{title:"GPW v3 Coastlines",name:"gpw-v3:gpw-v3-coastlines",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-coastlines",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-coastlines:default":{name:"gpw-v3-coastlines:default",title:"GPW v3 Coastlines",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-coastlines&amp;style=gpw-v3-coastlines%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}}}},"gpw-v3-centroids":{title:"Centroids",version:"3.00",layers:{"gpw-v3-centroids":{title:"GPW v3 Centroids",name:"gpw-v3:gpw-v3-centroids",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-centroids",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-centroids:default":{name:"gpw-v3-centroids:default",title:"GPW-v3-Centroids",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-centroids&amp;style=gpw-v3-centroids%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-179.2",maxx:"179.848",miny:"-54.752",maxy:"79.892"}}}},"gpw-v3-population-density-future-estimates":{title:"Population Density Grid Future Estimates",version:"3.00",layers:{"gpw-v3-population-density-future-estimates_2005":{title:"Population Density Future Estimates 2005",name:"gpw-v3:gpw-v3-population-density-future-estimates_2005",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells. Population density estimates were also created using the GPWv3 land area grid for the year 2000 (also 2.5 arc-minute resolution). The data products include a population grid (raw counts), and a population density grid (per square km). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density-future-estimates_2005",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-density-future-estimates_2005:default":{name:"gpw-v3-population-density-future-estimates_2005:default",title:"GPW v3 Population Density Future Estimates 2005",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density-future-estimates_2005",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"gpw-v3-population-density-future-estimates_2010":{title:"Population Density Future Estimates 2010",name:"gpw-v3:gpw-v3-population-density-future-estimates_2010",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells. Population density estimates were also created using the GPWv3 land area grid for the year 2000 (also 2.5 arc-minute resolution). The data products include a population grid (raw counts), and a population density grid (per square km). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density-future-estimates_2010",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-density-future-estimates_2010:default":{name:"gpw-v3-population-density-future-estimates_2010:default",title:"GPW v3 Population Density Future Estimates 2010",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density-future-estimates_2010",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}},"gpw-v3-population-density-future-estimates_2015":{title:"Population Density Future Estimates 2015",name:"gpw-v3:gpw-v3-population-density-future-estimates_2015",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Gridded Population of the World: Future Estimates (GPWFE) consists of estimates of human population for the years 2005, 2010, 2015 by 2.5 arc-minute grid cells. Population density estimates were also created using the GPWv3 land area grid for the year 2000 (also 2.5 arc-minute resolution). The data products include a population grid (raw counts), and a population density grid (per square km). These products vary in GIS-compatible data formats and geographic extents (global, continent [Antarctica not included], and country levels). Spatial reference metadata refers to global extent. A proportional allocation gridding algorithm, utilizing more than 300,000 national and sub-national administrative units, is used to assign population values to grid cells. Additional global grids are created from the 2.5 arc-minute grid at 1/4, 1/2, and 1 degree resolutions. (Spatial reference metadata refers to global extent, 2.5 arc-minute resoulution). GPWFE is produced by the Columbia University Center for International Earth Science Information Network (CIESIN) in collaboration with the United Nations Food and Agriculture Programme (FAO) and the Centro Internacional de Agricultura Tropical (CIAT).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density-future-estimates_2015",width:"20",height:"20",format:"image/png"},style:{"gpw-v3-population-density-future-estimates_2015:default":{name:"gpw-v3-population-density-future-estimates_2015:default",title:"GPW v3 Population Density Future Estimates 2015",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gpw-v3-population-density-future-estimates_2015",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}}}},"anthromes":{title:"Anthropogenic Biomes",datasets:{"anthromes-anthropogenic-biomes-world-v1":{title:"Anthropogenic Biomes of the World",version:"1.00",layers:{"anthromes-anthropogenic-biomes-world-v1":{title:"Anthropogenic Biomes v1",name:"anthromes:anthromes-anthropogenic-biomes-world-v1",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=anthromes-anthropogenic-biomes-world-v1",width:"20",height:"20",format:"image/png"},style:{"anthromes-anthropogenic-biomes-world-v1:default":{name:"anthromes-anthropogenic-biomes-world-v1:default",title:"Global Anthropogenic Biomes",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=anthromes-anthropogenic-biomes-world-v1&amp;style=anthromes-anthropogenic-biomes-world-v1%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.75",maxy:"83.083"}}}}}},"povmap":{title:"Poverty Mapping",datasets:{"povmap-global-subnational-prevalence-child-malnutrition":{title:"Global Subnational Prevalence of Child Malnutrition",version:"1.00",layers:{"povmap-global-subnational-prevalence-child-malnutrition":{title:" Percent Underweight Children",name:"povmap:povmap-global-subnational-prevalence-child-malnutrition",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Subnational Prevalence of Child Malnutrition dataset consists of estimates of the percentage of children with weight-for-age z-scores that are more than two standard deviations below the median of the NCHS/CDC/WHO International Reference Population. Data are reported for the most recent year with subnational information available at the time of development. The data products include a shapefile (vector data) of percentage rates, grids (raster data) of rates (per thousand in order to preserve precision in integer format), the number of children under five (the rate denominator), and the number of underweight children under five (the rate numerator), and a tabular dataset of the same and associated data. This dataset is produced by the Columbia University Center for International Earth Science Information Network (CIESIN).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=povmap-global-subnational-prevalence-child-malnutrition",width:"20",height:"20",format:"image/png"},style:{"povmap-global-subnational-prevalence-child-malnutrition:default":{name:"povmap-global-subnational-prevalence-child-malnutrition:default",title:"Prevalence of Child Malnutrition",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=povmap-global-subnational-prevalence-child-malnutrition&amp;style=povmap-global-subnational-prevalence-child-malnutrition%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}},"povmap-global-subnational-infant-mortality-rates":{title:"Global Subnational Infant Mortality Rates",version:"1.00",layers:{"povmap-global-subnational-infant-mortality-rates_2000":{title:"Subnational Infant Mortality Rates 2000",name:"povmap:povmap-global-subnational-infant-mortality-rates_2000",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Subnational Infant Mortality Rates consists of estimates of infant mortality rates for the year 2000. The infant mortality rate for a region or country is defined as the number of children who die before their first birthday for every 1,000 live births. The data products include a shapefile (vector data) of rates, grids (raster data) of rates (per 10,000 live births in order to preserve precision in integer format), births (the rate denominator) and deaths (the rate numerator), and a tabular dataset of the same and associated data. Over 10,000 national and subnational units are represented in the tabular and grid datasets, while the shapefile uses approximately 1,000 units in order to protect the intellectual property of source datasets for Brazil, China, and Mexico. This dataset is produced by the Columbia University Center for International Earth Science Information Network (CIESIN).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=povmap-global-subnational-infant-mortality-rates_2000",width:"20",height:"20",format:"image/png"},style:{"povmap-global-subnational-infant-mortality-rates_2000:default":{name:"povmap-global-subnational-infant-mortality-rates_2000:default",title:"Infant Mortality Rates 2000",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=povmap-global-subnational-infant-mortality-rates_2000&amp;style=povmap-global-subnational-infant-mortality-rates_2000%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-58.0",maxy:"85.0"}}}}}},"crop-climate":{title:"Climate Effects on Food Supply",datasets:{"crop-climate-effects-climate-global-food-production":{title:"Effects of Climate Change on Global Food Production from SRES Emissions and Socioeconomic Scenarios",version:"1.00",layers:{"crop-climate-effects-climate-global-food-production":{title:" Maize, Rice, and Wheat",name:"crop-climate:crop-climate-effects-climate-global-food-production",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"These layers look at the effects of climate change on global food production under SRES emissions and socio-economic scenarios.  This layer illustrates an aggregated total of maize, rice, and wheat produced in each country from 2000 to 2006 in tons in each of the countries (FAO).",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=crop-climate-effects-climate-global-food-production",width:"20",height:"20",format:"image/png"},style:{"crop-climate-effects-climate-global-food-production:rice":{name:"crop-climate-effects-climate-global-food-production:rice",title:"Crop Climate: Rice Production Average",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=crop-climate-effects-climate-global-food-production&amp;style=crop-climate-effects-climate-global-food-production%3Arice",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"crop-climate-effects-climate-global-food-production:wheat":{name:"crop-climate-effects-climate-global-food-production:wheat",title:"Crop Climate: Wheat Production Average",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=crop-climate-effects-climate-global-food-production&amp;style=crop-climate-effects-climate-global-food-production%3Awheat",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"crop-climate-effects-climate-global-food-production:maize":{name:"crop-climate-effects-climate-global-food-production:maize",title:"Crop Climate: Maize Production Per Country",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=crop-climate-effects-climate-global-food-production&amp;style=crop-climate-effects-climate-global-food-production%3Amaize",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"crop-climate-effects-climate-global-food-production:default":{name:"crop-climate-effects-climate-global-food-production:default",title:"Crop Climate: Maize, Rice, and Wheat",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=crop-climate-effects-climate-global-food-production",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.767",maxy:"83.633"}}}}}},"ipcc-assess":{title:"IPCC Assessment",datasets:{"ipcc-assess-ar4-observed-climate-impacts":{title:"Fourth Assessment Report (AR4) Observed Climate Change Impacts",version:"1.00",layers:{"ipcc-assess-ar4-observed-climate-impacts":{title:"Observed Climate Change Impacts",name:"ipcc-assess:ipcc-assess-ar4-observed-climate-impacts",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"For each observation, the data series is described in terms of system, region, longitude and latitude, dates and duration, statistical significance, type of impact, and whether or not land use was identified as a driving factor. System changes are taken from ~80 studies (of which ~75 are new since the IPCC Third Assessment Report) containing >29,500 data series. Observations in the database are characterized as a    change consistent with warming    or a    change not consistent with warming,    based on information from the underlying studies.",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-ar4-observed-climate-impacts",width:"20",height:"20",format:"image/png"},style:{"ipcc-assess-ar4-observed-climate-impacts:default":{name:"ipcc-assess-ar4-observed-climate-impacts:default",title:"IPCC Fourth Assessment Report (AR4) Observed Climate Change Impacts Database",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-ar4-observed-climate-impacts&amp;style=ipcc-assess-ar4-observed-climate-impacts%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-165.0",maxx:"178.9",miny:"-70.0",maxy:"86.816"}}}},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100":{title:"ipcc-assess:ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100",version:"",layers:{"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100":{title:"Climate Change Vulnerability Scenarios 2005 2050 2100",name:"ipcc-assess:ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100",srs:"EPSG:4326",url:"http://sedac.ciesin.columbia.edu/geoserver/ows",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100",width:"20",height:"20",format:"image/png"},style:{"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-a2550-2100-5.5C-annual":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-a2550-2100-5.5C-annual",title:"Extreme-Events-A2550-2100-5.5C-Annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aextreme-events-a2550-2100-5.5C-annual",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-enhance-adaptive-b2-2100-5.5C-annual":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-enhance-adaptive-b2-2100-5.5C-annual",title:"Agg-Impact-Enhance-Adaptive-B2-2100-5.5C-Annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aagg-impact-enhance-adaptive-b2-2100-5.5C-annual",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-a2-2100-1.5C-annual":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-a2-2100-1.5C-annual",title:"Agg-impact-a2-2100-1.5C-annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aagg-impact-a2-2100-1.5C-annual",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-b2-2100-5.5C-annual":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-b2-2100-5.5C-annual",title:"Extreme-Events-B2-2100-5.5C-Annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aextreme-events-b2-2100-5.5C-annual",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-enhance-adaptive-a2-2100-5.5C-annual":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-enhance-adaptive-a2-2100-5.5C-annual",title:"Extreme-Events-Enhance-Adaptive-A2-2100-5.5C-Annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aextreme-events-enhance-adaptive-a2-2100-5.5C-annual",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-enhance-adaptive-a2-2100-5.5C-jja":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-enhance-adaptive-a2-2100-5.5C-jja",title:"Agg-Impact-Enhance-Adaptive-A2-2100-5.5C-JJA",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aagg-impact-enhance-adaptive-a2-2100-5.5C-jja",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-enhance-adaptive-a2-2100-1.5C-annual":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-enhance-adaptive-a2-2100-1.5C-annual",title:"Agg-Impact-Enhance-Adaptive-A2-2100-1.5C-Annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aagg-impact-enhance-adaptive-a2-2100-1.5C-annual",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-enhance-adaptive-a2550-2100-5.5C-annual":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-enhance-adaptive-a2550-2100-5.5C-annual",title:"Extreme-Events-Enhance-Adaptive-A2550-2100-5.5C-Annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aextreme-events-enhance-adaptive-a2550-2100-5.5C-annual",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-a2-2100-5.5C-annual":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:extreme-events-a2-2100-5.5C-annual",title:"Extreme-Events-A2-2100-5.5C-Annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aextreme-events-a2-2100-5.5C-annual",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-a2-2100-5.5C-jja":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:agg-impact-a2-2100-5.5C-jja",title:"Agg-Impact-A2-2100-5.5C-JJA",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Aagg-impact-a2-2100-5.5C-jja",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"},"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:default":{name:"ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100:default",title:"Agg-Impact-B2-2100-5.5C-Annual",url:"http://sedac.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100&amp;style=ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100%3Adefault",width:"20",cached_url:"http://sedac.ciesin.columbia.edu/geoserver/gwc/service/wms",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-55.792",maxy:"83.667"}}}}}}};;
CIESIN.layers={gcce:{"Cultivated Irrigated Land (%)":{title:"Cultivated Irrigated Land (%)",name:"gcce:Cultivated Irrigated Land (%)",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Fischer, G., F. Nachtergaele, S. Prieler, H.T. van Velthuizen, L. Verelst, D. Wiberg, 2008. Global Agro ecological Zones Assessment for Agriculture (GAEZ 2008). IIASA, Laxenburg, Austria and FAO, Rome, Italy.    http://www.iiasa.ac.at/Research/LUC/External World soil database/HTML/CULTIR_2000.html    Six geographic datasets were used for the compilation of an inventory of seven major land cover/land use categories at 5    resolution. The datasets used are:       1. GLC2000 land cover database at 30 arc sec (http://www gvm.jrc.it/glc2000), using regional and global legends;     2. an IFPRI global land cover categorization providing 17 land cover classes at 30 arc sec. (IFPRI, 2002), based on a reinterpretation of the Global Land Cover Characteristics Database (GLCC ver. 2.0), EROS Data Centre (EDC, 2000);     3. FAO   s Global Forest Resources Assessment 2000 (FAO, 2001) at 30 arc sec. resolution;     4. digital Global Map of Irrigated Areas (GMIA) version 4.0 of (FAO/University of Frankfurt) at 5    by 5    latitude/longitude resolution, providing by grid cell the percentage land area equipped with irrigation infrastructure;     5. IUCN WCMC protected areas inventory at 30 arc seconds (http://www.unep wcmc.org/wdpa/index.htm), and     6. a spatial population density inventory (30 arc seconds) for year 2000 developed by FAO SDRN, based on spatial data of LANDSCAN 2003, with calibration to UN 2000 population figures.    An iterative calculation procedure has been implemented to estimate land cover class weights, consistent with aggregate FAO land statistics and spatial land cover patterns obtained from (the above mentioned) remotely sensed data, allowing the quantification of major land use/land cover shares in individual 5    by 5    latitude/longitude grid cells. The estimated class weights define for each land cover class the presence of respectively cultivated land and forest. Starting values of class weights used in the iterative procedure were obtained by cross country regression of statistical data of cultivated and forest land against land cover class distributions obtained from GIS, aggregated to national level. The percentage of urban/built up land in a grid cell was estimated based on presence of respective land cover classes as well as regression equations relating built up land with number of people and population density. Remaining areas were allocated to:       1. grassland and other vegetated areas (excluding cultivated land and forest);     2. barren or very sparsely vegetated areas, and     3. water bodies    according to indicated land cover classes. Barren or very sparsely vegetated areas (class (ii) above) were delineated from (i) using the respective land cover information in GLC 2000 and a minimum bio productivity threshold.  The resulting seven land use land cover categories shares are:       1. Rain fed cultivated land;     2. Irrigated cultivated land;     3. Forest;     4. Pastures and other vegetated land;     5. Barren and very sparsely vegetated land;     6. Water; and     7. Urban land and land required for housing and infrastructure.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Cultivated+Irrigated+Land+%28%25%29",width:"20",height:"20",format:"image/png"},style:{"gcce_cultirrg.sld":{name:"gcce_cultirrg.sld",title:"Irrigated Cultivated Land (%)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Cultivated+Irrigated+Land+%28%25%29&amp;style=gcce_cultirrg.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"Cultivated Rain-fed Land (%)":{title:"Cultivated Rain-fed Land (%)",name:"gcce:Cultivated Rain-fed Land (%)",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Six geographic datasets were used for the compilation of an inventory of seven major land cover/land use categories at 5    resolution. The datasets used are:       1. GLC2000 land cover database at 30 arc sec (http://www gvm.jrc.it/glc2000), using regional and global legends;     2. an IFPRI global land cover categorization providing 17 land cover classes at 30 arc sec. (IFPRI, 2002), based on a reinterpretation of the Global Land Cover Characteristics Database (GLCC ver. 2.0), EROS Data Centre (EDC, 2000);     3. FAO   s Global Forest Resources Assessment 2000 (FAO, 2001) at 30 arc sec. resolution;     4. digital Global Map of Irrigated Areas (GMIA) version 4.0 of (FAO/University of Frankfurt) at 5    by 5    latitude/longitude resolution, providing by grid cell the percentage land area equipped with irrigation infrastructure;     5. IUCN WCMC protected areas inventory at 30 arc seconds (http://www.unep wcmc.org/wdpa/index.htm), and     6. a spatial population density inventory (30 arc seconds) for year 2000 developed by FAO SDRN, based on spatial data of LANDSCAN 2003, with calibration to UN 2000 population figures.    An iterative calculation procedure has been implemented to estimate land cover class weights, consistent with aggregate FAO land statistics and spatial land cover patterns obtained from (the above mentioned) remotely sensed data, allowing the quantification of major land use/land cover shares in individual 5    by 5    latitude/longitude grid cells. The estimated class weights define for each land cover class the presence of respectively cultivated land and forest. Starting values of class weights used in the iterative procedure were obtained by cross country regression of statistical data of cultivated and forest land against land cover class distributions obtained from GIS, aggregated to national level. The percentage of urban/built up land in a grid cell was estimated based on presence of respective land cover classes as well as regression equations relating built up land with number of people and population density. Remaining areas were allocated to:       1. grassland and other vegetated areas (excluding cultivated land and forest);     2. barren or very sparsely vegetated areas, and     3. water bodies    according to indicated land cover classes. Barren or very sparsely vegetated areas (class (ii) above) were delineated from (i) using the respective land cover information in GLC 2000 and a minimum bio productivity threshold.  The resulting seven land use land cover categories shares are:       1. Rain fed cultivated land;     2. Irrigated cultivated land;     3. Forest;     4. Pastures and other vegetated land;     5. Barren and very sparsely vegetated land;     6. Water; and     7. Urban land and land required for housing and infrastructure.    Fischer, G., F. Nachtergaele, S. Prieler, H.T. van Velthuizen, L. Verelst, D. Wiberg, 2008. Global Agro ecological Zones Assessment for Agriculture (GAEZ 2008). IIASA, Laxenburg, Austria and FAO, Rome, Italy.    http://www.iiasa.ac.at/Research/LUC/External World soil database/HTML/CULTRF_2000.html",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Cultivated+Rain-fed+Land+%28%25%29",width:"20",height:"20",format:"image/png"},style:{"gcce_rfedcul.sld":{name:"gcce_rfedcul.sld",title:"Share of rain-fed cultivated land (%)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Cultivated+Rain-fed+Land+%28%25%29&amp;style=gcce_rfedcul.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"Land Suitable for Rainfed Agriculture":{title:"Land Suitable for Rainfed Agriculture",name:"gcce:Land Suitable for Rainfed Agriculture",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Suitability of currently available land for rainfed production of cereals (high level of inputs).    FGGD Module 6: Land productivity potential    FAO & IIASA.  2006.   Mapping biophysical factors that influence agricultural production and rural vulnerability .  by H. van Velhuizen et. al. Environmental and Natural Resources Series No. 11 Rome.    http://www.fao.org/geonetwork/srv/en/graphover.show?id=14080&fname=Map_6_06.png&access=public",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Land+Suitable+for+Rainfed+Agriculture",width:"20",height:"20",format:"image/png"},style:{"gcce_agsuitrainfed.sld":{name:"gcce_agsuitrainfed.sld",title:"Suitability of currently available land for rainfed production of cereals (high level of inputs)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Land+Suitable+for+Rainfed+Agriculture&amp;style=gcce_agsuitrainfed.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.083",miny:"-90.0",maxy:"90.0"}},"Nutrient Availability":{title:"Nutrient Availability",name:"gcce:Nutrient Availability",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Soil texture, soil organic carbon, soil pH, total exchangeable bases.    This soil quality is decisive for successful low level input farming and to some extent also for intermediate input levels. Diagnostics related to nutrient availability are manifold. Important soil characteristics of the topsoil (0 30 cm) are: Texture/Structure, Organic Carbon (OC), pH and Total Exchangeable Bases (TEB). For the subsoil (30 100 cm), the most important characteristics considered are: Texture/Structure, pH and TEB.    The soil characteristics relevant to soil nutrient availability are to some extent correlated. For this reason, the most limiting soil characteristic is combined in the evaluation with the average of the remaining less limiting soil characteristics to represent soil quality SQ1.     Fischer, G., F. Nachtergaele, S. Prieler, H.T. van Velthuizen, L. Verelst, D. Wiberg, 2008. Global Agro ecological Zones Assessment for Agriculture (GAEZ 2008). IIASA, Laxenburg, Austria and FAO, Rome, Italy.     http://www.iiasa.ac.at/Research/LUC/External World soil database/HTML/SQ1.html",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Nutrient+Availability",width:"20",height:"20",format:"image/png"},style:{"gcce_nutrava.sld":{name:"gcce_nutrava.sld",title:"Nutrient Availability",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Nutrient+Availability&amp;style=gcce_nutrava.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"Rooting Conditions":{title:"Rooting Conditions",name:"gcce:Rooting Conditions",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Soil textures, bulk density, coarse fragments, vertic soil properties and soil phases affecting root penetration and soil depth and soil volume.    Rooting conditions include effective soil depth (cm) and effective soil volume (vol. %) related to presence of gravel and stoniness. Rooting conditions may be affected by the presence of a soil phase either limiting the effective rooting depth or decreasing the effective volume accessible for root penetration. Rooting conditions address various relations between soil conditions of the rooting zone and crop growth. The following factors are considered in the evaluation:       1. Adequacy of foothold, i.e., sufficient soil depth for the crop for anchoring;     2. available soil volume and penetrability of the soil for roots to extract nutrients;     3. space for root and tuber crops for expansion and economic yield in the soil; and     4. absence of shrinking and swelling properties (vertic) affecting root and tuber crops.    Soil depth/volume limitations affect root penetration and may constrain yield formation (roots and tubers). Relevant soil properties considered are: soil depth, soil texture/structure, vertic properties, gelic properties, petric properties and presence of coarse fragments. This soil quality is estimated by multiplying of the soil depth limitation with the most limiting soil or soil phase property    Soil phases that relevant for rooting conditions vary somewhat with source of soil map and soil classification used. In the HWSD these are:       1. FAO 74 soil phases: stony, lithic, petric, petrocalcic, petrogypsic, petroferric, fragipan and duripan.     2. FAO 90 soil phases: rudic, lithic, pertroferric, placic, skeletic, fragipan and duripan.     3. ESB soil phases and other soil depth/volume related characteristics: stony, lithic, petrocalcic, petroferric, fragipan and duripan, and presence of gravel or concretions, obstacles to roots (6 classes), and impermeable layers (4 classes).    Fischer, G., F. Nachtergaele, S. Prieler, H.T. van Velthuizen, L. Verelst, D. Wiberg, 2008. Global Agro ecological Zones Assessment for Agriculture (GAEZ 2008). IIASA, Laxenburg, Austria and FAO, Rome, Italy.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Rooting+Conditions",width:"20",height:"20",format:"image/png"},style:{"gcce_rootcon.sld":{name:"gcce_rootcon.sld",title:"Rooting Conditions",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Rooting+Conditions&amp;style=gcce_rootcon.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"Soil Nutrient Retention Capability":{title:"Soil Nutrient Retention Capability",name:"gcce:Soil Nutrient Retention Capability",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Soil Organic carbon, Soil texture, base saturation, cation exchange capacity of soil and of clay fraction.    Nutrient retention capacity is of particular importance for the effectiveness of fertilizer applications and is therefore of special relevance for intermediate and high input level cropping conditions.  Nutrient retention capacity refers to the capacity of the soil to retain added nutrients against losses caused by leaching. Plant nutrients are held in the soil on the exchange sites provided by the clay fraction, organic matter and the clay humus complex. Losses vary with the intensity of leaching which is determined by the rate of drainage of soil moisture through the soil profile. Soil texture affects nutrient retention capacity in two ways, through its effects on available exchange sites on the clay minerals and by soil permeability.  The soil characteristics used for topsoil are respectively: Organic Carbon (OC), Soil Texture (Text), Base Saturation (BS), Cation Exchange Capacity of soil (CECsoil), pH, and Cation Exchange Capacity of clay fraction (CECclay). Soil pH serves as indicator for aluminum toxicity and for micro nutrient deficiencies.  The most limitingof these soil characteristic is combined with the average of the remaining less limiting soil characteristics to estimate nutrient retention capacity SQ2.    Fischer, G., F. Nachtergaele, S. Prieler, H.T. van Velthuizen, L. Verelst, D. Wiberg, 2008. Global Agro ecological Zones Assessment for Agriculture (GAEZ 2008). IIASA, Laxenburg, Austria and FAO, Rome, Italy.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Soil+Nutrient+Retention+Capability",width:"20",height:"20",format:"image/png"},style:{"gcce_nutrtca.sld":{name:"gcce_nutrtca.sld",title:"Nutrient retention capacity",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Soil+Nutrient+Retention+Capability&amp;style=gcce_nutrtca.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"Soil Salinity":{title:"Soil Salinity",name:"gcce:Soil Salinity",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Soil salinity, soil sodicity and soil phases influencing salt conditions.  Accumulation of salts may cause salinity. Excess of free salts referred to as soil salinity is measured as Electric Conductivity (EC in dS/m) or as saturation of the exchange complex with sodium ions, which is referred to as sodicity or sodium alkalinity and is measured as Exchangeable Sodium Percentage (ESP).    Salinity affects crops through inhibiting the uptake of water. Moderate salinity affects growth and reduces yields; high salinity levels may kill the crop. Sodicity causes sodium toxicity and affects soil structure leading to massive or coarse columnar structure with low permeability. Apart from soil salinity and sodicity, conditions indicated by saline (salic) and sodic soil phases may affect crop growth and yields.    In case of simultaneous occurrence of saline (salic) and sodic soils the limitations are combined. The most limiting of the combined soil salinity and/or sodicity conditions and occurrence of saline (salic) and/or sodic soil phase is selected.     http://www.iiasa.ac.at/Research/LUC/External World soil database/HTML/SQ5.html    FAO/IIASA/ISRIC/ISSCAS/JRC, 2009. Harmonized World Soil Database (version 1.1). FAO, Rome, Italy and IIASA, Laxenburg, Austria.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Soil+Salinity",width:"20",height:"20",format:"image/png"},style:{"gcce_exsalt.sld":{name:"gcce_exsalt.sld",title:"Excess Soil Salinity",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Soil+Salinity&amp;style=gcce_exsalt.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"Soil Toxicity":{title:"Soil Toxicity",name:"gcce:Soil Toxicity",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Calcium carbonate and gypsum.    Low pH leads to acidity related toxicities, e.g., aluminum, iron, manganese toxicities, and to various deficiencies, e.g., of phosphorus and molybdenum. Calcareous soils exhibit generally micronutrient deficiencies, for instance of iron, manganese, and zinc and in some cases toxicity of molybdenum. Gypsum strongly limits available soil moisture. Tolerance of crops to calcium carbonate and gypsum varies widely (FAO, 1990; Sys, 1993).    Low pH and high calcium carbonate and gypsum are mutually exclusive. Acidity related toxicities such as aluminum toxicities and micro nutrient deficiencies are accounted for respectively in SQ1, nutrient availability, and in SQ2, nutrient retention capacity. This soil quality SQ6 is therefore only including calcium carbonate and gypsum related toxicities. The most limiting of the combination of excess calcium carbonate and gypsum in the soil, and occurrence of petrocalcic and petrogypsic soil phases is selected for the quantification of SQ6.     Fischer, G., F. Nachtergaele, S. Prieler, H.T. van Velthuizen, L. Verelst, D. Wiberg, 2008. Global Agro ecological Zones Assessment for Agriculture (GAEZ 2008). IIASA, Laxenburg, Austria and FAO, Rome, Italy.     http://www.iiasa.ac.at/Research/LUC/External World soil database/HTML/SQ6.html",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Soil+Toxicity",width:"20",height:"20",format:"image/png"},style:{"gcce_toxicity.sld":{name:"gcce_toxicity.sld",title:"Calcium carbonate and gypsum toxicity",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Soil+Toxicity&amp;style=gcce_toxicity.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"Soil Workability":{title:"Soil Workability",name:"gcce:Soil Workability",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Soil texture, effective soil depth/volume, and soil phases constraining soil management (soil depth, rock outcrop, stoniness, gravel/concretions and hardpans)    Diagnostic characteristics to indicate soil workability vary by type of management applied. Workability or ease of tillage depends on interrelated soil characteristics such as texture, structure, organic matter content, soil consistence/bulk density, the occurrence of gravel or stones in the profile or at the soil surface, and the presence of continuous hard rock at shallow depth as well as rock outcrops. Some soils are easy to work independent of moisture conditions, other soils are only manageable at an adequate moisture status, in particular for manual cultivation or light machinery. Irregular soil depth, gravel and stones in the profile and rock outcrops, might prevent the use of heavy farm machinery. The soil constraints related to soil texture and soil structure are particularly affecting low and intermediate input farming LUTs, while the constraints related to irregular soil depth and stony and rocky soil conditions are foremost affecting mechanized land preparation and harvesting operations, of high level input mechanized farming LUTs. Workability constraints are therefore handled differently for low/intermediate and high inputs.    The workability soil quality SQ7 includes physical hindrance to cultivation, and limitations to cultivation imposed by texture/clay mineralogy. The soil quality SQ7 is derived by combining the most limiting soil/soil phase attribute with the average of the remaining attribute coditions. Soil phases considered in the quantification of SQ7 are stony, lithic, petric, petrocalcic, petroferric, fragipan and duripan (FAO    74), and lithic, petroferric, rudic, skeletic, duripan and fragipan (FAO   90).    Fischer, G., F. Nachtergaele, S. Prieler, H.T. van Velthuizen, L. Verelst, D. Wiberg, 2008. Global Agro ecological Zones Assessment for Agriculture (GAEZ 2008). IIASA, Laxenburg, Austria and FAO, Rome, Italy.     http://www.iiasa.ac.at/Research/LUC/External World soil database/HTML/SQ7.html",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Soil+Workability",width:"20",height:"20",format:"image/png"},style:{"gcce_workab.sld":{name:"gcce_workab.sld",title:"Soil workability (constraining field management)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Soil+Workability&amp;style=gcce_workab.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"gcce-kg-1951-00-observed":{title:"Koppen-Geiger Climate Classifications 1951-2000",name:"gcce:gcce-kg-1951-00-observed",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The most frequently used climate classification map is that of Wladimir K  ppen, presented in its latest version 1961 by Rudolf Geiger. A huge number of climate studies and subsequent publications adopted this or a former release of the K  ppen Geiger map. While the climate classification concept has been widely applied to a broad range of topics in climate and climate change research as well as in physical geography, hydrology, agriculture, biology and educational aspects, a well documented update of the world climate classification map is still missing. Based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service, we present here a new digital K  ppen Geiger world map on climate classification for the second half of the 20th century.    Kottek, M., J. Grieser, C. Beck, B. Rudolf, and F. Rubel, 2006: World Map of the K  ppen Geiger climate classification updated. Meteorol. Z., 15, 259 263. DOI: 10.1127/0941 2948/2006/0130.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-1951-00-observed",width:"20",height:"20",format:"image/png"},style:{"gcce_koeppen-geiger2.sld":{name:"gcce_koeppen-geiger2.sld",title:"Koeppen-Geiger climate classification 1951-2000",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-1951-00-observed&amp;style=gcce_koeppen-geiger2.sld",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"gcce-kg-2001-25-A1F1":{title:"Koppen-Geiger 2001-2025 A1F1",name:"gcce:gcce-kg-2001-25-A1F1",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification  Abstract    In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2001-25-A1F1",width:"20",height:"20",format:"image/png"},style:{"gcce-kg-2001-25-A1F1":{name:"gcce-kg-2001-25-A1F1",title:"Koppen-Geiger 2001-2025 A1F1",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2001-25-A1F1",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"84.0"}},"gcce-kg-2001-25-A2":{title:"Koppen-Geiger 2001-2025 A2",name:"gcce:gcce-kg-2001-25-A2",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2001-25-A2",width:"20",height:"20",format:"image/png"},style:{"gcce-kg-2001-25-A2":{name:"gcce-kg-2001-25-A2",title:"Koppen-Geiger 2001-2025 A2",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2001-25-A2",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.245",maxx:"180.245",miny:"-90.245",maxy:"84.24"}},"gcce-kg-2001-25-B1":{title:"Koppen-Geiger 2001-2025 B1",name:"gcce:gcce-kg-2001-25-B1",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2001-25-B1",width:"20",height:"20",format:"image/png"},style:{"gcce-kg-2001-25-B1":{name:"gcce-kg-2001-25-B1",title:"Koppen-Geiger 2001-2025 B1",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2001-25-B1",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.245",maxx:"180.245",miny:"-90.245",maxy:"84.24"}},"gcce-kg-2001-25-B2":{title:"Koppen-Geiger 2001-2025 B2",name:"gcce:gcce-kg-2001-25-B2",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2001-25-B2",width:"20",height:"20",format:"image/png"},style:{"gcce-kg-2001-25-B2":{name:"gcce-kg-2001-25-B2",title:"Koppen-Geiger 2001-2025 B2",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2001-25-B2",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"84.0"}},"gcce-kg-2026-50-A1F1":{title:"Koppen-Geoger 2026-50 A1F1",name:"gcce:gcce-kg-2026-50-A1F1",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification  Abstract    In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.  Maps",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2026-50-A1F1",width:"20",height:"20",format:"image/png"},style:{"kg_2026-60a1f1":{name:"kg_2026-60a1f1",title:"Koeppen-Geiger climate classification 2026-2050 A1F1",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2026-50-A1F1",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"90.0"}},"gcce-kg-2026-50-B1":{title:"Koppen-Geiger 2026-50 B1",name:"gcce:gcce-kg-2026-50-B1",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification    In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2026-50-B1",width:"20",height:"20",format:"image/png"},style:{"gcce_kg_26-50_B1":{name:"gcce_kg_26-50_B1",title:"Koeppen-Geiger 2026-2050 B1",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2026-50-B1",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"84.236"}},"gcce-kg-2026-50-B2":{title:"Koppen-Geiger 2026-50 B2",name:"gcce:gcce-kg-2026-50-B2",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2026-50-B2",width:"20",height:"20",format:"image/png"},style:{"gcce-kg-2026-50-B2":{name:"gcce-kg-2026-50-B2",title:"Koppen-Geiger 2026-50 B2",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2026-50-B2",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"84.0"}},"gcce-kg-2051-78-A1F1":{title:"Koppen-Geiger 2051-78-A1F1",name:"gcce:gcce-kg-2051-78-A1F1",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2051-78-A1F1",width:"20",height:"20",format:"image/png"},style:{"gcce-kg-2051-75-A1F1":{name:"gcce-kg-2051-75-A1F1",title:"Koppen-Geiger 2051-78-A1F1",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce-kg-2051-78-A1F1",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"84.0"}},"gcce_kg_2026-50_A2":{title:"Koppen-Geiger 2026-50 A2",name:"gcce:gcce_kg_2026-50_A2",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification.    In a previous paper we presented an update of the highly referenced climate classification map, that of Wladimir K  ppen, which was published for the first time in 1900 and updated in its latest version by Rudolf Geiger in 1961. This updated world map of K  ppen Geiger climate classification was based on temperature and precipitation observations for the period 1951 2000. Here, we present a series of digital world maps for the extended period 1901 2100 to depict global trends in observed climate and projected climate change scenarios. World maps for the observational period 1901 2002 are based on recent data sets from the Climatic Research Unit (CRU) of the University of East Anglia and the Global Precipitation Climatology Centre (GPCC) at the German Weather Service. World maps for the period 2003 2100 are based on ensemble projections of global climate models provided by the Tyndall Centre for Climate Change Research. The main results comprise an estimation of the shifts of climate zones within the 21st century by considering different IPCC scenarios. The largest shifts between the main classes of equatorial climate (A), arid climate (B), warm temperate climate (C), snow climate (D) and polar climate (E) on global land areas are estimated as 2.6   3.4 % (E to D), 2.2   4.7 % (D to C), 1.3   2.0 (C to B) and 2.1   3.2 % (C to A).    Rubel, F., and M. Kottek, 2010: Observed and projected climate shifts 1901 2100 depicted by world maps of the K  ppen Geiger climate classification. Meteorol. Z., 19, 135 141. DOI: 10.1127/0941 2948/2010/0430.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce_kg_2026-50_A2",width:"20",height:"20",format:"image/png"},style:{"gcce_kg_2026-50_A2":{name:"gcce_kg_2026-50_A2",title:"Koeppen-Geiger 2026-2050 A2",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce_kg_2026-50_A2&amp;style=gcce_kg_2026-50_A2",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-180.0",maxx:"180.0",miny:"-90.0",maxy:"84.0"}},"gcce_precanomjun-aug2009":{title:"Precipitation Anomaly June-August 2009",name:"gcce:gcce_precanomjun-aug2009",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce_precanomjun-aug2009",width:"20",height:"20",format:"image/png"},style:{"raster":{name:"raster",title:"Raster",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=gcce_precanomjun-aug2009",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"0.0",maxx:"360.0",miny:"-90.0",maxy:"90.0"}}},afsis:{"afsis-aglands-croplands-2000":{title:"Africa Agricultural Croplands 2000 (SEDAC)",name:"afsis:afsis-aglands-croplands-2000",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"The Global Agricultural Lands in the Year 2000 data set represents the proportion of land area used as cropland (land used for the cultivation of food) and pasture (land used for grazing) in the year 2000. Satellite data from the Moderate Resolution Imaging Spectroradiometer (MODIS) and Satellite Pour l   Observation de la Terre (SPOT) Image Vegetation sensor were combined with agricultural inventory data to create a global data set. The maps show the extent and intensity of agricultural land use on earth. The data were compiled by Navin Ramankutty et al. (2008). This Web site provides access to the spatial data sets described in Ramankutty   s paper in the journal Global Biogeochemical Cycles.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-aglands-croplands-2000",width:"20",height:"20",format:"image/png"},style:{"afsis-aglands-croplands-2000:default":{name:"afsis-aglands-croplands-2000:default",title:"Africa Agricultural Croplands 2000 (SEDAC)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-aglands-croplands-2000",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-26.191",maxx:"58.718",miny:"-41.227",maxy:"43.682"}},"afsis-aglands-pastures-2000":{title:"Africa Agricultural Pasture Lands 2000 (SEDAC)",name:"afsis:afsis-aglands-pastures-2000",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-aglands-pastures-2000",width:"20",height:"20",format:"image/png"},style:{"afsis-aglands-pastures-2000:default":{name:"afsis-aglands-pastures-2000:default",title:"Africa Agricultural Pasture lands 2000 (SEDAC)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-aglands-pastures-2000",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.359",maxx:"57.886",miny:"-34.895",maxy:"37.35"}},"afsis-annual-mean-temperature":{title:"Annual Mean Temperature",name:"afsis:afsis-annual-mean-temperature",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Hijmans, R.J., S.E. Cameron, J.L. Parra, P.G. Jones and A. Jarvis, 2005. Very high resolution interpolated climate surfaces for global land areas. International Journal of Climatology 25: 1965 1978.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-annual-mean-temperature",width:"20",height:"20",format:"image/png"},style:{"afsis-annual-mean-temperature:default":{name:"afsis-annual-mean-temperature:default",title:"AfSIS Annual Mean Temperature (.1*degrees Celcius)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-annual-mean-temperature",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.4",maxx:"57.85",miny:"-34.85",maxy:"37.4"}},"afsis-anthropogenic-biomes":{title:"AfSIS Anthropogenic Biomes",name:"afsis:afsis-anthropogenic-biomes",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"In addition to standard land cover maps, Ellis and Ramankutty (2008) prepared the first global map of the anthropogenic biomes (18 classes; read more) showing dense settlements, villages, croplands, rangelands, forested lands and wildlands. FAO distributes a number of global thematic maps (usually at 5 arcmin resolution) including: suitability for various type of land use, soil and water resources, maps of environmental conditions, and similar. This can be downloaded directly from the FAO's GeoNetwork server.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-anthropogenic-biomes",width:"20",height:"20",format:"image/png"},style:{"afsis-anthropogenic-biomes:default":{name:"afsis-anthropogenic-biomes:default",title:"AfSIS Anthropogenic Biomes",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-anthropogenic-biomes",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.4",maxx:"57.85",miny:"-34.85",maxy:"37.4"}},"afsis-area-equipped-for-irrigation":{title:"Area Equipped for Irrigation",name:"afsis:afsis-area-equipped-for-irrigation",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:null,'abstract':"Stefan Siebert, Petra D  ll, Sebastian Feick, Jippe Hoogeveen and Karen Frenken (2007) Global Map of Irrigation Areas version 4.0.1. Johann Wolfgang Goethe University, Frankfurt am Main, Germany / Food and Agriculture Organization of the United Nations, Rome, Italy    http://www.fao.org/nr/water/aquastat/quickWMS/irrimap.htm",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-area-equipped-for-irrigation",width:"20",height:"20",format:"image/png"},style:{"afsis-area-equipped-for-irrigation:default":{name:"afsis-area-equipped-for-irrigation:default",title:"AfSIS Equipped for Irrigation (%)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-area-equipped-for-irrigation",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.4",maxx:"57.85",miny:"-34.85",maxy:"37.4"}},"afsis-digital-elevation-model":{title:"SRTM Digital Elevation Model (DEM)-90m",name:"afsis:afsis-digital-elevation-model",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Shuttle RADAR Topographic Mission (SRTM) derivative:  Digital Elevation Model (DEM)",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-digital-elevation-model",width:"20",height:"20",format:"image/png"},style:{"afsis-digital-elevation-model:default":{name:"afsis-digital-elevation-model:default",title:"SRTM Digital Elevation Model (DEM)-90m",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-digital-elevation-model&amp;style=afsis-digital-elevation-model%3Adefault",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-17.536",maxx:"51.413",miny:"-34.839",maxy:"37.346"}},"afsis-ecoregions":{title:"Ecoregions",name:"afsis:afsis-ecoregions",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Olson, D.M., Dinerstein, E., Wikramanayake, E.D., Burgess, N.D., Powell, G.V.N., Underwood, E.C., D'Amico, J.A., Itaou, I., Strand, H.E., Morisson, J.C., Loucks, C.J., Allnutt, T.F., Ricketts, T.H., Kura, Y., Lamoreux, J.F., Wettengel, W.W., Hedao, P. and K.R. Kassem.  2001.  Terrestrial Ecoregions of the World: A New Map of Life on Earth.  Bioscience 51, 933 938.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-ecoregions",width:"20",height:"20",format:"image/png"},style:{"afsis-ecoregions:default":{name:"afsis-ecoregions:default",title:"WWF Major Habitat Types",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-ecoregions",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.361",maxx:"63.498",miny:"-34.838",maxy:"37.348"}},"afsis-fao-soil-groups":{title:"FAO Soil groups",name:"afsis:afsis-fao-soil-groups",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Fischer, G., F. Nachtergaele, S. Prieler, H.T. van Velthuizen, L. Verelst, D. Wiberg, 2008. Global Agro ecological Zones Assessment for Agriculture (GAEZ 2008). IIASA, Laxenburg, Austria and FAO, Rome, Italy.    http://www.fao.org/nr/water/art/2008/soil_map2.html",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-fao-soil-groups",width:"20",height:"20",format:"image/png"},style:{"afsis-fao-soil-groups:default":{name:"afsis-fao-soil-groups:default",title:"AfSIS FAO Soil groups  ",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-fao-soil-groups",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.4",maxx:"57.85",miny:"-34.85",maxy:"37.4"}},"afsis-field-locations":{title:"Field Locations",name:"afsis:afsis-field-locations",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-field-locations",width:"20",height:"20",format:"image/png"},style:{"afsis-field-locations:default":{name:"afsis-field-locations:default",title:"Field Locations",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-field-locations&amp;style=afsis-field-locations%3Adefault",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-11.041",maxx:"37.517",miny:"-15.984",maxy:"14.84"}},"afsis-global-carbon-biomass":{title:"Global Carbon Biomass",name:"afsis:afsis-global-carbon-biomass",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Ruesch, Aaron, and Holly K. Gibbs. 2008. New IPCC Tier 1 Global Biomass Carbon Map For the Year 2000. Available online from the Carbon Dioxide Information Analysis Center [http://cdiac.ornl.gov], Oak Ridge National Laboratory, Oak Ridge, Tennessee.     http://cdiac.ornl.gov/epubs/ndp/global_carbon/carbon_documentation.html",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-global-carbon-biomass",width:"20",height:"20",format:"image/png"},style:{"afsis-global-carbon-biomass:default":{name:"afsis-global-carbon-biomass:default",title:"AfSIS Global Carbon Biomass  ",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-global-carbon-biomass",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.4",maxx:"57.85",miny:"-34.85",maxy:"37.4"}},"afsis-land-cover-meris":{title:"AfSIS Land Cover-MERIS",name:"afsis:afsis-land-cover-meris",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Land cover maps are categorical type maps, commonly derived using semi automated methods and remote sensing images as the main input. There are at least four global land cover mapping projects in the world where such data can be found (they differ in legends, resolution, temporal coverage etc). A Global Land Cover map for the year 2000 (GLC2000) at 1 km resolution is distributed by the Joint Research Centre in Italy (Bartholome et al., 2002). A slightly outdated (1998) global map of land cover is provided by the AVHRR Global Land Cover Classification, provided at resolutions of 1 and 8 km (Hansen et al. 2000). International Steering Committee for Global Mapping provides access to the Global Land Cover by National Mapping Organizations (GLCNMO) map, produced using MODIS data observed in 2003. European Space Agency has recently released the GlobCover Land Cover version V2 dataset, produced using the ENVISAT MERIS images. So far, this is the highest resolution (300 meters) Global Land Cover product in the world. The forth important source of land cover data is the MODIS12C1 Land Cover Type Yearly L3 Global product (available in resolution from 500 m to 0.05 arcdegrees). The advantage of using the MODIS Land cover maps (17 land cover classes defined by the International Geosphere Biosphere Programme   IGBP) is that this is a temporal dataset so that one can also derive various change indices and quantify the land cover dynamics (Friedl et al. 2002).",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-land-cover-meris",width:"20",height:"20",format:"image/png"},style:{"afsis-land-cover-meris:default":{name:"afsis-land-cover-meris:default",title:"AfSIS Land Cover-MERIS",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-land-cover-meris",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.4",maxx:"57.85",miny:"-34.85",maxy:"37.4"}},"afsis-max-temperature-warmest-month":{title:"Maximum Temperature Warmest Month",name:"afsis:afsis-max-temperature-warmest-month",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Hijmans, R.J., S.E. Cameron, J.L. Parra, P.G. Jones and A. Jarvis, 2005. Very high resolution interpolated climate surfaces for global land areas. International Journal of Climatology 25: 1965 1978.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-max-temperature-warmest-month",width:"20",height:"20",format:"image/png"},style:{"afsis-max-temperature-warmest-month:default":{name:"afsis-max-temperature-warmest-month:default",title:"AfSIS Maximum Temperature Warmest Month  ",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-max-temperature-warmest-month",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.4",maxx:"57.85",miny:"-34.85",maxy:"37.4"}},"afsis-national-boundaries":{title:"National Boundaries",name:"afsis:afsis-national-boundaries",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-national-boundaries",width:"20",height:"20",format:"image/png"},style:{"afsis-national-boundaries:default":{name:"afsis-national-boundaries:default",title:"National Boundaries",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-national-boundaries",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.367",maxx:"63.508",miny:"-34.833",maxy:"37.35"}},"afsis-project-area":{title:"Project Area",name:"afsis:afsis-project-area",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-project-area",width:"20",height:"20",format:"image/png"},style:{"afsis-project-area:default":{name:"afsis-project-area:default",title:"Project Area",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-project-area&amp;style=afsis-project-area%3Adefault",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-17.5",maxx:"50.483",miny:"-34.842",maxy:"16.0"}},"afsis-rivers":{title:"Rivers",name:"afsis:afsis-rivers",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-rivers",width:"20",height:"20",format:"image/png"},style:{"afsis-rivers:default":{name:"afsis-rivers:default",title:"Rivers",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-rivers&amp;style=afsis-rivers%3Adefault",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-17.24",maxx:"51.258",miny:"-34.764",maxy:"37.28"}},"afsis-sentinel-landscapes":{title:"Sentinel Sites",name:"afsis:afsis-sentinel-landscapes",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-sentinel-landscapes",width:"20",height:"20",format:"image/png"},style:{"afsis-sentinel-landscapes:default":{name:"afsis-sentinel-landscapes:default",title:"Sentinel sites",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-sentinel-landscapes",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-13.25",maxx:"49.032",miny:"-29.981",maxy:"14.848"}},"afsis-site-boundaries":{title:"Site Boundaries",name:"afsis:afsis-site-boundaries",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-site-boundaries",width:"20",height:"20",format:"image/png"},style:{"afsis-site-boundaries:default":{name:"afsis-site-boundaries:default",title:"Site Boundaries",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-site-boundaries&amp;style=afsis-site-boundaries%3Adefault",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-13.21",maxx:"48.991",miny:"-29.942",maxy:"14.81"}},"afsis-specific-catchment-area":{title:"Specific Catchment Area (SCA)-90m",name:"afsis:afsis-specific-catchment-area",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Shuttle RADAR Topographic Mission (SRTM) derivative:  Specific Catchment Area (SCA)",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-specific-catchment-area",width:"20",height:"20",format:"image/png"},style:{"afsis-specific-catchment-area:default":{name:"afsis-specific-catchment-area:default",title:"Specific Catchment Area (SCA)-90m",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-specific-catchment-area&amp;style=afsis-specific-catchment-area%3Adefault",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-17.536",maxx:"51.413",miny:"-34.839",maxy:"37.346"}},"afsis-topographic-wetness-index":{title:"Topographic Wetness Index (TWI)-90m",name:"afsis:afsis-topographic-wetness-index",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Shuttle RADAR Topographic Mission (SRTM) derivative:  Topographic Wetness Index (TWI)",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-topographic-wetness-index",width:"20",height:"20",format:"image/png"},style:{"afsis-topographic-wetness-index:default":{name:"afsis-topographic-wetness-index:default",title:"Topographic Wetness Index (TWI)-90m",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-topographic-wetness-index&amp;style=afsis-topographic-wetness-index%3Adefault",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-17.536",maxx:"51.413",miny:"-34.839",maxy:"37.346"}},"afsis-tree-cover":{title:"Tree Cover",name:"afsis:afsis-tree-cover",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"DeFries, R., M. Hansen, J.R.G. Townshend, A.C. Janetos, and T.R. Loveland (2000), 1 Kilometer Tree Cover Continuous Fields, 1.0, Department of Geography, University of Maryland, College Park, Maryland, 1992 1993.",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-tree-cover",width:"20",height:"20",format:"image/png"},style:{"afsis-tree-cover:default":{name:"afsis-tree-cover:default",title:"AfSIS Tree Cover (%)",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-tree-cover",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-25.4",maxx:"57.85",miny:"-34.85",maxy:"37.4"}},"afsis-watersheds":{title:"Watersheds",name:"afsis:afsis-watersheds",srs:"EPSG:4326",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",'abstract':"Dissolved watershed layers for Africa",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-watersheds",width:"20",height:"20",format:"image/png"},style:{"afsis-watersheds:default":{name:"afsis-watersheds:default",title:"Watersheds",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=afsis-watersheds&amp;style=afsis-watersheds%3Adefault",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-17.386",maxx:"51.375",miny:"-34.835",maxy:"37.346"}}},UNEP_Haiti:{"Administrative_Label":{title:"Administrative_Label",name:"UNEP_Haiti:Administrative_Label",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Administrative_Label",width:"20",height:"20",format:"image/png"},style:{"Administrative_Label":{name:"Administrative_Label",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Administrative_Label",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8286608.07",maxx:"-7981595.967",miny:"2042357.084",maxy:"2279723.2"}},"Communale":{title:"Communale",name:"UNEP_Haiti:Communale",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Communale",width:"20",height:"20",format:"image/png"},style:{"Communale":{name:"Communale",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Communale",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8291120.163",maxx:"-7972941.358",miny:"2040140.15",maxy:"2283604.065"}},"Departementale":{title:"Departementale",name:"UNEP_Haiti:Departementale",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Departementale",width:"20",height:"20",format:"image/png"},style:{"Departementale":{name:"Departementale",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Departementale",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8291120.163",maxx:"-7972941.358",miny:"2040140.15",maxy:"2283604.065"}},"Grande_Bassin_Versant":{title:"Grande_Bassin_Versant",name:"UNEP_Haiti:Grande_Bassin_Versant",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Grande_Bassin_Versant",width:"20",height:"20",format:"image/png"},style:{"Grande_Bassin_Versant":{name:"Grande_Bassin_Versant",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Grande_Bassin_Versant",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8291118.81",maxx:"-7972940.349",miny:"2040128.938",maxy:"2283613.829"}},"Pays":{title:"Pays",name:"UNEP_Haiti:Pays",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Pays",width:"20",height:"20",format:"image/png"},style:{"Pays":{name:"Pays",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Pays",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8291120.163",maxx:"-7972941.358",miny:"2040140.15",maxy:"2283604.065"}},"Reseau_Hydrographie":{title:"Reseau_Hydrographie",name:"UNEP_Haiti:Reseau_Hydrographie",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Reseau_Hydrographie",width:"20",height:"20",format:"image/png"},style:{"Reseau_Hydrographie":{name:"Reseau_Hydrographie",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Reseau_Hydrographie",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8289355.225",maxx:"-7975757.03",miny:"2040444.657",maxy:"2279793.561"}},"Reseau_Routier":{title:"Reseau_Routier",name:"UNEP_Haiti:Reseau_Routier",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Reseau_Routier",width:"20",height:"20",format:"image/png"},style:{"Reseau_Routier":{name:"Reseau_Routier",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Reseau_Routier",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8289392.348",maxx:"-7972897.705",miny:"2042043.275",maxy:"2280060.902"}},"Section_Communale":{title:"Section_Communale",name:"UNEP_Haiti:Section_Communale",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Section_Communale",width:"20",height:"20",format:"image/png"},style:{"Section_Communale":{name:"Section_Communale",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Section_Communale",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8291120.163",maxx:"-7972941.358",miny:"2040140.15",maxy:"2283604.065"}},"Villes":{title:"Villes",name:"UNEP_Haiti:Villes",srs:"EPSG:900913",url:"http://alpha.www.ciesin.columbia.edu/geoserver/wms",cached_url:"http://alpha.www.ciesin.columbia.edu/geoserver/gwc/service/wms",legend:{url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Villes",width:"20",height:"20",format:"image/png"},style:{"Villes":{name:"Villes",url:"http://alpha.www.ciesin.columbia.edu:80/geoserver/wms?request=GetLegendGraphic&amp;format=image%2Fpng&amp;width=20&amp;height=20&amp;layer=Villes",width:"20",height:"20",format:"image/png"}},boundingBox:{minx:"-8287938.756",maxx:"-7980739.281",miny:"2042191.528",maxy:"2275227.893"}}}};
if(typeof SEDAC=="undefined"||!SEDAC){var SEDAC={};SEDAC.gistUtils={};}else if(!SEDAC.gistUtils){SEDAC.gistUtils={};}
SEDAC.gistUtils.getElemHuidLevel=function(elem){var chuid=elem.attr('data-chuid');var dhuid=elem.attr('data-dhuid');var wmsLayer=elem.attr('data-wmsLayer');if
(typeof chuid!=='undefined'&&typeof dhuid!=='undefined'&&typeof wmsLayer!=='undefined'&&typeof SEDAC.layers[chuid]!=='undefined'&&typeof SEDAC.layers[chuid].datasets!=='undefined'&&typeof SEDAC.layers[chuid].datasets[dhuid]!=='undefined'&&typeof SEDAC.layers[chuid].datasets[dhuid].layers!=='undefined'&&typeof SEDAC.layers[chuid].datasets[dhuid].layers[wmsLayer]){return'wmsLayer';}
else if
(typeof chuid!=='undefined'&&typeof dhuid!=='undefined'&&typeof wmsLayer==='undefined'&&typeof SEDAC.layers[chuid]!=='undefined'&&typeof SEDAC.layers[chuid].datasets!=='undefined'&&typeof SEDAC.layers[chuid].datasets[dhuid]!=='undefined'){return'dhuid';}
else if
(typeof chuid!=='undefined'&&typeof dhuid==='undefined'&&typeof wmsLayer==='undefined'&&typeof SEDAC.layers[chuid]!=='undefined'){return'chuid';}
else
{return null;}};SEDAC.gistUtils.windowScrollTop=$(window).scrollTop();SEDAC.gistUtils.doIfGistReadyInterval;SEDAC.gistUtils.themes=[{title:'Agriculture',name:'agriculture'},{title:'Climate',name:'climate'},{title:'Conservation',name:'conservation'},{title:'Governance',name:'governance'},{title:'Hazards',name:'hazards'},{title:'Health',name:'health'},{title:'Land Use',name:'land-use'},{title:'Marine and Coastal',name:'marine-and-coastal'},{title:'Population',name:'population'},{title:'Poverty',name:'poverty'},{title:'Remote Sensing',name:'remote-sensing'},{title:'Sustainability',name:'sustainability'},{title:'Urban',name:'urban'},{title:'Water',name:'water'}];SEDAC.gistUtils.regions=[{title:'Global',bounds:'-180,-90,180,90'},{title:'North America',bounds:'-162,24,-60,80'},{title:'Central America',bounds:'-92,7,-69,23'},{title:'South America',bounds:'-81,-52,-36,12 '},{title:'Africa',bounds:'-16,-32,50,35 '},{title:'Europe',bounds:'-8,37,28,70'},{title:'Asia',bounds:'47,27,144,75'},{title:'South Asia',bounds:'61,8,104,37'},{title:'Oceania',bounds:'109,-39,154,3'}];SEDAC.gistUtils.getThemeLayerArray=function(name){var arr=[];switch(name){case'agriculture':arr=CIESIN.ol.createSedacLayers('anthromes','anthromes-anthropogenic-biomes-world-v1','anthromes-anthropogenic-biomes-world-v1');arr=arr.concat(CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-human-footprint-geographic','wildareas-v2-human-footprint-geographic'));arr=arr.concat(CIESIN.ol.createSedacLayers('ipcc-assess','ipcc-assess-ar4-observed-climate-impacts','ipcc-assess-ar4-observed-climate-impacts'));arr=arr.concat(CIESIN.ol.createSedacLayers('crop-climate','crop-climate-effects-climate-global-food-production','crop-climate-effects-climate-global-food-production'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_nat-resource-mgmt'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_agriculture'));break;case'climate':arr=CIESIN.ol.createSedacLayers('ndh','ndh-drought-hazard-frequency-distribution','ndh-drought-hazard-frequency-distribution');arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-drought-mortality-risks-distribution','ndh-drought-mortality-risks-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-flood-total-economic-loss-risk-deciles','ndh-flood-total-economic-loss-risk-deciles'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-cyclone-proportional-economic-loss-risk-deciles','ndh-cyclone-proportional-economic-loss-risk-deciles'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-drought-total-economic-loss-risk-deciles','ndh-drought-total-economic-loss-risk-deciles'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-cyclone-hazard-frequency-distribution','ndh-cyclone-hazard-frequency-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-cyclone-mortality-risks-distribution','ndh-cyclone-mortality-risks-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-cyclone-total-economic-loss-risk-deciles','ndh-cyclone-total-economic-loss-risk-deciles'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-flood-mortality-risks-distribution','ndh-flood-mortality-risks-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-flood-proportional-economic-loss-risk-deciles','ndh-flood-proportional-economic-loss-risk-deciles'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-flood-hazard-frequency-distribution','ndh-flood-hazard-frequency-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_climate-change'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_greenhouse-gas-emissions'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('ipcc-assess'));arr=arr.concat(CIESIN.ol.createSedacLayers('crop-climate'));break;case'conservation':arr=CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-last-of-the-wild-geographic');arr=arr.concat(CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-human-footprint-geographic'));arr=arr.concat(CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-human-influence-index-geographic'));arr=arr.concat(CIESIN.ol.createSedacLayers('anthromes'));arr=arr.concat(CIESIN.ol.createSedacLayers('species-v1'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_biodiversity'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_air-pollution-effects-on-ecosystems'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_biodiversity-and-habitat'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_fisheries'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_forestry'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_water-effects-on-ecosystems'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2015'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000'));arr=arr.concat(CIESIN.ol.createSedacLayers('ipcc-assess','ipcc-assess-ar4-observed-climate-impacts','ipcc-assess-ar4-observed-climate-impacts'));break;case'governance':arr=CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010');arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_particip-international-collaborate'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_private-sector-response'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_reduce-trans-environ-press'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_water-quality'));arr=arr.concat(CIESIN.ol.createSedacLayers('ipcc-assess','ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100','ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100'));break;case'hazards':arr=CIESIN.ol.createSedacLayers('ndh');arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_nat-disaster-vulnerability'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2015'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000'));arr=arr.concat(CIESIN.ol.createSedacLayers('ipcc-assess','ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100','ipcc-assess-synthetic-assessment-vulnerability-climate-2005-2050-2100'));break;case'health':arr=CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_environmental-burden-of-disease');arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_environ-health'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_air-pollution-effects-on-human-health'));arr=arr.concat(CIESIN.ol.createSedacLayers('crop-climate'));break;case'land-use':arr=CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-human-footprint-geographic','wildareas-v2-human-footprint-geographic');arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_land'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_biodiversity-and-habitat'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_forestry'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2015'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000'));arr=arr.concat(CIESIN.ol.createSedacLayers('anthromes'));arr=arr.concat(CIESIN.ol.createSedacLayers('ipcc-assess','ipcc-assess-ar4-observed-climate-impacts','ipcc-assess-ar4-observed-climate-impacts'));break;case'marine-and-coastal':arr=CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_fisheries');arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2015'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000'));arr=arr.concat(CIESIN.ol.createSedacLayers('ipcc-assess','ipcc-assess-ar4-observed-climate-impacts','ipcc-assess-ar4-observed-climate-impacts'));break;case'population':arr=CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000');arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_1995'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_1990'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-land-geographic-unit-area'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-centroids'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_reduce-pop-press'));break;case'poverty':arr=CIESIN.ol.createSedacLayers('povmap','povmap-global-subnational-infant-mortality-rates');arr=arr.concat(CIESIN.ol.createSedacLayers('povmap','povmap-global-subnational-prevalence-child-malnutrition'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_human-sustenance'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_environmental-burden-of-disease'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2015'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000'));break;case'remote-sensing':arr=CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-human-influence-index-geographic');arr=arr.concat(CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-human-footprint-geographic'));arr=arr.concat(CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-last-of-the-wild-geographic'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-cyclone-hazard-frequency-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-cyclone-mortality-risks-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('anthromes'));break;case'sustainability':arr=CIESIN.ol.createSedacLayers('esi');arr=arr.concat(CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-human-footprint-geographic'));arr=arr.concat(CIESIN.ol.createSedacLayers('wildareas-v2','wildareas-v2-last-of-the-wild-geographic'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2015'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000'));arr=arr.concat(CIESIN.ol.createSedacLayers('ipcc-assess'));arr=arr.concat(CIESIN.ol.createSedacLayers('crop-climate'));break;case'urban':arr=CIESIN.ol.createSedacLayers('anthromes');arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_air-quality'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_reduce-air-pollution'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_reduce-ecosystem-stress'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_reduce-waste-consump-press'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2015'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000'));break;case'water':arr=CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_water-effects-on-human-health');arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_water-quality'));arr=arr.concat(CIESIN.ol.createSedacLayers('esi','esi-environmental-sustainability-index-2005','esi-environmental-sustainability-index-2005_water-quantity'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-drought-hazard-frequency-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-drought-mortality-risks-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-flood-total-economic-loss-risk-deciles'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-flood-mortality-risks-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-flood-proportional-economic-loss-risk-deciles'));arr=arr.concat(CIESIN.ol.createSedacLayers('ndh','ndh-flood-hazard-frequency-distribution'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('epi','epi-environmental-performance-index-2010','epi-environmental-performance-index-2010_water-effects-on-ecosystems'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2010'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density-future-estimates','gpw-v3-population-density-future-estimates_2015'));arr=arr.concat(CIESIN.ol.createSedacLayers('gpw-v3','gpw-v3-population-density','gpw-v3-population-density_2000'));break;}
return arr;};SEDAC.gistUtils.destroy=function(elem){if(typeof CIESIN.ol.gistClient!=='undefined'){CIESIN.ol.gistClient.destroy();delete CIESIN.ol.gistClient;elem.remove();}};SEDAC.gistUtils.fullscreen=function(bool,map){var clientContainer=$('#'+map.gist_id);if(typeof bool==='boolean'&&bool&&!$(this).hasClass('fullscreen')){SEDAC.gistUtils.windowScrollTop=$(window).scrollTop();$('#wrapper-head, #'+map.gist_id).removeAttr('style').addClass('fullscreen');clientContainer.addClass('detached').detach().appendTo('body');if($('#gist-windowed.modal').length){$('#gist-windowed.modal').hide();}
if($('#modal-window-blinds').length){$('#modal-window-blinds').hide();}}else if(typeof bool==='boolean'&&!bool){$('#wrapper-head, #'+map.gist_id).removeClass('fullscreen');$(window).scrollTop(SEDAC.gistUtils.windowScrollTop);if($('#gist-windowed.modal').length){$('#gist-windowed.modal').show();}
$('#gist-windowed').append(clientContainer.removeClass('detached').detach());if($('#modal-window-blinds').length){$('#modal-window-blinds').show();}}
$(window).resize();};SEDAC.gistUtils.loadTheme=function(containerEl,themeName,regionBounds){var prevZoom=null;var prevCenter=null;var layerArr;var themeSelectLabel,themeSelect,regionSelectLabel,regionSelect;if(typeof CIESIN.ol.gistClient!=='undefined'){prevZoom=CIESIN.ol.gistClient.getZoom();prevCenter=CIESIN.ol.gistClient.getCenter();SEDAC.gistUtils.destroy(containerEl.find('.gist-container'));}
bounds=CIESIN.ol.createLayer(SEDAC.layers.cartographic.layers['national-boundaries'],{},{isBaseLayer:false});bounds.setOpacity(0.65);uiOptions={layers:{enabled:true},titlebar:{enabled:true}};layerArr=SEDAC.gistUtils.getThemeLayerArray(themeName);layerArr.push(bounds);CIESIN.ol.gistClient=CIESIN.ol.createMap(containerEl,{layers:layerArr,gist_ui:uiOptions});if(prevZoom&&prevCenter){CIESIN.ol.gistClient.zoomTo(prevZoom);CIESIN.ol.gistClient.setCenter(prevCenter);}
if(themeName==='hazards'){var selectedLyr;$(layerArr).each(function(){if(this.CIESIN_REF.name==='ndh:ndh-earthquake-frequency-distribution'){selectedLyr=this;}});CIESIN.ol.gistClient.setBaseLayer(selectedLyr);CIESIN.ol.ui.layers(CIESIN.ol.gistClient,{gist_ui:uiOptions});}
themeSelectLabel=$("<label for='gist-theme-select'>Theme: </label>");themeSelect=$("<select/>",{id:"gist-theme-select",change:function(){SEDAC.gistUtils.loadTheme(containerEl,$(this).val(),$('#gist-region-select').val());}});$(SEDAC.gistUtils.themes).each(function(i){var themeOptEl=$("<option value='"+SEDAC.gistUtils.themes[i].name+"'>"+SEDAC.gistUtils.themes[i].title+"</option>").appendTo(themeSelect);if(SEDAC.gistUtils.themes[i].name===themeName){themeOptEl.attr('selected','selected');}});regionSelectLabel=$("<label for='gist-region-select'>Region: </label>");regionSelect=$("<select/>",{id:"gist-region-select",change:function(){var bndsArr=$(this).val().split(',');CIESIN.ol.gistClient.zoomToExtent(new OpenLayers.Bounds(parseInt(bndsArr[0]),parseInt(bndsArr[1]),parseInt(bndsArr[2]),parseInt(bndsArr[3])));}});$(SEDAC.gistUtils.regions).each(function(i){var regionOptEl=$("<option value='"+SEDAC.gistUtils.regions[i].bounds+"'>"+SEDAC.gistUtils.regions[i].title+"</option>").appendTo(regionSelect);if(typeof regionBounds==='string'&&regionBounds===SEDAC.gistUtils.regions[i].bounds){regionOptEl.attr('selected','selected');}});themeRegionDiv=$("<div id='gist-theme-region-select'/>").append(themeSelectLabel).append(themeSelect).append(regionSelectLabel).append(regionSelect);$('#'+CIESIN.ol.gistClient.gist_id+' .gist-titlebar').append(themeRegionDiv);};SEDAC.gistUtils.generateClient=function(elem){var elemName=elem[0].tagName.toLowerCase();var titleBarEl;var parentEl;var layerArr;var mapTglFullscreen,mapClose;var chuid,dhuid,wmsLayer;var bounds,uiOptions;if((elemName==='a'||elemName==='div')&&SEDAC.gistUtils.getElemHuidLevel(elem)===null){return false;}
if(elemName==='a'&&!$('#gist-windowed').length){parentEl=$('<div id="gist-windowed" class="modal"/>').appendTo($('body'));parentEl.css({width:'990px',height:'450px',top:'0px',left:'0px',position:'fixed',zIndex:9100});parentEl.position({my:'center',at:'center',of:window});SEDAC.ui.blinds(true);}else if(elemName==='a'&&$('#gist-windowed').length){parentEl=$('#gist-windowed.modal');parentEl.show().position({my:'center',at:'center',of:window});SEDAC.ui.blinds(true);}else{parentEl=elem;}
if($('#gist-windowed.modal').length){$(window).resize(function(){$('#gist-windowed.modal').position({my:'center',at:'center',of:window});});}
if(SEDAC.gistUtils.getElemHuidLevel(elem)!==null){chuid=elem.attr('data-chuid');dhuid=elem.attr('data-dhuid');wmsLayer=elem.attr('data-wmsLayer');if(SEDAC.gistUtils.getElemHuidLevel(elem)==='chuid'){layerArr=CIESIN.ol.createSedacLayers(chuid);}else if(SEDAC.gistUtils.getElemHuidLevel(elem)==='dhuid'){layerArr=CIESIN.ol.createSedacLayers(chuid,dhuid);}else if(SEDAC.gistUtils.getElemHuidLevel(elem)==='wmsLayer'){layerArr=CIESIN.ol.createSedacLayers(chuid,dhuid,wmsLayer);}
bounds=CIESIN.ol.createLayer(SEDAC.layers.cartographic.layers['national-boundaries'],{},{isBaseLayer:false});bounds.setOpacity(0.65);uiOptions={layers:{enabled:true},titlebar:{enabled:true}};if(parentEl.hasClass('gist-dataset-embeded'))uiOptions.layers.visible=false;layerArr.push(bounds);CIESIN.ol.gistClient=CIESIN.ol.createMap(parentEl,{layers:layerArr,gist_ui:uiOptions});titleBarEl=$('#'+CIESIN.ol.gistClient.gist_id+' .gist-titlebar');if(elemName==='a'||elemName==='div'){mapTglFullscreen=$("<a class='gist-client-tgl-fullscreen' href='#'>fullscreen</a>");mapTglFullscreen.click(function(){if($(this).text()==='fullscreen'){SEDAC.gistUtils.fullscreen(true,CIESIN.ol.gistClient);$(this).text('restore');}else{SEDAC.gistUtils.fullscreen(false,CIESIN.ol.gistClient);$(this).text('fullscreen');}
return false;});}
if(elemName==='a'){mapClose=$("<a class='gist-client-close' href='#'>close</a>");mapClose.click(function(){if($('#'+CIESIN.ol.gistClient.gist_id).hasClass('fullscreen')){SEDAC.gistUtils.fullscreen(false,CIESIN.ol.gistClient);$('#'+CIESIN.ol.gistClient.gist_id+' .gist-client-tgl-fullscreen').text('fullscreen');}
SEDAC.gistUtils.destroy($('#'+CIESIN.ol.gistClient.gist_id));parentEl.hide();SEDAC.ui.blinds(false);return false;});titleBarEl.append($('<span class="gist-titlebar-actions"/>').append(mapTglFullscreen).append(mapClose));}else if(elemName==='div'){titleBarEl.append($('<span class="gist-titlebar-actions"/>').append(mapTglFullscreen));}}else{SEDAC.gistUtils.loadTheme(parentEl,'population');}};$(document).ready(function(){if($('.gistAddLinks').length){var parentEls=$('.gistAddLinks');parentEls.each(function(){parentEl=$(this);var chuid=parentEl.attr('data-chuid');var dhuid=parentEl.attr('data-dhuid');if(SEDAC.gistUtils.getElemHuidLevel(parentEl)=='chuid'){var count=0;for(var dataset in SEDAC.layers[chuid].datasets){for(var layer in SEDAC.layers[chuid].datasets[dataset].layers){count++;}}
if(parentEl.hasClass('map-collection')){parentEl.find('.map-links').append("<li><a class='gistLoadClient' href='#"+chuid+"' data-chuid='"+chuid+"'>WMS Layers</a> <span class='item-count'>("+count+")</span></li>");}}else if(SEDAC.gistUtils.getElemHuidLevel(parentEl)=='dhuid'){}});}
if($('.gistLoadClient')){$('.gistLoadClient').each(function(){var thisElem=$(this);var thisElemName=thisElem[0].tagName.toLowerCase();if(thisElemName==='a'){thisElem.click(function(){SEDAC.gistUtils.generateClient(thisElem);window.location.hash=$(this).attr('href');return false;});}else if(thisElemName==='div'||thisElemName==='body'){SEDAC.gistUtils.generateClient(thisElem);}});}});;
var tophat_settings={'headerAlign':'center','hideBorder':true,'bgColor':"#DEDEDE",'fgColor':"#DEDEDE",'arrowColor':"#888",'homeColor':"#535353",'overlayColor':"rgb(180,180,180)",'overlayOpacity':0.95,'linkColor':"#535353",'linkHoverColor':"#000",'headerColor':"#535353",'headerHoverColor':"#000",'styles':{'#eosdis-tophat-navi':{'border-bottom':'1px solid #C2C2C2'},'#eosdis-tophat-content':{'margin-top':'-1px'}}};
function tophat_loadscript(src,callback){var tophat_script=document.createElement('script');var tophat_head=document.getElementsByTagName('head')[0];var tophat_complete=false;tophat_script.type='text/javascript';tophat_script.src=src;tophat_script.defer='defer';tophat_script.onload=tophat_script.onreadystatechange=function(){if(!tophat_complete&&(!this.readyState||this.readyState=='loaded'||this.readyState=='complete')){tophat_complete=true;tophat_script.onload=tophat_script.onreadystatechange=null;if(typeof(callback)=='function'){callback();}}}
tophat_head.appendChild(tophat_script);};tophat_init=function($){$.fn.extend({'tophat':function(option){var instance=this;this.minWidth=950;this.base='http://earthdata.nasa.gov/tophat.html';this.css='http://earthdata.nasa.gov/tophat.css';this.html='<table id="eosdis-tophat" cellspacing="0" cellpadding="0"> <tr> <td align="center" id="eosdis-tophat-navi"><ul class="tophat-csshover"><li class="eosdis-home"> <a href="http://earthdata.nasa.gov/" class="tophat-logo eosdis-home-link">NASA Earth Data</a> </li><li class="eosdis-main-li"> <a href="javascript:void(0);" id="eosdis-tab-1" class="eosdis-tophat-header-tab">Data Discovery <span class="eosdis-tophat-arrow">&#9660;</span> </a> </li><li class="eosdis-main-li"> <a href="javascript:void(0);" id="eosdis-tab-2" class="eosdis-tophat-header-tab">Data Centers <span class="eosdis-tophat-arrow">&#9660;</span> </a> </li><li class="eosdis-main-li"> <a href="javascript:void(0);" id="eosdis-tab-3" class="eosdis-tophat-header-tab">Community <span class="eosdis-tophat-arrow">&#9660;</span> </a> </li><li class="eosdis-main-li"> <a href="javascript:void(0);" id="eosdis-tab-4" class="eosdis-tophat-header-tab">Science Disciplines <span class="eosdis-tophat-arrow">&#9660;</span> </a> </li><li class="eosdis-search eosdis-main-li"> <a href="javascript:void(0);" id="eosdis-tab-5">Search EOSDIS <span class="eosdis-tophat-arrow">&#9660;</span> </a> </li> </ul></td> </tr> <tr> <td align="center"><div id="eosdis-tophat-content" class="tophat-csshover"><div style="display: none;" class="eosdis-tophat-tab eosdis-menu-1456" id="eosdis-tab-1"><ul class="menu"><li class="first expanded"><a href="http://earthdata.nasa.gov/data/discovering-data" title="">Web Clients</a><ul class="menu"><li class="first leaf"><a href="http://demex.cr.usgs.gov/DEMEX/" title="">DEMEX (LPDAAC)</a></li> <li class="leaf"><a href="http://gcmd.nasa.gov/" title="">GCMD</a></li> <li class="leaf"><a href="http://disc.sci.gsfc.nasa.gov/giovanni" title="A simple and intuitive way to visualize, analyze, and access vast amounts of Earth science remote sensing data without having to download the data.">GES DISC</a></li> <li class="leaf"><a href="http://glovis.usgs.gov/" title="">GloVIS (LPDAAC)</a></li> <li class="leaf"><a href="http://ghrc.msfc.nasa.gov/hydro/" title="">HyDRO (GHRC)</a></li> <li class="leaf"><a href="http://mercury.ornl.gov/ornldaac/index.jsp?tab=advanced" title="">Mercury (ORNL)</a></li> <li class="leaf"><a href="http://mirador.gsfc.nasa.gov" title="Keyword search and tree navigation for GES DISC datasets">Mirador (GES DISC)</a></li> <li class="leaf"><a href="http://nsidc.org/data/polaris/" title="">Polaris (NSIDC)</a></li> <li class="leaf"><a href="http://reverb.echo.nasa.gov/reverb/" title="">Reverb</a></li> <li class="leaf"><a href="http://sedac.ciesin.columbia.edu/data/sets/browse" title="">SEDAC</a></li> <li class="leaf"><a href="http://disc.gsfc.nasa.gov/SSW/" title="Request data subsets from EOSDIS with a simplified user interface">Simple Subset Wizard (SSW)</a></li> <li class="last leaf"><a href="https://ursa.asf.alaska.edu/cgi-bin/login/guest/" title="">URSA (ASF)</a></li> </ul></li> <li class="expanded"><a href="http://earthdata.nasa.gov/data/references" title="">References</a><ul class="menu"><li class="first leaf"><a href="http://earthdata.nasa.gov/data/references/processing-levels" title="">Processing Levels</a></li> <li class="leaf"><a href="http://earthdata.nasa.gov/data/references/data-metadata-formats" title="">Data &amp; Metadata Formats</a></li> <li class="last leaf"><a href="http://earthdata.nasa.gov/data/references/nasa-earth-system-science-remote-sensors" title="">Remote Sensors</a></li> </ul></li> <li class="expanded"><a href="http://earthdata.nasa.gov/data/discovering-data" title="">OGC Services</a><ul class="menu"><li class="first leaf"><a href="http://nsidc.org/data/atlas/ogc_services.html" title="">NSIDC Map Services</a></li> <li class="leaf"><a href="http://sedac.ciesin.columbia.edu/maps/services/wms" title="">SEDAC Services</a></li> <li class="last leaf"><a href="http://daac.ornl.gov/spatial_data_access.shtml " title="">ORNL DAAC Services</a></li> </ul></li> <li class="expanded"><a href="http://lance.nasa.gov/" title="">Near Real-Time </a><ul class="menu"><li class="first leaf"><a href="http://lance.nasa.gov/" title="">LANCE</a></li> <li class="last leaf"><a href="http://podaac.jpl.nasa.gov/" title="">PO.DAAC</a></li> </ul></li> <li class="last expanded"><a href="http://earthdata.nasa.gov/data/discovering-data" title="">Data/Service Casts</a><ul class="menu"><li class="first last leaf"><a href="http://nsidc.org/libre/" title="">Libre (NSIDC)</a></li> </ul></li> </ul><div style="clear: both;"></div> </div><div style="display: none;" class="eosdis-tophat-tab eosdis-menu-1457" id="eosdis-tab-2"><ul class="menu"><li class="first leaf"><a href="http://www.asf.alaska.edu/program/sdc" title="">Alaska Satellite Facility SAR Data Center (ASF SDC)</a></li> <li class="leaf"><a href="http://eosweb.larc.nasa.gov/" title="">NASA Langley Research Center Atmospheric Science Data Center (LaRC ASDC)</a></li> <li class="leaf"><a href="http://cddis.gsfc.nasa.gov/" title="">Crustal Dynamics Data Information System (CDDIS)</a></li> <li class="leaf"><a href="http://nsidc.org/daac/index.html" title="">National Snow and Ice Data Center (NSIDC) DAAC</a></li> <li class="leaf"><a href="http://ghrc.msfc.nasa.gov/" title="">Global Hydrology Resource Center (GHRC)</a></li> <li class="leaf"><a href="http://daac.ornl.gov/" title="">Oak Ridge National Laboratory (ORNL) DAAC</a></li> <li class="leaf"><a href="http://disc.sci.gsfc.nasa.gov/" title="">Goddard Earth Sciences Data and Information Services Center (GES DISC)</a></li> <li class="leaf"><a href="http://oceancolor.gsfc.nasa.gov/" title="">Ocean Biology Processing Group</a></li> <li class="leaf"><a href="https://lpdaac.usgs.gov/" title="">Land Processes (LP) DAAC</a></li> <li class="leaf"><a href="http://podaac.jpl.nasa.gov/" title="">Physical Oceanography (PO) DAAC</a></li> <li class="leaf"><a href="http://ladsweb.nascom.nasa.gov/" title="">Level 1 Atmosphere Archive and Distribution System (MODAPS LAADS)</a></li> <li class="last leaf"><a href="http://sedac.ciesin.columbia.edu/" title="">Socioeconomic Data and Applications Data Center (SEDAC)</a></li> </ul><div style="clear: both;"></div> </div><div style="display: none;" class="eosdis-tophat-tab eosdis-menu-1459" id="eosdis-tab-3"><ul class="menu"><li class="first expanded"><a href="http://www.nasa.gov/" title="">NASA</a><ul class="menu"><li class="first leaf"><a href="http://science.nasa.gov/earth-science/earth-science-at-nasa/" title="">NASA Earth Science</a></li> <li class="last leaf"><a href="http://science.nasa.gov/earth-science/earth-science-data/" title="">NASA Earth Science Data</a></li> </ul></li> <li class="expanded"><a href="http://earthdata.nasa.gov/our-community/international" title="">International</a><ul class="menu"><li class="first leaf"><a href="http://www.ceos.org/" title="Committee on Earth Observation Satellites">CEOS</a></li> <li class="leaf"><a href="http://www.ceos.org/index.php?option=com_content&amp;view=category&amp;layout=blog&amp;id=77&amp;Itemid=199" title="Working Group on Information Systems and Services">CEOS WGISS</a></li> <li class="leaf"><a href="http://www.esa.int/esaCP/index.html" title="European Space Agency">ESA</a></li> <li class="leaf"><a href="http://earthobservations.org/" title="Group on Earth Observations">GEO</a></li> <li class="last leaf"><a href="http://www.earthobservations.org/geoss.shtml" title="Global Earth Observation System of Systems">GEOSS</a></li> </ul></li> <li class="expanded"><a href="http://earthdata.nasa.gov/our-community/community-data-system-programs" title="">ES Community</a><ul class="menu"><li class="first leaf"><a href="http://www.esipfed.org/" title="Federation of Earth Science Information Partners">ESIP Federation</a></li> <li class="leaf"><a href="http://solidearth.jpl.nasa.gov/insar/documents/IEOS_Draft_Strategic_Plan_Extracts.pdf" title="Integrated Earth Observation System">IEOS</a></li> <li class="leaf"><a href="http://www.iso.org" title="International Organization for Standardization">ISO</a></li> <li class="leaf"><a href="http://www.fgdc.gov/" title="Federal Geographic Data Committee ">FGDC</a></li> <li class="leaf"><a href="http://climate.nasa.gov" title="">NASA Global Climate Change</a></li> <li class="leaf"><a href="http://www.nitrd.gov/" title="Networking and Information Technology Research and Development">NITRD</a></li> <li class="leaf"><a href="http://www.noaa.gov/" title="National Oceanic and Atmospheric Administration">NOAA</a></li> <li class="leaf"><a href="http://www.opengeospatial.org/" title="Open Geospatial Consortium">OGC</a></li> <li class="last leaf"><a href="http://www.usgeo.gov/" title="United States Group on Earth Observations">USGEO</a></li> </ul></li> <li class="last expanded"><a href="http://earthdata.nasa.gov/" title="Earth Observing System Data and Information System">EOSDIS</a><ul class="menu"><li class="first last leaf"><a href="http://earthdata.nasa.gov/our-community/esdswg" title="Earth Science Data System Working Groups">ESDSWG</a></li> </ul></li> </ul><div style="clear: both;"></div> </div><div style="display: none;" class="eosdis-tophat-tab eosdis-menu-1458" id="eosdis-tab-4"><ul class="menu"><li class="first expanded"><a href="http://earthdata.nasa.gov/data/data-centers" title="">Atmosphere</a><ul class="menu"><li class="first leaf"><a href="http://eosweb.larc.nasa.gov/" title="NASA Langley Research Center Atmospheric Science Data Center">LaRC ASDC</a></li> <li class="leaf"><a href="http://cddis.gsfc.nasa.gov/" title="Crustal Dynamics Data Information System">CDDIS</a></li> <li class="leaf"><a href="http://disc.sci.gsfc.nasa.gov/" title="">GES DISC</a></li> <li class="leaf"><a href="http://ghrc.msfc.nasa.gov/" title="">GHRC DAAC</a></li> <li class="leaf"><a href="https://lpdaac.usgs.gov/" title="">LP DAAC</a></li> <li class="leaf"><a href="http://ladsweb.nascom.nasa.gov/" title="">MODAPS DAAC</a></li> <li class="leaf"><a href="http://nsidc.org/daac/index.html" title="National Snow and Ice Data Center">NSIDC DAAC</a></li> <li class="last leaf"><a href="http://daac.ornl.gov/" title="">ORNL DAAC</a></li> </ul></li> <li class="expanded"><a href="http://earthdata.nasa.gov/data/data-centers" title="">Calibrated Radiance and Solar Radiance</a><ul class="menu"><li class="first leaf"><a href="http://www.asf.alaska.edu/" title="Alaska Satellite Facility SAR Data Center">ASF DAAC</a></li> <li class="leaf"><a href="http://eosweb.larc.nasa.gov/" title="NASA Langley Research Center Atmospheric Science Data Center">LaRC ASDC</a></li> <li class="leaf"><a href="http://disc.sci.gsfc.nasa.gov/" title="">GES DISC</a></li> <li class="leaf"><a href="http://ghrc.msfc.nasa.gov/" title="">GHRC DAAC</a></li> <li class="leaf"><a href="https://lpdaac.usgs.gov/" title="">LP DAAC</a></li> <li class="leaf"><a href="http://ladsweb.nascom.nasa.gov/" title="">MODAPS DAAC</a></li> <li class="leaf"><a href="http://nsidc.org/daac/index.html" title="National Snow and Ice Data Center">NSIDC DAAC</a></li> <li class="leaf"><a href="http://daac.ornl.gov/" title="">ORNL DAAC</a></li> <li class="last leaf"><a href="http://podaac.jpl.nasa.gov/" title="">PO.DAAC</a></li> </ul></li> <li class="expanded"><a href="http://earthdata.nasa.gov/data/data-centers" title="">Cryosphere</a><ul class="menu"><li class="first leaf"><a href="http://www.asf.alaska.edu/" title="Alaska Satellite Facility SAR Data Center">ASF DAAC</a></li> <li class="leaf"><a href="http://eosweb.larc.nasa.gov/" title="NASA Langley Research Center Atmospheric Science Data Center">LaRC ASDC</a></li> <li class="leaf"><a href="http://cddis.gsfc.nasa.gov/" title="Crustal Dynamics Data Information System">CDDIS</a></li> <li class="leaf"><a href="https://lpdaac.usgs.gov/" title="">LP DAAC</a></li> <li class="leaf"><a href="http://nsidc.org/daac/index.html" title="">NSIDC DAAC</a></li> <li class="last leaf"><a href="http://podaac.jpl.nasa.gov/" title="">PO.DAAC</a></li> </ul></li> <li class="expanded"><a href="http://earthdata.nasa.gov/data/data-centers" title="">Human Dimensions</a><ul class="menu"><li class="first leaf"><a href="http://sedac.ciesin.columbia.edu/" title="">SEDAC</a></li> <li class="leaf"><a href="http://nsidc.org/daac/index.html" title="National Snow and Ice Data Center">NSIDC DAAC</a></li> <li class="last leaf"><a href="http://daac.ornl.gov/" title="">ORNL DAAC</a></li> </ul></li> <li class="expanded"><a href="http://earthdata.nasa.gov/data/data-centers" title="">Land</a><ul class="menu"><li class="first leaf"><a href="http://www.asf.alaska.edu/" title="Alaska Satellite Facility SAR Data Center">ASF DAAC</a></li> <li class="leaf"><a href="http://eosweb.larc.nasa.gov/" title="NASA Langley Research Center Atmospheric Science Data Center">LaRC ASDC</a></li> <li class="leaf"><a href="http://cddis.gsfc.nasa.gov/" title="Crustal Dynamics Data Information System">CDDIS</a></li> <li class="leaf"><a href="http://disc.sci.gsfc.nasa.gov/" title="">GES DISC</a></li> <li class="leaf"><a href="https://lpdaac.usgs.gov/" title="">LP DAAC</a></li> <li class="leaf"><a href="http://nsidc.org/daac/index.html" title="National Snow and Ice Data Center">NSIDC DAAC</a></li> <li class="leaf"><a href="http://daac.ornl.gov/" title="">ORNL DAAC</a></li> <li class="leaf"><a href="http://podaac.jpl.nasa.gov/" title="">PO.DAAC</a></li> <li class="last leaf"><a href="http://sedac.ciesin.columbia.edu/" title="">SEDAC</a></li> </ul></li> <li class="last expanded"><a href="http://earthdata.nasa.gov/data/data-centers" title="">Ocean</a><ul class="menu"><li class="first leaf"><a href="http://www.asf.alaska.edu/" title="Alaska Satellite Facility SAR Data Center">ASF DAAC</a></li> <li class="leaf"><a href="http://eosweb.larc.nasa.gov/" title="NASA Langley Research Center Atmospheric Science Data Center">LaRC ASDC</a></li> <li class="leaf"><a href="http://cddis.gsfc.nasa.gov/" title="Crustal Dynamics Data Information System">CDDIS</a></li> <li class="leaf"><a href="http://disc.sci.gsfc.nasa.gov/" title="">GES DISC</a></li> <li class="leaf"><a href="http://ghrc.msfc.nasa.gov/" title="">GHRC DAAC</a></li> <li class="leaf"><a href="http://nsidc.org/daac/index.html" title="National Snow and Ice Data Center">NSIDC DAAC</a></li> <li class="leaf"><a href="http://oceancolor.gsfc.nasa.gov/" title="">OceanColor Web</a></li> <li class="leaf"><a href="http://daac.ornl.gov/" title="">ORNL DAAC</a></li> <li class="last leaf"><a href="http://podaac.jpl.nasa.gov/" title="">PO.DAAC</a></li> </ul></li> </ul><div style="clear: both;"></div> </div><div style="display: none;" class="eosdis-tophat-tab eosdis-menu-search" id="eosdis-tab-5"> <form action="http://earthdata.nasa.gov/search" method="get" id="search-earthdata-tophat" accept-charset="UTF-8"><div> <div class="gsa-search-form-container"> <div class="gsa-search-form"> <div class="gsa-search-term"> <div class="form-item form-type-textfield form-item-term"> <input type="text" id="edit-term" name="term" value="NASA Earth Data Text Search" size="40" maxlength="255" class="form-text" /> </div> </div> <div class="gsa-search-advanced"> </div> <div class="gsa-search-submit"> </div> <div style="clear: both;"></div> </div> </div> <div class="gsa-search-result"> </div> <input type="hidden" name="form_id" value="search-earthdata" /> </div></form> <div style="clear: both"></div> </div> </div> </td> </tr> </table>';this.style='<style type="text/css">/* Reset Styles */ #eosdis-tophat li { border: none; float: none; height: auto; text-transform: none; } #eosdis-tophat a { text-transform: none; top: 0; } .eosdis-zoom-fix * { zoom: 1 !important; position: relative; } /* End Reset Styles */ #eosdis-tophat, #eosdis-tophat td, #eosdis-tophat th { border: none; margin: 0; padding: 0; } #eosdis-tophat a, #eosdis-tophat a:hover, #eosdis-tophat a:active, #eosdis-tophat a:link, #eosdis-tophat a:visited { border: none !important; text-decoration: none !important; } #eosdis-tophat td, #eosdis-tophat th { padding: 0 !important; margin: 0 !important; } #eosdis-tophat ul, #eosdis-tophat li { list-style: none !important; list-style-image: none !important; } #eosdis-tophat .tophat-csshover a:hover, #eosdis-tophat a:active { color: #FFFFFF !important; } #eosdis-tophat a, #eosdis-tophat a:link, #eosdis-tophat a:visited, #eosdis-tophat-navi label { font: 12px Helvetica, Arial !important; text-decoration: none !important; } #eosdis-tophat { position: relative } #eosdis-tophat-navi, #eosdis-tophat-content { margin: 0 auto; } #eosdis-tophat-navi { background-color: #5B6F6F; } #eosdis-tophat-navi ul { background-color: #414F4F; border: solid #6D7878; border-width: 0 1px; padding: 2px 0; margin: 0 !important; line-height: 1 !important; text-align: left; } #eosdis-tophat-navi ul, #eosdis-tophat-content { min-width: 898px; } #eosdis-tophat-navi li { display: inline !important; line-height: 1 !important; } #eosdis-tophat-navi li a, #eosdis-tophat-navi label { padding: 2px 20px; color: #A3BCD5; vertical-align: middle !important; margin-bottom: -1px !important; } #eosdis-tophat-navi li a.eosdis-tophat-active { color: #FFFFFF; background-color: #000000; } #eosdis-tophat-navi li a .eosdis-tophat-arrow { color: #CCCCCC; font-size: 8px !important; } #eosdis-tophat-navi .eosdis-home a, #eosdis-tophat-navi .eosdis-home a:active { color: #fff; font-weight: bold !important; } #eosdis-tophat-navi .tophat-logo { background: url("http://earthdata.nasa.gov/sites/all/modules/eosdis/tophat/tophatlogo.png") no-repeat 0 2px !important; padding-left: 19px; } #eosdis-tophat-navi .eosdis-home { margin-left: 5px !important; } #eosdis-tophat-content { z-index: 999; zoom: 1 !important; background: rgb(0, 0, 0); background: rgba(0, 0, 0, 0.85); -ms-filters:"progid:DXImageTransform.Microsoft.Gradient(StartColorstr=\'#d9000000\', EndColorstr=\'#d9000000\')"; filter: progid:DXImageTransform.Microsoft.Gradient(startColorstr=\'#d9000000\', endColorstr=\'#d9000000\'); border: solid #374C60; border-width: 0 1px; color: #A3BCD5; } #eosdis-tophat-content .eosdis-tophat-tab { padding: 0 20px 8px 20px !important; overflow: hidden !important; position: relative !important; } #eosdis-tophat-content.eosdis-content-active { border-width: 0 1px 1px 1px !important; } #eosdis-tophat-content ul, #eosdis-tophat-content li { margin: 0; padding: 0; } #eosdis-tophat-content a { color: #A3BCD5; } #eosdis-tophat-content .eosdis-tophat-tab { padding: 0 20px 8px 20px; hasLayout: 1; zoom: 1; } #eosdis-tophat-content .gsa-search-term input { margin: 0 10% 4px 0 !important; float: right !important; width: 300px !important; border: 0 none !important; font: 12px Helvetica, Arial; height: 20px; padding: 1px 2px !important; color: #aaa; background-color: #fff !important; } #eosdis-tophat-content .gsa-search-submit input { float: left !important; height: 22px; padding: 1px 2px !important; background-color: #eee; border: none !important; font: 12px Helvetica, Arial; } #eosdis-tophat-content .eosdis-tophat-tab ul.menu li { float: left !important; position: relative !important; margin: 8px 0 0 0 !important; text-align: left !important; line-height: 1 !important; } #eosdis-tophat-content .eosdis-tophat-tab ul.menu li a { font-weight: normal !important; padding-right: 30px !important; white-space: nowrap !important; } #eosdis-tophat-content .eosdis-tophat-tab ul.menu li ul { margin-top: 8px !important; border: solid #50575D !important; border-width: 1px 0 0 0 !important; padding-right: 30px !important; } #eosdis-tophat-content .eosdis-tophat-tab ul.menu li ul li { float: none !important; padding-top: 8px !important; margin: 0 !important; } #eosdis-tophat-content .eosdis-tophat-tab ul.menu li ul li a { padding-right: 0 !important; white-space: normal !important; } #eosdis-tophat-section-name { text-align: left; margin: 20px 0 0 0; font-family: Helvetica,Arial !important; } #eosdis-tab-noscript-search { margin-top: 8px !important; } #eosdis-tab-noscript-search .gsa-search-term input { float: left !important; margin: 0 !important; } #eosdis-tophat-content .eosdis-menu-1457 ul li { width: 50%; }</style>';var o=$.extend({'appended':false,'styles':{},'align':'center','layout':'static','overlay':true,'width':'990px','speed':500,'zIndex':9999,'closeOnUnfocus':true,'hideLogo':false,'hideBorder':false,'bgColor':null,'fgColor':null,'arrowColor':null,'homeColor':null,'overlayColor':null,'overlayOpacity':0.85,'linkColor':null,'linkHoverColor':null,'headerColor':null,'headerHoverColor':null,'headerAlign':'left','callback':null},option||{});this.tracker=function($tophat){var tophat_tagger=function(){$tophat.find("#eosdis-tophat-navi a").each(function(){var tab=$.trim($(this).text().replace(/[^a-z0-9\s-_]/i,''));var tab_id=$(this).attr("id");var domain=window.location&&window.location.hostname?window.location.hostname:'';$(this).click(function(e){if($(this).hasClass("eosdis-home-link")){ntptAddPair("Category","Tophat");ntptAddPair("Tab",'"'+tab+'"');ntptAddPair("Target",this.href);ntptAddPair("TabAction","\"Clicked Earthdata Home Link\"");ntptAddPair("Domain",domain);ntptEventTag('lc='+window.location);}
else if(!$(this).hasClass("eosdis-tophat-deactivating")){e.preventDefault();ntptAddPair("Category","Tophat");ntptAddPair("Tab",'"'+tab+'"');ntptAddPair("TabAction","\"Opened Tab\"");ntptAddPair("Domain",domain);ntptEventTag('lc='+window.location);}
return true;});var tab_links=$tophat.find("#eosdis-tophat-content [id='"+tab_id+"'] a").attr("target","_blank");if(tab_links.length){tab_links.click(function(e){ntptAddPair("Category","Tophat");ntptAddPair("Tab",'"'+tab+'"');ntptAddPair("Target",this.href);ntptAddPair("TabAction","\"Clicked "+$(this).text()+'"');ntptAddPair("Domain",domain);return ntptEventTag('lc='+window.location);});}});}
if(typeof(ntptEventTag)=='function'){tophat_tagger();}else{tophat_loadscript('http://earthdata.nasa.gov/sites/all/themes/earthdata/js/ntpagetag.js',tophat_tagger);}};this.styler=function(container,options){if($.isPlainObject(options)){$.each(options,function(sel,styles){if($.isPlainObject(styles)){var elem=$(container).is(sel)?container:$(container).find(sel);if(elem.length&&$.isPlainObject(styles)){$.each(styles,function(name,val){if(name&&val){elem.css(name,val);}});}}});}
return this;}
this.disableTophatTab=function(elem){$(elem).removeClass("eosdis-tophat-active").css({"background-color":(o.overlayColor?"transparent":""),"color":(o.headerColor?o.headerColor:"")}).find(".eosdis-tophat-arrow").html("&#9660;");}
this.enableTophatTab=function(elem){$(elem).css({"background-color":o.overlayColor,"color":(o.headerHoverColor?o.headerHoverColor:"")}).addClass("eosdis-tophat-active").find(".eosdis-tophat-arrow").html('&#9650;');}
this.execute=function(html){var $html=o.appended?$(this).find("[id='eosdis-tophat']"):$(html);if(o.hideLogo){$html.find(".tophat-logo").removeClass("tophat-logo");}
var headerStyles={"background-color":o.fgColor,"border":o.hideBorder?"none":null,"text-align":o.headerAlign?o.headerAlign:'left'};var contentStyles={"border":(o.hideBorder?"none":null)};if(o.align=='left'){headerStyles["float"]="left";contentStyles["float"]="left";}else if(o.align=='right'){headerStyles["float"]="right";contentStyles["float"]="right";}else{headerStyles["margin-left"]="auto";contentStyles["margin-left"]="auto";headerStyles["margin-right"]="auto";contentStyles["margin-right"]="auto";}
this.styler($html,$.extend(true,{"#eosdis-tophat-navi > ul":headerStyles,"#eosdis-tophat-content":contentStyles,".tophat-logo":{"padding-left":o.hideLogo?"15px":null},"#eosdis-tophat-navi":{"background-color":o.bgColor},"#eosdis-tophat-content a":{"color":o.linkColor},"#eosdis-tophat-navi li a":{"color":o.headerColor},".eosdis-tophat-arrow":{"color":o.arrowColor},".eosdis-home a":{"color":o.homeColor}},o.styles));if(!o.appended){$("[id='eosdis-tophat']").remove();$(this).append($html);}
if(o.linkHoverColor){$html.find("#eosdis-tophat-content").removeClass("tophat-csshover").find("a").hover(function(){$(this).data("origColor",$(this).css("color")).css("color",o.linkHoverColor);},function(){if($(this).data("origColor")){$(this).css("color",$(this).data("origColor"));$(this).removeData("origColor");}else{$(this).css("color",o.linkColor?o.linkColor:"");}});}
if(o.headerHoverColor){$html.find("#eosdis-tophat-navi ul").removeClass("tophat-csshover").find(".eosdis-main-li a, .eosdis-home a").hover(function(){if(!$(this).hasClass("eosdis-tophat-active")){$(this).data("origColor",$(this).css("color")).css("color",o.headerHoverColor);}},function(){if(!$(this).hasClass("eosdis-tophat-active")){if($(this).data("origColor")){$(this).css("color",$(this).data("origColor"));$(this).removeData("origColor");}else{$(this).css("color",o.headerHoverColor?o.headerHoverColor:"");}}});}
if(o.overlayColor){var overlayOpacity=(o.overlayOpacity>=0&&o.overlayOpacity<=1)?o.overlayOpacity:0.85;var overlayColor=o.overlayColor.replace(/\s/,'');if(/^#([a-z0-9]{3}([a-z0-9]{3})?)$/i.test(overlayColor)){var r=overlayColor.length==7?overlayColor.substr(1,2):(overlayColor.substr(1,1)+overlayColor.substr(1,1));var g=overlayColor.length==7?overlayColor.substr(3,2):(overlayColor.substr(2,1)+overlayColor.substr(2,1));var b=overlayColor.length==7?overlayColor.substr(5,2):(overlayColor.substr(3,1)+overlayColor.substr(3,1));var hex='#'+Math.floor(o.overlayOpacity*255).toString(16)+r+g+b;var rgb='rgb('+parseInt(r,16)+','+parseInt(g,16)+','+parseInt(b,16)+')';var rgba='rgba('+parseInt(r,16)+','+parseInt(g,16)+','+parseInt(b,16)+','+overlayOpacity+')';}else if(/^rgb\((\d+),(\d+),(\d+)\)$/i.test(overlayColor)){match=overlayColor.match(/^rgb\((\d+),(\d+),(\d+)\)$/i);var r=parseInt(match[1]);var g=parseInt(match[2]);var b=parseInt(match[3]);var hex='#'+Math.floor(o.overlayOpacity*255).toString(16)+r.toString(16)+g.toString(16)+b.toString(16);var rgb='rgb('+r+','+g+','+b+')';var rgba='rgba('+r+','+g+','+b+','+overlayOpacity+')';}
if($.browser.msie){if(parseInt($.browser.msie)>=9){$html.find("#eosdis-tophat-content").css("-ms-filters",'"progid:DXImageTransform.Microsoft.Gradient(StartColorstr='+hex+', EndColorstr='+hex+')"');}else{$html.find("#eosdis-tophat-content").css({"filter":"alpha(opacity="+overlayOpacity*100+")","background":rgb});}}else{$html.find("#eosdis-tophat-content").css("background",rgba);}}
var isBody=$(this).is('body');var $tophat=$(this).find("#eosdis-tophat");var $tophatContent=$tophat.find("#eosdis-tophat-navi > ul, #eosdis-tophat-content");if(isBody&&o.layout=='static'){$tophat.css({"position":"absolute","top":0,"left":0,"z-index":o.zIndex});}else{$tophat.css({"position":"relative","z-index":o.zIndex});}
if(isBody){$(window).resize(function(){$tophat.width($(this).width());});$tophat.width($(window).width());}else if(o.overlay){$tophat.find("#eosdis-tophat-content").css("position","absolute").parent().css("position","relative");}
$tophatContent.css("width",isBody?o.width:$(this).width());if($tophatContent.width()<this.minWidth){$tophatContent.width(!o.hideBorder?(this.minWidth-2):this.minWidth);}else if(!o.hideBorder){$tophatContent.width($tophatContent.width()-2);}
var navi=$tophat.find("#eosdis-tophat-navi");var content=$tophat.find("#eosdis-tophat-content");$tophat.find(".eosdis-main-li a").click(function(e){e.stopPropagation();e.preventDefault();if(e.isDefaultPrevented()&&e.isPropagationStopped()){var anchor=$(this);var tab=anchor.attr('id');var shownContent=content.children("div:visible");if(!shownContent.length){instance.disableTophatTab(navi.find(".eosdis-tophat-active"));instance.enableTophatTab(anchor.addClass("eosdis-tophat-activating"));content.addClass("eosdis-content-active").find("[id='"+tab+"']").slideDown(o.speed,function(){anchor.removeClass("eosdis-tophat-activating");});}else if(shownContent.not("[id='"+tab+"']").length){shownContent.not("[id='"+tab+"']").hide();instance.disableTophatTab(navi.find(".eosdis-tophat-active"));instance.enableTophatTab(anchor);content.addClass("eosdis-content-active").find("[id='"+tab+"']").show();}else if(shownContent.is("[id='"+tab+"']")&&shownContent.length==1){var active=navi.find(".eosdis-tophat-active").addClass("eosdis-tophat-deactivating");shownContent.slideUp(o.speed,function(){content.removeClass("eosdis-content-active");instance.disableTophatTab(active.removeClass("eosdis-tophat-deactivating"));});}}});if(o.closeOnUnfocus){$('html').click(function(e){var target;if(!e){var e=window.event;}
if(e.target){target=e.target;}else if(e.srcElement){target=e.srcElement;}
if(target.nodeType==3){target=targ.parentNode;}
if($(target).closest("#eosdis-tophat-navi").length==0&&$(target).closest(".eosdis-tophat-content").length==0&&$(target).closest(".eosdis-tophat-tab").length==0&&content.children("div:visible").length){var active=navi.find(".eosdis-tophat-active");content.children("div:visible").slideUp(o.speed,function(){content.removeClass("eosdis-content-active");instance.disableTophatTab(active);});}});}
var search=$tophat.find("#search-earthdata-tophat input[type='text']");if(search.length){var search_value=search.val();search.focus(function(){if($(this).val()==search_value)$(this).val("");}).blur(function(){if($(this).val()=="")$(this).val(search_value);});}
if(isBody){$(this).css("margin-top",$tophat.height());}
this.tracker($tophat);if(o.callback){o.callback.apply($tophat,[$]);}
$('body').addClass('eosdis-zoom-fix').removeClass('eosdis-zoom-fix');};$('head').append(this.style);if(this.html){this.execute(this.html);}else{$.ajax({'url':this.base,'context':this,'global':false,'type':'get','success':this.execute});}}});$(function(){if(typeof(tophat_manualstart)=="undefined"||!tophat_manualstart){tophat_settings=typeof(tophat_settings)=='object'?tophat_settings:{};$(typeof(tophat_settings.container)=='string'?tophat_settings.container:'body').tophat(tophat_settings);}else if(typeof(tophat_manualstart)=="function"){tophat_manualstart($);}});};(function(){function checkVersion(required,check){var required=required.split('.');var check=check.split('.');for(i in required){if(typeof(check[i])=='undefined'){return false;}
var r=parseInt(required[i]);var c=parseInt(check[i]);if(r>c){return false;}else if(c>r){return true;}
if((required.length-1)==i&&required.length>check.length){return true;}}
return true;}
if(typeof(jQuery)=='undefined'||checkVersion('1.6.2',jQuery.fn.jquery)){tophat_loadscript('https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js',function(){if(typeof(jQuery)!='undefined'&&checkVersion('1.6.2',jQuery.fn.jquery)){jQuery_1_6_2=jQuery.noConflict(true);tophat_init(jQuery_1_6_2);}});}else{tophat_init(jQuery);}})();/* (c) 2008, 2009, 2010 Add This, LLC */
if(!window._ate){var _atd="www.addthis.com/",_atr="//s7.addthis.com/",_euc=encodeURIComponent,_duc=decodeURIComponent,_atc={dr:0,ver:250,loc:0,enote:"",cwait:500,bamp:0.25,camp:1,csmp:0.0001,damp:1,famp:0.02,pamp:0.2,tamp:1,lamp:1,vamp:1,vrmp:0.0001,ltj:1,xamp:1,abf:!!window.addthis_do_ab};(function(){var l;try{l=window.location;if(l.protocol.indexOf("file")===0||l.protocol.indexOf("safari-extension")===0||l.protocol.indexOf("chrome-extension")===0){_atr="http:"+_atr;}if(l.hostname.indexOf("localhost")!=-1){_atc.loc=1;}}catch(e){}var ua=navigator.userAgent.toLowerCase(),d=document,w=window,dl=d.location,b={win:/windows/.test(ua),xp:(/windows nt 5.1/.test(ua))||(/windows nt 5.2/.test(ua)),osx:/os x/.test(ua),chr:/chrome/.test(ua),chb:/chrome\/(1[456789])/.test(ua),iph:/iphone/.test(ua),dro:/android/.test(ua),ipa:/ipad/.test(ua),saf:/safari/.test(ua)&&!(/chrome/.test(ua)),opr:/opera/.test(ua),msi:(/msie/.test(ua))&&!(/opera/.test(ua)),ffx:/firefox/.test(ua),ff2:/firefox\/2/.test(ua),ffn:/firefox\/((3.[6789][0-9a-z]*)|(4.[0-9a-z]*))/.test(ua),ie6:/msie 6.0/.test(ua),ie7:/msie 7.0/.test(ua),ie8:/msie 8.0/.test(ua),ie9:/msie 9.0/.test(ua),mod:-1},_7={rev:"109333",bro:b,wlp:(l||{}).protocol,dl:dl,upm:!!w.postMessage&&(""+w.postMessage).toLowerCase().indexOf("[native code]")!==-1,bamp:_atc.bamp-Math.random(),camp:_atc.camp-Math.random(),xamp:_atc.xamp-Math.random(),vamp:_atc.vamp-Math.random(),tamp:_atc.tamp-Math.random(),pamp:_atc.pamp-Math.random(),ab:"-",inst:1,wait:500,tmo:null,sub:!!window.at_sub,dbm:0,uid:null,spt:"//s7.addthis.com/static/r07/widget40.png",api:{},imgz:[],hash:window.location.hash};d.ce=d.createElement;d.gn=d.getElementsByTagName;window._ate=_7;_7.evl=function(_8,_9){if(_9){var _a;eval("evl = "+_8);return _a;}else{return eval(_8);}};function reduce(o,fn,_d,_e){if(!o){return _d;}if(o instanceof Array||(o.length&&(typeof o!=="function"))){for(var i=0,len=o.length,v=o[0];i<len;v=o[++i]){_d=fn.call(_e||o,_d,v,i,o);}}else{for(var _12 in o){_d=fn.call(_e||o,_d,o[_12],_12,o);}}return _d;}var _13=function(_14,_15){reduce(_14,function(acc,v,k){_15(k,v);},[]);},_19=function(a,b){var _1c={};for(var i=0;i<a.length;i++){_1c[a[i]]=1;}for(var i=0;i<b.length;i++){if(!_1c[b[i]]){a.push(b[i]);_1c[b[i]]=1;}}return a;},_1e=Array.prototype.slice,_1f=function(a){return _1e.apply(a,_1e.call(arguments,1));},_21=function(s){return(""+s).replace(/(^\s+|\s+$)/g,"");},_23=function(A,B){return reduce(_1f(arguments,1),function(A,_27){return reduce(_27,function(o,v,k){if(o){o[k]=v;}return o;},A);},A);},_2b=function(o,del){return reduce(o,function(acc,v,k){k=_21(k);if(k){acc.push(_euc(k)+"="+_euc(_21((typeof(v)=="object"?_2b(v,(del||"&")):(v)))));}return acc;},[]).join(del||"&");},_31=function(o,del){return reduce(o,function(acc,v,k){k=_21(k);if(k){acc.push(_euc(k)+"="+_euc(_21(v)));}return acc;},[]).join(del||"&");},_37=function(q,del){return reduce((q||"").split(del||"&"),function(acc,_3b){try{var kv=_3b.split("="),k=_21(_duc(kv[0])),v=_21(_duc(kv.slice(1).join("=")));if(v.indexOf(del||"&")>-1||v.indexOf("=")>-1){v=_37(v,del||"&");}if(k){acc[k]=v;}}catch(e){}return acc;},{});},_3f=function(q,del){return reduce((q||"").split(del||"&"),function(acc,_43){try{var kv=_43.split("="),k=_21(_duc(kv[0])),v=_21(_duc(kv.slice(1).join("=")));if(k){acc[k]=v;}}catch(e){}return acc;},{});},_47=function(obj){if(null==obj||"object"!=typeof obj){return obj;}if(obj instanceof Object){var s="";for(var _4a in obj){if(obj.hasOwnProperty(_4a)){s+=((s.length>0)?",":"")+obj[_4a];}}return s;}return null;},_4b=function(){var _4c=_1f(arguments,0),fn=_4c.shift(),_4e=_4c.shift();return function(){return fn.apply(_4e,_4c.concat(_1f(arguments,0)));};},_4f=function(un,obj,evt,fn){if(!obj){return;}if(we){obj[(un?"detach":"attach")+"Event"]("on"+evt,fn);}else{obj[(un?"remove":"add")+"EventListener"](evt,fn,false);}},_54=function(obj,evt,fn){_4f(0,obj,evt,fn);},_58=function(obj,evt,fn){_4f(1,obj,evt,fn);},_5c=function(s){return(s.match(/(([^\/\/]*)\/\/|\/\/)?([^\/\?\&\#]+)/i))[0];},_5e=function(s){return s.replace(_5c(s),"");},_60=function(obj){if(null==obj||"object"!=typeof obj){return obj;}if(obj instanceof Object){var _62={};for(var _63 in obj){if(obj.hasOwnProperty(_63)){_62[_63]=_60(obj[_63]);}}return _62;}return null;},_64={unqconcat:_19,reduce:reduce,slice:_1f,strip:_21,extend:_23,toKV:_31,rtoKV:_2b,fromKV:_3f,rfromKV:_37,otoCSV:_47,bind:_4b,listen:_54,unlisten:_58,gUD:_5c,gUQS:_5e,clone:_60};_7.util=_64;_23(_7,_64);(function(i,k,l){var g,n=i.util;function j(q,p,s,o,r){this.type=q;this.triggerType=p||q;this.target=s||o;this.triggerTarget=o||s;this.data=r||{};}n.extend(j.prototype,{constructor:j,bubbles:false,preventDefault:n.noop,stopPropagation:n.noop,clone:function(){return new this.constructor(this.type,this.triggerType,this.target,this.triggerTarget,n.extend({},this.data));}});function e(o,p){this.target=o;this.queues={};this.defaultEventType=p||j;}function a(o){var p=this.queues;if(!p[o]){p[o]=[];}return p[o];}function h(o,p){this.getQueue(o).push(p);}function d(p,r){var s=this.getQueue(p),o=s.indexOf(r);if(o!==-1){s.splice(o,1);}}function b(o,s,r,q){var p=this;if(!q){setTimeout(function(){p.dispatchEvent(new p.defaultEventType(o,o,s,p.target,r));},10);}else{p.dispatchEvent(new p.defaultEventType(o,o,s,p.target,r));}}function m(p){for(var r=0,t=p.target,s=this.getQueue(p.type),o=s.length;r<o;r++){s[r].call(t,p.clone());}}function c(p){if(!p){return;}for(var o in f){p[o]=n.bind(f[o],this);}return p;}var f={constructor:e,getQueue:a,addEventListener:h,removeEventListener:d,dispatchEvent:m,fire:b,decorate:c};n.extend(e.prototype,f);i.event={PolyEvent:j,EventDispatcher:e};})(_7,_7.api,_7);_7.ed=new _7.event.EventDispatcher(_7);var _87={isBound:0,isReady:0,readyList:[],onReady:function(){if(!_87.isReady){_87.isReady=1;var l=_87.readyList.concat(window.addthis_onload||[]);for(var fn=0;fn<l.length;fn++){l[fn].call(window);}_87.readyList=[];}},addLoad:function(_8a){var o=w.onload;if(typeof w.onload!="function"){w.onload=_8a;}else{w.onload=function(){if(o){o();}_8a();};}},bindReady:function(){if(r.isBound||_atc.xol){return;}r.isBound=1;if(d.addEventListener&&!b.opr){d.addEventListener("DOMContentLoaded",r.onReady,false);}var apc=window.addthis_product;if(apc&&apc.indexOf("f")>-1){r.onReady();return;}if(b.msi&&!b.ie9&&window==top){(function(){if(r.isReady){return;}try{d.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}r.onReady();})();}if(b.opr){d.addEventListener("DOMContentLoaded",function(){if(r.isReady){return;}for(var i=0;i<d.styleSheets.length;i++){if(d.styleSheets[i].disabled){setTimeout(arguments.callee,0);return;}}r.onReady();},false);}if(b.saf){var _8e;(function(){if(r.isReady){return;}if(d.readyState!="loaded"&&d.readyState!="complete"){setTimeout(arguments.callee,0);return;}if(_8e===undefined){var _90=d.gn("link");for(var i=0;i<_90.length;i++){if(_90[i].getAttribute("rel")=="stylesheet"){_8e++;}}var _92=d.gn("style");_8e+=_92.length;}if(d.styleSheets.length!=_8e){setTimeout(arguments.callee,0);return;}r.onReady();})();}r.addLoad(r.onReady);},append:function(fn,_94){r.bindReady();if(r.isReady){fn.call(window,[]);}else{r.readyList.push(function(){return fn.call(window,[]);});}}},r=_87,a=_7;_23(_7,{plo:[],lad:function(x){_7.plo.push(x);}});(function(c,e,d){var a=window;c.pub=function(){return _euc((window.addthis_config||{}).pubid||(window.addthis_config||{}).username||window.addthis_pub||"");};c.usu=function(g,h){if(!a.addthis_share){a.addthis_share={};}if(h||g!=addthis_share.url){addthis_share.imp_url=0;}};c.rsu=function(){var h=document,g=h.title,f=h.location?h.location.href:"";if(_atc.ver>=250&&addthis_share.imp_url&&f&&f!=a.addthis_share.url&&!(_7.util.ivc((h.location.hash||"").substr(1).split(",").shift()))){a.addthis_share.url=a.addthis_url=f;a.addthis_share.title=a.addthis_title=g;return 1;}return 0;};c.igv=function(f,g){if(!a.addthis_config){a.addthis_config={username:a.addthis_pub};}else{if(addthis_config.data_use_cookies===false){_atc.xck=1;}}if(!a.addthis_share){a.addthis_share={};}if(!addthis_share.url){if(!a.addthis_url&&addthis_share.imp_url===undefined){addthis_share.imp_url=1;}addthis_share.url=(a.addthis_url||f||"").split("#{").shift();}if(!addthis_share.title){addthis_share.title=(a.addthis_title||g||"").split("#{").shift();}};if(!_atc.ost){if(!a.addthis_conf){a.addthis_conf={};}for(var b in addthis_conf){_atc[b]=addthis_conf[b];}_atc.ost=1;}})(_7,_7.api,_7);(function(b,f,c){var h,g=document,a=b.util;b.ckv=a.fromKV(g.cookie,";");function e(d){return a.fromKV(g.cookie,";")[d];}if(!b.cookie){b.cookie={};}b.cookie.rck=e;})(_7,_7.api,_7);(function(b,c,e){var a,h=document,g=0,m=b.util;function j(){if(g){return 1;}k("xtc",1);if(1==b.cookie.rck("xtc")){g=1;}f("xtc",1);return g;}function l(o){if(_atc.xck){return;}var n=o||_7.dh||_7.du||(_7.dl?_7.dl.hostname:"");if(n.indexOf(".gov")>-1||n.indexOf(".mil")>-1){_atc.xck=1;}var q=typeof(b.pub)==="function"?b.pub():b.pub,d=["usarmymedia","govdelivery"];for(i in d){if(q==d[i]){_atc.xck=1;break;}}}function f(n,d){if(h.cookie){h.cookie=n+"=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/"+(d?"; domain="+(b.bro.msi?"":".")+"addthis.com":"");}}function k(o,n,p,q,d){if(!window.at_sub){l();}if(!_atc.xck){if(!d){var d=new Date();d.setYear(d.getFullYear()+2);}document.cookie=o+"="+n+(!p?"; expires="+d.toUTCString():"")+"; path=/;"+(!q?" domain="+(b.bro.msi?"":".")+"addthis.com":"");}}if(!b.cookie){b.cookie={};}b.cookie.sck=k;b.cookie.kck=f;b.cookie.cww=j;b.cookie.gov=l;})(_7,_7.api,_7);(function(c,f,d){var b=c.util,a={};timeouts={};if(!c.cbs){c.cbs={};}function e(j,i,m,k,g){i=(_euc(i)).replace(/[0-3][A-Z]|[^a-zA-Z0-9]/g,"");a[i]=a[i]||0;var h=a[i]++,l=j+"_"+i+(!g?h:"");if(!_7.cbs[l]){_7.cbs[l]=function(){if(timeouts[l]){clearTimeout(timeouts[l]);}m.apply(this,arguments);};}_7.cbs["time_"+l]=(new Date()).getTime();if(k){clearTimeout(timeouts[l]);timeouts[l]=setTimeout(k,10000);}return"_ate.cbs."+_euc(l);}b.scb=e;})(_7,_7.api,_7);(function(b,d,c){function e(){var k=a(navigator.userAgent,16),f=((new Date()).getTimezoneOffset())+""+navigator.javaEnabled()+(navigator.userLanguage||navigator.language),h=window.screen.colorDepth+""+window.screen.width+window.screen.height+window.screen.availWidth+window.screen.availHeight,g=navigator.plugins,l=g.length;if(l>0){for(var j=0;j<Math.min(10,l);j++){if(j<5){f+=g[j].name+g[j].description;}else{h+=g[j].name+g[j].description;}}}return k.substr(0,2)+a(f,16).substr(0,3)+a(h,16).substr(0,3);}function a(h,j){var f=291;if(h){for(var g=0;g<h.length;g++){f=(f*(h.charCodeAt(g)+g)+3)&1048575;}}return(f&16777215).toString(j||32);}b.mun=a;b.gub=e;})(_7,_7.api,_7);(function(d,e,g){var c,l=d.util,j=4294967295,b=new Date().getTime();function h(){return((b/1000)&j).toString(16)+("00000000"+(Math.floor(Math.random()*(j+1))).toString(16)).slice(-8);}function a(m){return k(m)?(new Date((parseInt(m.substr(0,8),16)*1000))):new Date();}function i(m){var n=a();return((n.getTime()-1000*86400)>(new Date()).getTime());}function f(m,o){var n=a(m);return(((new Date()).getTime()-n.getTime())>o*1000);}function k(m){return m&&m.match(/^[0-9a-f]{16}$/)&&!i(m);}l.cuid=h;l.ivc=k;l.ioc=f;})(_7,_7.api,_7);(function(c,f,e){function b(g){if(!g){return"";}else{if(g.indexOf("%")>-1){g=_duc(g);}}var g=_7.util.atob(g.split(",")[1]);return g;}function d(h){var j={},g,i;j.zip=h.substring(0,5);j.continent=h.substring(5,7);j.country=h.substring(7,9);j.region=h.substring(9,11);g=h.substring(11,15);if(g!="0000"){j.lat=(parseInt(g)/10-180).toFixed(1);}lonstr=h.substring(15,19);if(lonstr!="0000"){j.lon=(parseInt(lonstr)/10-180).toFixed(1);}j.dma=h.substring(19,22);j.msa=h.substring(22,26);j.network_type=h.substring(26,27);j.throughput=h.substring(27,28);return j;}function a(j,k){j=j.split(",");for(var h=0;h<j.length;h++){var g=j[h].replace(/ /g,"");if(k.zip==g||k.continent==g||k.country==g||k.region==g){return 1;}}return 0;}c.util=c.util||{};c.util.geo={dec:b,parse:d,isin:a};})(_7,_7.api,_7);(function(a,c,b){function d(e){return e.split("//").pop().split("/").shift().split("#").shift().split("?").shift().split(".").slice(-2).join(".");}a.util=a.util||{};a.util.host=d;})(_7,_7.api,_7);(function(a,d,c){function e(g,f){var h=g.indexOf("#")>-1&&!f?g.replace(/^[^\#]+\#?|^\#?/,""):g.replace(/^[^\?]+\??|^\??/,""),i=a.util.fromKV(h);return i;}function b(k){var g=document.gn("script"),l=g.length,h=g[l-1],j=e(h.src);if(k||(h.src&&h.src.indexOf("addthis")==-1)){for(var f=0;f<l;f++){if((g[f].src||"").indexOf(k||"addthis.com")>-1){j=e(g[f].src);break;}}}return j;}if(!a.util){a.util={};}a.util.gsp=b;a.util.ghp=e;})(_7,_7.api,_7);(function(e,g,f){var d=e.util,b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=";function a(k){var j="",n,l,h,p,o,m=0;if(/[0-9a-fA-F]+/.test(k)){while(m<k.length){n=parseInt(k.charAt(m++),16);l=parseInt(k.charAt(m++),16);h=parseInt(k.charAt(m++),16);p=(n<<2)|(isNaN(h)?l&3:(l>>2));o=((l&3)<<4)|h;j+=b.charAt(p)+(isNaN(h)?"":b.charAt(o));}}return j;}function c(k){var j="",n,l,h,p,o,m=0;while(m<k.length){p=b.indexOf(k.charAt(m++));o=m>=k.length?NaN:b.indexOf(k.charAt(m++));n=p>>2;l=isNaN(o)?(p&3):(((p&3)<<2)|(o>>4));h=o&15;j+=n.toString(16)+l.toString(16)+(isNaN(o)?"":h.toString(16));}return j;}d.hbtoa=a;d.atohb=c;})(_7,_7.api,_7);(function(f,s,u){var v=f,j=new Date().getTime(),r=function(){return Math.floor(Math.random()*4294967295).toString(36);},w=function(){return Math.floor((new Date().getTime()-j)/100).toString(16);},g=0,i=function(a){if(g===0){v.sid=g=(a||v.util.cuid());}return g;},d=null,c=function(a,x){if(d!==null){clearTimeout(d);}if(a){d=setTimeout(function(){x(false);},_7.wait);}},o=function(x,a){return _euc(x)+"="+_euc(a)+";"+w();},n=1,h=function(x,z){if(typeof x=="object"){x=_7.util.toKV(x);}var a=(x||"").split("?"),x=a.shift(),y=(a.pop()||"").split("&");return z(x,y);},k=function(a,x,z,y){if(!x){x={};}if(!x.remove){x.remove=[];}if(x.remove.push){x.remove.push("sms_ss");x.remove.push("at_xt");x.remove.push("fb_ref");x.remove.push("fb_source");}if(x.remove){a=t(a,x.remove);}if(x.clean){a=l(a);}if(x.defrag){a=e(a);}if(x.add){a=m(a,x.add,z,y);}return a;},m=function(z,B,A,x){var a={};if(B){for(var y in B){if(z.indexOf(y+"=")>-1){continue;}a[y]=p(B[y],z,A,x);}B=_7.util.toKV(a);}return z+(B.length?((z.indexOf("?")>-1?"&":"?")+B):"");},p=function(y,x,z,a){var z=z||addthis_share;return y.replace(/\{\{service\}\}/g,_euc(a||"")).replace(/\{\{code\}\}/g,_euc(a||"")).replace(/\{\{title\}\}/g,_euc(z.title)).replace(/\{\{url\}\}/g,_euc(x));},t=function(x,z){var a={},z=z||[];for(var y=0;y<z.length;y++){a[z[y]]=1;}return h(x,function(A,D){var E=[];if(D){for(var B in D){if(typeof(D[B])=="string"){var C=(D[B]||"").split("=");if(C.length!=2&&D[B]){E.push(D[B]);}else{if(a[C[0]]){continue;}else{if(D[B]){E.push(D[B]);}}}}}A+=(E.length?("?"+E.join("&")):"");}return A;});},q=function(a){var x=a.split("#").pop().split(",").shift().split("=").pop();if(_7.util.ivc(x)){return a.split("#").pop().split(",");}return[""];},e=function(a){var x=q(a).shift().split("=").pop();if(_7.util.ivc(x)){return a.split("#").shift();}else{x=a.split("#").slice(1).join("#").split(";").shift();if(x.split(".").length==3){x=x.split(".").slice(0,-1).join(".");}if(x.length==12&&x.substr(0,1)=="."&&(/[a-zA-Z0-9\-_]{11}/).test(x.substr(1))){return a.split("#").shift();}}return a;},l=function(a){return h(a,function(y,B){var x=y.indexOf(";jsessionid"),C=[];if(x>-1){y=y.substr(0,x);}if(B){for(var z in B){if(typeof(B[z])=="string"){var A=(B[z]||"").split("=");if(A.length==2){if(A[0].indexOf("utm_")===0||A[0]=="gclid"||A[0]=="sms_ss"||A[0]=="at_xt"||A[0]=="fb_ref"||A[0]=="fb_source"){continue;}}if(B[z]){C.push(B[z]);}}}y+=(C.length?("?"+C.join("&")):"");}return y;});},b=function(){var a=(typeof(v.pub||"")=="function"?v.pub():v.pub)||"unknown";return"AT-"+a+"/-/"+v.ab+"/"+i()+"/"+(n++)+(v.uid!==null?"/"+v.uid:"");};if(!_7.track){_7.track={};}f.util.extend(_7.track,{fcv:o,ran:r,rup:t,aup:m,cof:e,gof:q,clu:l,mgu:k,ssid:i,sta:b,sxm:c});})(_7,_7.api,_7);(function(c,e,i){var n=".",h=";",s=".",l=n.length,k=0,q={wpp:1,blg:1};function b(t){var u=t.split(";").shift();if(u.split(".").length==3){u=u.split(".").slice(0,-1).join(".");}if(u.length==12&&u.substr(0,1)=="."&&(/[a-zA-Z0-9\-_]{11}/).test(u.substr(1))){return 1;}return 0;}function r(t){return(t.length==(11+l)&&(t.substr(0,l)==n)&&(/[a-zA-Z0-9\-_]{11}/).test(t.substr(l)));}function o(u){var t=_7.util.atohb(u.substr(l));return{id:(t.substr(0,8)+"00000000,"+parseInt(t.substr(16),10)),fuid:t.substr(8,8)};}function g(K,I){if(!K){K=document.location;}if(!I){I=d.referer||d.referrer||"";}var J,P,A,N,v,E,x=0,y=0,G=K?K.href:"",C=(G||"").split("#").shift(),u=K.hash.substr(1),F=_7.util.ghp(K.search,1),H=_7.util.ghp(K.hash);y=0,at_st=H.at_st,at_pco=H.at_pco,v=F.sms_ss,fb_ref=F.fb_ref,at_xt=F.at_xt,q_at_st=F.at_st;if(!at_st){if(r(u)){var Q=_7.util.atohb(u.substr(l));E=Q.substr(8,8);at_st=Q.substr(0,8)+"00000000,";at_st+=parseInt(Q.substr(16),10);}}if(fb_ref&&!at_st){var M=s,B=fb_ref.split(M);if(B.length<2&&fb_ref.indexOf("_")>-1){M="_";B=fb_ref.split(M);}var w=B.length>1?B.pop():"",t=B.join(M);if(!r(t)){t=fb_ref;w="";}if(r(t)){var Q=_7.util.atohb(t.substr(l));at_xt=Q.substr(0,16)+","+parseInt(Q.substr(16),10);v="facebook_"+(w||"like");}else{var O=fb_ref.split("=").pop().split(s);if(O.length==2&&_7.util.ivc(O[0])){at_xt=O.join(",");v="facebook_"+(w||"like");}}}at_st=(at_st&&_7.util.ivc(at_st.split(",").shift()))?at_st:"";if(!at_xt){var M=(u.indexOf(h)>-1)?h:s,z=u.substr(l).split(M);if(z.length==2&&r(u.substr(0,1)+z[0])){var Q=_7.util.atohb(z[0]);at_xt=Q.substr(0,16)+","+parseInt(Q.substr(16),10);v=z[1];x=1;}}if(at_pco){A=1;}if(at_st){y=parseInt(at_st.split(",").pop())+1;P=at_st.split(",").shift();}else{if(G.indexOf(_atd+"book")==-1&&C!=I){var D=[],L;if(at_xt){L=at_xt.split(",");J=_duc(L.shift());if(J.indexOf(",")>-1){L=J.split(",");J=L.shift();}}else{if(q_at_st){L=q_at_st.split(",");N=_duc(L.shift());if(N.indexOf(",")>-1){L=N.split(",");N=L.shift();}}}if(L&&L.length){y=Math.min(3,parseInt(L.pop())+1);}}}if(!_7.util.ivc(P)){P=null;}if(!_7.util.ivc(N)){N=null;}v=(v||"").split("#").shift().split("?").shift();return{rsi:P,cfc:A,hash:x,rsiq:N,fuid:E,rxi:J,rsc:v,gen:y};}function f(v,t){if(!t||(t.data_track_clickback!==false&&t.data_track_linkback!==false)){if(k){return true;}if(_atc.ver>=250){return(k=true);}v=(v||window.addthis_product||"").split(",");for(var u=0;u<v.length;u++){if(q[v[u].split("-").shift()]){return(k=true);}}}return false;}function j(t,u){t=t||a.util.cuid();return n+_7.util.hbtoa(t+Math.min(3,u||0));}function p(u,v,t){t=t||a.util.cuid();return u.indexOf("#")>-1?u:u+"#"+j((v?t:t.substr(0,8)+_7.gub()),(a.smd||{}).gen)+(v?s+v:"");}function m(v){var u,x,z,A;if(v.indexOf("#")>-1){var y=v.split("#").slice(1).join("#");if(b(y)){var t=y.substr(1).split("."),w=(t.length)?t.shift():"";x=(t.length)?t.pop():"";if(w){w=_7.util.atohb(w);u=w.substr(0,16);z=parseInt(w.substr(16),10);if(!isNaN(z)){A=A||{};A.gen=z;}}if(_7.util.ivc(u)){A=A||{};A.xid=u;}if(x.search(/^[a-zA-Z0-9_]+$/)!=-1){A=A||{};A.rsc=x;}}}return A;}_7.extend(_7.track,{cur:p,dcu:m,gcc:j,cpf:n,ctp:f,eop:g,ich:b});})(_7,_7.api,_7);(function(b,d,c){function f(g){if(g=="t.co"){return"twitter";}for(var h in b.services.map){var i=b.services.map[h];if(i===""){i=h+".com";}if(g.indexOf(i)!=-1){return h;}}return;}function e(h){h=_duc(h);h=h.toLowerCase();h=h.replace(/[,;:\+\|]/g," ");h=h.replace(/[^a-z0-9. '\-]/g,"");h=h.replace(/\s+/g," ");h=h.replace(/\s+$/g,"");var k=[];var j=h.split(" ");for(var g=0;g<j.length;g++){var i=j[g];if(i.charAt(0)=="-"){continue;}else{if(/'s$/.test(i)){k.push(i.substring(0,i.length-2).replace(/[-']/g,"")+"'s");}else{k=k.concat(i.replace(/'/g,"").split("-"));}}}return k;}function a(){var h=b.dr;var l=b.ad.clr(h);var i={};if(typeof(h)=="undefined"||h===""){i.type="direct";return i;}var j=b.util.host(h);var k=f(j);if(typeof(k)!="undefined"){i.type="social";i.service=k;}else{if(b.ad.iss(h)){i.type="search";i.domain=b.util.host(h);var g=b.ad.fst(h);i.terms=e(g);}else{if(l&b.ad.ref.r_ondomain){i.type="internal";i.domain=document.location.hostname;}else{if(l&b.ad.ref.r_offdomain){i.type="referred";i.domain=b.util.host(h);}else{i.type="direct";}}}}return i;}if(!b.track){b.track={};}b.track.ts={get:a,gst:e};})(_7,_7.api,_7);(function(){var d=document,a=_7,_18c=0,cvt=[],avt=null,_18f={ftho:1,aqe3:1,d99r:1,neud:1,"8elu":1,bqfn:1},_190=Math.random()<_atc.csmp,_191=Math.random()<1000*_atc.csmp,_192=new RegExp(/\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})/g),_193=new RegExp(/^((([a-z]|[0-9]|\-)+)\.)+([a-z])+$/ig),qtp=[],xtp=function(){var p;while(p=qtp.pop()){trk(p);}},atf=null,pcs=[],spc=null;function apc(c){c=c.split("-").shift();for(var i=0;i<pcs.length;i++){if(pcs[i]==c){return;}}pcs.push(c);}function get_atssh(){var div=d.getElementById("_atssh");if(!div){div=d.ce("div");div.style.visibility="hidden";div.id="_atssh";a.opp(div.style);d.body.insertBefore(div,d.body.firstChild);}return div;}function ctf(url){var ifr,r=Math.floor(Math.random()*1000),div=get_atssh();if(!a.bro.msi){ifr=d.ce("iframe");ifr.id="_atssh"+r;ifr.title="AddThis utility frame";}else{if(a.bro.ie6&&!url&&d.location.protocol.indexOf("https")==0){url="javascript:''";}div.innerHTML="<iframe id=\"_atssh"+r+"\" width=\"1\" height=\"1\" title=\"AddThis utility frame\" name=\"_atssh"+r+"\" "+(url?"src=\""+url+"\"":"")+">";ifr=d.getElementById("_atssh"+r);}a.opp(ifr.style);ifr.frameborder=ifr.style.border=0;ifr.style.top=ifr.style.left=0;return ifr;}function jsl(){var w=window;return((((w.jQuery||{}).fn||{}).jquery&&1)|((w.Prototype||{}).Version&&2)|((w.YUI||{}).version||(w.YAHOO||{}).VERSION&&4)|((w.Ext||{}).version&&8)|((w.dojo||{}).version&&16)|((w._gaq||w._gat)&&32)|(w.google_ad_client&&64)|((w.FB||w.fbAsyncInit)&&128)|(w.$BTB&&256)|(w.meebo&&512)|(w.gigya&&1024)|(w.SHARETHIS&&2048)|(w._qevents&&4096)|(w.twttr&&8192));}function onMenuShare(e){var _1a2=300;if(e&&e.data&&e.data.service){if(a.dcp>=_1a2){return;}trk({gen:e.data.service.indexOf("facebook")>-1||e.data.service=="more"?-1:_1a2,pix:"dest="+e.data.service,svc:e.data.service,url:(e.data.url||null)});a.dcp=_1a2;}}var _1a3,_1a4=[];function onApiUsage(evt){if(evt.data.call){_1a4.push(evt.data.call);}if(!_1a3){_1a3=setTimeout(function(){img("ap","3","calls="+_euc(_1a4.join(",")),{});},10000);}}function onMenuPop(evt){var t={},data=evt.data||{},svc=data.svc,pco=data.pco,_1ab=data.cmo,_1ac=data.crs,_1ad=data.cso;if(svc){t.sh=svc;}if(_1ab){t.cm=_1ab;}if(_1ad){t.cs=1;}if(_1ac){t.cr=1;}if(pco){t.spc=pco;}img("sh","3",null,t);}function trk(t,_1af){var dr=a.dr,rev=(a.rev||"");if(!t){return;}t.xck=_atc.xck?1:0;t.xxl=1;t.sid=a.track.ssid();t.pub=a.pub();t.ssl=a.ssl||0;t.srl=_atc.lamp;t.du=a.tru(t.url||a.du||a.dl.href);t.xtr=_1af!==undefined?0:_atc.xtr;if(a.dt){t.dt=a.dt;}if(a.cb){t.cb=a.cb;}if(a.kw){t.kw=a.kw;}t.lng=a.lng();t.ver=_atc.ver;t.jsl=a.track.jsl();if(!a.upm&&a.uid){t.uid=a.uid;}t.pc=t.spc||pcs.join(",");if(dr){t.dr=a.tru(dr);}if(a.dh){t.dh=a.dh;}if(rev){t.rev=rev;}if(a.xfr){if(a.upm){if(atf){atf.contentWindow.postMessage(_31(t),"*");}}else{var div=get_atssh(),base="static/r07/sh75.html"+(false?"?t="+new Date().getTime():"");if(atf){div.removeChild(div.firstChild);}atf=ctf();atf.src=_atr+base+"#"+_31(t);div.appendChild(atf);}}else{qtp.push(t);}}function img(i,c,x,obj,_1b8){if(!window.at_sub&&!_atc.xtr){var t=obj||{};t.evt=i;if(x){t.ext=x;}avt=t;if(_1b8===1){xmi(true);}else{a.track.sxm(true,xmi);}}}function cev(k,v){cvt.push(a.track.fcv(k,v));a.track.sxm(true,xmi);}function xmi(_1bc){var h=a.dl?a.dl.hostname:"";if(cvt.length>0||avt){a.track.sxm(false,xmi);if(_atc.xtr){return;}var t=avt||{};t.ce=cvt.join(",");cvt=[];avt=null;trk(t);if(_1bc){var i=d.ce("iframe");i.id="_atf";_7.opp(i.style);d.body.appendChild(i);i=d.getElementById("_atf");}}}function onCopy(){text="",p_copy=250;if(window.getSelection){text=_7.trim((window.getSelection().toString()||"")).replace(_192," ").replace(/[\b]+/g," ").split(" ");if(text.length){if(_190&&_18c<3){cev("cbc",text.length);}_18c++;if(!_191){return;}var _1c0=[];for(var i=0;i<text.length;i++){if(text[i]&&text[i].length<=50&&text[i].indexOf("@")==-1&&text[i].indexOf("://")==-1&&(!(_193.test(text[i])))){_1c0.push(text[i]);}}if(_1c0.length&&_1c0.length<=5&&(!a.dcp||a.dcp<p_copy)){setTimeout(function(){trk({gen:p_copy,pix:"tt="+_euc(_1c0.join(" "))});a.dcp=p_copy;},Math.random()*10000);}}}}_7.ed.addEventListener("addthis-internal.params.loaded",function(){_191=_191||((!_7.sub&&((dl||{}).href||"").indexOf(".addthis.com")>-1)||_18f[_7.mun(_7.pub())])||(w.addthis_config||{}).data_track_textcopy;try{if(_190||_191){if(a.bro.msi){document.body.attachEvent("oncopy",onCopy,true);}else{document.addEventListener("copy",onCopy,true);}}}catch(e){}});a.ed.addEventListener("addthis-internal.api",onApiUsage);a.ed.addEventListener("addthis-internal.compact",onMenuPop);a.ed.addEventListener("addthis.menu.share",onMenuShare);if(!a.track){a.track={};}a.util.extend(a.track,{pcs:pcs,apc:apc,cev:cev,ctf:ctf,jsl:jsl,gtf:get_atssh,qtp:function(p){qtp.push(p);},stf:function(f){atf=f;},trk:trk,xtp:xtp});})();_23(_7,{_rec:[],xfr:!_7.upm,pmh:function(e){if(e.origin.slice(-12)==".addthis.com"){if(!e.data){return;}var data=_7.util.rfromKV(e.data),r=_7._rec;for(var n=0;n<r.length;n++){r[n](data);}}}});_23(_7,{lng:function(){return window.addthis_language||(window.addthis_config||{}).ui_language||(_7.bro.msi?navigator.userLanguage:navigator.language)||"en";},iwb:function(l){var wd={th:1,pl:1,sl:1,gl:1,hu:1,is:1,nb:1,se:1,su:1,sw:1};return!!wd[l];},gfl:function(l){var map={ca:"es",cs:"CZ",cy:"GB",da:"DK",de:"DE",eu:"ES",ck:"US",en:"US",es:"LA",fb:"FI",gl:"ES",ja:"JP",ko:"KR",nb:"NO",nn:"NO",sv:"SE",ku:"TR",zh:"CN","zh-tr":"CN","zh-hk":"HK","zh-tw":"TW",fo:"FO",fb:"LT",af:"ZA",sq:"AL",hy:"AM",be:"BY",bn:"IN",bs:"BA",nl:"NL",et:"EE",fr:"FR",ka:"GE",el:"GR",gu:"IN",hi:"IN",ga:"IE",jv:"ID",kn:"IN",kk:"KZ",la:"VA",li:"NL",ms:"MY",mr:"IN",ne:"NP",pa:"IN",pt:"PT",rm:"CH",sa:"IN",sr:"RS",sw:"KE",tl:"PH",ta:"IN",pl:"PL",tt:"RU",te:"IN",ml:"IN",uk:"UA",vi:"VN",tr:"TR",xh:"ZA",zu:"ZA",km:"KH",tg:"TJ",he:"IL",ur:"PK",fa:"IR",yi:"DE",gn:"PY",qu:"PE",ay:"BO",se:"NO",ps:"AF",tl:"ST"},rv=map[l]||map[l.split("-").shift()];if(rv){return l.split("-").shift()+"_"+rv;}else{return"en_US";}},ivl:function(l){var lg={af:1,afr:"af",ar:1,ara:"ar",az:1,aze:"az",be:1,bye:"be",bg:1,bul:"bg",bn:1,ben:"bn",bs:1,bos:"bs",ca:1,cat:"ca",cs:1,ces:"cs",cze:"cs",cy:1,cym:"cy",da:1,dan:"da",de:1,deu:"de",ger:"de",el:1,gre:"el",ell:"ell",en:1,eo:1,es:1,esl:"es",spa:"spa",et:1,est:"et",eu:1,fa:1,fas:"fa",per:"fa",fi:1,fin:"fi",fo:1,fao:"fo",fr:1,fra:"fr",fre:"fr",ga:1,gae:"ga",gdh:"ga",gl:1,glg:"gl",gu:1,he:1,heb:"he",hi:1,hin:"hin",hr:1,ht:1,hy:1,cro:"hr",hu:1,hun:"hu",id:1,ind:"id",is:1,ice:"is",it:1,ita:"it",ja:1,jpn:"ja",km:1,ko:1,kor:"ko",ku:1,lb:1,ltz:"lb",lt:1,lit:"lt",lv:1,lav:"lv",mk:1,mac:"mk",mak:"mk",ml:1,mn:1,ms:1,msa:"ms",may:"ms",nb:1,nl:1,nla:"nl",dut:"nl",no:1,nds:1,nn:1,nno:"no",oc:1,oci:"oc",pl:1,pol:"pl",ps:1,pt:1,por:"pt",ro:1,ron:"ro",rum:"ro",ru:1,rus:"ru",sk:1,slk:"sk",slo:"sk",sl:1,slv:"sl",sq:1,alb:"sq",sr:1,se:1,si:1,ser:"sr",su:1,sv:1,sve:"sv",sw:1,swe:"sv",ta:1,tam:"ta",te:1,teg:"te",th:1,tha:"th",tl:1,tgl:"tl",tn:1,tr:1,tur:"tr",tpi:1,tt:1,uk:1,ukr:"uk",ur:1,urd:"ur",vi:1,vec:1,vie:"vi","zh-cn":1,"zh-hk":1,"chi-hk":"zh-hk","zho-hk":"zh-hk","zh-tr":1,"chi-tr":"zh-tr","zho-tr":"zh-tr","zh-tw":1,"chi-tw":"zh-tw","zho-tw":"zh-tw",zh:1,chi:"zh",zho:"zh"};if(lg[l]){return lg[l];}l=l.split("-").shift();if(lg[l]){if(lg[l]===1){return l;}else{return lg[l];}}return 0;},ggl:function(l){var map={en:"en-US",ar:"ar",ca:"ca",zh:"zh-CN",hr:"hr",cs:"cs",da:"da",nl:"nl",et:"et",fi:"fi",fr:"fr",de:"de",el:"el",he:"iw",hi:"hi",hu:"hu",id:"id",it:"it",ja:"ja",ko:"ko",lv:"lv",lt:"lt",ms:"ms",no:"no",fa:"fa",pl:"pl",pt:"pt-BR",ro:"ro",ru:"ru",sr:"sr",sk:"sk",sl:"sl",es:"es",sv:"sv",th:"th",tr:"tr",uk:"uk",vi:"vi"};return map[l]||null;},gvl:function(l){var rv=_7.ivl(l)||"en";if(rv===1){rv=l;}return rv;},alg:function(al,f){var l=_7.gvl((al||_7.lng()).toLowerCase());if(l.indexOf("en")!==0&&(!_7.pll||f)){_7.pll=_7.ajs("static/r07/lang16/"+l+".js");}}});_23(_7,{trim:function(s,e){if(s&&s.trim&&typeof(s.trim)=="function"){s=s.trim();}try{s=s.replace(/^[\s\u3000]+/,"").replace(/[\s\u3000]+$/,"");}catch(exc){}if(s&&e){s=_euc(s);}return s||"";},trl:[],tru:function(u,k){var rv="",_1da=0,_1db=-1;if(u){rv=u.substr(0,300);if(rv!==u){if((_1db=rv.lastIndexOf("%"))>=rv.length-4){rv=rv.substr(0,_1db);}if(rv!=u){for(var i in _7.trl){if(_7.trl[i]==k){_1da=1;}}if(!_1da){_7.trl.push(k);}}}}return rv;},opp:function(st){st.width=st.height="1px";st.position="absolute";st.zIndex=100000;},jlr:{},ajs:function(name,_1df,_1e0,id,el,_1e3){if(!_7.jlr[name]||_1e3){var o=d.ce("script"),head=(el)?el:d.gn("head")[0]||d.documentElement;o.setAttribute("type","text/javascript");if(_1e0){o.setAttribute("async","true");}if(id){o.setAttribute("id",id);}o.src=(_1df?"":_atr)+name;head.insertBefore(o,head.firstChild);_7.jlr[name]=1;return o;}return 1;},jlo:function(){try{var a=_7,al=a.lng(),aig=function(src){var img=new Image();_7.imgz.push(img);img.src=src;};a.alg(al);if(!a.pld){if(a.bro.ie6){aig(_atr+a.spt);aig(_atr+"static/t00/logo1414.gif");aig(_atr+"static/t00/logo88.gif");if(window.addthis_feed){aig("static/r05/feed00.gif",1);}}if(a.pll&&!window.addthis_translations){setTimeout(function(){a.pld=a.ajs("static/r07/menu97.js");},10);}else{a.pld=a.ajs("static/r07/menu97.js");}}}catch(e){}},ao:function(elt,pane,iurl,_1ee,_1ef,_1f0){_7.lad(["open",elt,pane,iurl,_1ee,_1ef,_1f0]);_7.jlo();return false;},ac:function(){},as:function(s,cf,sh){_7.lad(["send",s,cf,sh]);_7.jlo();}});(function(e,f,k){var p=document,n=1,a=["cbea","cbeab","kkk","zvys","phz","gvgf","shpxf","chfflyvcf","pernzcvr","svfgvat","wvmm","fcybbtr","flovna"],g=a.length,j=[],c={};function b(d){return d.replace(/[a-zA-Z]/g,function(i){return String.fromCharCode((i<="Z"?90:122)>=(i=i.charCodeAt(0)+13)?i:i-26);});}while(g--){c[b(a[g])]=1;}function h(d){var i=0;if(!d||typeof(d)!="string"){return i;}d=((d||"").toLowerCase()+"").replace(/ /g,"");if(d=="mature"||d=="adult"||d=="rta-5042-1996-1400-1577-rta"){i|=n;}return i;}function o(t){var v=0;if(!t||typeof(t)!="string"){return v;}t=((t||"").toLowerCase()+"").replace(/[^a-zA-Z]/g," ").split(" ");for(var d=0,u=t.length;d<u;d++){if(c[t[d]]){v|=n;return v;}}return v;}function q(){var v=(w.addthis_title||p.title),i=o(v),u=p.all?p.all.tags("META"):p.getElementsByTagName?p.getElementsByTagName("META"):new Array(),t=(u||"").length;if(u&&t){while(t--){var d=u[t]||{},y=(d.name||(d.getAttribute?d.getAttribute("property"):"")||"").toLowerCase(),x=d.content;if(y=="description"||y=="keywords"){i|=o(x);}if(y=="rating"){i|=h(x);}if(y=="keywords"&&x&&x.length){m(x);}}}return i;}function m(y){var x=y.split(","),t,d=200;for(var u=0;u<x.length;u++){t=_7.trim(x[u]);if((d-=(t.length+1))>0){j.push(t);}else{break;}}}function l(){var x=[],v=p.all?p.all.tags("META"):p.getElementsByTagName?p.getElementsByTagName("META"):new Array(),i=(v||"").length;if(v&&i){while(i--){var d=v[i]||{},z=((d.getAttribute?d.getAttribute("property"):"")||d.name||"").toLowerCase(),y=d.content,u;if(z.indexOf("og:")===0){u=z.split(":").pop();if(x.length<7){x.push(u=="type"?u+"="+y:u);}}}}return x;}function s(){var v={},t="",u=p.all?p.all.tags("META"):p.getElementsByTagName?p.getElementsByTagName("META"):new Array();if(!u||u.length==0){return v;}for(var d=0;d<u.length;d++){t=u[d].getAttribute("property")||"";if(t.search(/^og:/i)!=-1){v[t.replace("og:","")]=u[d].content;}}return _31(v);}function r(){return j.join(",");}if(!e.ad){e.ad={};}_7.extend(e.ad,{cla:q,gog:l,og:s,kw:r});})(_7,_7.api,_7);(function(e,g,j){var l=document,h=0,b=1,a=2,i=4;function c(n,m,d){d=(d===undefined||d)||(window.location.protocol=="https:");m=_7.util.host(m===undefined?window.location.href:m);var p=h,q=0;if(n){var o=_7.util.host(n);if(m==o){p|=a;}else{p|=i;}}if(!d&&k(n)){p|=b;}return p;}function k(d){var n=".com/";var m=0;if(d&&d.match(/ws\/results\/(Web|Images|Video|News)/)){m=1;}else{if(d&&d.indexOf("addthis"==-1)&&(d.match(/google.*\/(search|url|m\?)/)||d.indexOf(n+"url")>-1||d.indexOf("/search?")>-1||d.indexOf(n+"search")>-1||d.indexOf(n+"s?bs")>-1||d.indexOf(n+"s?wd")>-1||d.indexOf(n+"web")>-1||d.match(/aol.*\/aol/)||d.indexOf("hotbot"+n)>-1)){if(f(d)!=false){m=1;}}}if(m){return true;}else{return false;}}function f(d){var n=d.split("?").pop().toLowerCase().split("&");var o=/^(?:q|search|bs|wd|p|query|qry|text)=(.*)/;for(var m=0;m<n.length;m++){if(matches=o.exec(n[m])){return matches[1];}}return false;}if(!e.ad){e.ad={};}e.ad.clr=c;e.ad.iss=k;e.ad.fst=f;e.ad.ref={r_direct:h,r_search:b,r_ondomain:a,r_offdomain:i};})(_7,_7.api,_7);(function(d,e,g){var i=d,f=[],h=_atc.xfr;if(!i.du){i.du=document.location.href;}if(!i.dh){i.dh=document.location.hostname;}if(!i.dr){i.dr=document.referrer;}function c(a){if(h||!_7.upm){_7.track.trk(a,true);}else{f.push(a);}}function b(l){var n={pco:"cnv-100"},a={pxid:1,ev:1};if(l){for(var m in l){if(a[m]){n[m]=l[m];}}}c({gen:2000,fcp:1,pix:i.util.toKV(n)});}function j(a){c({pixu:a});}if(!d.ad){d.ad={};}_7.extend(d.ad,{event:b,getPixels:j});_7.ed.addEventListener("addthis-internal.data.rdy",function(){h=1;for(var a=0;a<f.length;a++){c(f[a]);}});})(_7,_7.api,_7);(function(f,g,h){var c,j=document,m=f.util,b=f.event.EventDispatcher,k=25,e=[];function i(p,r,o){var d=[];function d(){d.push(arguments);}function q(){o[p]=r;while(d.length){r.apply(o,d.shift());}}d.ready=q;return d;}function l(p){if(p&&p instanceof a){e.push(p);}for(var d=0;d<e.length;){var o=e[d];if(o&&o.test()){e.splice(d,1);a.fire("load",o,{resource:o});}else{d++;}}if(e.length){setTimeout(l,k);}}function a(r,o,q){var d=this,p=new b(d);p.decorate(p).decorate(d);this.ready=false;this.loading=false;this.id=r;this.url=o;if(typeof(q)==="function"){this.test=q;}else{this.test=function(){return(!!_window[q]);};}a.addEventListener("load",function(s){var t=s.resource;if(!t||t.id!==d.id){return;}d.loading=false;d.ready=true;p.fire(s.type,t,{resource:t});});}m.extend(a.prototype,{load:function(){if(!this.loading){var d;if(this.url.substr(this.url.length-4)==".css"){var o=(j.gn("head")[0]||j.documentElement);d=j.ce("link");d.rel="stylesheet";d.type="text/css";d.href=this.url;d.media="all";o.insertBefore(d,o.firstChild);}else{d=_7.ajs(this.url,1);}this.loading=true;a.monitor(this);return d;}else{return 1;}}});var n=new b(a);n.decorate(n).decorate(a);m.extend(a,{known:{},loading:e,monitor:l});f.resource={Resource:a,ApiQueueFactory:i};})(_7,_7.api,_7);(function(e,v,x){var z=document,l=z.gn("body").item(0),h={},g={},o,y=[],c=0,t=0,u=0,j=true,m=[],B=0,w=0,i=z.domain.search(/\.addthis\.com$/i)!=-1?1:0;function q(){return((_atc.ltj&&k()&&n())||(r()&&FB.XFBML&&FB.XFBML.parse));}function n(){if(o===undefined){try{var C=(document.getElementsByTagName("html"))[0];if(C){if(C.getAttribute&&C.getAttribute("xmlns:fb")){o=true;}else{if(_7.bro.msi){var d=C.outerHTML.substr(0,C.outerHTML.indexOf(">"));if(d.indexOf("xmlns:fb")>-1){o=true;}}}}}catch(D){o=false;}}return o;}function r(){return(typeof(window.FB)=="object"&&FB.Event&&typeof(FB.Event.subscribe)=="function");}function k(){return!window.FB_RequireFeatures&&(!window.FB||(!FB.Share&&!FB.Bootstrap));}function f(){if(z.location.href.indexOf(_atr)==-1&&!_7.sub&&!c){if(r()){var d=(addthis_config.data_ga_tracker||addthis_config.data_ga_property);c=1;FB.Event.subscribe("message.send",function(E){var C={},F=g[E];for(var D in addthis_share){C[D]=addthis_share[D];}if(F){for(var D in F){C[D]=F[D];}}C.url=E;_7.share.track("facebook_send",0,C,addthis_config);if(d){_7.gat("facebook_send",E,addthis_config,C);}});FB.Event.subscribe("edge.create",function(E){if(!h[E]){var C={},F=g[E];for(var D in addthis_share){C[D]=addthis_share[D];}if(F){for(var D in F){C[D]=F[D];}}C.url=E;_7.share.track("facebook_like",0,C,addthis_config);if(d){_7.gat("facebook_like",E,addthis_config,C);}h[E]=1;}});FB.Event.subscribe("edge.remove",function(E){if(h[E]){var C={},F=g[E];for(var D in addthis_share){C[D]=addthis_share[D];}if(F){for(var D in F){C[D]=F[D];}}C.url=E;_7.share.track("facebook_unlike",0,C,addthis_config);h[E]=0;}});FB.Event.subscribe("comment.create",function(E){var C={},F=g[E.href];for(var D in addthis_share){C[D]=addthis_share[D];}if(F){for(var D in F){C[D]=F[D];}}C.url=E.href;_7.share.track("facebook_comment",0,C,addthis_config);if(d){_7.gat("facebook_comment",E.href,addthis_config,C);}});FB.Event.subscribe("comment.remove",function(E){var C={},F=g[E.href];for(var D in addthis_share){C[D]=addthis_share[D];}if(F){for(var D in F){C[D]=F[D];}}C.url=E.href;_7.share.track("facebook_uncomment",0,C,addthis_config);});}else{if(window.fbAsyncInit&&!u){if(t<3){setTimeout(f,3000+1000*2*(t++));}u=1;}}}}function s(d,F){var E="fb-root",D=z.getElementById(E),C=window.fbAsyncInit;y.push(d);if(r()&&FB.XFBML&&FB.XFBML.parse){FB.XFBML.parse(d);f();}else{if(!C){if(!D){D=z.ce("div");D.id=E;document.body.appendChild(D);}if(!C){var G=z.createElement("script");G.src=z.location.protocol+"//connect.facebook.net/"+(F||_7.gfl(_7.lng()))+"/all.js";G.async=true;D.appendChild(G);C=function(){FB.init({appId:i?"140586622674265":"172525162793917",status:true,cookie:true});};}}if(j){j=false;window.__orig__fbAsyncInit=C;window.fbAsyncInit=function(){window.__orig__fbAsyncInit();for(var H=0;H<y.length;H++){FB.XFBML.parse(y[H]);}f();};}}}function p(J,H){if(J.ost){return;}var F,I=_7.api.ptpa(J,"fb:subscribe"),D="",G=I.layout||"button_count",K=I.locale||_7.gfl(_7.lng()),d={standard:[450,I.show_faces?80:35],button_count:[90,25],box_count:[55,65]},L=I.width||(d[G]?d[G][0]:100),E=I.height||(d[G]?d[G][1]:25);passthrough=_7.util.toKV(I);_7.ufbl=1;if(q()){if(I.layout===undefined){I.layout="button_count";}if(I.show_faces===undefined){I.show_faces="false";}if(I.action===undefined){I.action="subscribe";}if(I.width===undefined){I.width=L;}if(I.font===undefined){I.font="arial";}if(I.href===undefined){I.href=_7.track.mgu(H.share.url,{defrag:1});}for(var C in I){D+=" "+C+"=\""+I[C]+"\"";}if(!H.share.xid){H.share.xid=_7.util.cuid();}g[I.href]={};for(var C in H.share){g[I.href][C]=H.share[C];}J.innerHTML="<fb:subscribe ref=\""+_7.share.gcp(H.share,H.conf,".sub").replace(",","_")+"\" "+D+"></fb:subscribe>";s(J);}else{if(!_7.bro.msi){F=z.ce("iframe");}else{J.innerHTML="<iframe frameborder=\"0\" scrolling=\"no\" allowTransparency=\"true\" scrollbars=\"no\""+(_7.bro.ie6?" src=\"javascript:''\"":"")+"></iframe>";F=J.firstChild;}F.style.overflow="hidden";F.style.scrolling="no";F.style.scrollbars="no";F.style.border="none";F.style.borderWidth="0px";F.style.width=L+"px";F.style.height=E+"px";F.src="//www.facebook.com/plugins/subscribe.php?href="+_euc(_7.track.mgu(H.share.url,{defrag:1}))+"&layout=button_count&show_faces=false&width=100&action=subscribe&font=arial&"+passthrough;if(!_7.bro.msi){J.appendChild(F);}}J.noh=J.ost=1;}function A(J,H){if(J.ost){return;}var K,I=_7.api.ptpa(J,"fb:like"),E="",G=I.layout||"button_count",L=I.locale||_7.gfl(_7.lng()),C={standard:[450,I.show_faces?80:35],button_count:[90,25],box_count:[55,65]},M=I.width||(C[G]?C[G][0]:100),F=I.height||(C[G]?C[G][1]:25);passthrough=_7.util.toKV(I);_7.ufbl=1;if(q()){if(I.layout===undefined){I.layout="button_count";}if(I.show_faces===undefined){I.show_faces="false";}if(I.action===undefined){I.action="like";}if(I.width===undefined){I.width=M;}if(I.font===undefined){I.font="arial";}if(I.href===undefined){var d=_7.util.clone(H.share.url_transforms||{});d.defrag=1;I.href=_7.track.mgu(H.share.url,d);}for(var D in I){E+=" "+D+"=\""+I[D]+"\"";}if(!H.share.xid){H.share.xid=_7.util.cuid();}g[I.href]={};for(var D in H.share){g[I.href][D]=H.share[D];}J.innerHTML="<fb:like ref=\""+_7.share.gcp(H.share,H.conf,".like").replace(",","_")+"\" "+E+"></fb:like>";s(J);}else{if(!_7.bro.msi){K=z.ce("iframe");}else{J.innerHTML="<iframe frameborder=\"0\" scrolling=\"no\" allowTransparency=\"true\" scrollbars=\"no\""+(_7.bro.ie6?" src=\"javascript:''\"":"")+"></iframe>";K=J.firstChild;}K.style.overflow="hidden";K.style.scrolling="no";K.style.scrollbars="no";K.style.border="none";K.style.borderWidth="0px";K.style.width=M+"px";K.style.height=F+"px";K.src="//www.facebook.com/plugins/like.php?href="+_euc(_7.track.mgu(H.share.url,{defrag:1}))+"&layout=button_count&show_faces=false&width=100&action=like&font=arial&"+passthrough;if(!_7.bro.msi){J.appendChild(K);}}J.noh=J.ost=1;}function b(H,D,I,F){var E=H.share_url_transforms||H.url_transforms||{},d=(H.passthrough||{}).facebook||{},J={},C=a.track.cof(a.track.mgu(H.url,E,H,"facebook"));C=B?("http://www.facebook.com/sharer.php?&t="+_euc(H.title)+"&u="+_euc(_7.share.acb("facebook",H,D))):(w?("http://www.facebook.com/connect/prompt_feed.php?message="+_euc(H.title)+"%0A%0D"+_euc(_7.share.acb("facebook",H,D))):i?"http://www.facebook.com/dialog/feed?redirect_uri="+_euc("http://s7.addthis.com/static/postshare/c00.html")+"&app_id=140586622674265&link="+_euc(_7.share.acb("facebook",H,D))+"&name="+_euc(H.title)+"&description="+_euc(H.description||""):_7.share.genurl("facebook",0,H,D));if(B||w||i){for(var G in D){J[G]=D[G];}J.hdl=1;_7.share.track("facebook",0,H,J,1);}if(D.ui_use_same_window||F){window.location.href=C;}else{window.open(C,"_blank");}return false;}e.share=e.share||{};e.share.fb={like:A,subs:p,has:r,ns:n,ready:q,compat:k,share:b,sub:f,load:s};})(_7,_7.api,_7);(function(e,o,r){var t=document,x=e,i=[],b=n();function n(){var d=t.gn("link"),B={};for(var A=0;A<d.length;A++){var a=d[A];if(a.href&&a.rel){B[a.rel]=a.href;}}return B;}function v(){var a=t.location.protocol;if(a=="file:"){a="http:";}return a+"//"+_atd;}function l(B,C,A,a){if(B=="more"&&_atc.ver>=300){var d=_7.util.clone(A||_atw.share);d.url=_euc(d.url);return _atr+"static/r07/bookmark03.html#ats="+_euc(_7.util.rtoKV(d))+"&atc="+_euc(_7.util.rtoKV(_atw.config||a));}return v()+(C?"feed.php":(B=="email"&&_atc.ver>=300?"tellfriend.php":"bookmark.php"))+"?v="+(_atc.ver)+"&winname=addthis&"+z(B,C,A,a)+(x.dr?"&pre="+_euc(x.track.cof(x.dr)):"")+"&tt=0"+(B==="more"&&x.bro.ipa?"&imore=1":"")+(x.bro.msi?"&captcha_provider=recaptcha":"");}function z(R,G,U,Z){var N=x.trim,W=window,S=x.pub(),L=window._atw||{},M=(U&&U.url?U.url:(L.share&&L.share.url?L.share.url:(W.addthis_url||W.location.href))),Y,F=function(ac){if(M&&M!=""){var d=M.indexOf("#at"+ac);if(d>-1){M=M.substr(0,d);}}};if(!Z){Z=L.conf||{};}else{for(var T in L.conf){if(!(Z[T])){Z[T]=L.conf[T];}}}if(!U){U=L.share||{};}else{for(var T in L.share){if(!(U[T])){U[T]=L.share[T];}}}if(x.rsu()){U.url=window.addthis_url;U.title=window.addthis_title;M=U.url;}if(!S||S=="undefined"){S="unknown";}Y=Z.services_custom;F("pro");F("opp");F("cle");F("clb");F("abc");if(M.indexOf("addthis.com/static/r07/ab")>-1){M=M.split("&");for(var V=0;V<M.length;V++){var P=M[V].split("=");if(P.length==2){if(P[0]=="url"){M=P[1];break;}}}}if(Y instanceof Array){for(var V=0;V<Y.length;V++){if(Y[V].code==R){Y=Y[V];break;}}}var X=((U.templates&&U.templates[R])?U.templates[R]:""),A=((U.modules&&U.modules[R])?U.modules[R]:""),D=U.share_url_transforms||U.url_transforms||{},J=U.track_url_transforms||U.url_transforms,ab=((D&&D.shorten&&U.shorteners)?(typeof(D.shorten)=="string"?D.shorten:(D.shorten[R]||D.shorten["default"]||"")):""),H="",Q=(Z.product||W.addthis_product||("men-"+_atc.ver)),B=L.crs,I="",O=x.track.gof(M),aa=O.length==2?O.shift().split("=").pop():"",a=O.length==2?O.pop():"",K=(Z.data_track_clickback||Z.data_track_linkback||!S||S=="AddThis")||(Z.data_track_clickback!==false&&_atc.ver>=250);if(U.email_vars){for(var T in U.email_vars){I+=(I==""?"":"&")+_euc(T)+"="+_euc(U.email_vars[T]);}}if(x.track.spc&&Q.indexOf(x.track.spc)==-1){Q+=","+x.track.spc;}if(D&&D.shorten&&U.shorteners){for(var T in U.shorteners){for(var C in U.shorteners[T]){H+=(H.length?"&":"")+_euc(T+"."+C)+"="+_euc(U.shorteners[T][C]);}}}M=x.track.cof(M);M=x.track.mgu(M,D,U,R);if(J){U.trackurl=x.track.mgu(U.trackurl||M,J,U,R);}var E="pub="+S+"&source="+Q+"&lng="+(x.lng()||"xx")+"&s="+R+(Z.ui_508_compliant?"&u508=1":"")+(G?"&h1="+N((U.feed||U.url).replace("feed://",""),1)+"&t1=":"&url="+N(M,1)+"&title=")+N(U.title||W.addthis_title,1)+(_atc.ver<200?"&logo="+N(W.addthis_logo,1)+"&logobg="+N(W.addthis_logo_background,1)+"&logocolor="+N(W.addthis_logo_color,1):"")+"&ate="+x.track.sta()+((R!="email"||_atc.ver<300)?"&frommenu=1":"")+((window.addthis_ssh&&(!B||addthis_ssh!=B)&&(addthis_ssh==R||addthis_ssh.search(new RegExp("(?:^|,)("+R+")(?:$|,)"))>-1))?"&ips=1":"")+(B?"&cr="+(R==B?1:0):"")+"&uid="+_euc(x.uid&&x.uid!="x"?x.uid:x.util.cuid())+(U.email_template?"&email_template="+_euc(U.email_template):"")+(I?"&email_vars="+_euc(I):"")+(ab?"&shortener="+_euc(typeof(ab)=="array"?ab.join(","):ab):"")+(ab&&H?"&"+H:"")+((U.passthrough||{})[R]?"&passthrough="+N((typeof(U.passthrough[R])=="object"?x.util.toKV(U.passthrough[R]):U.passthrough[R]),1):"")+(U.description?"&description="+N(U.description,1):"")+(U.html?"&html="+N(U.html,1):(U.content?"&html="+N(U.content,1):""))+(U.trackurl&&U.trackurl!=M?"&trackurl="+N(U.trackurl,1):"")+(U.screenshot?"&screenshot="+N(U.screenshot,1):"")+(U.screenshot_secure?"&screenshot_secure="+N(U.screenshot_secure,1):"")+(U.swfurl?"&swfurl="+N(U.swfurl,1):"")+(U.swfurl_secure?"&swfurl_secure="+N(U.swfurl_secure,1):"")+(Z.hdl?"&hdl=1":"")+(x.cb?"&cb="+x.cb:"")+(x.ufbl?"&ufbl=1":"")+(x.uud?"&uud=1":"")+(U.iframeurl?"&iframeurl="+N(U.iframeurl,1):"")+(U.width?"&width="+U.width:"")+(U.height?"&height="+U.height:"")+(Z.data_track_p32?"&p32="+Z.data_track_p32:"")+(K||_7.track.ctp(Z.product,Z)?"&ct=1":"")+((K||_7.track.ctp(Z.product,Z))&&M.indexOf("#")>-1?"&uct=1":"")+((Y&&Y.url)?"&acn="+_euc(Y.name)+"&acc="+_euc(Y.code)+"&acu="+_euc(Y.url):"")+(x.smd?(x.smd.rxi?"&rxi="+x.smd.rxi:"")+(x.smd.rsi?"&rsi="+x.smd.rsi:"")+(x.smd.gen?"&gen="+x.smd.gen:""):((aa?"&rsi="+aa:"")+(a?"&gen="+a:"")))+(U.xid?"&xid="+N(U.xid,1):"")+(X?"&template="+N(X,1):"")+(A?"&module="+N(A,1):"")+(Z.ui_cobrand?"&ui_cobrand="+N(Z.ui_cobrand,1):"")+(R=="email"&&_atc.ver>=300?"&ui_email_from="+N(Z.ui_email_from,1)+"&ui_email_note="+N(Z.ui_email_note,1):"")+(_atc.ver<300?((Z.ui_header_color?"&ui_header_color="+N(Z.ui_header_color,1):"")+(Z.ui_header_background?"&ui_header_background="+N(Z.ui_header_background,1):"")):"");return E;}function y(A,d,B){var a=A.xid;if(d.data_track_clickback||d.data_track_linkback||_7.track.ctp(d.product,d)){return x.track.gcc(a,(x.smd||{}).gen||0)+(B||"");}else{return"";}}function q(G,I,C,H,d,J){var F=x.pub(),a=H||I.url||"",B=I.xid||x.util.cuid(),D=(C.data_track_clickback||C.data_track_linkback||!F||F=="AddThis")||(C.data_track_clickback!==false&&_atc.ver>=250);if(a.toLowerCase().indexOf("http%3a%2f%2f")===0){a=_duc(a);}if(d){var A={};for(var E in I){A[E]=I[E];}A.xid=B;setTimeout(function(){(new Image()).src=l(G=="twitter"&&J?"tweet":G,0,A,C);},100);}return(D?x.track.cur(a,G,B):a);}function g(C,A,a){var A=A||{},B=C.share_url_transforms||C.url_transforms||{},d=x.track.cof(x.track.mgu(C.url,B,C,"mailto"));return"mailto:?subject="+_euc(C.title?C.title:d)+"&body="+_euc(q("mailto",C,A,d,a));}function h(a){return((!a.templates||!a.templates.twitter)&&(!x.wlp||x.wlp=="http:"));}function f(d,B,I,A){var G=B||550,C=I||450,H=screen.width,E=screen.height,F=Math.round((H/2)-(G/2)),a=0,D;if(E>C){F=Math.round((E/2)-(C/2));}w.open(d,(_7.bro.msi?"":(A||"addthis_share")),"left="+F+",top="+a+",width="+G+",height="+C+",personalbar=no,toolbar=no,scrollbars=yes,location=yes,resizable=yes");return false;}function u(d,A,a){w.open(l(d,0,A,a),"addthis_share");return false;}function j(d){var a={twitter:1,wordpress:1,email:_atc.ver>=300,more:_atc.ver>=300,raiseyourvoice:1,vk:1};return a[d];}function p(F,E,B,D,a,A){var C={wordpress:{width:720,height:570},linkedin:{width:600,height:400},email:_atc.ver>=300?{width:660,height:660}:{width:735,height:450},more:_atc.ver>=300?{width:660,height:716}:{width:735,height:450},vk:{width:720,height:290},raiseyourvoice:{width:480,height:635},"default":{width:550,height:450}},d=l(F,0,E,B);if(B.ui_use_same_window){window.location.href=d;}else{f(d,D||(C[F]||C["default"]).width,a||(C[F]||C["default"]).height,A);}return false;}function c(F,B,G,D){var C=F.share_url_transforms||F.url_transforms||{},A,d=(F.passthrough||{}).twitter||{},a=x.track.cof(x.track.mgu(F.url,C,F,"twitter")),E=((F.passthrough||{}).twitter==undefined)?{}:d;if(!F.templates){F.templates={};}if(!F.templates.twitter){F.templates.twitter=(F.text||((F.title==t.title)?E.text:F.title)||"{{title}}:")+" {{url}} via @"+(F.via||E.via||"AddThis");}a=l("twitter",0,F,B);if(A){F.title=A;}if(B.ui_use_same_window||D){window.location.href=a;}else{f(a,550,450,"twitter_tweet");}return false;}function k(B,A,a,d){_7.ed.fire("addthis.menu.share",window.addthis||{},{element:d||{},service:B||"unknown",url:A.trackurl||A.url});}function m(C,D,B,d,A){var a=l(C,D,B,d);i.push(x.ajs(a,1));if(!A){k(C,B,d);}}function s(A,d,a){return v()+"tellfriend.php?&fromname=aaa&fromemail="+_euc(d.from)+"&frommenu=1&tofriend="+_euc(d.to)+(A.email_template?"&template="+_euc(A.email_template):"")+(d.vars?"&vars="+_euc(d.vars):"")+"&lng="+(x.lng()||"xx")+"&captcha_provider=nucaptcha&note="+_euc(d.note)+"&"+z("email",null,null,a);}e.share=e.share||{};e.util.extend(e.share,{auw:j,ocw:f,stw:p,siw:u,pts:c,unt:h,uadd:z,genurl:l,geneurl:s,genieu:g,acb:q,gcp:y,svcurl:v,track:m,notify:k,links:b});})(_7,_7.api,_7);(function(a,b,c){if(!a.services){a.services={};}a.services.map={facebook:"",twitter:"",reddit:"",stumbleupon:"",gmail:"mail.google.com",blogger:"",linkedin:"",tumblr:"",delicious:"",yahoomail:"compose.mail.yahoo.com",hotmail:"hotmail.msn.com","100zakladok":"100zakladok.ru","2tag":"2tag.nl","2linkme":"","7live7":"",a1webmarks:"a1-webmarks.com",a97abi:"",addio:"add.io",menu:"api.addthis.com",adfty:"",adifni:"",aerosocial:"",allmyfaves:"",amazonwishlist:"amazon.com",amenme:"",aim:"lifestream.aol.com",aolmail:"webmail.aol.com",armenix:"",arto:"",aviary:"",baang:"baang.ir",baidu:"cang.baidu.com",bebo:"",bentio:"",biggerpockets:"",bitly:"bit.ly",bizsugar:"",bleetbox:"",blinklist:"",blip:"blip.pl",bloggy:"bloggy.se",blogmarks:"blogmarks.net",blogtrottr:"",blurpalicious:"",bobrdobr:"bobrdobr.ru",bonzobox:"",socialbookmarkingnet:"social-bookmarking.net",bookmarkycz:"bookmarky.cz",bookmerkende:"bookmerken.de",bordom:"bordom.net",box:"box.net",brainify:"",bryderi:"bryderi.se",buddymarks:"",buzzzy:"",camyoo:"",cardthis:"partner.cardthis.com",care2:"",chiq:"",cirip:"cirip.ro",citeulike:"citeulike.org",classicalplace:"",cndig:"cndig.org",colivia:"colivia.de",technerd:"",connotea:"connotea.org",cootopia:"",cosmiq:"cosmiq.de",curateus:"curate.us",designbump:"",designmoo:"",digthiswebhost:"",digaculturanet:"digacultura.net",digg:"",diggita:"diggita.it",diglog:"",digo:"digo.it",digzign:"",diigo:"",dipdive:"",domelhor:"domelhor.net",dosti:"dosti.webdunia.com",dotnetkicks:"",dotnetshoutout:"",woscc:"wos.cc",douban:"",draugiem:"draugiem.lv",drimio:"",dropjack:"",dwellicious:"",dzone:"",edelight:"edelight.de",efactor:"",ekudos:"ekudos.nl",elefantapl:"elefanta.pl",embarkons:"",eucliquei:"eucliquei.com.br",evernote:"",extraplay:"",ezyspot:"",stylishhome:"",fabulously40:"",informazione:"fai.informazione.it",fark:"",farkinda:"",fashiolista:"",fashionburner:"",favable:"",faves:"",favlogde:"favlog.de",favoritende:"favoriten.de",favoritus:"",flaker:"flaker.pl",flosspro:"floss.pro",folkd:"",formspring:"formspring.me",thefreedictionary:"",fresqui:"",friendfeed:"",friendster:"",funp:"",fwisp:"",gabbr:"",gamekicker:"",givealink:"givealink.org",globalgrind:"",govn:"my.go.vn",goodnoows:"",googletranslate:"translate.google.com",gravee:"",greaterdebater:"",grono:"grono.net",habergentr:"haber.gen.tr",hackernews:"news.ycombinator.com",hadashhot:"hadash-hot.co.il",hatena:"b.hatena.ne.jp",gluvsnap:"healthimize.com",hedgehogs:"hedgehogs.net",hellotxt:"",historious:"historio.us",hitmarks:"",hotbookmark:"hotbmark.com",hotklix:"",w3validator:"validator.w3.org",hyves:"hyves.net",idearef:"",identica:"identi.ca",ihavegot:"",index4:"index4.in",indexor:"indexor.co.uk",instapaper:"",investorlinks:"",iorbix:"",isociety:"isociety.be",iwiw:"iwiw.hu",jamespot:"",jappy:"jappy.de",joliprint:"api.joliprint.com",jumptags:"",zooloo:"kablog.com",kaboodle:"",kaevur:"",kaixin:"kaixin001.com",kindleit:"fivefilters.org",kipup:"",kirtsy:"",kledy:"kledy.de",kommenting:"",latafaneracat:"latafanera.cat",laaikit:"laaik.it",ladenzeile:"ladenzeile.de",librerio:"",linkninja:"linkninja.com.br",linkagogo:"",linksgutter:"",linkshares:"linkshares.net",linkuj:"linkuj.cz",livejournal:"",lockerblogger:"",logger24:"",mymailru:"connect.mail.ru",markme:"markme.me",mashbord:"",mawindo:"",meinvz:"meinvz.net",mekusharim:"mekusharim.walla.co.il",memonic:"",memori:"memori.ru",meneame:"meneame.net",live:"profile.live.com",mindbodygreen:"",misterwong:"mister-wong.com",misterwong_de:"mister-wong.de",moemesto:"moemesto.ru",moikrug:"moikrug.ru",mototagz:"",mrcnetworkit:"mrcnetwork.it",multiply:"",myaol:"favorites.my.aol.com",myhayastan:"myhayastan.am",mylinkvault:"",myspace:"",n4g:"",naszaklasa:"nk.pl",netlog:"",netvibes:"",netvouz:"",newsmeback:"",newstrust:"newstrust.net",newsvine:"",nujij:"nujij.nl",odnoklassniki_ru:"odnoklassniki.ru",oknotizie:"oknotizie.virgilio.it",oneview:"oneview.de",ongobee:"",orkut:"promote.orkut.com",dashboard:"api.addthis.com",oyyla:"",packg:"",pafnetde:"pafnet.de",pdfonline:"savepageaspdf.pdfonline.com",pdfmyurl:"",phonefavs:"",pingfm:"ping.fm",planypus:"planyp.us",plaxo:"",plurk:"",pochvalcz:"pochval.cz",popedition:"",posteezy:"",posterous:"",pratiba:"prati.ba",printfriendly:"",pusha:"pusha.se",qrfin:"qrf.in",quantcast:"",qzone:"sns.qzone.qq.com",readitlater:"readitlaterlist.com",rediff:"share.rediff.com",redkum:"",ridefix:"",scoopat:"scoop.at",scoopit:"scoop.it",sekoman:"sekoman.lv",select2gether:"www2.select2gether.com",shaveh:"shaveh.co.il",shetoldme:"",shirintar:"shir.intar.in",simpy:"",sinaweibo:"v.t.sina.com.cn",slashdot:"slashdot.org",smiru:"smi2.ru",sodahead:"",sonico:"",speedtile:"speedtile.net",sphinn:"",spinsnap:"",spokentoyou:"",sportpost:"",yiid:"spread.ly",springpad:"springpadit.com",squidoo:"",startaid:"",startlap:"startlap.hu",storyfollower:"",studivz:"studivz.net",stuffpit:"",stumpedia:"",stylehive:"",svejo:"svejo.net",symbaloo:"",taaza:"",tagmarksde:"tagmarks.de",tagvn:"",tagza:"",tarpipe:"",tellmypolitician:"",thewebblend:"",thinkfinity:"community.thinkfinity.org",thisnext:"",throwpile:"",tipd:"",topsitelernet:"ekle.topsiteler.net",transferr:"",tuenti:"",tulinq:"",tusul:"",tvinx:"",tweetmeme:"api.tweetmeme.com",twitthis:"",typepad:"",upnews:"upnews.it",urlaubswerkde:"urlaubswerk.de",urlcapt:"",viadeo:"",virb:"",visitezmonsite:"",vk:"vkontakte.ru",vkrugudruzei:"vkrugudruzei.ru",voxopolis:"",vybralisme:"vybrali.sme.sk",vyoom:"",webnews:"webnews.de",domaintoolswhois:"domaintools.com",windows:"api.addthis.com",windycitizen:"",wirefan:"",wordpress:"",worio:"",wykop:"wykop.pl",xanga:"",xing:"",yahoobkm:"bookmarks.yahoo.com",yammer:"",yardbarker:"",yemle:"",yigg:"yigg.de",yoolink:"go.yoolink.to",yorumcuyum:"",youblr:"",youbookmarks:"",youmob:"",yuuby:"",zakladoknet:"zakladok.net",zanatic:"",ziczac:"ziczac.it",zingme:"link.apps.zing.vn",zootool:""};})(_7,_7.api,_7);var w=window,ac=w.addthis_config||{},css=new _7.resource.Resource("widgetcss",_atr+"static/r07/widget76.css",function(){return true;}),_30e=new _7.resource.Resource("widget32css",_atr+"static/r07/widgetbig40.css",function(){return true;});function main(){try{if(_atc.xol&&!_atc.xcs&&ac.ui_use_css!==false){css.load();if(_7.bro.ipa){_30e.load();}}var a=_7,msi=a.bro.msi,hp=0,_312=window.addthis_config||{},dt=d.title,dr=(typeof(a.rdr)!=="undefined")?a.rdr:(d.referer||d.referrer||""),du=dl?dl.href:null,dh=dl.hostname,_317=du,_318=0,al=(_7.lng().split("-")).shift(),_31a=_7.track.eop(dl,dr),cvt=[],nabc=!!a.cookie.rck("nabc"),cfc=_31a.cfc,rsiq=_31a.rsiq,rsi=_31a.rsi,rxi=_31a.rxi,rsc=_31a.rsc.split("&").shift().split("%").shift().replace(/[^a-z0-9_]/g,""),gen=_31a.gen,fuid=_31a.fuid,ifr,_325=_atr+"static/r07/sh75.html#",data,_327=function(){if(!_7.track.pcs.length){_7.track.apc(window.addthis_product||("men-"+_atc.ver));}data.pc=_7.track.pcs.join(",");};if(rsc=="tweet"){rsc="twitter";}if(window.addthis_product){_7.track.apc(addthis_product);if(addthis_product.indexOf("fxe")==-1&&addthis_product.indexOf("bkm")==-1){_7.track.spc=addthis_product;}}var l=_7.share.links.canonical;if(l){if(l.indexOf("http")!==0){_317=(du||"").split("//").pop().split("/");if(l.indexOf("/")===0){_317=_317.shift()+l;}else{_317.pop();_317=_317.join("/")+"/"+l;}_317=dl.protocol+"//"+_317;}else{_317=l;}_7.usu(0,1);}_317=_317.split("#{").shift();a.igv(_317,d.title||"");var _329=addthis_share.view_url_transforms||addthis_share.track_url_transforms||addthis_share.url_transforms;if(_329){_317=_7.track.mgu(_317,_329);}if(rsi){rsi=rsi.substr(0,8)+fuid;}if(a.bro.mod==-1){var m=document.compatMode;if(m){var md=1;if(m=="BackCompat"){md=2;}else{if(m=="CSS1Compat"){md=0;}}a.bro.mode=md;if(a.bro.msi){a.bro.mod=md;}}}a.smd={rsi:rsi,rxi:rxi,gen:gen,rsc:rsc};a.dr=a.tru(dr,"fr");a.du=a.tru(_317,"fp");a.dt=dt=w.addthis_share.title;a.cb=a.ad.cla();a.kw=(a.cb!==1?a.ad.kw():"");a.dh=dl.hostname;a.ssl=du&&du.indexOf("https")===0?1:0;data={iit:(new Date()).getTime(),cb:a.cb,kw:a.kw,ab:a.ab,dh:a.dh,dr:a.dr,du:a.du,dt:dt,md:a.bro.mode,inst:a.inst,jsl:a.track.jsl(),lng:a.lng(),ogt:_7.ad.gog().join(","),pc:w.addthis_product||"men",pub:a.pub(),ssl:a.ssl,sid:_7.track.ssid(),srd:_atc.damp,srf:_atc.famp,srp:_atc.pamp,srl:_atc.lamp,srx:_atc.xamp,ver:_atc.ver,xck:_atc.xck||0,xtr:_atc.xtr||0,og:_7.ad.og()};if(a.dcp==Number.MAX_VALUE){data.dnp=1;}if(a.pixu){data.pixu=a.pixu;}if(a.trl.length){data.trl=a.trl.join(",");}if(a.rev){data.rev=a.rev;}if(_312.data_track_clickback||_312.data_track_linkback||_7.track.ctp(data.pc,_312)){data.ct=a.ct=1;}if(a.prv){data.prv=_31(a.prv);}if(rsc){data.sr=rsc;}if(a.vamp>=0&&!a.sub){if(cfc){cvt.push(a.track.fcv("plv",Math.round(1/_atc.vamp)));cvt.push(a.track.fcv("cfc",1));cvt.push(a.track.fcv("rcf",dl.hash));data.ce=cvt.join(",");}else{if(rsi&&(fuid!=a.gub())){cvt.push(a.track.fcv("plv",Math.round(1/_atc.vamp)));cvt.push(a.track.fcv("rsi",rsi));cvt.push(a.track.fcv("gen",gen));cvt.push(a.track.fcv("abc",1));cvt.push(a.track.fcv("fcu",a.gub()));cvt.push(a.track.fcv("rcf",dl.hash));data.ce=cvt.join(",");_318="addressbar";}else{if(rxi||rsiq||rsc){cvt.push(a.track.fcv("plv",Math.round(1/_atc.vamp)));if(rsc){cvt.push(a.track.fcv("rsc",rsc));}if(rxi){cvt.push(a.track.fcv("rxi",rxi));}else{if(rsiq){cvt.push(a.track.fcv("rsi",rsiq));}}if(rsiq||rxi){cvt.push(a.track.fcv("gen",gen));}data.ce=cvt.join(",");_318=rsc||"unknown";}}}}if(_318&&a.bamp>=0){data.clk=1;if(a.dcp!=Number.MAX_VALUE){a.dcp=data.gen=50;}_7.ed.fire("addthis.user.clickback",window.addthis||{},{service:_318});}if(!window.at_noxld){data.xld=1;}if(a.upm){data.xd=1;}if(!nabc&&window.history&&typeof(history.replaceState)=="function"&&(!_7.bro.chr||_7.bro.chb)&&(_312.data_track_addressbar||_312.data_track_addressbar_paths)&&((du||"").split("#").shift()!=dr)&&(du.indexOf("#")==-1||rsi||(_31a.hash&&rxi))){var path=dl.pathname||"",_32d,_32e=path!="/";if(_312.data_track_addressbar_paths){_32e=0;for(var i=0;i<_312.data_track_addressbar_paths.length;i++){_32d=new RegExp(_312.data_track_addressbar_paths[i].replace(/\*/g,".*")+"$");if(_32d.test(path)){_32e=1;break;}}}if(_32e&&(!rsi||a.util.ioc(rsi,5))){var _330=function(){history.replaceState({d:(new Date()),g:gen},d.title,_7.track.cur(dl.href.split("#").shift(),null,_7.track.ssid()));};_330();}}if(dl.href.indexOf(_atr)==-1&&!a.sub){if(a.upm){if(msi){setTimeout(function(){_327();ifr=a.track.ctf(_325+_31(data));a.track.stf(ifr);},_7.wait);w.attachEvent("onmessage",a.pmh);}else{ifr=a.track.ctf();w.addEventListener("message",a.pmh,false);}if(_7.bro.ffx){ifr.src=_325;_7.track.qtp(data);}else{if(!msi){setTimeout(function(){_327();ifr.src=_325+_31(data);},_7.wait);}}}else{ifr=a.track.ctf();setTimeout(function(){_327();ifr.src=_325+_31(data);},_7.wait);}if(ifr){ifr=a.track.gtf().appendChild(ifr);a.track.stf(ifr);}}if(w.addthis_language||ac.ui_language){a.alg();}if(a.plo.length>0){a.jlo();}}catch(e){window.console&&console.log("lod",e);}}w._ate=a;w._adr=r;a._ssc=a._ssh=[];a.dat={};a._rec.push(function(data){_13(data,function(k,v){a.dat[k]=v;});if(data.ssc){a._ssc=data.ssc;}if(data.sshs){var s=window.addthis_ssh=_duc(data.sshs);a.gssh=1;a._ssh=s.split(",");}if(data.uss){var u=a._uss=_duc(data.uss).split(",");if(window.addthis_ssh){var seen={},u=u.concat(a._ssh),_337=[];for(var i=0;i<u.length;i++){var s=u[i];if(!seen[s]){_337.push(s);}seen[s]=1;}u=_337;}a._ssh=u;window.addthis_ssh=u.join(",");}if(data.ups){var s=data.ups.split(",");a.ups={};for(var i=0;i<s.length;i++){if(s[i]){var o=_3f(_duc(s[i]));a.ups[o.name]=o;}}a._ups=a.ups;}if(data.uid){a.uid=data.uid;_7.ed.fire("addthis-internal.data.uid",{},{uid:data.uid});}if(data.bti){a.bti=data.bti;_7.ed.fire("addthis-internal.data.bti",{},{bti:data.bti});}if(data.bts){a.bts=parseInt(data.bts);_7.ed.fire("addthis-internal.data.bts",{},{bts:data.bts});}if(data.vts){a.vts=parseInt(data.vts);_7.ed.fire("addthis-internal.data.vts",{},{vts:data.vts});}if(data.geo){a.geo=(data.geo.constructor=="string")?_7.util.geo.parse(data.geo):data.geo;_7.ed.fire("addthis-internal.data.geo",{},{geo:a.geo});}if(data.dbm){a.dbm=data.dbm;}if(data.atgotcode){a.sau=data.atgotcode;}if(data.rdy){_7.ed.fire("addthis-internal.data.rdy");a.xfr=1;a.track.xtp();return;}});try{if(dl.href.indexOf(_atr)>-1){var ckv=_3f(d.cookie,";");a._rec[a._rec.length-1](ckv);}var _33b={},_33c=_7.util.gsp("addthis_widget.js");if(typeof(_33c)=="object"){if(_33c.provider){_33b={provider:_7.mun(_33c.provider_code||_33c.provider),auth:_33c.auth||_33c.provider_auth||""};if(_33c.uid||_33c.provider_uid){_33b.uid=_7.mun(_33c.uid||_33c.provider_uid);}if(_33c.logout){_33b.logout=1;}_7.prv=_33b;}if(_33c.dnp){_7.dcp=Number.MAX_VALUE;}if(_33c.dnt){_atc.xtr=1;}if(_33c.adurl&&typeof(_33c.adurl)=="string"){_7.pixu=_33c.adurl;}if(_33c.adev&&typeof(_33c.adev)=="string"){var ad=_duc(_33c.adev).split(";");_7.ed.addEventListener("addthis-internal.data.uid",function(){for(var i=0;i<ad.length;i++){var cmds=ad[i].split(","),cmd={};for(var j=0;j<cmds.length;j++){var c=cmds[j].split("=");cmd[c[0]]=c[1];}if(window.addthis){addthis.ad.event(cmd);}}});}if(_33c.pubid||_33c.pub||_33c.username){w.addthis_pub=_duc(_33c.pubid||_33c.pub||_33c.username);}if(w.addthis_pub&&w.addthis_config){w.addthis_config.username=w.addthis_pub;}if(_33c.domready){_atc.dr=1;}if(_33c.onready&&_33c.onready.match(/[a-zA-Z0-9_\.\$]+/)){try{_7.onr=_7.evl(_33c.onready);}catch(e){window.console&&console.log("addthis: onready function ("+_33c.onready+") not defined",e);}}if(_33c.async){_atc.xol=1;}}_7.ed.fire("addthis-internal.params.loaded",{},{geo:a.geo});if((window.addthis_conf||{}).xol){_atc.xol=1;}if(_atc.ver===120){var rc="atb"+_7.util.cuid();d.write("<span id=\""+rc+"\"></span>");_7.igv();_7.lad(["span",rc,addthis_share.url||"[url]",addthis_share.title||"[title]"]);}if(w.addthis_clickout){_7.lad(["cout"]);}if(!_atc.xol&&!_atc.xcs&&ac.ui_use_css!==false){css.load();if(_7.bro.ipa){_30e.load();}}}catch(e){if(window.console){console.log("main",e);}}_87.bindReady();_87.append(main);})();function addthis_open(){if(typeof iconf=="string"){iconf=null;}return _ate.ao.apply(_ate,arguments);}function addthis_close(){_ate.ac();}function addthis_sendto(){_ate.as.apply(_ate,arguments);return false;}if(_atc.dr){_adr.onReady();}}else{_ate.inst++;}if(_atc.abf){addthis_open(document.getElementById("ab"),"emailab",window.addthis_url||"[URL]",window.addthis_title||"[TITLE]");}if(!window.addthis||window.addthis.nodeType!==undefined){window.addthis=(function(){var e={a1webmarks:"A1&#8209;Webmarks",aim:"AOL Lifestream",amazonwishlist:"Amazon",aolmail:"AOL Mail",aviary:"Aviary Capture",domaintoolswhois:"Whois Lookup",googlebuzz:"Google Buzz",googlereader:"Google Reader",googletranslate:"Google Translate",linkagogo:"Link-a-Gogo",meneame:"Men&eacute;ame",misterwong:"Mister Wong",mailto:"Email App",myaol:"myAOL",myspace:"MySpace",readitlater:"Read It Later",rss:"RSS",stumbleupon:"StumbleUpon",typepad:"TypePad",wordpress:"WordPress",yahoobkm:"Y! Bookmarks",yahoomail:"Y! Mail",youtube:"YouTube"},g=document,c=g.gn("body").item(0),f=_ate.util.bind;function b(d,l){var m;if(window._atw&&_atw.list&&_atw.list[d]){m=_atw.list[d]}else{if(e[d]){m=e[d]}else{m=(l?d:(d.substr(0,1).toUpperCase()+d.substr(1)))}}return(m||"").replace(/&nbsp;/g," ")}function i(d,u,s,r,t){u=u.toUpperCase();var p=(d==c&&addthis.cache[u]?addthis.cache[u]:(d||c||g.body).getElementsByTagName(u)),n=[],q,m;if(d==c){addthis.cache[u]=p}if(t){for(q=0;q<p.length;q++){m=p[q];if((m.className||"").indexOf(s)>-1){n.push(m)}}}else{s=s.replace(/\-/g,"\\-");var l=new RegExp("(^|\\s)"+s+(r?"\\w*":"")+"(\\s|$)");for(q=0;q<p.length;q++){m=p[q];if(l.test(m.className)){n.push(m)}}}return(n)}var k=g.getElementsByClassname||i;function j(d){if(typeof d=="string"){var l=d.substr(0,1);if(l=="#"){d=g.getElementById(d.substr(1))}else{if(l=="."){d=k(c,"*",d.substr(1))}else{}}}if(!d){d=[]}else{if(!(d instanceof Array)){d=[d]}}return d}function a(l,d){return function(){addthis.plo.push({call:l,args:arguments,ns:d})}}function h(m){var l=this,d=this.queue=[];this.name=m;this.call=function(){d.push(arguments)};this.call.queuer=this;this.flush=function(p,o){for(var n=0;n<d.length;n++){p.apply(o||l,d[n])}return p}}return{ost:0,cache:{},plo:[],links:[],ems:[],init:_adr.onReady,_Queuer:h,_queueFor:a,_select:j,_gebcn:i,data:{getShareCount:a("getShareCount","data")},bar:a("bar"),button:a("button"),counter:a("counter"),count:a("counter"),toolbox:a("toolbox"),update:a("update"),ad:{event:a("event","ad"),getPixels:a("getPixels","ad")},util:{getServiceName:b},addEventListener:f(_ate.ed.addEventListener,_ate.ed),removeEventListener:f(_ate.ed.removeEventListener,_ate.ed)}})()}_adr.append((function(){if(!window.addthis.ost){_ate.extend(B,_ate.api);var Z=document,N=undefined,M=window,J=0,e={},ac={compact:1,expanded:1,facebook:1,email:1,twitter:1,print:1,google:1,live:1,stumbleupon:1,vk:1,myspace:1,favorites:1,digg:1,delicious:1,orkut:1,blogger:1,mailto:1,linkedin:1,mymailru:1,gmail:1,yahoomail:1,reddit:1,tumblr:1,live:1},F=new _ate.resource.Resource("widget32css",_atr+"static/r07/widgetbig40.css",function(){return true}),T=false,t=M.addthis_config,Q=M.addthis_share,G={},z={},r=Z.gn("body").item(0),B=window.addthis,b=B._select,x=B._gebcn(r,"A","addthis_button_",true,true),X={rss:"Subscribe via RSS"},W={tweet:"Tweet",email:"Email",mailto:"Email",print:"Print",favorites:"Save to Favorites",twitter:"Tweet This",digg:"Digg This",more:"View more services"},P={email_vars:1,passthrough:1,modules:1,templates:1,services_custom:1},ab={feed:1,more:_atc.ver<300,email:_atc.ver<300,mailto:1},I={feed:1,email:_atc.ver<300,mailto:1,print:1,more:!_ate.bro.ipa&&_atc.ver<300,favorites:1},y={print:1,favorites:1,mailto:1},S={email:_atc.ver>=300,more:_atc.ver>=300},K=0,k=0,O=0,E=0,V=0;function j(d){if(d.indexOf("&")>-1){d=d.replace(/&([aeiou]).+;/g,"$1")}return d}function c(u,w){if(w&&u!==w){for(var d in w){if(u[d]===N){u[d]=w[d]}}}}function m(ae,u,af){var w=ae.onclick||function(){},d=y[u]?function(){_ate.share.track(u,0,ae.share,ae.conf)}:function(){_ate.share.notify(u,ae.share,ae.conf,ae)};if(ae.conf.data_ga_tracker||addthis_config.data_ga_tracker||ae.conf.data_ga_property||addthis_config.data_ga_property){ae.onclick=function(){_ate.gat(u,af,ae.conf,ae.share);d();return w()}}else{ae.onclick=function(ag){d();return w(ag)}}}function s(u,d){var w={googlebuzz:"http://www.google.com/profiles/%s",google_follow:"https://plus.google.com/%s",youtube:"http://www.youtube.com/user/%s",facebook:"http://www.facebook.com/profile.php?id=%s",facebook_url:"http://www.facebook.com/%s",rss:"%s",flickr:"http://www.flickr.com/photos/%s",twitter:"http://twitter.com/%s",linkedin:"http://www.linkedin.com/in/%s",vimeo:"http://www.vimeo.com/%s"};if(u=="facebook"&&isNaN(parseInt(d))){u="facebook_url"}return(w[u]||"").replace("%s",d)||""}function n(u,d){if(T&&!d){return true}var w=(u.parentNode||{}).className||"";T=(w.indexOf("32x32")>-1||u.className.indexOf("32x32")>-1);return T}function C(u){var w=(u.parentNode||{}).className||"",d=u.conf&&u.conf.product&&w.indexOf("toolbox")==-1?u.conf.product:"tbx"+(u.className.indexOf("32x32")>-1||w.indexOf("32x32")>-1?"32":"")+"-"+_atc.ver;if(d.indexOf(32)>-1){T=true}_ate.track.apc(d);return d}function g(w,ae){var u={};for(var d in w){if(ae[d]){u[d]=ae[d]}else{u[d]=w[d]}}return u}function Y(d,af,ag,ae){var u=Z.ce("img");u.width=d;u.height=af;u.border=0;u.alt=ag;u.src=ae;return u}function h(ae,af){var w,d=[],ag={};for(var u=0;u<ae.attributes.length;u++){w=ae.attributes[u];d=w.name.split(af+":");if(d.length==2){ag[d.pop()]=w.value}}return ag}_ate.api.ptpa=h;function D(u,ai,d,ae){var ai=ai||{},w={},ag=h(u,"addthis");for(var af in ai){w[af]=ai[af]}if(ae){for(var af in u[d]){w[af]=u[d][af]}}for(var af in ag){if(ai[af]&&!ae){w[af]=ai[af]}else{var aj=ag[af];if(aj){w[af]=aj}else{if(ai[af]){w[af]=ai[af]}}if(w[af]==="true"){w[af]=true}else{if(w[af]==="false"){w[af]=false}}}if(w[af]!==N&&P[af]&&(typeof w[af]=="string")){try{w[af]=JSON.parse(w[af].replace(/'/g,'"'))}catch(ah){w[af]=_ate.evl("("+w[af]+");",true)}}}return w}function L(w){var u=(w||{}).services_custom;if(!u){return}if(!(u instanceof Array)){u=[u]}for(var ae=0;ae<u.length;ae++){var d=u[ae];if(d.name&&d.icon&&d.url){if(typeof d.url=="object"){d.url=_ate.util.toKV(d.url)}d.code=d.url=d.url.replace(/ /g,"");d.code=d.code.split("//").pop().split("?").shift().split("/").shift().toLowerCase();e[d.code]=d}}}function p(u,d){return e[u]||{}}function a(u,d,w,ae){var af={conf:d||{},share:w||{}};af.conf=D(u,d,"conf",ae);af.share=D(u,w,"share",ae);return af}function R(aw,ai,ao,ag){_ate.igv();if(aw){ai=ai||{};ao=ao||{};var ax=ai.conf||t,au=ai.share||Q,af=ao.onmouseover,w=ao.onmouseout,az=ao.onclick,al=ao.internal,aq=ao.singleservice;if(aq){if(az===N){az=ab[aq]?function(aC,aA,aD){var aB=g(aD,z);return addthis_open(aC,aq,aB.url,aB.title,g(aA,G),aB)}:I[aq]?function(aC,aA,aD){var aB=g(aD,z);return addthis_sendto(aq,g(aA,G),aB)}:S[aq]?function(aC,aA,aD){var aB=g(aD,z);return _ate.share.stw(aq,aB,aA,735)}:null}}else{if(!ao.noevents){if(!ao.nohover){if(af===N){af=function(aB,aA,aC){return addthis_open(aB,"",null,null,g(aA,G),g(aC,z))}}if(w===N){w=function(aA){return addthis_close()}}if(az===N){az=function(aB,aA,aC){return addthis_sendto("more",g(aA,G),g(aC,z))}}}else{if(az===N){az=function(aB,aA,aC){return addthis_open(aB,"more",null,null,g(aA,G),g(aC,z))}}}}}aw=b(aw);for(var av=0;av<aw.length;av++){var an=aw[av],ar=an.parentNode,u=a(an,ax,au,!ag)||{};c(u.conf,t);c(u.share,Q);an.conf=u.conf;an.share=u.share;if(an.conf.ui_language){_ate.alg(an.conf.ui_language)}L(an.conf);if(ar&&ar.className.indexOf("toolbox")>-1&&(an.conf.product||"").indexOf("men")===0){an.conf.product="tbx"+(ar.className.indexOf("32x32")>-1?"32":"")+"-"+_atc.ver;_ate.track.apc(an.conf.product)}if(aq&&aq!=="more"){an.conf.product=C(an)}if((!an.conf||(!an.conf.ui_click&&!an.conf.ui_window_panes))&&!_ate.bro.ipa){_ate.maf=_ate.maf||{};_ate.maf.key=null;if(af){an.onfocus=an.onmouseover=function(){_ate.maf.sib=this.nextSibling;while(_ate.maf.sib&&_ate.maf.sib.nodeType==3&&_ate.maf.sib.nextSibling){_ate.maf.sib=_ate.maf.sib.nextSibling}if(!_ate.maf.sib||_ate.maf.sib.nodeType==3){var aA=this.parentNode;if(!aA){aA=document.body.firstChild||document.body;while(aA.nodeType==3&&aA.nextSibling){aA=aA.nextSibling}}else{while(aA.nextSibling&&aA.nodeType==3){aA=aA.nextSibling}}_ate.maf.sib=aA}_ate.maf.sib.onfocus=function(){_ate.maf.sib.tabIndex=""};return af(this,this.conf,this.share)}}if(w){an.onmouseout=function(){return w(this)}}if(az){an.onclick=function(){return az(an,an.conf,an.share)}}if(w||az){an.onkeypress=an.onkeydown=function(aA){if(!aA){var aA=window.event}if(aA.keyCode){_ate.maf.key=aA.keyCode}else{if(aA.which){_ate.maf.key=aA.which}}if(_ate.maf.key==13){_ate.maf.pre=this}else{_ate.maf.pre=null}};an.onblur=function(aA){if(_ate.maf.key==9){_ate.maf.key=null}else{_ate.maf.key=null;if(w){return w(this)}}}}}else{if(az){if(aq){an.onclick=function(){return az(this,this.conf,this.share)}}else{if(!an.conf.ui_window_panes){an.onclick=function(){if(_ate.bro.iph||_ate.bro.dro){return addthis_sendto("more",this.conf,this.share)}else{return addthis_open(this,"",null,null,this.conf,this.share)}}}else{an.onclick=function(){return addthis_sendto("more",this.conf,this.share)}}}}}if(an.tagName.toLowerCase()=="a"){var ae=an.share.url||addthis_share.url;_ate.usu(ae);if(aq){var ak=p(aq,an.conf),d=an.firstChild;if(ak&&ak.code&&ak.icon){if(d&&d.className.indexOf("at300bs")>-1){var am="16";if(n(an,1)){d.className=d.className.split("at15nc").join("");am="32"}d.style.background="url("+ak.icon+") no-repeat top left transparent";if(!d.style.cssText){d.style.cssText=""}d.style.cssText="line-height:"+am+"px!important;width:"+am+"px!important;height:"+am+"px!important;background:"+d.style.background+"!important"}}if(!I[aq]){if(ao.follow){an.href=ae;an.onclick=function(){_ate.share.track(aq,1,an.share,an.conf)};if(an.children&&an.children.length==1&&an.parentNode&&an.parentNode.className.indexOf("toolbox")>-1){var at=Z.ce("span");at.className="addthis_follow_label";at.innerHTML=aq=="google_follow"?"Google":B.util.getServiceName(aq).replace("_follow","");an.appendChild(at)}}else{if(aq=="twitter"){an.onclick=function(aA){return _ate.share.pts(an.share,an.conf)};an.noh=1}else{if(aq=="facebook"){an.onclick=function(aA){return _ate.share.fb.share(an.share,an.conf)};an.noh=1}else{if(aq=="google_plusone"){an.onclick=function(aA){return false}}else{if(aq=="foursquare"){an.onclick=function(aA){_ate.share.track(aq,1,an.share,an.conf);return false}}else{if(aq=="link"){an.onclick=function(aB){var aA=_euc(an.share.url);if(_atc.ver>=300){_ate.share.ocw(_atr+"static/r07/link.html#url="+_euc(aA)+"&ats="+_euc(_ate.util.rtoKV(an.share))+"&atc="+_euc(_ate.util.rtoKV(an.config)),"500px","480px")}else{addthis_open(document.body,"link",aA);if(Z.getElementById("at16p")){Z.getElementById("at16p").style.display="block"}if(Z.getElementById("at15s")){Z.getElementById("at15s").style.display="none"}}return false}}else{if(!an.noh){if(an.conf.ui_open_windows||_ate.share.auw(aq)){an.onclick=function(aA){return _ate.share.stw(aq,an.share,an.conf)}}else{an.onclick=function(aA){return _ate.share.siw(aq,an.share,an.conf)};an.href=_ate.share.genurl(aq,0,an.share,an.conf)}}}}}}}}m(an,aq,ae);if(!an.noh&&!an.target){an.target="_blank"}B.links.push(an)}else{if(aq=="mailto"||(aq=="email"&&(an.conf.ui_use_mailto||_ate.bro.iph||_ate.bro.ipa||_ate.bro.dro))){an.onclick=function(){an.share.xid=_ate.util.cuid();(new Image()).src=_ate.share.genurl("mailto",0,an.share,an.config);_ate.gat(aq,ae,an.conf,an.share)};an.href=_ate.share.genieu(an.share,an.config||an.conf);B.ems.push(an)}}if(!an.title||an.at_titled){var aj=B.util.getServiceName(aq,!ak);an.title=j(ao.follow?(X[aq]?X[aq]:"Follow on "+aj):(W[aq]?W[aq]:"Send to "+aj));an.at_titled=1}if(!an.href){an.href="#"}}else{if(an.conf.product&&an.parentNode.className.indexOf("toolbox")==-1){C(an)}}}var ah;switch(al){case"img":if(!an.hasChildNodes()){var ay=(an.conf.ui_language||_ate.lng()).split("-").shift(),ap=_ate.ivl(ay);if(!ap){ay="en"}else{if(ap!==1){ay=ap}}ah=Y(_ate.iwb(ay)?150:125,16,"Share",_atr+"static/btn/v2/lg-share-"+ay.substr(0,2)+".gif")}break}if(ah){an.appendChild(ah)}}}}function f(){if(window.gapi&&window.gapi.plusone){gapi.plusone.go();return}else{if(!E){var d=_ate.ajs("//apis.google.com/js/plusone.js",1,1);E=1}}if(K<3){setTimeout(f,3000+1000*2*(K++))}}function q(d){var w=d?d.share:addthis_share,u=d?d.conf:addthis_config;window._at_plusonecallback=window._at_plusonecallback||function(ag){var ae={};for(var af in w){ae[af]=w[af]}ae.url=ag.href;_ate.share.track("google_"+(ag.state=="off"?"un":"")+"plusone",0,ae,u)}}function A(d){var ae=d?d.share:addthis_share,w=d?d.conf:addthis_config;if(window.DISQUS){var u=function(ah){var af=_ate.util.clone(addthis_share);for(var ag in ah){af[ag]=ah[ag]}if(typeof af.url==="undefined"){af.url=window.location.href}_ate.share.track("disqus_comment",0,af,w)};DISQUS.reset({reload:true,config:function(){this.callbacks.onNewComment=[function(af){u(af)}]}})}else{if(O<5){setTimeout(A,100*(O++))}}}function U(){if(window.twttr&&!J&&twttr.events){J=1;twttr.events.bind("click",function(ag){if(ag.region=="tweetcount"){return}var af=(ag.target.parentNode&&ag.target.parentNode.share)?ag.target.parentNode.share:{},w=af.url||ag.target.baseURI,ah=af.title||addthis_share.title,d={};for(var u in addthis_share){d[u]=addthis_share[u]}for(var u in af){d[u]=af[u]}d.url=w;if(ah){d.title=ah}var ae=(ag.region!="follow")?true:false;_ate.share.track(((ae)?"tweet":"twitter_follow_native"),((ae)?0:1),d,addthis_config)})}}function v(d){if(window.twttr&&window.twttr.events&&V==1){U();V=k=0;return}else{if(!V){_ate.ajs("//platform.twitter.com/widgets.js",1,null,null,null,true);V=1}}if(k<3){setTimeout(v,3000+1000*2*(k++))}}function ad(bc,a4,bw,a8,bq){for(var aL=0;aL<bc.length;aL++){var aR=bc[aL];if(aR==null){continue}if(a8!==false||!aR.ost){var aO=a(aR,a4,bw,!bq),a3=0,aS="at300",aP=aR.className||"",ag="",aD=aP.match(/addthis_button_([\w\.]+)(?:\s|$)/),aY={},bb=aD&&aD.length?aD[1]:0;c(aO.conf,t);c(aO.share,Q);if(bb){if(bb.indexOf("amazonwishlist_native")>-1){}else{if(bb==="link"){if(_ate.bro.ie9&&_atc.ver<300){continue}aR.title="Permalink"}else{if(bb==="tweetmeme"&&aR.className.indexOf("chiclet_style")==-1){if(aR.ost){continue}var bj=h(aR,"tm"),ae=50,ai=61;ag=_ate.util.toKV(bj);if(bj.style==="compact"){ae=95;ai=25}aR.innerHTML='<iframe frameborder="0" width="'+ae+'" height="'+ai+'" scrolling="no" allowTransparency="true" scrollbars="no"'+(_ate.bro.ie6?" src=\"javascript:''\"":"")+"></iframe>";var a0=aR.firstChild;a0.src="//api.tweetmeme.com/button.js?url="+_euc(aO.share.url)+"&"+ag;aR.noh=aR.ost=1}else{if(bb==="google_plusone"){if(aR.ost){continue}var a7=h(aR,"g:plusone"),aV=Z.ce("g:plusone"),bs="";_ate.gpl=_ate.gpl||{},_ate.gpl.lang=_ate.gpl.lang||null;a7.lang=_ate.gpl.lang=_ate.gpl.lang||((typeof a7.lang=="undefined")?null:a7.lang);window.___gcfg=window.___gcfg||{};window.___gcfg.lang=_ate.gpl.lang||a7.lang||_ate.ggl((aO.conf||{}).ui_language||window.addthis_language)||"en-US";a7.href=a7.href||_ate.track.mgu(aO.share.url,{defrag:1});a7.size=a7.size||(n(aR,true)?"standard":"small");a7.callback=a7.callback||"_at_plusonecallback";q(aO);for(var aJ in a7){if(a7.hasOwnProperty(aJ)){aV.setAttribute(aJ,a7[aJ])}}aR.appendChild(aV);aR.noh=aR.ost=1;f()}else{if(bb==="google_plusone_badge"){if(aR.ost){continue}aR.title="Follow on Google+";var aW=h(aR,"g:plusone");aW.size=(aW.size||"").toLowerCase();if(Z.head){var ah=Z.createElement("link");ah.setAttribute("href",aW.href);ah.setAttribute("rel","publisher");Z.head.appendChild(ah)}aW.url=aW.href=aW.href||"";if(aW.size=="badge"||aW.size=="smallbadge"){var be=Z.ce("g:plus"),bp="";_ate.gpl=_ate.gpl||{},_ate.gpl.lang=_ate.gpl.lang||null;aW.lang=_ate.gpl.lang=_ate.gpl.lang||((typeof aW.lang=="undefined")?null:aW.lang);window.___gcfg=window.___gcfg||{};window.___gcfg.lang=_ate.gpl.lang||aW.lang||_ate.ggl((aO.conf||{}).ui_language||window.addthis_language)||"en-US";for(var aJ in aW){if(aW.hasOwnProperty(aJ)){be.setAttribute(aJ,aW[aJ])}}aR.appendChild(be);aR.noh=aR.ost=1;f()}else{var aC="32";if(aW.size=="small"){aC="16"}else{if(aW.size=="large"){aC="64"}}var aU=txt=txt2=ieQ="";if(aW.name){if(_ate.bro.compatMode=="BackCompat"&&_ate.bro.msi){ieQ='onclick="window.open('+aW.href+'?prsrc=3)"'}aU="cursor:default;display:inline-block;text-decoration:none;color:#333;font:13px/16px arial,sans-serif;"+((aW.size=="large")?"text-align:center;white-space:nowrap;":"");if(aW.size=="large"){txt2='<br/><span style="font-weight:bold;">'+aW.name+"</span><br/><span> on Google+ </span>"}else{txt='<span style="display:inline-block;font-weight:bold;vertical-align:top;margin-right:5px;'+((aW.size=="medium")?"margin-top:8px;":"")+'">'+aW.name+'</span><span style="display:inline-block;vertical-align:top; margin-right:'+((aW.size=="medium")?"15px;margin-top:8px;":"13px;")+'">on</span>'}}aR.setAttribute("target","_blank");aR.style.textDecoration="none";aR.style.cursor="default";aR.innerHTML='<span style="'+aU+'">'+txt+"<img "+ieQ+' src="https://ssl.gstatic.com/images/icons/gplus-'+aC+'.png" alt="'+aR.title+'" style="border:0;width:'+aC+"px;height:"+aC+'px;cursor:pointer;" onmouseover="this.style.opacity=0.8;this.style.filter=\'alpha(opacity=80)\';" onmouseout="this.style.opacity=1.0;this.style.filter=\'alpha(opacity=100)\';">'+txt2+"</span>";aR.noh=aR.ost=1;aR.onclick=function(bz){if(!bz){var bz=window.event}var bB=bz.originalTarget||bz.relatedTarget||bz.toElement||bz.srcElement,bA="";if(!bB){return}while(bB.nodeName!="A"){bB=bB.parentNode}bA=((bB.attributes||{})["g:plusone:href"]||{}).value||window.location.href;M.open(bA+"?prsrc=3");_ate.share.track("google_plusone_badge",1,aW,a4);return false}}aR.onmouseover=function(){this.className=(this.className.indexOf("at300bo")>-1)?this.className:this.className.replace(/at300b/i,"at300bo")};aR.noh=aR.ost=1}else{if(bb==="pinterest"){if(aR.ost){continue}var bx=h(aR,"pi:pinit"),am=_ate.util.clone(aO.share);bx.url=am.url=bx.url||_ate.track.mgu(am.url,{defrag:1});bx.url=am.url=_euc(_ate.share.acb("pinterest",am,addthis_config));if(_ate.bro.ie6||_ate.bro.ie7||(_ate.bro.msi&&document.compatMode=="BackCompat")){bx.layout=""}if(bx.layout=="horizontal"){bx.layout="&layout=horizontal";bx.width="110px";bx.height="26px"}else{if(bx.layout=="vertical"){bx.layout="&layout=vertical";bx.width="49px";bx.height="59px"}else{bx.layout="";bx.width="49px";bx.height="26px"}}aR.innerHTML='<iframe frameborder="0" role="presentation" scrolling="no" allowTransparency="true" scrollbars="no"'+(_ate.bro.ie6?" src=\"javascript:''\"":"")+' style="width:'+bx.width+"; height:"+bx.height+';"></iframe>';pinitButton=aR.firstChild;if(!aO.conf.pubid){aO.conf.pubid=addthis_config.pubid||_ate.pub()}pinitButton.src=_atr+"static/r07/pinit01.html?url="+_euc(bx.url)+"&media="+_euc(bx.media||"")+bx.layout+"&ats="+_euc(_ate.util.rtoKV(am))+"&atc="+_euc(_ate.util.rtoKV(addthis_config));aR.noh=aR.ost=1}else{if(bb==="foursquare"){if(aR.ost){continue}var by=h(aR,"4sq"),bd=Z.createElement("a");bd.href="https://foursquare.com/intent/venue.html";bd.className="fourSq-widget";if(by["data-variant"]){bd.setAttribute("data-variant",by["data-variant"])}aR.appendChild(bd);_ate.ajs("//platform.foursquare.com/js/widgets.js",1);aR.noh=aR.ost=1}else{if(bb==="linkedin_counter"){if(aR.ost){continue}var a6=h(aR,"li"),bw=aO.share,bt=a6.width||100,u=a6.height||18,ag,aq="",aX;if(!a6.counter){a6.counter="horizontal"}if(!bw.passthrough){bw.passthrough={}}bw.passthrough.linkedin=_ate.util.toKV(a6);aq=_ate.util.rtoKV(bw);if(a6.counter==="top"){u=55;bt=57;if(!a6.height){a6.height=u}if(!a6.width){a6.width=bt}}else{if(a6.counter==="right"){bt=100;if(!a6.width){a6.width=aE}}}if(a6.width){bt=a6.width}if(a6.height){u=a6.height}ag=_ate.util.toKV(a6),aR.innerHTML='<iframe frameborder="0" role="presentation" scrolling="no" allowTransparency="true" scrollbars="no"'+(_ate.bro.ie6?" src=\"javascript:''\"":"")+' style="width:'+bt+"px; height:"+u+'px;"></iframe>';aX=aR.firstChild;if(!aO.conf.pubid){aO.conf.pubid=addthis_config.pubid||_ate.pub()}aX.src=_atr+"static/r07/linkedin14.html"+((_ate.bro.ie6||_ate.bro.ie7)?"?":"#")+"href="+_euc(aO.share.url)+"&dr="+_euc(_ate.dr)+"&conf="+_euc(_ate.util.toKV(aO.conf))+"&share="+_euc(aq)+"&li="+_euc(ag);aR.noh=aR.ost=1}else{if(bb==="twitter_follow_native"){var bh=h(aR,"tf"),aH=h(aR,"tw"),aK=Z.ce("a");bh.screen_name=aH.screen_name||bh.screen_name||"addthis";aK.href="http://twitter.com/"+bh.screen_name;aK.className="twitter-follow-button";aK.innerHTML="Follow @"+bh.screen_name;for(var bg in bh){if(bh.hasOwnProperty(bg)){aK.setAttribute("data-"+bg,bh[bg])}}for(var bg in aH){if(aH.hasOwnProperty(bg)){aK.setAttribute("data-"+bg,aH[bg])}}aR.appendChild(aK);if(!aO.conf.pubid){aO.conf.pubid=addthis_config.pubid||_ate.pub()}v(aR)}else{if(bb==="tweet"){if(aR.ost){continue}var aH=h(aR,"tw"),bw=aO.share,aE=aH.width||55,aT=aH.height||20,ag,aq="",a5;aO.share.url_transforms=aO.share.url_transforms||{};aO.share.url_transforms.defrag=1;var bk=_ate.util.clone(aO.share),bo=((_ate.bro.msi&&Z.compatMode=="BackCompat")||aO.conf.ui_use_tweet_iframe||(aO.share.url_transforms.shorten||{}).twitter=="bitly")?true:false;if(typeof aH.url!="undefined"){bk.url=aH.url}else{bk.url=aH.url=_ate.track.mgu((bk.url||(addthis_share||{}).url),bk.url_transforms,bk,"twitter")}if(!aH.counturl){aH.counturl=(bo)?aH.url.replace(/=/g,"%253D"):aH.url}if(bk.url.search(/\.+.*(\/|\?)/)==-1){bk.url+="/"}aH.url=_ate.share.acb("twitter",bk,addthis_config);aH.count=aH.count||"horizontal";bw.passthrough=bw.passthrough||{};var a2=bw.passthrough.twitter||{};aO.text=aH.text=aH.text||((aO.share.title==Z.title)?a2.text:aO.share.title)||"";aO.related=aH.related=aH.related||a2.related||"";aO.via=aH.via=aH.via||a2.via||(aO.text.match(/via\s+@[a-zA-Z0-9_\.]+/)?aO.text.match(/via\s+@[a-zA-Z0-9_\.]+/).split("@")[1]:"AddThis");aq=_ate.util.rtoKV(bw,"#@!");if(aH.count==="vertical"){aT=62;aH.height=aH.height||aT}else{if(aH.count==="horizontal"){aE=110;aH.width=aH.width||aE}}if(aH.width){aE=aH.width}if(aH.height){aT=aH.height}ag=_ate.util.toKV(aH,"#@!");if(bo){aR.innerHTML='<iframe frameborder="0" role="presentation" scrolling="no" allowTransparency="true" scrollbars="no"'+(_ate.bro.ie6?" src=\"javascript:''\"":"")+' style="width:'+aE+"px; height:"+aT+'px;"></iframe>';a5=aR.firstChild;if(!aO.conf.pubid){aO.conf.pubid=addthis_config.pubid||_ate.pub()}a5.src=_atr+"static/r07/tweet14.html"+((_ate.bro.ie6||_ate.bro.ie7)?"?":"#")+"href="+_euc(aH.url)+"&dr="+_euc(_ate.dr)+"&conf="+_euc(_ate.util.toKV(aO.conf))+"&share="+_euc(aq)+"&tw="+_euc(ag)}else{var aG=(bw.templates||{}).twitter||"";if(!aH.text){aH.text=bw.title==""?"":bw.title+":"}var an=Z.ce("a");an.href="http://twitter.com/share";an.className="twitter-share-button";an.innerHTML="Tweet";for(var bg in aH){if(aH.hasOwnProperty(bg)){an.setAttribute("data-"+bg,aH[bg])}}aR.appendChild(an);if(!aO.conf.pubid){aO.conf.pubid=addthis_config.pubid||_ate.pub()}v(aR)}aR.noh=aR.ost=1}else{if(bb==="facebook_send"){if(aR.ost||_ate.bro.ie6){continue}var bn,ba=h(aR,"fb:send"),aF="",au=ba.width||55,az=ba.height||20;ag=_ate.util.toKV(ba);_ate.ufbl=1;if(_ate.share.fb.ready()){ba.href=ba.href||_ate.track.mgu(aO.share.url,{defrag:1});for(var aJ in ba){aF+=" "+aJ+'="'+ba[aJ]+'"'}aR.innerHTML='<fb:send ref="'+_ate.share.gcp(aO.share,aO.conf,".send").replace(",","_")+'" '+aF+"></fb:send>";_ate.share.fb.load(aR)}else{aR.className="";aR.innerHTML="<span></span>";aR.style.width=aR.style.height="0px"}aR.noh=aR.ost=1}else{if(bb==="facebook_share"){aO.conf=aO.conf||{};aO.conf.data_track_clickback=aO.conf.data_track_linkback=false;function aw(bA,bz){if(!bA){return}bA.setAttribute("style",bz);bA.style.cssText=bz;return}var aI="AT"+_ate.util.cuid(),ba=h(aR,"fb:share"),ay=Z.ce("span"),br=Z.ce("div"),w=Z.ce("div"),a1=Z.ce("div"),aN=Z.ce("div"),bu=Z.ce("div"),at=aO.share.url=ba.href||_ate.track.mgu(aO.share.url,{defrag:1}),d=typeof(d)!="undefined"?d:{};d[aI]=at.replace(/\#.*/,"");aw(ay,"text-decoration:none;color:#000000;display:inline-block;cursor:pointer;");aw(a1,"text-decoration:none;margin-top:10px;");aw(w,"display:block;z-index:-1;background:none repeat scroll 0 0 #ECEEF5; border:1px solid #CAD4E7; filter:none; border-radius: 4px; color:#000000; font-family:Verdana,Helvetica,sans-serif; font-size:18px; line-height:16px; height:39px; text-align:center; width:58px;");aw(aN,"display:block;margin:-1px 0 0px 10px;height:4px;width:10px;font-size:1px;line-height:4px;background:url('"+_atr+"static/t00/fb_arrow.png') no-repeat ;");aw(bu,"background-image:url('"+_atr+"static/t00/fb_btn.png');background-repeat:no-repeat; display:inline-block;font-family:Verdana,Helvetica,sans-serif; font-size:1px; height:22px; line-height:16px; white-space:nowrap; width:60px;");a1.innerHTML="0";a1.id=aI;aN.innerHTML="&nbsp;";aO.share.passthrough=aO.share.passthrough||{};aO.share.passthrough.facebook_share=_ate.util.toKV({src:"sp"});bu.onmouseover=function(){this.style.opacity="0.75"};bu.onmouseout=function(){this.style.opacity="1.0"};bu.onclick=function(){var bz=this.parentNode.firstChild.firstChild;if(bz&&isNaN(bz.innerHTML)!=true){var bA=parseInt(bz.innerHTML)+1;bz.removeChild(bz.firstChild);bz.appendChild(document.createTextNode(bA))}};w.appendChild(a1);br.appendChild(w);br.appendChild(aN);br.appendChild(bu);ay.appendChild(br);aR.appendChild(ay);aR.style.textDecoration="none";var aM=_ate.util.scb("fbsc",at,function(bB){if(bB.length>0){for(var bz in d){if(d[bz]==bB[0].url){var bC=bB[0].share_count,bA=document.getElementById(bz);if(bC>10000){bC=parseInt(bC/1000)+"K"}if(bA.firstChild){bA.removeChild(bA.firstChild)}bA.appendChild(document.createTextNode(bC))}}}},function(){});_ate.ajs("//api.facebook.com/restserver.php?method=links.getStats&format=json&callback="+aM+"&urls="+at,1)}else{if(bb==="facebook_like"){_ate.share.fb.like(aR,aO)}else{if(bb==="facebook_subscribe"){_ate.share.fb.subs(aR,aO)}else{if(bb.indexOf("stumbleupon_badge")>-1){if(_ate.bro.ie6){continue}var ap=h(aR,"su:badge"),af=ap.style||"1",a9=aO.share.url=ap.href||_ate.track.mgu(aO.share.url,{defrag:1}),bi=ap.height||"20px",aB=ap.width||"75px";if(af=="5"){bi=ap.height||"60px"}else{if(af=="6"){bi=ap.height||"31px"}}aR.innerHTML='<iframe src="http'+(_ate.ssl?"s":"")+'://www.stumbleupon.com/badge/embed/{{STYLE}}/?url={{URL}}" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:{{WIDTH}}; height:{{HEIGHT}};" allowtransparency="true"></iframe>'.replace("{{STYLE}}",af).replace("{{URL}}",_euc(a9)).replace("{{HEIGHT}}",bi).replace("{{WIDTH}}",aB);aR.noh=aR.ost=1}else{if(bb.indexOf("hyves_respect")>-1){var bm=h(aR,"hy:respect"),ak=aO.share.url=bm.url||_ate.track.mgu(aO.share.url,{defrag:1}),aZ=bm.width||"140px",aQ='<iframe src="http'+(_ate.ssl?"s":"")+'://www.hyves.nl/respect/button?url={{URL}}" style="border: medium none; overflow:hidden; width:{{WIDTH}}; height:22px;" scrolling="no" frameborder="0" allowTransparency="true" ></iframe>'.replace("{{URL}}",_ate.share.acb("hyves",aO.share,addthis_config)).replace("{{WIDTH}}",aZ);aR.innerHTML=aQ;aR.noh=aR.ost=1}else{if(bb.indexOf("preferred")>-1){if(aR._iss){continue}aD=aP.match(/addthis_button_preferred_([0-9]+)(?:\s|$)/);var ar=((aD&&aD.length)?Math.min(16,Math.max(1,parseInt(aD[1]))):1)-1;if(!aR.conf){aR.conf={}}aR.conf.product="tbx-"+_atc.ver;C(aR);if(window._atw){if(!aR.parentNode.services){aR.parentNode.services={}}var ao=_atw.conf.services_exclude||"",ax=_atw.loc,bl=aR.parentNode.services,bv=_ate.util.unqconcat(addthis_options.replace(",more","").split(","),ax.split(","));do{bb=bv[ar++]}while(ar<bv.length&&(ao.indexOf(bb)>-1||bl[bb])||(_ate.bro.ie9&&bb=="link"));if(bl[bb]){for(var aJ in _atw.list){if(!bl[aJ]&&ao.indexOf(aJ)==-1){bb=aJ;break}}}aR._ips=1;if(aR.className.indexOf(bb)==-1){aR.className+=" addthis_button_"+bb;aR._iss=1}aR.parentNode.services[bb]=1}else{_ate.alg(aO.conf.ui_language||window.addthis_language);_ate.plo.unshift(["deco",ad,[aR],a4,bw,true]);if(_ate.gssh){_ate.pld=_ate.ajs("static/r07/menu97.js")}else{if(!_ate.pld){_ate.pld=1;var aj=function(){_ate.pld=_ate.ajs("static/r07/menu97.js")};if(_ate.upm){_ate._rec.push(function(bz){if(bz.ssh){aj()}});setTimeout(aj,500)}else{aj()}}}continue}}else{if(bb.indexOf("follow")>-1){if(bb=="google_follow"){aR.title="Follow on Google"}else{bb=bb.split("_follow").shift()}aY.follow=true;aO.share.url=s(bb,aO.share.userid)}}}}}}}}}}}}}}}}}}if(_ate.bro.msi&&!document.getElementById("at300bhoveriefilter")){var av=document.getElementsByTagName("head")[0],aU=document.createElement("style"),al=document.createTextNode(".at300b:hover,.at300bs:hover {filter:alpha(opacity=80);}");aU.id="at300bhoveriefilter";aU.type="text/css";if(aU.styleSheet){aU.styleSheet.cssText=al.nodeValue}else{aU.appendChild(al)}av.appendChild(aU)}if(!ac[bb]&&(T||n(aR))){F.load()}if(!aR.childNodes.length){var bf=Z.ce("span");aR.appendChild(bf);bf.className=aS+"bs at15nc at15t_"+bb}else{if(aR.childNodes.length==1){var aA=aR.childNodes[0];if(aA.nodeType==3){var bf=Z.ce("span");aR.insertBefore(bf,aA);bf.className=aS+"bs at15nc at15t_"+bb}}else{if(aR.firstChild&&aR.firstChild.nodeType==3&&aR.firstChild.textContent=="\n"){}else{a3=1}}}if(bb==="compact"||bb==="expanded"){if(!a3&&aP.indexOf(aS)==-1){aR.className+=" "+aS+"m"}if(aO.conf.product&&aO.conf.product.indexOf("men-")==-1){aO.conf.product+=",men-"+_atc.ver}if(!aR.href){aR.href="#"}if(aR.parentNode&&aR.parentNode.services){aO.conf.parentServices=aR.parentNode.services}if(bb==="expanded"){aY.nohover=true;aY.singleservice="more"}}else{if((aR.parentNode.className||"").indexOf("toolbox")>-1){if(!aR.parentNode.services){aR.parentNode.services={}}aR.parentNode.services[bb]=1}if(!a3&&aP.indexOf(aS)==-1){aR.className+=" "+aS+"b"}aY.singleservice=bb}if(aR._ips){aY.issh=true}R([aR],aO,aY,bq);aR.ost=1;C(aR)}}}}function i(ak,d,ah,aj){if(ak=="facebook_unlike"||ak=="google_unplusone"){return}var w=ah.data_ga_tracker,af=ah.data_ga_property;if(af){if(typeof(window._gat)=="object"&&_gat._getTracker){w=_gat._getTracker(af)}else{if(typeof(window._gaq)=="object"&&_gaq._getAsyncTracker){w=_gaq._getAsyncTracker(af)}else{if(typeof(window._gaq)=="array"){_gaq.push([function(){_ate.gat(ak,d,ah,aj)}])}}}}if(w&&typeof(w)=="string"){w=window[w]}if(w&&typeof(w)=="object"){if(ak=="more"||ak=="settings"){return}var ai=d||(aj||{}).url||location.href,u=ak,ae="share";if(u.indexOf("_")>-1){u=u.split("_");ae=u.pop();if(ae.length<=2){ae="share"}u=u.shift()}if(ai.toLowerCase().replace("https","http").indexOf("http%3a%2f%2f")==0){ai=_duc(ai)}try{if(ah.data_ga_social&&w._trackSocial&&ak!="google_plusone"){w._trackSocial(u,ae,aj.url)}else{w._trackEvent("addthis",ak,ai)}}catch(ag){try{w._initData();if(ah.data_ga_social&&w._trackSocial&&ak!="google_plusone"){w._trackSocial(u,ae,aj.url)}else{w._trackEvent("addthis",ak,ai)}}catch(ag){}}}}_ate.gat=i;B.update=function(ah,af,w){if(ah=="share"){if(af=="url"){_ate.usu(0,1)}if(!window.addthis_share){window.addthis_share={}}window.addthis_share[af]=w;z[af]=w;for(var d in B.links){var ag=B.links[d],ae=new RegExp("&"+af+"=(.*)&"),u="&"+af+"="+_euc(w)+"&";if(ag.share){ag.share[af]=w}if(!ag.noh){ag.href=ag.href.replace(ae,u);if(ag.href.indexOf(af)==-1){ag.href+=u}}}for(var d in B.ems){var ag=B.ems[d];ag.href=_ate.share.genieu(addthis_share)}}else{if(ah=="config"){if(!window.addthis_config){window.addthis_config={}}window.addthis_config[af]=w;G[af]=w}}};B._render=R;var l=[new _ate.resource.Resource("countercss",_atr+"static/r07/counter76.css",function(){return true}),new _ate.resource.Resource("counter",_atr+"js/250/plugin.sharecounter.js",function(){return window.addthis.counter.ost})];if(!M.JSON||!M.JSON.stringify){l.unshift(new _ate.resource.Resource("json2",_atr+"static/r07/json2.js",function(){return M.JSON&&M.JSON.stringify}))}B.counter=function(ae,u,w){if(ae){ae=B._select(ae);if(ae.length){if(!B.counter.selects){B.counter.selects=[]}B.counter.selects=B.counter.selects.concat({counter:ae,config:u,share:w});for(var d in l){if((l[d]||{}).load){l[d].load()}}}}};B.count=function(ae,u,w){if(ae){ae=B._select(ae);if(ae.length){if(!B.count.selects){B.count.selects=[]}B.count.selects=B.count.selects.concat({counter:ae,config:u,share:w});for(var d in l){if((l[d]||{}).load){l[d].load()}}}}};B.data.getShareCount=function(w,u){if(!B.counter.reqs){B.counter.reqs=[]}B.counter.reqs.push({share:u,callback:w});for(var d in l){if((l[d]||{}).load){l[d].load()}}};if(document.compatMode=="BackCompat"&&_ate.bro.msi&&false){var o=[new _ate.resource.Resource("barcss",_atr+"bannerQuirks.css",function(){return true}),new _ate.resource.Resource("barjs",_atr+"static/r07/banner01.js",function(){return true})]}else{var o=[new _ate.resource.Resource("barcss",_atr+"static/r07/banner01.css",function(){return true}),new _ate.resource.Resource("barjs",_atr+"static/r07/banner01.js",function(){return true})]}B.bar=function(ai,w,ag,d){if(ai){ai=B._select(ai);if(ai.length){if(!B.bar.selects){B.bar.selects=[]}B.bar.selects=B.bar.selects.concat(ai);for(var ae=0;ae<ai.length;ae++){var af=ai[ae],ah="bar"+(af.className.indexOf("vertical")>-1?"vt":"hz")+"-"+_atc.ver;_ate.track.apc(ah)}for(var u in o){if((o[u]||{}).load){o[u].load()}}}}};var H=new _ate.resource.Resource("overlayjs",_atr+"static/r07/overlay02.js",function(){return true});B.overlay=function(ae,u,w,d){if(ae){ae=B._select(ae);if(ae.length){if(!B.overlay.selects){B.overlay.selects=[]}B.overlay.selects=B.overlay.selects.concat(ae);_ate.track.apc("ovr-"+_atc.ver);if((H||{}).load){H.load()}}}};B.button=function(w,d,u){d=d||{};if(!d.product){d.product="men-"+_atc.ver}R(w,{conf:d,share:u},{internal:"img"})};B.toolbox=function(ah,u,ai,aj){var ak=b(ah);for(var ae=0;ae<ak.length;ae++){var w=ak[ae],af=a(w,u,ai,aj),d=Z.ce("div"),ag;w.services={};if(!af.conf.product){af.conf.product="tbx"+(w.className.indexOf("32x32")>-1?"32":"")+"-"+_atc.ver}if(w){ag=w.getElementsByTagName("a");if(ag){ad(ag,af.conf,af.share,!aj,!aj)}w.appendChild(d)}d.className="atclear"}};function aa(d){if(!d||d.length<5||d.length>30){throw new Error("Service code must be between 5 and 30 characters.")}else{if(d.search(/^[a-zA-Z0-9_]+$/)==-1){throw new Error("Service code must consist entirely of letters, numbers and underscores.")}}return true}B.logShare=function(w,d,ag,u){var ah=u||addthis_config,af=ag||addthis_share;ah.product="hdl-"+_atc.ver;af.imp_url=0;var w=w||(ag&&ag.url)||addthis_share.url,ae=_ate.track.dcu(w);if(ae.rsc&&!d){d=ae.rsc}if(aa(d)){af.url=w;_ate.share.track(d,0,af,ah)}};B.addClickTag=function(w,d,ae,u){var w=w||ae&&ae.url||addthis_share.url;if(aa(d)){w=_ate.track.cur(_ate.track.cof(w),d)}return w};B.ready=function(){var d=B,u=".addthis_";if(d.ost){return}d.ost=1;B.toolbox(u+"toolbox",null,null,true);B.button(u+"button");B.counter(u+"counter");B.count(u+"count");B.bar(u+"bar");B.overlay(u+"shareable");ad(x,null,null,false);_ate.ed.fire("addthis.ready",B);if(_ate.onr){_ate.onr(B)}for(var w=0,af=d.plo,ae;w<af.length;w++){ae=af[w];(ae.ns?d[ae.ns]:d)[ae.call].apply(this,ae.args)}_ate.share.fb.sub();U();q();if(typeof addthis_config.data_track_disqus!=="undefined"){A()}};B.util.getAttributes=a;B.ad=_ate.ad;window.addthis=B;window.addthis.ready()}}));if(!window.addthis){window.addthis={}}addthis.user=(function(){var G=_ate,w=addthis,m=1000,q={},k=0,e=0,j=0,i={},o;addthis.HIGH=3;addthis.MED=2;addthis.LOW=1;addthis.ASC=1;addthis.DSC=addthis.DESC=0;function C(a,u){return G.reduce(["getID","getGeolocation","getServiceShareHistory"],a,u)}function r(a,u){return function(I){setTimeout(function(){I(G[a]||u)},0)}}function y(a){if(k){return}if(!a||!a.uid){return}if(o!==null){clearTimeout(o)}o=null;k=1;C(function(J,u,I){q[u]=q[u].queuer.flush(r.apply(w,J[I]),w);return J},[["uid",""],["geo",""],["_ssh",[]]])}function g(){if(!_ate.pld){_ate.pld=(new _ate.resource.Resource("menujs",_atr+"static/r07/menu97.js",function(){return true})).load()}}function d(a){if(e&&(a.uid||a.ssh!==undefined)){g();e=0}}function D(){var a={uid:"x",geo:{},ssh:"",ups:""};j=1;y(a);d(a)}o=setTimeout(D,m);G._rec.push(y);function f(I){var u={};for(var a=0;a<I.length;a++){u[I[a]]=I[a]}return u}function F(I,J){if(typeof(J)=="array"){J=f(J)}I=I.split(",");for(var u=0;u<I.length;u++){var a=I[u].replace(/ /g,"");if(J[a]){return 1}}return 0}function v(K,L,J){if(typeof(L)=="array"){return 0}K=K.split(",");for(var I=0;I<K.length;I++){var a=K[I].replace(/ /g,"");for(var u=0;u<J.length;J++){if(L[J[u]]==a){return 1}}}return 0}function h(a){return G.util.geo.isin(a,G.geo)}function n(a){return F(a,i.interests)}function p(a){if(!_ate.uud){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"rdy"})}_ate.uud=1;if(window._atw){_atw.gps(function(){if(c()){a(i);return}i.interests=[];for(var I in _ate.bti){i.interests.push(_ate.bti[I])}var L=[],u={};if(G._uss){for(var K=0;K<G._uss.length;K++){if(!u[G._uss[K]]){L.push({name:G._uss[K],score:addthis.HIGH})}}}if(G._ups){for(var K=0;K<G._ups.length;K++){if(!u[G._ups[K]]){L.push({name:G._ups[K],score:addthis.HIGH})}}}if(G._ssc){for(var J in G._ssc){if(!u[J]){L.push({name:J,score:G._ssc[J]})}}}i.services=L;i.activity={};i.activity.social=_ate.bts;i.activity.view=_ate.vts;i.source=x();if(_ate.geo&&typeof(_ate.geo)=="object"&&_ate.geo[0]&&_ate.geo[1]){var M="";for(var K in _ate.geo){if(typeof(_ate.geo[K])=="string"){M+=_ate.geo[K]}}_ate.geo=_ate.util.geo.parse(M)}for(var I in _ate.geo){if(!isNaN(parseInt(_ate.geo[I]))){_ate.geo[I]=parseInt(_ate.geo[I])}}s.location=i.location=_ate.geo||{};i.location.contains=h;if(a){a(i)}_ate.ed.fire("addthis.user.data",window.addthis||{},{})})}else{_ate.ed.addEventListener("addthis.menu.ready",function(){p(a)});_ate.alg();if(G.gssh||j){g()}else{if(!G.pld&&!e){_ate._rec.push(d)}}e=1}}function l(a){p(a)}q.getData=l;q.getPreferredServices=function(a){if(window._atw){_atw.gps(a)}else{_ate.ed.addEventListener("addthis.menu.ready",function(){_atw.gps(a)});_ate.alg();if(G.gssh||j){g()}else{if(!G.pld&&!e){_ate._rec.push(d)}}e=1}};function c(){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"ioo"});return G.uid=="0000000000000000"}function B(a){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"iuf"});return(G._ssh&&G._ssh.indexOf(a)>-1)||(G._ssc&&G._ssc[a])}function A(a){if(!a){a=[]}a._sortasc=function(u){a.sort(function(J,I){return a._isort(J,I,addthis.ASC,u)})};a._sortdsc=function(u){a.sort(function(J,I){return a._isort(J,I,addthis.DSC,u)})};a._isort=function(J,u,L,M){var K=J[M],I=u[M];if(typeof(K)=="string"&&!isNaN(parseInt(K))){K=parseInt(K,10);I=parseInt(I,10);if(L){return K-K}return K-I}if(K>I){return L?1:-1}else{if(K==I){return 0}}return L?-1:1};a.map=function(I){if(!I){I="name"}var J={};for(var u=0;u<a.length;u++){J[a[u][I]]=a[u]}return J};a.keys=function(J,I,K){if(!I){I="name"}if(!K){K="score"}var L=[];if(J==addthis.ASC){a._sortasc(K)}else{a._sortdsc(K)}for(var u=0;u<a.length;u++){L.push(typeof(a[u])=="object"?a[u].name:a[u])}return L};a.top=function(I,J){if(!J){J="score"}a._sortdsc(J);var K=[];for(var u=0;u<Math.min(I||1,a.length);u++){K.push(a[u].name)}return K};a.filter=function(K){var J=[];for(var I=0;I<a.length;I++){for(var u in K){if(typeof(K[u])!="function"){if(a[I][u]==K[u]){J.push(a[I])}}}}return A(J)};return a}function t(){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"gti"});return A(i.interests)}function b(){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"gts"});return A(i.services)}function x(){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"gtt"});return G.track.ts.get()}function H(){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"gtl"});return i.location}function z(J){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"isl"});var I=x();if(I.type=="social"){if(typeof(J)=="string"){J=J.split(",");var a={};for(var u=0;u<J.length;u++){a[J[u]]=1}if(!a[I.service]){return false}}return true}return false}function E(u){_ate.ed.fire("addthis-internal.api",window.addthis||{},{call:"ish"});var J=x();if(J.type=="search"){if(typeof(u)=="string"){u=u.split(",");var I={};for(var a=0;a<u.length;a++){I[u[a]]=1}if(J.terms&&J.terms.length){for(var a=0;a<J.terms.length;a++){if(!I[J.terms[a]]){return false}}}}return true}return false}var s={ready:p,isReturning:function(a){},isOptedOut:c,isUserOf:B,hasInterest:n,isLocatedIn:h,interests:t,services:b,location:H};addthis.session={source:x,isSocial:z,isSearch:E};_ate.extend(q,s);return C(function(u,a){u[a]=(new w._Queuer(a)).call;return u},q)})();
(function(){var uv=document.createElement('script');uv.type='text/javascript';uv.async=true;uv.src=('https:'==document.location.protocol?'https://':'http://')+'widget.uservoice.com/kJGcQHmM6pCRlslpeCACQ.js';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(uv,s);})();/* Unica Page Tagging Script v7.4.0
 * Copyright 2004-2006 Unica Corporation.  All rights reserved.
 * Visit http://www.unica.com for more information.
 */

var NTPT_IMGSRC = 'http://ws1.ems.eosdis.nasa.gov/images/ntpagetag.gif';

var NTPT_FLDS = new Object();
NTPT_FLDS.lc = true; // Document location
NTPT_FLDS.rf = true; // Document referrer
NTPT_FLDS.rs = true; // User's screen resolution
NTPT_FLDS.cd = true; // User's color depth
NTPT_FLDS.ln = true; // Browser language
NTPT_FLDS.tz = true; // User's timezone
NTPT_FLDS.jv = true; // Browser's Java support
NTPT_FLDS.ck = true; // Cookies

var NTPT_MAXTAGWAIT = 60// Max delay (secs) on link-tags and submit-tags

// Optional variables:
var NTPT_HTTPSIMGSRC = '';
var NTPT_GLBLEXTRA = '';
var NTPT_GLBLREFTOP = false;
var NTPT_GLBLCOOKIES = [ ];

/*** END OF USER-CONFIGURABLE VARIABLES ***/

function OOOO000(OO0O00,O0O0O,O000OOO,OO0O00O){var O00O0="";O00O0=OO0O00+"\x3d"+escape(O0O0O)+"\x3b";if(OO0O00O)O00O0+="\x20\x64\x6f\x6d\x61\x69\x6e\x3d"+OO0O00O+"\x3b";if(O000OOO>(0x1d65+435-0x1f18)){var OOO00O=new Date();OOO00O.setTime(OOO00O.getTime()+(O000OOO*(0x9a6+2102-0xdf4)));O00O0+="\x20\x65\x78\x70\x69\x72\x65\x73\x3d"+OOO00O.toGMTString()+"\x3b";}O00O0+="\x20\x70\x61\x74\x68\x3d\x2f";document.cookie=O00O0;};function OOOO00(OO0O00){var O0O0O0O=OO0O00+"\x3d";if(document.cookie.length>(0x162f+0-0x162f)){var OO0000;OO0000=document.cookie.indexOf(O0O0O0O);if(OO0000!=-(0x106+5772-0x1791)){var OOO000;OO0000+=O0O0O0O.length;OOO000=document.cookie.indexOf("\x3b",OO0000);if(OOO000==-(0x129c+4910-0x25c9))OOO000=document.cookie.length;return unescape(document.cookie.substring(OO0000,OOO000));}else{return null;};}};function O00000O(O0OO0){var OO000O="";for(OO00O in O0OO0){if((typeof(O0OO0[OO00O])=="\x73\x74\x72\x69\x6e\x67")&&(O0OO0[OO00O]!="")){if(OO000O!="")OO000O+="\x3b";OO000O+=OO00O+"\x3d"+O0OO0[OO00O];};}return OO000O;};var O00OOO=["\x41","\x42","\x43","\x44","\x45","\x46","\x47","\x48","\x49","\x4a","\x4b","\x4c","\x4d","\x4e","\x4f","\x50","\x51","\x52","\x53","\x54","\x55","\x56","\x57","\x58","\x59","\x5a","\x61","\x62","\x63","\x64","\x65","\x66","\x67","\x68","\x69","\x6a","\x6b","\x6c","\x6d","\x6e","\x6f","\x70","\x71","\x72","\x73","\x74","\x75","\x76","\x77","\x78","\x79","\x7a","\x30","\x31","\x32","\x33","\x34","\x35","\x36","\x37","\x38","\x39"];function OOOOOO0(O00000){if(O00000<(0x41+9084-0x237f)){return O00OOO[O00000];}else{return(OOOOOO0(Math.floor(O00000/(0x1163+644-0x13a9)))+O00OOO[O00000%(0x1c5c+1570-0x2240)]);}};function O0O000O(){var OO0OO0O="";var OOOOO00=new Date();for(OOO0O0O=(0x13b0+769-0x16b1);OOO0O0O<(0x26f+3070-0xe62);OOO0O0O++){OO0OO0O+=O00OOO[Math.round(Math.random()*(0xb62+1003-0xf10))];}return(OO0OO0O+"\x2d"+OOOOOO0(OOOOO00.getTime()));};function OO0OO(O0O0000,OOO0O00){return(eval("\x74\x79\x70\x65\x6f\x66\x20"+O0O0000+"\x20\x21\x3d\x20\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22")?eval(O0O0000):OOO0O00);};function OO0O000(O00OOO0,O0O000){return(O00OOO0+(((O00OOO0=='')||((O0O000=='')||(O0O000.substring((0x1dc9+2039-0x25c0),(0x1442+4474-0x25bb))=="\x26")))?'':"\x26")+O0O000);};function O000O00(){var O0O00O=new Date();return(O0O00O.getTime()+"\x2e"+Math.floor(Math.random()*(0xed9+1573-0x1116)));};function O00OO(OO0O00,OO0OO00){OOO00[OO0O00]=OO0OO00.toString();};function O0OO0O0(OO0O00){OOO00[OO0O00]='';};function OOO0000(O000O){var O0OO0O='',OO00O,O0O0O;OO00OO(OO0OO("\x4e\x54\x50\x54\x5f\x47\x4c\x42\x4c\x45\x58\x54\x52\x41",''));if(!LnkLck)OO00OO(OO0OO("\x4e\x54\x50\x54\x5f\x50\x47\x45\x58\x54\x52\x41",''));OO00OO(O000O);for(OO00O in OOO00){O0O0O=OOO00[OO00O];if(typeof(O0O0O)=="\x73\x74\x72\x69\x6e\x67"){if(O0O0O&&(O0O0O!=''))O0OO0O=OO0O000(O0OO0O,(OO00O+"\x3d"+(self.encodeURIComponent?encodeURIComponent(O0O0O):escape(O0O0O))));};}return O0OO0O;};function O000000(){var OO00O;OOOOO0.OOO00=new Array();for(OO00O in OOO00)OOOOO0.OOO00[OO00O]=OOO00[OO00O];};function OOO00OO(){var OO00O;OOO00=new Array();for(OO00O in OOOOO0.OOO00)OOO00[OO00O]=OOOOO0.OOO00[OO00O];};function OO0O0OO(O00O00,O0OOOO0,O000OO){if(OOOO0[O00O00]!=null){var O000O0=new Function(O0OOOO0);OOOO0[O00O00].onload=O000O0;OOOO0[O00O00].onerror=O000O0;OOOO0[O00O00].onabort=O000O0;}setTimeout(O0OOOO0,(O000OO*(0x5f3+3206-0xe91)));};function O0O00O0(O0OOOO,OO0O0O){if(O0OOOO=='')return;O0000=((O0000+(0x1312+1405-0x188e))%OOOO0.length);if(OOOO0[O0000]==null)OOOO0[O0000]=new Image((0x1005+4276-0x20b8),(0x1208+715-0x14d2));OOOO0[O0000].src=O0OOOO+"\x3f"+OO0O0O;};function OOOOO0O(O000O){var O0OOOO;var OO0O0O;if((O00O00O!='')&&(document.location.protocol=="\x68\x74\x74\x70\x73\x3a"))O0OOOO=O00O00O;else O0OOOO=O0000OO;OO0O0O=OOO0000(O000O);O0O00O0(O0OOOO,OO0O0O);OOO00OO();};function OO00OO(O000O){var OO00O0;var O00O0O;if(!O000O)return;O000O=O000O.toString();if(O000O=='')return;OO00O0=O000O.split("\x26");for(O00O0O=(0xdc+1230-0x5aa);O00O0O<OO00O0.length;O00O0O++){var OOO0O0=OO00O0[O00O0O].split("\x3d");if(OOO0O0.length==(0x83d+4370-0x194d))O00OO(OOO0O0[(0x1240+5137-0x2651)],(self.decodeURIComponent?decodeURIComponent(OOO0O0[(0xa7d+3816-0x1964)]):unescape(OOO0O0[(0xd8f+2979-0x1931)])));}};function O0O0OO(O000O){O00OO("\x65\x74\x73",O000O00());OOOOO0O(O000O);return true;};function O00OO0O(OOOOO,O000O,O000OO){var O0OOO;if(!OOOOO||!OOOOO.href)return true;if(LnkLck)return false;LnkLck=OOOOO;if(OO000.lc)O00OO("\x6c\x63",OOOOO.href);if(OO000.rf){if(!O0OO000||!top||!top.document)O00OO("\x72\x66",document.location);}O0O0OO(O000O);if(O000OO)O0OOO=O000OO;else O0OOO=NTPT_MAXTAGWAIT;if(O0OOO>(0x659+6874-0x2133)){var OOOOOO;if(OOOOO.click){OOOOO.tmpclck=OOOOO.onclick;OOOOO.onclick=null;OOOOOO="\x69\x66\x20\x28\x20\x4c\x6e\x6b\x4c\x63\x6b\x20\x29\x20\x7b\x20\x4c\x6e\x6b\x4c\x63\x6b\x2e\x63\x6c\x69\x63\x6b\x28\x29\x3b\x20\x4c\x6e\x6b\x4c\x63\x6b\x2e\x6f\x6e\x63\x6c\x69\x63\x6b\x20\x3d\x20\x4c\x6e\x6b\x4c\x63\x6b\x2e\x74\x6d\x70\x63\x6c\x63\x6b\x3b\x20\x4c\x6e\x6b\x4c\x63\x6b\x20\x3d\x20\x6e\x75\x6c\x6c\x3b\x20\x7d";}else OOOOOO="\x69\x66\x20\x28\x20\x4c\x6e\x6b\x4c\x63\x6b\x20\x29\x20\x7b\x20\x77\x69\x6e\x64\x6f\x77\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x68\x72\x65\x66\x20\x3d\x20\x22"+OOOOO.href+"\x22\x3b\x20\x4c\x6e\x6b\x4c\x63\x6b\x20\x3d\x20\x6e\x75\x6c\x6c\x3b\x20\x7d";OO0O0OO(O0000,OOOOOO,O0OOO);return false;}LnkLck=null;return true;};function O000OO0(OO0OOO,O000O,O000OO){var O0OOO;if(!OO0OOO||!OO0OOO.submit)return true;if(FrmLck)return false;FrmLck=OO0OOO;O0O0OO(O000O);if(O000OO)O0OOO=O000OO;else O0OOO=NTPT_MAXTAGWAIT;if(O0OOO>(0x1497+4406-0x25cd)){OO0OOO.tmpsbmt=OO0OOO.onsubmit;OO0OOO.onsubmit=null;OO0O0OO(O0000,"\x69\x66\x20\x28\x20\x46\x72\x6d\x4c\x63\x6b\x20\x29\x20\x7b\x20\x46\x72\x6d\x4c\x63\x6b\x2e\x73\x75\x62\x6d\x69\x74\x28\x29\x3b\x20\x46\x72\x6d\x4c\x63\x6b\x2e\x6f\x6e\x73\x75\x62\x6d\x69\x74\x20\x3d\x20\x46\x72\x6d\x4c\x63\x6b\x2e\x74\x6d\x70\x73\x62\x6d\x74\x3b\x20\x46\x72\x6d\x4c\x63\x6b\x20\x3d\x20\x6e\x75\x6c\x6c\x3b\x20\x7d",O0OOO);return false;}FrmLck=null;return true;};var O0000OO=NTPT_IMGSRC;var OO000=NTPT_FLDS;var O00OO0=OO0OO("\x4e\x54\x50\x54\x5f\x47\x4c\x42\x4c\x43\x4f\x4f\x4b\x49\x45\x53",null);var OOOO0O=OO0OO("\x4e\x54\x50\x54\x5f\x50\x47\x43\x4f\x4f\x4b\x49\x45\x53",null);var OOO00O0=OO0OO("\x4e\x54\x50\x54\x5f\x53\x45\x54\x5f\x49\x44\x43\x4f\x4f\x4b\x49\x45",false);var OO0OO0=OO0OO("\x4e\x54\x50\x54\x5f\x49\x44\x43\x4f\x4f\x4b\x49\x45\x5f\x4e\x41\x4d\x45","\x53\x61\x6e\x65\x49\x44");var OO00O00=OO0OO("\x4e\x54\x50\x54\x5f\x49\x44\x43\x4f\x4f\x4b\x49\x45\x5f\x44\x4f\x4d\x41\x49\x4e",null);var OO0OOOO=OO0OO("\x4e\x54\x50\x54\x5f\x49\x44\x43\x4f\x4f\x4b\x49\x45\x5f\x45\x58\x50\x49\x52\x45",155520000);var O00O00O=OO0OO("\x4e\x54\x50\x54\x5f\x48\x54\x54\x50\x53\x49\x4d\x47\x53\x52\x43",'');var O0OO000=OO0OO("\x4e\x54\x50\x54\x5f\x50\x47\x52\x45\x46\x54\x4f\x50",OO0OO("\x4e\x54\x50\x54\x5f\x47\x4c\x42\x4c\x52\x45\x46\x54\x4f\x50",false));var OO00000=OO0OO("\x4e\x54\x50\x54\x5f\x4e\x4f\x49\x4e\x49\x54\x49\x41\x4c\x54\x41\x47",false);var ntptAddPair=O00OO;var ntptDropPair=O0OO0O0;var ntptEventTag=O0O0OO;var ntptLinkTag=O00OO0O;var ntptSubmitTag=O000OO0;var OOO00=new Array();var OOOOO0=new Object();var OOOO0=Array((0x317+3540-0x10e1));var O0000;for(O0000=(0x1584+3590-0x238a);O0000<OOOO0.length;O0000++)OOOO0[O0000]=null;var LnkLck=null;var FrmLck=null;O00OO("\x6a\x73","\x31");O00OO("\x74\x73",O000O00());if(OO000.lc)O00OO("\x6c\x63",document.location);if(OO000.rf){var OOO0OO;if(O0OO000&&top&&top.document)OOO0OO=top.document.referrer;else OOO0OO=document.referrer;O00OO("\x72\x66",OOO0OO);}if(self.screen){if(OO000.rs)O00OO("\x72\x73",self.screen.width+"\x78"+self.screen.height);if(OO000.cd)O00OO("\x63\x64",self.screen.colorDepth);}if(OO000.ln){var OOO0O;if(navigator.language)OOO0O=navigator.language;else if(navigator.userLanguage)OOO0O=navigator.userLanguage;else OOO0O='';if(OOO0O.length>(0x462+2203-0xcfb))OOO0O=OOO0O.substring((0xe45+3555-0x1c28),(0x186+8395-0x224f));OOO0O=OOO0O.toLowerCase();O00OO("\x6c\x6e",OOO0O);}if(OO000.tz){var OO0O0;var O0O00O=new Date();var O0O00=O0O00O.getTimezoneOffset();var O0OO00;OO0O0="\x47\x4d\x54";if(O0O00!=(0x1214+4348-0x2310)){if(O0O00>(0x773+6772-0x21e7))OO0O0+="\x20\x2d";else OO0O0+="\x20\x2b";O0O00=Math.abs(O0O00);O0OO00=Math.floor(O0O00/(0x878+3391-0x157b));O0O00-=O0OO00*(0xc3b+4046-0x1bcd);if(O0OO00<(0x13e6+969-0x17a5))OO0O0+="\x30";OO0O0+=O0OO00+"\x3a";if(O0O00<(0xba1+208-0xc67))OO0O0+="\x30";OO0O0+=O0O00;}O00OO("\x74\x7a",OO0O0);}if(OO000.jv){var O0000O;if(navigator.javaEnabled())O0000O="\x31";else O0000O="\x30";O00OO("\x6a\x76",O0000O);}var O0OO0=new Array();var O00O0OO=false;if(OO000.ck){var O0O0O0;var O00O0,O0OOO0;if(O00OO0){for(O0O0O0=(0x87a+7306-0x2504);O0O0O0<O00OO0.length;O0O0O0++){O0OO0[O00OO0[O0O0O0]]="";};}if(OOOO0O){for(O0O0O0=(0x1b2a+931-0x1ecd);O0O0O0<OOOO0O.length;O0O0O0++){O0OO0[OOOO0O[O0O0O0]]="";};}for(OO00O in O0OO0){O00O0=OOOO00(OO00O);if(O00O0){O0OO0[OO00O]=O00O0;};}if(OOO00O0){O00O0=OOOO00(OO0OO0);if(O00O0){O0OO0[OO0OO0]=O00O0;O00O0OO=true;};}O0OOO0=O00000O(O0OO0);if(O0OOO0!="")O00OO("\x63\x6b",O0OOO0);}O000000();if(!OO00000)OOOOO0O('');if(OOO00O0&&!O00O0OO){var O00O0=OOOO00(OO0OO0);if(!O00O0){O00O0=O0O000O();OOOO000(OO0OO0,O00O0,OO0OOOO,OO00O00);if(OO000.ck&&OOOO00(OO0OO0)){O0OO0[OO0OO0]=O00O0;var O0OOO0=O00000O(O0OO0);if(O0OOO0!=""){O00OO("\x63\x6b",O0OOO0);O000000();};};};}
;
CIESIN.ol.init=function(){var ol=CIESIN.ol;var lyrs=SEDAC.layers;var extents_array=[[new OpenLayers.LonLat(-108.67429995028,57.368798445927),26270513.92566219],[new OpenLayers.LonLat(-96.330634261537,36.184399222882),10508205.57026488],[new OpenLayers.LonLat(-90.492414003353,21.4220422842),10508205.57026488],[new OpenLayers.LonLat(-60.217071806923,-2.7648702143263),10508205.57026488],[new OpenLayers.LonLat(-60.467281246584,-25.450526074942),10508205.57026488],[new OpenLayers.LonLat(12.427068835189,20.588010818837),10508205.57026488],[new OpenLayers.LonLat(23.352881032806,-9.6039282310453),10508205.57026488],[new OpenLayers.LonLat(15.679791550511,48.361258618938),10508205.57026488],[new OpenLayers.LonLat(64.303825987213,20.58801081899),10508205.57026488],[new OpenLayers.LonLat(125.35492925942,3.5737689235279),10508205.57026488],[new OpenLayers.LonLat(136.6143540428,-24.699897755766),10508205.57026488],[new OpenLayers.LonLat(129.02466770671,36.100996076811),10508205.57026488],[new OpenLayers.LonLat(89.991995122905,51.113562455283),26270513.92566219]];var make_map=function(map,sel_id){var fade_gist_client=$(document.createElement('div')).attr('class','fade-gist-client');var selected_lyr_array=[];if(map!==null){map.destroy();$('#gist-banner-map').empty().append(fade_gist_client);$('.swap').hide();$('#gist-banner-container .ol_printVisibleLayers').hide();fade_gist_client.show();}
setTimeout(function(){var selected_name=sel_id.substring(1,sel_id.length);var collection=ol.createSedacLayers(selected_name);var rndBaseLyr=collection[Math.floor(Math.random()*(collection.length))];var bounds=CIESIN.ol.createLayer(lyrs.cartographic.layers['national-boundaries'],{},{isBaseLayer:false});bounds.setOpacity(0.65);collection.push(bounds);gistUiOpts={layers:{enabled:true,visible:false}}
CIESIN.ol.map=ol.createMap('gist-banner-map',{layers:collection,gist_ui:gistUiOpts});CIESIN.ol.map.setBaseLayer(rndBaseLyr);CIESIN.ol.printVisibleLayers(CIESIN.ol.map,$('#gist-banner-container .ol_printVisibleLayers'));var extents_lottery=extents_array[Math.floor(Math.random()*(extents_array.length))];CIESIN.ol.map.setCenter(extents_lottery[0]);CIESIN.ol.map.zoomToScale(extents_lottery[1]);var slowly=1500;fade_gist_client.fadeOut(slowly);$('#gist-banner-container .ol_printVisibleLayers').fadeIn(slowly);$(sel_id).fadeIn(slowly);},50);}
var available_collections=$('#gist-banner-container > .gist-titlebar > ul > li');var rnd_collection=$(available_collections[Math.floor(Math.random()*(available_collections.length))]);rnd_collection.addClass('selected');var init_selected_id=rnd_collection.children('a').attr('href');make_map(null,init_selected_id);$('#gist-banner-container > .gist-titlebar > ul > li').click(function(){var anchor=$(this).children();if(!anchor.parent().hasClass('selected')){make_map(CIESIN.ol.map,anchor.attr('href'));$(this).toggleClass('selected');$(this).siblings().removeClass('selected');}
return false;});};
