/*!
 * jQuery JavaScript Library v1.5
 * http://jquery.com/
 *
 * Copyright 2011, John Resig
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * Includes Sizzle.js
 * http://sizzlejs.com/
 * Copyright 2011, The Dojo Foundation
 * Released under the MIT, BSD, and GPL Licenses.
 *
 * Date: Mon Jan 31 08:31:29 2011 -0500
 */
(function(a,b){function b$(a){return d.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function bX(a){if(!bR[a]){var b=d("<"+a+">").appendTo("body"),c=b.css("display");b.remove();if(c==="none"||c==="")c="block";bR[a]=c}return bR[a]}function bW(a,b){var c={};d.each(bV.concat.apply([],bV.slice(0,b)),function(){c[this]=a});return c}function bJ(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var e=a.dataTypes,f=a.converters,g,h=e.length,i,j=e[0],k,l,m,n,o;for(g=1;g<h;g++){k=j,j=e[g];if(j==="*")j=k;else if(k!=="*"&&k!==j){l=k+" "+j,m=f[l]||f["* "+j];if(!m){o=b;for(n in f){i=n.split(" ");if(i[0]===k||i[0]==="*"){o=f[i[1]+" "+j];if(o){n=f[n],n===!0?m=o:o===!0&&(m=n);break}}}}!m&&!o&&d.error("No conversion from "+l.replace(" "," to ")),m!==!0&&(c=m?m(c):o(n(c)))}}return c}function bI(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=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 bH(a,b,c,e){d.isArray(b)&&b.length?d.each(b,function(b,f){c||bp.test(a)?e(a,f):bH(a+"["+(typeof f==="object"||d.isArray(f)?b:"")+"]",f,c,e)}):c||b==null||typeof b!=="object"?e(a,b):d.isArray(b)||d.isEmptyObject(b)?e(a,""):d.each(b,function(b,d){bH(a+"["+b+"]",d,c,e)})}function bG(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===bD,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l==="string"&&(g[l]?l=b:(c.dataTypes.unshift(l),l=bG(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bG(a,c,d,e,"*",g));return l}function bF(a){return function(b,c){typeof b!=="string"&&(c=b,b="*");if(d.isFunction(c)){var e=b.toLowerCase().split(bz),f=0,g=e.length,h,i,j;for(;f<g;f++)h=e[f],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bn(a,b,c){var e=b==="width"?bh:bi,f=b==="width"?a.offsetWidth:a.offsetHeight;if(c==="border")return f;d.each(e,function(){c||(f-=parseFloat(d.css(a,"padding"+this))||0),c==="margin"?f+=parseFloat(d.css(a,"margin"+this))||0:f-=parseFloat(d.css(a,"border"+this+"Width"))||0});return f}function _(a,b){b.src?d.ajax({url:b.src,async:!1,dataType:"script"}):d.globalEval(b.text||b.textContent||b.innerHTML||""),b.parentNode&&b.parentNode.removeChild(b)}function $(a,b){if(b.nodeType===1){var c=b.nodeName.toLowerCase();b.clearAttributes(),b.mergeAttributes(a);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(d.expando)}}function Z(a,b){if(b.nodeType===1&&d.hasData(a)){var c=d.expando,e=d.data(a),f=d.data(b,e);if(e=e[c]){var g=e.events;f=f[c]=d.extend({},e);if(g){delete f.handle,f.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)d.event.add(b,h,g[h][i],g[h][i].data)}}}}function Y(a,b){return d.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function O(a,b,c){if(d.isFunction(b))return d.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return d.grep(a,function(a,d){return a===b===c});if(typeof b==="string"){var e=d.grep(a,function(a){return a.nodeType===1});if(J.test(b))return d.filter(b,e,!c);b=d.filter(b,e)}return d.grep(a,function(a,e){return d.inArray(a,b)>=0===c})}function N(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function F(a,b){return(a&&a!=="*"?a+".":"")+b.replace(q,"`").replace(r,"&")}function E(a){var b,c,e,f,g,h,i,j,k,l,m,n,p,q=[],r=[],s=d._data(this,u);typeof s==="function"&&(s=s.events);if(a.liveFired!==this&&s&&s.live&&!a.target.disabled&&(!a.button||a.type!=="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var t=s.live.slice(0);for(i=0;i<t.length;i++)g=t[i],g.origType.replace(o,"")===a.type?r.push(g.selector):t.splice(i--,1);f=d(a.target).closest(r,a.currentTarget);for(j=0,k=f.length;j<k;j++){m=f[j];for(i=0;i<t.length;i++){g=t[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))){h=m.elem,e=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,e=d(a.relatedTarget).closest(g.selector)[0];(!e||e!==h)&&q.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=q.length;j<k;j++){f=q[j];if(c&&f.level>c)break;a.currentTarget=f.elem,a.data=f.handleObj.data,a.handleObj=f.handleObj,p=f.handleObj.origHandler.apply(f.elem,arguments);if(p===!1||a.isPropagationStopped()){c=f.level,p===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function C(a,b,c){c[0].type=a;return d.event.handle.apply(b,c)}function w(){return!0}function v(){return!1}function f(a,c,f){if(f===b&&a.nodeType===1){f=a.getAttribute("data-"+c);if(typeof f==="string"){try{f=f==="true"?!0:f==="false"?!1:f==="null"?null:d.isNaN(f)?e.test(f)?d.parseJSON(f):f:parseFloat(f)}catch(g){}d.data(a,c,f)}else f=b}return f}var c=a.document,d=function(){function I(){if(!d.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(I,1);return}d.ready()}}var d=function(a,b){return new d.fn.init(a,b,g)},e=a.jQuery,f=a.$,g,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,i=/\S/,j=/^\s+/,k=/\s+$/,l=/\d/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=navigator.userAgent,w,x=!1,y,z="then done fail isResolved isRejected promise".split(" "),A,B=Object.prototype.toString,C=Object.prototype.hasOwnProperty,D=Array.prototype.push,E=Array.prototype.slice,F=String.prototype.trim,G=Array.prototype.indexOf,H={};d.fn=d.prototype={constructor:d,init:function(a,e,f){var g,i,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!e&&c.body){this.context=c,this[0]=c.body,this.selector="body",this.length=1;return this}if(typeof a==="string"){g=h.exec(a);if(!g||!g[1]&&e)return!e||e.jquery?(e||f).find(a):this.constructor(e).find(a);if(g[1]){e=e instanceof d?e[0]:e,k=e?e.ownerDocument||e:c,j=m.exec(a),j?d.isPlainObject(e)?(a=[c.createElement(j[1])],d.fn.attr.call(a,e,!0)):a=[k.createElement(j[1])]:(j=d.buildFragment([g[1]],[k]),a=(j.cacheable?d.clone(j.fragment):j.fragment).childNodes);return d.merge(this,a)}i=c.getElementById(g[2]);if(i&&i.parentNode){if(i.id!==g[2])return f.find(a);this.length=1,this[0]=i}this.context=c,this.selector=a;return this}if(d.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return d.makeArray(a,this)},selector:"",jquery:"1.5",length:0,size:function(){return this.length},toArray:function(){return E.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 e=this.constructor();d.isArray(a)?D.apply(e,a):d.merge(e,a),e.prevObject=this,e.context=this.context,b==="find"?e.selector=this.selector+(this.selector?" ":"")+c:b&&(e.selector=this.selector+"."+b+"("+c+")");return e},each:function(a,b){return d.each(this,a,b)},ready:function(a){d.bindReady(),y.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(E.apply(this,arguments),"slice",E.call(arguments).join(","))},map:function(a){return this.pushStack(d.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:D,sort:[].sort,splice:[].splice},d.fn.init.prototype=d.fn,d.extend=d.fn.extend=function(){var a,c,e,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"&&!d.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){e=i[c],f=a[c];if(i===f)continue;l&&f&&(d.isPlainObject(f)||(g=d.isArray(f)))?(g?(g=!1,h=e&&d.isArray(e)?e:[]):h=e&&d.isPlainObject(e)?e:{},i[c]=d.extend(l,h,f)):f!==b&&(i[c]=f)}return i},d.extend({noConflict:function(b){a.$=f,b&&(a.jQuery=e);return d},isReady:!1,readyWait:1,ready:function(a){a===!0&&d.readyWait--;if(!d.readyWait||a!==!0&&!d.isReady){if(!c.body)return setTimeout(d.ready,1);d.isReady=!0;if(a!==!0&&--d.readyWait>0)return;y.resolveWith(c,[d]),d.fn.trigger&&d(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!x){x=!0;if(c.readyState==="complete")return setTimeout(d.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",A,!1),a.addEventListener("load",d.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",A),a.attachEvent("onload",d.ready);var b=!1;try{b=a.frameElement==null}catch(e){}c.documentElement.doScroll&&b&&I()}}},isFunction:function(a){return d.type(a)==="function"},isArray:Array.isArray||function(a){return d.type(a)==="array"},isWindow:function(a){return a&&typeof a==="object"&&"setInterval"in a},isNaN:function(a){return a==null||!l.test(a)||isNaN(a)},type:function(a){return a==null?String(a):H[B.call(a)]||"object"},isPlainObject:function(a){if(!a||d.type(a)!=="object"||a.nodeType||d.isWindow(a))return!1;if(a.constructor&&!C.call(a,"constructor")&&!C.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a){}return c===b||C.call(a,c)},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=d.trim(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return a.JSON&&a.JSON.parse?a.JSON.parse(b):(new Function("return "+b))();d.error("Invalid JSON: "+b)},parseXML:function(b,c,e){a.DOMParser?(e=new DOMParser,c=e.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),e=c.documentElement,(!e||!e.nodeName||e.nodeName==="parsererror")&&d.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(a){if(a&&i.test(a)){var b=c.getElementsByTagName("head")[0]||c.documentElement,e=c.createElement("script");e.type="text/javascript",d.support.scriptEval()?e.appendChild(c.createTextNode(a)):e.text=a,b.insertBefore(e,b.firstChild),b.removeChild(e)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,e){var f,g=0,h=a.length,i=h===b||d.isFunction(a);if(e){if(i){for(f in a)if(c.apply(a[f],e)===!1)break}else for(;g<h;)if(c.apply(a[g++],e)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(var j=a[0];g<h&&c.call(j,g,j)!==!1;j=a[++g]){}return a},trim:F?function(a){return a==null?"":F.call(a)}:function(a){return a==null?"":(a+"").replace(j,"").replace(k,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var e=d.type(a);a.length==null||e==="string"||e==="function"||e==="regexp"||d.isWindow(a)?D.call(c,a):d.merge(c,a)}return c},inArray:function(a,b){if(b.indexOf)return b.indexOf(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,b,c){var d=[],e;for(var f=0,g=a.length;f<g;f++)e=b(a[f],f,c),e!=null&&(d[d.length]=e);return d.concat.apply([],d)},guid:1,proxy:function(a,c,e){arguments.length===2&&(typeof c==="string"?(e=a,a=e[c],c=b):c&&!d.isFunction(c)&&(e=c,c=b)),!c&&a&&(c=function(){return a.apply(e||this,arguments)}),a&&(c.guid=a.guid=a.guid||c.guid||d.guid++);return c},access:function(a,c,e,f,g,h){var i=a.length;if(typeof c==="object"){for(var j in c)d.access(a,j,c[j],f,g,e);return a}if(e!==b){f=!h&&f&&d.isFunction(e);for(var k=0;k<i;k++)g(a[k],c,f?e.call(a[k],k,g(a[k],c)):e,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},_Deferred:function(){var a=[],b,c,e,f={done:function(){if(!e){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=d.type(i),j==="array"?f.done.apply(f,i):j==="function"&&a.push(i);k&&f.resolveWith(k[0],k[1])}return this},resolveWith:function(d,f){if(!e&&!b&&!c){c=1;try{while(a[0])a.shift().apply(d,f)}finally{b=[d,f],c=0}}return this},resolve:function(){f.resolveWith(d.isFunction(this.promise)?this.promise():this,arguments);return this},isResolved:function(){return c||b},cancel:function(){e=1,a=[];return this}};return f},Deferred:function(a){var b=d._Deferred(),c=d._Deferred(),e;d.extend(b,{then:function(a,c){b.done(a).fail(c);return this},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,promise:function(a,c){if(a==null){if(e)return e;e=a={}}c=z.length;while(c--)a[z[c]]=b[z[c]];return a}}),b.then(c.cancel,b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){var b=arguments,c=b.length,e=c<=1&&a&&d.isFunction(a.promise)?a:d.Deferred(),f=e.promise(),g;c>1?(g=Array(c),d.each(b,function(a,b){d.when(b).then(function(b){g[a]=arguments.length>1?E.call(arguments,0):b,--c||e.resolveWith(f,g)},e.reject)})):e!==a&&e.resolve(a);return f},uaMatch:function(a){a=a.toLowerCase();var b=r.exec(a)||s.exec(a)||t.exec(a)||a.indexOf("compatible")<0&&u.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}d.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.subclass=this.subclass,a.fn.init=function b(b,c){c&&c instanceof d&&!(c instanceof a)&&(c=a(c));return d.fn.init.call(this,b,c,e)},a.fn.init.prototype=a.fn;var e=a(c);return a},browser:{}}),y=d._Deferred(),d.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){H["[object "+b+"]"]=b.toLowerCase()}),w=d.uaMatch(v),w.browser&&(d.browser[w.browser]=!0,d.browser.version=w.version),d.browser.webkit&&(d.browser.safari=!0),G&&(d.inArray=function(a,b){return G.call(b,a)}),i.test(" ")&&(j=/^[\s\xA0]+/,k=/[\s\xA0]+$/),g=d(c),c.addEventListener?A=function(){c.removeEventListener("DOMContentLoaded",A,!1),d.ready()}:c.attachEvent&&(A=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",A),d.ready())});return a.jQuery=a.$=d}();(function(){d.support={};var b=c.createElement("div");b.style.display="none",b.innerHTML="   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var e=b.getElementsByTagName("*"),f=b.getElementsByTagName("a")[0],g=c.createElement("select"),h=g.appendChild(c.createElement("option"));if(e&&e.length&&f){d.support={leadingWhitespace:b.firstChild.nodeType===3,tbody:!b.getElementsByTagName("tbody").length,htmlSerialize:!!b.getElementsByTagName("link").length,style:/red/.test(f.getAttribute("style")),hrefNormalized:f.getAttribute("href")==="/a",opacity:/^0.55$/.test(f.style.opacity),cssFloat:!!f.style.cssFloat,checkOn:b.getElementsByTagName("input")[0].value==="on",optSelected:h.selected,deleteExpando:!0,optDisabled:!1,checkClone:!1,_scriptEval:null,noCloneEvent:!0,boxModel:null,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableHiddenOffsets:!0},g.disabled=!0,d.support.optDisabled=!h.disabled,d.support.scriptEval=function(){if(d.support._scriptEval===null){var b=c.documentElement,e=c.createElement("script"),f="script"+d.now();e.type="text/javascript";try{e.appendChild(c.createTextNode("window."+f+"=1;"))}catch(g){}b.insertBefore(e,b.firstChild),a[f]?(d.support._scriptEval=!0,delete a[f]):d.support._scriptEval=!1,b.removeChild(e),b=e=f=null}return d.support._scriptEval};try{delete b.test}catch(i){d.support.deleteExpando=!1}b.attachEvent&&b.fireEvent&&(b.attachEvent("onclick",function j(){d.support.noCloneEvent=!1,b.detachEvent("onclick",j)}),b.cloneNode(!0).fireEvent("onclick")),b=c.createElement("div"),b.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";var k=c.createDocumentFragment();k.appendChild(b.firstChild),d.support.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,d(function(){var a=c.createElement("div"),b=c.getElementsByTagName("body")[0];if(b){a.style.width=a.style.paddingLeft="1px",b.appendChild(a),d.boxModel=d.support.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,d.support.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",d.support.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";var e=a.getElementsByTagName("td");d.support.reliableHiddenOffsets=e[0].offsetHeight===0,e[0].style.display="",e[1].style.display="none",d.support.reliableHiddenOffsets=d.support.reliableHiddenOffsets&&e[0].offsetHeight===0,a.innerHTML="",b.removeChild(a).style.display="none",a=e=null}});var l=function(a){var b=c.createElement("div");a="on"+a;if(!b.attachEvent)return!0;var d=a in b;d||(b.setAttribute(a,"return;"),d=typeof b[a]==="function"),b=null;return d};d.support.submitBubbles=l("submit"),d.support.changeBubbles=l("change"),b=e=f=null}})();var e=/^(?:\{.*\}|\[.*\])$/;d.extend({cache:{},uuid:0,expando:"jQuery"+(d.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?d.cache[a[d.expando]]:a[d.expando];return!!a&&!d.isEmptyObject(a)},data:function(a,c,e,f){if(d.acceptData(a)){var g=d.expando,h=typeof c==="string",i,j=a.nodeType,k=j?d.cache:a,l=j?a[d.expando]:a[d.expando]&&d.expando;if((!l||f&&l&&!k[l][g])&&h&&e===b)return;l||(j?a[d.expando]=l=++d.uuid:l=d.expando),k[l]||(k[l]={}),typeof c==="object"&&(f?k[l][g]=d.extend(k[l][g],c):k[l]=d.extend(k[l],c)),i=k[l],f&&(i[g]||(i[g]={}),i=i[g]),e!==b&&(i[c]=e);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[c]:i}},removeData:function(b,c,e){if(d.acceptData(b)){var f=d.expando,g=b.nodeType,h=g?d.cache:b,i=g?b[d.expando]:d.expando;if(!h[i])return;if(c){var j=e?h[i][f]:h[i];if(j){delete j[c];if(!d.isEmptyObject(j))return}}if(e){delete h[i][f];if(!d.isEmptyObject(h[i]))return}var k=h[i][f];d.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},h[i][f]=k):g&&(d.support.deleteExpando?delete b[d.expando]:b.removeAttribute?b.removeAttribute(d.expando):b[d.expando]=null)}},_data:function(a,b,c){return d.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=d.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),d.fn.extend({data:function(a,c){var e=null;if(typeof a==="undefined"){if(this.length){e=d.data(this[0]);if(this[0].nodeType===1){var g=this[0].attributes,h;for(var i=0,j=g.length;i<j;i++)h=g[i].name,h.indexOf("data-")===0&&(h=h.substr(5),f(this[0],h,e[h]))}}return e}if(typeof a==="object")return this.each(function(){d.data(this,a)});var k=a.split(".");k[1]=k[1]?"."+k[1]:"";if(c===b){e=this.triggerHandler("getData"+k[1]+"!",[k[0]]),e===b&&this.length&&(e=d.data(this[0],a),e=f(this[0],a,e));return e===b&&k[1]?this.data(k[0]):e}return this.each(function(){var b=d(this),e=[k[0],c];b.triggerHandler("setData"+k[1]+"!",e),d.data(this,a,c),b.triggerHandler("changeData"+k[1]+"!",e)})},removeData:function(a){return this.each(function(){d.removeData(this,a)})}}),d.extend({queue:function(a,b,c){if(a){b=(b||"fx")+"queue";var e=d._data(a,b);if(!c)return e||[];!e||d.isArray(c)?e=d._data(a,b,d.makeArray(c)):e.push(c);return e}},dequeue:function(a,b){b=b||"fx";var c=d.queue(a,b),e=c.shift();e==="inprogress"&&(e=c.shift()),e&&(b==="fx"&&c.unshift("inprogress"),e.call(a,function(){d.dequeue(a,b)})),c.length||d.removeData(a,b+"queue",!0)}}),d.fn.extend({queue:function(a,c){typeof a!=="string"&&(c=a,a="fx");if(c===b)return d.queue(this[0],a);return this.each(function(b){var e=d.queue(this,a,c);a==="fx"&&e[0]!=="inprogress"&&d.dequeue(this,a)})},dequeue:function(a){return this.each(function(){d.dequeue(this,a)})},delay:function(a,b){a=d.fx?d.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){d.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var g=/[\n\t\r]/g,h=/\s+/,i=/\r/g,j=/^(?:href|src|style)$/,k=/^(?:button|input)$/i,l=/^(?:button|input|object|select|textarea)$/i,m=/^a(?:rea)?$/i,n=/^(?:radio|checkbox)$/i;d.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"},d.fn.extend({attr:function(a,b){return d.access(this,a,b,!0,d.attr)},removeAttr:function(a,b){return this.each(function(){d.attr(this,a,""),this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(d.isFunction(a))return this.each(function(b){var c=d(this);c.addClass(a.call(this,b,c.attr("class")))});if(a&&typeof a==="string"){var b=(a||"").split(h);for(var c=0,e=this.length;c<e;c++){var f=this[c];if(f.nodeType===1)if(f.className){var g=" "+f.className+" ",i=f.className;for(var j=0,k=b.length;j<k;j++)g.indexOf(" "+b[j]+" ")<0&&(i+=" "+b[j]);f.className=d.trim(i)}else f.className=a}}return this},removeClass:function(a){if(d.isFunction(a))return this.each(function(b){var c=d(this);c.removeClass(a.call(this,b,c.attr("class")))});if(a&&typeof a==="string"||a===b){var c=(a||"").split(h);for(var e=0,f=this.length;e<f;e++){var i=this[e];if(i.nodeType===1&&i.className)if(a){var j=(" "+i.className+" ").replace(g," ");for(var k=0,l=c.length;k<l;k++)j=j.replace(" "+c[k]+" "," ");i.className=d.trim(j)}else i.className=""}}return this},toggleClass:function(a,b){var c=typeof a,e=typeof b==="boolean";if(d.isFunction(a))return this.each(function(c){var e=d(this);e.toggleClass(a.call(this,c,e.attr("class"),b),b)});return this.each(function(){if(c==="string"){var f,g=0,i=d(this),j=b,k=a.split(h);while(f=k[g++])j=e?j:!i.hasClass(f),i[j?"addClass":"removeClass"](f)}else if(c==="undefined"||c==="boolean")this.className&&d._data(this,"__className__",this.className),this.className=this.className||a===!1?"":d._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if((" "+this[c].className+" ").replace(g," ").indexOf(b)>-1)return!0;return!1},val:function(a){if(!arguments.length){var c=this[0];if(c){if(d.nodeName(c,"option")){var e=c.attributes.value;return!e||e.specified?c.value:c.text}if(d.nodeName(c,"select")){var f=c.selectedIndex,g=[],h=c.options,j=c.type==="select-one";if(f<0)return null;for(var k=j?f:0,l=j?f+1:h.length;k<l;k++){var m=h[k];if(m.selected&&(d.support.optDisabled?!m.disabled:m.getAttribute("disabled")===null)&&(!m.parentNode.disabled||!d.nodeName(m.parentNode,"optgroup"))){a=d(m).val();if(j)return a;g.push(a)}}return g}if(n.test(c.type)&&!d.support.checkOn)return c.getAttribute("value")===null?"on":c.value;return(c.value||"").replace(i,"")}return b}var o=d.isFunction(a);return this.each(function(b){var c=d(this),e=a;if(this.nodeType===1){o&&(e=a.call(this,b,c.val())),e==null?e="":typeof e==="number"?e+="":d.isArray(e)&&(e=d.map(e,function(a){return a==null?"":a+""}));if(d.isArray(e)&&n.test(this.type))this.checked=d.inArray(c.val(),e)>=0;else if(d.nodeName(this,"select")){var f=d.makeArray(e);d("option",this).each(function(){this.selected=d.inArray(d(this).val(),f)>=0}),f.length||(this.selectedIndex=-1)}else this.value=e}})}}),d.extend({attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,e,f){if(!a||a.nodeType===3||a.nodeType===8||a.nodeType===2)return b;if(f&&c in d.attrFn)return d(a)[c](e);var g=a.nodeType!==1||!d.isXMLDoc(a),h=e!==b;c=g&&d.props[c]||c;if(a.nodeType===1){var i=j.test(c);if(c==="selected"&&!d.support.optSelected){var n=a.parentNode;n&&(n.selectedIndex,n.parentNode&&n.parentNode.selectedIndex)}if((c in a||a[c]!==b)&&g&&!i){h&&(c==="type"&&k.test(a.nodeName)&&a.parentNode&&d.error("type property can't be changed"),e===null?a.nodeType===1&&a.removeAttribute(c):a[c]=e);if(d.nodeName(a,"form")&&a.getAttributeNode(c))return a.getAttributeNode(c).nodeValue;if(c==="tabIndex"){var o=a.getAttributeNode("tabIndex");return o&&o.specified?o.value:l.test(a.nodeName)||m.test(a.nodeName)&&a.href?0:b}return a[c]}if(!d.support.style&&g&&c==="style"){h&&(a.style.cssText=""+e);return a.style.cssText}h&&a.setAttribute(c,""+e);if(!a.attributes[c]&&(a.hasAttribute&&!a.hasAttribute(c)))return b;var p=!d.support.hrefNormalized&&g&&i?a.getAttribute(c,2):a.getAttribute(c);return p===null?b:p}h&&(a[c]=e);return a[c]}});var o=/\.(.*)$/,p=/^(?:textarea|input|select)$/i,q=/\./g,r=/ /g,s=/[^\w\s.|`]/g,t=function(a){return a.replace(s,"\\$&")},u="events";d.event={add:function(c,e,f,g){if(c.nodeType!==3&&c.nodeType!==8){d.isWindow(c)&&(c!==a&&!c.frameElement)&&(c=a);if(f===!1)f=v;else if(!f)return;var h,i;f.handler&&(h=f,f=h.handler),f.guid||(f.guid=d.guid++);var j=d._data(c);if(!j)return;var k=j[u],l=j.handle;typeof k==="function"?(l=k.handle,k=k.events):k||(c.nodeType||(j[u]=j=function(){}),j.events=k={}),l||(j.handle=l=function(){return typeof d!=="undefined"&&!d.event.triggered?d.event.handle.apply(l.elem,arguments):b}),l.elem=c,e=e.split(" ");var m,n=0,o;while(m=e[n++]){i=h?d.extend({},h):{handler:f,data:g},m.indexOf(".")>-1?(o=m.split("."),m=o.shift(),i.namespace=o.slice(0).sort().join(".")):(o=[],i.namespace=""),i.type=m,i.guid||(i.guid=f.guid);var p=k[m],q=d.event.special[m]||{};if(!p){p=k[m]=[];if(!q.setup||q.setup.call(c,g,o,l)===!1)c.addEventListener?c.addEventListener(m,l,!1):c.attachEvent&&c.attachEvent("on"+m,l)}q.add&&(q.add.call(c,i),i.handler.guid||(i.handler.guid=f.guid)),p.push(i),d.event.global[m]=!0}c=null}},global:{},remove:function(a,c,e,f){if(a.nodeType!==3&&a.nodeType!==8){e===!1&&(e=v);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=d.hasData(a)&&d._data(a),w=s&&s[u];if(!s||!w)return;typeof w==="function"&&(s=w,w=w.events),c&&c.type&&(e=c.handler,c=c.type);if(!c||typeof c==="string"&&c.charAt(0)==="."){c=c||"";for(h in w)d.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("(^|\\.)"+d.map(m.slice(0).sort(),t).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=w[h];if(!p)continue;if(!e){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))d.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=d.event.special[h]||{};for(j=f||0;j<p.length;j++){q=p[j];if(e.guid===q.guid){if(l||n.test(q.namespace))f==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(f!=null)break}}if(p.length===0||f!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&d.removeEvent(a,h,s.handle),g=null,delete w[h]}if(d.isEmptyObject(w)){var x=s.handle;x&&(x.elem=null),delete s.events,delete s.handle,typeof s==="function"?d.removeData(a,u,!0):d.isEmptyObject(s)&&d.removeData(a,b,!0)}}},trigger:function(a,c,e){var f=a.type||a,g=arguments[3];if(!g){a=typeof a==="object"?a[d.expando]?a:d.extend(d.Event(f),a):d.Event(f),f.indexOf("!")>=0&&(a.type=f=f.slice(0,-1),a.exclusive=!0),e||(a.stopPropagation(),d.event.global[f]&&d.each(d.cache,function(){var b=d.expando,e=this[b];e&&e.events&&e.events[f]&&d.event.trigger(a,c,e.handle.elem)}));if(!e||e.nodeType===3||e.nodeType===8)return b;a.result=b,a.target=e,c=d.makeArray(c),c.unshift(a)}a.currentTarget=e;var h=e.nodeType?d._data(e,"handle"):(d._data(e,u)||{}).handle;h&&h.apply(e,c);var i=e.parentNode||e.ownerDocument;try{e&&e.nodeName&&d.noData[e.nodeName.toLowerCase()]||e["on"+f]&&e["on"+f].apply(e,c)===!1&&(a.result=!1,a.preventDefault())}catch(j){}if(!a.isPropagationStopped()&&i)d.event.trigger(a,c,i,!0);else if(!a.isDefaultPrevented()){var k,l=a.target,m=f.replace(o,""),n=d.nodeName(l,"a")&&m==="click",p=d.event.special[m]||{};if((!p._default||p._default.call(e,a)===!1)&&!n&&!(l&&l.nodeName&&d.noData[l.nodeName.toLowerCase()])){try{l[m]&&(k=l["on"+m],k&&(l["on"+m]=null),d.event.triggered=!0,l[m]())}catch(q){}k&&(l["on"+m]=k),d.event.triggered=!1}}},handle:function(c){var e,f,g,h,i,j=[],k=d.makeArray(arguments);c=k[0]=d.event.fix(c||a.event),c.currentTarget=this,e=c.type.indexOf(".")<0&&!c.exclusive,e||(g=c.type.split("."),c.type=g.shift(),j=g.slice(0).sort(),h=new RegExp("(^|\\.)"+j.join("\\.(?:.*\\.)?")+"(\\.|$)")),c.namespace=c.namespace||j.join("."),i=d._data(this,u),typeof i==="function"&&(i=i.events),f=(i||{})[c.type];if(i&&f){f=f.slice(0);for(var l=0,m=f.length;l<m;l++){var n=f[l];if(e||h.test(n.namespace)){c.handler=n.handler,c.data=n.data,c.handleObj=n;var o=n.handler.apply(this,k);o!==b&&(c.result=o,o===!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[d.expando])return a;var e=a;a=d.Event(e);for(var f=this.props.length,g;f;)g=this.props[--f],a[g]=e[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=c.documentElement,i=c.body;a.pageX=a.clientX+(h&&h.scrollLeft||i&&i.scrollLeft||0)-(h&&h.clientLeft||i&&i.clientLeft||0),a.pageY=a.clientY+(h&&h.scrollTop||i&&i.scrollTop||0)-(h&&h.clientTop||i&&i.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:d.proxy,special:{ready:{setup:d.bindReady,teardown:d.noop},live:{add:function(a){d.event.add(this,F(a.origType,a.selector),d.extend({},a,{handler:E,guid:a.handler.guid}))},remove:function(a){d.event.remove(this,F(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){d.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},d.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)},d.Event=function(a){if(!this.preventDefault)return new d.Event(a);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?w:v):this.type=a,this.timeStamp=d.now(),this[d.expando]=!0},d.Event.prototype={preventDefault:function(){this.isDefaultPrevented=w;var a=this.originalEvent;a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=w;var a=this.originalEvent;a&&(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=w,this.stopPropagation()},isDefaultPrevented:v,isPropagationStopped:v,isImmediatePropagationStopped:v};var x=function(a){var b=a.relatedTarget;try{while(b&&b!==this)b=b.parentNode;b!==this&&(a.type=a.data,d.event.handle.apply(this,arguments))}catch(c){}},y=function(a){a.type=a.data,d.event.handle.apply(this,arguments)};d.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){d.event.special[a]={setup:function(c){d.event.add(this,b,c&&c.selector?y:x,a)},teardown:function(a){d.event.remove(this,b,a&&a.selector?y:x)}}}),d.support.submitBubbles||(d.event.special.submit={setup:function(a,c){if(this.nodeName&&this.nodeName.toLowerCase()!=="form")d.event.add(this,"click.specialSubmit",function(a){var c=a.target,e=c.type;if((e==="submit"||e==="image")&&d(c).closest("form").length){a.liveFired=b;return C("submit",this,arguments)}}),d.event.add(this,"keypress.specialSubmit",function(a){var c=a.target,e=c.type;if((e==="text"||e==="password")&&d(c).closest("form").length&&a.keyCode===13){a.liveFired=b;return C("submit",this,arguments)}});else return!1},teardown:function(a){d.event.remove(this,".specialSubmit")}});if(!d.support.changeBubbles){var z,A=function(a){var b=a.type,c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?d.map(a.options,function(a){return a.selected}).join("-"):"":a.nodeName.toLowerCase()==="select"&&(c=a.selectedIndex);return c},B=function B(a){var c=a.target,e,f;if(p.test(c.nodeName)&&!c.readOnly){e=d._data(c,"_change_data"),f=A(c),(a.type!=="focusout"||c.type!=="radio")&&d._data(c,"_change_data",f);if(e===b||f===e)return;if(e!=null||f){a.type="change",a.liveFired=b;return d.event.trigger(a,arguments[1],c)}}};d.event.special.change={filters:{focusout:B,beforedeactivate:B,click:function(a){var b=a.target,c=b.type;if(c==="radio"||c==="checkbox"||b.nodeName.toLowerCase()==="select")return B.call(this,a)},keydown:function(a){var b=a.target,c=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")return B.call(this,a)},beforeactivate:function(a){var b=a.target;d._data(b,"_change_data",A(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in z)d.event.add(this,c+".specialChange",z[c]);return p.test(this.nodeName)},teardown:function(a){d.event.remove(this,".specialChange");return p.test(this.nodeName)}},z=d.event.special.change.filters,z.focus=z.beforeactivate}c.addEventListener&&d.each({focus:"focusin",blur:"focusout"},function(a,b){function c(a){a=d.event.fix(a),a.type=b;return d.event.handle.call(this,a)}d.event.special[b]={setup:function(){this.addEventListener(a,c,!0)},teardown:function(){this.removeEventListener(a,c,!0)}}}),d.each(["bind","one"],function(a,c){d.fn[c]=function(a,e,f){if(typeof a==="object"){for(var g in a)this[c](g,e,a[g],f);return this}if(d.isFunction(e)||e===!1)f=e,e=b;var h=c==="one"?d.proxy(f,function(a){d(this).unbind(a,h);return f.apply(this,arguments)}):f;if(a==="unload"&&c!=="one")this.one(a,e,f);else for(var i=0,j=this.length;i<j;i++)d.event.add(this[i],a,h,e);return this}}),d.fn.extend({unbind:function(a,b){if(typeof a!=="object"||a.preventDefault)for(var e=0,f=this.length;e<f;e++)d.event.remove(this[e],a,b);else for(var c in a)this.unbind(c,a[c]);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(){d.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var c=d.Event(a);c.preventDefault(),c.stopPropagation(),d.event.trigger(c,b,this[0]);return c.result}},toggle:function(a){var b=arguments,c=1;while(c<b.length)d.proxy(a,b[c++]);return this.click(d.proxy(a,function(e){var f=(d._data(this,"lastToggle"+a.guid)||0)%c;d._data(this,"lastToggle"+a.guid,f+1),e.preventDefault();return b[f].apply(this,arguments)||!1}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var D={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};d.each(["live","die"],function(a,c){d.fn[c]=function(a,e,f,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:d(this.context);if(typeof a==="object"&&!a.preventDefault){for(var p in a)n[c](p,e,a[p],m);return this}d.isFunction(e)&&(f=e,e=b),a=(a||"").split(" ");while((h=a[i++])!=null){j=o.exec(h),k="",j&&(k=j[0],h=h.replace(o,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,h==="focus"||h==="blur"?(a.push(D[h]+k),h=h+k):h=(D[h]||h)+k;if(c==="live")for(var q=0,r=n.length;q<r;q++)d.event.add(n[q],"live."+F(h,m),{data:e,selector:m,handler:f,origType:h,origHandler:f,preType:l});else n.unbind("live."+F(h,m),f)}return this}}),d.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){d.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},d.attrFn&&(d.attrFn[b]=!0)}),function(){function s(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var j=d[g];if(j){var k=!1;j=j[a];while(j){if(j.sizcache===c){k=d[j.sizset];break}if(j.nodeType===1){f||(j.sizcache=c,j.sizset=g);if(typeof b!=="string"){if(j===b){k=!0;break}}else if(i.filter(b,[j]).length>0){k=j;break}}j=j[a]}d[g]=k}}}function r(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,e=0,f=Object.prototype.toString,g=!1,h=!0;[0,0].sort(function(){h=!1;return 0});var i=function(b,d,e,g){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!=="string")return e;var l,m,o,p,q,r,s,u,v=!0,w=i.isXML(d),x=[],y=b;do{a.exec(""),l=a.exec(y);if(l){y=l[3],x.push(l[1]);if(l[2]){p=l[3];break}}}while(l);if(x.length>1&&k.exec(b))if(x.length===2&&j.relative[x[0]])m=t(x[0]+x[1],d);else{m=j.relative[x[0]]?[d]:i(x.shift(),d);while(x.length)b=x.shift(),j.relative[b]&&(b+=x.shift()),m=t(b,m)}else{!g&&x.length>1&&d.nodeType===9&&!w&&j.match.ID.test(x[0])&&!j.match.ID.test(x[x.length-1])&&(q=i.find(x.shift(),d,w),d=q.expr?i.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:n(g)}:i.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),m=q.expr?i.filter(q.expr,q.set):q.set,x.length>0?o=n(m):v=!1;while(x.length)r=x.pop(),s=r,j.relative[r]?s=x.pop():r="",s==null&&(s=d),j.relative[r](o,s,w)}else o=x=[]}o||(o=m),o||i.error(r||b);if(f.call(o)==="[object Array]")if(v)if(d&&d.nodeType===1)for(u=0;o[u]!=null;u++)o[u]&&(o[u]===!0||o[u].nodeType===1&&i.contains(d,o[u]))&&e.push(m[u]);else for(u=0;o[u]!=null;u++)o[u]&&o[u].nodeType===1&&e.push(m[u]);else e.push.apply(e,o);else n(o,e);p&&(i(p,h,e,g),i.uniqueSort(e));return e};i.uniqueSort=function(a){if(p){g=h,a.sort(p);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},i.matches=function(a,b){return i(a,null,null,b)},i.matchesSelector=function(a,b){return i(b,null,null,[a]).length>0},i.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=j.order.length;e<f;e++){var g,h=j.order[e];if(g=j.leftMatch[h].exec(a)){var i=g[1];g.splice(1,1);if(i.substr(i.length-1)!=="\\"){g[1]=(g[1]||"").replace(/\\/g,""),d=j.find[h](g,b,c);if(d!=null){a=a.replace(j.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!=="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},i.filter=function(a,c,d,e){var f,g,h=a,k=[],l=c,m=c&&c[0]&&i.isXML(c[0]);while(a&&c.length){for(var n in j.filter)if((f=j.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=j.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;l===k&&(k=[]);if(j.preFilter[n]){f=j.preFilter[n](f,l,d,k,e,m);if(f){if(f===!0)continue}else g=o=!0}if(f)for(var s=0;(p=l[s])!=null;s++)if(p){o=q(p,f,s,l);var t=e^!!o;d&&o!=null?t?g=!0:l[s]=!1:t&&(k.push(p),g=!0)}if(o!==b){d||(l=k),a=a.replace(j.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)i.error(a);else break;h=a}return l},i.error=function(a){throw"Syntax error, unrecognized expression: "+a};var j=i.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")}},relative:{"+":function(a,b){var c=typeof b==="string",d=c&&!/\W/.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&&i.filter(b,a,!0)},">":function(a,b){var c,d=typeof b==="string",e=0,f=a.length;if(d&&!/\W/.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&&i.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=s;typeof b==="string"&&!/\W/.test(b)&&(b=b.toLowerCase(),d=b,g=r),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=s;typeof b==="string"&&!/\W/.test(b)&&(b=b.toLowerCase(),d=b,g=r),g("previousSibling",b,f,a,d,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(/\\/g,"")+" ";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(/\\/g,"")},TAG:function(a,b){return a[1].toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||i.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]&&i.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(/\\/g,"");!f&&j.attrMap[g]&&(a[1]=j.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(/\\/g,""),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]=i(b[3],null,null,c);else{var g=i.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(j.match.POS.test(b[0])||j.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.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!i(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){return"text"===a.type},radio:function(a){return"radio"===a.type},checkbox:function(a){return"checkbox"===a.type},file:function(a){return"file"===a.type},password:function(a){return"password"===a.type},submit:function(a){return"submit"===a.type},image:function(a){return"image"===a.type},reset:function(a){return"reset"===a.type},button:function(a){return"button"===a.type||a.nodeName.toLowerCase()==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)}},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=j.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||i.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,k=g.length;h<k;h++)if(g[h]===a)return!1;return!0}i.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=j.attrHandle[c]?j.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=j.setFilters[e];if(f)return f(a,c,b,d)}}},k=j.match.POS,l=function(a,b){return"\\"+(b-0+1)};for(var m in j.match)j.match[m]=new RegExp(j.match[m].source+/(?![^\[]*\])(?![^\(]*\))/.source),j.leftMatch[m]=new RegExp(/(^(?:.|\r|\n)*?)/.source+j.match[m].source.replace(/\\(\d+)/g,l));var n=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(o){n=function(a,b){var c=0,d=b||[];if(f.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length==="number")for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var p,q;c.documentElement.compareDocumentPosition?p=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}:(p=function(a,b){var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(a===b){g=!0;return 0}if(h===i)return q(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 q(e[k],f[k]);return k===c?q(a,f[k],-1):q(e[k],b,1)},q=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}),i.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+=i.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)&&(j.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:[]}},j.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&&(j.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")!=="#"&&(j.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=i,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){i=function(b,e,f,g){e=e||c;if(!g&&!i.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return n(e.getElementsByTagName(b),f);if(h[2]&&j.find.CLASS&&e.getElementsByClassName)return n(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return n([e.body],f);if(h&&h[3]){var k=e.getElementById(h[3]);if(!k||!k.parentNode)return n([],f);if(k.id===h[3])return n([k],f)}try{return n(e.querySelectorAll(b),f)}catch(l){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e.getAttribute("id"),o=m||d,p=e.parentNode,q=/^\s*[+~]/.test(b);m?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),q&&p&&(e=e.parentNode);try{if(!q||p)return n(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(r){}finally{m||e.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)i[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector,d=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(e){d=!0}b&&(i.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!i.isXML(a))try{if(d||!j.match.PSEUDO.test(c)&&!/!=/.test(c))return b.call(a,c)}catch(e){}return i(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;j.order.splice(1,0,"CLASS"),j.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!=="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?i.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?i.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:i.contains=function(){return!1},i.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var t=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=j.match.PSEUDO.exec(a))e+=c[0],a=a.replace(j.match.PSEUDO,"");a=j.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)i(a,f[g],d);return i.filter(e,d)};d.find=i,d.expr=i.selectors,d.expr[":"]=d.expr.filters,d.unique=i.uniqueSort,d.text=i.getText,d.isXMLDoc=i.isXML,d.contains=i.contains}();var G=/Until$/,H=/^(?:parents|prevUntil|prevAll)/,I=/,/,J=/^.[^:#\[\.,]*$/,K=Array.prototype.slice,L=d.expr.match.POS,M={children:!0,contents:!0,next:!0,prev:!0};d.fn.extend({find:function(a){var b=this.pushStack("","find",a),c=0;for(var e=0,f=this.length;e<f;e++){c=b.length,d.find(a,this[e],b);if(e>0)for(var g=c;g<b.length;g++)for(var h=0;h<c;h++)if(b[h]===b[g]){b.splice(g--,1);break}}return b},has:function(a){var b=d(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(d.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(O(this,a,!1),"not",a)},filter:function(a){return this.pushStack(O(this,a,!0),"filter",a)},is:function(a){return!!a&&d.filter(a,this).length>0},closest:function(a,b){var c=[],e,f,g=this[0];if(d.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(e=0,f=a.length;e<f;e++)i=a[e],j[i]||(j[i]=d.expr.match.POS.test(i)?d(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:d(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=L.test(a)?d(a,b||this.context):null;for(e=0,f=this.length;e<f;e++){g=this[e];while(g){if(l?l.index(g)>-1:d.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b)break}}c=c.length>1?d.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a==="string")return d.inArray(this[0],a?d(a):this.parent().children());return d.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a==="string"?d(a,b):d.makeArray(a),e=d.merge(this.get(),c);return this.pushStack(N(c[0])||N(e[0])?e:d.unique(e))},andSelf:function(){return this.add(this.prevObject)}}),d.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return d.dir(a,"parentNode")},parentsUntil:function(a,b,c){return d.dir(a,"parentNode",c)},next:function(a){return d.nth(a,2,"nextSibling")},prev:function(a){return d.nth(a,2,"previousSibling")},nextAll:function(a){return d.dir(a,"nextSibling")},prevAll:function(a){return d.dir(a,"previousSibling")},nextUntil:function(a,b,c){return d.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return d.dir(a,"previousSibling",c)},siblings:function(a){return d.sibling(a.parentNode.firstChild,a)},children:function(a){return d.sibling(a.firstChild)},contents:function(a){return d.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:d.makeArray(a.childNodes)}},function(a,b){d.fn[a]=function(c,e){var f=d.map(this,b,c),g=K.call(arguments);G.test(a)||(e=c),e&&typeof e==="string"&&(f=d.filter(e,f)),f=this.length>1&&!M[a]?d.unique(f):f,(this.length>1||I.test(e))&&H.test(a)&&(f=f.reverse());return this.pushStack(f,a,g.join(","))}}),d.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?d.find.matchesSelector(b[0],a)?[b[0]]:[]:d.find.matches(a,b)},dir:function(a,c,e){var f=[],g=a[c];while(g&&g.nodeType!==9&&(e===b||g.nodeType!==1||!d(g).is(e)))g.nodeType===1&&f.push(g),g=g[c];return f},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 P=/ jQuery\d+="(?:\d+|null)"/g,Q=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,S=/<([\w:]+)/,T=/<tbody/i,U=/<|&#?\w+;/,V=/<(?:script|object|embed|option|style)/i,W=/checked\s*(?:[^=]|=\s*.checked.)/i,X={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,"",""]};X.optgroup=X.option,X.tbody=X.tfoot=X.colgroup=X.caption=X.thead,X.th=X.td,d.support.htmlSerialize||(X._default=[1,"div<div>","</div>"]),d.fn.extend({text:function(a){if(d.isFunction(a))return this.each(function(b){var c=d(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 d.text(this)},wrapAll:function(a){if(d.isFunction(a))return this.each(function(b){d(this).wrapAll(a.call(this,b))});if(this[0]){var b=d(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(d.isFunction(a))return this.each(function(b){d(this).wrapInner(a.call(this,b))});return this.each(function(){var b=d(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){d(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){d.nodeName(this,"body")||d(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=d(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,d(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,e;(e=this[c])!=null;c++)if(!a||d.filter(a,[e]).length)!b&&e.nodeType===1&&(d.cleanData(e.getElementsByTagName("*")),d.cleanData([e])),e.parentNode&&e.parentNode.removeChild(e);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&d.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!0:a,b=b==null?a:b;return this.map(function(){return d.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(P,""):null;if(typeof a!=="string"||V.test(a)||!d.support.leadingWhitespace&&Q.test(a)||X[(S.exec(a)||["",""])[1].toLowerCase()])d.isFunction(a)?this.each(function(b){var c=d(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);else{a=a.replace(R,"<$1></$2>");try{for(var c=0,e=this.length;c<e;c++)this[c].nodeType===1&&(d.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(f){this.empty().append(a)}}return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(d.isFunction(a))return this.each(function(b){var c=d(this),e=c.html();c.replaceWith(a.call(this,b,e))});typeof a!=="string"&&(a=d(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;d(this).remove(),b?d(b).before(a):d(c).append(a)})}return this.pushStack(d(d.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,e){var f,g,h,i,j=a[0],k=[];if(!d.support.checkClone&&arguments.length===3&&typeof j==="string"&&W.test(j))return this.each(function(){d(this).domManip(a,c,e,!0)});if(d.isFunction(j))return this.each(function(f){var g=d(this);a[0]=j.call(this,f,c?g.html():b),g.domManip(a,c,e)});if(this[0]){i=j&&j.parentNode,d.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?f={fragment:i}:f=d.buildFragment(a,this,k),h=f.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&d.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)e.call(c?Y(this[l],g):this[l],f.cacheable||m>1&&l<n?d.clone(h,!0,!0):h)}k.length&&d.each(k,_)}return this}}),d.buildFragment=function(a,b,e){var f,g,h,i=b&&b[0]?b[0].ownerDocument||b[0]:c;a.length===1&&typeof a[0]==="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!V.test(a[0])&&(d.support.checkClone||!W.test(a[0]))&&(g=!0,h=d.fragments[a[0]],h&&(h!==1&&(f=h))),f||(f=i.createDocumentFragment(),d.clean(a,i,f,e)),g&&(d.fragments[a[0]]=h?f:1);return{fragment:f,cacheable:g}},d.fragments={},d.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){d.fn[a]=function(c){var e=[],f=d(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&f.length===1){f[b](this[0]);return this}for(var h=0,i=f.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();d(f[h])[b](j),e=e.concat(j)}return this.pushStack(e,a,f.selector)}}),d.extend({clone:function(a,b,c){var e=a.cloneNode(!0),f,g,h;if(!d.support.noCloneEvent&&(a.nodeType===1||a.nodeType===11)&&!d.isXMLDoc(a)){f=a.getElementsByTagName("*"),g=e.getElementsByTagName("*");for(h=0;f[h];++h)$(f[h],g[h]);$(a,e)}if(b){Z(a,e);if(c&&"getElementsByTagName"in a){f=a.getElementsByTagName("*"),g=e.getElementsByTagName("*");if(f.length)for(h=0;f[h];++h)Z(f[h],g[h])}}return e},clean:function(a,b,e,f){b=b||c,typeof b.createElement==="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var g=[];for(var h=0,i;(i=a[h])!=null;h++){typeof i==="number"&&(i+="");if(!i)continue;if(typeof i!=="string"||U.test(i)){if(typeof i==="string"){i=i.replace(R,"<$1></$2>");var j=(S.exec(i)||["",""])[1].toLowerCase(),k=X[j]||X._default,l=k[0],m=b.createElement("div");m.innerHTML=k[1]+i+k[2];while(l--)m=m.lastChild;if(!d.support.tbody){var n=T.test(i),o=j==="table"&&!n?m.firstChild&&m.firstChild.childNodes:k[1]==="<table>"&&!n?m.childNodes:[];for(var p=o.length-1;p>=0;--p)d.nodeName(o[p],"tbody")&&!o[p].childNodes.length&&o[p].parentNode.removeChild(o[p])}!d.support.leadingWhitespace&&Q.test(i)&&m.insertBefore(b.createTextNode(Q.exec(i)[0]),m.firstChild),i=m.childNodes}}else i=b.createTextNode(i);i.nodeType?g.push(i):g=d.merge(g,i)}if(e)for(h=0;g[h];h++)!f||!d.nodeName(g[h],"script")||g[h].type&&g[h].type.toLowerCase()!=="text/javascript"?(g[h].nodeType===1&&g.splice.apply(g,[h+1,0].concat(d.makeArray(g[h].getElementsByTagName("script")))),e.appendChild(g[h])):f.push(g[h].parentNode?g[h].parentNode.removeChild(g[h]):g[h]);return g},cleanData:function(a){var b,c,e=d.cache,f=d.expando,g=d.event.special,h=d.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&d.noData[j.nodeName.toLowerCase()])continue;c=j[d.expando];if(c){b=e[c]&&e[c][f];if(b&&b.events){for(var k in b.events)g[k]?d.event.remove(j,k):d.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[d.expando]:j.removeAttribute&&j.removeAttribute(d.expando),delete e[c]}}}});var ba=/alpha\([^)]*\)/i,bb=/opacity=([^)]*)/,bc=/-([a-z])/ig,bd=/([A-Z])/g,be=/^-?\d+(?:px)?$/i,bf=/^-?\d/,bg={position:"absolute",visibility:"hidden",display:"block"},bh=["Left","Right"],bi=["Top","Bottom"],bj,bk,bl,bm=function(a,b){return b.toUpperCase()};d.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return d.access(this,a,c,!0,function(a,c,e){return e!==b?d.style(a,c,e):d.css(a,c)})},d.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bj(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{zIndex:!0,fontWeight:!0,opacity:!0,zoom:!0,lineHeight:!0},cssProps:{"float":d.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,e,f){if(a&&a.nodeType!==3&&a.nodeType!==8&&a.style){var g,h=d.camelCase(c),i=a.style,j=d.cssHooks[h];c=d.cssProps[h]||h;if(e===b){if(j&&"get"in j&&(g=j.get(a,!1,f))!==b)return g;return i[c]}if(typeof e==="number"&&isNaN(e)||e==null)return;typeof e==="number"&&!d.cssNumber[h]&&(e+="px");if(!j||!("set"in j)||(e=j.set(a,e))!==b)try{i[c]=e}catch(k){}}},css:function(a,c,e){var f,g=d.camelCase(c),h=d.cssHooks[g];c=d.cssProps[g]||g;if(h&&"get"in h&&(f=h.get(a,!0,e))!==b)return f;if(bj)return bj(a,c,g)},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]},camelCase:function(a){return a.replace(bc,bm)}}),d.curCSS=d.css,d.each(["height","width"],function(a,b){d.cssHooks[b]={get:function(a,c,e){var f;if(c){a.offsetWidth!==0?f=bn(a,b,e):d.swap(a,bg,function(){f=bn(a,b,e)});if(f<=0){f=bj(a,b,b),f==="0px"&&bl&&(f=bl(a,b,b));if(f!=null)return f===""||f==="auto"?"0px":f}if(f<0||f==null){f=a.style[b];return f===""||f==="auto"?"0px":f}return typeof f==="string"?f:f+"px"}},set:function(a,b){if(!be.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),d.support.opacity||(d.cssHooks.opacity={get:function(a,b){return bb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style;c.zoom=1;var e=d.isNaN(b)?"":"alpha(opacity="+b*100+")",f=c.filter||"";c.filter=ba.test(f)?f.replace(ba,e):c.filter+" "+e}}),c.defaultView&&c.defaultView.getComputedStyle&&(bk=function(a,c,e){var f,g,h;e=e.replace(bd,"-$1").toLowerCase();if(!(g=a.ownerDocument.defaultView))return b;if(h=g.getComputedStyle(a,null))f=h.getPropertyValue(e),f===""&&!d.contains(a.ownerDocument.documentElement,a)&&(f=d.style(a,e));return f}),c.documentElement.currentStyle&&(bl=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!be.test(d)&&bf.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}),bj=bk||bl,d.expr&&d.expr.filters&&(d.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!d.support.reliableHiddenOffsets&&(a.style.display||d.css(a,"display"))==="none"},d.expr.filters.visible=function(a){return!d.expr.filters.hidden(a)});var bo=/%20/g,bp=/\[\]$/,bq=/\r?\n/g,br=/#.*$/,bs=/^(.*?):\s*(.*?)\r?$/mg,bt=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bu=/^(?:GET|HEAD)$/,bv=/^\/\//,bw=/\?/,bx=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,by=/^(?:select|textarea)/i,bz=/\s+/,bA=/([?&])_=[^&]*/,bB=/^(\w+:)\/\/([^\/?#:]+)(?::(\d+))?/,bC=d.fn.load,bD={},bE={};d.fn.extend({load:function(a,b,c){if(typeof a!=="string"&&bC)return bC.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}var g="GET";b&&(d.isFunction(b)?(c=b,b=null):typeof b==="object"&&(b=d.param(b,d.ajaxSettings.traditional),g="POST"));var h=this;d.ajax({url:a,type:g,dataType:"html",data:b,complete:function(a,b,e){e=a.responseText,a.isResolved()&&(a.done(function(a){e=a}),h.html(f?d("<div>").append(e.replace(bx,"")).find(f):e)),c&&h.each(c,[e,b,a])}});return this},serialize:function(){return d.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?d.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||by.test(this.nodeName)||bt.test(this.type))}).map(function(a,b){var c=d(this).val();return c==null?null:d.isArray(c)?d.map(c,function(a,c){return{name:b.name,value:a.replace(bq,"\r\n")}}):{name:b.name,value:c.replace(bq,"\r\n")}}).get()}}),d.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){d.fn[b]=function(a){return this.bind(b,a)}}),d.each(["get","post"],function(a,b){d[b]=function(a,c,e,f){d.isFunction(c)&&(f=f||e,e=c,c=null);return d.ajax({type:b,url:a,data:c,success:e,dataType:f})}}),d.extend({getScript:function(a,b){return d.get(a,null,b,"script")},getJSON:function(a,b,c){return d.get(a,b,c,"json")},ajaxSetup:function(a){d.extend(!0,d.ajaxSettings,a),a.context&&(d.ajaxSettings.context=a.context)},ajaxSettings:{url:location.href,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","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":d.parseJSON,"text xml":d.parseXML}},ajaxPrefilter:bF(bD),ajaxTransport:bF(bE),ajax:function(a,e){function w(a,c,e,l){if(t!==2){t=2,p&&clearTimeout(p),o=b,m=l||"",v.readyState=a?4:0;var n,q,r,s=e?bI(f,v,e):b,u,w;if(a>=200&&a<300||a===304){if(f.ifModified){if(u=v.getResponseHeader("Last-Modified"))d.lastModified[f.url]=u;if(w=v.getResponseHeader("Etag"))d.etag[f.url]=w}if(a===304)c="notmodified",n=!0;else try{q=bJ(f,s),c="success",n=!0}catch(x){c="parsererror",r=x}}else r=c,a&&(c="error",a<0&&(a=0));v.status=a,v.statusText=c,n?i.resolveWith(g,[q,c,v]):i.rejectWith(g,[v,c,r]),v.statusCode(k),k=b,f.global&&h.trigger("ajax"+(n?"Success":"Error"),[v,f,n?q:r]),j.resolveWith(g,[v,c]),f.global&&(h.trigger("ajaxComplete",[v,f]),--d.active||d.event.trigger("ajaxStop"))}}typeof e!=="object"&&(e=a,a=b),e=e||{};var f=d.extend(!0,{},d.ajaxSettings,e),g=(f.context=("context"in e?e:d.ajaxSettings).context)||f,h=g===f?d.event:d(g),i=d.Deferred(),j=d._Deferred(),k=f.statusCode||{},l={},m,n,o,p,q=c.location,r=q.protocol||"http:",s,t=0,u,v={readyState:0,setRequestHeader:function(a,b){t===0&&(l[a.toLowerCase()]=b);return this},getAllResponseHeaders:function(){return t===2?m:null},getResponseHeader:function(a){var b;if(t===2){if(!n){n={};while(b=bs.exec(m))n[b[1].toLowerCase()]=b[2]}b=n[a.toLowerCase()]}return b||null},abort:function(a){a=a||"abort",o&&o.abort(a),w(0,a);return this}};i.promise(v),v.success=v.done,v.error=v.fail,v.complete=j.done,v.statusCode=function(a){if(a){var b;if(t<2)for(b in a)k[b]=[k[b],a[b]];else b=a[v.status],v.then(b,b)}return this},f.url=(""+(a||f.url)).replace(br,"").replace(bv,r+"//"),f.dataTypes=d.trim(f.dataType||"*").toLowerCase().split(bz),f.crossDomain||(s=bB.exec(f.url.toLowerCase()),f.crossDomain=s&&(s[1]!=r||s[2]!=q.hostname||(s[3]||(s[1]==="http:"?80:443))!=(q.port||(r==="http:"?80:443)))),f.data&&f.processData&&typeof f.data!=="string"&&(f.data=d.param(f.data,f.traditional)),bG(bD,f,e,v),f.type=f.type.toUpperCase(),f.hasContent=!bu.test(f.type),f.global&&d.active++===0&&d.event.trigger("ajaxStart");if(!f.hasContent){f.data&&(f.url+=(bw.test(f.url)?"&":"?")+f.data);if(f.cache===!1){var x=d.now(),y=f.url.replace(bA,"$1_="+x);f.url=y+(y===f.url?(bw.test(f.url)?"&":"?")+"_="+x:"")}}if(f.data&&f.hasContent&&f.contentType!==!1||e.contentType)l["content-type"]=f.contentType;f.ifModified&&(d.lastModified[f.url]&&(l["if-modified-since"]=d.lastModified[f.url]),d.etag[f.url]&&(l["if-none-match"]=d.etag[f.url])),l.accept=f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+(f.dataTypes[0]!=="*"?", */*; q=0.01":""):f.accepts["*"];for(u in f.headers)l[u.toLowerCase()]=f.headers[u];if(!f.beforeSend||f.beforeSend.call(g,v,f)!==!1&&t!==2){for(u in {success:1,error:1,complete:1})v[u](f[u]);o=bG(bE,f,e,v);if(o){t=v.readyState=1,f.global&&h.trigger("ajaxSend",[v,f]),f.async&&f.timeout>0&&(p=setTimeout(function(){v.abort("timeout")},f.timeout));try{o.send(l,w)}catch(z){status<2?w(-1,z):d.error(z)}}else w(-1,"No Transport")}else w(0,"abort"),v=!1;return v},param:function(a,c){var e=[],f=function(a,b){b=d.isFunction(b)?b():b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=d.ajaxSettings.traditional);if(d.isArray(a)||a.jquery)d.each(a,function(){f(this.name,this.value)});else for(var g in a)bH(g,a[g],c,f);return e.join("&").replace(bo,"+")}}),d.extend({active:0,lastModified:{},etag:{}});var bK=d.now(),bL=/(\=)\?(&|$)|()\?\?()/i;d.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return d.expando+"_"+bK++}}),d.ajaxPrefilter("json jsonp",function(b,c,e){e=typeof b.data==="string";if(b.dataTypes[0]==="jsonp"||c.jsonpCallback||c.jsonp!=null||b.jsonp!==!1&&(bL.test(b.url)||e&&bL.test(b.data))){var f,g=b.jsonpCallback=d.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h=a[g],i=b.url,j=b.data,k="$1"+g+"$2";b.jsonp!==!1&&(i=i.replace(bL,k),b.url===i&&(e&&(j=j.replace(bL,k)),b.data===j&&(i+=(/\?/.test(i)?"&":"?")+b.jsonp+"="+g))),b.url=i,b.data=j,a[g]=function(a){f=[a]},b.complete=[function(){a[g]=h;if(h)f&&d.isFunction(h)&&a[g](f[0]);else try{delete a[g]}catch(b){}},b.complete],b.converters["script json"]=function(){f||d.error(g+" was not called");return f[0]},b.dataTypes[0]="json";return"script"}}),d.ajaxSetup({accepts:{script:"text/javascript, application/javascript"},contents:{script:/javascript/},converters:{"text script":function(a){d.globalEval(a);return a}}}),d.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),d.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=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(!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 bM=d.now(),bN={},bO,bP;d.ajaxSettings.xhr=a.ActiveXObject?function(){if(a.location.protocol!=="file:")try{return new a.XMLHttpRequest}catch(b){}try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(c){}}:function(){return new a.XMLHttpRequest};try{bP=d.ajaxSettings.xhr()}catch(bQ){}d.support.ajax=!!bP,d.support.cors=bP&&"withCredentials"in bP,bP=b,d.support.ajax&&d.ajaxTransport(function(b){if(!b.crossDomain||d.support.cors){var c;return{send:function(e,f){bO||(bO=1,d(a).bind("unload",function(){d.each(bN,function(a,b){b.onreadystatechange&&b.onreadystatechange(1)})}));var g=b.xhr(),h;b.username?g.open(b.type,b.url,b.async,b.username,b.password):g.open(b.type,b.url,b.async),(!b.crossDomain||b.hasContent)&&!e["x-requested-with"]&&(e["x-requested-with"]="XMLHttpRequest");try{d.each(e,function(a,b){g.setRequestHeader(a,b)})}catch(i){}g.send(b.hasContent&&b.data||null),c=function(a,e){if(c&&(e||g.readyState===4)){c=0,h&&(g.onreadystatechange=d.noop,delete bN[h]);if(e)g.readyState!==4&&g.abort();else{var i=g.status,j,k=g.getAllResponseHeaders(),l={},m=g.responseXML;m&&m.documentElement&&(l.xml=m),l.text=g.responseText;try{j=g.statusText}catch(n){j=""}i=i===0?!b.crossDomain||j?k?304:0:302:i==1223?204:i,f(i,j,l,k)}}},b.async&&g.readyState!==4?(h=bM++,bN[h]=g,g.onreadystatechange=c):c()},abort:function(){c&&c(0,1)}}}});var bR={},bS=/^(?:toggle|show|hide)$/,bT=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,bU,bV=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];d.fn.extend({show:function(a,b,c){var e,f;if(a||a===0)return this.animate(bW("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)e=this[g],f=e.style.display,!d._data(e,"olddisplay")&&f==="none"&&(f=e.style.display=""),f===""&&d.css(e,"display")==="none"&&d._data(e,"olddisplay",bX(e.nodeName));for(g=0;g<h;g++){e=this[g],f=e.style.display;if(f===""||f==="none")e.style.display=d._data(e,"olddisplay")||""}return this},hide:function(a,b,c){if(a||a===0)return this.animate(bW("hide",3),a,b,c);for(var e=0,f=this.length;e<f;e++){var g=d.css(this[e],"display");g!=="none"&&!d._data(this[e],"olddisplay")&&d._data(this[e],"olddisplay",g)}for(e=0;e<f;e++)this[e].style.display="none";return this},_toggle:d.fn.toggle,toggle:function(a,b,c){var e=typeof a==="boolean";d.isFunction(a)&&d.isFunction(b)?this._toggle.apply(this,arguments):a==null||e?this.each(function(){var b=e?a:d(this).is(":hidden");d(this)[b?"show":"hide"]()}):this.animate(bW("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,e){var f=d.speed(b,c,e);if(d.isEmptyObject(a))return this.each(f.complete);return this[f.queue===!1?"each":"queue"](function(){var b=d.extend({},f),c,e=this.nodeType===1,g=e&&d(this).is(":hidden"),h=this;for(c in a){var i=d.camelCase(c);c!==i&&(a[i]=a[c],delete a[c],c=i);if(a[c]==="hide"&&g||a[c]==="show"&&!g)return b.complete.call(this);if(e&&(c==="height"||c==="width")){b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(d.css(this,"display")==="inline"&&d.css(this,"float")==="none")if(d.support.inlineBlockNeedsLayout){var j=bX(this.nodeName);j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)}else this.style.display="inline-block"}d.isArray(a[c])&&((b.specialEasing=b.specialEasing||{})[c]=a[c][1],a[c]=a[c][0])}b.overflow!=null&&(this.style.overflow="hidden"),b.curAnim=d.extend({},a),d.each(a,function(c,e){var f=new d.fx(h,b,c);if(bS.test(e))f[e==="toggle"?g?"show":"hide":e](a);else{var i=bT.exec(e),j=f.cur()||0;if(i){var k=parseFloat(i[2]),l=i[3]||"px";l!=="px"&&(d.style(h,c,(k||1)+l),j=(k||1)/f.cur()*j,d.style(h,c,j+l)),i[1]&&(k=(i[1]==="-="?-1:1)*k+j),f.custom(j,k,l)}else f.custom(j,e,"")}});return!0})},stop:function(a,b){var c=d.timers;a&&this.queue([]),this.each(function(){for(var a=c.length-1;a>=0;a--)c[a].elem===this&&(b&&c[a](!0),c.splice(a,1))}),b||this.dequeue();return this}}),d.each({slideDown:bW("show",1),slideUp:bW("hide",1),slideToggle:bW("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){d.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),d.extend({speed:function(a,b,c){var e=a&&typeof a==="object"?d.extend({},a):{complete:c||!c&&b||d.isFunction(a)&&a,duration:a,easing:c&&b||b&&!d.isFunction(b)&&b};e.duration=d.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in d.fx.speeds?d.fx.speeds[e.duration]:d.fx.speeds._default,e.old=e.complete,e.complete=function(){e.queue!==!1&&d(this).dequeue(),d.isFunction(e.old)&&e.old.call(this)};return e},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={})}}),d.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(d.fx.step[this.prop]||d.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=parseFloat(d.css(this.elem,this.prop));return a||0},custom:function(a,b,c){function g(a){return e.step(a)}var e=this,f=d.fx;this.startTime=d.now(),this.start=a,this.end=b,this.unit=c||this.unit||"px",this.now=this.start,this.pos=this.state=0,g.elem=this.elem,g()&&d.timers.push(g)&&!bU&&(bU=setInterval(f.tick,f.interval))},show:function(){this.options.orig[this.prop]=d.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),d(this.elem).show()},hide:function(){this.options.orig[this.prop]=d.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=d.now(),c=!0;if(a||b>=this.options.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),this.options.curAnim[this.prop]=!0;for(var e in this.options.curAnim)this.options.curAnim[e]!==!0&&(c=!1);if(c){if(this.options.overflow!=null&&!d.support.shrinkWrapBlocks){var f=this.elem,g=this.options;d.each(["","X","Y"],function(a,b){f.style["overflow"+b]=g.overflow[a]})}this.options.hide&&d(this.elem).hide();if(this.options.hide||this.options.show)for(var h in this.options.curAnim)d.style(this.elem,h,this.options.orig[h]);this.options.complete.call(this.elem)}return!1}var i=b-this.startTime;this.state=i/this.options.duration;var j=this.options.specialEasing&&this.options.specialEasing[this.prop],k=this.options.easing||(d.easing.swing?"swing":"linear");this.pos=d.easing[j||k](this.state,i,0,1,this.options.duration),this.now=this.start+(this.end-this.start)*this.pos,this.update();return!0}},d.extend(d.fx,{tick:function(){var a=d.timers;for(var b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||d.fx.stop()},interval:13,stop:function(){clearInterval(bU),bU=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){d.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}}}),d.expr&&d.expr.filters&&(d.expr.filters.animated=function(a){return d.grep(d.timers,function(b){return a===b.elem}).length});var bY=/^t(?:able|d|h)$/i,bZ=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?d.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){d.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return d.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,g=f.documentElement;if(!c||!d.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=f.body,i=b$(f),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||d.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||d.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:d.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){d.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return d.offset.bodyOffset(b);d.offset.initialize();var c,e=b.offsetParent,f=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(d.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===e&&(l+=b.offsetTop,m+=b.offsetLeft,d.offset.doesNotAddBorder&&(!d.offset.doesAddBorderForTableAndCells||!bY.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),f=e,e=b.offsetParent),d.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;d.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},d.offset={initialize:function(){var a=c.body,b=c.createElement("div"),e,f,g,h,i=parseFloat(d.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>";d.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),e=b.firstChild,f=e.firstChild,h=e.nextSibling.firstChild.firstChild,this.doesNotAddBorder=f.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,f.style.position="fixed",f.style.top="20px",this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15,f.style.position=f.style.top="",e.style.overflow="hidden",e.style.position="relative",this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),a=b=e=f=g=h=null,d.offset.initialize=d.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;d.offset.initialize(),d.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(d.css(a,"marginTop"))||0,c+=parseFloat(d.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var e=d.css(a,"position");e==="static"&&(a.style.position="relative");var f=d(a),g=f.offset(),h=d.css(a,"top"),i=d.css(a,"left"),j=e==="absolute"&&d.inArray("auto",[h,i])>-1,k={},l={},m,n;j&&(l=f.position()),m=j?l.top:parseInt(h,10)||0,n=j?l.left:parseInt(i,10)||0,d.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):f.css(k)}},d.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),e=bZ.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(d.css(a,"marginTop"))||0,c.left-=parseFloat(d.css(a,"marginLeft"))||0,e.top+=parseFloat(d.css(b[0],"borderTopWidth"))||0,e.left+=parseFloat(d.css(b[0],"borderLeftWidth"))||0;return{top:c.top-e.top,left:c.left-e.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&(!bZ.test(a.nodeName)&&d.css(a,"position")==="static"))a=a.offsetParent;return a})}}),d.each(["Left","Top"],function(a,c){var e="scroll"+c;d.fn[e]=function(c){var f=this[0],g;if(!f)return null;if(c!==b)return this.each(function(){g=b$(this),g?g.scrollTo(a?d(g).scrollLeft():c,a?c:d(g).scrollTop()):this[e]=c});g=b$(f);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:d.support.boxModel&&g.document.documentElement[e]||g.document.body[e]:f[e]}}),d.each(["Height","Width"],function(a,c){var e=c.toLowerCase();d.fn["inner"+c]=function(){return this[0]?parseFloat(d.css(this[0],e,"padding")):null},d.fn["outer"+c]=function(a){return this[0]?parseFloat(d.css(this[0],e,a?"margin":"border")):null},d.fn[e]=function(a){var f=this[0];if(!f)return a==null?null:this;if(d.isFunction(a))return this.each(function(b){var c=d(this);c[e](a.call(this,b,c[e]()))});if(d.isWindow(f)){var g=f.document.documentElement["client"+c];return f.document.compatMode==="CSS1Compat"&&g||f.document.body["client"+c]||g}if(f.nodeType===9)return Math.max(f.documentElement["client"+c],f.body["scroll"+c],f.documentElement["scroll"+c],f.body["offset"+c],f.documentElement["offset"+c]);if(a===b){var h=d.css(f,e),i=parseFloat(h);return d.isNaN(i)?h:i}return this.css(e,typeof a==="string"?a:a+"px")}})})(window);

// ColorBox v1.3.15 - a full featured, light-weight, customizable lightbox based on jQuery 1.3+
// Copyright (c) 2010 Jack Moore - jack@colorpowered.com
// Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php
(function(b,ib){var t="none",M="LoadedContent",c=false,v="resize.",o="y",q="auto",e=true,L="nofollow",m="x";function f(a,c){a=a?' id="'+i+a+'"':"";c=c?' style="'+c+'"':"";return b("<div"+a+c+"/>")}function p(a,b){b=b===m?n.width():n.height();return typeof a==="string"?Math.round(/%/.test(a)?b/100*parseInt(a,10):parseInt(a,10)):a}function U(b){return a.photo||/\.(gif|png|jpg|jpeg|bmp)(?:\?([^#]*))?(?:#(\.*))?$/i.test(b)}function cb(a){for(var c in a)if(b.isFunction(a[c])&&c.substring(0,2)!=="on")a[c]=a[c].call(l);a.rel=a.rel||l.rel||L;a.href=a.href||b(l).attr("href");a.title=a.title||l.title;return a}function w(c,a){a&&a.call(l);b.event.trigger(c)}function jb(){var b,e=i+"Slideshow_",c="click."+i,f,k;if(a.slideshow&&h[1]){f=function(){F.text(a.slideshowStop).unbind(c).bind(V,function(){if(g<h.length-1||a.loop)b=setTimeout(d.next,a.slideshowSpeed)}).bind(W,function(){clearTimeout(b)}).one(c+" "+N,k);j.removeClass(e+"off").addClass(e+"on");b=setTimeout(d.next,a.slideshowSpeed)};k=function(){clearTimeout(b);F.text(a.slideshowStart).unbind([V,W,N,c].join(" ")).one(c,f);j.removeClass(e+"on").addClass(e+"off")};a.slideshowAuto?f():k()}}function db(c){if(!O){l=c;a=cb(b.extend({},b.data(l,r)));h=b(l);g=0;if(a.rel!==L){h=b("."+G).filter(function(){return (b.data(this,r).rel||this.rel)===a.rel});g=h.index(l);if(g===-1){h=h.add(l);g=h.length-1}}if(!u){u=D=e;j.show();if(a.returnFocus)try{l.blur();b(l).one(eb,function(){try{this.focus()}catch(a){}})}catch(f){}x.css({opacity:+a.opacity,cursor:a.overlayClose?"pointer":q}).show();a.w=p(a.initialWidth,m);a.h=p(a.initialHeight,o);d.position(0);X&&n.bind(v+P+" scroll."+P,function(){x.css({width:n.width(),height:n.height(),top:n.scrollTop(),left:n.scrollLeft()})}).trigger("scroll."+P);w(fb,a.onOpen);Y.add(H).add(I).add(F).add(Z).hide();ab.html(a.close).show()}d.load(e)}}var gb={transition:"elastic",speed:300,width:c,initialWidth:"600",innerWidth:c,maxWidth:c,height:c,initialHeight:"450",innerHeight:c,maxHeight:c,scalePhotos:e,scrolling:e,inline:c,html:c,iframe:c,photo:c,href:c,title:c,rel:c,opacity:.9,preloading:e,current:"image {current} of {total}",previous:"previous",next:"next",close:"close",open:c,returnFocus:e,loop:e,slideshow:c,slideshowAuto:e,slideshowSpeed:2500,slideshowStart:"start slideshow",slideshowStop:"stop slideshow",onOpen:c,onLoad:c,onComplete:c,onCleanup:c,onClosed:c,overlayClose:e,escKey:e,arrowKey:e},r="colorbox",i="cbox",fb=i+"_open",W=i+"_load",V=i+"_complete",N=i+"_cleanup",eb=i+"_closed",Q=i+"_purge",hb=i+"_loaded",E=b.browser.msie&&!b.support.opacity,X=E&&b.browser.version<7,P=i+"_IE6",x,j,A,s,bb,T,R,S,h,n,k,J,K,Z,Y,F,I,H,ab,B,C,y,z,l,g,a,u,D,O=c,d,G=i+"Element";d=b.fn[r]=b[r]=function(c,f){var a=this,d;if(!a[0]&&a.selector)return a;c=c||{};if(f)c.onComplete=f;if(!a[0]||a.selector===undefined){a=b("<a/>");c.open=e}a.each(function(){b.data(this,r,b.extend({},b.data(this,r)||gb,c));b(this).addClass(G)});d=c.open;if(b.isFunction(d))d=d.call(a);d&&db(a[0]);return a};d.init=function(){var l="hover",m="clear:left";n=b(ib);j=f().attr({id:r,"class":E?i+"IE":""});x=f("Overlay",X?"position:absolute":"").hide();A=f("Wrapper");s=f("Content").append(k=f(M,"width:0; height:0; overflow:hidden"),K=f("LoadingOverlay").add(f("LoadingGraphic")),Z=f("Title"),Y=f("Current"),I=f("Next"),H=f("Previous"),F=f("Slideshow").bind(fb,jb),ab=f("Close"));A.append(f().append(f("TopLeft"),bb=f("TopCenter"),f("TopRight")),f(c,m).append(T=f("MiddleLeft"),s,R=f("MiddleRight")),f(c,m).append(f("BottomLeft"),S=f("BottomCenter"),f("BottomRight"))).children().children().css({"float":"left"});J=f(c,"position:absolute; width:9999px; visibility:hidden; display:none");b("body").prepend(x,j.append(A,J));s.children().hover(function(){b(this).addClass(l)},function(){b(this).removeClass(l)}).addClass(l);B=bb.height()+S.height()+s.outerHeight(e)-s.height();C=T.width()+R.width()+s.outerWidth(e)-s.width();y=k.outerHeight(e);z=k.outerWidth(e);j.css({"padding-bottom":B,"padding-right":C}).hide();I.click(d.next);H.click(d.prev);ab.click(d.close);s.children().removeClass(l);b("."+G).live("click",function(a){if(!(a.button!==0&&typeof a.button!=="undefined"||a.ctrlKey||a.shiftKey||a.altKey)){a.preventDefault();db(this)}});x.click(function(){a.overlayClose&&d.close()});b(document).bind("keydown",function(b){if(u&&a.escKey&&b.keyCode===27){b.preventDefault();d.close()}if(u&&a.arrowKey&&!D&&h[1])if(b.keyCode===37&&(g||a.loop)){b.preventDefault();H.click()}else if(b.keyCode===39&&(g<h.length-1||a.loop)){b.preventDefault();I.click()}})};d.remove=function(){j.add(x).remove();b("."+G).die("click").removeData(r).removeClass(G)};d.position=function(f,d){function b(a){bb[0].style.width=S[0].style.width=s[0].style.width=a.style.width;K[0].style.height=K[1].style.height=s[0].style.height=T[0].style.height=R[0].style.height=a.style.height}var e,h=Math.max(document.documentElement.clientHeight-a.h-y-B,0)/2+n.scrollTop(),g=Math.max(n.width()-a.w-z-C,0)/2+n.scrollLeft();e=j.width()===a.w+z&&j.height()===a.h+y?0:f;A[0].style.width=A[0].style.height="9999px";j.dequeue().animate({width:a.w+z,height:a.h+y,top:h,left:g},{duration:e,complete:function(){b(this);D=c;A[0].style.width=a.w+z+C+"px";A[0].style.height=a.h+y+B+"px";d&&d()},step:function(){b(this)}})};d.resize=function(b){if(u){b=b||{};if(b.width)a.w=p(b.width,m)-z-C;if(b.innerWidth)a.w=p(b.innerWidth,m);k.css({width:a.w});if(b.height)a.h=p(b.height,o)-y-B;if(b.innerHeight)a.h=p(b.innerHeight,o);if(!b.innerHeight&&!b.height){b=k.wrapInner("<div style='overflow:auto'></div>").children();a.h=b.height();b.replaceWith(b.children())}k.css({height:a.h});d.position(a.transition===t?0:a.speed)}};d.prep=function(m){var c="hidden";function l(s){var p,f,m,c,l=h.length,q=a.loop;d.position(s,function(){function s(){E&&j[0].style.removeAttribute("filter")}if(u){E&&o&&k.fadeIn(100);k.show();w(hb);Z.show().html(a.title);if(l>1){typeof a.current==="string"&&Y.html(a.current.replace(/\{current\}/,g+1).replace(/\{total\}/,l)).show();I[q||g<l-1?"show":"hide"]().html(a.next);H[q||g?"show":"hide"]().html(a.previous);p=g?h[g-1]:h[l-1];m=g<l-1?h[g+1]:h[0];a.slideshow&&F.show();if(a.preloading){c=b.data(m,r).href||m.href;f=b.data(p,r).href||p.href;c=b.isFunction(c)?c.call(m):c;f=b.isFunction(f)?f.call(p):f;if(U(c))b("<img/>")[0].src=c;if(U(f))b("<img/>")[0].src=f}}K.hide();a.transition==="fade"?j.fadeTo(e,1,function(){s()}):s();n.bind(v+i,function(){d.position(0)});w(V,a.onComplete)}})}if(u){var o,e=a.transition===t?0:a.speed;n.unbind(v+i);k.remove();k=f(M).html(m);k.hide().appendTo(J.show()).css({width:function(){a.w=a.w||k.width();a.w=a.mw&&a.mw<a.w?a.mw:a.w;return a.w}(),overflow:a.scrolling?q:c}).css({height:function(){a.h=a.h||k.height();a.h=a.mh&&a.mh<a.h?a.mh:a.h;return a.h}()}).prependTo(s);J.hide();b("#"+i+"Photo").css({cssFloat:t,marginLeft:q,marginRight:q});X&&b("select").not(j.find("select")).filter(function(){return this.style.visibility!==c}).css({visibility:c}).one(N,function(){this.style.visibility="inherit"});a.transition==="fade"?j.fadeTo(e,0,function(){l(0)}):l(e)}};d.load=function(u){var n,c,s,q=d.prep;D=e;l=h[g];u||(a=cb(b.extend({},b.data(l,r))));w(Q);w(W,a.onLoad);a.h=a.height?p(a.height,o)-y-B:a.innerHeight&&p(a.innerHeight,o);a.w=a.width?p(a.width,m)-z-C:a.innerWidth&&p(a.innerWidth,m);a.mw=a.w;a.mh=a.h;if(a.maxWidth){a.mw=p(a.maxWidth,m)-z-C;a.mw=a.w&&a.w<a.mw?a.w:a.mw}if(a.maxHeight){a.mh=p(a.maxHeight,o)-y-B;a.mh=a.h&&a.h<a.mh?a.h:a.mh}n=a.href;K.show();if(a.inline){f().hide().insertBefore(b(n)[0]).one(Q,function(){b(this).replaceWith(k.children())});q(b(n))}else if(a.iframe){j.one(hb,function(){var c=b("<iframe frameborder='0' style='width:100%; height:100%; border:0; display:block'/>")[0];c.name=i+ +new Date;c.src=a.href;if(!a.scrolling)c.scrolling="no";if(E)c.allowtransparency="true";b(c).appendTo(k).one(Q,function(){c.src="//about:blank"})});q(" ")}else if(a.html)q(a.html);else if(U(n)){c=new Image;c.onload=function(){var e;c.onload=null;c.id=i+"Photo";b(c).css({border:t,display:"block",cssFloat:"left"});if(a.scalePhotos){s=function(){c.height-=c.height*e;c.width-=c.width*e};if(a.mw&&c.width>a.mw){e=(c.width-a.mw)/c.width;s()}if(a.mh&&c.height>a.mh){e=(c.height-a.mh)/c.height;s()}}if(a.h)c.style.marginTop=Math.max(a.h-c.height,0)/2+"px";h[1]&&(g<h.length-1||a.loop)&&b(c).css({cursor:"pointer"}).click(d.next);if(E)c.style.msInterpolationMode="bicubic";setTimeout(function(){q(c)},1)};setTimeout(function(){c.src=n},1)}else n&&J.load(n,function(d,c,a){q(c==="error"?"Request unsuccessful: "+a.statusText:b(this).children())})};d.next=function(){if(!D){g=g<h.length-1?g+1:0;d.load()}};d.prev=function(){if(!D){g=g?g-1:h.length-1;d.load()}};d.close=function(){if(u&&!O){O=e;u=c;w(N,a.onCleanup);n.unbind("."+i+" ."+P);x.fadeTo("fast",0);j.stop().fadeTo("fast",0,function(){w(Q);k.remove();j.add(x).css({opacity:1,cursor:q}).hide();setTimeout(function(){O=c;w(eb,a.onClosed)},1)})}};d.element=function(){return b(l)};d.settings=gb;b(d.init)})(jQuery,this);

// Currency format jQuery plugin
(function(d)
{
    d.formatCurrency = {}; d.formatCurrency.regions = []; d.formatCurrency.regions[""] = { symbol: "$", positiveFormat: "%s%n", negativeFormat: "(%s%n)", decimalSymbol: ".", digitGroupSymbol: ",", groupDigits: true };
    d.fn.formatCurrency = function(e, f)
    {
        if (arguments.length == 1 && typeof e !== "string") { f = e; e = false } var g = { name: "formatCurrency", colorize: false, region: "", global: true, roundToDecimalPlace: 2, eventOnDecimalsEntered: false };
        g = d.extend(g, d.formatCurrency.regions[""]); f = d.extend(g, f); if (f.region.length > 0) { f = d.extend(f, b(f.region)) } f.regex = a(f); return this.each(function()
        {
            $this = d(this);
            var o = "0"; o = $this[$this.is("input, select, textarea") ? "val" : "html"](); if (o.search("\\(") >= 0) { o = "-" + o } if (o === "" || (o === "-" && f.roundToDecimalPlace === -1))
            {
                return
            } if (isNaN(o))
            {
                o = o.replace(f.regex, ""); if (o === "" || (o === "-" && f.roundToDecimalPlace === -1)) { return } if (f.decimalSymbol != ".")
                {
                    o = o.replace(f.decimalSymbol, ".")
                } if (isNaN(o)) { o = "0" } 
            } var m = String(o).split("."); var r = (o == Math.abs(o)); var l = (m.length > 1); var k = (l ? m[1].toString() : "0"); var j = k; o = Math.abs(m[0]);
            o = isNaN(o) ? 0 : o; if (f.roundToDecimalPlace >= 0)
            {
                k = parseFloat("1." + k); k = k.toFixed(f.roundToDecimalPlace); if (k.substring(0, 1) == "2") { o = Number(o) + 1 } k = k.substring(2)
            } o = String(o); if (f.groupDigits)
            {
                for (var n = 0; n < Math.floor((o.length - (1 + n)) / 3); n++)
                {
                    o = o.substring(0, o.length - (4 * n + 3)) + f.digitGroupSymbol + o.substring(o.length - (4 * n + 3))
                } 
            } if ((l && f.roundToDecimalPlace == -1) || f.roundToDecimalPlace > 0) { o += f.decimalSymbol + k } var q = r ? f.positiveFormat : f.negativeFormat; var h = q.replace(/%s/g, f.symbol);
            h = h.replace(/%n/g, o); var p = d([]); if (!e) { p = $this } else { p = d(e) } p[p.is("input, select, textarea") ? "val" : "html"](h); if (l && f.eventOnDecimalsEntered && j.length > f.roundToDecimalPlace)
            {
                p.trigger("decimalsEntered", j)
            } if (f.colorize) { p.css("color", r ? "black" : "red") } 
        })
    }; d.fn.toNumber = function(e)
    {
        var f = d.extend({ name: "toNumber", region: "", global: true }, d.formatCurrency.regions[""]);
        e = jQuery.extend(f, e); if (e.region.length > 0) { e = d.extend(e, b(e.region)) } e.regex = a(e); return this.each(function()
        {
            var g = d(this).is("input, select, textarea") ? "val" : "html";
            d(this)[g](d(this)[g]().replace("(", "(-").replace(e.regex, ""))
        })
    }; d.fn.asNumber = function(f)
    {
        var g = d.extend({ name: "asNumber", region: "", parse: true, parseType: "Float", global: true }, d.formatCurrency.regions[""]);
        f = jQuery.extend(g, f); if (f.region.length > 0) { f = d.extend(f, b(f.region)) } f.regex = a(f); f.parseType = c(f.parseType); var h = d(this).is("input, select, textarea") ? "val" : "html";
        var e = d(this)[h](); e = e ? e : ""; e = e.replace("(", "(-"); e = e.replace(f.regex, ""); if (!f.parse) { return e } if (e.length == 0) { e = "0" } if (f.decimalSymbol != ".")
        {
            e = e.replace(f.decimalSymbol, ".")
        } return window["parse" + f.parseType](e)
    }; function b(g)
    {
        var f = d.formatCurrency.regions[g]; if (f) { return f } else
        {
            if (/(\w+)-(\w+)/g.test(g))
            {
                var e = g.replace(/(\w+)-(\w+)/g, "$1");
                return d.formatCurrency.regions[e]
            } 
        } return null
    } function c(e)
    {
        switch (e.toLowerCase())
        {
            case "int": return "Int"; case "float": return "Float"; default: throw "invalid parseType"
        } 
    } function a(e)
    {
        if (e.symbol === "") { return new RegExp("[^\\d" + e.decimalSymbol + "-]", "g") } else
        {
            var f = e.symbol.replace("$", "\\$").replace(".", "\\.");
            return new RegExp(f + "|[^\\d" + e.decimalSymbol + "-]", "g")
        }
    }
})(jQuery);


///////////////////////////////////// jQuery UI <begin>

/*!
* jQuery UI 1.8.12
*
* 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(c, j)
{
    function k(a) { return !c(a).parents().andSelf().filter(function() { return c.curCSS(this, "visibility") === "hidden" || c.expr.filters.hidden(this) }).length } c.ui = c.ui || {}; if (!c.ui.version)
    {
        c.extend(c.ui, { version: "1.8.12", 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}
        }); c.fn.extend({ _focus: c.fn.focus, focus: function(a, b) { return typeof a === "number" ? this.each(function() { var d = this; setTimeout(function() { c(d).focus(); b && b.call(d) }, a) }) : this._focus.apply(this, arguments) }, scrollParent: function()
        {
            var a; a = c.browser.msie && /(static|relative)/.test(this.css("position")) || /absolute/.test(this.css("position")) ? this.parents().filter(function()
            {
                return /(relative|absolute|fixed)/.test(c.curCSS(this,
"position", 1)) && /(auto|scroll)/.test(c.curCSS(this, "overflow", 1) + c.curCSS(this, "overflow-y", 1) + c.curCSS(this, "overflow-x", 1))
            }).eq(0) : this.parents().filter(function() { return /(auto|scroll)/.test(c.curCSS(this, "overflow", 1) + c.curCSS(this, "overflow-y", 1) + c.curCSS(this, "overflow-x", 1)) }).eq(0); return /fixed/.test(this.css("position")) || !a.length ? c(document) : a
        }, zIndex: function(a)
        {
            if (a !== j) return this.css("zIndex", a); if (this.length)
            {
                a = c(this[0]); for (var b; a.length && a[0] !== document; )
                {
                    b = a.css("position");
                    if (b === "absolute" || b === "relative" || b === "fixed") { b = parseInt(a.css("zIndex"), 10); if (!isNaN(b) && b !== 0) return b } a = a.parent()
                } 
            } return 0
        }, disableSelection: function() { return this.bind((c.support.selectstart ? "selectstart" : "mousedown") + ".ui-disableSelection", function(a) { a.preventDefault() }) }, enableSelection: function() { return this.unbind(".ui-disableSelection") } 
        }); c.each(["Width", "Height"], function(a, b)
        {
            function d(f, g, l, m)
            {
                c.each(e, function()
                {
                    g -= parseFloat(c.curCSS(f, "padding" + this, true)) || 0; if (l) g -= parseFloat(c.curCSS(f,
"border" + this + "Width", true)) || 0; if (m) g -= parseFloat(c.curCSS(f, "margin" + this, true)) || 0
                }); return g
            } var e = b === "Width" ? ["Left", "Right"] : ["Top", "Bottom"], h = b.toLowerCase(), i = { innerWidth: c.fn.innerWidth, innerHeight: c.fn.innerHeight, outerWidth: c.fn.outerWidth, outerHeight: c.fn.outerHeight }; c.fn["inner" + b] = function(f) { if (f === j) return i["inner" + b].call(this); return this.each(function() { c(this).css(h, d(this, f) + "px") }) }; c.fn["outer" + b] = function(f, g)
            {
                if (typeof f !== "number") return i["outer" + b].call(this, f); return this.each(function()
                {
                    c(this).css(h,
d(this, f, true, g) + "px")
                })
            } 
        }); c.extend(c.expr[":"], { data: function(a, b, d) { return !!c.data(a, d[3]) }, focusable: function(a) { var b = a.nodeName.toLowerCase(), d = c.attr(a, "tabindex"); if ("area" === b) { b = a.parentNode; d = b.name; if (!a.href || !d || b.nodeName.toLowerCase() !== "map") return false; a = c("img[usemap=#" + d + "]")[0]; return !!a && k(a) } return (/input|select|textarea|button|object/.test(b) ? !a.disabled : "a" == b ? a.href || !isNaN(d) : !isNaN(d)) && k(a) }, tabbable: function(a) { var b = c.attr(a, "tabindex"); return (isNaN(b) || b >= 0) && c(a).is(":focusable") } });
        c(function() { var a = document.body, b = a.appendChild(b = document.createElement("div")); c.extend(b.style, { minHeight: "100px", height: "auto", padding: 0, borderWidth: 0 }); c.support.minHeight = b.offsetHeight === 100; c.support.selectstart = "onselectstart" in b; a.removeChild(b).style.display = "none" }); c.extend(c.ui, { plugin: { add: function(a, b, d) { a = c.ui[a].prototype; for (var e in d) { a.plugins[e] = a.plugins[e] || []; a.plugins[e].push([b, d[e]]) } }, call: function(a, b, d)
        {
            if ((b = a.plugins[b]) && a.element[0].parentNode) for (var e = 0; e < b.length; e++) a.options[b[e][0]] &&
b[e][1].apply(a.element, d)
        } 
        }, contains: function(a, b) { return document.compareDocumentPosition ? a.compareDocumentPosition(b) & 16 : a !== b && a.contains(b) }, hasScroll: function(a, b) { if (c(a).css("overflow") === "hidden") return false; b = b && b === "left" ? "scrollLeft" : "scrollTop"; var d = false; if (a[b] > 0) return true; a[b] = 1; d = a[b] > 0; a[b] = 0; return d }, isOverAxis: function(a, b, d) { return a > b && a < b + d }, isOver: function(a, b, d, e, h, i) { return c.ui.isOverAxis(a, d, h) && c.ui.isOverAxis(b, e, i) } 
        })
    } 
})(jQuery);
; /*
 * jQuery UI Datepicker 1.8.12
 *
 * 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/Datepicker
 *
 * Depends:
 *	jquery.ui.core.js
 */
(function(d, A)
{
    function K()
    {
        this.debug = false; this._curInst = null; this._keyEvent = false; this._disabledInputs = []; this._inDialog = this._datepickerShowing = false; 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: false, showMonthAfterYear: false, yearSuffix: ""
}; this._defaults = { showOn: "focus", showAnim: "fadeIn", showOptions: {}, defaultDate: null, appendText: "", buttonText: "...", buttonImage: "", buttonImageOnly: false, hideIfNoPrevNext: false, navigationAsDateFormat: false, gotoCurrent: false, changeMonth: false, changeYear: false, yearRange: "c-10:c+10", showOtherMonths: false, selectOtherMonths: false, showWeek: false, 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: true, showButtonPanel: false, autoSize: false
}; d.extend(this._defaults, this.regional[""]); this.dpDiv = d('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')
    } function F(a, b)
    {
        d.extend(a, b); for (var c in b) if (b[c] ==
null || b[c] == A) a[c] = b[c]; return a
    } d.extend(d.ui, { datepicker: { version: "1.8.12"} }); var y = (new Date).getTime(); d.extend(K.prototype, { markerClassName: "hasDatepicker", log: function() { this.debug && console.log.apply("", arguments) }, _widgetDatepicker: function() { return this.dpDiv }, setDefaults: function(a) { F(this._defaults, a || {}); return this }, _attachDatepicker: function(a, b)
    {
        var c = null; for (var e in this._defaults) { var f = a.getAttribute("date:" + e); if (f) { c = c || {}; try { c[e] = eval(f) } catch (h) { c[e] = f } } } e = a.nodeName.toLowerCase();
        f = e == "div" || e == "span"; if (!a.id) { this.uuid += 1; a.id = "dp" + this.uuid } var i = this._newInst(d(a), f); i.settings = d.extend({}, b || {}, c || {}); if (e == "input") this._connectDatepicker(a, i); else f && this._inlineDatepicker(a, i)
    }, _newInst: function(a, b) { return { id: a[0].id.replace(/([^A-Za-z0-9_-])/g, "\\\\$1"), input: a, selectedDay: 0, selectedMonth: 0, selectedYear: 0, drawMonth: 0, drawYear: 0, inline: b, dpDiv: !b ? this.dpDiv : d('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')} },
        _connectDatepicker: function(a, b) { var c = d(a); b.append = d([]); b.trigger = d([]); if (!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(e, f, h) { b.settings[f] = h }).bind("getData.datepicker", function(e, f) { return this._get(b, f) }); this._autoSize(b); d.data(a, "datepicker", b) } }, _attachments: function(a, b)
        {
            var c = this._get(b, "appendText"), e = this._get(b, "isRTL"); b.append &&
b.append.remove(); if (c) { b.append = d('<span class="' + this._appendClass + '">' + c + "</span>"); a[e ? "before" : "after"](b.append) } a.unbind("focus", this._showDatepicker); b.trigger && b.trigger.remove(); c = this._get(b, "showOn"); if (c == "focus" || c == "both") a.focus(this._showDatepicker); if (c == "button" || c == "both")
            {
                c = this._get(b, "buttonText"); var f = this._get(b, "buttonImage"); b.trigger = d(this._get(b, "buttonImageOnly") ? d("<img/>").addClass(this._triggerClass).attr({ src: f, alt: c, title: c }) : d('<button type="button"></button>').addClass(this._triggerClass).html(f ==
"" ? c : d("<img/>").attr({ src: f, alt: c, title: c }))); a[e ? "before" : "after"](b.trigger); b.trigger.click(function() { d.datepicker._datepickerShowing && d.datepicker._lastInput == a[0] ? d.datepicker._hideDatepicker() : d.datepicker._showDatepicker(a[0]); return false })
            } 
        }, _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 e = function(f) { for (var h = 0, i = 0, g = 0; g < f.length; g++) if (f[g].length > h) { h = f[g].length; i = g } return i }; b.setMonth(e(this._get(a,
c.match(/MM/) ? "monthNames" : "monthNamesShort"))); b.setDate(e(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 = d(a); if (!c.hasClass(this.markerClassName))
            {
                c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker", function(e, f, h) { b.settings[f] = h }).bind("getData.datepicker", function(e, f) { return this._get(b, f) }); d.data(a, "datepicker", b); this._setDate(b, this._getDefaultDate(b),
true); this._updateDatepicker(b); this._updateAlternate(b); b.dpDiv.show()
            } 
        }, _dialogDatepicker: function(a, b, c, e, f)
        {
            a = this._dialogInst; if (!a) { this.uuid += 1; this._dialogInput = d('<input type="text" id="' + ("dp" + this.uuid) + '" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>'); this._dialogInput.keydown(this._doKeyDown); d("body").append(this._dialogInput); a = this._dialogInst = this._newInst(this._dialogInput, false); a.settings = {}; d.data(this._dialogInput[0], "datepicker", a) } F(a.settings, e || {});
            b = b && b.constructor == Date ? this._formatDate(a, b) : b; this._dialogInput.val(b); this._pos = f ? f.length ? f : [f.pageX, f.pageY] : null; if (!this._pos) this._pos = [document.documentElement.clientWidth / 2 - 100 + (document.documentElement.scrollLeft || document.body.scrollLeft), document.documentElement.clientHeight / 2 - 150 + (document.documentElement.scrollTop || document.body.scrollTop)]; this._dialogInput.css("left", this._pos[0] + 20 + "px").css("top", this._pos[1] + "px"); a.settings.onSelect = c; this._inDialog = true; this.dpDiv.addClass(this._dialogClass);
            this._showDatepicker(this._dialogInput[0]); d.blockUI && d.blockUI(this.dpDiv); d.data(this._dialogInput[0], "datepicker", a); return this
        }, _destroyDatepicker: function(a)
        {
            var b = d(a), c = d.data(a, "datepicker"); if (b.hasClass(this.markerClassName))
            {
                var e = a.nodeName.toLowerCase(); d.removeData(a, "datepicker"); if (e == "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)
                } else if (e == "div" || e == "span") b.removeClass(this.markerClassName).empty()
            } 
        }, _enableDatepicker: function(a)
        {
            var b = d(a), c = d.data(a, "datepicker"); if (b.hasClass(this.markerClassName))
            {
                var e = a.nodeName.toLowerCase(); if (e == "input") { a.disabled = false; c.trigger.filter("button").each(function() { this.disabled = false }).end().filter("img").css({ opacity: "1.0", cursor: "" }) } else if (e == "div" || e == "span") b.children("." + this._inlineClass).children().removeClass("ui-state-disabled"); this._disabledInputs = d.map(this._disabledInputs,
function(f) { return f == a ? null : f })
            } 
        }, _disableDatepicker: function(a)
        {
            var b = d(a), c = d.data(a, "datepicker"); if (b.hasClass(this.markerClassName))
            {
                var e = a.nodeName.toLowerCase(); if (e == "input") { a.disabled = true; c.trigger.filter("button").each(function() { this.disabled = true }).end().filter("img").css({ opacity: "0.5", cursor: "default" }) } else if (e == "div" || e == "span") b.children("." + this._inlineClass).children().addClass("ui-state-disabled"); this._disabledInputs = d.map(this._disabledInputs, function(f)
                {
                    return f == a ? null :
f
                }); this._disabledInputs[this._disabledInputs.length] = a
            } 
        }, _isDisabledDatepicker: function(a) { if (!a) return false; for (var b = 0; b < this._disabledInputs.length; b++) if (this._disabledInputs[b] == a) return true; return false }, _getInst: function(a) { try { return d.data(a, "datepicker") } catch (b) { throw "Missing instance data for this datepicker"; } }, _optionDatepicker: function(a, b, c)
        {
            var e = this._getInst(a); if (arguments.length == 2 && typeof b == "string") return b == "defaults" ? d.extend({}, d.datepicker._defaults) : e ? b == "all" ? d.extend({},
e.settings) : this._get(e, b) : null; var f = b || {}; if (typeof b == "string") { f = {}; f[b] = c } if (e) { this._curInst == e && this._hideDatepicker(); var h = this._getDateDatepicker(a, true), i = this._getMinMaxDate(e, "min"), g = this._getMinMaxDate(e, "max"); F(e.settings, f); if (i !== null && f.dateFormat !== A && f.minDate === A) e.settings.minDate = this._formatDate(e, i); if (g !== null && f.dateFormat !== A && f.maxDate === A) e.settings.maxDate = this._formatDate(e, g); this._attachments(d(a), e); this._autoSize(e); this._setDateDatepicker(a, h); this._updateDatepicker(e) } 
        },
        _changeDatepicker: function(a, b, c) { this._optionDatepicker(a, b, c) }, _refreshDatepicker: function(a) { (a = this._getInst(a)) && this._updateDatepicker(a) }, _setDateDatepicker: function(a, b) { if (a = this._getInst(a)) { this._setDate(a, b); this._updateDatepicker(a); this._updateAlternate(a) } }, _getDateDatepicker: function(a, b) { (a = this._getInst(a)) && !a.inline && this._setDateFromField(a, b); return a ? this._getDate(a) : null }, _doKeyDown: function(a)
        {
            var b = d.datepicker._getInst(a.target), c = true, e = b.dpDiv.is(".ui-datepicker-rtl");
            b._keyEvent = true; if (d.datepicker._datepickerShowing) switch (a.keyCode)
            {
                case 9: d.datepicker._hideDatepicker(); c = false; break; case 13: c = d("td." + d.datepicker._dayOverClass + ":not(." + d.datepicker._currentClass + ")", b.dpDiv); c[0] ? d.datepicker._selectDay(a.target, b.selectedMonth, b.selectedYear, c[0]) : d.datepicker._hideDatepicker(); return false; case 27: d.datepicker._hideDatepicker(); break; case 33: d.datepicker._adjustDate(a.target, a.ctrlKey ? -d.datepicker._get(b, "stepBigMonths") : -d.datepicker._get(b, "stepMonths"),
"M"); break; case 34: d.datepicker._adjustDate(a.target, a.ctrlKey ? +d.datepicker._get(b, "stepBigMonths") : +d.datepicker._get(b, "stepMonths"), "M"); break; case 35: if (a.ctrlKey || a.metaKey) d.datepicker._clearDate(a.target); c = a.ctrlKey || a.metaKey; break; case 36: if (a.ctrlKey || a.metaKey) d.datepicker._gotoToday(a.target); c = a.ctrlKey || a.metaKey; break; case 37: if (a.ctrlKey || a.metaKey) d.datepicker._adjustDate(a.target, e ? +1 : -1, "D"); c = a.ctrlKey || a.metaKey; if (a.originalEvent.altKey) d.datepicker._adjustDate(a.target, a.ctrlKey ?
-d.datepicker._get(b, "stepBigMonths") : -d.datepicker._get(b, "stepMonths"), "M"); break; case 38: if (a.ctrlKey || a.metaKey) d.datepicker._adjustDate(a.target, -7, "D"); c = a.ctrlKey || a.metaKey; break; case 39: if (a.ctrlKey || a.metaKey) d.datepicker._adjustDate(a.target, e ? -1 : +1, "D"); c = a.ctrlKey || a.metaKey; if (a.originalEvent.altKey) d.datepicker._adjustDate(a.target, a.ctrlKey ? +d.datepicker._get(b, "stepBigMonths") : +d.datepicker._get(b, "stepMonths"), "M"); break; case 40: if (a.ctrlKey || a.metaKey) d.datepicker._adjustDate(a.target,
+7, "D"); c = a.ctrlKey || a.metaKey; break; default: c = false
            } else if (a.keyCode == 36 && a.ctrlKey) d.datepicker._showDatepicker(this); else c = false; if (c) { a.preventDefault(); a.stopPropagation() } 
        }, _doKeyPress: function(a) { var b = d.datepicker._getInst(a.target); if (d.datepicker._get(b, "constrainInput")) { b = d.datepicker._possibleChars(d.datepicker._get(b, "dateFormat")); var c = String.fromCharCode(a.charCode == A ? a.keyCode : a.charCode); return a.ctrlKey || a.metaKey || c < " " || !b || b.indexOf(c) > -1 } }, _doKeyUp: function(a)
        {
            a = d.datepicker._getInst(a.target);
            if (a.input.val() != a.lastVal) try { if (d.datepicker.parseDate(d.datepicker._get(a, "dateFormat"), a.input ? a.input.val() : null, d.datepicker._getFormatConfig(a))) { d.datepicker._setDateFromField(a); d.datepicker._updateAlternate(a); d.datepicker._updateDatepicker(a) } } catch (b) { d.datepicker.log(b) } return true
        }, _showDatepicker: function(a)
        {
            a = a.target || a; if (a.nodeName.toLowerCase() != "input") a = d("input", a.parentNode)[0]; if (!(d.datepicker._isDisabledDatepicker(a) || d.datepicker._lastInput == a))
            {
                var b = d.datepicker._getInst(a);
                d.datepicker._curInst && d.datepicker._curInst != b && d.datepicker._curInst.dpDiv.stop(true, true); var c = d.datepicker._get(b, "beforeShow"); F(b.settings, c ? c.apply(a, [a, b]) : {}); b.lastVal = null; d.datepicker._lastInput = a; d.datepicker._setDateFromField(b); if (d.datepicker._inDialog) a.value = ""; if (!d.datepicker._pos) { d.datepicker._pos = d.datepicker._findPos(a); d.datepicker._pos[1] += a.offsetHeight } var e = false; d(a).parents().each(function() { e |= d(this).css("position") == "fixed"; return !e }); if (e && d.browser.opera)
                {
                    d.datepicker._pos[0] -=
document.documentElement.scrollLeft; d.datepicker._pos[1] -= document.documentElement.scrollTop
                } c = { left: d.datepicker._pos[0], top: d.datepicker._pos[1] }; d.datepicker._pos = null; b.dpDiv.empty(); b.dpDiv.css({ position: "absolute", display: "block", top: "-1000px" }); d.datepicker._updateDatepicker(b); c = d.datepicker._checkOffset(b, c, e); b.dpDiv.css({ position: d.datepicker._inDialog && d.blockUI ? "static" : e ? "fixed" : "absolute", display: "none", left: c.left + "px", top: c.top + "px" }); if (!b.inline)
                {
                    c = d.datepicker._get(b, "showAnim");
                    var f = d.datepicker._get(b, "duration"), h = function() { d.datepicker._datepickerShowing = true; var i = b.dpDiv.find("iframe.ui-datepicker-cover"); if (i.length) { var g = d.datepicker._getBorders(b.dpDiv); i.css({ left: -g[0], top: -g[1], width: b.dpDiv.outerWidth(), height: b.dpDiv.outerHeight() }) } }; b.dpDiv.zIndex(d(a).zIndex() + 1); d.effects && d.effects[c] ? b.dpDiv.show(c, d.datepicker._get(b, "showOptions"), f, h) : b.dpDiv[c || "show"](c ? f : null, h); if (!c || !f) h(); b.input.is(":visible") && !b.input.is(":disabled") && b.input.focus(); d.datepicker._curInst =
b
                } 
            } 
        }, _updateDatepicker: function(a)
        {
            var b = this, c = d.datepicker._getBorders(a.dpDiv); a.dpDiv.empty().append(this._generateHTML(a)); var e = a.dpDiv.find("iframe.ui-datepicker-cover"); e.length && e.css({ left: -c[0], top: -c[1], width: a.dpDiv.outerWidth(), height: a.dpDiv.outerHeight() }); a.dpDiv.find("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a").bind("mouseout", function()
            {
                d(this).removeClass("ui-state-hover"); this.className.indexOf("ui-datepicker-prev") != -1 && d(this).removeClass("ui-datepicker-prev-hover");
                this.className.indexOf("ui-datepicker-next") != -1 && d(this).removeClass("ui-datepicker-next-hover")
            }).bind("mouseover", function() { if (!b._isDisabledDatepicker(a.inline ? a.dpDiv.parent()[0] : a.input[0])) { d(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"); d(this).addClass("ui-state-hover"); this.className.indexOf("ui-datepicker-prev") != -1 && d(this).addClass("ui-datepicker-prev-hover"); this.className.indexOf("ui-datepicker-next") != -1 && d(this).addClass("ui-datepicker-next-hover") } }).end().find("." +
this._dayOverClass + " a").trigger("mouseover").end(); c = this._getNumberOfMonths(a); e = c[1]; e > 1 ? a.dpDiv.addClass("ui-datepicker-multi-" + e).css("width", 17 * e + "em") : a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""); a.dpDiv[(c[0] != 1 || c[1] != 1 ? "add" : "remove") + "Class"]("ui-datepicker-multi"); a.dpDiv[(this._get(a, "isRTL") ? "add" : "remove") + "Class"]("ui-datepicker-rtl"); a == d.datepicker._curInst && d.datepicker._datepickerShowing && a.input && a.input.is(":visible") && !a.input.is(":disabled") &&
a.input[0] != document.activeElement && a.input.focus(); if (a.yearshtml) { var f = a.yearshtml; setTimeout(function() { f === a.yearshtml && a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml); f = a.yearshtml = null }, 0) } 
        }, _getBorders: function(a) { var b = function(c) { return { thin: 1, medium: 2, thick: 3}[c] || c }; return [parseFloat(b(a.css("border-left-width"))), parseFloat(b(a.css("border-top-width")))] }, _checkOffset: function(a, b, c)
        {
            var e = a.dpDiv.outerWidth(), f = a.dpDiv.outerHeight(), h = a.input ? a.input.outerWidth() :
0, i = a.input ? a.input.outerHeight() : 0, g = document.documentElement.clientWidth + d(document).scrollLeft(), j = document.documentElement.clientHeight + d(document).scrollTop(); b.left -= this._get(a, "isRTL") ? e - h : 0; b.left -= c && b.left == a.input.offset().left ? d(document).scrollLeft() : 0; b.top -= c && b.top == a.input.offset().top + i ? d(document).scrollTop() : 0; b.left -= Math.min(b.left, b.left + e > g && g > e ? Math.abs(b.left + e - g) : 0); b.top -= Math.min(b.top, b.top + f > j && j > f ? Math.abs(f + i) : 0); return b
        }, _findPos: function(a)
        {
            for (var b = this._get(this._getInst(a),
"isRTL"); a && (a.type == "hidden" || a.nodeType != 1 || d.expr.filters.hidden(a)); ) a = a[b ? "previousSibling" : "nextSibling"]; a = d(a).offset(); return [a.left, a.top]
        }, _hideDatepicker: function(a)
        {
            var b = this._curInst; if (!(!b || a && b != d.data(a, "datepicker"))) if (this._datepickerShowing)
            {
                a = this._get(b, "showAnim"); var c = this._get(b, "duration"), e = function() { d.datepicker._tidyDialog(b); this._curInst = null }; d.effects && d.effects[a] ? b.dpDiv.hide(a, d.datepicker._get(b, "showOptions"), c, e) : b.dpDiv[a == "slideDown" ? "slideUp" : a == "fadeIn" ?
"fadeOut" : "hide"](a ? c : null, e); a || e(); if (a = this._get(b, "onClose")) a.apply(b.input ? b.input[0] : null, [b.input ? b.input.val() : "", b]); this._datepickerShowing = false; this._lastInput = null; if (this._inDialog) { this._dialogInput.css({ position: "absolute", left: "0", top: "-100px" }); if (d.blockUI) { d.unblockUI(); d("body").append(this.dpDiv) } } this._inDialog = false
            } 
        }, _tidyDialog: function(a) { a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar") }, _checkExternalClick: function(a)
        {
            if (d.datepicker._curInst)
            {
                a =
d(a.target); a[0].id != d.datepicker._mainDivId && a.parents("#" + d.datepicker._mainDivId).length == 0 && !a.hasClass(d.datepicker.markerClassName) && !a.hasClass(d.datepicker._triggerClass) && d.datepicker._datepickerShowing && !(d.datepicker._inDialog && d.blockUI) && d.datepicker._hideDatepicker()
            } 
        }, _adjustDate: function(a, b, c) { a = d(a); var e = this._getInst(a[0]); if (!this._isDisabledDatepicker(a[0])) { this._adjustInstDate(e, b + (c == "M" ? this._get(e, "showCurrentAtPos") : 0), c); this._updateDatepicker(e) } }, _gotoToday: function(a)
        {
            a =
d(a); var b = this._getInst(a[0]); if (this._get(b, "gotoCurrent") && b.currentDay) { b.selectedDay = b.currentDay; b.drawMonth = b.selectedMonth = b.currentMonth; b.drawYear = b.selectedYear = b.currentYear } else { var c = new Date; b.selectedDay = c.getDate(); b.drawMonth = b.selectedMonth = c.getMonth(); b.drawYear = b.selectedYear = c.getFullYear() } this._notifyChange(b); this._adjustDate(a)
        }, _selectMonthYear: function(a, b, c)
        {
            a = d(a); var e = this._getInst(a[0]); e._selectingMonthYear = false; e["selected" + (c == "M" ? "Month" : "Year")] = e["draw" + (c ==
"M" ? "Month" : "Year")] = parseInt(b.options[b.selectedIndex].value, 10); this._notifyChange(e); this._adjustDate(a)
        }, _clickMonthYear: function(a) { var b = this._getInst(d(a)[0]); b.input && b._selectingMonthYear && setTimeout(function() { b.input.focus() }, 0); b._selectingMonthYear = !b._selectingMonthYear }, _selectDay: function(a, b, c, e)
        {
            var f = d(a); if (!(d(e).hasClass(this._unselectableClass) || this._isDisabledDatepicker(f[0])))
            {
                f = this._getInst(f[0]); f.selectedDay = f.currentDay = d("a", e).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) { a = d(a); this._getInst(a[0]); this._selectDate(a, "") }, _selectDate: function(a, b)
        {
            a = this._getInst(d(a)[0]); b = b != null ? b : this._formatDate(a); a.input && a.input.val(b); this._updateAlternate(a); var c = this._get(a, "onSelect"); if (c) c.apply(a.input ? a.input[0] : null, [b, a]); else a.input && a.input.trigger("change"); if (a.inline) this._updateDatepicker(a); else
            {
                this._hideDatepicker();
                this._lastInput = a.input[0]; typeof a.input[0] != "object" && a.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"), e = this._getDate(a), f = this.formatDate(c, e, this._getFormatConfig(a)); d(b).each(function() { d(this).val(f) }) } }, noWeekends: function(a) { a = a.getDay(); return [a > 0 && a < 6, ""] }, iso8601Week: function(a)
        {
            a = new Date(a.getTime()); a.setDate(a.getDate() + 4 - (a.getDay() || 7)); var b = a.getTime(); a.setMonth(0);
            a.setDate(1); return Math.floor(Math.round((b - a) / 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 e = (c ? c.shortYearCutoff : null) || this._defaults.shortYearCutoff; e = typeof e != "string" ? e : (new Date).getFullYear() % 100 + parseInt(e, 10); for (var f = (c ? c.dayNamesShort : null) || this._defaults.dayNamesShort, h = (c ? c.dayNames : null) || this._defaults.dayNames, i = (c ? c.monthNamesShort : null) || this._defaults.monthNamesShort, g = (c ?
c.monthNames : null) || this._defaults.monthNames, j = c = -1, l = -1, u = -1, k = false, o = function(p) { (p = z + 1 < a.length && a.charAt(z + 1) == p) && z++; return p }, m = function(p) { var v = o(p); p = new RegExp("^\\d{1," + (p == "@" ? 14 : p == "!" ? 20 : p == "y" && v ? 4 : p == "o" ? 3 : 2) + "}"); p = b.substring(s).match(p); if (!p) throw "Missing number at position " + s; s += p[0].length; return parseInt(p[0], 10) }, n = function(p, v, H)
{
    p = o(p) ? H : v; for (v = 0; v < p.length; v++) if (b.substr(s, p[v].length).toLowerCase() == p[v].toLowerCase()) { s += p[v].length; return v + 1 } throw "Unknown name at position " +
s;
}, r = function() { if (b.charAt(s) != a.charAt(z)) throw "Unexpected literal at position " + s; s++ }, s = 0, z = 0; z < a.length; z++) if (k) if (a.charAt(z) == "'" && !o("'")) k = false; else r(); else switch (a.charAt(z))
            {
                case "d": l = m("d"); break; case "D": n("D", f, h); break; case "o": u = m("o"); break; case "m": j = m("m"); break; case "M": j = n("M", i, g); break; case "y": c = m("y"); break; case "@": var w = new Date(m("@")); c = w.getFullYear(); j = w.getMonth() + 1; l = w.getDate(); break; case "!": w = new Date((m("!") - this._ticksTo1970) / 1E4); c = w.getFullYear(); j = w.getMonth() +
1; l = w.getDate(); break; case "'": if (o("'")) r(); else k = true; break; default: r()
            } if (c == -1) c = (new Date).getFullYear(); else if (c < 100) c += (new Date).getFullYear() - (new Date).getFullYear() % 100 + (c <= e ? 0 : -100); if (u > -1) { j = 1; l = u; do { e = this._getDaysInMonth(c, j - 1); if (l <= e) break; j++; l -= e } while (1) } w = this._daylightSavingAdjust(new Date(c, j - 1, l)); if (w.getFullYear() != c || w.getMonth() + 1 != j || w.getDate() != l) throw "Invalid date"; return w
        }, 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 e = (c ? c.dayNamesShort : null) || this._defaults.dayNamesShort, f = (c ? c.dayNames : null) || this._defaults.dayNames, h = (c ? c.monthNamesShort : null) || this._defaults.monthNamesShort; c = (c ? c.monthNames : null) || this._defaults.monthNames; var i = function(o)
            {
                (o = k + 1 < a.length &&
a.charAt(k + 1) == o) && k++; return o
            }, g = function(o, m, n) { m = "" + m; if (i(o)) for (; m.length < n; ) m = "0" + m; return m }, j = function(o, m, n, r) { return i(o) ? r[m] : n[m] }, l = "", u = false; if (b) for (var k = 0; k < a.length; k++) if (u) if (a.charAt(k) == "'" && !i("'")) u = false; else l += a.charAt(k); else switch (a.charAt(k))
            {
                case "d": l += g("d", b.getDate(), 2); break; case "D": l += j("D", b.getDay(), e, f); break; case "o": l += g("o", (b.getTime() - (new Date(b.getFullYear(), 0, 0)).getTime()) / 864E5, 3); break; case "m": l += g("m", b.getMonth() + 1, 2); break; case "M": l += j("M",
b.getMonth(), h, c); break; case "y": l += i("y") ? b.getFullYear() : (b.getYear() % 100 < 10 ? "0" : "") + b.getYear() % 100; break; case "@": l += b.getTime(); break; case "!": l += b.getTime() * 1E4 + this._ticksTo1970; break; case "'": if (i("'")) l += "'"; else u = true; break; default: l += a.charAt(k)
            } return l
        }, _possibleChars: function(a)
        {
            for (var b = "", c = false, e = function(h) { (h = f + 1 < a.length && a.charAt(f + 1) == h) && f++; return h }, f = 0; f < a.length; f++) if (c) if (a.charAt(f) == "'" && !e("'")) c = false; else b += a.charAt(f); else switch (a.charAt(f))
            {
                case "d": case "m": case "y": case "@": b +=
"0123456789"; break; case "D": case "M": return null; case "'": if (e("'")) b += "'"; else c = true; break; default: b += a.charAt(f)
            } return b
        }, _get: function(a, b) { return a.settings[b] !== A ? a.settings[b] : this._defaults[b] }, _setDateFromField: function(a, b)
        {
            if (a.input.val() != a.lastVal)
            {
                var c = this._get(a, "dateFormat"), e = a.lastVal = a.input ? a.input.val() : null, f, h; f = h = this._getDefaultDate(a); var i = this._getFormatConfig(a); try { f = this.parseDate(c, e, i) || h } catch (g) { this.log(g); e = b ? "" : e } a.selectedDay = f.getDate(); a.drawMonth = a.selectedMonth =
f.getMonth(); a.drawYear = a.selectedYear = f.getFullYear(); a.currentDay = e ? f.getDate() : 0; a.currentMonth = e ? f.getMonth() : 0; a.currentYear = e ? f.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 e = function(h) { var i = new Date; i.setDate(i.getDate() + h); return i }, f = function(h)
            {
                try { return d.datepicker.parseDate(d.datepicker._get(a, "dateFormat"), h, d.datepicker._getFormatConfig(a)) } catch (i) { } var g =
(h.toLowerCase().match(/^c/) ? d.datepicker._getDate(a) : null) || new Date, j = g.getFullYear(), l = g.getMonth(); g = g.getDate(); for (var u = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g, k = u.exec(h); k; ) { switch (k[2] || "d") { case "d": case "D": g += parseInt(k[1], 10); break; case "w": case "W": g += parseInt(k[1], 10) * 7; break; case "m": case "M": l += parseInt(k[1], 10); g = Math.min(g, d.datepicker._getDaysInMonth(j, l)); break; case "y": case "Y": j += parseInt(k[1], 10); g = Math.min(g, d.datepicker._getDaysInMonth(j, l)); break } k = u.exec(h) } return new Date(j,
l, g)
            }; if (b = (b = b == null || b === "" ? c : typeof b == "string" ? f(b) : typeof b == "number" ? isNaN(b) ? c : e(b) : new Date(b.getTime())) && b.toString() == "Invalid Date" ? c : b) { b.setHours(0); b.setMinutes(0); b.setSeconds(0); b.setMilliseconds(0) } return this._daylightSavingAdjust(b)
        }, _daylightSavingAdjust: function(a) { if (!a) return null; a.setHours(a.getHours() > 12 ? a.getHours() + 2 : 0); return a }, _setDate: function(a, b, c)
        {
            var e = !b, f = a.selectedMonth, h = a.selectedYear; b = this._restrictMinMax(a, this._determineDate(a, b, new Date)); a.selectedDay =
a.currentDay = b.getDate(); a.drawMonth = a.selectedMonth = a.currentMonth = b.getMonth(); a.drawYear = a.selectedYear = a.currentYear = b.getFullYear(); if ((f != a.selectedMonth || h != a.selectedYear) && !c) this._notifyChange(a); this._adjustInstDate(a); if (a.input) a.input.val(e ? "" : this._formatDate(a))
        }, _getDate: function(a) { return !a.currentYear || a.input && a.input.val() == "" ? null : this._daylightSavingAdjust(new Date(a.currentYear, a.currentMonth, a.currentDay)) }, _generateHTML: function(a)
        {
            var b = new Date; b = this._daylightSavingAdjust(new Date(b.getFullYear(),
b.getMonth(), b.getDate())); var c = this._get(a, "isRTL"), e = this._get(a, "showButtonPanel"), f = this._get(a, "hideIfNoPrevNext"), h = this._get(a, "navigationAsDateFormat"), i = this._getNumberOfMonths(a), g = this._get(a, "showCurrentAtPos"), j = this._get(a, "stepMonths"), l = i[0] != 1 || i[1] != 1, u = this._daylightSavingAdjust(!a.currentDay ? new Date(9999, 9, 9) : new Date(a.currentYear, a.currentMonth, a.currentDay)), k = this._getMinMaxDate(a, "min"), o = this._getMinMaxDate(a, "max"); g = a.drawMonth - g; var m = a.drawYear; if (g < 0) { g += 12; m-- } if (o)
            {
                var n =
this._daylightSavingAdjust(new Date(o.getFullYear(), o.getMonth() - i[0] * i[1] + 1, o.getDate())); for (n = k && n < k ? k : n; this._daylightSavingAdjust(new Date(m, g, 1)) > n; ) { g--; if (g < 0) { g = 11; m-- } } 
            } a.drawMonth = g; a.drawYear = m; n = this._get(a, "prevText"); n = !h ? n : this.formatDate(n, this._daylightSavingAdjust(new Date(m, g - j, 1)), this._getFormatConfig(a)); n = this._canAdjustMonth(a, -1, m, g) ? '<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_' + y + ".datepicker._adjustDate('#" + a.id + "', -" + j + ", 'M');\" title=\"" + n + '"><span class="ui-icon ui-icon-circle-triangle-' +
(c ? "e" : "w") + '">' + n + "</span></a>" : f ? "" : '<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="' + n + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? "e" : "w") + '">' + n + "</span></a>"; var r = this._get(a, "nextText"); r = !h ? r : this.formatDate(r, this._daylightSavingAdjust(new Date(m, g + j, 1)), this._getFormatConfig(a)); f = this._canAdjustMonth(a, +1, m, g) ? '<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_' + y + ".datepicker._adjustDate('#" + a.id + "', +" + j + ", 'M');\" title=\"" + r + '"><span class="ui-icon ui-icon-circle-triangle-' +
(c ? "w" : "e") + '">' + r + "</span></a>" : f ? "" : '<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="' + r + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? "w" : "e") + '">' + r + "</span></a>"; j = this._get(a, "currentText"); r = this._get(a, "gotoCurrent") && a.currentDay ? u : b; j = !h ? j : this.formatDate(j, r, this._getFormatConfig(a)); h = !a.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_' + y + '.datepicker._hideDatepicker();">' + this._get(a,
"closeText") + "</button>" : ""; e = e ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (c ? h : "") + (this._isInRange(a, r) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_' + y + ".datepicker._gotoToday('#" + a.id + "');\">" + j + "</button>" : "") + (c ? "" : h) + "</div>" : ""; h = parseInt(this._get(a, "firstDay"), 10); h = isNaN(h) ? 0 : h; j = this._get(a, "showWeek"); r = this._get(a, "dayNames"); this._get(a, "dayNamesShort"); var s = this._get(a, "dayNamesMin"), z =
this._get(a, "monthNames"), w = this._get(a, "monthNamesShort"), p = this._get(a, "beforeShowDay"), v = this._get(a, "showOtherMonths"), H = this._get(a, "selectOtherMonths"); this._get(a, "calculateWeek"); for (var L = this._getDefaultDate(a), I = "", D = 0; D < i[0]; D++)
            {
                for (var M = "", E = 0; E < i[1]; E++)
                {
                    var N = this._daylightSavingAdjust(new Date(m, g, a.selectedDay)), t = " ui-corner-all", x = ""; if (l)
                    {
                        x += '<div class="ui-datepicker-group'; if (i[1] > 1) switch (E)
                        {
                            case 0: x += " ui-datepicker-group-first"; t = " ui-corner-" + (c ? "right" : "left"); break; case i[1] -
1: x += " ui-datepicker-group-last"; t = " ui-corner-" + (c ? "left" : "right"); break; default: x += " ui-datepicker-group-middle"; t = ""; break
                        } x += '">'
                    } x += '<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix' + t + '">' + (/all|left/.test(t) && D == 0 ? c ? f : n : "") + (/all|right/.test(t) && D == 0 ? c ? n : f : "") + this._generateMonthYearHeader(a, g, m, k, o, D > 0 || E > 0, z, w) + '</div><table class="ui-datepicker-calendar"><thead><tr>'; var B = j ? '<th class="ui-datepicker-week-col">' + this._get(a, "weekHeader") + "</th>" : ""; for (t = 0; t < 7; t++)
                    {
                        var q =
(t + h) % 7; B += "<th" + ((t + h + 6) % 7 >= 5 ? ' class="ui-datepicker-week-end"' : "") + '><span title="' + r[q] + '">' + s[q] + "</span></th>"
                    } x += B + "</tr></thead><tbody>"; B = this._getDaysInMonth(m, g); if (m == a.selectedYear && g == a.selectedMonth) a.selectedDay = Math.min(a.selectedDay, B); t = (this._getFirstDayOfMonth(m, g) - h + 7) % 7; B = l ? 6 : Math.ceil((t + B) / 7); q = this._daylightSavingAdjust(new Date(m, g, 1 - t)); for (var O = 0; O < B; O++)
                    {
                        x += "<tr>"; var P = !j ? "" : '<td class="ui-datepicker-week-col">' + this._get(a, "calculateWeek")(q) + "</td>"; for (t = 0; t < 7; t++)
                        {
                            var G =
p ? p.apply(a.input ? a.input[0] : null, [q]) : [true, ""], C = q.getMonth() != g, J = C && !H || !G[0] || k && q < k || o && q > o; P += '<td class="' + ((t + h + 6) % 7 >= 5 ? " ui-datepicker-week-end" : "") + (C ? " ui-datepicker-other-month" : "") + (q.getTime() == N.getTime() && g == a.selectedMonth && a._keyEvent || L.getTime() == q.getTime() && L.getTime() == N.getTime() ? " " + this._dayOverClass : "") + (J ? " " + this._unselectableClass + " ui-state-disabled" : "") + (C && !v ? "" : " " + G[1] + (q.getTime() == u.getTime() ? " " + this._currentClass : "") + (q.getTime() == b.getTime() ? " ui-datepicker-today" :
"")) + '"' + ((!C || v) && G[2] ? ' title="' + G[2] + '"' : "") + (J ? "" : ' onclick="DP_jQuery_' + y + ".datepicker._selectDay('#" + a.id + "'," + q.getMonth() + "," + q.getFullYear() + ', this);return false;"') + ">" + (C && !v ? "&#xa0;" : J ? '<span class="ui-state-default">' + q.getDate() + "</span>" : '<a class="ui-state-default' + (q.getTime() == b.getTime() ? " ui-state-highlight" : "") + (q.getTime() == u.getTime() ? " ui-state-active" : "") + (C ? " ui-priority-secondary" : "") + '" href="#">' + q.getDate() + "</a>") + "</td>"; q.setDate(q.getDate() + 1); q = this._daylightSavingAdjust(q)
                        } x +=
P + "</tr>"
                    } g++; if (g > 11) { g = 0; m++ } x += "</tbody></table>" + (l ? "</div>" + (i[0] > 0 && E == i[1] - 1 ? '<div class="ui-datepicker-row-break"></div>' : "") : ""); M += x
                } I += M
            } I += e + (d.browser.msie && parseInt(d.browser.version, 10) < 7 && !a.inline ? '<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>' : ""); a._keyEvent = false; return I
        }, _generateMonthYearHeader: function(a, b, c, e, f, h, i, g)
        {
            var j = this._get(a, "changeMonth"), l = this._get(a, "changeYear"), u = this._get(a, "showMonthAfterYear"), k = '<div class="ui-datepicker-title">',
o = ""; if (h || !j) o += '<span class="ui-datepicker-month">' + i[b] + "</span>"; else { i = e && e.getFullYear() == c; var m = f && f.getFullYear() == c; o += '<select class="ui-datepicker-month" onchange="DP_jQuery_' + y + ".datepicker._selectMonthYear('#" + a.id + "', this, 'M');\" onclick=\"DP_jQuery_" + y + ".datepicker._clickMonthYear('#" + a.id + "');\">"; for (var n = 0; n < 12; n++) if ((!i || n >= e.getMonth()) && (!m || n <= f.getMonth())) o += '<option value="' + n + '"' + (n == b ? ' selected="selected"' : "") + ">" + g[n] + "</option>"; o += "</select>" } u || (k += o + (h || !(j &&
l) ? "&#xa0;" : "")); if (!a.yearshtml)
            {
                a.yearshtml = ""; if (h || !l) k += '<span class="ui-datepicker-year">' + c + "</span>"; else
                {
                    g = this._get(a, "yearRange").split(":"); var r = (new Date).getFullYear(); i = function(s) { s = s.match(/c[+-].*/) ? c + parseInt(s.substring(1), 10) : s.match(/[+-].*/) ? r + parseInt(s, 10) : parseInt(s, 10); return isNaN(s) ? r : s }; b = i(g[0]); g = Math.max(b, i(g[1] || "")); b = e ? Math.max(b, e.getFullYear()) : b; g = f ? Math.min(g, f.getFullYear()) : g; for (a.yearshtml += '<select class="ui-datepicker-year" onchange="DP_jQuery_' + y + ".datepicker._selectMonthYear('#" +
a.id + "', this, 'Y');\" onclick=\"DP_jQuery_" + y + ".datepicker._clickMonthYear('#" + a.id + "');\">"; b <= g; b++) a.yearshtml += '<option value="' + b + '"' + (b == c ? ' selected="selected"' : "") + ">" + b + "</option>"; a.yearshtml += "</select>"; if (d.browser.mozilla) k += '<select class="ui-datepicker-year"><option value="' + c + '" selected="selected">' + c + "</option></select>"; else { k += a.yearshtml; a.yearshtml = null } 
                } 
            } k += this._get(a, "yearSuffix"); if (u) k += (h || !(j && l) ? "&#xa0;" : "") + o; k += "</div>"; return k
        }, _adjustInstDate: function(a, b, c)
        {
            var e =
a.drawYear + (c == "Y" ? b : 0), f = a.drawMonth + (c == "M" ? b : 0); b = Math.min(a.selectedDay, this._getDaysInMonth(e, f)) + (c == "D" ? b : 0); e = this._restrictMinMax(a, this._daylightSavingAdjust(new Date(e, f, b))); a.selectedDay = e.getDate(); a.drawMonth = a.selectedMonth = e.getMonth(); a.drawYear = a.selectedYear = e.getFullYear(); if (c == "M" || c == "Y") this._notifyChange(a)
        }, _restrictMinMax: function(a, b) { var c = this._getMinMaxDate(a, "min"); a = this._getMinMaxDate(a, "max"); b = c && b < c ? c : b; return b = a && b > a ? a : b }, _notifyChange: function(a)
        {
            var b = this._get(a,
"onChangeMonthYear"); if (b) b.apply(a.input ? a.input[0] : null, [a.selectedYear, a.selectedMonth + 1, a])
        }, _getNumberOfMonths: function(a) { a = this._get(a, "numberOfMonths"); return a == null ? [1, 1] : typeof a == "number" ? [1, a] : a }, _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, e)
        {
            var f = this._getNumberOfMonths(a);
            c = this._daylightSavingAdjust(new Date(c, e + (b < 0 ? b : f[0] * f[1]), 1)); b < 0 && c.setDate(this._getDaysInMonth(c.getFullYear(), c.getMonth())); return this._isInRange(a, c)
        }, _isInRange: function(a, b) { var c = this._getMinMaxDate(a, "min"); a = this._getMinMaxDate(a, "max"); return (!c || b.getTime() >= c.getTime()) && (!a || b.getTime() <= a.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, e) { if (!b) { a.currentDay = a.selectedDay; a.currentMonth = a.selectedMonth; a.currentYear = a.selectedYear } b = b ? typeof b == "object" ? b : this._daylightSavingAdjust(new Date(e, c, b)) : this._daylightSavingAdjust(new Date(a.currentYear, a.currentMonth, a.currentDay)); return this.formatDate(this._get(a, "dateFormat"), b, this._getFormatConfig(a)) } 
        }); d.fn.datepicker =
function(a)
{
    if (!this.length) return this; if (!d.datepicker.initialized) { d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv); d.datepicker.initialized = true } var b = Array.prototype.slice.call(arguments, 1); if (typeof a == "string" && (a == "isDisabled" || a == "getDate" || a == "widget")) return d.datepicker["_" + a + "Datepicker"].apply(d.datepicker, [this[0]].concat(b)); if (a == "option" && arguments.length == 2 && typeof arguments[1] == "string") return d.datepicker["_" + a + "Datepicker"].apply(d.datepicker,
[this[0]].concat(b)); return this.each(function() { typeof a == "string" ? d.datepicker["_" + a + "Datepicker"].apply(d.datepicker, [this].concat(b)) : d.datepicker._attachDatepicker(this, a) })
}; d.datepicker = new K; d.datepicker.initialized = false; d.datepicker.uuid = (new Date).getTime(); d.datepicker.version = "1.8.12"; window["DP_jQuery_" + y] = d
    })(jQuery);
    ;

///////////////////////////////////// jQuery UI <end>




//More formats: http://code.google.com/p/jquery-formatcurrency/downloads/detail?name=jquery.formatCurrency-1.4.0.i18n.zip&can=2&q=


//  This file is part of the jQuery formatCurrency Plugin.
//
//    The jQuery formatCurrency Plugin is free software: you can redistribute it
//    and/or modify it under the terms of the GNU General Public License as published 
//    by the Free Software Foundation, either version 3 of the License, or
//    (at your option) any later version.

//    The jQuery formatCurrency Plugin is distributed in the hope that it will
//    be useful, but WITHOUT ANY WARRANTY; without even the implied warranty 
//    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License along with 
//    the jQuery formatCurrency Plugin.  If not, see <http://www.gnu.org/licenses/>.

(function($)
{

    $.formatCurrency.regions['da-DK'] = {
        symbol: '',
        positiveFormat: '%s %n',
        negativeFormat: '%s -%n',
        decimalSymbol: ',',
        digitGroupSymbol: '.',
        groupDigits: true
    };

})(jQuery);

//TODO: This should really be minified
/*
    http://www.JSON.org/json2.js
    2011-02-23

    Public Domain.

    NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.

    See http://www.JSON.org/js.html


    This code should be minified before deployment.
    See http://javascript.crockford.com/jsmin.html

    USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO
    NOT CONTROL.


    This file creates a global JSON object containing two methods: stringify
    and parse.

        JSON.stringify(value, replacer, space)
            value       any JavaScript value, usually an object or array.

            replacer    an optional parameter that determines how object
                        values are stringified for objects. It can be a
                        function or an array of strings.

            space       an optional parameter that specifies the indentation
                        of nested structures. If it is omitted, the text will
                        be packed without extra whitespace. If it is a number,
                        it will specify the number of spaces to indent at each
                        level. If it is a string (such as '\t' or '&nbsp;'),
                        it contains the characters used to indent at each level.

            This method produces a JSON text from a JavaScript value.

            When an object value is found, if the object contains a toJSON
            method, its toJSON method will be called and the result will be
            stringified. A toJSON method does not serialize: it returns the
            value represented by the name/value pair that should be serialized,
            or undefined if nothing should be serialized. The toJSON method
            will be passed the key associated with the value, and this will be
            bound to the value

            For example, this would serialize Dates as ISO strings.

                Date.prototype.toJSON = function (key) {
                    function f(n) {
                        // Format integers to have at least two digits.
                        return n < 10 ? '0' + n : n;
                    }

                    return this.getUTCFullYear()   + '-' +
                         f(this.getUTCMonth() + 1) + '-' +
                         f(this.getUTCDate())      + 'T' +
                         f(this.getUTCHours())     + ':' +
                         f(this.getUTCMinutes())   + ':' +
                         f(this.getUTCSeconds())   + 'Z';
                };

            You can provide an optional replacer method. It will be passed the
            key and value of each member, with this bound to the containing
            object. The value that is returned from your method will be
            serialized. If your method returns undefined, then the member will
            be excluded from the serialization.

            If the replacer parameter is an array of strings, then it will be
            used to select the members to be serialized. It filters the results
            such that only members with keys listed in the replacer array are
            stringified.

            Values that do not have JSON representations, such as undefined or
            functions, will not be serialized. Such values in objects will be
            dropped; in arrays they will be replaced with null. You can use
            a replacer function to replace those with JSON values.
            JSON.stringify(undefined) returns undefined.

            The optional space parameter produces a stringification of the
            value that is filled with line breaks and indentation to make it
            easier to read.

            If the space parameter is a non-empty string, then that string will
            be used for indentation. If the space parameter is a number, then
            the indentation will be that many spaces.

            Example:

            text = JSON.stringify(['e', {pluribus: 'unum'}]);
            // text is '["e",{"pluribus":"unum"}]'


            text = JSON.stringify(['e', {pluribus: 'unum'}], null, '\t');
            // text is '[\n\t"e",\n\t{\n\t\t"pluribus": "unum"\n\t}\n]'

            text = JSON.stringify([new Date()], function (key, value) {
                return this[key] instanceof Date ?
                    'Date(' + this[key] + ')' : value;
            });
            // text is '["Date(---current time---)"]'


        JSON.parse(text, reviver)
            This method parses a JSON text to produce an object or array.
            It can throw a SyntaxError exception.

            The optional reviver parameter is a function that can filter and
            transform the results. It receives each of the keys and values,
            and its return value is used instead of the original value.
            If it returns what it received, then the structure is not modified.
            If it returns undefined then the member is deleted.

            Example:

            // Parse the text. Values that look like ISO date strings will
            // be converted to Date objects.

            myData = JSON.parse(text, function (key, value) {
                var a;
                if (typeof value === 'string') {
                    a =
/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value);
                    if (a) {
                        return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4],
                            +a[5], +a[6]));
                    }
                }
                return value;
            });

            myData = JSON.parse('["Date(09/09/2001)"]', function (key, value) {
                var d;
                if (typeof value === 'string' &&
                        value.slice(0, 5) === 'Date(' &&
                        value.slice(-1) === ')') {
                    d = new Date(value.slice(5, -1));
                    if (d) {
                        return d;
                    }
                }
                return value;
            });


    This is a reference implementation. You are free to copy, modify, or
    redistribute.
*/

/*jslint evil: true, strict: false, regexp: false */

/*members "", "\b", "\t", "\n", "\f", "\r", "\"", JSON, "\\", apply,
    call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours,
    getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join,
    lastIndex, length, parse, prototype, push, replace, slice, stringify,
    test, toJSON, toString, valueOf
*/


// Create a JSON object only if one does not already exist. We create the
// methods in a closure to avoid creating global variables.

var JSON;
if (!JSON) {
    JSON = {};
}

(function () {
    "use strict";

    function f(n) {
        // Format integers to have at least two digits.
        return n < 10 ? '0' + n : n;
    }

    if (typeof Date.prototype.toJSON !== 'function') {

        Date.prototype.toJSON = function (key) {

            return isFinite(this.valueOf()) ?
                this.getUTCFullYear()     + '-' +
                f(this.getUTCMonth() + 1) + '-' +
                f(this.getUTCDate())      + 'T' +
                f(this.getUTCHours())     + ':' +
                f(this.getUTCMinutes())   + ':' +
                f(this.getUTCSeconds())   + 'Z' : null;
        };

        String.prototype.toJSON      =
            Number.prototype.toJSON  =
            Boolean.prototype.toJSON = function (key) {
                return this.valueOf();
            };
    }

    var cx = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
        escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
        gap,
        indent,
        meta = {    // table of character substitutions
            '\b': '\\b',
            '\t': '\\t',
            '\n': '\\n',
            '\f': '\\f',
            '\r': '\\r',
            '"' : '\\"',
            '\\': '\\\\'
        },
        rep;


    function quote(string) {

// If the string contains no control characters, no quote characters, and no
// backslash characters, then we can safely slap some quotes around it.
// Otherwise we must also replace the offending characters with safe escape
// sequences.

        escapable.lastIndex = 0;
        return escapable.test(string) ? '"' + string.replace(escapable, function (a) {
            var c = meta[a];
            return typeof c === 'string' ? c :
                '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
        }) + '"' : '"' + string + '"';
    }


    function str(key, holder) {

// Produce a string from holder[key].

        var i,          // The loop counter.
            k,          // The member key.
            v,          // The member value.
            length,
            mind = gap,
            partial,
            value = holder[key];

// If the value has a toJSON method, call it to obtain a replacement value.

        if (value && typeof value === 'object' &&
                typeof value.toJSON === 'function') {
            value = value.toJSON(key);
        }

// If we were called with a replacer function, then call the replacer to
// obtain a replacement value.

        if (typeof rep === 'function') {
            value = rep.call(holder, key, value);
        }

// What happens next depends on the value's type.

        switch (typeof value) {
        case 'string':
            return quote(value);

        case 'number':

// JSON numbers must be finite. Encode non-finite numbers as null.

            return isFinite(value) ? String(value) : 'null';

        case 'boolean':
        case 'null':

// If the value is a boolean or null, convert it to a string. Note:
// typeof null does not produce 'null'. The case is included here in
// the remote chance that this gets fixed someday.

            return String(value);

// If the type is 'object', we might be dealing with an object or an array or
// null.

        case 'object':

// Due to a specification blunder in ECMAScript, typeof null is 'object',
// so watch out for that case.

            if (!value) {
                return 'null';
            }

// Make an array to hold the partial results of stringifying this object value.

            gap += indent;
            partial = [];

// Is the value an array?

            if (Object.prototype.toString.apply(value) === '[object Array]') {

// The value is an array. Stringify every element. Use null as a placeholder
// for non-JSON values.

                length = value.length;
                for (i = 0; i < length; i += 1) {
                    partial[i] = str(i, value) || 'null';
                }

// Join all of the elements together, separated with commas, and wrap them in
// brackets.

                v = partial.length === 0 ? '[]' : gap ?
                    '[\n' + gap + partial.join(',\n' + gap) + '\n' + mind + ']' :
                    '[' + partial.join(',') + ']';
                gap = mind;
                return v;
            }

// If the replacer is an array, use it to select the members to be stringified.

            if (rep && typeof rep === 'object') {
                length = rep.length;
                for (i = 0; i < length; i += 1) {
                    if (typeof rep[i] === 'string') {
                        k = rep[i];
                        v = str(k, value);
                        if (v) {
                            partial.push(quote(k) + (gap ? ': ' : ':') + v);
                        }
                    }
                }
            } else {

// Otherwise, iterate through all of the keys in the object.

                for (k in value) {
                    if (Object.prototype.hasOwnProperty.call(value, k)) {
                        v = str(k, value);
                        if (v) {
                            partial.push(quote(k) + (gap ? ': ' : ':') + v);
                        }
                    }
                }
            }

// Join all of the member texts together, separated with commas,
// and wrap them in braces.

            v = partial.length === 0 ? '{}' : gap ?
                '{\n' + gap + partial.join(',\n' + gap) + '\n' + mind + '}' :
                '{' + partial.join(',') + '}';
            gap = mind;
            return v;
        }
    }

// If the JSON object does not yet have a stringify method, give it one.

    if (typeof JSON.stringify !== 'function') {
        JSON.stringify = function (value, replacer, space) {

// The stringify method takes a value and an optional replacer, and an optional
// space parameter, and returns a JSON text. The replacer can be a function
// that can replace values, or an array of strings that will select the keys.
// A default replacer method can be provided. Use of the space parameter can
// produce text that is more easily readable.

            var i;
            gap = '';
            indent = '';

// If the space parameter is a number, make an indent string containing that
// many spaces.

            if (typeof space === 'number') {
                for (i = 0; i < space; i += 1) {
                    indent += ' ';
                }

// If the space parameter is a string, it will be used as the indent string.

            } else if (typeof space === 'string') {
                indent = space;
            }

// If there is a replacer, it must be a function or an array.
// Otherwise, throw an error.

            rep = replacer;
            if (replacer && typeof replacer !== 'function' &&
                    (typeof replacer !== 'object' ||
                    typeof replacer.length !== 'number')) {
                throw new Error('JSON.stringify');
            }

// Make a fake root object containing our value under the key of ''.
// Return the result of stringifying the value.

            return str('', {'': value});
        };
    }


// If the JSON object does not yet have a parse method, give it one.

    if (typeof JSON.parse !== 'function') {
        JSON.parse = function (text, reviver) {

// The parse method takes a text and an optional reviver function, and returns
// a JavaScript value if the text is a valid JSON text.

            var j;

            function walk(holder, key) {

// The walk method is used to recursively walk the resulting structure so
// that modifications can be made.

                var k, v, value = holder[key];
                if (value && typeof value === 'object') {
                    for (k in value) {
                        if (Object.prototype.hasOwnProperty.call(value, k)) {
                            v = walk(value, k);
                            if (v !== undefined) {
                                value[k] = v;
                            } else {
                                delete value[k];
                            }
                        }
                    }
                }
                return reviver.call(holder, key, value);
            }


// Parsing happens in four stages. In the first stage, we replace certain
// Unicode characters with escape sequences. JavaScript handles many characters
// incorrectly, either silently deleting them, or treating them as line endings.

            text = String(text);
            cx.lastIndex = 0;
            if (cx.test(text)) {
                text = text.replace(cx, function (a) {
                    return '\\u' +
                        ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
                });
            }

// In the second stage, we run the text against regular expressions that look
// for non-JSON patterns. We are especially concerned with '()' and 'new'
// because they can cause invocation, and '=' because it can cause mutation.
// But just to be safe, we want to reject all unexpected forms.

// We split the second stage into 4 regexp operations in order to work around
// crippling inefficiencies in IE's and Safari's regexp engines. First we
// replace the JSON backslash pairs with '@' (a non-JSON character). Second, we
// replace all simple value tokens with ']' characters. Third, we delete all
// open brackets that follow a colon or comma or that begin the text. Finally,
// we look to see that the remaining characters are only whitespace or ']' or
// ',' or ':' or '{' or '}'. If that is so, then the text is safe for eval.

            if (/^[\],:{}\s]*$/
                    .test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@')
                        .replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']')
                        .replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {

// In the third stage we use the eval function to compile the text into a
// JavaScript structure. The '{' operator is subject to a syntactic ambiguity
// in JavaScript: it can begin a block or an object literal. We wrap the text
// in parens to eliminate the ambiguity.

                j = eval('(' + text + ')');

// In the optional fourth stage, we recursively walk the new structure, passing
// each name/value pair to a reviver function for possible transformation.

                return typeof reviver === 'function' ?
                    walk({'': j}, '') : j;
            }

// If the text is not JSON parseable, then a SyntaxError is thrown.

            throw new SyntaxError('JSON.parse');
        };
    }
} ());


// ------------------------------------------------------------ jQuery Cycle 2.88 ------------------------------------------------------------
/*
* jQuery Cycle Plugin (core engine)
* Examples and documentation at: http://jquery.malsup.com/cycle/
* Copyright (c) 2007-2010 M. Alsup
* Version: 2.88 (08-JUN-2010)
* Dual licensed under the MIT and GPL licenses.
* http://jquery.malsup.com/license.html
* Requires: jQuery v1.2.6 or later
*/
(function($) { var ver = "2.88"; if ($.support == undefined) { $.support = { opacity: !($.browser.msie) }; } function debug(s) { if ($.fn.cycle.debug) { log(s); } } function log() { if (window.console && window.console.log) { window.console.log("[cycle] " + Array.prototype.join.call(arguments, " ")); } } $.fn.cycle = function(options, arg2) { var o = { s: this.selector, c: this.context }; if (this.length === 0 && options != "stop") { if (!$.isReady && o.s) { log("DOM not ready, queuing slideshow"); $(function() { $(o.s, o.c).cycle(options, arg2); }); return this; } log("terminating; zero elements found by selector" + ($.isReady ? "" : " (DOM not ready)")); return this; } return this.each(function() { var opts = handleArguments(this, options, arg2); if (opts === false) { return; } opts.updateActivePagerLink = opts.updateActivePagerLink || $.fn.cycle.updateActivePagerLink; if (this.cycleTimeout) { clearTimeout(this.cycleTimeout); } this.cycleTimeout = this.cyclePause = 0; var $cont = $(this); var $slides = opts.slideExpr ? $(opts.slideExpr, this) : $cont.children(); var els = $slides.get(); if (els.length < 2) { log("terminating; too few slides: " + els.length); return; } var opts2 = buildOptions($cont, $slides, els, opts, o); if (opts2 === false) { return; } var startTime = opts2.continuous ? 10 : getTimeout(els[opts2.currSlide], els[opts2.nextSlide], opts2, !opts2.rev); if (startTime) { startTime += (opts2.delay || 0); if (startTime < 10) { startTime = 10; } debug("first timeout: " + startTime); this.cycleTimeout = setTimeout(function() { go(els, opts2, 0, (!opts2.rev && !opts.backwards)); }, startTime); } }); }; function handleArguments(cont, options, arg2) { if (cont.cycleStop == undefined) { cont.cycleStop = 0; } if (options === undefined || options === null) { options = {}; } if (options.constructor == String) { switch (options) { case "destroy": case "stop": var opts = $(cont).data("cycle.opts"); if (!opts) { return false; } cont.cycleStop++; if (cont.cycleTimeout) { clearTimeout(cont.cycleTimeout); } cont.cycleTimeout = 0; $(cont).removeData("cycle.opts"); if (options == "destroy") { destroy(opts); } return false; case "toggle": cont.cyclePause = (cont.cyclePause === 1) ? 0 : 1; checkInstantResume(cont.cyclePause, arg2, cont); return false; case "pause": cont.cyclePause = 1; return false; case "resume": cont.cyclePause = 0; checkInstantResume(false, arg2, cont); return false; case "prev": case "next": var opts = $(cont).data("cycle.opts"); if (!opts) { log('options not found, "prev/next" ignored'); return false; } $.fn.cycle[options](opts); return false; default: options = { fx: options }; } return options; } else { if (options.constructor == Number) { var num = options; options = $(cont).data("cycle.opts"); if (!options) { log("options not found, can not advance slide"); return false; } if (num < 0 || num >= options.elements.length) { log("invalid slide index: " + num); return false; } options.nextSlide = num; if (cont.cycleTimeout) { clearTimeout(cont.cycleTimeout); cont.cycleTimeout = 0; } if (typeof arg2 == "string") { options.oneTimeFx = arg2; } go(options.elements, options, 1, num >= options.currSlide); return false; } } return options; function checkInstantResume(isPaused, arg2, cont) { if (!isPaused && arg2 === true) { var options = $(cont).data("cycle.opts"); if (!options) { log("options not found, can not resume"); return false; } if (cont.cycleTimeout) { clearTimeout(cont.cycleTimeout); cont.cycleTimeout = 0; } go(options.elements, options, 1, (!opts.rev && !opts.backwards)); } } } function removeFilter(el, opts) { if (!$.support.opacity && opts.cleartype && el.style.filter) { try { el.style.removeAttribute("filter"); } catch (smother) { } } } function destroy(opts) { if (opts.next) { $(opts.next).unbind(opts.prevNextEvent); } if (opts.prev) { $(opts.prev).unbind(opts.prevNextEvent); } if (opts.pager || opts.pagerAnchorBuilder) { $.each(opts.pagerAnchors || [], function() { this.unbind().remove(); }); } opts.pagerAnchors = null; if (opts.destroy) { opts.destroy(opts); } } function buildOptions($cont, $slides, els, options, o) { var opts = $.extend({}, $.fn.cycle.defaults, options || {}, $.metadata ? $cont.metadata() : $.meta ? $cont.data() : {}); if (opts.autostop) { opts.countdown = opts.autostopCount || els.length; } var cont = $cont[0]; $cont.data("cycle.opts", opts); opts.$cont = $cont; opts.stopCount = cont.cycleStop; opts.elements = els; opts.before = opts.before ? [opts.before] : []; opts.after = opts.after ? [opts.after] : []; opts.after.unshift(function() { opts.busy = 0; }); if (!$.support.opacity && opts.cleartype) { opts.after.push(function() { removeFilter(this, opts); }); } if (opts.continuous) { opts.after.push(function() { go(els, opts, 0, (!opts.rev && !opts.backwards)); }); } saveOriginalOpts(opts); if (!$.support.opacity && opts.cleartype && !opts.cleartypeNoBg) { clearTypeFix($slides); } if ($cont.css("position") == "static") { $cont.css("position", "relative"); } if (opts.width) { $cont.width(opts.width); } if (opts.height && opts.height != "auto") { $cont.height(opts.height); } if (opts.startingSlide) { opts.startingSlide = parseInt(opts.startingSlide); } else { if (opts.backwards) { opts.startingSlide = els.length - 1; } } if (opts.random) { opts.randomMap = []; for (var i = 0; i < els.length; i++) { opts.randomMap.push(i); } opts.randomMap.sort(function(a, b) { return Math.random() - 0.5; }); opts.randomIndex = 1; opts.startingSlide = opts.randomMap[1]; } else { if (opts.startingSlide >= els.length) { opts.startingSlide = 0; } } opts.currSlide = opts.startingSlide || 0; var first = opts.startingSlide; $slides.css({ position: "absolute", top: 0, left: 0 }).hide().each(function(i) { var z; if (opts.backwards) { z = first ? i <= first ? els.length + (i - first) : first - i : els.length - i; } else { z = first ? i >= first ? els.length - (i - first) : first - i : els.length - i; } $(this).css("z-index", z); }); $(els[first]).css("opacity", 1).show(); removeFilter(els[first], opts); if (opts.fit && opts.width) { $slides.width(opts.width); } if (opts.fit && opts.height && opts.height != "auto") { $slides.height(opts.height); } var reshape = opts.containerResize && !$cont.innerHeight(); if (reshape) { var maxw = 0, maxh = 0; for (var j = 0; j < els.length; j++) { var $e = $(els[j]), e = $e[0], w = $e.outerWidth(), h = $e.outerHeight(); if (!w) { w = e.offsetWidth || e.width || $e.attr("width"); } if (!h) { h = e.offsetHeight || e.height || $e.attr("height"); } maxw = w > maxw ? w : maxw; maxh = h > maxh ? h : maxh; } if (maxw > 0 && maxh > 0) { $cont.css({ width: maxw + "px", height: maxh + "px" }); } } if (opts.pause) { $cont.hover(function() { this.cyclePause++; }, function() { this.cyclePause--; }); } if (supportMultiTransitions(opts) === false) { return false; } var requeue = false; options.requeueAttempts = options.requeueAttempts || 0; $slides.each(function() { var $el = $(this); this.cycleH = (opts.fit && opts.height) ? opts.height : ($el.height() || this.offsetHeight || this.height || $el.attr("height") || 0); this.cycleW = (opts.fit && opts.width) ? opts.width : ($el.width() || this.offsetWidth || this.width || $el.attr("width") || 0); if ($el.is("img")) { var loadingIE = ($.browser.msie && this.cycleW == 28 && this.cycleH == 30 && !this.complete); var loadingFF = ($.browser.mozilla && this.cycleW == 34 && this.cycleH == 19 && !this.complete); var loadingOp = ($.browser.opera && ((this.cycleW == 42 && this.cycleH == 19) || (this.cycleW == 37 && this.cycleH == 17)) && !this.complete); var loadingOther = (this.cycleH == 0 && this.cycleW == 0 && !this.complete); if (loadingIE || loadingFF || loadingOp || loadingOther) { if (o.s && opts.requeueOnImageNotLoaded && ++options.requeueAttempts < 100) { log(options.requeueAttempts, " - img slide not loaded, requeuing slideshow: ", this.src, this.cycleW, this.cycleH); setTimeout(function() { $(o.s, o.c).cycle(options); }, opts.requeueTimeout); requeue = true; return false; } else { log("could not determine size of image: " + this.src, this.cycleW, this.cycleH); } } } return true; }); if (requeue) { return false; } opts.cssBefore = opts.cssBefore || {}; opts.animIn = opts.animIn || {}; opts.animOut = opts.animOut || {}; $slides.not(":eq(" + first + ")").css(opts.cssBefore); if (opts.cssFirst) { $($slides[first]).css(opts.cssFirst); } if (opts.timeout) { opts.timeout = parseInt(opts.timeout); if (opts.speed.constructor == String) { opts.speed = $.fx.speeds[opts.speed] || parseInt(opts.speed); } if (!opts.sync) { opts.speed = opts.speed / 2; } var buffer = opts.fx == "shuffle" ? 500 : 250; while ((opts.timeout - opts.speed) < buffer) { opts.timeout += opts.speed; } } if (opts.easing) { opts.easeIn = opts.easeOut = opts.easing; } if (!opts.speedIn) { opts.speedIn = opts.speed; } if (!opts.speedOut) { opts.speedOut = opts.speed; } opts.slideCount = els.length; opts.currSlide = opts.lastSlide = first; if (opts.random) { if (++opts.randomIndex == els.length) { opts.randomIndex = 0; } opts.nextSlide = opts.randomMap[opts.randomIndex]; } else { if (opts.backwards) { opts.nextSlide = opts.startingSlide == 0 ? (els.length - 1) : opts.startingSlide - 1; } else { opts.nextSlide = opts.startingSlide >= (els.length - 1) ? 0 : opts.startingSlide + 1; } } if (!opts.multiFx) { var init = $.fn.cycle.transitions[opts.fx]; if ($.isFunction(init)) { init($cont, $slides, opts); } else { if (opts.fx != "custom" && !opts.multiFx) { log("unknown transition: " + opts.fx, "; slideshow terminating"); return false; } } } var e0 = $slides[first]; if (opts.before.length) { opts.before[0].apply(e0, [e0, e0, opts, true]); } if (opts.after.length > 1) { opts.after[1].apply(e0, [e0, e0, opts, true]); } if (opts.next) { $(opts.next).bind(opts.prevNextEvent, function() { return advance(opts, opts.rev ? -1 : 1); }); } if (opts.prev) { $(opts.prev).bind(opts.prevNextEvent, function() { return advance(opts, opts.rev ? 1 : -1); }); } if (opts.pager || opts.pagerAnchorBuilder) { buildPager(els, opts); } exposeAddSlide(opts, els); return opts; } function saveOriginalOpts(opts) { opts.original = { before: [], after: [] }; opts.original.cssBefore = $.extend({}, opts.cssBefore); opts.original.cssAfter = $.extend({}, opts.cssAfter); opts.original.animIn = $.extend({}, opts.animIn); opts.original.animOut = $.extend({}, opts.animOut); $.each(opts.before, function() { opts.original.before.push(this); }); $.each(opts.after, function() { opts.original.after.push(this); }); } function supportMultiTransitions(opts) { var i, tx, txs = $.fn.cycle.transitions; if (opts.fx.indexOf(",") > 0) { opts.multiFx = true; opts.fxs = opts.fx.replace(/\s*/g, "").split(","); for (i = 0; i < opts.fxs.length; i++) { var fx = opts.fxs[i]; tx = txs[fx]; if (!tx || !txs.hasOwnProperty(fx) || !$.isFunction(tx)) { log("discarding unknown transition: ", fx); opts.fxs.splice(i, 1); i--; } } if (!opts.fxs.length) { log("No valid transitions named; slideshow terminating."); return false; } } else { if (opts.fx == "all") { opts.multiFx = true; opts.fxs = []; for (p in txs) { tx = txs[p]; if (txs.hasOwnProperty(p) && $.isFunction(tx)) { opts.fxs.push(p); } } } } if (opts.multiFx && opts.randomizeEffects) { var r1 = Math.floor(Math.random() * 20) + 30; for (i = 0; i < r1; i++) { var r2 = Math.floor(Math.random() * opts.fxs.length); opts.fxs.push(opts.fxs.splice(r2, 1)[0]); } debug("randomized fx sequence: ", opts.fxs); } return true; } function exposeAddSlide(opts, els) { opts.addSlide = function(newSlide, prepend) { var $s = $(newSlide), s = $s[0]; if (!opts.autostopCount) { opts.countdown++; } els[prepend ? "unshift" : "push"](s); if (opts.els) { opts.els[prepend ? "unshift" : "push"](s); } opts.slideCount = els.length; $s.css("position", "absolute"); $s[prepend ? "prependTo" : "appendTo"](opts.$cont); if (prepend) { opts.currSlide++; opts.nextSlide++; } if (!$.support.opacity && opts.cleartype && !opts.cleartypeNoBg) { clearTypeFix($s); } if (opts.fit && opts.width) { $s.width(opts.width); } if (opts.fit && opts.height && opts.height != "auto") { $slides.height(opts.height); } s.cycleH = (opts.fit && opts.height) ? opts.height : $s.height(); s.cycleW = (opts.fit && opts.width) ? opts.width : $s.width(); $s.css(opts.cssBefore); if (opts.pager || opts.pagerAnchorBuilder) { $.fn.cycle.createPagerAnchor(els.length - 1, s, $(opts.pager), els, opts); } if ($.isFunction(opts.onAddSlide)) { opts.onAddSlide($s); } else { $s.hide(); } }; } $.fn.cycle.resetState = function(opts, fx) { fx = fx || opts.fx; opts.before = []; opts.after = []; opts.cssBefore = $.extend({}, opts.original.cssBefore); opts.cssAfter = $.extend({}, opts.original.cssAfter); opts.animIn = $.extend({}, opts.original.animIn); opts.animOut = $.extend({}, opts.original.animOut); opts.fxFn = null; $.each(opts.original.before, function() { opts.before.push(this); }); $.each(opts.original.after, function() { opts.after.push(this); }); var init = $.fn.cycle.transitions[fx]; if ($.isFunction(init)) { init(opts.$cont, $(opts.elements), opts); } }; function go(els, opts, manual, fwd) { if (manual && opts.busy && opts.manualTrump) { debug("manualTrump in go(), stopping active transition"); $(els).stop(true, true); opts.busy = false; } if (opts.busy) { debug("transition active, ignoring new tx request"); return; } var p = opts.$cont[0], curr = els[opts.currSlide], next = els[opts.nextSlide]; if (p.cycleStop != opts.stopCount || p.cycleTimeout === 0 && !manual) { return; } if (!manual && !p.cyclePause && !opts.bounce && ((opts.autostop && (--opts.countdown <= 0)) || (opts.nowrap && !opts.random && opts.nextSlide < opts.currSlide))) { if (opts.end) { opts.end(opts); } return; } var changed = false; if ((manual || !p.cyclePause) && (opts.nextSlide != opts.currSlide)) { changed = true; var fx = opts.fx; curr.cycleH = curr.cycleH || $(curr).height(); curr.cycleW = curr.cycleW || $(curr).width(); next.cycleH = next.cycleH || $(next).height(); next.cycleW = next.cycleW || $(next).width(); if (opts.multiFx) { if (opts.lastFx == undefined || ++opts.lastFx >= opts.fxs.length) { opts.lastFx = 0; } fx = opts.fxs[opts.lastFx]; opts.currFx = fx; } if (opts.oneTimeFx) { fx = opts.oneTimeFx; opts.oneTimeFx = null; } $.fn.cycle.resetState(opts, fx); if (opts.before.length) { $.each(opts.before, function(i, o) { if (p.cycleStop != opts.stopCount) { return; } o.apply(next, [curr, next, opts, fwd]); }); } var after = function() { $.each(opts.after, function(i, o) { if (p.cycleStop != opts.stopCount) { return; } o.apply(next, [curr, next, opts, fwd]); }); }; debug("tx firing; currSlide: " + opts.currSlide + "; nextSlide: " + opts.nextSlide); opts.busy = 1; if (opts.fxFn) { opts.fxFn(curr, next, opts, after, fwd, manual && opts.fastOnEvent); } else { if ($.isFunction($.fn.cycle[opts.fx])) { $.fn.cycle[opts.fx](curr, next, opts, after, fwd, manual && opts.fastOnEvent); } else { $.fn.cycle.custom(curr, next, opts, after, fwd, manual && opts.fastOnEvent); } } } if (changed || opts.nextSlide == opts.currSlide) { opts.lastSlide = opts.currSlide; if (opts.random) { opts.currSlide = opts.nextSlide; if (++opts.randomIndex == els.length) { opts.randomIndex = 0; } opts.nextSlide = opts.randomMap[opts.randomIndex]; if (opts.nextSlide == opts.currSlide) { opts.nextSlide = (opts.currSlide == opts.slideCount - 1) ? 0 : opts.currSlide + 1; } } else { if (opts.backwards) { var roll = (opts.nextSlide - 1) < 0; if (roll && opts.bounce) { opts.backwards = !opts.backwards; opts.nextSlide = 1; opts.currSlide = 0; } else { opts.nextSlide = roll ? (els.length - 1) : opts.nextSlide - 1; opts.currSlide = roll ? 0 : opts.nextSlide + 1; } } else { var roll = (opts.nextSlide + 1) == els.length; if (roll && opts.bounce) { opts.backwards = !opts.backwards; opts.nextSlide = els.length - 2; opts.currSlide = els.length - 1; } else { opts.nextSlide = roll ? 0 : opts.nextSlide + 1; opts.currSlide = roll ? els.length - 1 : opts.nextSlide - 1; } } } } if (changed && opts.pager) { opts.updateActivePagerLink(opts.pager, opts.currSlide, opts.activePagerClass); } var ms = 0; if (opts.timeout && !opts.continuous) { ms = getTimeout(els[opts.currSlide], els[opts.nextSlide], opts, fwd); } else { if (opts.continuous && p.cyclePause) { ms = 10; } } if (ms > 0) { p.cycleTimeout = setTimeout(function() { go(els, opts, 0, (!opts.rev && !opts.backwards)); }, ms); } } $.fn.cycle.updateActivePagerLink = function(pager, currSlide, clsName) { $(pager).each(function() { $(this).children().removeClass(clsName).eq(currSlide).addClass(clsName); }); }; function getTimeout(curr, next, opts, fwd) { if (opts.timeoutFn) { var t = opts.timeoutFn.call(curr, curr, next, opts, fwd); while ((t - opts.speed) < 250) { t += opts.speed; } debug("calculated timeout: " + t + "; speed: " + opts.speed); if (t !== false) { return t; } } return opts.timeout; } $.fn.cycle.next = function(opts) { advance(opts, opts.rev ? -1 : 1); }; $.fn.cycle.prev = function(opts) { advance(opts, opts.rev ? 1 : -1); }; function advance(opts, val) { var els = opts.elements; var p = opts.$cont[0], timeout = p.cycleTimeout; if (timeout) { clearTimeout(timeout); p.cycleTimeout = 0; } if (opts.random && val < 0) { opts.randomIndex--; if (--opts.randomIndex == -2) { opts.randomIndex = els.length - 2; } else { if (opts.randomIndex == -1) { opts.randomIndex = els.length - 1; } } opts.nextSlide = opts.randomMap[opts.randomIndex]; } else { if (opts.random) { opts.nextSlide = opts.randomMap[opts.randomIndex]; } else { opts.nextSlide = opts.currSlide + val; if (opts.nextSlide < 0) { if (opts.nowrap) { return false; } opts.nextSlide = els.length - 1; } else { if (opts.nextSlide >= els.length) { if (opts.nowrap) { return false; } opts.nextSlide = 0; } } } } var cb = opts.onPrevNextEvent || opts.prevNextClick; if ($.isFunction(cb)) { cb(val > 0, opts.nextSlide, els[opts.nextSlide]); } go(els, opts, 1, val >= 0); return false; } function buildPager(els, opts) { var $p = $(opts.pager); $.each(els, function(i, o) { $.fn.cycle.createPagerAnchor(i, o, $p, els, opts); }); opts.updateActivePagerLink(opts.pager, opts.startingSlide, opts.activePagerClass); } $.fn.cycle.createPagerAnchor = function(i, el, $p, els, opts) { var a; if ($.isFunction(opts.pagerAnchorBuilder)) { a = opts.pagerAnchorBuilder(i, el); debug("pagerAnchorBuilder(" + i + ", el) returned: " + a); } else { a = '<a href="#">' + (i + 1) + "</a>"; } if (!a) { return; } var $a = $(a); if ($a.parents("body").length === 0) { var arr = []; if ($p.length > 1) { $p.each(function() { var $clone = $a.clone(true); $(this).append($clone); arr.push($clone[0]); }); $a = $(arr); } else { $a.appendTo($p); } } opts.pagerAnchors = opts.pagerAnchors || []; opts.pagerAnchors.push($a); $a.bind(opts.pagerEvent, function(e) { e.preventDefault(); opts.nextSlide = i; var p = opts.$cont[0], timeout = p.cycleTimeout; if (timeout) { clearTimeout(timeout); p.cycleTimeout = 0; } var cb = opts.onPagerEvent || opts.pagerClick; if ($.isFunction(cb)) { cb(opts.nextSlide, els[opts.nextSlide]); } go(els, opts, 1, opts.currSlide < i); }); if (!/^click/.test(opts.pagerEvent) && !opts.allowPagerClickBubble) { $a.bind("click.cycle", function() { return false; }); } if (opts.pauseOnPagerHover) { $a.hover(function() { opts.$cont[0].cyclePause++; }, function() { opts.$cont[0].cyclePause--; }); } }; $.fn.cycle.hopsFromLast = function(opts, fwd) { var hops, l = opts.lastSlide, c = opts.currSlide; if (fwd) { hops = c > l ? c - l : opts.slideCount - l; } else { hops = c < l ? l - c : l + opts.slideCount - c; } return hops; }; function clearTypeFix($slides) { debug("applying clearType background-color hack"); function hex(s) { s = parseInt(s).toString(16); return s.length < 2 ? "0" + s : s; } function getBg(e) { for (; e && e.nodeName.toLowerCase() != "html"; e = e.parentNode) { var v = $.css(e, "background-color"); if (v.indexOf("rgb") >= 0) { var rgb = v.match(/\d+/g); return "#" + hex(rgb[0]) + hex(rgb[1]) + hex(rgb[2]); } if (v && v != "transparent") { return v; } } return "#ffffff"; } $slides.each(function() { $(this).css("background-color", getBg(this)); }); } $.fn.cycle.commonReset = function(curr, next, opts, w, h, rev) { $(opts.elements).not(curr).hide(); opts.cssBefore.opacity = 1; opts.cssBefore.display = "block"; if (w !== false && next.cycleW > 0) { opts.cssBefore.width = next.cycleW; } if (h !== false && next.cycleH > 0) { opts.cssBefore.height = next.cycleH; } opts.cssAfter = opts.cssAfter || {}; opts.cssAfter.display = "none"; $(curr).css("zIndex", opts.slideCount + (rev === true ? 1 : 0)); $(next).css("zIndex", opts.slideCount + (rev === true ? 0 : 1)); }; $.fn.cycle.custom = function(curr, next, opts, cb, fwd, speedOverride) { var $l = $(curr), $n = $(next); var speedIn = opts.speedIn, speedOut = opts.speedOut, easeIn = opts.easeIn, easeOut = opts.easeOut; $n.css(opts.cssBefore); if (speedOverride) { if (typeof speedOverride == "number") { speedIn = speedOut = speedOverride; } else { speedIn = speedOut = 1; } easeIn = easeOut = null; } var fn = function() { $n.animate(opts.animIn, speedIn, easeIn, cb); }; $l.animate(opts.animOut, speedOut, easeOut, function() { if (opts.cssAfter) { $l.css(opts.cssAfter); } if (!opts.sync) { fn(); } }); if (opts.sync) { fn(); } }; $.fn.cycle.transitions = { fade: function($cont, $slides, opts) { $slides.not(":eq(" + opts.currSlide + ")").css("opacity", 0); opts.before.push(function(curr, next, opts) { $.fn.cycle.commonReset(curr, next, opts); opts.cssBefore.opacity = 0; }); opts.animIn = { opacity: 1 }; opts.animOut = { opacity: 0 }; opts.cssBefore = { top: 0, left: 0 }; } }; $.fn.cycle.ver = function() { return ver; }; $.fn.cycle.defaults = { fx: "fade", timeout: 4000, timeoutFn: null, continuous: 0, speed: 1000, speedIn: null, speedOut: null, next: null, prev: null, onPrevNextEvent: null, prevNextEvent: "click.cycle", pager: null, onPagerEvent: null, pagerEvent: "click.cycle", allowPagerClickBubble: false, pagerAnchorBuilder: null, before: null, after: null, end: null, easing: null, easeIn: null, easeOut: null, shuffle: null, animIn: null, animOut: null, cssBefore: null, cssAfter: null, fxFn: null, height: "auto", startingSlide: 0, sync: 1, random: 0, fit: 0, containerResize: 1, pause: 0, pauseOnPagerHover: 0, autostop: 0, autostopCount: 0, delay: 0, slideExpr: null, cleartype: !$.support.opacity, cleartypeNoBg: false, nowrap: 0, fastOnEvent: 0, randomizeEffects: 1, rev: 0, manualTrump: true, requeueOnImageNotLoaded: true, requeueTimeout: 250, activePagerClass: "activeSlide", updateActivePagerLink: null, backwards: false }; })(jQuery);


/*
* Copyright (c) 2009 Simo Kinnunen.
* Licensed under the MIT license.
*
* @version 1.09i
*/
var Cufon = (function() { var m = function() { return m.replace.apply(null, arguments) }; var x = m.DOM = { ready: (function() { var C = false, E = { loaded: 1, complete: 1 }; var B = [], D = function() { if (C) { return } C = true; for (var F; F = B.shift(); F()) { } }; if (document.addEventListener) { document.addEventListener("DOMContentLoaded", D, false); window.addEventListener("pageshow", D, false) } if (!window.opera && document.readyState) { (function() { E[document.readyState] ? D() : setTimeout(arguments.callee, 10) })() } if (document.readyState && document.createStyleSheet) { (function() { try { document.body.doScroll("left"); D() } catch (F) { setTimeout(arguments.callee, 1) } })() } q(window, "load", D); return function(F) { if (!arguments.length) { D() } else { C ? F() : B.push(F) } } })(), root: function() { return document.documentElement || document.body } }; var n = m.CSS = { Size: function(C, B) { this.value = parseFloat(C); this.unit = String(C).match(/[a-z%]*$/)[0] || "px"; this.convert = function(D) { return D / B * this.value }; this.convertFrom = function(D) { return D / this.value * B }; this.toString = function() { return this.value + this.unit } }, addClass: function(C, B) { var D = C.className; C.className = D + (D && " ") + B; return C }, color: j(function(C) { var B = {}; B.color = C.replace(/^rgba\((.*?),\s*([\d.]+)\)/, function(E, D, F) { B.opacity = parseFloat(F); return "rgb(" + D + ")" }); return B }), fontStretch: j(function(B) { if (typeof B == "number") { return B } if (/%$/.test(B)) { return parseFloat(B) / 100 } return { "ultra-condensed": 0.5, "extra-condensed": 0.625, condensed: 0.75, "semi-condensed": 0.875, "semi-expanded": 1.125, expanded: 1.25, "extra-expanded": 1.5, "ultra-expanded": 2}[B] || 1 }), getStyle: function(C) { var B = document.defaultView; if (B && B.getComputedStyle) { return new a(B.getComputedStyle(C, null)) } if (C.currentStyle) { return new a(C.currentStyle) } return new a(C.style) }, gradient: j(function(F) { var G = { id: F, type: F.match(/^-([a-z]+)-gradient\(/)[1], stops: [] }, C = F.substr(F.indexOf("(")).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig); for (var E = 0, B = C.length, D; E < B; ++E) { D = C[E].split("=", 2).reverse(); G.stops.push([D[1] || E / (B - 1), D[0]]) } return G }), quotedList: j(function(E) { var D = [], C = /\s*((["'])([\s\S]*?[^\\])\2|[^,]+)\s*/g, B; while (B = C.exec(E)) { D.push(B[3] || B[1]) } return D }), recognizesMedia: j(function(G) { var E = document.createElement("style"), D, C, B; E.type = "text/css"; E.media = G; try { E.appendChild(document.createTextNode("/**/")) } catch (F) { } C = g("head")[0]; C.insertBefore(E, C.firstChild); D = (E.sheet || E.styleSheet); B = D && !D.disabled; C.removeChild(E); return B }), removeClass: function(D, C) { var B = RegExp("(?:^|\\s+)" + C + "(?=\\s|$)", "g"); D.className = D.className.replace(B, ""); return D }, supports: function(D, C) { var B = document.createElement("span").style; if (B[D] === undefined) { return false } B[D] = C; return B[D] === C }, textAlign: function(E, D, B, C) { if (D.get("textAlign") == "right") { if (B > 0) { E = " " + E } } else { if (B < C - 1) { E += " " } } return E }, textShadow: j(function(F) { if (F == "none") { return null } var E = [], G = {}, B, C = 0; var D = /(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig; while (B = D.exec(F)) { if (B[0] == ",") { E.push(G); G = {}; C = 0 } else { if (B[1]) { G.color = B[1] } else { G[["offX", "offY", "blur"][C++]] = B[2] } } } E.push(G); return E }), textTransform: (function() { var B = { uppercase: function(C) { return C.toUpperCase() }, lowercase: function(C) { return C.toLowerCase() }, capitalize: function(C) { return C.replace(/\b./g, function(D) { return D.toUpperCase() }) } }; return function(E, D) { var C = B[D.get("textTransform")]; return C ? C(E) : E } })(), whiteSpace: (function() { var D = { inline: 1, "inline-block": 1, "run-in": 1 }; var C = /^\s+/, B = /\s+$/; return function(H, F, G, E) { if (E) { if (E.nodeName.toLowerCase() == "br") { H = H.replace(C, "") } } if (D[F.get("display")]) { return H } if (!G.previousSibling) { H = H.replace(C, "") } if (!G.nextSibling) { H = H.replace(B, "") } return H } })() }; n.ready = (function() { var B = !n.recognizesMedia("all"), E = false; var D = [], H = function() { B = true; for (var K; K = D.shift(); K()) { } }; var I = g("link"), J = g("style"); function C(K) { return K.disabled || G(K.sheet, K.media || "screen") } function G(M, P) { if (!n.recognizesMedia(P || "all")) { return true } if (!M || M.disabled) { return false } try { var Q = M.cssRules, O; if (Q) { search: for (var L = 0, K = Q.length; O = Q[L], L < K; ++L) { switch (O.type) { case 2: break; case 3: if (!G(O.styleSheet, O.media.mediaText)) { return false } break; default: break search } } } } catch (N) { } return true } function F() { if (document.createStyleSheet) { return true } var L, K; for (K = 0; L = I[K]; ++K) { if (L.rel.toLowerCase() == "stylesheet" && !C(L)) { return false } } for (K = 0; L = J[K]; ++K) { if (!C(L)) { return false } } return true } x.ready(function() { if (!E) { E = n.getStyle(document.body).isUsable() } if (B || (E && F())) { H() } else { setTimeout(arguments.callee, 10) } }); return function(K) { if (B) { K() } else { D.push(K) } } })(); function s(D) { var C = this.face = D.face, B = { "\u0020": 1, "\u00a0": 1, "\u3000": 1 }; this.glyphs = D.glyphs; this.w = D.w; this.baseSize = parseInt(C["units-per-em"], 10); this.family = C["font-family"].toLowerCase(); this.weight = C["font-weight"]; this.style = C["font-style"] || "normal"; this.viewBox = (function() { var F = C.bbox.split(/\s+/); var E = { minX: parseInt(F[0], 10), minY: parseInt(F[1], 10), maxX: parseInt(F[2], 10), maxY: parseInt(F[3], 10) }; E.width = E.maxX - E.minX; E.height = E.maxY - E.minY; E.toString = function() { return [this.minX, this.minY, this.width, this.height].join(" ") }; return E })(); this.ascent = -parseInt(C.ascent, 10); this.descent = -parseInt(C.descent, 10); this.height = -this.ascent + this.descent; this.spacing = function(L, N, E) { var O = this.glyphs, M, K, G, P = [], F = 0, J = -1, I = -1, H; while (H = L[++J]) { M = O[H] || this.missingGlyph; if (!M) { continue } if (K) { F -= G = K[H] || 0; P[I] -= G } F += P[++I] = ~ ~(M.w || this.w) + N + (B[H] ? E : 0); K = M.k } P.total = F; return P } } function f() { var C = {}, B = { oblique: "italic", italic: "oblique" }; this.add = function(D) { (C[D.style] || (C[D.style] = {}))[D.weight] = D }; this.get = function(H, I) { var G = C[H] || C[B[H]] || C.normal || C.italic || C.oblique; if (!G) { return null } I = { normal: 400, bold: 700}[I] || parseInt(I, 10); if (G[I]) { return G[I] } var E = { 1: 1, 99: 0}[I % 100], K = [], F, D; if (E === undefined) { E = I > 400 } if (I == 500) { I = 400 } for (var J in G) { if (!k(G, J)) { continue } J = parseInt(J, 10); if (!F || J < F) { F = J } if (!D || J > D) { D = J } K.push(J) } if (I < F) { I = F } if (I > D) { I = D } K.sort(function(M, L) { return (E ? (M >= I && L >= I) ? M < L : M > L : (M <= I && L <= I) ? M > L : M < L) ? -1 : 1 }); return G[K[0]] } } function r() { function D(F, G) { if (F.contains) { return F.contains(G) } return F.compareDocumentPosition(G) & 16 } function B(G) { var F = G.relatedTarget; if (!F || D(this, F)) { return } C(this, G.type == "mouseover") } function E(F) { C(this, F.type == "mouseenter") } function C(F, G) { setTimeout(function() { var H = d.get(F).options; m.replace(F, G ? h(H, H.hover) : H, true) }, 10) } this.attach = function(F) { if (F.onmouseenter === undefined) { q(F, "mouseover", B); q(F, "mouseout", B) } else { q(F, "mouseenter", E); q(F, "mouseleave", E) } } } function u() { var C = [], D = {}; function B(H) { var E = [], G; for (var F = 0; G = H[F]; ++F) { E[F] = C[D[G]] } return E } this.add = function(F, E) { D[F] = C.push(E) - 1 }; this.repeat = function() { var E = arguments.length ? B(arguments) : C, F; for (var G = 0; F = E[G++]; ) { m.replace(F[0], F[1], true) } } } function A() { var D = {}, B = 0; function C(E) { return E.cufid || (E.cufid = ++B) } this.get = function(E) { var F = C(E); return D[F] || (D[F] = {}) } } function a(B) { var D = {}, C = {}; this.extend = function(E) { for (var F in E) { if (k(E, F)) { D[F] = E[F] } } return this }; this.get = function(E) { return D[E] != undefined ? D[E] : B[E] }; this.getSize = function(F, E) { return C[F] || (C[F] = new n.Size(this.get(F), E)) }; this.isUsable = function() { return !!B } } function q(C, B, D) { if (C.addEventListener) { C.addEventListener(B, D, false) } else { if (C.attachEvent) { C.attachEvent("on" + B, function() { return D.call(C, window.event) }) } } } function v(C, B) { var D = d.get(C); if (D.options) { return C } if (B.hover && B.hoverables[C.nodeName.toLowerCase()]) { b.attach(C) } D.options = B; return C } function j(B) { var C = {}; return function(D) { if (!k(C, D)) { C[D] = B.apply(null, arguments) } return C[D] } } function c(F, E) { var B = n.quotedList(E.get("fontFamily").toLowerCase()), D; for (var C = 0; D = B[C]; ++C) { if (i[D]) { return i[D].get(E.get("fontStyle"), E.get("fontWeight")) } } return null } function g(B) { return document.getElementsByTagName(B) } function k(C, B) { return C.hasOwnProperty(B) } function h() { var C = {}, B, F; for (var E = 0, D = arguments.length; B = arguments[E], E < D; ++E) { for (F in B) { if (k(B, F)) { C[F] = B[F] } } } return C } function o(E, M, C, N, F, D) { var K = document.createDocumentFragment(), H; if (M === "") { return K } var L = N.separate; var I = M.split(p[L]), B = (L == "words"); if (B && t) { if (/^\s/.test(M)) { I.unshift("") } if (/\s$/.test(M)) { I.push("") } } for (var J = 0, G = I.length; J < G; ++J) { H = z[N.engine](E, B ? n.textAlign(I[J], C, J, G) : I[J], C, N, F, D, J < G - 1); if (H) { K.appendChild(H) } } return K } function l(D, M) { var C = D.nodeName.toLowerCase(); if (M.ignore[C]) { return } var E = !M.textless[C]; var B = n.getStyle(v(D, M)).extend(M); var F = c(D, B), G, K, I, H, L, J; if (!F) { return } for (G = D.firstChild; G; G = I) { K = G.nodeType; I = G.nextSibling; if (E && K == 3) { if (H) { H.appendData(G.data); D.removeChild(G) } else { H = G } if (I) { continue } } if (H) { D.replaceChild(o(F, n.whiteSpace(H.data, B, H, J), B, M, G, D), H); H = null } if (K == 1) { if (G.firstChild) { if (G.nodeName.toLowerCase() == "cufon") { z[M.engine](F, null, B, M, G, D) } else { arguments.callee(G, M) } } J = G } } } var t = " ".split(/\s+/).length == 0; var d = new A(); var b = new r(); var y = new u(); var e = false; var z = {}, i = {}, w = { autoDetect: false, engine: null, forceHitArea: false, hover: false, hoverables: { a: true }, ignore: { applet: 1, canvas: 1, col: 1, colgroup: 1, head: 1, iframe: 1, map: 1, optgroup: 1, option: 1, script: 1, select: 1, style: 1, textarea: 1, title: 1, pre: 1 }, printable: true, selector: (window.Sizzle || (window.jQuery && function(B) { return jQuery(B) }) || (window.dojo && dojo.query) || (window.Ext && Ext.query) || (window.YAHOO && YAHOO.util && YAHOO.util.Selector && YAHOO.util.Selector.query) || (window.$$ && function(B) { return $$(B) }) || (window.$ && function(B) { return $(B) }) || (document.querySelectorAll && function(B) { return document.querySelectorAll(B) }) || g), separate: "words", textless: { dl: 1, html: 1, ol: 1, table: 1, tbody: 1, thead: 1, tfoot: 1, tr: 1, ul: 1 }, textShadow: "none" }; var p = { words: /\s/.test("\u00a0") ? /[^\S\u00a0]+/ : /\s+/, characters: "", none: /^/ }; m.now = function() { x.ready(); return m }; m.refresh = function() { y.repeat.apply(y, arguments); return m }; m.registerEngine = function(C, B) { if (!B) { return m } z[C] = B; return m.set("engine", C) }; m.registerFont = function(D) { if (!D) { return m } var B = new s(D), C = B.family; if (!i[C]) { i[C] = new f() } i[C].add(B); return m.set("fontFamily", '"' + C + '"') }; m.replace = function(D, C, B) { C = h(w, C); if (!C.engine) { return m } if (!e) { n.addClass(x.root(), "cufon-active cufon-loading"); n.ready(function() { n.addClass(n.removeClass(x.root(), "cufon-loading"), "cufon-ready") }); e = true } if (C.hover) { C.forceHitArea = true } if (C.autoDetect) { delete C.fontFamily } if (typeof C.textShadow == "string") { C.textShadow = n.textShadow(C.textShadow) } if (typeof C.color == "string" && /^-/.test(C.color)) { C.textGradient = n.gradient(C.color) } else { delete C.textGradient } if (!B) { y.add(D, arguments) } if (D.nodeType || typeof D == "string") { D = [D] } n.ready(function() { for (var F = 0, E = D.length; F < E; ++F) { var G = D[F]; if (typeof G == "string") { m.replace(C.selector(G), C, true) } else { l(G, C) } } }); return m }; m.set = function(B, C) { w[B] = C; return m }; return m })(); Cufon.registerEngine("vml", (function() { var e = document.namespaces; if (!e) { return } e.add("cvml", "urn:schemas-microsoft-com:vml"); e = null; var b = document.createElement("cvml:shape"); b.style.behavior = "url(#default#VML)"; if (!b.coordsize) { return } b = null; var h = (document.documentMode || 0) < 8; document.write(('<style type="text/css">cufoncanvas{text-indent:0;}@media screen{cvml\\:shape,cvml\\:rect,cvml\\:fill,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute;}cufoncanvas{position:absolute;text-align:left;}cufon{display:inline-block;position:relative;vertical-align:' + (h ? "middle" : "text-bottom") + ";}cufon cufontext{position:absolute;left:-10000in;font-size:1px;}a cufon{cursor:pointer}}@media print{cufon cufoncanvas{display:none;}}</style>").replace(/;/g, "!important;")); function c(i, j) { return a(i, /(?:em|ex|%)$|^[a-z-]+$/i.test(j) ? "1em" : j) } function a(l, m) { if (m === "0") { return 0 } if (/px$/i.test(m)) { return parseFloat(m) } var k = l.style.left, j = l.runtimeStyle.left; l.runtimeStyle.left = l.currentStyle.left; l.style.left = m.replace("%", "em"); var i = l.style.pixelLeft; l.style.left = k; l.runtimeStyle.left = j; return i } function f(l, k, j, n) { var i = "computed" + n, m = k[i]; if (isNaN(m)) { m = k.get(n); k[i] = m = (m == "normal") ? 0 : ~ ~j.convertFrom(a(l, m)) } return m } var g = {}; function d(p) { var q = p.id; if (!g[q]) { var n = p.stops, o = document.createElement("cvml:fill"), i = []; o.type = "gradient"; o.angle = 180; o.focus = "0"; o.method = "sigma"; o.color = n[0][1]; for (var m = 1, l = n.length - 1; m < l; ++m) { i.push(n[m][0] * 100 + "% " + n[m][1]) } o.colors = i.join(","); o.color2 = n[l][1]; g[q] = o } return g[q] } return function(ac, G, Y, C, K, ad, W) { var n = (G === null); if (n) { G = K.alt } var I = ac.viewBox; var p = Y.computedFontSize || (Y.computedFontSize = new Cufon.CSS.Size(c(ad, Y.get("fontSize")) + "px", ac.baseSize)); var y, q; if (n) { y = K; q = K.firstChild } else { y = document.createElement("cufon"); y.className = "cufon cufon-vml"; y.alt = G; q = document.createElement("cufoncanvas"); y.appendChild(q); if (C.printable) { var Z = document.createElement("cufontext"); Z.appendChild(document.createTextNode(G)); y.appendChild(Z) } if (!W) { y.appendChild(document.createElement("cvml:shape")) } } var ai = y.style; var R = q.style; var l = p.convert(I.height), af = Math.ceil(l); var V = af / l; var P = V * Cufon.CSS.fontStretch(Y.get("fontStretch")); var U = I.minX, T = I.minY; R.height = af; R.top = Math.round(p.convert(T - ac.ascent)); R.left = Math.round(p.convert(U)); ai.height = p.convert(ac.height) + "px"; var F = Y.get("color"); var ag = Cufon.CSS.textTransform(G, Y).split(""); var L = ac.spacing(ag, f(ad, Y, p, "letterSpacing"), f(ad, Y, p, "wordSpacing")); if (!L.length) { return null } var k = L.total; var x = -U + k + (I.width - L[L.length - 1]); var ah = p.convert(x * P), X = Math.round(ah); var O = x + "," + I.height, m; var J = "r" + O + "ns"; var u = C.textGradient && d(C.textGradient); var o = ac.glyphs, S = 0; var H = C.textShadow; var ab = -1, aa = 0, w; while (w = ag[++ab]) { var D = o[ag[ab]] || ac.missingGlyph, v; if (!D) { continue } if (n) { v = q.childNodes[aa]; while (v.firstChild) { v.removeChild(v.firstChild) } } else { v = document.createElement("cvml:shape"); q.appendChild(v) } v.stroked = "f"; v.coordsize = O; v.coordorigin = m = (U - S) + "," + T; v.path = (D.d ? "m" + D.d + "xe" : "") + "m" + m + J; v.fillcolor = F; if (u) { v.appendChild(u.cloneNode(false)) } var ae = v.style; ae.width = X; ae.height = af; if (H) { var s = H[0], r = H[1]; var B = Cufon.CSS.color(s.color), z; var N = document.createElement("cvml:shadow"); N.on = "t"; N.color = B.color; N.offset = s.offX + "," + s.offY; if (r) { z = Cufon.CSS.color(r.color); N.type = "double"; N.color2 = z.color; N.offset2 = r.offX + "," + r.offY } N.opacity = B.opacity || (z && z.opacity) || 1; v.appendChild(N) } S += L[aa++] } var M = v.nextSibling, t, A; if (C.forceHitArea) { if (!M) { M = document.createElement("cvml:rect"); M.stroked = "f"; M.className = "cufon-vml-cover"; t = document.createElement("cvml:fill"); t.opacity = 0; M.appendChild(t); q.appendChild(M) } A = M.style; A.width = X; A.height = af } else { if (M) { q.removeChild(M) } } ai.width = Math.max(Math.ceil(p.convert(k * P)), 0); if (h) { var Q = Y.computedYAdjust; if (Q === undefined) { var E = Y.get("lineHeight"); if (E == "normal") { E = "1em" } else { if (!isNaN(E)) { E += "em" } } Y.computedYAdjust = Q = 0.5 * (a(ad, E) - parseFloat(ai.height)) } if (Q) { ai.marginTop = Math.ceil(Q) + "px"; ai.marginBottom = Q + "px" } } return y } })()); Cufon.registerEngine("canvas", (function() { var b = document.createElement("canvas"); if (!b || !b.getContext || !b.getContext.apply) { return } b = null; var a = Cufon.CSS.supports("display", "inline-block"); var e = !a && (document.compatMode == "BackCompat" || /frameset|transitional/i.test(document.doctype.publicId)); var f = document.createElement("style"); f.type = "text/css"; f.appendChild(document.createTextNode(("cufon{text-indent:0;}@media screen,projection{cufon{display:inline;display:inline-block;position:relative;vertical-align:middle;" + (e ? "" : "font-size:1px;line-height:1px;") + "}cufon cufontext{display:-moz-inline-box;display:inline-block;width:0;height:0;overflow:hidden;text-indent:-10000in;}" + (a ? "cufon canvas{position:relative;}" : "cufon canvas{position:absolute;}") + "}@media print{cufon{padding:0;}cufon canvas{display:none;}}").replace(/;/g, "!important;"))); document.getElementsByTagName("head")[0].appendChild(f); function d(p, h) { var n = 0, m = 0; var g = [], o = /([mrvxe])([^a-z]*)/g, k; generate: for (var j = 0; k = o.exec(p); ++j) { var l = k[2].split(","); switch (k[1]) { case "v": g[j] = { m: "bezierCurveTo", a: [n + ~ ~l[0], m + ~ ~l[1], n + ~ ~l[2], m + ~ ~l[3], n += ~ ~l[4], m += ~ ~l[5]] }; break; case "r": g[j] = { m: "lineTo", a: [n += ~ ~l[0], m += ~ ~l[1]] }; break; case "m": g[j] = { m: "moveTo", a: [n = ~ ~l[0], m = ~ ~l[1]] }; break; case "x": g[j] = { m: "closePath" }; break; case "e": break generate } h[g[j].m].apply(h, g[j].a) } return g } function c(m, k) { for (var j = 0, h = m.length; j < h; ++j) { var g = m[j]; k[g.m].apply(k, g.a) } } return function(V, w, P, t, C, W) { var k = (w === null); if (k) { w = C.getAttribute("alt") } var A = V.viewBox; var m = P.getSize("fontSize", V.baseSize); var B = 0, O = 0, N = 0, u = 0; var z = t.textShadow, L = []; if (z) { for (var U = z.length; U--; ) { var F = z[U]; var K = m.convertFrom(parseFloat(F.offX)); var I = m.convertFrom(parseFloat(F.offY)); L[U] = [K, I]; if (I < B) { B = I } if (K > O) { O = K } if (I > N) { N = I } if (K < u) { u = K } } } var Z = Cufon.CSS.textTransform(w, P).split(""); var E = V.spacing(Z, ~ ~m.convertFrom(parseFloat(P.get("letterSpacing")) || 0), ~ ~m.convertFrom(parseFloat(P.get("wordSpacing")) || 0)); if (!E.length) { return null } var h = E.total; O += A.width - E[E.length - 1]; u += A.minX; var s, n; if (k) { s = C; n = C.firstChild } else { s = document.createElement("cufon"); s.className = "cufon cufon-canvas"; s.setAttribute("alt", w); n = document.createElement("canvas"); s.appendChild(n); if (t.printable) { var S = document.createElement("cufontext"); S.appendChild(document.createTextNode(w)); s.appendChild(S) } } var aa = s.style; var H = n.style; var j = m.convert(A.height); var Y = Math.ceil(j); var M = Y / j; var G = M * Cufon.CSS.fontStretch(P.get("fontStretch")); var J = h * G; var Q = Math.ceil(m.convert(J + O - u)); var o = Math.ceil(m.convert(A.height - B + N)); n.width = Q; n.height = o; H.width = Q + "px"; H.height = o + "px"; B += A.minY; H.top = Math.round(m.convert(B - V.ascent)) + "px"; H.left = Math.round(m.convert(u)) + "px"; var r = Math.max(Math.ceil(m.convert(J)), 0) + "px"; if (a) { aa.width = r; aa.height = m.convert(V.height) + "px" } else { aa.paddingLeft = r; aa.paddingBottom = (m.convert(V.height) - 1) + "px" } var X = n.getContext("2d"), D = j / A.height; X.scale(D, D * M); X.translate(-u, -B); X.save(); function T() { var x = V.glyphs, ab, l = -1, g = -1, y; X.scale(G, 1); while (y = Z[++l]) { var ab = x[Z[l]] || V.missingGlyph; if (!ab) { continue } if (ab.d) { X.beginPath(); if (ab.code) { c(ab.code, X) } else { ab.code = d("m" + ab.d, X) } X.fill() } X.translate(E[++g], 0) } X.restore() } if (z) { for (var U = z.length; U--; ) { var F = z[U]; X.save(); X.fillStyle = F.color; X.translate.apply(X, L[U]); T() } } var q = t.textGradient; if (q) { var v = q.stops, p = X.createLinearGradient(0, A.minY, 0, A.maxY); for (var U = 0, R = v.length; U < R; ++U) { p.addColorStop.apply(p, v[U]) } X.fillStyle = p } else { X.fillStyle = P.get("color") } T(); return s } })());

/*!
* The following copyright notice may not be removed under any circumstances.
* 
* Copyright:
* Copyright © 1988, 1990, 1993, 2002 Adobe Systems Incorporated.  All Rights
* Reserved. © 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
* 
* Trademark:
* Helvetica is a trademark of Heidelberger Druckmaschinen AG, exclusively
* licensed through Linotype Library GmbH, and may be registered in certain
* jurisdictions.
* 
* Full name:
* HelveticaNeueLTStd-Bd
* 
* Designer:
* Linotype Staff
* 
* Vendor URL:
* http://www.adobe.com/type
* 
* License information:
* http://www.adobe.com/type/legal.html
*/
Cufon.registerFont({ "w": 200, "face": { "font-family": "Helvetica Neue LT Std", "font-weight": 700, "font-stretch": "normal", "units-per-em": "360", "panose-1": "2 11 8 4 2 2 2 2 2 4", "ascent": "257", "descent": "-103", "x-height": "5", "bbox": "-60 -351 388 78.3652", "underline-thickness": "18", "underline-position": "-18", "stemh": "39", "stemv": "51", "unicode-range": "U+0020-U+FB02" }, "glyphs": { " ": { "w": 100 }, "\ufb01": { "d": "199,-257r0,42r-51,0r0,-42r51,0xm148,0r0,-186r51,0r0,186r-51,0xm31,0r0,-152r-31,0r0,-34r31,0v-7,-54,29,-78,89,-70r0,39v-24,-6,-43,1,-38,31r35,0r0,34r-35,0r0,152r-51,0", "w": 219, "k": { "\u2019": -6, "f": 6, "\ufb01": 6, "\ufb02": 6, "\u00df": 6} }, "\ufb02": { "d": "148,0r0,-257r51,0r0,257r-51,0xm31,0r0,-152r-31,0r0,-34r31,0v-7,-54,29,-78,89,-70r0,39v-24,-6,-43,1,-38,31r35,0r0,34r-35,0r0,152r-51,0", "w": 219, "k": { "\u2019": -6, "f": 6, "\ufb01": 6, "\ufb02": 6, "\u00df": 6} }, "!": { "d": "77,-257v3,67,-7,123,-14,180r-26,0v-7,-58,-17,-112,-14,-180r54,0xm22,0r0,-55r56,0r0,55r-56,0", "w": 100 }, "\"": { "d": "98,-141r0,-116r38,0r0,116r-38,0xm31,-141r0,-116r38,0r0,116r-38,0", "w": 166 }, "#": { "d": "32,0r10,-71r-30,0r0,-33r34,0r7,-44r-30,0r0,-33r34,0r10,-71r35,0r-10,71r35,0r9,-71r35,0r-9,71r26,0r0,33r-31,0r-6,44r26,0r0,33r-31,0r-10,71r-34,0r9,-71r-34,0r-10,71r-35,0xm122,-148r-35,0r-6,44r35,0" }, "$": { "d": "89,-162r0,-59v-16,0,-32,10,-32,30v0,16,9,24,32,29xm111,-105r0,69v18,-2,38,-12,38,-35v0,-19,-10,-26,-38,-34xm89,-111v-40,-11,-83,-22,-83,-75v0,-49,40,-74,83,-77r0,-28r22,0r0,28v43,5,78,27,81,77r-52,0v0,-19,-13,-35,-29,-35r0,64v6,1,12,2,18,4v70,19,72,60,72,84v0,21,-18,70,-90,75r0,31r-22,0r0,-31v-53,-4,-84,-33,-89,-90r51,0v0,27,16,44,38,48r0,-75" }, "%": { "d": "27,-186v0,-39,19,-71,61,-71v45,0,59,33,59,73v0,39,-19,67,-61,67v-44,0,-59,-29,-59,-69xm64,-185v0,15,0,41,23,41v22,0,24,-26,24,-41v0,-14,-2,-45,-23,-45v-23,0,-24,28,-24,45xm213,-66v0,-39,19,-69,61,-69v45,0,59,31,59,71v0,39,-19,69,-61,69v-44,0,-59,-31,-59,-71xm249,-66v0,15,1,44,24,44v22,0,23,-28,23,-43v0,-14,-1,-43,-22,-43v-23,0,-25,25,-25,42xm91,8r149,-268r31,0r-148,268r-32,0", "w": 360 }, "&": { "d": "111,-165v28,-8,39,-56,3,-61v-34,3,-24,47,-3,61xm140,-60r-44,-53v-18,8,-36,21,-36,42v0,42,62,42,80,11xm188,0r-21,-26v-46,53,-157,37,-155,-46v0,-36,27,-61,57,-75v-14,-17,-24,-32,-24,-54v0,-36,33,-59,67,-59v39,0,70,21,70,62v0,30,-20,50,-46,64r34,40v5,-9,8,-20,9,-30r44,0v-3,23,-11,45,-25,63r53,61r-63,0", "w": 246 }, "\u2019": { "d": "24,-202r0,-55r52,0v4,59,-1,110,-52,116r0,-24v18,-6,24,-19,24,-37r-24,0", "w": 100, "k": { "\u2019": 23, "s": 27, "\u0161": 27, "t": 6} }, "(": { "d": "66,-263r43,0v-53,103,-52,226,0,329r-43,0v-62,-99,-63,-230,0,-329", "w": 106 }, ")": { "d": "40,66r-43,0v54,-101,53,-226,1,-329r42,0v63,98,64,231,0,329", "w": 106 }, "*": { "d": "87,-257r0,45r42,-16r10,28r-43,14r27,35r-24,18r-27,-37r-25,37r-24,-18r27,-35r-42,-14r10,-28r40,16r0,-45r29,0", "w": 146 }, "+": { "d": "127,-182r0,72r72,0r0,38r-72,0r0,72r-38,0r0,-72r-72,0r0,-38r72,0r0,-72r38,0", "w": 216 }, ",": { "d": "22,0r0,-55r56,0v5,61,-4,109,-56,115r0,-26v15,-3,27,-18,26,-34r-26,0", "w": 100 }, "-": { "d": "19,-76r0,-44r108,0r0,44r-108,0", "w": 146 }, ".": { "d": "22,0r0,-55r56,0r0,55r-56,0", "w": 100 }, "\/": { "d": "-4,6r100,-269r42,0r-101,269r-41,0", "w": 133 }, "0": { "d": "8,-127v0,-98,42,-130,92,-130v50,0,93,32,93,130v0,100,-43,132,-93,132v-50,0,-92,-32,-92,-132xm59,-127v0,28,0,90,41,90v42,0,41,-62,41,-90v0,-26,1,-88,-41,-88v-41,0,-41,62,-41,88" }, "1": { "d": "141,-252r0,252r-51,0r0,-163r-63,0r0,-39v36,1,68,-11,73,-50r41,0" }, "2": { "d": "191,-178v-1,79,-85,84,-118,134r120,0r0,44r-185,0v0,-58,35,-83,79,-113v22,-15,53,-30,53,-61v0,-24,-16,-39,-38,-39v-30,0,-40,31,-40,58r-49,0v-2,-58,32,-102,92,-102v46,0,86,30,86,79" }, "3": { "d": "82,-114r0,-36v22,2,54,-2,54,-31v0,-21,-17,-34,-36,-34v-26,0,-39,19,-39,45r-48,0v2,-51,35,-87,87,-87v40,0,84,25,84,70v1,25,-14,44,-35,52v28,6,45,29,45,57v0,53,-45,83,-94,83v-57,0,-95,-34,-94,-92r49,0v1,27,14,50,44,50v23,0,41,-16,41,-40v0,-38,-33,-37,-58,-37" }, "4": { "d": "112,0r0,-58r-106,0r0,-47r109,-147r46,0r0,152r33,0r0,42r-33,0r0,58r-49,0xm112,-100r-1,-88r-65,88r66,0" }, "5": { "d": "180,-252r0,42r-104,0v-2,19,-9,41,-9,58v49,-47,127,-2,127,66v0,52,-43,91,-94,91v-49,0,-93,-27,-94,-80r52,0v3,22,19,38,41,38v27,0,44,-24,44,-49v0,-46,-62,-64,-83,-27r-46,0r25,-139r141,0" }, "6": { "d": "58,-142v39,-54,135,-18,135,55v0,51,-36,92,-89,92v-76,0,-96,-66,-96,-130v0,-62,27,-132,99,-132v44,0,75,26,81,70r-48,0v-3,-17,-16,-32,-34,-32v-37,0,-47,49,-48,77xm103,-131v-27,0,-41,22,-41,47v0,23,15,47,41,47v24,0,38,-23,38,-46v0,-24,-12,-48,-38,-48" }, "7": { "d": "186,-252r0,44v-53,46,-81,141,-82,208r-55,0v6,-75,37,-146,85,-204r-120,0r0,-48r172,0" }, "8": { "d": "56,-76v0,26,21,43,45,43v24,0,43,-18,43,-43v0,-24,-19,-40,-43,-40v-25,0,-45,14,-45,40xm15,-188v0,-45,44,-69,85,-69v63,0,85,44,85,68v0,25,-13,45,-37,53v30,7,47,30,47,62v0,53,-47,79,-94,79v-49,0,-96,-25,-96,-79v0,-32,18,-55,48,-62v-24,-7,-38,-27,-38,-52xm62,-184v0,22,17,34,38,34v21,0,38,-12,38,-34v0,-13,-6,-35,-38,-35v-21,0,-38,13,-38,35" }, "9": { "d": "142,-111v-41,59,-134,17,-134,-54v0,-51,35,-92,88,-92v76,0,97,66,97,130v0,62,-27,132,-99,132v-44,0,-76,-26,-82,-70r48,0v3,17,16,32,34,32v36,0,51,-51,48,-78xm97,-121v27,0,41,-22,41,-47v0,-23,-15,-47,-41,-47v-24,0,-38,23,-38,46v0,24,12,48,38,48" }, ":": { "d": "22,0r0,-55r56,0r0,55r-56,0xm78,-183r0,56r-56,0r0,-56r56,0", "w": 100 }, ";": { "d": "22,0r0,-55r56,0v5,61,-4,109,-56,115r0,-26v15,-3,27,-18,26,-34r-26,0xm78,-183r0,56r-56,0r0,-56r56,0", "w": 100 }, "<": { "d": "199,-185r0,41r-132,53r132,52r0,42r-182,-73r0,-42", "w": 216 }, "=": { "d": "199,-149r0,39r-182,0r0,-39r182,0xm199,-72r0,39r-182,0r0,-39r182,0", "w": 216 }, ">": { "d": "17,3r0,-42r132,-52r-132,-53r0,-41r182,73r0,42", "w": 216 }, "?": { "d": "75,-77v-8,-68,57,-66,57,-112v0,-22,-11,-32,-30,-32v-26,0,-38,21,-38,47r-52,0v1,-51,34,-89,87,-89v68,0,90,41,90,69v0,71,-67,52,-66,117r-48,0xm69,0r0,-55r57,0r0,55r-57,0" }, "@": { "d": "149,-168v-42,-3,-65,81,-16,85v42,3,64,-81,16,-85xm224,-196r-23,93v-3,10,-6,23,3,23v21,0,43,-27,43,-66v0,-57,-43,-88,-98,-88v-62,0,-101,45,-101,106v0,97,121,136,183,76r30,0v-24,37,-64,58,-109,58v-77,0,-139,-58,-139,-135v0,-76,62,-134,137,-134v66,0,125,44,125,110v0,74,-62,104,-85,104v-16,1,-24,-10,-27,-20v-29,43,-95,9,-95,-41v0,-62,79,-130,121,-67r5,-19r30,0", "w": 288 }, "A": { "d": "-3,0r98,-257r58,0r96,257r-59,0r-19,-57r-96,0r-20,57r-58,0xm124,-194v-14,29,-22,64,-34,95r66,0", "w": 246 }, "B": { "d": "81,-114r0,70v44,-3,102,15,103,-34v1,-49,-59,-34,-103,-36xm25,0r0,-257v83,5,205,-26,203,64v0,25,-13,42,-35,53v31,9,47,33,47,65v0,97,-121,72,-215,75xm81,-213r0,60v39,-2,93,12,92,-31v-2,-42,-54,-26,-92,-29", "w": 253 }, "C": { "d": "251,-171r-55,0v-4,-26,-28,-45,-56,-45v-51,0,-70,44,-70,89v0,43,19,86,70,86v35,0,54,-24,58,-58r55,0v-6,64,-50,105,-113,105v-80,0,-126,-59,-126,-133v0,-76,46,-136,126,-136v57,0,104,33,111,92", "w": 266 }, "D": { "d": "25,0r0,-257r111,0v67,0,116,42,116,127v0,75,-38,130,-116,130r-111,0xm81,-210r0,162v68,2,111,3,115,-77v4,-69,-40,-93,-115,-85", "w": 266 }, "E": { "d": "25,0r0,-257r192,0r0,47r-136,0r0,56r125,0r0,43r-125,0r0,63r139,0r0,48r-195,0", "w": 233 }, "F": { "d": "25,0r0,-257r181,0r0,47r-125,0r0,60r108,0r0,44r-108,0r0,106r-56,0", "w": 213, "k": { "A": 20, "\u00c6": 20, "\u00c1": 20, "\u00c2": 20, "\u00c4": 20, "\u00c0": 20, "\u00c5": 20, "\u00c3": 20, ",": 46, ".": 46} }, "G": { "d": "216,0r-5,-29v-71,84,-197,5,-197,-98v0,-76,46,-136,126,-136v53,0,102,33,108,91r-54,0v-6,-28,-27,-44,-54,-44v-51,0,-70,44,-70,89v0,43,19,86,70,86v37,0,58,-20,61,-56r-57,0r0,-42r108,0r0,139r-36,0", "w": 273 }, "H": { "d": "25,0r0,-257r56,0r0,99r104,0r0,-99r57,0r0,257r-57,0r0,-111r-104,0r0,111r-56,0", "w": 266 }, "I": { "d": "25,0r0,-257r56,0r0,257r-56,0", "w": 106 }, "J": { "d": "175,-257r0,176v0,33,-8,87,-85,87v-50,0,-94,-33,-85,-102r51,0v-1,30,1,55,33,55v30,0,30,-25,30,-43r0,-173r56,0" }, "K": { "d": "25,0r0,-257r56,0r0,107r101,-107r70,0r-100,101r110,156r-71,0r-77,-116r-33,33r0,83r-56,0", "w": 259 }, "L": { "d": "25,0r0,-257r56,0r0,209r126,0r0,48r-182,0", "w": 213, "k": { "T": 40, "V": 33, "W": 20, "y": 13, "\u00fd": 13, "\u00ff": 13, "Y": 40, "\u00dd": 40, "\u0178": 40, "\u2019": 27} }, "M": { "d": "25,0r0,-257r79,0r61,177r57,-177r80,0r0,257r-53,0r-1,-182r-63,182r-44,0r-63,-180r0,180r-53,0", "w": 326 }, "N": { "d": "25,0r0,-257r56,0r108,172r0,-172r53,0r0,257r-57,0r-107,-172r0,172r-53,0", "w": 266 }, "O": { "d": "14,-127v0,-76,46,-136,126,-136v80,0,126,60,126,136v0,74,-46,133,-126,133v-80,0,-126,-59,-126,-133xm70,-127v0,43,19,86,70,86v51,0,70,-43,70,-86v0,-45,-19,-89,-70,-89v-51,0,-70,44,-70,89", "w": 280 }, "P": { "d": "25,0r0,-257r116,0v64,0,89,40,89,82v0,42,-25,83,-89,83r-60,0r0,92r-56,0xm81,-213r0,77v44,-2,94,11,94,-39v0,-49,-50,-36,-94,-38", "w": 240, "k": { "A": 27, "\u00c6": 27, "\u00c1": 27, "\u00c2": 27, "\u00c4": 27, "\u00c0": 27, "\u00c5": 27, "\u00c3": 27, ",": 46, ".": 46} }, "Q": { "d": "265,-4r-26,28r-37,-33v-17,10,-38,15,-62,15v-80,0,-126,-59,-126,-133v0,-76,46,-136,126,-136v119,0,162,152,93,230xm139,-67r26,-28r29,27v30,-46,20,-148,-54,-148v-51,0,-70,44,-70,89v0,51,35,101,93,82", "w": 280 }, "R": { "d": "190,0v-13,-35,4,-100,-52,-100r-57,0r0,100r-56,0r0,-257r138,0v81,-4,104,109,35,135v49,16,28,78,48,122r-56,0xm81,-213r0,72v44,-3,101,13,101,-36v0,-48,-57,-34,-101,-36", "w": 259, "k": { "T": 6, "V": -2, "W": -2, "Y": 13, "\u00dd": 13, "\u0178": 13} }, "S": { "d": "72,-190v0,48,153,16,153,114v0,47,-37,82,-107,82v-57,0,-110,-28,-109,-91r54,0v0,34,27,47,57,47v20,0,50,-6,50,-32v0,-28,-38,-32,-76,-42v-38,-10,-77,-25,-77,-73v0,-106,202,-106,199,5r-54,0v-2,-31,-24,-39,-51,-39v-18,0,-39,7,-39,29", "w": 233 }, "T": { "d": "82,0r0,-210r-77,0r0,-47r210,0r0,47r-77,0r0,210r-56,0", "w": 219, "k": { "\u00fc": 33, "\u0161": 40, "\u00f2": 40, "\u00f6": 40, "\u00e8": 40, "\u00eb": 40, "\u00ea": 40, "\u00e3": 40, "\u00e5": 40, "\u00e0": 40, "\u00e4": 40, "\u00e2": 40, "w": 40, "y": 33, "\u00fd": 33, "\u00ff": 33, "A": 27, "\u00c6": 27, "\u00c1": 27, "\u00c2": 27, "\u00c4": 27, "\u00c0": 27, "\u00c5": 27, "\u00c3": 27, ",": 40, ".": 40, "c": 40, "\u00e7": 40, "e": 40, "\u00e9": 40, "o": 40, "\u00f8": 40, "\u0153": 40, "\u00f3": 40, "\u00f4": 40, "\u00f5": 40, "-": 46, "a": 40, "\u00e6": 40, "\u00e1": 40, "r": 33, "s": 40, "u": 33, "\u00fa": 33, "\u00fb": 33, "\u00f9": 33, ":": 31, ";": 31} }, "U": { "d": "243,-257r0,160v0,69,-41,103,-110,103v-69,0,-109,-33,-109,-103r0,-160r56,0r0,160v0,28,7,56,53,56v40,0,53,-18,53,-56r0,-160r57,0", "w": 266 }, "V": { "d": "230,-257r-86,257r-63,0r-84,-257r58,0r58,181r58,-181r59,0", "w": 226, "k": { "\u00f6": 20, "\u00f4": 20, "\u00ee": 6, "\u00e8": 20, "\u00eb": 20, "\u00ea": 20, "\u00e3": 20, "\u00e5": 20, "\u00e0": 20, "\u00e4": 20, "\u00e2": 20, "y": 6, "\u00fd": 6, "\u00ff": 6, "A": 17, "\u00c6": 17, "\u00c1": 17, "\u00c2": 17, "\u00c4": 17, "\u00c0": 17, "\u00c5": 17, "\u00c3": 17, ",": 46, ".": 46, "e": 20, "\u00e9": 20, "o": 20, "\u00f8": 20, "\u0153": 20, "\u00f3": 20, "\u00f2": 20, "\u00f5": 20, "-": 20, "a": 20, "\u00e6": 20, "\u00e1": 20, "r": 13, "u": 13, "\u00fa": 13, "\u00fb": 13, "\u00fc": 13, "\u00f9": 13, ":": 18, ";": 18, "i": 6, "\u00ed": 6, "\u00ef": 6, "\u00ec": 6} }, "W": { "d": "339,-257r-69,257r-57,0r-44,-175r-43,175r-57,0r-68,-257r57,0r41,175r45,-175r53,0r44,177r42,-177r56,0", "w": 339, "k": { "\u00fc": 6, "\u00f6": 13, "\u00ea": 13, "\u00e4": 13, "A": 6, "\u00c6": 6, "\u00c1": 6, "\u00c2": 6, "\u00c4": 6, "\u00c0": 6, "\u00c5": 6, "\u00c3": 6, ",": 27, ".": 27, "e": 13, "\u00e9": 13, "\u00eb": 13, "\u00e8": 13, "o": 13, "\u00f8": 13, "\u0153": 13, "\u00f3": 13, "\u00f4": 13, "\u00f2": 13, "\u00f5": 13, "a": 13, "\u00e6": 13, "\u00e1": 13, "\u00e2": 13, "\u00e0": 13, "\u00e5": 13, "\u00e3": 13, "r": 6, "u": 6, "\u00fa": 6, "\u00fb": 6, "\u00f9": 6, ":": 6, ";": 6} }, "X": { "d": "-2,0r90,-135r-83,-122r66,0r50,82r52,-82r62,0r-82,123r89,134r-67,0r-56,-89r-57,89r-64,0", "w": 240 }, "Y": { "d": "91,0r0,-100r-94,-157r63,0r61,101r59,-101r63,0r-95,158r0,99r-57,0", "w": 240, "k": { "\u00fc": 27, "\u00f6": 33, "v": 20, "A": 27, "\u00c6": 27, "\u00c1": 27, "\u00c2": 27, "\u00c4": 27, "\u00c0": 27, "\u00c5": 27, "\u00c3": 27, ",": 40, ".": 40, "e": 33, "\u00e9": 33, "\u00ea": 33, "\u00eb": 33, "\u00e8": 33, "o": 33, "\u00f8": 33, "\u0153": 33, "\u00f3": 33, "\u00f4": 33, "\u00f2": 33, "\u00f5": 33, "q": 33, "-": 40, "a": 33, "\u00e6": 33, "\u00e1": 33, "\u00e2": 33, "\u00e4": 33, "\u00e0": 33, "\u00e5": 33, "\u00e3": 33, "u": 27, "\u00fa": 27, "\u00fb": 27, "\u00f9": 27, ":": 29, ";": 24, "i": 5, "\u00ed": 5, "\u00ee": 5, "\u00ef": 5, "\u00ec": 5, "p": 27} }, "Z": { "d": "8,0r0,-45r138,-165r-127,0r0,-47r202,0r0,45r-137,164r141,0r0,48r-217,0", "w": 233 }, "[": { "d": "24,66r0,-329r96,0r0,40r-44,0r0,248r44,0r0,41r-96,0", "w": 119 }, "\\": { "d": "37,-263r101,269r-42,0r-100,-269r41,0", "w": 133 }, "]": { "d": "95,-263r0,329r-95,0r0,-41r44,0r0,-248r-44,0r0,-40r95,0", "w": 119 }, "^": { "d": "22,-113r62,-139r48,0r62,139r-42,0r-44,-99r-44,99r-42,0", "w": 216 }, "_": { "d": "0,45r0,-18r180,0r0,18r-180,0", "w": 180 }, "\u2018": { "d": "76,-197r0,56r-52,0v-4,-59,0,-111,52,-116r0,24v-18,6,-24,18,-24,36r24,0", "w": 100, "k": { "\u2018": 23} }, "a": { "d": "135,-91v-19,16,-73,1,-72,38v0,19,14,24,31,24v49,0,40,-31,41,-62xm68,-129r-51,0v3,-48,46,-62,88,-62v37,0,81,8,81,53v0,45,-6,106,7,138r-52,0v-2,-6,-3,-12,-3,-18v-36,38,-127,32,-126,-33v0,-42,31,-51,63,-56v31,-4,60,-4,60,-25v0,-22,-15,-25,-33,-25v-19,0,-32,8,-34,28", "w": 206 }, "b": { "d": "19,0r0,-257r52,0r0,94v48,-55,137,-29,136,70v0,68,-40,98,-77,98v-28,1,-49,-10,-62,-29r0,24r-49,0xm156,-93v0,-31,-14,-60,-44,-60v-30,0,-43,29,-43,60v0,31,13,60,43,60v30,0,44,-29,44,-60", "w": 219 }, "c": { "d": "196,-121r-50,0v-3,-21,-17,-32,-38,-32v-33,0,-43,34,-43,61v0,27,10,59,42,59v24,0,38,-15,41,-38r49,0v-6,49,-40,76,-89,76v-56,0,-94,-39,-94,-95v0,-58,35,-101,95,-101v44,0,84,22,87,70", "w": 206 }, "d": { "d": "152,0r0,-24v-12,20,-33,29,-57,29v-56,0,-83,-49,-83,-100v0,-50,27,-96,82,-96v23,-1,42,12,56,28r0,-94r51,0r0,257r-49,0xm152,-94v0,-30,-11,-59,-44,-59v-33,0,-45,29,-45,60v0,29,13,60,45,60v34,0,44,-30,44,-61", "w": 219 }, "e": { "d": "196,-81r-134,0v-7,56,74,60,86,23r45,0v-14,44,-46,63,-88,63v-59,0,-95,-40,-95,-98v0,-56,38,-98,95,-98v63,0,95,53,91,110xm62,-113r83,0v-5,-26,-16,-40,-41,-40v-32,0,-41,26,-42,40", "w": 206 }, "f": { "d": "31,0r0,-152r-31,0r0,-34r31,0v-7,-54,29,-78,89,-70r0,39v-24,-6,-43,1,-38,31r35,0r0,34r-35,0r0,152r-51,0", "w": 119, "k": { "\u2019": -6, "f": 6, "\ufb01": 6, "\ufb02": 6, "\u00df": 6} }, "g": { "d": "198,-186r0,174v0,31,-10,83,-96,83v-37,0,-79,-18,-82,-60r51,0v13,44,87,27,79,-21v-1,-7,2,-18,-1,-24v-11,19,-34,29,-56,29v-56,0,-79,-43,-79,-94v0,-48,28,-92,80,-92v25,-1,42,10,56,30r0,-25r48,0xm106,-44v29,0,44,-24,44,-51v0,-30,-11,-58,-44,-58v-29,0,-41,25,-41,53v0,27,10,56,41,56", "w": 219 }, "h": { "d": "19,0r0,-257r52,0r1,97v13,-21,35,-31,54,-31v97,-2,61,108,68,191r-51,0v-6,-52,21,-148,-33,-151v-59,-3,-34,97,-39,151r-52,0", "w": 213 }, "i": { "d": "21,0r0,-186r51,0r0,186r-51,0xm72,-257r0,42r-51,0r0,-42r51,0", "w": 92 }, "j": { "d": "-7,64r0,-42v14,2,31,3,31,-15r0,-193r51,0r0,195v5,44,-31,63,-82,55xm75,-257r0,42r-51,0r0,-42r51,0", "w": 100 }, "k": { "d": "24,0r0,-257r51,0r0,138r65,-67r60,0r-70,68r78,118r-62,0r-51,-83r-20,19r0,64r-51,0", "w": 206 }, "l": { "d": "21,0r0,-257r51,0r0,257r-51,0", "w": 92 }, "m": { "d": "21,0r0,-186r48,0v1,8,-2,19,1,25v23,-38,91,-43,111,1v26,-47,124,-44,124,35r0,125r-51,0r0,-105v0,-25,-2,-46,-31,-46v-29,0,-34,24,-34,47r0,104r-51,0r0,-104v0,-22,1,-47,-31,-47v-10,0,-35,7,-35,43r0,108r-51,0", "w": 326 }, "n": { "d": "19,0r0,-186r49,0v1,8,-2,20,1,26v13,-21,35,-31,57,-31v97,-2,61,108,68,191r-51,0v-6,-52,21,-148,-33,-151v-59,-3,-34,97,-39,151r-52,0", "w": 213 }, "o": { "d": "14,-93v0,-59,38,-98,96,-98v59,0,96,39,96,98v0,59,-37,98,-96,98v-58,0,-96,-39,-96,-98xm65,-93v0,30,10,60,45,60v35,0,45,-30,45,-60v0,-30,-10,-60,-45,-60v-35,0,-45,30,-45,60", "w": 219 }, "p": { "d": "19,66r0,-252r49,0v1,7,-2,18,1,24v12,-20,32,-29,55,-29v58,0,85,47,85,100v0,50,-28,96,-82,96v-22,0,-44,-10,-56,-28r0,89r-52,0xm113,-33v33,0,45,-30,45,-60v0,-30,-12,-60,-45,-60v-33,0,-44,30,-44,60v0,30,11,60,44,60", "w": 219 }, "q": { "d": "201,-186r0,252r-51,0r-1,-89v-12,20,-37,28,-59,28v-34,0,-78,-25,-78,-97v0,-51,26,-99,83,-99v23,0,45,8,57,29r0,-24r49,0xm108,-153v-61,0,-62,120,-1,120v33,0,45,-28,45,-59v0,-29,-12,-61,-44,-61", "w": 219 }, "r": { "d": "19,0r0,-186r49,0v1,11,-2,25,1,34v11,-25,40,-45,70,-37r0,47v-43,-10,-68,18,-68,58r0,84r-52,0", "w": 140, "k": { ",": 33, ".": 33, "c": 6, "\u00e7": 6, "d": 6, "\u0131": 6, "e": 6, "\u00e9": 6, "\u00ea": 6, "\u00eb": 6, "\u00e8": 6, "n": -6, "\u00f1": -6, "o": 6, "\u00f8": 6, "\u0153": 6, "\u00f3": 6, "\u00f4": 6, "\u00f6": 6, "\u00f2": 6, "\u00f5": 6, "q": 6, "-": 20} }, "s": { "d": "132,-53v0,-36,-117,-18,-117,-78v0,-48,41,-60,81,-60v41,0,78,13,82,59r-49,0v-1,-20,-17,-25,-35,-25v-12,0,-28,2,-28,17v0,18,29,21,58,28v30,7,59,17,59,52v0,49,-43,65,-85,65v-43,0,-86,-16,-88,-65r49,0v-2,38,73,44,73,7", "w": 193 }, "t": { "d": "84,-242r0,56r38,0r0,34r-38,0r0,92v-3,24,19,24,38,20r0,40v-41,4,-89,6,-89,-42r0,-110r-31,0r0,-34r31,0r0,-56r51,0", "w": 126 }, "u": { "d": "194,-186r0,186r-49,0v-1,-8,2,-20,-1,-26v-13,21,-35,31,-57,31v-97,2,-61,-108,-68,-191r52,0r0,105v0,31,8,46,32,46v59,0,35,-96,40,-151r51,0", "w": 213 }, "v": { "d": "185,-186r-63,186r-56,0r-64,-186r53,0r40,127r40,-127r50,0", "w": 187, "k": { ",": 20, ".": 20} }, "w": { "d": "291,-186r-59,186r-52,0r-34,-125r-32,125r-53,0r-59,-186r54,0r35,126r31,-126r50,0r32,126r34,-126r53,0", "w": 293, "k": { ",": 20, ".": 20} }, "x": { "d": "0,0r67,-98r-61,-88r58,0r33,48r32,-48r57,0r-61,87r68,99r-58,0r-39,-59r-39,59r-57,0", "w": 193 }, "y": { "d": "189,-186r-78,209v-12,40,-48,47,-95,41r0,-42v30,7,58,-5,47,-34r-65,-174r55,0r42,127r41,-127r53,0", "w": 186, "k": { ",": 20, ".": 20} }, "z": { "d": "8,0r0,-39r97,-109r-90,0r0,-38r157,0r0,38r-97,109r104,0r0,39r-171,0", "w": 186 }, "{": { "d": "120,-263r0,40v-24,-3,-39,5,-39,26r0,55v0,37,-27,40,-36,44v11,1,36,9,36,39v0,38,-20,93,39,84r0,41v-49,1,-90,4,-90,-49r0,-70v0,-22,-21,-30,-33,-30r0,-31v12,0,33,-9,33,-33r0,-68v6,-53,41,-49,90,-48", "w": 119 }, "|": { "d": "21,77r0,-360r38,0r0,360r-38,0", "w": 80 }, "}": { "d": "0,66r0,-41v24,3,39,-5,39,-26r0,-58v0,-31,27,-36,36,-40v-11,-1,-36,-8,-36,-43v0,-37,18,-90,-39,-81r0,-40v49,-1,90,-5,90,48r0,68v0,24,21,33,33,33r0,31v-12,0,-33,8,-33,30r0,70v-6,53,-41,51,-90,49", "w": 119 }, "~": { "d": "69,-122v24,0,56,23,77,24v14,0,23,-13,31,-26r15,34v-11,15,-23,31,-45,31v-36,0,-90,-51,-108,1r-15,-33v8,-15,21,-31,45,-31", "w": 216 }, "\u00a1": { "d": "78,-191r0,55r-56,0r0,-55r56,0xm23,66v-3,-67,7,-123,14,-180r26,0v7,58,17,112,14,180r-54,0", "w": 100 }, "\u00a2": { "d": "94,-33r0,-119v-49,15,-47,103,0,119xm94,41r0,-36v-51,-3,-86,-44,-86,-95v0,-55,30,-96,86,-101r0,-31r21,0r0,31v40,0,79,28,80,71r-50,0v-1,-17,-14,-32,-30,-33r0,120v18,-3,31,-22,31,-40r50,0v-4,46,-37,74,-81,78r0,36r-21,0" }, "\u00a3": { "d": "204,-17v-50,57,-118,-18,-172,23r-23,-33v26,-16,54,-49,34,-84r-35,0r0,-31r23,0v-36,-49,-11,-121,76,-121v54,0,87,32,87,90r-49,0v-1,-14,-2,-48,-39,-48v-42,0,-45,38,-20,79r48,0r0,31r-38,0v12,33,-10,57,-26,73v38,-27,80,24,113,-15" }, "\u2044": { "d": "-60,8r149,-268r31,0r-148,268r-32,0", "w": 60 }, "\u00a5": { "d": "129,0r-54,0r0,-50r-57,0r0,-34r57,0v1,-12,-1,-21,-6,-27r-51,0r0,-34r34,0r-55,-112r58,0r48,112r46,-112r59,0r-56,112r34,0r0,34r-51,0v-5,6,-7,15,-6,27r57,0r0,34r-57,0r0,50" }, "\u0192": { "d": "-2,60r7,-38v23,4,36,-3,40,-25r23,-118r-33,0r6,-35r33,0v10,-54,17,-114,83,-107v9,0,18,0,27,2r-7,39v-20,-8,-37,0,-41,20r-9,46r35,0r-6,35r-36,0v-22,79,1,204,-122,181" }, "\u00a7": { "d": "152,-81v-9,-33,-52,-37,-76,-56v-13,-10,-28,8,-28,21v0,7,4,13,12,17v26,12,45,30,75,38v9,0,17,-12,17,-20xm128,3v0,-46,-124,-51,-124,-115v0,-26,14,-44,38,-53v-40,-41,7,-98,60,-98v42,0,76,24,76,69r-45,0v5,-36,-55,-42,-58,-8v8,44,122,49,122,112v0,24,-16,45,-38,53v14,10,20,25,20,42v0,41,-41,61,-77,61v-46,0,-81,-21,-81,-70r45,0v1,21,13,31,35,31v15,0,27,-8,27,-24" }, "\u00a4": { "d": "7,-54r21,-21v-23,-24,-25,-78,0,-102r-21,-21r21,-21r20,20v24,-20,79,-22,102,0r21,-21r22,22r-20,20v21,25,22,79,-1,104r20,20r-20,20r-20,-21v-24,24,-79,24,-104,1r-21,21xm101,-177v-30,0,-46,24,-46,51v0,26,15,51,45,51v59,1,59,-101,1,-102" }, "'": { "d": "31,-141r0,-116r38,0r0,116r-38,0", "w": 100 }, "\u201c": { "d": "147,-197r0,56r-51,0v-3,-58,-1,-111,51,-116r0,24v-18,6,-24,18,-24,36r24,0xm71,-197r0,56r-52,0v-4,-59,0,-111,52,-116r0,24v-18,6,-24,18,-24,36r24,0", "w": 166 }, "\u00ab": { "d": "145,-29r-57,-45r0,-48r57,-45r0,44r-33,25r33,26r0,43xm72,-29r-57,-45r0,-48r57,-45r0,44r-33,25r33,26r0,43", "w": 159 }, "\u2039": { "d": "72,-29r-57,-45r0,-48r57,-45r0,44r-33,25r33,26r0,43", "w": 86 }, "\u203a": { "d": "15,-167r57,45r0,48r-57,45r0,-43r33,-26r-33,-25r0,-44", "w": 86 }, "\u2013": { "d": "0,-76r0,-44r180,0r0,44r-180,0", "w": 180 }, "\u2020": { "d": "76,60r0,-204r-67,0r0,-42r67,0r0,-71r48,0r0,71r68,0r0,42r-68,0r0,204r-48,0" }, "\u2021": { "d": "76,60r0,-70r-67,0r0,-42r67,0r0,-92r-67,0r0,-42r67,0r0,-71r48,0r0,71r68,0r0,42r-68,0r0,92r68,0r0,42r-68,0r0,70r-48,0" }, "\u00b7": { "d": "20,-103v0,-17,13,-31,30,-31v16,0,31,14,31,31v0,15,-14,30,-30,30v-17,0,-31,-13,-31,-30", "w": 100 }, "\u00b6": { "d": "80,60r0,-189v-50,0,-79,-25,-79,-63v-1,-87,111,-61,192,-65r0,317r-37,0r0,-288r-40,0r0,288r-36,0", "w": 223 }, "\u2022": { "d": "26,-129v0,-36,28,-64,64,-64v36,0,64,28,64,64v0,36,-28,65,-64,65v-36,0,-64,-29,-64,-65", "w": 180 }, "\u201a": { "d": "24,0r0,-55r52,0v4,59,-1,110,-52,115r0,-24v18,-6,24,-18,24,-36r-24,0", "w": 100 }, "\u201e": { "d": "96,0r0,-55r51,0v3,58,0,110,-51,115r0,-24v18,-6,24,-18,24,-36r-24,0xm19,0r0,-55r52,0v4,59,-1,110,-52,115r0,-24v18,-6,24,-18,24,-36r-24,0", "w": 166 }, "\u201d": { "d": "96,-202r0,-55r51,0v3,58,0,111,-51,116r0,-24v18,-6,24,-19,24,-37r-24,0xm19,-202r0,-55r52,0v4,59,-1,110,-52,116r0,-24v18,-6,24,-19,24,-37r-24,0", "w": 166 }, "\u00bb": { "d": "88,-167r57,45r0,48r-57,45r0,-43r33,-26r-33,-25r0,-44xm15,-167r57,45r0,48r-57,45r0,-43r33,-26r-33,-25r0,-44", "w": 159 }, "\u2026": { "d": "32,0r0,-55r56,0r0,55r-56,0xm152,0r0,-55r56,0r0,55r-56,0xm271,0r0,-55r57,0r0,55r-57,0", "w": 360 }, "\u2030": { "d": "191,-62v0,21,1,44,20,44v21,0,20,-22,20,-39v0,-19,0,-38,-19,-38v-20,0,-21,19,-21,33xm158,-56v0,-34,16,-63,53,-63v39,0,53,28,53,63v0,35,-16,61,-53,61v-33,0,-53,-25,-53,-61xm283,-56v0,-34,16,-63,53,-63v39,0,52,28,52,63v0,35,-15,61,-52,61v-33,0,-53,-25,-53,-61xm315,-62v0,21,2,44,21,44v21,0,20,-22,20,-39v0,-19,-1,-38,-20,-38v-20,0,-21,19,-21,33xm25,-194v0,-34,16,-63,53,-63v39,0,52,28,52,63v0,35,-16,61,-53,61v-33,0,-52,-25,-52,-61xm57,-200v0,21,1,43,20,43v21,0,21,-21,21,-38v0,-19,-1,-39,-20,-39v-20,0,-21,20,-21,34xm54,8r149,-268r31,0r-149,268r-31,0", "w": 412 }, "\u00bf": { "d": "126,-116v8,69,-58,65,-58,112v0,22,12,32,31,32v25,0,36,-20,36,-46r53,0v-1,51,-35,89,-87,89v-68,0,-89,-42,-89,-70v0,-71,66,-53,65,-117r49,0xm131,-191r0,55r-57,0r0,-55r57,0" }, "`": { "d": "38,-209r-55,-51r56,0r35,51r-36,0", "w": 93 }, "\u00b4": { "d": "111,-260r-56,51r-36,0r35,-51r57,0", "w": 93 }, "\u02c6": { "d": "-17,-209r40,-51r47,0r40,51r-42,0r-23,-29r-23,29r-39,0", "w": 93 }, "\u02dc": { "d": "26,-257v16,0,32,12,47,13v11,0,15,-6,15,-13r25,0v-6,19,-13,41,-41,41v-25,0,-61,-29,-69,3r-22,0v5,-21,13,-44,45,-44", "w": 93 }, "\u00af": { "d": "-21,-222r0,-27r135,0r0,27r-135,0", "w": 93 }, "\u02d8": { "d": "-14,-262r23,0v8,37,70,33,76,0r22,0v-5,37,-29,53,-64,53v-35,0,-54,-18,-57,-53", "w": 93 }, "\u02d9": { "d": "22,-215r0,-42r49,0r0,42r-49,0", "w": 93 }, "\u00a8": { "d": "59,-215r0,-42r49,0r0,42r-49,0xm-15,-215r0,-42r49,0r0,42r-49,0", "w": 93 }, "\u02da": { "d": "24,-236v0,14,8,25,22,25v14,0,23,-11,23,-25v0,-14,-9,-25,-23,-25v-14,0,-22,11,-22,25xm3,-236v0,-24,19,-44,43,-44v24,0,45,20,45,44v0,24,-21,44,-45,44v-24,0,-43,-20,-43,-44", "w": 93 }, "\u00b8": { "d": "4,71r8,-18v11,4,45,16,45,-5v0,-23,-33,-1,-37,-18r21,-31r18,0v-3,6,-12,15,-13,20v18,-6,45,1,45,23v0,46,-59,39,-87,29", "w": 93 }, "\u02dd": { "d": "69,-260r-54,51r-35,0r33,-51r56,0xm144,-260r-54,51r-36,0r33,-51r57,0", "w": 93 }, "\u02db": { "d": "73,46r17,8v-14,18,-32,24,-48,24v-9,0,-39,-2,-39,-32v0,-6,1,-23,41,-47r24,0v-23,21,-30,34,-30,46v0,17,27,16,35,1", "w": 93 }, "\u02c7": { "d": "110,-260r-40,51r-47,0r-40,-51r41,0r23,29r23,-29r40,0", "w": 93 }, "\u2014": { "d": "47,-76r0,-44r266,0r0,44r-266,0", "w": 360 }, "\u00c6": { "d": "150,-210r-49,111r62,0r0,-111r-13,0xm-4,0r123,-257r218,0r0,47r-120,0r0,56r113,0r0,43r-113,0r0,63r123,0r0,48r-177,0r0,-57r-81,0r-26,57r-60,0", "w": 353 }, "\u00aa": { "d": "83,-193v-12,10,-42,3,-43,21v16,29,51,7,43,-21xm7,-218v4,-29,26,-39,56,-39v25,0,54,5,54,32v0,28,-4,68,5,87r-37,0v-1,-4,-2,-7,-2,-11v-24,23,-79,21,-79,-22v0,-26,20,-32,41,-35v22,-3,38,-2,38,-14v-1,-20,-38,-20,-39,2r-37,0", "w": 123 }, "\u0141": { "d": "25,0r0,-77r-29,20r0,-40r29,-20r0,-140r56,0r0,100r76,-53r0,40r-76,53r0,69r126,0r0,48r-182,0", "w": 213, "k": { "T": 40, "V": 33, "W": 20, "y": 13, "\u00fd": 13, "\u00ff": 13, "Y": 40, "\u00dd": 40, "\u0178": 40, "\u2019": 27} }, "\u00d8": { "d": "12,-4r31,-34v-63,-80,-20,-225,97,-225v33,0,60,10,81,28r29,-32r18,15r-30,34v61,82,20,224,-98,224v-33,0,-60,-10,-80,-27r-30,33xm80,-79r107,-118v-11,-11,-26,-19,-47,-19v-68,0,-83,82,-60,137xm200,-176r-106,117v11,11,26,18,46,18v69,-1,83,-80,60,-135", "w": 280 }, "\u0152": { "d": "196,0v-1,-6,2,-15,-1,-19v-15,17,-40,25,-62,25v-76,0,-119,-62,-119,-133v0,-95,103,-179,182,-112r0,-18r180,0r0,47r-128,0r0,56r117,0r0,43r-117,0r0,63r130,0r0,48r-182,0xm137,-41v59,2,57,-59,57,-120v0,-32,-24,-55,-56,-55v-93,1,-92,173,-1,175", "w": 393 }, "\u00ba": { "d": "4,-196v0,-38,25,-61,62,-61v37,0,62,23,62,61v0,38,-25,61,-62,61v-37,0,-62,-23,-62,-61xm66,-230v-31,0,-31,67,0,68v32,-1,31,-68,0,-68", "w": 132 }, "\u00e6": { "d": "139,-91v-20,16,-73,3,-74,38v0,19,16,24,31,24v27,1,50,-23,43,-62xm316,-81r-133,0v-1,24,17,52,45,52v22,0,34,-11,37,-29r49,0v-14,68,-114,86,-155,31v-34,45,-145,50,-145,-23v0,-42,31,-52,62,-57v44,-6,63,-7,63,-26v0,-34,-70,-34,-69,5r-51,0v2,-70,110,-83,149,-38v14,-17,32,-25,62,-25v62,0,86,52,86,110xm183,-113r82,0v0,-23,-14,-44,-40,-44v-26,0,-42,21,-42,44", "w": 326 }, "\u0131": { "d": "21,0r0,-186r51,0r0,186r-51,0", "w": 92 }, "\u0142": { "d": "21,0r0,-103r-24,19r0,-37r24,-19r0,-117r51,0r0,77r24,-19r0,37r-24,19r0,143r-51,0", "w": 92 }, "\u00f8": { "d": "70,-62r70,-79v-7,-7,-17,-12,-30,-12v-46,0,-51,53,-40,91xm149,-126r-70,80v7,8,17,13,31,13v47,0,52,-56,39,-93xm16,0r21,-25v-50,-58,-14,-166,73,-166v23,0,42,6,58,17r20,-22r13,12r-20,22v52,56,19,167,-71,167v-23,0,-44,-6,-60,-18r-21,24", "w": 219 }, "\u0153": { "d": "190,-113r82,0v-1,-24,-15,-40,-42,-40v-26,0,-39,18,-40,40xm104,-33v34,0,41,-34,41,-61v0,-25,-6,-59,-40,-59v-31,0,-40,33,-40,61v0,26,8,59,39,59xm323,-81r-133,0v-7,48,68,67,82,22r49,0v-15,66,-114,88,-154,32v-13,23,-41,32,-66,32v-58,0,-87,-46,-87,-99v0,-84,105,-132,155,-68v13,-19,40,-29,62,-29v66,0,92,51,92,110", "w": 333 }, "\u00df": { "d": "20,0r0,-177v0,-40,13,-86,85,-86v43,0,81,21,81,69v1,23,-15,43,-33,51v31,7,47,33,47,64v0,55,-45,96,-108,82r0,-42v31,9,57,-13,57,-42v0,-30,-22,-49,-57,-43r0,-34v23,4,46,-6,46,-31v0,-30,-24,-32,-35,-32v-21,0,-32,14,-32,35r0,186r-51,0", "w": 219 }, "\u00b9": { "d": "104,-254r0,156r-37,0r0,-99r-39,0r0,-27v23,1,43,-7,46,-30r30,0", "w": 141 }, "\u00ac": { "d": "199,-146r0,110r-39,0r0,-72r-143,0r0,-38r182,0", "w": 216 }, "\u00b5": { "d": "194,-186r0,186r-49,0v-1,-8,2,-20,-1,-26v-19,30,-50,40,-73,22r0,70r-52,0r0,-252r52,0r0,105v0,31,8,46,32,46v59,0,35,-96,40,-151r51,0", "w": 213 }, "\u2122": { "d": "334,-257r0,148r-34,0r-1,-105r-38,105r-25,0r-39,-105r0,105r-35,0r0,-148r49,0r37,98r37,-98r49,0xm143,-257r0,29r-42,0r0,119r-37,0r0,-119r-42,0r0,-29r121,0", "w": 360 }, "\u00d0": { "d": "25,0r0,-112r-24,0r0,-42r24,0r0,-103r111,0v67,0,116,42,116,127v0,75,-38,130,-116,130r-111,0xm81,-210r0,56r58,0r0,42r-58,0r0,64v68,2,111,3,115,-77v4,-69,-40,-93,-115,-85", "w": 266 }, "\u00bd": { "d": "55,8r149,-268r30,0r-148,268r-31,0xm85,-254r0,156r-37,0r0,-99r-39,0r0,-27v23,1,43,-7,46,-30r30,0xm305,-110v0,48,-55,49,-77,81r75,0r0,29r-120,0v0,-38,22,-53,50,-71v14,-9,35,-18,35,-37v0,-13,-9,-22,-22,-22v-20,0,-27,20,-26,34r-37,0v0,-37,21,-63,65,-63v30,0,57,17,57,49", "w": 320 }, "\u00b1": { "d": "127,-182r0,47r72,0r0,39r-72,0r0,47r-38,0r0,-47r-72,0r0,-39r72,0r0,-47r38,0xm17,0r0,-39r182,0r0,39r-182,0", "w": 216 }, "\u00de": { "d": "25,0r0,-257r56,0r0,35r60,0v64,0,89,40,89,82v0,42,-25,83,-89,83r-60,0r0,57r-56,0xm81,-178r0,77v44,-2,94,11,94,-39v0,-49,-50,-36,-94,-38", "w": 240 }, "\u00bc": { "d": "248,0r0,-32r-69,0r0,-34r68,-85r36,0r0,90r20,0r0,29r-20,0r0,32r-35,0xm248,-61v-1,-17,2,-37,-1,-52r-41,52r42,0xm55,8r149,-268r30,0r-148,268r-31,0xm85,-254r0,156r-37,0r0,-99r-39,0r0,-27v23,1,43,-7,46,-30r30,0", "w": 321 }, "\u00f7": { "d": "17,-72r0,-38r182,0r0,38r-182,0xm78,-166v0,-17,13,-30,30,-30v16,0,31,13,31,30v0,15,-14,31,-30,31v-17,0,-31,-14,-31,-31xm78,-16v0,-17,13,-30,30,-30v16,0,31,13,31,30v0,15,-14,30,-30,30v-17,0,-31,-13,-31,-30", "w": 216 }, "\u00a6": { "d": "21,32r0,-90r38,0r0,90r-38,0xm59,-238r0,90r-38,0r0,-90r38,0", "w": 80 }, "\u00b0": { "d": "19,-204v0,-30,23,-53,53,-53v30,0,53,23,53,53v0,30,-23,54,-53,54v-30,0,-53,-24,-53,-54xm42,-204v0,40,60,41,60,0v0,-17,-15,-31,-30,-31v-15,0,-30,14,-30,31", "w": 144 }, "\u00fe": { "d": "19,66r0,-323r52,0r0,95v12,-20,32,-29,53,-29v58,0,85,47,85,100v0,50,-28,96,-82,96v-22,0,-44,-10,-56,-28r0,89r-52,0xm158,-93v0,-30,-12,-60,-45,-60v-33,0,-44,30,-44,60v0,30,11,60,44,60v33,0,45,-30,45,-60", "w": 219 }, "\u00be": { "d": "255,0r0,-32r-69,0r0,-34r68,-85r36,0r0,90r20,0r0,29r-20,0r0,32r-35,0xm255,-61r0,-52r-42,52r42,0xm86,8r149,-268r31,0r-149,268r-31,0xm65,-167r0,-25v14,0,34,0,34,-17v0,-12,-10,-19,-22,-19v-15,0,-24,12,-24,26r-35,0v1,-33,23,-55,59,-55v46,0,83,58,33,75v16,6,29,17,29,35v0,35,-29,52,-62,52v-39,0,-64,-21,-63,-58r35,0v1,15,9,29,27,29v14,0,27,-10,27,-23v0,-21,-23,-20,-38,-20", "w": 320 }, "\u00b2": { "d": "131,-208v-1,49,-55,49,-76,81r75,0r0,29r-120,0v0,-38,22,-53,50,-71v14,-9,35,-18,35,-37v0,-13,-9,-22,-22,-22v-20,0,-27,20,-26,34r-37,0v0,-37,21,-63,65,-63v30,0,56,17,56,49", "w": 141 }, "\u00ae": { "d": "6,-129v0,-82,65,-134,138,-134v73,0,138,52,138,134v0,82,-65,135,-138,135v-73,0,-138,-53,-138,-135xm42,-129v0,62,45,106,102,106v56,0,102,-44,102,-106v0,-61,-46,-105,-102,-105v-57,0,-102,44,-102,105xm90,-54r0,-150v52,1,116,-9,116,44v0,28,-17,38,-39,40r40,66r-31,0r-37,-64r-19,0r0,64r-30,0xm120,-181r0,40v25,-1,57,7,56,-21v-1,-24,-32,-18,-56,-19", "w": 288 }, "\u2212": { "d": "17,-72r0,-38r182,0r0,38r-182,0", "w": 216 }, "\u00f0": { "d": "110,-33v62,-1,61,-115,-1,-115v-62,1,-60,115,1,115xm48,-213r38,-20v-10,-7,-20,-13,-30,-18r33,-25v13,7,25,15,36,24r44,-22r19,21r-41,20v38,37,59,80,59,135v0,59,-37,103,-96,103v-58,0,-96,-39,-96,-94v0,-44,24,-93,82,-93v14,-1,32,3,50,14v-9,-20,-25,-35,-37,-45r-40,20", "w": 219 }, "\u00d7": { "d": "50,-6r-27,-27r58,-58r-57,-58r27,-27r57,58r58,-58r27,27r-58,58r58,58r-27,27r-58,-58", "w": 216 }, "\u00b3": { "d": "59,-167r0,-25v14,0,34,0,34,-17v0,-12,-10,-19,-22,-19v-15,0,-24,12,-24,26r-35,0v1,-33,23,-55,59,-55v46,0,83,58,33,75v16,6,29,17,29,35v0,35,-29,52,-62,52v-39,0,-64,-21,-63,-58r34,0v1,15,10,29,28,29v14,0,26,-10,26,-23v0,-21,-22,-20,-37,-20", "w": 141 }, "\u00a9": { "d": "6,-129v0,-82,65,-134,138,-134v73,0,138,52,138,134v0,82,-65,135,-138,135v-73,0,-138,-53,-138,-135xm42,-129v0,61,45,106,102,106v56,0,102,-45,102,-106v0,-62,-46,-105,-102,-105v-57,0,-102,43,-102,105xm185,-106r30,0v-6,36,-34,57,-66,57v-47,0,-77,-35,-77,-80v0,-46,28,-81,76,-81v33,0,60,20,65,56r-28,0v-14,-47,-85,-28,-79,24v-8,51,70,73,79,24", "w": 288 }, "\u00c1": { "d": "-3,0r98,-257r58,0r96,257r-59,0r-19,-57r-96,0r-20,57r-58,0xm124,-194v-14,29,-22,64,-34,95r66,0xm187,-331r-55,51r-36,0r35,-51r56,0", "w": 246 }, "\u00c2": { "d": "-3,0r98,-257r58,0r96,257r-59,0r-19,-57r-96,0r-20,57r-58,0xm124,-194v-14,29,-22,64,-34,95r66,0xm60,-280r40,-51r47,0r39,51r-42,0r-22,-29r-23,29r-39,0", "w": 246 }, "\u00c4": { "d": "-3,0r98,-257r58,0r96,257r-59,0r-19,-57r-96,0r-20,57r-58,0xm124,-194v-14,29,-22,64,-34,95r66,0xm136,-286r0,-42r49,0r0,42r-49,0xm62,-286r0,-42r49,0r0,42r-49,0", "w": 246 }, "\u00c0": { "d": "-3,0r98,-257r58,0r96,257r-59,0r-19,-57r-96,0r-20,57r-58,0xm124,-194v-14,29,-22,64,-34,95r66,0xm115,-280r-56,-51r57,0r34,51r-35,0", "w": 246 }, "\u00c5": { "d": "-3,0r98,-257r58,0r96,257r-59,0r-19,-57r-96,0r-20,57r-58,0xm124,-194v-14,29,-22,64,-34,95r66,0xm100,-307v0,14,9,25,23,25v14,0,23,-11,23,-25v0,-14,-9,-25,-23,-25v-14,0,-23,11,-23,25xm79,-307v0,-24,20,-44,44,-44v24,0,44,20,44,44v0,24,-20,44,-44,44v-24,0,-44,-20,-44,-44", "w": 246 }, "\u00c3": { "d": "-3,0r98,-257r58,0r96,257r-59,0r-19,-57r-96,0r-20,57r-58,0xm124,-194v-14,29,-22,64,-34,95r66,0xm103,-328v19,0,56,28,62,0r24,0v-6,19,-12,41,-40,41v-25,0,-62,-29,-70,3r-22,0v5,-21,14,-44,46,-44", "w": 246 }, "\u00c7": { "d": "251,-171r-55,0v-4,-26,-28,-45,-56,-45v-51,0,-70,44,-70,89v0,43,19,86,70,86v35,0,54,-24,58,-58r55,0v-6,64,-49,104,-112,105r-9,13v18,-6,46,1,46,23v0,46,-59,39,-87,29r8,-18v10,4,44,16,44,-5v0,-23,-33,0,-36,-18r17,-25v-70,-7,-110,-63,-110,-132v0,-76,46,-136,126,-136v57,0,104,33,111,92", "w": 266 }, "\u00c9": { "d": "25,0r0,-257r192,0r0,47r-136,0r0,56r125,0r0,43r-125,0r0,63r139,0r0,48r-195,0xm181,-331r-56,51r-35,0r34,-51r57,0", "w": 233 }, "\u00ca": { "d": "25,0r0,-257r192,0r0,47r-136,0r0,56r125,0r0,43r-125,0r0,63r139,0r0,48r-195,0xm54,-280r40,-51r46,0r40,51r-42,0r-22,-29r-23,29r-39,0", "w": 233 }, "\u00cb": { "d": "25,0r0,-257r192,0r0,47r-136,0r0,56r125,0r0,43r-125,0r0,63r139,0r0,48r-195,0xm130,-286r0,-42r48,0r0,42r-48,0xm55,-286r0,-42r49,0r0,42r-49,0", "w": 233 }, "\u00c8": { "d": "25,0r0,-257r192,0r0,47r-136,0r0,56r125,0r0,43r-125,0r0,63r139,0r0,48r-195,0xm108,-280r-55,-51r56,0r35,51r-36,0", "w": 233 }, "\u00cd": { "d": "25,0r0,-257r56,0r0,257r-56,0xm117,-331r-55,51r-36,0r34,-51r57,0", "w": 106 }, "\u00ce": { "d": "25,0r0,-257r56,0r0,257r-56,0xm-10,-280r40,-51r47,0r39,51r-42,0r-22,-29r-23,29r-39,0", "w": 106 }, "\u00cf": { "d": "25,0r0,-257r56,0r0,257r-56,0xm66,-286r0,-42r48,0r0,42r-48,0xm-8,-286r0,-42r48,0r0,42r-48,0", "w": 106 }, "\u00cc": { "d": "25,0r0,-257r56,0r0,257r-56,0xm45,-280r-56,-51r57,0r34,51r-35,0", "w": 106 }, "\u00d1": { "d": "25,0r0,-257r56,0r108,172r0,-172r53,0r0,257r-57,0r-107,-172r0,172r-53,0xm113,-328v19,0,56,28,62,0r24,0v-6,19,-12,41,-40,41v-25,0,-62,-29,-70,3r-22,0v5,-21,14,-44,46,-44", "w": 266 }, "\u00d3": { "d": "14,-127v0,-76,46,-136,126,-136v80,0,126,60,126,136v0,74,-46,133,-126,133v-80,0,-126,-59,-126,-133xm70,-127v0,43,19,86,70,86v51,0,70,-43,70,-86v0,-45,-19,-89,-70,-89v-51,0,-70,44,-70,89xm204,-331r-55,51r-36,0r35,-51r56,0", "w": 280 }, "\u00d4": { "d": "14,-127v0,-76,46,-136,126,-136v80,0,126,60,126,136v0,74,-46,133,-126,133v-80,0,-126,-59,-126,-133xm70,-127v0,43,19,86,70,86v51,0,70,-43,70,-86v0,-45,-19,-89,-70,-89v-51,0,-70,44,-70,89xm77,-280r40,-51r47,0r39,51r-42,0r-22,-29r-23,29r-39,0", "w": 280 }, "\u00d6": { "d": "14,-127v0,-76,46,-136,126,-136v80,0,126,60,126,136v0,74,-46,133,-126,133v-80,0,-126,-59,-126,-133xm70,-127v0,43,19,86,70,86v51,0,70,-43,70,-86v0,-45,-19,-89,-70,-89v-51,0,-70,44,-70,89xm153,-286r0,-42r49,0r0,42r-49,0xm79,-286r0,-42r48,0r0,42r-48,0", "w": 280 }, "\u00d2": { "d": "14,-127v0,-76,46,-136,126,-136v80,0,126,60,126,136v0,74,-46,133,-126,133v-80,0,-126,-59,-126,-133xm70,-127v0,43,19,86,70,86v51,0,70,-43,70,-86v0,-45,-19,-89,-70,-89v-51,0,-70,44,-70,89xm132,-280r-56,-51r57,0r34,51r-35,0", "w": 280 }, "\u00d5": { "d": "14,-127v0,-76,46,-136,126,-136v80,0,126,60,126,136v0,74,-46,133,-126,133v-80,0,-126,-59,-126,-133xm70,-127v0,43,19,86,70,86v51,0,70,-43,70,-86v0,-45,-19,-89,-70,-89v-51,0,-70,44,-70,89xm120,-328v16,0,31,12,46,13v11,0,15,-6,15,-13r25,0v-6,19,-12,41,-40,41v-25,0,-62,-29,-70,3r-22,0v5,-21,14,-44,46,-44", "w": 280 }, "\u0160": { "d": "72,-190v0,48,153,16,153,114v0,47,-37,82,-107,82v-57,0,-110,-28,-109,-91r54,0v0,34,27,47,57,47v20,0,50,-6,50,-32v0,-28,-38,-32,-76,-42v-38,-10,-77,-25,-77,-73v0,-106,202,-106,199,5r-54,0v-2,-31,-24,-39,-51,-39v-18,0,-39,7,-39,29xm180,-331r-40,51r-46,0r-40,-51r40,0r23,29r23,-29r40,0", "w": 233 }, "\u00da": { "d": "243,-257r0,160v0,69,-41,103,-110,103v-69,0,-109,-33,-109,-103r0,-160r56,0r0,160v0,28,7,56,53,56v40,0,53,-18,53,-56r0,-160r57,0xm197,-331r-55,51r-36,0r35,-51r56,0", "w": 266 }, "\u00db": { "d": "243,-257r0,160v0,69,-41,103,-110,103v-69,0,-109,-33,-109,-103r0,-160r56,0r0,160v0,28,7,56,53,56v40,0,53,-18,53,-56r0,-160r57,0xm70,-280r40,-51r47,0r40,51r-43,0r-22,-29r-23,29r-39,0", "w": 266 }, "\u00dc": { "d": "243,-257r0,160v0,69,-41,103,-110,103v-69,0,-109,-33,-109,-103r0,-160r56,0r0,160v0,28,7,56,53,56v40,0,53,-18,53,-56r0,-160r57,0xm146,-286r0,-42r49,0r0,42r-49,0xm72,-286r0,-42r49,0r0,42r-49,0", "w": 266 }, "\u00d9": { "d": "243,-257r0,160v0,69,-41,103,-110,103v-69,0,-109,-33,-109,-103r0,-160r56,0r0,160v0,28,7,56,53,56v40,0,53,-18,53,-56r0,-160r57,0xm125,-280r-56,-51r57,0r35,51r-36,0", "w": 266 }, "\u00dd": { "d": "91,0r0,-100r-94,-157r63,0r61,101r59,-101r63,0r-95,158r0,99r-57,0xm184,-331r-55,51r-36,0r34,-51r57,0", "w": 240, "k": { "v": 20, "A": 27, "\u00c6": 27, "\u00c1": 27, "\u00c2": 27, "\u00c4": 27, "\u00c0": 27, "\u00c5": 27, "\u00c3": 27, ",": 40, ".": 40, "e": 33, "\u00e9": 33, "\u00ea": 33, "\u00eb": 33, "\u00e8": 33, "o": 33, "\u00f8": 33, "\u0153": 33, "\u00f3": 33, "\u00f4": 33, "\u00f6": 33, "\u00f2": 33, "\u00f5": 33, "q": 33, "-": 40, "a": 33, "\u00e6": 33, "\u00e1": 33, "\u00e2": 33, "\u00e4": 33, "\u00e0": 33, "\u00e5": 33, "\u00e3": 33, "u": 27, "\u00fa": 27, "\u00fb": 27, "\u00fc": 27, "\u00f9": 27, ":": 29, ";": 24, "i": 5, "\u00ed": 5, "\u00ee": 5, "\u00ef": 5, "\u00ec": 5, "p": 27} }, "\u0178": { "d": "91,0r0,-100r-94,-157r63,0r61,101r59,-101r63,0r-95,158r0,99r-57,0xm133,-286r0,-42r48,0r0,42r-48,0xm59,-286r0,-42r48,0r0,42r-48,0", "w": 240, "k": { "v": 20, "A": 27, "\u00c6": 27, "\u00c1": 27, "\u00c2": 27, "\u00c4": 27, "\u00c0": 27, "\u00c5": 27, "\u00c3": 27, ",": 40, ".": 40, "e": 33, "\u00e9": 33, "\u00ea": 33, "\u00eb": 33, "\u00e8": 33, "o": 33, "\u00f8": 33, "\u0153": 33, "\u00f3": 33, "\u00f4": 33, "\u00f6": 33, "\u00f2": 33, "\u00f5": 33, "q": 33, "-": 40, "a": 33, "\u00e6": 33, "\u00e1": 33, "\u00e2": 33, "\u00e4": 33, "\u00e0": 33, "\u00e5": 33, "\u00e3": 33, "u": 27, "\u00fa": 27, "\u00fb": 27, "\u00fc": 27, "\u00f9": 27, ":": 29, ";": 24, "i": 5, "\u00ed": 5, "\u00ee": 5, "\u00ef": 5, "\u00ec": 5, "p": 27} }, "\u017d": { "d": "8,0r0,-45r138,-165r-127,0r0,-47r202,0r0,45r-137,164r141,0r0,48r-217,0xm180,-331r-40,51r-46,0r-40,-51r40,0r23,29r23,-29r40,0", "w": 233 }, "\u00e1": { "d": "135,-91v-19,16,-73,1,-72,38v0,19,14,24,31,24v49,0,40,-31,41,-62xm68,-129r-51,0v3,-48,46,-62,88,-62v37,0,81,8,81,53v0,45,-6,106,7,138r-52,0v-2,-6,-3,-12,-3,-18v-36,38,-127,32,-126,-33v0,-42,31,-51,63,-56v31,-4,60,-4,60,-25v0,-22,-15,-25,-33,-25v-19,0,-32,8,-34,28xm167,-260r-55,51r-36,0r35,-51r56,0", "w": 206 }, "\u00e2": { "d": "135,-91v-19,16,-73,1,-72,38v0,19,14,24,31,24v49,0,40,-31,41,-62xm68,-129r-51,0v3,-48,46,-62,88,-62v37,0,81,8,81,53v0,45,-6,106,7,138r-52,0v-2,-6,-3,-12,-3,-18v-36,38,-127,32,-126,-33v0,-42,31,-51,63,-56v31,-4,60,-4,60,-25v0,-22,-15,-25,-33,-25v-19,0,-32,8,-34,28xm40,-209r40,-51r47,0r40,51r-42,0r-23,-29r-23,29r-39,0", "w": 206 }, "\u00e4": { "d": "135,-91v-19,16,-73,1,-72,38v0,19,14,24,31,24v49,0,40,-31,41,-62xm68,-129r-51,0v3,-48,46,-62,88,-62v37,0,81,8,81,53v0,45,-6,106,7,138r-52,0v-2,-6,-3,-12,-3,-18v-36,38,-127,32,-126,-33v0,-42,31,-51,63,-56v31,-4,60,-4,60,-25v0,-22,-15,-25,-33,-25v-19,0,-32,8,-34,28xm116,-215r0,-42r49,0r0,42r-49,0xm42,-215r0,-42r49,0r0,42r-49,0", "w": 206 }, "\u00e0": { "d": "135,-91v-19,16,-73,1,-72,38v0,19,14,24,31,24v49,0,40,-31,41,-62xm68,-129r-51,0v3,-48,46,-62,88,-62v37,0,81,8,81,53v0,45,-6,106,7,138r-52,0v-2,-6,-3,-12,-3,-18v-36,38,-127,32,-126,-33v0,-42,31,-51,63,-56v31,-4,60,-4,60,-25v0,-22,-15,-25,-33,-25v-19,0,-32,8,-34,28xm95,-209r-55,-51r56,0r35,51r-36,0", "w": 206 }, "\u00e5": { "d": "135,-91v-19,16,-73,1,-72,38v0,19,14,24,31,24v49,0,40,-31,41,-62xm68,-129r-51,0v3,-48,46,-62,88,-62v37,0,81,8,81,53v0,45,-6,106,7,138r-52,0v-2,-6,-3,-12,-3,-18v-36,38,-127,32,-126,-33v0,-42,31,-51,63,-56v31,-4,60,-4,60,-25v0,-22,-15,-25,-33,-25v-19,0,-32,8,-34,28xm81,-236v0,14,8,25,22,25v14,0,23,-11,23,-25v0,-14,-9,-25,-23,-25v-14,0,-22,11,-22,25xm59,-236v0,-24,20,-44,44,-44v24,0,45,20,45,44v0,24,-21,44,-45,44v-24,0,-44,-20,-44,-44", "w": 206 }, "\u00e3": { "d": "135,-91v-19,16,-73,1,-72,38v0,19,14,24,31,24v49,0,40,-31,41,-62xm68,-129r-51,0v3,-48,46,-62,88,-62v37,0,81,8,81,53v0,45,-6,106,7,138r-52,0v-2,-6,-3,-12,-3,-18v-36,38,-127,32,-126,-33v0,-42,31,-51,63,-56v31,-4,60,-4,60,-25v0,-22,-15,-25,-33,-25v-19,0,-32,8,-34,28xm83,-257v16,0,32,12,47,13v11,0,15,-6,15,-13r25,0v-7,18,-13,41,-41,41v-25,0,-61,-29,-70,3r-22,0v5,-21,14,-44,46,-44", "w": 206 }, "\u00e7": { "d": "196,-121r-50,0v-3,-21,-17,-32,-38,-32v-33,0,-43,34,-43,61v0,27,10,59,42,59v24,0,38,-15,41,-38r49,0v-6,48,-38,75,-85,76v-2,4,-10,11,-9,14v18,-6,45,1,45,23v0,46,-59,39,-87,29r8,-18v10,4,44,16,44,-5v0,-23,-32,-1,-36,-18r18,-26v-49,-5,-81,-43,-81,-94v0,-58,35,-101,95,-101v44,0,84,22,87,70", "w": 206 }, "\u00e9": { "d": "196,-81r-134,0v-7,56,74,60,86,23r45,0v-14,44,-46,63,-88,63v-59,0,-95,-40,-95,-98v0,-56,38,-98,95,-98v63,0,95,53,91,110xm62,-113r83,0v-5,-26,-16,-40,-41,-40v-32,0,-41,26,-42,40xm167,-260r-55,51r-36,0r35,-51r56,0", "w": 206 }, "\u00ea": { "d": "196,-81r-134,0v-7,56,74,60,86,23r45,0v-14,44,-46,63,-88,63v-59,0,-95,-40,-95,-98v0,-56,38,-98,95,-98v63,0,95,53,91,110xm62,-113r83,0v-5,-26,-16,-40,-41,-40v-32,0,-41,26,-42,40xm40,-209r40,-51r47,0r40,51r-42,0r-23,-29r-23,29r-39,0", "w": 206 }, "\u00eb": { "d": "196,-81r-134,0v-7,56,74,60,86,23r45,0v-14,44,-46,63,-88,63v-59,0,-95,-40,-95,-98v0,-56,38,-98,95,-98v63,0,95,53,91,110xm62,-113r83,0v-5,-26,-16,-40,-41,-40v-32,0,-41,26,-42,40xm116,-215r0,-42r49,0r0,42r-49,0xm42,-215r0,-42r49,0r0,42r-49,0", "w": 206 }, "\u00e8": { "d": "196,-81r-134,0v-7,56,74,60,86,23r45,0v-14,44,-46,63,-88,63v-59,0,-95,-40,-95,-98v0,-56,38,-98,95,-98v63,0,95,53,91,110xm62,-113r83,0v-5,-26,-16,-40,-41,-40v-32,0,-41,26,-42,40xm95,-209r-55,-51r56,0r35,51r-36,0", "w": 206 }, "\u00ed": { "d": "21,0r0,-186r51,0r0,186r-51,0xm111,-260r-56,51r-36,0r35,-51r57,0", "w": 92 }, "\u00ee": { "d": "21,0r0,-186r51,0r0,186r-51,0xm-17,-209r40,-51r47,0r40,51r-42,0r-23,-29r-23,29r-39,0", "w": 92 }, "\u00ef": { "d": "21,0r0,-186r51,0r0,186r-51,0xm59,-215r0,-42r49,0r0,42r-49,0xm-15,-215r0,-42r49,0r0,42r-49,0", "w": 92 }, "\u00ec": { "d": "21,0r0,-186r51,0r0,186r-51,0xm38,-209r-55,-51r56,0r35,51r-36,0", "w": 92 }, "\u00f1": { "d": "19,0r0,-186r49,0v1,8,-2,20,1,26v13,-21,35,-31,57,-31v97,-2,61,108,68,191r-51,0v-6,-52,21,-148,-33,-151v-59,-3,-34,97,-39,151r-52,0xm86,-257v16,0,32,12,47,13v11,0,15,-6,15,-13r25,0v-6,19,-13,41,-41,41v-25,0,-61,-29,-69,3r-22,0v5,-21,13,-44,45,-44", "w": 213 }, "\u00f3": { "d": "14,-93v0,-59,38,-98,96,-98v59,0,96,39,96,98v0,59,-37,98,-96,98v-58,0,-96,-39,-96,-98xm65,-93v0,30,10,60,45,60v35,0,45,-30,45,-60v0,-30,-10,-60,-45,-60v-35,0,-45,30,-45,60xm174,-260r-56,51r-35,0r34,-51r57,0", "w": 219 }, "\u00f4": { "d": "14,-93v0,-59,38,-98,96,-98v59,0,96,39,96,98v0,59,-37,98,-96,98v-58,0,-96,-39,-96,-98xm65,-93v0,30,10,60,45,60v35,0,45,-30,45,-60v0,-30,-10,-60,-45,-60v-35,0,-45,30,-45,60xm47,-209r40,-51r47,0r39,51r-42,0r-22,-29r-23,29r-39,0", "w": 219 }, "\u00f6": { "d": "14,-93v0,-59,38,-98,96,-98v59,0,96,39,96,98v0,59,-37,98,-96,98v-58,0,-96,-39,-96,-98xm65,-93v0,30,10,60,45,60v35,0,45,-30,45,-60v0,-30,-10,-60,-45,-60v-35,0,-45,30,-45,60xm123,-215r0,-42r48,0r0,42r-48,0xm49,-215r0,-42r48,0r0,42r-48,0", "w": 219 }, "\u00f2": { "d": "14,-93v0,-59,38,-98,96,-98v59,0,96,39,96,98v0,59,-37,98,-96,98v-58,0,-96,-39,-96,-98xm65,-93v0,30,10,60,45,60v35,0,45,-30,45,-60v0,-30,-10,-60,-45,-60v-35,0,-45,30,-45,60xm102,-209r-56,-51r57,0r34,51r-35,0", "w": 219 }, "\u00f5": { "d": "14,-93v0,-59,38,-98,96,-98v59,0,96,39,96,98v0,59,-37,98,-96,98v-58,0,-96,-39,-96,-98xm65,-93v0,30,10,60,45,60v35,0,45,-30,45,-60v0,-30,-10,-60,-45,-60v-35,0,-45,30,-45,60xm89,-257v16,0,32,12,47,13v11,0,15,-6,15,-13r25,0v-6,19,-12,41,-40,41v-25,0,-62,-29,-70,3r-22,0v5,-21,13,-44,45,-44", "w": 219 }, "\u0161": { "d": "132,-53v0,-36,-117,-18,-117,-78v0,-48,41,-60,81,-60v41,0,78,13,82,59r-49,0v-1,-20,-17,-25,-35,-25v-12,0,-28,2,-28,17v0,18,29,21,58,28v30,7,59,17,59,52v0,49,-43,65,-85,65v-43,0,-86,-16,-88,-65r49,0v-2,38,73,44,73,7xm160,-260r-40,51r-47,0r-40,-51r41,0r23,29r23,-29r40,0", "w": 193 }, "\u00fa": { "d": "194,-186r0,186r-49,0v-1,-8,2,-20,-1,-26v-13,21,-35,31,-57,31v-97,2,-61,-108,-68,-191r52,0r0,105v0,31,8,46,32,46v59,0,35,-96,40,-151r51,0xm171,-260r-56,51r-35,0r34,-51r57,0", "w": 213 }, "\u00fb": { "d": "194,-186r0,186r-49,0v-1,-8,2,-20,-1,-26v-13,21,-35,31,-57,31v-97,2,-61,-108,-68,-191r52,0r0,105v0,31,8,46,32,46v59,0,35,-96,40,-151r51,0xm44,-209r40,-51r46,0r40,51r-42,0r-23,-29r-23,29r-38,0", "w": 213 }, "\u00fc": { "d": "194,-186r0,186r-49,0v-1,-8,2,-20,-1,-26v-13,21,-35,31,-57,31v-97,2,-61,-108,-68,-191r52,0r0,105v0,31,8,46,32,46v59,0,35,-96,40,-151r51,0xm120,-215r0,-42r48,0r0,42r-48,0xm45,-215r0,-42r49,0r0,42r-49,0", "w": 213 }, "\u00f9": { "d": "194,-186r0,186r-49,0v-1,-8,2,-20,-1,-26v-13,21,-35,31,-57,31v-97,2,-61,-108,-68,-191r52,0r0,105v0,31,8,46,32,46v59,0,35,-96,40,-151r51,0xm98,-209r-55,-51r56,0r35,51r-36,0", "w": 213 }, "\u00fd": { "d": "189,-186r-78,209v-12,40,-48,47,-95,41r0,-42v30,7,58,-5,47,-34r-65,-174r55,0r42,127r41,-127r53,0xm157,-260r-55,51r-36,0r35,-51r56,0", "w": 186, "k": { ",": 20, ".": 20} }, "\u00ff": { "d": "189,-186r-78,209v-12,40,-48,47,-95,41r0,-42v30,7,58,-5,47,-34r-65,-174r55,0r42,127r41,-127r53,0xm106,-215r0,-42r49,0r0,42r-49,0xm32,-215r0,-42r49,0r0,42r-49,0", "w": 186, "k": { ",": 20, ".": 20} }, "\u017e": { "d": "8,0r0,-39r97,-109r-90,0r0,-38r157,0r0,38r-97,109r104,0r0,39r-171,0xm157,-260r-40,51r-47,0r-40,-51r41,0r23,29r23,-29r40,0", "w": 186 }, "\u2206": { "d": "10,0r0,-26r82,-232r53,0r80,231r0,27r-215,0xm56,-36r121,0r-61,-173v-14,55,-41,120,-60,173", "w": 235 }, "\u2126": { "d": "13,-36v16,-1,35,2,49,-1v-22,-21,-44,-57,-44,-103v0,-64,44,-116,109,-116v69,0,107,60,107,114v1,48,-23,83,-44,106r49,0r0,36r-94,0r0,-27v22,-15,44,-47,44,-105v0,-45,-22,-87,-62,-87v-39,0,-63,37,-63,88v0,52,21,90,44,104r0,27r-95,0r0,-36", "w": 253 }, "\u03bc": { "d": "194,-186r0,186r-49,0v-1,-8,2,-20,-1,-26v-19,30,-50,40,-73,22r0,70r-52,0r0,-252r52,0r0,105v0,31,8,46,32,46v59,0,35,-96,40,-151r51,0", "w": 213 }, "\u03c0": { "d": "207,-151r-26,0v1,46,-3,117,5,151r-43,0v-12,-30,-5,-106,-7,-151r-50,0v-2,39,-10,113,-23,151r-44,0v12,-42,22,-111,23,-151v-17,0,-27,0,-35,3r-5,-30v41,-22,144,-8,208,-12", "w": 215 }, "\u20ac": { "d": "35,-164v10,-78,96,-123,172,-78r-22,45v-41,-28,-86,-22,-97,33r88,0r-11,26r-81,0r0,15r76,0r-11,26r-63,0v12,66,65,71,109,34r0,55v-75,40,-158,-10,-162,-89r-27,0r11,-26r14,0v0,-8,1,-12,1,-15r-27,0r12,-26r18,0" }, "\u2113": { "d": "159,-65r18,19v-28,73,-135,62,-138,-10v0,-1,-1,-3,-1,-4r-18,15r-12,-24v11,-9,21,-16,30,-25r0,-92v0,-64,29,-91,64,-91v35,0,50,29,50,64v0,43,-28,83,-71,125v-3,32,9,56,32,56v19,0,36,-17,46,-33xm81,-186r0,57v25,-28,42,-60,42,-86v0,-19,-4,-30,-19,-30v-11,0,-23,13,-23,59", "w": 183 }, "\u212e": { "d": "66,-49v36,63,144,58,186,3r21,0v-26,31,-68,51,-115,51v-80,0,-146,-59,-146,-131v0,-72,66,-131,146,-131v82,1,147,59,145,135r-237,1r0,72xm250,-203v-34,-59,-138,-59,-181,-8v-6,20,-4,59,-1,82r180,0v6,-20,0,-51,2,-74", "w": 316 }, "\u2202": { "d": "37,-230r-13,-34v71,-45,164,-10,164,117v0,90,-36,150,-100,150v-50,0,-74,-46,-74,-85v0,-58,35,-95,77,-95v30,0,48,20,53,29v6,-50,-21,-99,-60,-99v-22,0,-38,9,-47,17xm58,-81v0,26,13,47,35,47v27,0,43,-40,47,-76v-3,-12,-18,-31,-40,-31v-25,0,-42,28,-42,60", "w": 205 }, "\u220f": { "d": "249,-212r-36,0r0,247r-45,0r0,-247r-78,0r0,247r-45,0r0,-247r-36,0r0,-40r240,0r0,40", "w": 258 }, "\u2211": { "d": "193,35r-185,0r0,-29r87,-115r-83,-112r0,-31r175,0r0,37v-37,2,-82,-4,-115,2r74,97r-83,109r130,0r0,42" }, "\u2219": { "d": "20,-103v0,-17,13,-31,30,-31v16,0,31,14,31,31v0,15,-14,30,-30,30v-17,0,-31,-13,-31,-30", "w": 100 }, "\u221a": { "d": "215,-303r-80,354r-36,0r-54,-159r-26,10r-7,-25r60,-24r45,147r67,-303r31,0", "w": 212 }, "\u221e": { "d": "262,-104v0,75,-83,83,-122,21v-19,23,-37,41,-66,41v-30,0,-57,-24,-57,-60v0,-36,26,-62,60,-62v27,0,46,16,64,40v15,-17,34,-40,66,-40v31,0,55,24,55,60xm77,-67v20,0,36,-18,50,-34v-15,-20,-28,-39,-51,-39v-21,0,-34,17,-34,38v0,19,15,35,35,35xm204,-140v-22,0,-38,23,-50,36v22,27,34,37,52,37v21,0,31,-19,31,-35v0,-22,-14,-38,-33,-38", "w": 280 }, "\u222b": { "d": "49,-214v0,-71,25,-109,85,-94r-5,31v-36,-10,-40,20,-40,67v0,59,5,110,5,174v0,72,-27,111,-87,93r6,-33v35,11,42,-11,41,-60v0,-66,-5,-116,-5,-178", "w": 141 }, "\u2248": { "d": "66,-163v32,0,45,25,69,26v14,0,22,-11,32,-26r16,15v-11,22,-27,37,-48,37v-24,0,-47,-26,-72,-27v-16,0,-24,13,-33,26r-16,-14v10,-21,30,-37,52,-37xm66,-96v33,0,42,26,69,26v14,0,22,-11,32,-26r16,15v-11,21,-27,37,-48,37v-23,0,-48,-27,-72,-27v-16,0,-24,13,-33,26r-16,-14v10,-21,30,-37,52,-37", "w": 197 }, "\u2260": { "d": "145,-185r-14,32r49,0r0,26r-59,0r-21,49r80,0r0,26r-90,0r-18,41r-21,-8r15,-33r-49,0r0,-26r59,0r21,-49r-80,0r0,-26r90,0r18,-40", "w": 197 }, "\u2264": { "d": "179,-36r-160,-80r0,-28r160,-81r0,31r-134,64r134,64r0,30xm181,4r-163,0r0,-26r163,0r0,26", "w": 197 }, "\u2265": { "d": "20,-225r160,81r0,28r-160,80r0,-30r134,-65r-134,-63r0,-31xm180,4r-162,0r0,-26r162,0r0,26", "w": 197 }, "\u25ca": { "d": "194,-126r-71,144r-36,0r-69,-144r71,-144r36,0xm155,-125r-49,-108v-12,38,-33,71,-48,106v15,36,36,68,47,109v14,-36,33,-72,50,-107", "w": 212 }, "\u00a0": { "w": 100 }, "\u00ad": { "d": "19,-76r0,-44r108,0r0,44r-108,0", "w": 146 }, "\u02c9": { "d": "-21,-222r0,-27r135,0r0,27r-135,0", "w": 93 }, "\u03a9": { "d": "13,-36v16,-1,35,2,49,-1v-22,-21,-44,-57,-44,-103v0,-64,44,-116,109,-116v69,0,107,60,107,114v1,48,-23,83,-44,106r49,0r0,36r-94,0r0,-27v22,-15,44,-47,44,-105v0,-45,-22,-87,-62,-87v-39,0,-63,37,-63,88v0,52,21,90,44,104r0,27r-95,0r0,-36", "w": 253 }, "\u2215": { "d": "-60,8r149,-268r31,0r-148,268r-32,0", "w": 60}} });


/*
*
* NOTE: This plugin has been modified for use with Feriepartner
* All modified lines is marked with "// Feriepartner"
*
*/

/*
* jQuery Autocomplete plugin 1.2.1
*
* Copyright (c) 2009 JÃ¶rn Zaefferer
*
* Dual licensed under the MIT and GPL licenses:
*   http://www.opensource.org/licenses/mit-license.php
*   http://www.gnu.org/licenses/gpl.html
*
* With small modifications by Alfonso GÃ³mez-Arzola.
* See changelog for details.
*
*/

; (function($) {

    $.fn.extend({
        autocomplete: function(urlOrData, options) {
            var isUrl = typeof urlOrData == "string";
            options = $.extend({}, $.Autocompleter.defaults, {
                url: isUrl ? urlOrData : null,
                data: isUrl ? null : urlOrData,
                delay: isUrl ? $.Autocompleter.defaults.delay : 10
            }, options);

            // if highlight is set to false, replace it with a do-nothing function
            options.highlight = options.highlight || function(value) { return value; };

            // if the formatMatch option is not specified, then use formatItem for backwards compatibility
            options.formatMatch = options.formatMatch || options.formatItem;

            return this.each(function() {
                new $.Autocompleter(this, options);
                //Feriepartner <begin>
                //                if (this.value != undefined) {
                //                    this.value = options.defaultText;
                //                }
                //Feriepartner <end>
            });
        },
        result: function(handler) {
            return this.bind("result", handler);
        },
        search: function(handler) {
            return this.trigger("search", [handler]);
        },
        flushCache: function() {
            return this.trigger("flushCache");
        },
        setOptions: function(options) {
            return this.trigger("setOptions", [options]);
        },
        unautocomplete: function() {
            return this.trigger("unautocomplete");
        }
    });

    $.Autocompleter = function(input, options) {

        var KEY = {
            UP: 38,
            DOWN: 40,
            DEL: 46,
            TAB: 9,
            RETURN: 13,
            ESC: 27,
            COMMA: 188,
            PAGEUP: 33,
            PAGEDOWN: 34,
            BACKSPACE: 8
        };

        // Create $ object for input element
        var $input = $(input).attr("autocomplete", "off").addClass(options.inputClass);

        var timeout;
        var previousValue = "";
        var cache = $.Autocompleter.Cache(options);
        var hasFocus = 0;
        var lastKeyPressCode;
        var config = {
            mouseDownOnSelect: false
        };
        var select = $.Autocompleter.Select(options, input, selectCurrent, config);

        var blockSubmit;

        // prevent form submit in opera when selecting with return key
        $.browser.opera && $(input.form).bind("submit.autocomplete", function() {
            if (blockSubmit) {
                blockSubmit = false;
                return false;
            }
        });

        // only opera doesn't trigger keydown multiple times while pressed, others don't work with keypress at all
        $input.bind(($.browser.opera ? "keypress" : "keydown") + ".autocomplete", function(event) {
            // a keypress means the input has focus
            // avoids issue where input had focus before the autocomplete was applied
            hasFocus = 1;
            // track last key pressed
            lastKeyPressCode = event.keyCode;
            switch (event.keyCode) {

                case KEY.UP:
                    if (select.visible()) {
                        event.preventDefault();
                        select.prev();
                    } else {
                        onChange(0, true);
                    }
                    break;

                case KEY.DOWN:
                    if (select.visible()) {
                        event.preventDefault();
                        select.next();
                    } else {
                        onChange(0, true);
                    }
                    break;

                case KEY.PAGEUP:
                    if (select.visible()) {
                        event.preventDefault();
                        select.pageUp();
                    } else {
                        onChange(0, true);
                    }
                    break;

                case KEY.PAGEDOWN:
                    if (select.visible()) {
                        event.preventDefault();
                        select.pageDown();
                    } else {
                        onChange(0, true);
                    }
                    break;

                // matches also semicolon                                                                                 
                case options.multiple && $.trim(options.multipleSeparator) == "," && KEY.COMMA:
                case KEY.TAB:
                    if (!select.visible()) //Feriepartner <start>
                    {
                        break;
                    }                      //Feriepartner <end>
                case KEY.RETURN:
                    if (selectCurrent()) {
                        // stop default to prevent a form submit, Opera needs special handling
                        event.preventDefault();
                        blockSubmit = true;

                    }
                    return false;
                    break;

                case KEY.ESC:
                    select.hide();
                    break;

                default:
                    clearTimeout(timeout);
                    timeout = setTimeout(onChange, options.delay);
                    break;
            }
        }).focus(function() {
            // track whether the field has focus, we shouldn't process any
            // results if the field no longer has focus
            hasFocus++;
            //Feriepartner <begin>
            if ($input.val() == options.defaultText) {
                $input.val('');
            }
            //Feriepartner <end>
        }).blur(function() {
            hasFocus = 0;
            if (!config.mouseDownOnSelect) {
                hideResults();
            }

            ga.trackObj(this, 'område-' + $('.searchArea').val());

            //Feriepartner <begin>
            if ($input.val() == '') {
                if (options.areaNameField != null && options.areaNameField.value != '') {
                    $input.val(options.areaNameField.value);
                }
                else {
                    $input.val(options.defaultText);
                }
            }
            //Feriepartner <end>
        }).click(function() {
            // show select when clicking in a focused field
            // but if clickFire is true, don't require field
            // to be focused to begin with; just show select
            /*if (options.clickFire) { // Feriepartner <start> (har udkommenteret original kode)
                if (!select.visible()) {
                    onChange(0, true);
                }
            } else {
                if (hasFocus++ > 1 && !select.visible()) {
                    onChange(0, true);
                }
            }*/ // Feriepartner <end>
        }).bind("search", function() {
            // TODO why not just specifying both arguments?
            var fn = (arguments.length > 1) ? arguments[1] : null;
            function findValueCallback(q, data) {
                var result;
                if (data && data.length) {
                    for (var i = 0; i < data.length; i++) {
                        if (data[i].result.toLowerCase() == q.toLowerCase()) {
                            result = data[i];
                            break;
                        }
                    }
                }
                if (typeof fn == "function") fn(result);
                else $input.trigger("result", result && [result.data, result.value]);
            }
            $.each(trimWords($input.val()), function(i, value) {
                request(value, findValueCallback, findValueCallback);
            });
        }).bind("flushCache", function() {
            cache.flush();
        }).bind("setOptions", function() {
            $.extend(true, options, arguments[1]);
            // if we've updated the data, repopulate
            if ("data" in arguments[1])
                cache.populate();
        }).bind("unautocomplete", function() {
            select.unbind();
            $input.unbind();
            $(input.form).unbind(".autocomplete");
        });


        function selectCurrent() {
            var selected = select.selected();
            if (!selected)
                return false;

            var v = selected.result;
            previousValue = v;

            if (options.multiple) {
                var words = trimWords($input.val());
                if (words.length > 1) {
                    var seperator = options.multipleSeparator.length;
                    var cursorAt = $(input).selection().start;
                    var wordAt, progress = 0;
                    $.each(words, function(i, word) {
                        progress += word.length;
                        if (cursorAt <= progress) {
                            wordAt = i;
                            return false;
                        }
                        progress += seperator;
                    });
                    words[wordAt] = v;
                    // TODO this should set the cursor to the right position, but it gets overriden somewhere
                    //$.Autocompleter.Selection(input, progress + seperator, progress + seperator);
                    v = words.join(options.multipleSeparator);
                }
                v += options.multipleSeparator;
            }

            $input.val(v);
            hideResultsNow();
            $input.trigger("result", [selected.data, selected.value]);
            return true;
        }

        function onChange(crap, skipPrevCheck) {
            if (lastKeyPressCode == KEY.DEL) {
                select.hide();
                return;
            }

            var currentValue = $input.val();

            if (!skipPrevCheck && currentValue == previousValue)
                return;

            previousValue = currentValue;

            currentValue = lastWord(currentValue);
            if (currentValue.length >= options.minChars) {
                $input.addClass(options.loadingClass);
                if (!options.matchCase)
                    currentValue = currentValue.toLowerCase();
                request(currentValue, receiveData, hideResultsNow);
            } else {
                stopLoading();
                select.hide();
            }
        };

        function trimWords(value) {
            if (!value)
                return [""];
            if (!options.multiple)
                return [$.trim(value)];
            return $.map(value.split(options.multipleSeparator), function(word) {
                return $.trim(value).length ? $.trim(word) : null;
            });
        }

        function lastWord(value) {
            if (!options.multiple)
                return value;
            var words = trimWords(value);
            if (words.length == 1)
                return words[0];
            var cursorAt = $(input).selection().start;
            if (cursorAt == value.length) {
                words = trimWords(value)
            } else {
                words = trimWords(value.replace(value.substring(cursorAt), ""));
            }
            return words[words.length - 1];
        }

        // fills in the input box w/the first match (assumed to be the best match)
        // q: the term entered
        // sValue: the first matching result
        function autoFill(q, sValue) {
            // autofill in the complete box w/the first match as long as the user hasn't entered in more data
            // if the last user key pressed was backspace, don't autofill
            if (options.autoFill && (lastWord($input.val()).toLowerCase() == q.toLowerCase()) && lastKeyPressCode != KEY.BACKSPACE) {
                // fill in the value (keep the case the user has typed)
                $input.val($input.val() + sValue.substring(lastWord(previousValue).length));
                // select the portion of the value not typed by the user (so the next character will erase)
                $(input).selection(previousValue.length, previousValue.length + sValue.length);
            }
        };

        function hideResults() {
            clearTimeout(timeout);
            timeout = setTimeout(hideResultsNow, 200);
        };

        function hideResultsNow() {
            if (options.googleFeedback != null)  // Feriepartner <begin>
            {
                if (options.areaNameField != null && options.areaNameField.value != '') {
                    input.value = options.areaNameField.value;
                }
                else {
                    input.value = options.defaultText;
                }
                options.googleFeedback.remove();
                options.googleFeedback = null;
            }  // Feriepartner <end>

            if (options.houseSearchFeedback != null)  // Feriepartner <begin>
            {
                options.houseSearchFeedback.remove();
                options.houseSearchFeedback = null;
            }  // Feriepartner <end>

            var wasVisible = select.visible();
            select.hide();
            clearTimeout(timeout);
            stopLoading();
            if (options.mustMatch) {
                // call search and run callback
                $input.search(
				function(result) {
				    // if no value found, clear the input box
				    if (!result) {
				        if (options.multiple) {
				            var words = trimWords($input.val()).slice(0, -1);
				            $input.val(words.join(options.multipleSeparator) + (words.length ? options.multipleSeparator : ""));
				        }
				        else {
				            $input.val("");
				            $input.trigger("result", null);
				        }
				    }
				}
			);
            }
        };

        function receiveData(q, data) {
            if (data && data.length && hasFocus) {
                stopLoading();
                select.display(data, q);
                autoFill(q, data[0].value);
                if(!options.hideResultList){
                    select.show();
                }
            } else {
                hideResultsNow();
            }
        };

        function request(term, success, failure) {
            if (options.googleFeedback != null)  // Feriepartner <begin>
            {
                options.googleFeedback.remove();
                options.googleFeedback = null;
            }  // Feriepartner <end>

            if (options.houseSearchFeedback != null)  // Feriepartner <begin>
            {
                options.houseSearchFeedback.remove();
                options.houseSearchFeedback = null;
            }  // Feriepartner <end>

            if (!options.matchCase)
                term = term.toLowerCase();
            var data = cache.load(term);
            // recieve the cached data
            if (data && data.length) {
                success(term, data);
                // if an AJAX url has been supplied, try loading the data now
            } else if (options.houseSearch && (typeof options.url == "string") && (options.url.length > 0)) {//<Feriepartner>
                var extraParams = {
                    timestamp: +new Date()
                };
                $.each(options.extraParams, function(key, param) {
                    extraParams[key] = typeof param == "function" ? param() : param;
                });

                //Empty result list
                select.emptyList();
                failure(term);

                //Add progress text
                var offset = $(input).offset();
                options.houseSearchFeedback = $("<div/>")
                 		 .addClass(options.resultsClass)
		                 .css({
		                     position: 'absolute',
		                     width: typeof options.width == "string" || options.width > 0 ? options.width : $(input).width(),
		                     top: offset.top + input.offsetHeight,
		                     left: offset.left
		                 })
                         .appendTo(document.body)
		                 .html(options.houseSearchProgressText);
                //Query handler with delay
                setTimeout(function() {
                    $.ajax({
                        //Running synchronously
                        async: false,
                        // try to leverage ajaxQueue plugin to abort previous requests
                        mode: "abort",
                        // limit abortion to this input
                        port: "autocomplete" + input.name,
                        dataType: options.dataType,
                        url: options.url,
                        data: $.extend({
                            q: lastWord(term),
                            limit: options.max
                        }, extraParams),
                        success: function(data) {
                            var parsed = options.parse && options.parse(data) || parse(data);
                            if (parsed.length == 0) {
                                select.emptyList();
                                failure(term);
                                var offset = $(input).offset();
                                options.houseSearchFeedback = $("<div/>")
		                        .addClass(options.resultsClass)
		                        .css({
		                            position: 'absolute',
		                            width: typeof options.width == "string" || options.width > 0 ? options.width : $(input).width(),
		                            top: offset.top + input.offsetHeight,
		                            left: offset.left
		                        })
		                        .appendTo(document.body)
		                        .html(options.houseSearchNoResultText);
                            } else {
                                cache.add(term, parsed);
                                success(term, parsed);
                            }
                        }
                    });
                }, options.houseSearchDelayTime);
                //Feriepartner <end>
            } else if ((typeof options.url == "string") && (options.url.length > 0)) {
                var extraParams = {
                    timestamp: +new Date()
                };
                $.each(options.extraParams, function(key, param) {
                    extraParams[key] = typeof param == "function" ? param() : param;
                });

                $.ajax({
                    // try to leverage ajaxQueue plugin to abort previous requests
                    mode: "abort",
                    // limit abortion to this input
                    port: "autocomplete" + input.name,
                    dataType: options.dataType,
                    url: options.url,
                    data: $.extend({
                        q: lastWord(term),
                        limit: options.max
                    }, extraParams),
                    success: function(data) {
                        var parsed = options.parse && options.parse(data) || parse(data);
                        cache.add(term, parsed);
                        success(term, parsed);
                    }
                })
            } else if (options.googleGeocode) // Feriepartner <begin>
            {
                if (Feriepartner.Search.Area.DelayTimer != null) {
                    clearTimeout(Feriepartner.Search.Area.DelayTimer);
                }

                select.emptyList();
                failure(term);

                if (term.length >= options.googleMinSearchLength) {
                    var offset = $(input).offset();
                    options.googleFeedback = $("<div/>")
		                        .addClass(options.resultsClass)
		                        .css({
		                            position: 'absolute',
		                            width: typeof options.width == "string" || options.width > 0 ? options.width : $(input).width(),
		                            top: offset.top + input.offsetHeight,
		                            left: offset.left
		                        })
		                        .appendTo(document.body)
		                        .html(options.googleSearchingText);

                    Feriepartner.Search.Area.DelayTimer = setTimeout(function() {
                        var geocoder = new google.maps.Geocoder();
                        geocoder.geocode({ address: term, region: 'dk', language: options.googleLanguage }, function(result, status) {
                            var parsed = []
                            if (status == google.maps.GeocoderStatus.OK) {
                                parsed = options.googleParser(result);
                            }

                            if (parsed.length > 0) {
                                if (options.googleFeedBack != null) {
                                    options.googleFeedback.remove();
                                    options.googleFeedback = null;
                                }
                                cache.add(term, parsed);
                                success(term, parsed);
                            }
                            else {
                                options.googleFeedback.html(options.googleNoResultText);
                            }
                        });

                    }, options.googleSearchDelay);
                }
            } else {
                // if we have a failure, we need to empty the list -- this prevents the the [TAB] key from selecting the last successful match
                select.emptyList();
                failure(term);
            }
        };

        function parse(data) {
            var parsed = [];
            var rows = data.split("\n");
            for (var i = 0; i < rows.length; i++) {
                var row = $.trim(rows[i]);
                if (row) {
                    row = row.split("|");
                    parsed[parsed.length] = {
                        data: row,
                        value: row[0],
                        result: options.formatResult && options.formatResult(row, row[0]) || row[0]
                    };
                }
            }
            return parsed;
        };

        function stopLoading() {
            $input.removeClass(options.loadingClass);
            jQuery(".ac_results").css("display", "none");
        };

    };

    $.Autocompleter.defaults = {
        inputClass: "ac_input",
        resultsClass: "ac_results",
        loadingClass: "ac_loading",
        minChars: 1,
        delay: 400,
        matchCase: false,
        matchSubset: true,
        matchContains: false,
        cacheLength: 100,
        max: 1000,
        mustMatch: false,
        extraParams: {},
        selectFirst: true,
        formatItem: function(row) { return row[0]; },
        formatMatch: null,
        autoFill: false,
        width: 0,
        multiple: false,
        multipleSeparator: " ",
        inputFocus: true,
        clickFire: false,
        highlight: function(value, term) {
            return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1") + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>");
        },
        scroll: true,
        scrollHeight: 180,
        googleGeocode: false, // Feriepartner
        googleMinSearchLength: 3, // Feriepartner
        googleParser: function() { return []; },  // Feriepartner
        googleLanguage: 'da',  // Feriepartner
        googleSearchDelay: 2000,  // Feriepartner
        googleSearchingText: '', // Feriepartner
        googleNoResultText: '', // Feriepartner
        googleFeedback: null,  // Feriepartner
        googleDefaultRadius: 10, // Feriepartner
        houseSearch: false, // Feriepartner
        houseSearchFeedback: null, // Feriepartner
        houseSearchNoResultText: '', // Feriepartner
        houseSearchProgressText: '', // Feriepartner
        houseSearchDelayTime: 2000,  // Feriepartner
        defaultText: '', //Feriepartner
        areaNameField: null, //Feriepartner
        hideResultList: false //Feriepartner
    };

    $.Autocompleter.Cache = function(options) {

        var data = {};
        var length = 0;

        function matchSubset(s, sub) {
            if (!options.matchCase)
                s = s.toLowerCase();
            var i = s.indexOf(sub);
            if (options.matchContains == "word") {
                i = s.toLowerCase().search("\\b" + sub.toLowerCase());
            }
            if (i == -1) return false;
            return i == 0 || options.matchContains;
        };

        function add(q, value) {
            if (length > options.cacheLength) {
                flush();
            }
            if (!data[q]) {
                length++;
            }
            data[q] = value;
        }

        function populate() {
            if (!options.data) return false;
            // track the matches
            var stMatchSets = {},
			nullData = 0;

            // no url was specified, we need to adjust the cache length to make sure it fits the local data store
            if (!options.url) options.cacheLength = 1;

            // track all options for minChars = 0
            stMatchSets[""] = [];

            // loop through the array and create a lookup structure
            for (var i = 0, ol = options.data.length; i < ol; i++) {
                var rawValue = options.data[i];
                // if rawValue is a string, make an array otherwise just reference the array
                rawValue = (typeof rawValue == "string") ? [rawValue] : rawValue;

                var value = options.formatMatch(rawValue, i + 1, options.data.length);
                if (value === false)
                    continue;

                var firstChar = value.charAt(0).toLowerCase();
                // if no lookup array for this character exists, look it up now
                if (!stMatchSets[firstChar])
                    stMatchSets[firstChar] = [];

                // if the match is a string
                var row = {
                    value: value,
                    data: rawValue,
                    result: options.formatResult && options.formatResult(rawValue) || value
                };

                // push the current match into the set list
                stMatchSets[firstChar].push(row);

                // keep track of minChars zero items
                if (nullData++ < options.max) {
                    stMatchSets[""].push(row);
                }
            };

            // add the data items to the cache
            $.each(stMatchSets, function(i, value) {
                // increase the cache size
                options.cacheLength++;
                // add to the cache
                add(i, value);
            });
        }

        // populate any existing data
        setTimeout(populate, 25);

        function flush() {
            data = {};
            length = 0;
        }

        return {
            flush: flush,
            add: add,
            populate: populate,
            load: function(q) {
                if (!options.cacheLength || !length)
                    return null;
                /* 
                * if dealing w/local data and matchContains than we must make sure
                * to loop through all the data collections looking for matches
                */
                if (!options.url && options.matchContains) {
                    // track all matches
                    var csub = [];
                    // loop through all the data grids for matches
                    for (var k in data) {
                        // don't search through the stMatchSets[""] (minChars: 0) cache
                        // this prevents duplicates
                        if (k.length > 0) {
                            var c = data[k];
                            $.each(c, function(i, x) {
                                // if we've got a match, add it to the array
                                if (matchSubset(x.value, q)) {
                                    csub.push(x);
                                }
                            });
                        }
                    }
                    return csub;
                } else
                // if the exact item exists, use it
                    if (data[q]) {
                    return data[q];
                } else
                    if (options.matchSubset) {
                    for (var i = q.length - 1; i >= options.minChars; i--) {
                        var c = data[q.substr(0, i)];
                        if (c) {
                            var csub = [];
                            $.each(c, function(i, x) {
                                if (matchSubset(x.value, q)) {
                                    csub[csub.length] = x;
                                }
                            });
                            return csub;
                        }
                    }
                }
                return null;
            }
        };
    };

    $.Autocompleter.Select = function(options, input, select, config) {
        var CLASSES = {
            ACTIVE: "ac_over"
        };

        var listItems,
		active = -1,
		data,
		term = "",
		needsInit = true,
		element,
		list;

        // Create results
        function init() {
            if (!needsInit)
                return;
            element = $("<div/>")
		.hide()
		.addClass(options.resultsClass)
		.css("position", "absolute")
		.appendTo(document.body)
		.hover(function(event) {
		    // Browsers except FF do not fire mouseup event on scrollbars, resulting in mouseDownOnSelect remaining true, and results list not always hiding.
		    if ($(this).is(":visible")) {
		        input.focus();
		    }
		    config.mouseDownOnSelect = false;
		    //console.debug(config.mouseDownOnSelect);
		});

            list = $("<ul/>").appendTo(element).mouseover(function(event) {
                if (target(event).nodeName && target(event).nodeName.toUpperCase() == 'LI') {
                    active = $("li", list).removeClass(CLASSES.ACTIVE).index(target(event));
                    $(target(event)).addClass(CLASSES.ACTIVE);
                }
            }).click(function(event) {
                $(target(event)).addClass(CLASSES.ACTIVE);
                select();
                if (options.inputFocus)
                    input.focus();
                return false;
            }).mousedown(function() {
                config.mouseDownOnSelect = true;
            }).mouseup(function() {
                config.mouseDownOnSelect = false;
            });

            if (options.width > 0)
                element.css("width", options.width);

            needsInit = false;
        }

        function target(event) {
            var element = event.target;
            while (element && element.tagName != "LI")
                element = element.parentNode;
            // more fun with IE, sometimes event.target is empty, just ignore it then
            if (!element)
                return [];
            return element;
        }

        function moveSelect(step) {
            listItems.slice(active, active + 1).removeClass(CLASSES.ACTIVE);
            movePosition(step);
            var activeItem = listItems.slice(active, active + 1).addClass(CLASSES.ACTIVE);
            if (options.scroll) {
                var offset = 0;
                listItems.slice(0, active).each(function() {
                    offset += this.offsetHeight;
                });
                if ((offset + activeItem[0].offsetHeight - list.scrollTop()) > list[0].clientHeight) {
                    list.scrollTop(offset + activeItem[0].offsetHeight - list.innerHeight());
                } else if (offset < list.scrollTop()) {
                    list.scrollTop(offset);
                }
            }
        };

        function movePosition(step) {
            active += step;
            if (active < 0) {
                active = listItems.size() - 1;
            } else if (active >= listItems.size()) {
                active = 0;
            }
        }

        function limitNumberOfItems(available) {
            return (options.max && options.max < available)
			? options.max
			: available;
        }

        function fillList() {
            list.empty();
            var max = limitNumberOfItems(data.length);
            for (var i = 0; i < max; i++) {
                if (!data[i])
                    continue;
                var formatted = options.formatItem(data[i].data, i + 1, max, data[i].value, term);
                if (formatted === false)
                    continue;
                var li = $("<li/>").html(options.highlight(formatted, term)).addClass(i % 2 == 0 ? "ac_even" : "ac_odd").appendTo(list)[0];
                $.data(li, "ac_data", data[i]);
            }
            listItems = list.find("li");
            if (options.selectFirst) {
                listItems.slice(0, 1).addClass(CLASSES.ACTIVE);
                active = 0;
            }
            // apply bgiframe if available
            if ($.fn.bgiframe)
                list.bgiframe();
        }

        return {
            display: function(d, q) {
                init();
                data = d;
                term = q;
                fillList();
            },
            next: function() {
                moveSelect(1);
            },
            prev: function() {
                moveSelect(-1);
            },
            pageUp: function() {
                if (active != 0 && active - 8 < 0) {
                    moveSelect(-active);
                } else {
                    moveSelect(-8);
                }
            },
            pageDown: function() {
                if (active != listItems.size() - 1 && active + 8 > listItems.size()) {
                    moveSelect(listItems.size() - 1 - active);
                } else {
                    moveSelect(8);
                }
            },
            hide: function() {
                element && element.hide();
                listItems && listItems.removeClass(CLASSES.ACTIVE);
                active = -1;
            },
            visible: function() {
                return element && element.is(":visible");
            },
            current: function() {
                return this.visible() && (listItems.filter("." + CLASSES.ACTIVE)[0] || options.selectFirst && listItems[0]);
            },
            show: function() {
                if (options.googleFeedback != null)  // Feriepartner <begin>
                {
                    options.googleFeedback.remove();
                    options.googleFeedback = null;
                }  // Feriepartner <end>

                if (options.houseSearchFeedback != null)  // Feriepartner <begin>
                {
                    options.houseSearchFeedback.remove();
                    options.houseSearchFeedback = null;
                }  // Feriepartner <end>

                var offset = $(input).offset();
                element.css({
                    width: typeof options.width == "string" || options.width > 0 ? options.width : $(input).width(),
                    top: offset.top + input.offsetHeight,
                    left: offset.left
                }).show();
                if (options.scroll) {
                    list.scrollTop(0);
                    list.css({
                        maxHeight: options.scrollHeight,
                        overflow: 'auto'
                    });

                    if ($.browser.msie && typeof document.body.style.maxHeight === "undefined") {
                        var listHeight = 0;
                        listItems.each(function() {
                            listHeight += this.offsetHeight;
                        });
                        var scrollbarsVisible = listHeight > options.scrollHeight;
                        list.css('height', scrollbarsVisible ? options.scrollHeight : listHeight);
                        if (!scrollbarsVisible) {
                            // IE doesn't recalculate width when scrollbar disappears
                            listItems.width(list.width() - parseInt(listItems.css("padding-left")) - parseInt(listItems.css("padding-right")));
                        }
                    }

                }
            },
            selected: function() {
                var selected = listItems && listItems.filter("." + CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);
                return selected && selected.length && $.data(selected[0], "ac_data");
            },
            emptyList: function() {
                list && list.empty();
            },
            unbind: function() {
                element && element.remove();
            }
        };
    };

    $.fn.selection = function(start, end) {
        if (start !== undefined) {
            return this.each(function() {
                if (this.createTextRange) {
                    var selRange = this.createTextRange();
                    if (end === undefined || start == end) {
                        selRange.move("character", start);
                        selRange.select();
                    } else {
                        selRange.collapse(true);
                        selRange.moveStart("character", start);
                        selRange.moveEnd("character", end);
                        selRange.select();
                    }
                } else if (this.setSelectionRange) {
                    this.setSelectionRange(start, end);
                } else if (this.selectionStart) {
                    this.selectionStart = start;
                    this.selectionEnd = end;
                }
            });
        }
        var field = this[0];
        if (field.createTextRange) {
            var range = document.selection.createRange(),
			orig = field.value,
			teststring = "<->",
			textLength = range.text.length;
            range.text = teststring;
            var caretAt = field.value.indexOf(teststring);
            field.value = orig;
            this.selection(caretAt, caretAt + textLength);
            return {
                start: caretAt,
                end: caretAt + textLength
            }
        } else if (field.selectionStart !== undefined) {
            return {
                start: field.selectionStart,
                end: field.selectionEnd
            }
        }
    };

})(jQuery);



///////// Marker Clusterer (v3) //////////// from http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/src/markerclusterer_compiled.js
(function () {
    var d = null; function e(a) { return function (b) { this[a] = b } } function h(a) { return function () { return this[a] } } var j;
    function k(a, b, c) {
        this.extend(k, google.maps.OverlayView); this.c = a; this.a = []; this.f = []; this.ca = [53, 56, 66, 78, 90]; this.j = []; this.A = !1; c = c || {}; this.g = c.gridSize || 60; this.l = c.minimumClusterSize || 2; this.J = c.maxZoom || d; this.j = c.styles || []; this.X = c.imagePath || this.Q; this.W = c.imageExtension || this.P; this.O = !0; if (c.zoomOnClick != void 0) this.O = c.zoomOnClick; this.r = !1; if (c.averageCenter != void 0) this.r = c.averageCenter; l(this); this.setMap(a); this.K = this.c.getZoom(); var f = this; google.maps.event.addListener(this.c,
"zoom_changed", function () { var a = f.c.getZoom(); if (f.K != a) f.K = a, f.m() }); google.maps.event.addListener(this.c, "idle", function () { f.i() }); b && b.length && this.C(b, !1)
    } j = k.prototype; j.Q = "http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/images/m"; j.P = "png"; j.extend = function (a, b) { return function (a) { for (var b in a.prototype) this.prototype[b] = a.prototype[b]; return this } .apply(a, [b]) }; j.onAdd = function () { if (!this.A) this.A = !0, n(this) }; j.draw = function () { };
    function l(a) { if (!a.j.length) for (var b = 0, c; c = a.ca[b]; b++) a.j.push({ url: a.X + (b + 1) + "." + a.W, height: c, width: c }) } j.S = function () { for (var a = this.o(), b = new google.maps.LatLngBounds, c = 0, f; f = a[c]; c++) b.extend(f.getPosition()); this.c.fitBounds(b) }; j.z = h("j"); j.o = h("a"); j.V = function () { return this.a.length }; j.ba = e("J"); j.I = h("J"); j.G = function (a, b) { for (var c = 0, f = a.length, g = f; g !== 0; ) g = parseInt(g / 10, 10), c++; c = Math.min(c, b); return { text: f, index: c} }; j.$ = e("G"); j.H = h("G");
    j.C = function (a, b) { for (var c = 0, f; f = a[c]; c++) q(this, f); b || this.i() }; function q(a, b) { b.s = !1; b.draggable && google.maps.event.addListener(b, "dragend", function () { b.s = !1; a.L() }); a.a.push(b) } j.q = function (a, b) { q(this, a); b || this.i() }; function r(a, b) { var c = -1; if (a.a.indexOf) c = a.a.indexOf(b); else for (var f = 0, g; g = a.a[f]; f++) if (g == b) { c = f; break } if (c == -1) return !1; b.setMap(d); a.a.splice(c, 1); return !0 } j.Y = function (a, b) { var c = r(this, a); return !b && c ? (this.m(), this.i(), !0) : !1 };
    j.Z = function (a, b) { for (var c = !1, f = 0, g; g = a[f]; f++) g = r(this, g), c = c || g; if (!b && c) return this.m(), this.i(), !0 }; j.U = function () { return this.f.length }; j.getMap = h("c"); j.setMap = e("c"); j.w = h("g"); j.aa = e("g");
    j.v = function (a) { var b = this.getProjection(), c = new google.maps.LatLng(a.getNorthEast().lat(), a.getNorthEast().lng()), f = new google.maps.LatLng(a.getSouthWest().lat(), a.getSouthWest().lng()), c = b.fromLatLngToDivPixel(c); c.x += this.g; c.y -= this.g; f = b.fromLatLngToDivPixel(f); f.x -= this.g; f.y += this.g; c = b.fromDivPixelToLatLng(c); b = b.fromDivPixelToLatLng(f); a.extend(c); a.extend(b); return a }; j.R = function () { this.m(!0); this.a = [] };
    j.m = function (a) { for (var b = 0, c; c = this.f[b]; b++) c.remove(); for (b = 0; c = this.a[b]; b++) c.s = !1, a && c.setMap(d); this.f = [] }; j.L = function () { var a = this.f.slice(); this.f.length = 0; this.m(); this.i(); window.setTimeout(function () { for (var b = 0, c; c = a[b]; b++) c.remove() }, 0) }; j.i = function () { n(this) };
    function n(a) {
        if (a.A) for (var b = a.v(new google.maps.LatLngBounds(a.c.getBounds().getSouthWest(), a.c.getBounds().getNorthEast())), c = 0, f; f = a.a[c]; c++) if (!f.s && b.contains(f.getPosition())) {
            for (var g = a, u = 4E4, o = d, v = 0, m = void 0; m = g.f[v]; v++) {
                var i = m.getCenter(); if (i) {
                    var p = f.getPosition(); if (!i || !p) i = 0; else var w = (p.lat() - i.lat()) * Math.PI / 180, x = (p.lng() - i.lng()) * Math.PI / 180, i = Math.sin(w / 2) * Math.sin(w / 2) + Math.cos(i.lat() * Math.PI / 180) * Math.cos(p.lat() * Math.PI / 180) * Math.sin(x / 2) * Math.sin(x / 2), i = 6371 * 2 * Math.atan2(Math.sqrt(i),
Math.sqrt(1 - i)); i < u && (u = i, o = m)
                } 
            } o && o.F.contains(f.getPosition()) ? o.q(f) : (m = new s(g), m.q(f), g.f.push(m))
        } 
    } function s(a) { this.k = a; this.c = a.getMap(); this.g = a.w(); this.l = a.l; this.r = a.r; this.d = d; this.a = []; this.F = d; this.n = new t(this, a.z(), a.w()) } j = s.prototype;
    j.q = function (a) {
        var b; a: if (this.a.indexOf) b = this.a.indexOf(a) != -1; else { b = 0; for (var c; c = this.a[b]; b++) if (c == a) { b = !0; break a } b = !1 } if (b) return !1; if (this.d) { if (this.r) c = this.a.length + 1, b = (this.d.lat() * (c - 1) + a.getPosition().lat()) / c, c = (this.d.lng() * (c - 1) + a.getPosition().lng()) / c, this.d = new google.maps.LatLng(b, c), y(this) } else this.d = a.getPosition(), y(this); a.s = !0; this.a.push(a); b = this.a.length; b < this.l && a.getMap() != this.c && a.setMap(this.c); if (b == this.l) for (c = 0; c < b; c++) this.a[c].setMap(d); b >= this.l && a.setMap(d);
        a = this.c.getZoom(); if ((b = this.k.I()) && a > b) for (a = 0; b = this.a[a]; a++) b.setMap(this.c); else if (this.a.length < this.l) z(this.n); else { b = this.k.H()(this.a, this.k.z().length); this.n.setCenter(this.d); a = this.n; a.B = b; a.ga = b.text; a.ea = b.index; if (a.b) a.b.innerHTML = b.text; b = Math.max(0, a.B.index - 1); b = Math.min(a.j.length - 1, b); b = a.j[b]; a.da = b.url; a.h = b.height; a.p = b.width; a.M = b.textColor; a.e = b.anchor; a.N = b.textSize; a.D = b.backgroundPosition; this.n.show() } return !0
    };
    j.getBounds = function () { for (var a = new google.maps.LatLngBounds(this.d, this.d), b = this.o(), c = 0, f; f = b[c]; c++) a.extend(f.getPosition()); return a }; j.remove = function () { this.n.remove(); this.a.length = 0; delete this.a }; j.T = function () { return this.a.length }; j.o = h("a"); j.getCenter = h("d"); function y(a) { a.F = a.k.v(new google.maps.LatLngBounds(a.d, a.d)) } j.getMap = h("c");
    function t(a, b, c) { a.k.extend(t, google.maps.OverlayView); this.j = b; this.fa = c || 0; this.u = a; this.d = d; this.c = a.getMap(); this.B = this.b = d; this.t = !1; this.setMap(this.c) } j = t.prototype;
    j.onAdd = function () { this.b = document.createElement("DIV"); if (this.t) this.b.style.cssText = A(this, B(this, this.d)), this.b.innerHTML = this.B.text; this.getPanes().overlayMouseTarget.appendChild(this.b); var a = this; google.maps.event.addDomListener(this.b, "click", function () { var b = a.u.k; google.maps.event.trigger(b, "clusterclick", a.u); b.O && a.c.fitBounds(a.u.getBounds()) }) }; function B(a, b) { var c = a.getProjection().fromLatLngToDivPixel(b); c.x -= parseInt(a.p / 2, 10); c.y -= parseInt(a.h / 2, 10); return c }
    j.draw = function () { if (this.t) { var a = B(this, this.d); this.b.style.top = a.y + "px"; this.b.style.left = a.x + "px" } }; function z(a) { if (a.b) a.b.style.display = "none"; a.t = !1 } j.show = function () { if (this.b) this.b.style.cssText = A(this, B(this, this.d)), this.b.style.display = ""; this.t = !0 }; j.remove = function () { this.setMap(d) }; j.onRemove = function () { if (this.b && this.b.parentNode) z(this), this.b.parentNode.removeChild(this.b), this.b = d }; j.setCenter = e("d");
    function A(a, b) {
        var c = []; c.push("background-image:url(" + a.da + ");"); c.push("background-position:" + (a.D ? a.D : "0 0") + ";"); typeof a.e === "object" ? (typeof a.e[0] === "number" && a.e[0] > 0 && a.e[0] < a.h ? c.push("height:" + (a.h - a.e[0]) + "px; padding-top:" + a.e[0] + "px;") : c.push("height:" + a.h + "px; line-height:" + a.h + "px;"), typeof a.e[1] === "number" && a.e[1] > 0 && a.e[1] < a.p ? c.push("width:" + (a.p - a.e[1]) + "px; padding-left:" + a.e[1] + "px;") : c.push("width:" + a.p + "px; text-align:center;")) : c.push("height:" + a.h + "px; line-height:" + a.h +
"px; width:" + a.p + "px; text-align:center;"); c.push("cursor:pointer; top:" + b.y + "px; left:" + b.x + "px; color:" + (a.M ? a.M : "black") + "; position:absolute; font-size:" + (a.N ? a.N : 11) + "px; font-family:Arial,sans-serif; font-weight:bold"); return c.join("")
    } window.MarkerClusterer = k; k.prototype.addMarker = k.prototype.q; k.prototype.addMarkers = k.prototype.C; k.prototype.clearMarkers = k.prototype.R; k.prototype.fitMapToMarkers = k.prototype.S; k.prototype.getCalculator = k.prototype.H; k.prototype.getGridSize = k.prototype.w;
    k.prototype.getExtendedBounds = k.prototype.v; k.prototype.getMap = k.prototype.getMap; k.prototype.getMarkers = k.prototype.o; k.prototype.getMaxZoom = k.prototype.I; k.prototype.getStyles = k.prototype.z; k.prototype.getTotalClusters = k.prototype.U; k.prototype.getTotalMarkers = k.prototype.V; k.prototype.redraw = k.prototype.i; k.prototype.removeMarker = k.prototype.Y; k.prototype.removeMarkers = k.prototype.Z; k.prototype.resetViewport = k.prototype.m; k.prototype.repaint = k.prototype.L; k.prototype.setCalculator = k.prototype.$;
    k.prototype.setGridSize = k.prototype.aa; k.prototype.setMaxZoom = k.prototype.ba; k.prototype.onAdd = k.prototype.onAdd; k.prototype.draw = k.prototype.draw; s.prototype.getCenter = s.prototype.getCenter; s.prototype.getSize = s.prototype.T; s.prototype.getMarkers = s.prototype.o; t.prototype.onAdd = t.prototype.onAdd; t.prototype.draw = t.prototype.draw; t.prototype.onRemove = t.prototype.onRemove;
})();
