// Modernizr v1.7  www.modernizr.com
window.Modernizr=function(a,b,c){function G(){e.input=function(a){for(var b=0,c=a.length;b<c;b++)t[a[b]]=!!(a[b]in l);return t}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)l.setAttribute("type",f=a[d]),e=l.type!=="text",e&&(l.value=m,l.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&l.style.WebkitAppearance!==c?(g.appendChild(l),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(l,null).WebkitAppearance!=="textfield"&&l.offsetHeight!==0,g.removeChild(l)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=l.checkValidity&&l.checkValidity()===!1:/^color$/.test(f)?(g.appendChild(l),g.offsetWidth,e=l.value!=m,g.removeChild(l)):e=l.value!=m)),s[a[d]]=!!e;return s}("search tel url email datetime date month week time datetime-local number range color".split(" "))}function F(a,b){var c=a.charAt(0).toUpperCase()+a.substr(1),d=(a+" "+p.join(c+" ")+c).split(" ");return!!E(d,b)}function E(a,b){for(var d in a)if(k[a[d]]!==c&&(!b||b(a[d],j)))return!0}function D(a,b){return(""+a).indexOf(b)!==-1}function C(a,b){return typeof a===b}function B(a,b){return A(o.join(a+";")+(b||""))}function A(a){k.cssText=a}var d="1.7",e={},f=!0,g=b.documentElement,h=b.head||b.getElementsByTagName("head")[0],i="modernizr",j=b.createElement(i),k=j.style,l=b.createElement("input"),m=":)",n=Object.prototype.toString,o=" -webkit- -moz- -o- -ms- -khtml- ".split(" "),p="Webkit Moz O ms Khtml".split(" "),q={svg:"http://www.w3.org/2000/svg"},r={},s={},t={},u=[],v,w=function(a){var c=b.createElement("style"),d=b.createElement("div"),e;c.textContent=a+"{#modernizr{height:3px}}",h.appendChild(c),d.id="modernizr",g.appendChild(d),e=d.offsetHeight===3,c.parentNode.removeChild(c),d.parentNode.removeChild(d);return!!e},x=function(){function d(d,e){e=e||b.createElement(a[d]||"div");var f=(d="on"+d)in e;f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=C(e[d],"function"),C(e[d],c)||(e[d]=c),e.removeAttribute(d))),e=null;return f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),y=({}).hasOwnProperty,z;C(y,c)||C(y.call,c)?z=function(a,b){return b in a&&C(a.constructor.prototype[b],c)}:z=function(a,b){return y.call(a,b)},r.flexbox=function(){function c(a,b,c,d){a.style.cssText=o.join(b+":"+c+";")+(d||"")}function a(a,b,c,d){b+=":",a.style.cssText=(b+o.join(c+";"+b)).slice(0,-b.length)+(d||"")}var d=b.createElement("div"),e=b.createElement("div");a(d,"display","box","width:42px;padding:0;"),c(e,"box-flex","1","width:10px;"),d.appendChild(e),g.appendChild(d);var f=e.offsetWidth===42;d.removeChild(e),g.removeChild(d);return f},r.canvas=function(){var a=b.createElement("canvas");return a.getContext&&a.getContext("2d")},r.canvastext=function(){return e.canvas&&C(b.createElement("canvas").getContext("2d").fillText,"function")},r.webgl=function(){return!!a.WebGLRenderingContext},r.touch=function(){return"ontouchstart"in a||w("@media ("+o.join("touch-enabled),(")+"modernizr)")},r.geolocation=function(){return!!navigator.geolocation},r.postmessage=function(){return!!a.postMessage},r.websqldatabase=function(){var b=!!a.openDatabase;return b},r.indexedDB=function(){for(var b=-1,c=p.length;++b<c;){var d=p[b].toLowerCase();if(a[d+"_indexedDB"]||a[d+"IndexedDB"])return!0}return!1},r.hashchange=function(){return x("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},r.history=function(){return !!(a.history&&history.pushState)},r.draganddrop=function(){return x("dragstart")&&x("drop")},r.websockets=function(){return"WebSocket"in a},r.rgba=function(){A("background-color:rgba(150,255,150,.5)");return D(k.backgroundColor,"rgba")},r.hsla=function(){A("background-color:hsla(120,40%,100%,.5)");return D(k.backgroundColor,"rgba")||D(k.backgroundColor,"hsla")},r.multiplebgs=function(){A("background:url(//:),url(//:),red url(//:)");return(new RegExp("(url\\s*\\(.*?){3}")).test(k.background)},r.backgroundsize=function(){return F("backgroundSize")},r.borderimage=function(){return F("borderImage")},r.borderradius=function(){return F("borderRadius","",function(a){return D(a,"orderRadius")})},r.boxshadow=function(){return F("boxShadow")},r.textshadow=function(){return b.createElement("div").style.textShadow===""},r.opacity=function(){B("opacity:.55");return/^0.55$/.test(k.opacity)},r.cssanimations=function(){return F("animationName")},r.csscolumns=function(){return F("columnCount")},r.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";A((a+o.join(b+a)+o.join(c+a)).slice(0,-a.length));return D(k.backgroundImage,"gradient")},r.cssreflections=function(){return F("boxReflect")},r.csstransforms=function(){return!!E(["transformProperty","WebkitTransform","MozTransform","OTransform","msTransform"])},r.csstransforms3d=function(){var a=!!E(["perspectiveProperty","WebkitPerspective","MozPerspective","OPerspective","msPerspective"]);a&&"webkitPerspective"in g.style&&(a=w("@media ("+o.join("transform-3d),(")+"modernizr)"));return a},r.csstransitions=function(){return F("transitionProperty")},r.fontface=function(){var a,c,d=h||g,e=b.createElement("style"),f=b.implementation||{hasFeature:function(){return!1}};e.type="text/css",d.insertBefore(e,d.firstChild),a=e.sheet||e.styleSheet;var i=f.hasFeature("CSS2","")?function(b){if(!a||!b)return!1;var c=!1;try{a.insertRule(b,0),c=/src/i.test(a.cssRules[0].cssText),a.deleteRule(a.cssRules.length-1)}catch(d){}return c}:function(b){if(!a||!b)return!1;a.cssText=b;return a.cssText.length!==0&&/src/i.test(a.cssText)&&a.cssText.replace(/\r+|\n+/g,"").indexOf(b.split(" ")[0])===0};c=i('@font-face { font-family: "font"; src: url(data:,); }'),d.removeChild(e);return c},r.video=function(){var a=b.createElement("video"),c=!!a.canPlayType;if(c){c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"');var d='video/mp4; codecs="avc1.42E01E';c.h264=a.canPlayType(d+'"')||a.canPlayType(d+', mp4a.40.2"'),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"')}return c},r.audio=function(){var a=b.createElement("audio"),c=!!a.canPlayType;c&&(c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"'),c.mp3=a.canPlayType("audio/mpeg;"),c.wav=a.canPlayType('audio/wav; codecs="1"'),c.m4a=a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;"));return c},r.localstorage=function(){try{return!!localStorage.getItem}catch(a){return!1}},r.sessionstorage=function(){try{return!!sessionStorage.getItem}catch(a){return!1}},r.webWorkers=function(){return!!a.Worker},r.applicationcache=function(){return!!a.applicationCache},r.svg=function(){return!!b.createElementNS&&!!b.createElementNS(q.svg,"svg").createSVGRect},r.inlinesvg=function(){var a=b.createElement("div");a.innerHTML="<svg/>";return(a.firstChild&&a.firstChild.namespaceURI)==q.svg},r.smil=function(){return!!b.createElementNS&&/SVG/.test(n.call(b.createElementNS(q.svg,"animate")))},r.svgclippaths=function(){return!!b.createElementNS&&/SVG/.test(n.call(b.createElementNS(q.svg,"clipPath")))};for(var H in r)z(r,H)&&(v=H.toLowerCase(),e[v]=r[H](),u.push((e[v]?"":"no-")+v));e.input||G(),e.crosswindowmessaging=e.postmessage,e.historymanagement=e.history,e.addTest=function(a,b){a=a.toLowerCase();if(!e[a]){b=!!b(),g.className+=" "+(b?"":"no-")+a,e[a]=b;return e}},A(""),j=l=null,f&&a.attachEvent&&function(){var a=b.createElement("div");a.innerHTML="<elem></elem>";return a.childNodes.length!==1}()&&function(a,b){function p(a,b){var c=-1,d=a.length,e,f=[];while(++c<d)e=a[c],(b=e.media||b)!="screen"&&f.push(p(e.imports,b),e.cssText);return f.join("")}function o(a){var b=-1;while(++b<e)a.createElement(d[b])}var c="abbr|article|aside|audio|canvas|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",d=c.split("|"),e=d.length,f=new RegExp("(^|\\s)("+c+")","gi"),g=new RegExp("<(/*)("+c+")","gi"),h=new RegExp("(^|[^\\n]*?\\s)("+c+")([^\\n]*)({[\\n\\w\\W]*?})","gi"),i=b.createDocumentFragment(),j=b.documentElement,k=j.firstChild,l=b.createElement("body"),m=b.createElement("style"),n;o(b),o(i),k.insertBefore(m,k.firstChild),m.media="print",a.attachEvent("onbeforeprint",function(){var a=-1,c=p(b.styleSheets,"all"),k=[],o;n=n||b.body;while((o=h.exec(c))!=null)k.push((o[1]+o[2]+o[3]).replace(f,"$1.iepp_$2")+o[4]);m.styleSheet.cssText=k.join("\n");while(++a<e){var q=b.getElementsByTagName(d[a]),r=q.length,s=-1;while(++s<r)q[s].className.indexOf("iepp_")<0&&(q[s].className+=" iepp_"+d[a])}i.appendChild(n),j.appendChild(l),l.className=n.className,l.innerHTML=n.innerHTML.replace(g,"<$1font")}),a.attachEvent("onafterprint",function(){l.innerHTML="",j.removeChild(l),j.appendChild(n),m.styleSheet.cssText=""})}(a,b),e._enableHTML5=f,e._version=d,g.className=g.className.replace(/\bno-js\b/,"")+" js "+u.join(" ");return e}(this,this.document);
/*****************************************************************************
 * $.plugin - jQuery Plugin for on-demand loading of scripts and styles
 *
 * Documentation : http://nicolas.rudas.info/jQuery/getPlugin/
 * Issues		 : http://plugins.jquery.com/project/getPlugin/
 *
 * Version: 081002 - 02 Oct 2008
 *
 *****************************************************************************/
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}(';$(3(){$.8=$.8||{};$.8.7=1k.1l||{};$.8.x={7:f,y:{7:f},p:$(1m),k:$(\'1n\',2.p),18:3(){},19:3(){},T:3(){}};5 e=$.8.x,7=$.8.7;l=3(a,b){5 c=2;2.U=a;z(5 i V b){c[i]=b[i]};2.p=2.p||b.p;2.k=2.k||b.k;2.L={};2.q=[];2.18.A(2);6 2};l.B.M=3(c){4(!c||g c!=\'C\'){D r E(\'$.h.M(s) - s {1a} 1o 1b 1c\');}5 d=2,9=c.1d(\'.\')[c.1d(\'.\').u-1],F=c.1p(/\\W/1q,\'\'),G=7[c],X=(e.7===f||e.7==\'f\');4(9!=\'H\'&&9!=\'Y\'){D r E(\'$.h.M(s) - 1r 9:\'+9+\'\\n\\t\'+c);6 2;}4(X&&2.L[c]){6 2;}2.1e(c);$(\'[N-I-O="\'+F+\'"]\').1s();4(X&&G&&G!=\'1t\'){4(9==\'H\'){2.k.Z(\'<P 10="11\\/H" 1f="1g" N-I-O="\'+F+\'">\'+G+\'<\\/P>\');}m 4(9==\'Y\'){2.k.Z(\'<12 10="11\\/1u" N-I-O="\'+F+\'">\'+G+\'<\\/12>\');}13(3(){d.J(c);},0);}m{4(9==\'H\'){(3(){5 b=$.Q({s:c},e.y),R=b.S||3(){};b.S=3(a){R.A(2,o);d.L[c]=f;7[c]=a;d.k.Z(\'<P 10="11\\/H" 1f="1g" N-I-O="\'+F+\'">\'+a+\'<\\/P>\');d.J(c);};$.y(b);})();}m 4(9==\'Y\'){(3(){5 b=$.Q({1v:"12",s:c},e.y),R=b.S||3(){};b.S=3(){R.A(2,o);5 a=(g o[0]==\'C\')?o[0]:1w;7[c]=a;d.L[c]=f;d.J(c);};$.y(b);})();}}6 2;};l.B.1e=3(a){2.q.1x(a);e.19.1h(2,a);6 2;};l.B.J=3(a){5 b=2,j=2.14,15=$.1y(a,2.q);4(15==-1){D r E(\'$.h.J(s) - 1z T z I 1A 1B 1i 1b V q:\\n \'+a);6 2;}2.q.1C(15,1);4(2.q.u==0&&j){13(3(){j.A(b);1D b.14;},0);}e.T.1h(2,a);6 2;};l.B.16=3(){5 b=2,v=(g 2.v==\'C\')?[2.v]:2.v,j=o[0]||2.j;2.14=j;4(2.K()!==f){6 2;}5 c=3(a){b.M(a);};z(5 i=0;i<v.u;i++){(3(){5 a=v[i];4($.1E.1F){13(3(){c(a);},1G);}m{c(a);}})();}6 2;};l.B.K=3(){5 a=2,w=(g 2.w==\'C\')?[2.w]:2.w,K;z(5 i=0;i<w.u;i++){5 b=w[i];4($(b,a.p).u>0){K=f;1H;}};6 K||2;};$.Q($,{h:3(a,b){5 c=$.h;4(o.u==0){z(5 i V $.8){4(i==\'x\'||i==\'7\'){1I;}$.8[i].16();};6 c;}m 4(g a!=\'C\'){D r E(\'$.h(U,[x||j])\\n\\t\\t@17 U\\t\\t{1a}\\n\\t\\t@17 x\\t{1J}\\n\\t\\t@17 j\\t{1K}\');6 c;}4(g b==\'1j\'){$.8[a]=r l(a,$.Q(e,b));}m{5 d=$.8[a];4(g d!=\'1j\'){D r E(\'$.h: \'+a+\' 1L 1i 1c\');6 c;}4(g b==\'3\'){d.16(b)}m 4(!b){6 d}}6 c},1M:3(){6 $.h.A(2,o)}})});',62,111,'||this|function|if|var|return|cache|plugins|extension||||||true|typeof|plugin||callback|target|Plugin|else||arguments|context|queue|new|url||length|files|selectors|settings|ajax|for|apply|prototype|string|throw|Error|fileId|cached|css|file|afterGet|isNeeded|loaded|getFile|data|id|style|extend|onSuccess|success|postLoad|name|in||caching|js|append|type|text|script|setTimeout|tmp_callback|index|get|param|init|preLoad|String|be|specified|split|beforeGet|rel|stylesheet|call|not|object|window|sessionStorage|document|head|must|replace|gi|Invalid|remove|undefined|javascript|dataType|null|push|inArray|Ignoring|that|should|splice|delete|browser|opera|500|break|continue|Object|Function|is|getPlugin'.split('|'),0,{}));;
/*!
 * jCarousel - Riding carousels with jQuery
 *   http://sorgalla.com/jcarousel/
 *
 * Copyright (c) 2006 Jan Sorgalla (http://sorgalla.com)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 *
 * Built on top of the jQuery library
 *   http://jquery.com
 *
 * Inspired by the "Carousel Component" by Bill Scott
 *   http://billwscott.com/carousel/
 */

(function(g){var q={vertical:!1,rtl:!1,start:1,offset:1,size:null,scroll:3,visible:null,animation:"normal",easing:"swing",auto:0,wrap:null,initCallback:null,setupCallback:null,reloadCallback:null,itemLoadCallback:null,itemFirstInCallback:null,itemFirstOutCallback:null,itemLastInCallback:null,itemLastOutCallback:null,itemVisibleInCallback:null,itemVisibleOutCallback:null,animationStepCallback:null,buttonNextHTML:"<div></div>",buttonPrevHTML:"<div></div>",buttonNextEvent:"click",buttonPrevEvent:"click", buttonNextCallback:null,buttonPrevCallback:null,itemFallbackDimension:null},m=!1;g(window).bind("load.jcarousel",function(){m=!0});g.jcarousel=function(a,c){this.options=g.extend({},q,c||{});this.autoStopped=this.locked=!1;this.buttonPrevState=this.buttonNextState=this.buttonPrev=this.buttonNext=this.list=this.clip=this.container=null;if(!c||c.rtl===void 0)this.options.rtl=(g(a).attr("dir")||g("html").attr("dir")||"").toLowerCase()=="rtl";this.wh=!this.options.vertical?"width":"height";this.lt=!this.options.vertical? this.options.rtl?"right":"left":"top";for(var b="",d=a.className.split(" "),f=0;f<d.length;f++)if(d[f].indexOf("jcarousel-skin")!=-1){g(a).removeClass(d[f]);b=d[f];break}a.nodeName.toUpperCase()=="UL"||a.nodeName.toUpperCase()=="OL"?(this.list=g(a),this.clip=this.list.parents(".jcarousel-clip"),this.container=this.list.parents(".jcarousel-container")):(this.container=g(a),this.list=this.container.find("ul,ol").eq(0),this.clip=this.container.find(".jcarousel-clip"));if(this.clip.size()===0)this.clip= this.list.wrap("<div></div>").parent();if(this.container.size()===0)this.container=this.clip.wrap("<div></div>").parent();b!==""&&this.container.parent()[0].className.indexOf("jcarousel-skin")==-1&&this.container.wrap('<div class=" '+b+'"></div>');this.buttonPrev=g(".jcarousel-prev",this.container);if(this.buttonPrev.size()===0&&this.options.buttonPrevHTML!==null)this.buttonPrev=g(this.options.buttonPrevHTML).appendTo(this.container);this.buttonPrev.addClass(this.className("jcarousel-prev"));this.buttonNext= g(".jcarousel-next",this.container);if(this.buttonNext.size()===0&&this.options.buttonNextHTML!==null)this.buttonNext=g(this.options.buttonNextHTML).appendTo(this.container);this.buttonNext.addClass(this.className("jcarousel-next"));this.clip.addClass(this.className("jcarousel-clip")).css({position:"relative"});this.list.addClass(this.className("jcarousel-list")).css({overflow:"hidden",position:"relative",top:0,margin:0,padding:0}).css(this.options.rtl?"right":"left",0);this.container.addClass(this.className("jcarousel-container")).css({position:"relative"}); !this.options.vertical&&this.options.rtl&&this.container.addClass("jcarousel-direction-rtl").attr("dir","rtl");var j=this.options.visible!==null?Math.ceil(this.clipping()/this.options.visible):null,b=this.list.children("li"),e=this;if(b.size()>0){var h=0,i=this.options.offset;b.each(function(){e.format(this,i++);h+=e.dimension(this,j)});this.list.css(this.wh,h+100+"px");if(!c||c.size===void 0)this.options.size=b.size()}this.container.css("display","block");this.buttonNext.css("display","block");this.buttonPrev.css("display", "block");this.funcNext=function(){e.next()};this.funcPrev=function(){e.prev()};this.funcResize=function(){e.resizeTimer&&clearTimeout(e.resizeTimer);e.resizeTimer=setTimeout(function(){e.reload()},100)};this.options.initCallback!==null&&this.options.initCallback(this,"init");!m&&g.browser.safari?(this.buttons(!1,!1),g(window).bind("load.jcarousel",function(){e.setup()})):this.setup()};var f=g.jcarousel;f.fn=f.prototype={jcarousel:"0.2.8"};f.fn.extend=f.extend=g.extend;f.fn.extend({setup:function(){this.prevLast= this.prevFirst=this.last=this.first=null;this.animating=!1;this.tail=this.resizeTimer=this.timer=null;this.inTail=!1;if(!this.locked){this.list.css(this.lt,this.pos(this.options.offset)+"px");var a=this.pos(this.options.start,!0);this.prevFirst=this.prevLast=null;this.animate(a,!1);g(window).unbind("resize.jcarousel",this.funcResize).bind("resize.jcarousel",this.funcResize);this.options.setupCallback!==null&&this.options.setupCallback(this)}},reset:function(){this.list.empty();this.list.css(this.lt, "0px");this.list.css(this.wh,"10px");this.options.initCallback!==null&&this.options.initCallback(this,"reset");this.setup()},reload:function(){this.tail!==null&&this.inTail&&this.list.css(this.lt,f.intval(this.list.css(this.lt))+this.tail);this.tail=null;this.inTail=!1;this.options.reloadCallback!==null&&this.options.reloadCallback(this);if(this.options.visible!==null){var a=this,c=Math.ceil(this.clipping()/this.options.visible),b=0,d=0;this.list.children("li").each(function(f){b+=a.dimension(this, c);f+1<a.first&&(d=b)});this.list.css(this.wh,b+"px");this.list.css(this.lt,-d+"px")}this.scroll(this.first,!1)},lock:function(){this.locked=!0;this.buttons()},unlock:function(){this.locked=!1;this.buttons()},size:function(a){if(a!==void 0)this.options.size=a,this.locked||this.buttons();return this.options.size},has:function(a,c){if(c===void 0||!c)c=a;if(this.options.size!==null&&c>this.options.size)c=this.options.size;for(var b=a;b<=c;b++){var d=this.get(b);if(!d.length||d.hasClass("jcarousel-item-placeholder"))return!1}return!0}, get:function(a){return g(">.jcarousel-item-"+a,this.list)},add:function(a,c){var b=this.get(a),d=0,p=g(c);if(b.length===0)for(var j,e=f.intval(a),b=this.create(a);;){if(j=this.get(--e),e<=0||j.length){e<=0?this.list.prepend(b):j.after(b);break}}else d=this.dimension(b);p.get(0).nodeName.toUpperCase()=="LI"?(b.replaceWith(p),b=p):b.empty().append(c);this.format(b.removeClass(this.className("jcarousel-item-placeholder")),a);p=this.options.visible!==null?Math.ceil(this.clipping()/this.options.visible): null;d=this.dimension(b,p)-d;a>0&&a<this.first&&this.list.css(this.lt,f.intval(this.list.css(this.lt))-d+"px");this.list.css(this.wh,f.intval(this.list.css(this.wh))+d+"px");return b},remove:function(a){var c=this.get(a);if(c.length&&!(a>=this.first&&a<=this.last)){var b=this.dimension(c);a<this.first&&this.list.css(this.lt,f.intval(this.list.css(this.lt))+b+"px");c.remove();this.list.css(this.wh,f.intval(this.list.css(this.wh))-b+"px")}},next:function(){this.tail!==null&&!this.inTail?this.scrollTail(!1): this.scroll((this.options.wrap=="both"||this.options.wrap=="last")&&this.options.size!==null&&this.last==this.options.size?1:this.first+this.options.scroll)},prev:function(){this.tail!==null&&this.inTail?this.scrollTail(!0):this.scroll((this.options.wrap=="both"||this.options.wrap=="first")&&this.options.size!==null&&this.first==1?this.options.size:this.first-this.options.scroll)},scrollTail:function(a){if(!this.locked&&!this.animating&&this.tail){this.pauseAuto();var c=f.intval(this.list.css(this.lt)), c=!a?c-this.tail:c+this.tail;this.inTail=!a;this.prevFirst=this.first;this.prevLast=this.last;this.animate(c)}},scroll:function(a,c){!this.locked&&!this.animating&&(this.pauseAuto(),this.animate(this.pos(a),c))},pos:function(a,c){var b=f.intval(this.list.css(this.lt));if(this.locked||this.animating)return b;this.options.wrap!="circular"&&(a=a<1?1:this.options.size&&a>this.options.size?this.options.size:a);for(var d=this.first>a,g=this.options.wrap!="circular"&&this.first<=1?1:this.first,j=d?this.get(g): this.get(this.last),e=d?g:g-1,h=null,i=0,k=!1,l=0;d?--e>=a:++e<a;){h=this.get(e);k=!h.length;if(h.length===0&&(h=this.create(e).addClass(this.className("jcarousel-item-placeholder")),j[d?"before":"after"](h),this.first!==null&&this.options.wrap=="circular"&&this.options.size!==null&&(e<=0||e>this.options.size)))j=this.get(this.index(e)),j.length&&(h=this.add(e,j.clone(!0)));j=h;l=this.dimension(h);k&&(i+=l);if(this.first!==null&&(this.options.wrap=="circular"||e>=1&&(this.options.size===null||e<= this.options.size)))b=d?b+l:b-l}for(var g=this.clipping(),m=[],o=0,n=0,j=this.get(a-1),e=a;++o;){h=this.get(e);k=!h.length;if(h.length===0){h=this.create(e).addClass(this.className("jcarousel-item-placeholder"));if(j.length===0)this.list.prepend(h);else j[d?"before":"after"](h);if(this.first!==null&&this.options.wrap=="circular"&&this.options.size!==null&&(e<=0||e>this.options.size))j=this.get(this.index(e)),j.length&&(h=this.add(e,j.clone(!0)))}j=h;l=this.dimension(h);if(l===0)throw Error("jCarousel: No width/height set for items. This will cause an infinite loop. Aborting..."); this.options.wrap!="circular"&&this.options.size!==null&&e>this.options.size?m.push(h):k&&(i+=l);n+=l;if(n>=g)break;e++}for(h=0;h<m.length;h++)m[h].remove();i>0&&(this.list.css(this.wh,this.dimension(this.list)+i+"px"),d&&(b-=i,this.list.css(this.lt,f.intval(this.list.css(this.lt))-i+"px")));i=a+o-1;if(this.options.wrap!="circular"&&this.options.size&&i>this.options.size)i=this.options.size;if(e>i){o=0;e=i;for(n=0;++o;){h=this.get(e--);if(!h.length)break;n+=this.dimension(h);if(n>=g)break}}e=i-o+ 1;this.options.wrap!="circular"&&e<1&&(e=1);if(this.inTail&&d)b+=this.tail,this.inTail=!1;this.tail=null;if(this.options.wrap!="circular"&&i==this.options.size&&i-o+1>=1&&(d=f.intval(this.get(i).css(!this.options.vertical?"marginRight":"marginBottom")),n-d>g))this.tail=n-g-d;if(c&&a===this.options.size&&this.tail)b-=this.tail,this.inTail=!0;for(;a-- >e;)b+=this.dimension(this.get(a));this.prevFirst=this.first;this.prevLast=this.last;this.first=e;this.last=i;return b},animate:function(a,c){if(!this.locked&& !this.animating){this.animating=!0;var b=this,d=function(){b.animating=!1;a===0&&b.list.css(b.lt,0);!b.autoStopped&&(b.options.wrap=="circular"||b.options.wrap=="both"||b.options.wrap=="last"||b.options.size===null||b.last<b.options.size||b.last==b.options.size&&b.tail!==null&&!b.inTail)&&b.startAuto();b.buttons();b.notify("onAfterAnimation");if(b.options.wrap=="circular"&&b.options.size!==null)for(var c=b.prevFirst;c<=b.prevLast;c++)c!==null&&!(c>=b.first&&c<=b.last)&&(c<1||c>b.options.size)&&b.remove(c)}; this.notify("onBeforeAnimation");if(!this.options.animation||c===!1)this.list.css(this.lt,a+"px"),d();else{var f=!this.options.vertical?this.options.rtl?{right:a}:{left:a}:{top:a},d={duration:this.options.animation,easing:this.options.easing,complete:d};if(g.isFunction(this.options.animationStepCallback))d.step=this.options.animationStepCallback;this.list.animate(f,d)}}},startAuto:function(a){if(a!==void 0)this.options.auto=a;if(this.options.auto===0)return this.stopAuto();if(this.timer===null){this.autoStopped= !1;var c=this;this.timer=window.setTimeout(function(){c.next()},this.options.auto*1E3)}},stopAuto:function(){this.pauseAuto();this.autoStopped=!0},pauseAuto:function(){if(this.timer!==null)window.clearTimeout(this.timer),this.timer=null},buttons:function(a,c){if(a==null&&(a=!this.locked&&this.options.size!==0&&(this.options.wrap&&this.options.wrap!="first"||this.options.size===null||this.last<this.options.size),!this.locked&&(!this.options.wrap||this.options.wrap=="first")&&this.options.size!==null&& this.last>=this.options.size))a=this.tail!==null&&!this.inTail;if(c==null&&(c=!this.locked&&this.options.size!==0&&(this.options.wrap&&this.options.wrap!="last"||this.first>1),!this.locked&&(!this.options.wrap||this.options.wrap=="last")&&this.options.size!==null&&this.first==1))c=this.tail!==null&&this.inTail;var b=this;this.buttonNext.size()>0?(this.buttonNext.unbind(this.options.buttonNextEvent+".jcarousel",this.funcNext),a&&this.buttonNext.bind(this.options.buttonNextEvent+".jcarousel",this.funcNext), this.buttonNext[a?"removeClass":"addClass"](this.className("jcarousel-next-disabled")).attr("disabled",a?!1:!0),this.options.buttonNextCallback!==null&&this.buttonNext.data("jcarouselstate")!=a&&this.buttonNext.each(function(){b.options.buttonNextCallback(b,this,a)}).data("jcarouselstate",a)):this.options.buttonNextCallback!==null&&this.buttonNextState!=a&&this.options.buttonNextCallback(b,null,a);this.buttonPrev.size()>0?(this.buttonPrev.unbind(this.options.buttonPrevEvent+".jcarousel",this.funcPrev), c&&this.buttonPrev.bind(this.options.buttonPrevEvent+".jcarousel",this.funcPrev),this.buttonPrev[c?"removeClass":"addClass"](this.className("jcarousel-prev-disabled")).attr("disabled",c?!1:!0),this.options.buttonPrevCallback!==null&&this.buttonPrev.data("jcarouselstate")!=c&&this.buttonPrev.each(function(){b.options.buttonPrevCallback(b,this,c)}).data("jcarouselstate",c)):this.options.buttonPrevCallback!==null&&this.buttonPrevState!=c&&this.options.buttonPrevCallback(b,null,c);this.buttonNextState= a;this.buttonPrevState=c},notify:function(a){var c=this.prevFirst===null?"init":this.prevFirst<this.first?"next":"prev";this.callback("itemLoadCallback",a,c);this.prevFirst!==this.first&&(this.callback("itemFirstInCallback",a,c,this.first),this.callback("itemFirstOutCallback",a,c,this.prevFirst));this.prevLast!==this.last&&(this.callback("itemLastInCallback",a,c,this.last),this.callback("itemLastOutCallback",a,c,this.prevLast));this.callback("itemVisibleInCallback",a,c,this.first,this.last,this.prevFirst, this.prevLast);this.callback("itemVisibleOutCallback",a,c,this.prevFirst,this.prevLast,this.first,this.last)},callback:function(a,c,b,d,f,j,e){if(!(this.options[a]==null||typeof this.options[a]!="object"&&c!="onAfterAnimation")){var h=typeof this.options[a]=="object"?this.options[a][c]:this.options[a];if(g.isFunction(h)){var i=this;if(d===void 0)h(i,b,c);else if(f===void 0)this.get(d).each(function(){h(i,this,d,b,c)});else for(var a=function(a){i.get(a).each(function(){h(i,this,a,b,c)})},k=d;k<=f;k++)k!== null&&!(k>=j&&k<=e)&&a(k)}}},create:function(a){return this.format("<li></li>",a)},format:function(a,c){for(var a=g(a),b=a.get(0).className.split(" "),d=0;d<b.length;d++)b[d].indexOf("jcarousel-")!=-1&&a.removeClass(b[d]);a.addClass(this.className("jcarousel-item")).addClass(this.className("jcarousel-item-"+c)).css({"float":this.options.rtl?"right":"left","list-style":"none"}).attr("jcarouselindex",c);return a},className:function(a){return a+" "+a+(!this.options.vertical?"-horizontal":"-vertical")}, dimension:function(a,c){var b=g(a);if(c==null)return!this.options.vertical?b.outerWidth(!0)||f.intval(this.options.itemFallbackDimension):b.outerHeight(!0)||f.intval(this.options.itemFallbackDimension);else{var d=!this.options.vertical?c-f.intval(b.css("marginLeft"))-f.intval(b.css("marginRight")):c-f.intval(b.css("marginTop"))-f.intval(b.css("marginBottom"));g(b).css(this.wh,d+"px");return this.dimension(b)}},clipping:function(){return!this.options.vertical?this.clip[0].offsetWidth-f.intval(this.clip.css("borderLeftWidth"))- f.intval(this.clip.css("borderRightWidth")):this.clip[0].offsetHeight-f.intval(this.clip.css("borderTopWidth"))-f.intval(this.clip.css("borderBottomWidth"))},index:function(a,c){if(c==null)c=this.options.size;return Math.round(((a-1)/c-Math.floor((a-1)/c))*c)+1}});f.extend({defaults:function(a){return g.extend(q,a||{})},intval:function(a){a=parseInt(a,10);return isNaN(a)?0:a},windowLoaded:function(){m=!0}});g.fn.jcarousel=function(a){if(typeof a=="string"){var c=g(this).data("jcarousel"),b=Array.prototype.slice.call(arguments, 1);return c[a].apply(c,b)}else return this.each(function(){var b=g(this).data("jcarousel");b?(a&&g.extend(b.options,a),b.reload()):g(this).data("jcarousel",new f(this,a))})}})(jQuery);
;
/*
 * jQuery history plugin
 * 
 * The MIT License
 * 
 * Copyright (c) 2006-2009 Taku Sano (Mikage Sawatari)
 * Copyright (c) 2010 Takayuki Miwa
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */

(function($) {
    var locationWrapper = {
        put: function(hash, win) {
            (win || window).location.hash = this.encoder(hash);
        },
        get: function(win) {
            var hash = ((win || window).location.hash).replace(/^#/, '');
            try {
                return $.browser.mozilla ? hash : decodeURIComponent(hash);
            }
            catch (error) {
                return hash;
            }
        },
        encoder: encodeURIComponent
    };

    var iframeWrapper = {
        id: "__jQuery_history",
        init: function() {
            var html = '<iframe id="'+ this.id +'" style="display:none" src="javascript:false;" />';
            $("body").prepend(html);
            return this;
        },
        _document: function() {
            return $("#"+ this.id)[0].contentWindow.document;
        },
        put: function(hash) {
            var doc = this._document();
            doc.open();
            doc.close();
            locationWrapper.put(hash, doc);
        },
        get: function() {
            return locationWrapper.get(this._document());
        }
    };

    function initObjects(options) {
        options = $.extend({
                unescape: false
            }, options || {});

        locationWrapper.encoder = encoder(options.unescape);

        function encoder(unescape_) {
            if(unescape_ === true) {
                return function(hash){ return hash; };
            }
            if(typeof unescape_ == "string" &&
               (unescape_ = partialDecoder(unescape_.split("")))
               || typeof unescape_ == "function") {
                return function(hash) { return unescape_(encodeURIComponent(hash)); };
            }
            return encodeURIComponent;
        }

        function partialDecoder(chars) {
            var re = new RegExp($.map(chars, encodeURIComponent).join("|"), "ig");
            return function(enc) { return enc.replace(re, decodeURIComponent); };
        }
    }

    var implementations = {};

    implementations.base = {
        callback: undefined,
        type: undefined,

        check: function() {},
        load:  function(hash) {},
        init:  function(callback, options) {
            initObjects(options);
            self.callback = callback;
            self._options = options;
            self._init();
        },

        _init: function() {},
        _options: {}
    };

    implementations.timer = {
        _appState: undefined,
        _init: function() {
            var current_hash = locationWrapper.get();
            self._appState = current_hash;
            self.callback(current_hash);
            setInterval(self.check, 100);
        },
        check: function() {
            var current_hash = locationWrapper.get();
            if(current_hash != self._appState) {
                self._appState = current_hash;
                self.callback(current_hash);
            }
        },
        load: function(hash) {
            if(hash != self._appState) {
                locationWrapper.put(hash);
                self._appState = hash;
                self.callback(hash);
            }
        }
    };

    implementations.iframeTimer = {
        _appState: undefined,
        _init: function() {
            var current_hash = locationWrapper.get();
            self._appState = current_hash;
            iframeWrapper.init().put(current_hash);
            self.callback(current_hash);
            setInterval(self.check, 100);
        },
        check: function() {
            var iframe_hash = iframeWrapper.get(),
                location_hash = locationWrapper.get();

            if (location_hash != iframe_hash) {
                if (location_hash == self._appState) {    // user used Back or Forward button
                    self._appState = iframe_hash;
                    locationWrapper.put(iframe_hash);
                    self.callback(iframe_hash); 
                } else {                              // user loaded new bookmark
                    self._appState = location_hash;  
                    iframeWrapper.put(location_hash);
                    self.callback(location_hash);
                }
            }
        },
        load: function(hash) {
            if(hash != self._appState) {
                locationWrapper.put(hash);
                iframeWrapper.put(hash);
                self._appState = hash;
                self.callback(hash);
            }
        }
    };

    implementations.hashchangeEvent = {
        _init: function() {
            self.callback(locationWrapper.get());
            $(window).bind('hashchange', self.check);
        },
        check: function() {
            self.callback(locationWrapper.get());
        },
        load: function(hash) {
            locationWrapper.put(hash);
        }
    };

    var self = $.extend({}, implementations.base);

    if($.browser.msie && ($.browser.version < 8 || document.documentMode < 8)) {
        self.type = 'iframeTimer';
    } else if("onhashchange" in window) {
        self.type = 'hashchangeEvent';
    } else {
        self.type = 'timer';
    }

    $.extend(self, implementations[self.type]);
    $.history = self;
})(jQuery);;
(function($){$.extend($,{clearwatermarks:function(){$("[wmwrap='true']").find("input,textarea").watermark({remove:true})},addwatermarks:function(){$("[watermark]").each(function(num,el){$(el).watermark($(el).attr("watermark"))})},watermark:function(o){o.el=$(o.el);if(o.remove){if(o.el.parent().attr("wmwrap")=="true"){o.el.parent().replaceWith(o.el)}}else{if(o.el.parent().attr("wmwrap")!="true"){o.el=o.el.wrap("<span wmwrap='true' style='position:relative;'/>");var l=$("<label/>");if(o.html){l.html(o.html)}if(o.cls){l.addClass(o.cls)}if(o.css){l.css(o.css)}l.css({position:"absolute",left:"3px",top:parseInt(o.el.css("paddingTop")),display:"inline",cursor:"text"});if(o.el.is("TEXTAREA")){if($.browser.msie){l.css("width",o.el.width())}if($.browser.mozilla||$.browser.safari){l.css("top","")}}if(!o.cls&&!o.css){l.css("color","#ccc")}var focus=function(){l.hide()};var blur=function(){if(!o.el.val()){l.show()}else{l.hide()}};var click=function(){o.el.focus()};if(o.inherit){if(typeof o.inherit=="string"){l.css(o.inherit,o.el.css(o.inherit))}else{for(var x=0;x<o.inherit.length;x++){l.css(o.inherit[x],o.el.css(o.inherit[x]))}}}o.el.focus(focus).blur(blur);l.click(click);o.el.before(l);if(o.el.val()){l.hide()}}}return o.el}});$.fn.watermark=function(o){return this.each(function(){if(typeof (o)=="string"){try{o=eval("("+o+")")}catch(ex){o={html:o}}}o.el=this;return $.watermark(o)})}})(jQuery);$().ready(function(){$.addwatermarks()});
;
/*
 * jQuery validation plug-in 1.7
 *
 * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
 * http://docs.jquery.com/Plugins/Validation
 *
 * Copyright (c) 2006 - 2008 Jörn Zaefferer
 *
 * $Id: jquery.validate.js 6403 2009-06-17 14:27:16Z joern.zaefferer $
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */

(function($) {

$.extend($.fn, {
	// http://docs.jquery.com/Plugins/Validation/validate
	validate: function( options ) {

		// if nothing is selected, return nothing; can't chain anyway
		if (!this.length) {
			options && options.debug && window.console && console.warn( "nothing selected, can't validate, returning nothing" );
			return;
		}

		// check if a validator for this form was already created
		var validator = $.data(this[0], 'validator');
		if ( validator ) {
			return validator;
		}
		
		validator = new $.validator( options, this[0] );
		$.data(this[0], 'validator', validator); 
		
		if ( validator.settings.onsubmit ) {
		
			// allow suppresing validation by adding a cancel class to the submit button
			this.find("input, button").filter(".cancel").click(function() {
				validator.cancelSubmit = true;
			});
			
			// when a submitHandler is used, capture the submitting button
			if (validator.settings.submitHandler) {
				this.find("input, button").filter(":submit").click(function() {
					validator.submitButton = this;
				});
			}
		
			// validate the form on submit
			this.submit( function( event ) {
				if ( validator.settings.debug )
					// prevent form submit to be able to see console output
					event.preventDefault();
					
				function handle() {
					if ( validator.settings.submitHandler ) {
						if (validator.submitButton) {
							// insert a hidden input as a replacement for the missing submit button
							var hidden = $("<input type='hidden'/>").attr("name", validator.submitButton.name).val(validator.submitButton.value).appendTo(validator.currentForm);
						}
						validator.settings.submitHandler.call( validator, validator.currentForm );
						if (validator.submitButton) {
							// and clean up afterwards; thanks to no-block-scope, hidden can be referenced
							hidden.remove();
						}
						return false;
					}
					return true;
				}
					
				// prevent submit for invalid forms or custom submit handlers
				if ( validator.cancelSubmit ) {
					validator.cancelSubmit = false;
					return handle();
				}
				if ( validator.form() ) {
					if ( validator.pendingRequest ) {
						validator.formSubmitted = true;
						return false;
					}
					return handle();
				} else {
					validator.focusInvalid();
					return false;
				}
			});
		}
		
		return validator;
	},
	// http://docs.jquery.com/Plugins/Validation/valid
	valid: function() {
        if ( $(this[0]).is('form')) {
            return this.validate().form();
        } else {
            var valid = true;
            var validator = $(this[0].form).validate();
            this.each(function() {
				valid &= validator.element(this);
            });
            return valid;
        }
    },
	// attributes: space seperated list of attributes to retrieve and remove
	removeAttrs: function(attributes) {
		var result = {},
			$element = this;
		$.each(attributes.split(/\s/), function(index, value) {
			result[value] = $element.attr(value);
			$element.removeAttr(value);
		});
		return result;
	},
	// http://docs.jquery.com/Plugins/Validation/rules
	rules: function(command, argument) {
		var element = this[0];
		
		if (command) {
			var settings = $.data(element.form, 'validator').settings;
			var staticRules = settings.rules;
			var existingRules = $.validator.staticRules(element);
			switch(command) {
			case "add":
				$.extend(existingRules, $.validator.normalizeRule(argument));
				staticRules[element.name] = existingRules;
				if (argument.messages)
					settings.messages[element.name] = $.extend( settings.messages[element.name], argument.messages );
				break;
			case "remove":
				if (!argument) {
					delete staticRules[element.name];
					return existingRules;
				}
				var filtered = {};
				$.each(argument.split(/\s/), function(index, method) {
					filtered[method] = existingRules[method];
					delete existingRules[method];
				});
				return filtered;
			}
		}
		
		var data = $.validator.normalizeRules(
		$.extend(
			{},
			$.validator.metadataRules(element),
			$.validator.classRules(element),
			$.validator.attributeRules(element),
			$.validator.staticRules(element)
		), element);
		
		// make sure required is at front
		if (data.required) {
			var param = data.required;
			delete data.required;
			data = $.extend({required: param}, data);
		}
		
		return data;
	}
});

// Custom selectors
$.extend($.expr[":"], {
	// http://docs.jquery.com/Plugins/Validation/blank
	blank: function(a) {return !$.trim("" + a.value);},
	// http://docs.jquery.com/Plugins/Validation/filled
	filled: function(a) {return !!$.trim("" + a.value);},
	// http://docs.jquery.com/Plugins/Validation/unchecked
	unchecked: function(a) {return !a.checked;}
});

// constructor for validator
$.validator = function( options, form ) {
	this.settings = $.extend( true, {}, $.validator.defaults, options );
	this.currentForm = form;
	this.init();
};

$.validator.format = function(source, params) {
	if ( arguments.length == 1 ) 
		return function() {
			var args = $.makeArray(arguments);
			args.unshift(source);
			return $.validator.format.apply( this, args );
		};
	if ( arguments.length > 2 && params.constructor != Array  ) {
		params = $.makeArray(arguments).slice(1);
	}
	if ( params.constructor != Array ) {
		params = [ params ];
	}
	$.each(params, function(i, n) {
		source = source.replace(new RegExp("\\{" + i + "\\}", "g"), n);
	});
	return source;
};

$.extend($.validator, {
	
	defaults: {
		messages: {},
		groups: {},
		rules: {},
		errorClass: "error",
		validClass: "valid",
		errorElement: "label",
		focusInvalid: true,
		errorContainer: $( [] ),
		errorLabelContainer: $( [] ),
		onsubmit: true,
		ignore: [],
		ignoreTitle: false,
		onfocusin: function(element) {
			this.lastActive = element;
				
			// hide error label and remove error class on focus if enabled
			if ( this.settings.focusCleanup && !this.blockFocusCleanup ) {
				this.settings.unhighlight && this.settings.unhighlight.call( this, element, this.settings.errorClass, this.settings.validClass );
				this.errorsFor(element).hide();
			}
		},
		onfocusout: function(element) {
			if ( !this.checkable(element) && (element.name in this.submitted || !this.optional(element)) ) {
				this.element(element);
			}
		},
		onkeyup: function(element) {
			if ( element.name in this.submitted || element == this.lastElement ) {
				this.element(element);
			}
		},
		onclick: function(element) {
			// click on selects, radiobuttons and checkboxes
			if ( element.name in this.submitted )
				this.element(element);
			// or option elements, check parent select in that case
			else if (element.parentNode.name in this.submitted)
				this.element(element.parentNode);
		},
		highlight: function( element, errorClass, validClass ) {
			$(element).addClass(errorClass).removeClass(validClass);
		},
		unhighlight: function( element, errorClass, validClass ) {
			$(element).removeClass(errorClass).addClass(validClass);
		}
	},

	// http://docs.jquery.com/Plugins/Validation/Validator/setDefaults
	setDefaults: function(settings) {
		$.extend( $.validator.defaults, settings );
	},

	messages: {
		required: "This field is required.",
		remote: "Please fix this field.",
		email: "Please enter a valid email address.",
		url: "Please enter a valid URL.",
		date: "Please enter a valid date.",
		dateISO: "Please enter a valid date (ISO).",
		number: "Please enter a valid number.",
		digits: "Please enter only digits.",
		creditcard: "Please enter a valid credit card number.",
		equalTo: "Please enter the same value again.",
		accept: "Please enter a value with a valid extension.",
		maxlength: $.validator.format("Please enter no more than {0} characters."),
		minlength: $.validator.format("Please enter at least {0} characters."),
		rangelength: $.validator.format("Please enter a value between {0} and {1} characters long."),
		range: $.validator.format("Please enter a value between {0} and {1}."),
		max: $.validator.format("Please enter a value less than or equal to {0}."),
		min: $.validator.format("Please enter a value greater than or equal to {0}.")
	},
	
	autoCreateRanges: false,
	
	prototype: {
		
		init: function() {
			this.labelContainer = $(this.settings.errorLabelContainer);
			this.errorContext = this.labelContainer.length && this.labelContainer || $(this.currentForm);
			this.containers = $(this.settings.errorContainer).add( this.settings.errorLabelContainer );
			this.submitted = {};
			this.valueCache = {};
			this.pendingRequest = 0;
			this.pending = {};
			this.invalid = {};
			this.reset();
			
			var groups = (this.groups = {});
			$.each(this.settings.groups, function(key, value) {
				$.each(value.split(/\s/), function(index, name) {
					groups[name] = key;
				});
			});
			var rules = this.settings.rules;
			$.each(rules, function(key, value) {
				rules[key] = $.validator.normalizeRule(value);
			});
			
			function delegate(event) {
				var validator = $.data(this[0].form, "validator"),
					eventType = "on" + event.type.replace(/^validate/, "");
				validator.settings[eventType] && validator.settings[eventType].call(validator, this[0] );
			}
			$(this.currentForm)
				.validateDelegate(":text, :password, :file, select, textarea", "focusin focusout keyup", delegate)
				.validateDelegate(":radio, :checkbox, select, option", "click", delegate);

			if (this.settings.invalidHandler)
				$(this.currentForm).bind("invalid-form.validate", this.settings.invalidHandler);
		},

		// http://docs.jquery.com/Plugins/Validation/Validator/form
		form: function() {
			this.checkForm();
			$.extend(this.submitted, this.errorMap);
			this.invalid = $.extend({}, this.errorMap);
			if (!this.valid())
				$(this.currentForm).triggerHandler("invalid-form", [this]);
			this.showErrors();
			return this.valid();
		},
		
		checkForm: function() {
			this.prepareForm();
			for ( var i = 0, elements = (this.currentElements = this.elements()); elements[i]; i++ ) {
				this.check( elements[i] );
			}
			return this.valid(); 
		},
		
		// http://docs.jquery.com/Plugins/Validation/Validator/element
		element: function( element ) {
			element = this.clean( element );
			this.lastElement = element;
			this.prepareElement( element );
			this.currentElements = $(element);
			var result = this.check( element );
			if ( result ) {
				delete this.invalid[element.name];
			} else {
				this.invalid[element.name] = true;
			}
			if ( !this.numberOfInvalids() ) {
				// Hide error containers on last error
				this.toHide = this.toHide.add( this.containers );
			}
			this.showErrors();
			return result;
		},

		// http://docs.jquery.com/Plugins/Validation/Validator/showErrors
		showErrors: function(errors) {
			if(errors) {
				// add items to error list and map
				$.extend( this.errorMap, errors );
				this.errorList = [];
				for ( var name in errors ) {
					this.errorList.push({
						message: errors[name],
						element: this.findByName(name)[0]
					});
				}
				// remove items from success list
				this.successList = $.grep( this.successList, function(element) {
					return !(element.name in errors);
				});
			}
			this.settings.showErrors
				? this.settings.showErrors.call( this, this.errorMap, this.errorList )
				: this.defaultShowErrors();
		},
		
		// http://docs.jquery.com/Plugins/Validation/Validator/resetForm
		resetForm: function() {
			if ( $.fn.resetForm )
				$( this.currentForm ).resetForm();
			this.submitted = {};
			this.prepareForm();
			this.hideErrors();
			this.elements().removeClass( this.settings.errorClass );
		},
		
		numberOfInvalids: function() {
			return this.objectLength(this.invalid);
		},
		
		objectLength: function( obj ) {
			var count = 0;
			for ( var i in obj )
				count++;
			return count;
		},
		
		hideErrors: function() {
			this.addWrapper( this.toHide ).hide();
		},
		
		valid: function() {
			return this.size() == 0;
		},
		
		size: function() {
			return this.errorList.length;
		},
		
		focusInvalid: function() {
			if( this.settings.focusInvalid ) {
				try {
					$(this.findLastActive() || this.errorList.length && this.errorList[0].element || [])
					.filter(":visible")
					.focus()
					// manually trigger focusin event; without it, focusin handler isn't called, findLastActive won't have anything to find
					.trigger("focusin");
				} catch(e) {
					// ignore IE throwing errors when focusing hidden elements
				}
			}
		},
		
		findLastActive: function() {
			var lastActive = this.lastActive;
			return lastActive && $.grep(this.errorList, function(n) {
				return n.element.name == lastActive.name;
			}).length == 1 && lastActive;
		},
		
		elements: function() {
			var validator = this,
				rulesCache = {};
			
			// select all valid inputs inside the form (no submit or reset buttons)
			// workaround $Query([]).add until http://dev.jquery.com/ticket/2114 is solved
			return $([]).add(this.currentForm.elements)
			.filter(":input")
			.not(":submit, :reset, :image, [disabled]")
			.not( this.settings.ignore )
			.filter(function() {
				!this.name && validator.settings.debug && window.console && console.error( "%o has no name assigned", this);
			
				// select only the first element for each name, and only those with rules specified
				if ( this.name in rulesCache || !validator.objectLength($(this).rules()) )
					return false;
				
				rulesCache[this.name] = true;
				return true;
			});
		},
		
		clean: function( selector ) {
			return $( selector )[0];
		},
		
		errors: function() {
			return $( this.settings.errorElement + "." + this.settings.errorClass, this.errorContext );
		},
		
		reset: function() {
			this.successList = [];
			this.errorList = [];
			this.errorMap = {};
			this.toShow = $([]);
			this.toHide = $([]);
			this.currentElements = $([]);
		},
		
		prepareForm: function() {
			this.reset();
			this.toHide = this.errors().add( this.containers );
		},
		
		prepareElement: function( element ) {
			this.reset();
			this.toHide = this.errorsFor(element);
		},
	
		check: function( element ) {
			element = this.clean( element );
			
			// if radio/checkbox, validate first element in group instead
			if (this.checkable(element)) {
				element = this.findByName( element.name )[0];
			}
			
			var rules = $(element).rules();
			var dependencyMismatch = false;
			for( method in rules ) {
				var rule = { method: method, parameters: rules[method] };
				try {
					var result = $.validator.methods[method].call( this, element.value.replace(/\r/g, ""), element, rule.parameters );
					
					// if a method indicates that the field is optional and therefore valid,
					// don't mark it as valid when there are no other rules
					if ( result == "dependency-mismatch" ) {
						dependencyMismatch = true;
						continue;
					}
					dependencyMismatch = false;
					
					if ( result == "pending" ) {
						this.toHide = this.toHide.not( this.errorsFor(element) );
						return;
					}
					
					if( !result ) {
						this.formatAndAdd( element, rule );
						return false;
					}
				} catch(e) {
					this.settings.debug && window.console && console.log("exception occured when checking element " + element.id
						 + ", check the '" + rule.method + "' method", e);
					throw e;
				}
			}
			if (dependencyMismatch)
				return;
			if ( this.objectLength(rules) )
				this.successList.push(element);
			return true;
		},
		
		// return the custom message for the given element and validation method
		// specified in the element's "messages" metadata
		customMetaMessage: function(element, method) {
			if (!$.metadata)
				return;
			
			var meta = this.settings.meta
				? $(element).metadata()[this.settings.meta]
				: $(element).metadata();
			
			return meta && meta.messages && meta.messages[method];
		},
		
		// return the custom message for the given element name and validation method
		customMessage: function( name, method ) {
			var m = this.settings.messages[name];
			return m && (m.constructor == String
				? m
				: m[method]);
		},
		
		// return the first defined argument, allowing empty strings
		findDefined: function() {
			for(var i = 0; i < arguments.length; i++) {
				if (arguments[i] !== undefined)
					return arguments[i];
			}
			return undefined;
		},
		
		defaultMessage: function( element, method) {
			return this.findDefined(
				this.customMessage( element.name, method ),
				this.customMetaMessage( element, method ),
				// title is never undefined, so handle empty string as undefined
				!this.settings.ignoreTitle && element.title || undefined,
				$.validator.messages[method],
				"<strong>Warning: No message defined for " + element.name + "</strong>"
			);
		},
		
		formatAndAdd: function( element, rule ) {
			var message = this.defaultMessage( element, rule.method ),
				theregex = /\$?\{(\d+)\}/g;
			if ( typeof message == "function" ) {
				message = message.call(this, rule.parameters, element);
			} else if (theregex.test(message)) {
				message = jQuery.format(message.replace(theregex, '{$1}'), rule.parameters);
			}			
			this.errorList.push({
				message: message,
				element: element
			});
			
			this.errorMap[element.name] = message;
			this.submitted[element.name] = message;
		},
		
		addWrapper: function(toToggle) {
			if ( this.settings.wrapper )
				toToggle = toToggle.add( toToggle.parent( this.settings.wrapper ) );
			return toToggle;
		},
		
		defaultShowErrors: function() {
			for ( var i = 0; this.errorList[i]; i++ ) {
				var error = this.errorList[i];
				this.settings.highlight && this.settings.highlight.call( this, error.element, this.settings.errorClass, this.settings.validClass );
				this.showLabel( error.element, error.message );
			}
			if( this.errorList.length ) {
				this.toShow = this.toShow.add( this.containers );
			}
			if (this.settings.success) {
				for ( var i = 0; this.successList[i]; i++ ) {
					this.showLabel( this.successList[i] );
				}
			}
			if (this.settings.unhighlight) {
				for ( var i = 0, elements = this.validElements(); elements[i]; i++ ) {
					this.settings.unhighlight.call( this, elements[i], this.settings.errorClass, this.settings.validClass );
				}
			}
			this.toHide = this.toHide.not( this.toShow );
			this.hideErrors();
			this.addWrapper( this.toShow ).show();
		},
		
		validElements: function() {
			return this.currentElements.not(this.invalidElements());
		},
		
		invalidElements: function() {
			return $(this.errorList).map(function() {
				return this.element;
			});
		},
		
		showLabel: function(element, message) {
			var label = this.errorsFor( element );
			if ( label.length ) {
				// refresh error/success class
				label.removeClass().addClass( this.settings.errorClass );
			
				// check if we have a generated label, replace the message then
				label.attr("generated") && label.html(message);
			} else {
				// create label
				label = $("<" + this.settings.errorElement + "/>")
					.attr({"for":  this.idOrName(element), generated: true})
					.addClass(this.settings.errorClass)
					.html(message || "");
				if ( this.settings.wrapper ) {
					// make sure the element is visible, even in IE
					// actually showing the wrapped element is handled elsewhere
					label = label.hide().show().wrap("<" + this.settings.wrapper + "/>").parent();
				}
				if ( !this.labelContainer.append(label).length )
					this.settings.errorPlacement
						? this.settings.errorPlacement(label, $(element) )
						: label.insertAfter(element);
			}
			if ( !message && this.settings.success ) {
				label.text("");
				typeof this.settings.success == "string"
					? label.addClass( this.settings.success )
					: this.settings.success( label );
			}
			this.toShow = this.toShow.add(label);
		},
		
		errorsFor: function(element) {
			var name = this.idOrName(element);
    		return this.errors().filter(function() {
				return $(this).attr('for') == name;
			});
		},
		
		idOrName: function(element) {
			return this.groups[element.name] || (this.checkable(element) ? element.name : element.id || element.name);
		},

		checkable: function( element ) {
			return /radio|checkbox/i.test(element.type);
		},
		
		findByName: function( name ) {
			// select by name and filter by form for performance over form.find("[name=...]")
			var form = this.currentForm;
			return $(document.getElementsByName(name)).map(function(index, element) {
				return element.form == form && element.name == name && element  || null;
			});
		},
		
		getLength: function(value, element) {
			switch( element.nodeName.toLowerCase() ) {
			case 'select':
				return $("option:selected", element).length;
			case 'input':
				if( this.checkable( element) )
					return this.findByName(element.name).filter(':checked').length;
			}
			return value.length;
		},
	
		depend: function(param, element) {
			return this.dependTypes[typeof param]
				? this.dependTypes[typeof param](param, element)
				: true;
		},
	
		dependTypes: {
			"boolean": function(param, element) {
				return param;
			},
			"string": function(param, element) {
				return !!$(param, element.form).length;
			},
			"function": function(param, element) {
				return param(element);
			}
		},
		
		optional: function(element) {
			return !$.validator.methods.required.call(this, $.trim(element.value), element) && "dependency-mismatch";
		},
		
		startRequest: function(element) {
			if (!this.pending[element.name]) {
				this.pendingRequest++;
				this.pending[element.name] = true;
			}
		},
		
		stopRequest: function(element, valid) {
			this.pendingRequest--;
			// sometimes synchronization fails, make sure pendingRequest is never < 0
			if (this.pendingRequest < 0)
				this.pendingRequest = 0;
			delete this.pending[element.name];
			if ( valid && this.pendingRequest == 0 && this.formSubmitted && this.form() ) {
				$(this.currentForm).submit();
				this.formSubmitted = false;
			} else if (!valid && this.pendingRequest == 0 && this.formSubmitted) {
				$(this.currentForm).triggerHandler("invalid-form", [this]);
				this.formSubmitted = false;
			}
		},
		
		previousValue: function(element) {
			return $.data(element, "previousValue") || $.data(element, "previousValue", {
				old: null,
				valid: true,
				message: this.defaultMessage( element, "remote" )
			});
		}
		
	},
	
	classRuleSettings: {
		required: {required: true},
		email: {email: true},
		url: {url: true},
		date: {date: true},
		dateISO: {dateISO: true},
		dateDE: {dateDE: true},
		number: {number: true},
		numberDE: {numberDE: true},
		digits: {digits: true},
		creditcard: {creditcard: true}
	},
	
	addClassRules: function(className, rules) {
		className.constructor == String ?
			this.classRuleSettings[className] = rules :
			$.extend(this.classRuleSettings, className);
	},
	
	classRules: function(element) {
		var rules = {};
		var classes = $(element).attr('class');
		classes && $.each(classes.split(' '), function() {
			if (this in $.validator.classRuleSettings) {
				$.extend(rules, $.validator.classRuleSettings[this]);
			}
		});
		return rules;
	},
	
	attributeRules: function(element) {
		var rules = {};
		var $element = $(element);
		
		for (method in $.validator.methods) {
			var value = $element.attr(method);
			if (value) {
				rules[method] = value;
			}
		}
		
		// maxlength may be returned as -1, 2147483647 (IE) and 524288 (safari) for text inputs
		if (rules.maxlength && /-1|2147483647|524288/.test(rules.maxlength)) {
			delete rules.maxlength;
		}
		
		return rules;
	},
	
	metadataRules: function(element) {
		if (!$.metadata) return {};
		
		var meta = $.data(element.form, 'validator').settings.meta;
		return meta ?
			$(element).metadata()[meta] :
			$(element).metadata();
	},
	
	staticRules: function(element) {
		var rules = {};
		var validator = $.data(element.form, 'validator');
		if (validator.settings.rules) {
			rules = $.validator.normalizeRule(validator.settings.rules[element.name]) || {};
		}
		return rules;
	},
	
	normalizeRules: function(rules, element) {
		// handle dependency check
		$.each(rules, function(prop, val) {
			// ignore rule when param is explicitly false, eg. required:false
			if (val === false) {
				delete rules[prop];
				return;
			}
			if (val.param || val.depends) {
				var keepRule = true;
				switch (typeof val.depends) {
					case "string":
						keepRule = !!$(val.depends, element.form).length;
						break;
					case "function":
						keepRule = val.depends.call(element, element);
						break;
				}
				if (keepRule) {
					rules[prop] = val.param !== undefined ? val.param : true;
				} else {
					delete rules[prop];
				}
			}
		});
		
		// evaluate parameters
		$.each(rules, function(rule, parameter) {
			rules[rule] = $.isFunction(parameter) ? parameter(element) : parameter;
		});
		
		// clean number parameters
		$.each(['minlength', 'maxlength', 'min', 'max'], function() {
			if (rules[this]) {
				rules[this] = Number(rules[this]);
			}
		});
		$.each(['rangelength', 'range'], function() {
			if (rules[this]) {
				rules[this] = [Number(rules[this][0]), Number(rules[this][1])];
			}
		});
		
		if ($.validator.autoCreateRanges) {
			// auto-create ranges
			if (rules.min && rules.max) {
				rules.range = [rules.min, rules.max];
				delete rules.min;
				delete rules.max;
			}
			if (rules.minlength && rules.maxlength) {
				rules.rangelength = [rules.minlength, rules.maxlength];
				delete rules.minlength;
				delete rules.maxlength;
			}
		}
		
		// To support custom messages in metadata ignore rule methods titled "messages"
		if (rules.messages) {
			delete rules.messages;
		}
		
		return rules;
	},
	
	// Converts a simple string to a {string: true} rule, e.g., "required" to {required:true}
	normalizeRule: function(data) {
		if( typeof data == "string" ) {
			var transformed = {};
			$.each(data.split(/\s/), function() {
				transformed[this] = true;
			});
			data = transformed;
		}
		return data;
	},
	
	// http://docs.jquery.com/Plugins/Validation/Validator/addMethod
	addMethod: function(name, method, message) {
		$.validator.methods[name] = method;
		$.validator.messages[name] = message != undefined ? message : $.validator.messages[name];
		if (method.length < 3) {
			$.validator.addClassRules(name, $.validator.normalizeRule(name));
		}
	},

	methods: {

		// http://docs.jquery.com/Plugins/Validation/Methods/required
		required: function(value, element, param) {
			// check if dependency is met
			if ( !this.depend(param, element) )
				return "dependency-mismatch";
			switch( element.nodeName.toLowerCase() ) {
			case 'select':
				// could be an array for select-multiple or a string, both are fine this way
				var val = $(element).val();
				return val && val.length > 0;
			case 'input':
				if ( this.checkable(element) )
					return this.getLength(value, element) > 0;
			default:
				return $.trim(value).length > 0;
			}
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/remote
		remote: function(value, element, param) {
			if ( this.optional(element) )
				return "dependency-mismatch";
			
			var previous = this.previousValue(element);
			if (!this.settings.messages[element.name] )
				this.settings.messages[element.name] = {};
			previous.originalMessage = this.settings.messages[element.name].remote;
			this.settings.messages[element.name].remote = previous.message;
			
			param = typeof param == "string" && {url:param} || param; 
			
			if ( previous.old !== value ) {
				previous.old = value;
				var validator = this;
				this.startRequest(element);
				var data = {};
				data[element.name] = value;
				$.ajax($.extend(true, {
					url: param,
					mode: "abort",
					port: "validate" + element.name,
					dataType: "json",
					data: data,
					success: function(response) {
						validator.settings.messages[element.name].remote = previous.originalMessage;
						var valid = response === true;
						if ( valid ) {
							var submitted = validator.formSubmitted;
							validator.prepareElement(element);
							validator.formSubmitted = submitted;
							validator.successList.push(element);
							validator.showErrors();
						} else {
							var errors = {};
							var message = (previous.message = response || validator.defaultMessage( element, "remote" ));
							errors[element.name] = $.isFunction(message) ? message(value) : message;
							validator.showErrors(errors);
						}
						previous.valid = valid;
						validator.stopRequest(element, valid);
					}
				}, param));
				return "pending";
			} else if( this.pending[element.name] ) {
				return "pending";
			}
			return previous.valid;
		},

		// http://docs.jquery.com/Plugins/Validation/Methods/minlength
		minlength: function(value, element, param) {
			return this.optional(element) || this.getLength($.trim(value), element) >= param;
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/maxlength
		maxlength: function(value, element, param) {
			return this.optional(element) || this.getLength($.trim(value), element) <= param;
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/rangelength
		rangelength: function(value, element, param) {
			var length = this.getLength($.trim(value), element);
			return this.optional(element) || ( length >= param[0] && length <= param[1] );
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/min
		min: function( value, element, param ) {
			return this.optional(element) || value >= param;
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/max
		max: function( value, element, param ) {
			return this.optional(element) || value <= param;
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/range
		range: function( value, element, param ) {
			return this.optional(element) || ( value >= param[0] && value <= param[1] );
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/email
		email: function(value, element) {
			// contributed by Scott Gonzalez: http://projects.scottsplayground.com/email_address_validation/
			return this.optional(element) || /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);
		},
	
		// http://docs.jquery.com/Plugins/Validation/Methods/url
		url: function(value, element) {
			// contributed by Scott Gonzalez: http://projects.scottsplayground.com/iri/
			return this.optional(element) || /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);
		},
        
		// http://docs.jquery.com/Plugins/Validation/Methods/date
		date: function(value, element) {
			return this.optional(element) || !/Invalid|NaN/.test(new Date(value));
		},
	
		// http://docs.jquery.com/Plugins/Validation/Methods/dateISO
		dateISO: function(value, element) {
			return this.optional(element) || /^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(value);
		},
	
		// http://docs.jquery.com/Plugins/Validation/Methods/number
		number: function(value, element) {
			return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value);
		},
	
		// http://docs.jquery.com/Plugins/Validation/Methods/digits
		digits: function(value, element) {
			return this.optional(element) || /^\d+$/.test(value);
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/creditcard
		// based on http://en.wikipedia.org/wiki/Luhn
		creditcard: function(value, element) {
			if ( this.optional(element) )
				return "dependency-mismatch";
			// accept only digits and dashes
			if (/[^0-9-]+/.test(value))
				return false;
			var nCheck = 0,
				nDigit = 0,
				bEven = false;

			value = value.replace(/\D/g, "");

			for (var n = value.length - 1; n >= 0; n--) {
				var cDigit = value.charAt(n);
				var nDigit = parseInt(cDigit, 10);
				if (bEven) {
					if ((nDigit *= 2) > 9)
						nDigit -= 9;
				}
				nCheck += nDigit;
				bEven = !bEven;
			}

			return (nCheck % 10) == 0;
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/accept
		accept: function(value, element, param) {
			param = typeof param == "string" ? param.replace(/,/g, '|') : "png|jpe?g|gif";
			return this.optional(element) || value.match(new RegExp(".(" + param + ")$", "i")); 
		},
		
		// http://docs.jquery.com/Plugins/Validation/Methods/equalTo
		equalTo: function(value, element, param) {
			// bind to the blur event of the target in order to revalidate whenever the target field is updated
			// TODO find a way to bind the event just once, avoiding the unbind-rebind overhead
			var target = $(param).unbind(".validate-equalTo").bind("blur.validate-equalTo", function() {
				$(element).valid();
			});
			return value == target.val();
		}
		
	}
	
});

// deprecated, use $.validator.format instead
$.format = $.validator.format;

})(jQuery);

// ajax mode: abort
// usage: $.ajax({ mode: "abort"[, port: "uniqueport"]});
// if mode:"abort" is used, the previous request on that port (port can be undefined) is aborted via XMLHttpRequest.abort() 
;(function($) {
	var ajax = $.ajax;
	var pendingRequests = {};
	$.ajax = function(settings) {
		// create settings for compatibility with ajaxSetup
		settings = $.extend(settings, $.extend({}, $.ajaxSettings, settings));
		var port = settings.port;
		if (settings.mode == "abort") {
			if ( pendingRequests[port] ) {
				pendingRequests[port].abort();
			}
			return (pendingRequests[port] = ajax.apply(this, arguments));
		}
		return ajax.apply(this, arguments);
	};
})(jQuery);

// provides cross-browser focusin and focusout events
// IE has native support, in other browsers, use event caputuring (neither bubbles)

// provides delegate(type: String, delegate: Selector, handler: Callback) plugin for easier event delegation
// handler is only called when $(event.target).is(delegate), in the scope of the jquery-object for event.target 
;(function($) {
	// only implement if not provided by jQuery core (since 1.4)
	// TODO verify if jQuery 1.4's implementation is compatible with older jQuery special-event APIs
	if (!jQuery.event.special.focusin && !jQuery.event.special.focusout && document.addEventListener) {
		$.each({
			focus: 'focusin',
			blur: 'focusout'	
		}, function( original, fix ){
			$.event.special[fix] = {
				setup:function() {
					this.addEventListener( original, handler, true );
				},
				teardown:function() {
					this.removeEventListener( original, handler, true );
				},
				handler: function(e) {
					arguments[0] = $.event.fix(e);
					arguments[0].type = fix;
					return $.event.handle.apply(this, arguments);
				}
			};
			function handler(e) {
				e = $.event.fix(e);
				e.type = fix;
				return $.event.handle.call(this, e);
			}
		});
	};
	$.extend($.fn, {
		validateDelegate: function(delegate, type, handler) {
			return this.bind(type, function(event) {
				var target = $(event.target);
				if (target.is(delegate)) {
					return handler.apply(target, arguments);
				}
			});
		}
	});
})(jQuery);
;
/*
 * Translated default messages for the jQuery validation plugin.
 * Locale: CS
 */
jQuery.extend(jQuery.validator.messages, {
	required: "Tento údaj je povinný.",
	remote: "Prosím, opravte tento údaj.",
	email: "Prosím, zadejte platný e-mail.",
	url: "Prosím, zadejte platné URL.",
	date: "Prosím, zadejte platné datum.",
	dateISO: "Prosím, zadejte platné datum (ISO).",
	number: "Prosím, zadejte číslo.",
	digits: "Prosím, zadávejte pouze číslice.",
	creditcard: "Prosím, zadejte číslo kreditní karty.",
	equalTo: "Prosím, zadejte znovu stejnou hodnotu.",
	accept: "Prosím, zadejte soubor se správnou příponou.",
	maxlength: jQuery.validator.format("Prosím, zadejte nejvíce {0} znaků."),
	minlength: jQuery.validator.format("Prosím, zadejte nejméně {0} znaků."),
	rangelength: jQuery.validator.format("Prosím, zadejte od {0} do {1} znaků."),
	range: jQuery.validator.format("Prosím, zadejte hodnotu od {0} do {1}."),
	max: jQuery.validator.format("Prosím, zadejte hodnotu menší nebo rovnu {0}."),
	min: jQuery.validator.format("Prosím, zadejte hodnotu větší nebo rovnu {0}.")
});
;
/*
 *
 * Copyright (c) 2004-2005 by Zapatec, Inc.
 * http://www.zapatec.com
 * 1700 MLK Way, Berkeley, California,
 * 94709, U.S.A.
 * All rights reserved.
 *
 *
 */


if(typeof Zapatec=='undefined'){Zapatec=function(){};}
Zapatec.version='07-01';if(typeof Zapatec.zapatecPath=='undefined'){Zapatec.zapatecPath=function(){if(document.documentElement){var aTokens=document.documentElement.innerHTML.match(/<script[^>]+src="([^"]*zapatec(-core|-src)?.js[^"]*)"/i);if(aTokens&&aTokens.length>=2){aTokens=aTokens[1].split('?');aTokens=aTokens[0].split('/');if(Array.prototype.pop){aTokens.pop();}else{aTokens.length-=1;}
return aTokens.length?aTokens.join('/')+'/':'';}}
return'';}();}
if(typeof Zapatec=='undefined'){Zapatec=function(){};}
Zapatec.Utils={};Zapatec.Utils.getAbsolutePos=function(el,scrollOff){var SL=0,ST=0;if(!scrollOff){var is_div=/^div$/i.test(el.tagName);if(is_div&&el.scrollLeft)
SL=el.scrollLeft;if(is_div&&el.scrollTop)
ST=el.scrollTop;}
var r={x:el.offsetLeft-SL,y:el.offsetTop-ST};if(el.offsetParent){var tmp=this.getAbsolutePos(el.offsetParent);r.x+=tmp.x;r.y+=tmp.y;}
return r;};Zapatec.Utils.getElementOffset=function(oEl){var iLeft=iTop=iWidth=iHeight=0;var sTag;if(oEl.getBoundingClientRect){var oRect=oEl.getBoundingClientRect();iLeft=oRect.left;iTop=oRect.top;iWidth=oRect.right-iLeft;iHeight=oRect.bottom-iTop;iLeft+=Zapatec.Utils.getPageScrollX()-2;iTop+=Zapatec.Utils.getPageScrollY()-2;}else{iWidth=oEl.offsetWidth;iHeight=oEl.offsetHeight;var sPos=Zapatec.Utils.getStyleProperty(oEl,'position');if(sPos=='fixed'){iLeft=oEl.offsetLeft+Zapatec.Utils.getPageScrollX();iTop=oEl.offsetTop+Zapatec.Utils.getPageScrollY();}else if(sPos=='absolute'){while(oEl){sTag=oEl.tagName;if(sTag){sTag=sTag.toLowerCase();if(sTag!='body'&&sTag!='html'){iLeft+=parseInt(oEl.offsetLeft,10)||0;iTop+=parseInt(oEl.offsetTop,10)||0;}}
oEl=oEl.offsetParent;sTag=oEl?oEl.tagName:null;if(sTag){sTag=sTag.toLowerCase();if(sTag!='body'&&sTag!='html'){iLeft-=oEl.scrollLeft;iTop-=oEl.scrollTop;}}}}else{var bMoz=(Zapatec.is_gecko&&!Zapatec.is_khtml);var fStyle=Zapatec.Utils.getStyleProperty;var oP=oEl;while(oP){if(bMoz){sTag=oP.tagName;if(sTag){sTag=sTag.toLowerCase();if(sTag=='body'&&!(fStyle(oP,'-moz-box-sizing')=='border-box')){iLeft+=parseInt(fStyle(oP,'border-left-width'));iTop+=parseInt(fStyle(oP,'border-top-width'));}}}
iLeft+=parseInt(oP.offsetLeft,10)||0;iTop+=parseInt(oP.offsetTop,10)||0;oP=oP.offsetParent;}
oP=oEl;while(oP.parentNode){oP=oP.parentNode;sTag=oP.tagName;if(sTag){sTag=sTag.toLowerCase();if(sTag!='body'&&sTag!='html'&&sTag!='tr'){iLeft-=oP.scrollLeft;iTop-=oP.scrollTop;}}}}}
return{left:iLeft,top:iTop,x:iLeft,y:iTop,width:iWidth,height:iHeight};};Zapatec.Utils.getElementOffsetScrollable=function(oEl){var oPos=Zapatec.Utils.getElementOffset(oEl);if(oEl.scrollLeft){oPos.left-=oEl.scrollLeft;oPos.x=oPos.left;}
if(oEl.scrollTop){oPos.top-=oEl.scrollTop;oPos.y=oPos.top;}
return oPos;};Zapatec.Utils.fixBoxPosition=function(box,leave){var screenX=Zapatec.Utils.getPageScrollX();var screenY=Zapatec.Utils.getPageScrollY();var sizes=Zapatec.Utils.getWindowSize();leave=parseInt(leave,10)||0;if(box.x<screenX){box.x=screenX+leave;}
if(box.y<screenY){box.y=screenY+leave;}
if(box.x+box.width>screenX+sizes.width){box.x=screenX+sizes.width-box.width-leave;}
if(box.y+box.height>screenY+sizes.height){box.y=screenY+sizes.height-box.height-leave;}};Zapatec.Utils.isRelated=function(el,evt){evt||(evt=window.event);var related=evt.relatedTarget;if(!related){var type=evt.type;if(type=="mouseover"){related=evt.fromElement;}else if(type=="mouseout"){related=evt.toElement;}}
try{while(related){if(related==el){return true;}
related=related.parentNode;}}catch(e){};return false;};Zapatec.Utils.removeClass=function(el,className){if(!(el&&el.className)){return;}
var cls=el.className.split(" ");var ar=[];for(var i=cls.length;i>0;){if(cls[--i]!=className){ar[ar.length]=cls[i];}}
el.className=ar.join(" ");};Zapatec.Utils.addClass=function(el,className){Zapatec.Utils.removeClass(el,className);el.className+=" "+className;};Zapatec.Utils.replaceClass=function(el,className,withClassName){if(!Zapatec.isHtmlElement(el)||!className){return false;}
el.className.replace(className,withClassName);};Zapatec.Utils.getElement=function(ev){if(Zapatec.is_ie){return window.event.srcElement;}else{return ev.currentTarget;}};Zapatec.Utils.getTargetElement=function(ev){if(Zapatec.is_ie){return window.event.srcElement;}else{return ev.target;}};Zapatec.Utils.getMousePos=function(oEv){oEv||(oEv=window.event);var oPos={pageX:0,pageY:0,clientX:0,clientY:0};if(oEv){var bIsPageX=(typeof oEv.pageX!='undefined');var bIsClientX=(typeof oEv.clientX!='undefined');if(bIsPageX||bIsClientX){if(bIsPageX){oPos.pageX=oEv.pageX;oPos.pageY=oEv.pageY;}else{oPos.pageX=oEv.clientX+Zapatec.Utils.getPageScrollX();oPos.pageY=oEv.clientY+Zapatec.Utils.getPageScrollY();}
if(bIsClientX){oPos.clientX=oEv.clientX;oPos.clientY=oEv.clientY;}else{oPos.clientX=oEv.pageX-Zapatec.Utils.getPageScrollX();oPos.clientY=oEv.pageY-Zapatec.Utils.getPageScrollY();}}}
return oPos;};Zapatec.Utils.stopEvent=function(ev){ev||(ev=window.event);if(ev){if(Zapatec.is_ie){ev.cancelBubble=true;ev.returnValue=false;}else{ev.preventDefault();ev.stopPropagation();}}
return false;};Zapatec.Utils.removeOnUnload=[];Zapatec.Utils.addEvent=function(oElement,sEvent,fListener,bUseCapture){if(oElement.addEventListener){if(!bUseCapture){bUseCapture=false;}
oElement.addEventListener(sEvent,fListener,bUseCapture);}else if(oElement.attachEvent){oElement.detachEvent('on'+sEvent,fListener);oElement.attachEvent('on'+sEvent,fListener);if(bUseCapture){oElement.setCapture(false);}}
Zapatec.Utils.removeOnUnload.push({'element':oElement,'event':sEvent,'listener':fListener,'capture':bUseCapture});};Zapatec.Utils.removeEvent=function(oElement,sEvent,fListener,bUseCapture){if(oElement.removeEventListener){oElement.removeEventListener(sEvent,fListener,bUseCapture);}else if(oElement.detachEvent){oElement.detachEvent('on'+sEvent,fListener);}
for(var iLis=Zapatec.Utils.removeOnUnload.length-1;iLis>=0;iLis--){var oParams=Zapatec.Utils.removeOnUnload[iLis];if(!oParams){continue;}
if(oElement==oParams['element']&&sEvent==oParams['event']&&fListener==oParams['listener']&&bUseCapture==oParams['capture']){Zapatec.Utils.removeOnUnload[iLis]=null;Zapatec.Utils.removeEvent(oParams['element'],oParams['event'],oParams['listener'],oParams['capture']);}}};Zapatec.Utils.createElement=function(type,parent,selectable){var el=null;if(document.createElementNS)
el=document.createElementNS("http://www.w3.org/1999/xhtml",type);else
el=document.createElement(type);if(typeof parent!="undefined"&&parent!=null)
parent.appendChild(el);if(!selectable){if(Zapatec.is_ie)
el.setAttribute("unselectable",true);if(Zapatec.is_gecko)
el.style.setProperty("-moz-user-select","none","");}
return el;};Zapatec.Utils.writeCookie=function(name,value,domain,path,exp_days){value=escape(value);var ck=name+"="+value,exp;if(domain)
ck+=";domain="+domain;if(path)
ck+=";path="+path;if(exp_days){exp=new Date();exp.setTime(exp_days*86400000+exp.getTime());ck+=";expires="+exp.toGMTString();}
document.cookie=ck;};Zapatec.Utils.getCookie=function(name){var pattern=name+"=";var tokenPos=0;while(tokenPos<document.cookie.length){var valuePos=tokenPos+pattern.length;if(document.cookie.substring(tokenPos,valuePos)==pattern){var endValuePos=document.cookie.indexOf(";",valuePos);if(endValuePos==-1){endValuePos=document.cookie.length;}
return unescape(document.cookie.substring(valuePos,endValuePos));}
tokenPos=document.cookie.indexOf(" ",tokenPos)+1;if(tokenPos==0){break;}}
return null;};Zapatec.Utils.makePref=function(obj){function stringify(val){if(typeof val=="object"&&!val)
return"null";else if(typeof val=="number"||typeof val=="boolean")
return val;else if(typeof val=="string")
return'"'+val.replace(/\x22/,"\\22")+'"';else return null;};var txt="",i;for(i in obj)
txt+=(txt?",'":"'")+i+"':"+stringify(obj[i]);return txt;};Zapatec.Utils.loadPref=function(txt){var obj=null;try{eval("obj={"+txt+"}");}catch(e){}
return obj;};Zapatec.Utils.mergeObjects=function(dest,src){for(var i in src)
dest[i]=src[i];};Zapatec.Utils.__wch_id=0;Zapatec.Utils.createWCH=function(oEl){if(!Zapatec.is_ie||Zapatec.is_ie5||Zapatec.is_ie7){return null;}
var sId='WCH'+(++Zapatec.Utils.__wch_id);var sIframe=['<iframe id="',sId,'" scrolling="no" frameborder="0" style="z-index:0;position:absolute;visibility:hidden;filter:progid:DXImageTransform.Microsoft.alpha(style=0,opacity=0);border:0;top:0;left:0;width:0;height:0" src="javascript:false"></iframe>'].join('')
if(!oEl){oEl=document.body;}
if(Zapatec.windowLoaded){oEl.insertAdjacentHTML('beforeEnd',sIframe);}else{Zapatec.Utils.addEvent(window,'load',function(){oEl.insertAdjacentHTML('beforeEnd',sIframe);oEl=null;});}
return document.getElementById(sId);};Zapatec.Utils.setupWCH_el=function(f,el,el2){if(f){var pos=Zapatec.Utils.getAbsolutePos(el),X1=pos.x,Y1=pos.y,X2=X1+el.offsetWidth,Y2=Y1+el.offsetHeight;if(el2){var p2=Zapatec.Utils.getAbsolutePos(el2),XX1=p2.x,YY1=p2.y,XX2=XX1+el2.offsetWidth,YY2=YY1+el2.offsetHeight;if(X1>XX1)
X1=XX1;if(Y1>YY1)
Y1=YY1;if(X2<XX2)
X2=XX2;if(Y2<YY2)
Y2=YY2;}
Zapatec.Utils.setupWCH(f,X1,Y1,X2-X1,Y2-Y1);}};Zapatec.Utils.setupWCH=function(f,x,y,w,h){if(f){var s=f.style;(typeof x!="undefined")&&(s.left=x+"px");(typeof y!="undefined")&&(s.top=y+"px");(typeof w!="undefined")&&(s.width=w+"px");(typeof h!="undefined")&&(s.height=h+"px");s.visibility="inherit";}};Zapatec.Utils.hideWCH=function(f){if(f)
f.style.visibility="hidden";};Zapatec.Utils.getPageScrollY=function(){if(window.pageYOffset){return window.pageYOffset;}else if(document.body&&document.body.scrollTop){return document.body.scrollTop;}else if(document.documentElement&&document.documentElement.scrollTop){return document.documentElement.scrollTop;}
return 0;};Zapatec.Utils.getPageScrollX=function(){if(window.pageXOffset){return window.pageXOffset;}else if(document.body&&document.body.scrollLeft){return document.body.scrollLeft;}else if(document.documentElement&&document.documentElement.scrollLeft){return document.documentElement.scrollLeft;}
return 0;};Zapatec.ScrollWithWindow={};Zapatec.ScrollWithWindow.list=[];Zapatec.ScrollWithWindow.stickiness=0.25;Zapatec.ScrollWithWindow.register=function(oElement){var iTop=oElement.offsetTop||0;var iLeft=oElement.offsetLeft||0;Zapatec.ScrollWithWindow.list.push({node:oElement,origTop:iTop,origLeft:iLeft});if(!Zapatec.ScrollWithWindow.interval){Zapatec.ScrollWithWindow.on();}};Zapatec.ScrollWithWindow.unregister=function(oElement){for(var iItem=0;iItem<Zapatec.ScrollWithWindow.list.length;iItem++){var oItem=Zapatec.ScrollWithWindow.list[iItem];if(oElement==oItem.node){Zapatec.ScrollWithWindow.list.splice(iItem,1);if(!Zapatec.ScrollWithWindow.list.length){Zapatec.ScrollWithWindow.off();}
return;}}};Zapatec.ScrollWithWindow.moveTop=function(iTop){Zapatec.ScrollWithWindow.top+=(iTop-Zapatec.ScrollWithWindow.top)*Zapatec.ScrollWithWindow.stickiness;if(Math.abs(Zapatec.ScrollWithWindow.top-iTop)<=1){Zapatec.ScrollWithWindow.top=iTop;}
for(var iItem=0;iItem<Zapatec.ScrollWithWindow.list.length;iItem++){var oItem=Zapatec.ScrollWithWindow.list[iItem];var oElement=oItem.node;oElement.style.position='absolute';if(!oItem.origTop&&oItem.origTop!==0){oItem.origTop=parseInt(oElement.style.top)||0;}
oElement.style.top=oItem.origTop+
parseInt(Zapatec.ScrollWithWindow.top)+'px';}};Zapatec.ScrollWithWindow.moveLeft=function(iLeft){Zapatec.ScrollWithWindow.left+=(iLeft-Zapatec.ScrollWithWindow.left)*Zapatec.ScrollWithWindow.stickiness;if(Math.abs(Zapatec.ScrollWithWindow.left-iLeft)<=1){Zapatec.ScrollWithWindow.left=iLeft;}
for(var iItem=0;iItem<Zapatec.ScrollWithWindow.list.length;iItem++){var oItem=Zapatec.ScrollWithWindow.list[iItem];var oElement=oItem.node;oElement.style.position='absolute';if(!oItem.origLeft&&oItem.origLeft!==0){oItem.origLeft=parseInt(oElement.style.left)||0;}
oElement.style.left=oItem.origLeft+
parseInt(Zapatec.ScrollWithWindow.left)+'px';}};Zapatec.ScrollWithWindow.cycle=function(){var iTop=Zapatec.Utils.getPageScrollY();var iLeft=Zapatec.Utils.getPageScrollX();if(iTop!=Zapatec.ScrollWithWindow.top){Zapatec.ScrollWithWindow.moveTop(iTop);}
if(iLeft!=Zapatec.ScrollWithWindow.left){Zapatec.ScrollWithWindow.moveLeft(iLeft);}};Zapatec.ScrollWithWindow.on=function(){if(Zapatec.ScrollWithWindow.interval){return;}
Zapatec.ScrollWithWindow.top=Zapatec.Utils.getPageScrollY();Zapatec.ScrollWithWindow.left=Zapatec.Utils.getPageScrollX();Zapatec.ScrollWithWindow.interval=setInterval(Zapatec.ScrollWithWindow.cycle,50);};Zapatec.ScrollWithWindow.off=function(){if(!Zapatec.ScrollWithWindow.interval){return;}
clearInterval(Zapatec.ScrollWithWindow.interval);Zapatec.ScrollWithWindow.interval=null;};Zapatec.FixateOnScreen={};Zapatec.FixateOnScreen.getExpression=function(coord,direction){return"Zapatec.Utils.getPageScroll"+direction.toUpperCase()+"() + "+coord;};Zapatec.FixateOnScreen.parseCoordinates=function(element){if(!this.isRegistered(element)){return false;}
var x=0;var y=0;var style=element.style;if(Zapatec.is_ie&&!Zapatec.is_ie7){x=style.getExpression("left").split(" ");x=parseInt(x[x.length-1],10);y=style.getExpression("top").split(" ");y=parseInt(y[y.length-1],10);}else{x=parseInt(style.left,10);y=parseInt(style.top,10);}
x+=Zapatec.Utils.getPageScrollX();y+=Zapatec.Utils.getPageScrollY();return{x:x,y:y};};Zapatec.FixateOnScreen.correctCoordinates=function(x,y){position={x:x,y:y};if(position.x||position.x===0){position.x-=Zapatec.Utils.getPageScrollX();if(Zapatec.is_ie&&!Zapatec.is_ie7){position.x=this.getExpression(position.x,"X");;}else{position.x+="px";}}
if(position.y||position.y===0){position.y-=Zapatec.Utils.getPageScrollY();if(Zapatec.is_ie&&!Zapatec.is_ie7){position.y=this.getExpression(position.y,"Y");;}else{position.y+="px";}}
return position;};Zapatec.FixateOnScreen.register=function(element){if(!Zapatec.isHtmlElement(element)){return false;}
if(this.isRegistered(element)){return true;}
var pos=Zapatec.Utils.getElementOffset(element);pos={x:parseInt(element.style.left,10)||pos.x,y:parseInt(element.style.top,10)||pos.y}
pos=this.correctCoordinates(pos.x,pos.y);if(!Zapatec.is_ie||Zapatec.is_ie7){var restorer=element.restorer;if(!restorer||!restorer.getObject||restorer.getObject()!=element){restorer=element.restorer=new Zapatec.SRProp(element);}
restorer.saveProp("style.position");element.style.position="fixed";element.style.left=pos.x;element.style.top=pos.y;}else{element.style.setExpression("left",pos.x);element.style.setExpression("top",pos.y);}
element.zpFixed=true;return true;};Zapatec.FixateOnScreen.unregister=function(element){if(!Zapatec.isHtmlElement(element)){return false;}
var pos=this.parseCoordinates(element);if(pos===false){return true;}
if(Zapatec.is_ie&&!Zapatec.is_ie7){element.style.removeExpression("left");element.style.removeExpression("top");}
element.style.left=pos.x+"px";element.style.top=pos.y+"px";if(!Zapatec.is_ie||Zapatec.is_ie7){element.restorer.restoreProp("style.position",true);}
element.zpFixed=false;return true;};Zapatec.FixateOnScreen.isRegistered=function(element){if(element.zpFixed){return true;}
return false;};Zapatec.Utils.destroy=function(el){if(el&&el.parentNode)
el.parentNode.removeChild(el);};Zapatec.Utils.newCenteredWindow=function(url,windowName,width,height,scrollbars){var leftPosition=0;var topPosition=0;if(screen.width)
leftPosition=(screen.width-width)/2;if(screen.height)
topPosition=(screen.height-height)/2;var winArgs='height='+height+',width='+width+',top='+topPosition+',left='+leftPosition+',scrollbars='+scrollbars+',resizable';var win=window.open(url,windowName,winArgs);return win;};Zapatec.Utils.getWindowSize=function(){var iWidth=0;var iHeight=0;if(Zapatec.is_opera){iWidth=document.body.clientWidth||0;iHeight=document.body.clientHeight||0;}else if(Zapatec.is_khtml){iWidth=window.innerWidth||0;iHeight=window.innerHeight||0;}else if(document.compatMode&&document.compatMode=='CSS1Compat'){iWidth=document.documentElement.clientWidth||0;iHeight=document.documentElement.clientHeight||0;}else{iWidth=document.body.clientWidth||0;iHeight=document.body.clientHeight||0;}
return{width:iWidth,height:iHeight};};Zapatec.Utils.selectOption=function(sel,val,call_default){var a=sel.options,i,o;for(i=a.length;--i>=0;){o=a[i];o.selected=(o.value==val);}
sel.value=val;if(call_default){if(typeof sel.onchange=="function")
sel.onchange();else if(typeof sel.onchange=="string")
eval(sel.onchange);}};Zapatec.Utils.getNextSibling=function(el,tag,alternateTag){el=el.nextSibling;if(!tag){return el;}
tag=tag.toLowerCase();if(alternateTag)alternateTag=alternateTag.toLowerCase();while(el){if(el.nodeType==1&&(el.tagName.toLowerCase()==tag||(alternateTag&&el.tagName.toLowerCase()==alternateTag))){return el;}
el=el.nextSibling;}
return el;};Zapatec.Utils.getPreviousSibling=function(el,tag,alternateTag){el=el.previousSibling;if(!tag){return el;}
tag=tag.toLowerCase();if(alternateTag)alternateTag=alternateTag.toLowerCase();while(el){if(el.nodeType==1&&(el.tagName.toLowerCase()==tag||(alternateTag&&el.tagName.toLowerCase()==alternateTag))){return el;}
el=el.previousSibling;}
return el;};Zapatec.Utils.getFirstChild=function(el,tag,alternateTag){if(!el){return null;}
el=el.firstChild;if(!el){return null;}
if(!tag){return el;}
tag=tag.toLowerCase();if(el.nodeType==1){if(el.tagName.toLowerCase()==tag){return el;}else if(alternateTag){alternateTag=alternateTag.toLowerCase();if(el.tagName.toLowerCase()==alternateTag){return el;}}}
return Zapatec.Utils.getNextSibling(el,tag,alternateTag);};Zapatec.Utils.getLastChild=function(el,tag,alternateTag){if(!el){return null;}
el=el.lastChild;if(!el){return null;}
if(!tag){return el;}
tag=tag.toLowerCase();if(el.nodeType==1){if(el.tagName.toLowerCase()==tag){return el;}else if(alternateTag){alternateTag=alternateTag.toLowerCase();if(el.tagName.toLowerCase()==alternateTag){return el;}}}
return Zapatec.Utils.getPreviousSibling(el,tag,alternateTag);};Zapatec.Utils.getChildText=function(objNode){if(objNode==null){return'';}
var arrText=[];var objChild=objNode.firstChild;while(objChild!=null){if(objChild.nodeType==3){arrText.push(objChild.data);}
objChild=objChild.nextSibling;}
return arrText.join(' ');};Zapatec.Utils.insertAfter=function(oldNode,newNode){if(oldNode.nextSibling){oldNode.parentNode.insertBefore(newNode,oldNode.nextSibling);}else{oldNode.parentNode.appendChild(newNode);}}
Zapatec.Utils._ids={};Zapatec.Utils.generateID=function(code,id){if(typeof id=="undefined"){if(typeof this._ids[code]=="undefined")
this._ids[code]=0;id=++this._ids[code];}
return"zapatec-"+code+"-"+id;};Zapatec.Utils.addTooltip=function(target,tooltip){return new Zapatec.Tooltip({target:target,tooltip:tooltip});};Zapatec.isLite=true;Zapatec.Utils.checkLinks=function(){var anchors=document.getElementsByTagName('A');for(var ii=0;ii<anchors.length;ii++){if(Zapatec.Utils.checkLink(anchors[ii])){return true;}}
return false;}
Zapatec.Utils.checkLink=function(lnk){if(!lnk){return false;}
if(!/^https?:\/\/((dev|www)\.)?zapatec\.com/i.test(lnk.href)){return false;}
var textContent=""
for(var ii=0;ii<lnk.childNodes.length;ii++){if(lnk.childNodes[ii].nodeType==3){textContent+=lnk.childNodes[ii].nodeValue;}}
if(textContent.length<4){return false;}
var parent=lnk;while(parent&&parent.nodeName.toLowerCase()!="html"){if(Zapatec.Utils.getStyleProperty(parent,"display")=="none"||Zapatec.Utils.getStyleProperty(parent,"visibility")=="hidden"||Zapatec.Utils.getStyleProperty(parent,"opacity")=="0"||Zapatec.Utils.getStyleProperty(parent,"-moz-opacity")=="0"||/alpha\(opacity=0\)/i.test(Zapatec.Utils.getStyleProperty(parent,"filter"))){return false;}
parent=parent.parentNode;}
var coords=Zapatec.Utils.getElementOffset(lnk);if(coords.left<0||coords.top<0){return false;}
return true;}
Zapatec.Utils.checkActivation=function(){if(!Zapatec.isLite)return true;var arrProducts=[]
add_product=function(script,webdir_in,name_in)
{arrProducts[script]={webdir:webdir_in,name:name_in,bActive:false}}
add_product('calendar.js','prod1','Calendar')
add_product('zpmenu.js','menu','Menu')
add_product('tree.js','prod3','Tree')
add_product('form.js','forms','Forms')
add_product('effects.js','effects','Effects')
add_product('hoverer.js','effects','Effects - Hoverer')
add_product('slideshow.js','effects','Effects - Slideshow')
add_product('zpgrid.js','grid','Grid')
add_product('slider.js','slider','Slider')
add_product('zptabs.js','tabs','Tabs')
add_product('zptime.js','time','Time')
add_product('window.js','windows','Window')
var strName,arrName,i
var bProduct=false
var scripts=document.getElementsByTagName('script');for(i=0;i<scripts.length;i++)
{if(/wizard.js/i.test(scripts[i].src))
return true
arrName=scripts[i].src.split('/')
if(arrName.length==0)
strName=scripts[i]
else
strName=arrName[arrName.length-1]
strName=strName.toLowerCase()
if(typeof arrProducts[strName]!='undefined')
{bProduct=true
arrProducts[strName].bActive=true}}
if(!bProduct||Zapatec.Utils.checkLinks()){return true;}
var strMsg='You are using the Free version of the Zapatec Software.\n'+'While using the Free version, a link to www.zapatec.com in this page is required.'
for(i in arrProducts)
if(arrProducts[i].bActive==true)
strMsg+='\nTo purchase the Zapatec '+arrProducts[i].name+' visit www.zapatec.com/website/main/products/'+arrProducts[i].webdir+'/'
//alert(strMsg)
return false;}
Zapatec.Utils.clone=function(oSrc){if(typeof oSrc=='object'&&oSrc){var oClone=new oSrc.constructor();var fClone=Zapatec.Utils.clone;for(var sProp in oSrc){oClone[sProp]=fClone(oSrc[sProp]);}
return oClone;}
return oSrc;};Zapatec.is_opera=/opera/i.test(navigator.userAgent);Zapatec.is_ie=(/msie/i.test(navigator.userAgent)&&!Zapatec.is_opera);Zapatec.is_ie5=(Zapatec.is_ie&&/msie 5\.0/i.test(navigator.userAgent));Zapatec.is_ie7=(Zapatec.is_ie&&/msie 7\.0/i.test(navigator.userAgent));Zapatec.is_mac_ie=(/msie.*mac/i.test(navigator.userAgent)&&!Zapatec.is_opera);Zapatec.is_khtml=/Konqueror|Safari|KHTML/i.test(navigator.userAgent);Zapatec.is_konqueror=/Konqueror/i.test(navigator.userAgent);Zapatec.is_gecko=/Gecko/i.test(navigator.userAgent);Zapatec.is_webkit=/WebKit/i.test(navigator.userAgent);Zapatec.webkitVersion=Zapatec.is_webkit?parseInt(navigator.userAgent.replace(/.+WebKit\/([0-9]+)\..+/,"$1")):-1;if(!Object.prototype.hasOwnProperty){Object.prototype.hasOwnProperty=function(strProperty){try{var objPrototype=this.constructor.prototype;while(objPrototype){if(objPrototype[strProperty]==this[strProperty]){return false;}
objPrototype=objPrototype.prototype;}}catch(objException){}
return true;};}
if(!Function.prototype.call){Function.prototype.call=function(){var objThis=arguments[0];objThis._this_func=this;var arrArgs=[];for(var iArg=1;iArg<arguments.length;iArg++){arrArgs[arrArgs.length]='arguments['+iArg+']';}
var ret=eval('objThis._this_func('+arrArgs.join(',')+')');objThis._this_func=null;return ret;};}
if(!Function.prototype.apply){Function.prototype.apply=function(){var objThis=arguments[0];var objArgs=arguments[1];objThis._this_func=this;var arrArgs=[];if(objArgs){for(var iArg=0;iArg<objArgs.length;iArg++){arrArgs[arrArgs.length]='objArgs['+iArg+']';}}
var ret=eval('objThis._this_func('+arrArgs.join(',')+')');objThis._this_func=null;return ret;};}
if(!Array.prototype.pop){Array.prototype.pop=function(){var last;if(this.length){last=this[this.length-1];this.length-=1;}
return last;};}
if(!Array.prototype.push){Array.prototype.push=function(){for(var i=0;i<arguments.length;i++){this[this.length]=arguments[i];}
return this.length;};}
if(!Array.prototype.shift){Array.prototype.shift=function(){var first;if(this.length){first=this[0];for(var i=0;i<this.length-1;i++){this[i]=this[i+1];}
this.length-=1;}
return first;};}
if(!Array.prototype.unshift){Array.prototype.unshift=function(){if(arguments.length){var i,len=arguments.length;for(i=this.length+len-1;i>=len;i--){this[i]=this[i-len];}
for(i=0;i<len;i++){this[i]=arguments[i];}}
return this.length;};}
if(!Array.prototype.splice){Array.prototype.splice=function(index,howMany){var elements=[],removed=[],i;for(i=2;i<arguments.length;i++){elements.push(arguments[i]);}
for(i=index;(i<index+howMany)&&(i<this.length);i++){removed.push(this[i]);}
for(i=index+howMany;i<this.length;i++){this[i-howMany]=this[i];}
this.length-=removed.length;for(i=this.length+elements.length-1;i>=index+elements.length;i--){this[i]=this[i-elements.length];}
for(i=0;i<elements.length;i++){this[index+i]=elements[i];}
return removed;};}
Zapatec.Utils.arrIndexOf=function(aArr,vSearchEl,iFromInd){if(!(aArr instanceof Array)){return-1;}
if(Array.prototype.indexOf){return aArr.indexOf(vSearchEl,iFromInd);}
if(!iFromInd){iFromInd=0;}
var iEls=aArr.length;for(var iEl=iFromInd;iEl<iEls;iEl++){if(aArr[iEl]==vSearchEl){return iEl;}}
return-1;};Zapatec.Log=function(objArgs){if(!objArgs){return;}
var strMessage=objArgs.description;if(objArgs.severity){strMessage=objArgs.severity+':\n'+strMessage;}
if(objArgs.type!="warning"){alert(strMessage);}};Zapatec.Utils.Array={};Zapatec.Utils.Array.insertBefore=function(arr,el,key,nextKey){var tmp=new Array();for(var i in arr){if(i==nextKey){if(key){tmp[key]=el;}else{tmp.push(el);}}
tmp[i]=arr[i];}
return tmp;}
Zapatec.inherit=function(oSubClass,oSuperClass,oArg){var Inheritance=function(){};Inheritance.prototype=oSuperClass.prototype;oSubClass.prototype=new Inheritance();oSubClass.prototype.constructor=oSubClass;oSubClass.SUPERconstructor=oSuperClass;oSubClass.SUPERclass=oSuperClass.prototype;if(typeof oSuperClass.path!='undefined'){if(oArg&&oArg.keepPath){oSubClass.path=oSuperClass.path;}else{oSubClass.path=Zapatec.getPath(oSubClass.id);}}};Zapatec.getPath=function(sId){var sSrc;if(typeof sId=='string'){var oScript=document.getElementById(sId);if(oScript){sSrc=oScript.getAttribute('src');}}
if(!sSrc){if(typeof Zapatec.lastLoadedModule=='string'){return Zapatec.lastLoadedModule;}
if(document.documentElement){var sHtml=document.documentElement.innerHTML;var aMatch=sHtml.match(/<script[^>]+src=[^>]+>/gi);if(aMatch&&aMatch.length){sHtml=aMatch[aMatch.length-1];aMatch=sHtml.match(/src="([^"]+)/i);if(aMatch&&aMatch.length==2){sSrc=aMatch[1];}}}
if(!sSrc){return'';}}
sSrc=sSrc.replace(/\\/g,'/');var aTokens=sSrc.split('?');aTokens=aTokens[0].split('/');aTokens=aTokens.slice(0,-1);if(!aTokens.length){return'';}
return aTokens.join('/')+'/';};Zapatec.Utils.setWindowEvent=function(oEvent){if(oEvent){window.event=oEvent;}};Zapatec.Utils.emulateWindowEvent=function(aEvents){if(document.addEventListener){var iEvents=aEvents.length;var oUtils=Zapatec.Utils;var iEvent;for(iEvent=0;iEvent<iEvents;iEvent++){document.addEventListener(aEvents[iEvent],oUtils.setWindowEvent,true);}}};Zapatec.windowLoaded=typeof(document.readyState)!='undefined'?(document.readyState=='loaded'||document.readyState=='complete'):document.getElementsByTagName!=null&&typeof(document.getElementsByTagName('body')[0])!='undefined';Zapatec.Utils.addEvent(window,"load",function(){Zapatec.windowLoaded=true;});Zapatec.Utils.warnUnload=function(msg,win){Zapatec.Utils.warnUnloadFlag=true;if(typeof(msg)!="string"){msg="All your changes will be lost.";}
if(typeof(win)=='undefined'){win=window;}
Zapatec.Utils.addEvent(win,'beforeunload',function(ev){if(Zapatec.Utils.warnUnloadFlag!=true){return true;}
if(typeof(ev)=='undefined'){ev=window.event;}
ev.returnValue=msg;return false;});}
Zapatec.Utils.unwarnUnload=function(msg,win){Zapatec.Utils.warnUnloadFlag=false;}
Zapatec.Utils.warnUnloadFlag=false;Zapatec.Utils.getMaxZindex=function(){if(window.opera||Zapatec.is_khtml){return 2147483583;}else if(Zapatec.is_ie){return 2147483647;}else{return 10737418239;}};Zapatec.Utils.correctCssLength=function(val){if(typeof val=='undefined'||(typeof val=='object'&&!val)){return'auto';}
val+='';if(!val.length){return'auto';}
if(/\d$/.test(val)){val+='px';}
return val;};Zapatec.Utils.destroyOnUnload=[];Zapatec.Utils.addDestroyOnUnload=function(objElement,strProperty){Zapatec.Utils.destroyOnUnload.push([objElement,strProperty]);};Zapatec.Utils.createProperty=function(objElement,strProperty,val){objElement[strProperty]=val;Zapatec.Utils.addDestroyOnUnload(objElement,strProperty);};Zapatec.Utils.addEvent(window,'unload',function(){for(var iObj=Zapatec.Utils.destroyOnUnload.length-1;iObj>=0;iObj--){var objDestroy=Zapatec.Utils.destroyOnUnload[iObj];objDestroy[0][objDestroy[1]]=null;objDestroy[0]=null;}
for(var iLis=Zapatec.Utils.removeOnUnload.length-1;iLis>=0;iLis--){var oParams=Zapatec.Utils.removeOnUnload[iLis];if(!oParams){continue;}
Zapatec.Utils.removeOnUnload[iLis]=null;Zapatec.Utils.removeEvent(oParams['element'],oParams['event'],oParams['listener'],oParams['capture']);}});Zapatec.Utils.htmlEncode=function(str){str=str.replace(/&/ig,"&amp;");str=str.replace(/</ig,"&lt;");str=str.replace(/>/ig,"&gt;");str=str.replace(/\x22/ig,"&quot;");return str;};Zapatec.Utils.applyStyle=function(elRef,style){if(typeof(elRef)=='string'){elRef=document.getElementById(elRef);}
if(elRef==null||style==null||elRef.style==null){return null;}
if(Zapatec.is_opera){var pairs=style.split(";");for(var ii=0;ii<pairs.length;ii++){var kv=pairs[ii].split(":");if(!kv[1]){continue;}
var value=kv[1].replace(/^\s*/,'').replace(/\s*$/,'');var key="";for(var jj=0;jj<kv[0].length;jj++){if(kv[0].charAt(jj)=="-"){jj++;if(jj<kv[0].length){key+=kv[0].charAt(jj).toUpperCase();}
continue;}
key+=kv[0].charAt(jj);}
switch(key){case"float":key="cssFloat";break;}
try{elRef.style[key]=value;}catch(e){}}}else{elRef.style.cssText=style;}
return true;}
Zapatec.Utils.getStyleProperty=function(oEl,sPr){var oDV=document.defaultView;if(oDV&&oDV.getComputedStyle){var oCS=oDV.getComputedStyle(oEl,'');if(oCS){sPr=sPr.replace(/([A-Z])/g,'-$1').toLowerCase();return oCS.getPropertyValue(sPr);}}else if(oEl.currentStyle){return oEl.currentStyle[sPr];}
return oEl.style[sPr];};Zapatec.Utils.getPrecision=function(dFloat){return(dFloat+'').replace(/^-?\d*\.*/,'').length;};Zapatec.Utils.setPrecision=function(dFloat,iPrecision){dFloat*=1;if(dFloat.toFixed){return dFloat.toFixed(iPrecision)*1;}
var iPow=Math.pow(10,iPrecision);return parseInt(dFloat*iPow,10)/iPow;};Zapatec.Utils.setPrecisionString=function(dFloat,iPrecision){var sFloat=Zapatec.Utils.setPrecision(dFloat,iPrecision)+'';var iOldPrecision=Zapatec.Utils.getPrecision(sFloat);var iZeros=iPrecision-iOldPrecision;if(iZeros){if(!iOldPrecision){sFloat+='.';}
for(var iZero=0;iZero<iZeros;iZero++){sFloat+='0';}}
return sFloat;};Zapatec.Utils.createNestedHash=function(parent,keys,value){if(parent==null||keys==null){return null;}
var tmp=parent;for(var ii=0;ii<keys.length;ii++){if(typeof(tmp[keys[ii]])=='undefined'){tmp[keys[ii]]={};}
if(ii==keys.length-1&&typeof(value)!='undefined'){tmp[keys[ii]]=value;}
tmp=tmp[keys[ii]];}}
Zapatec.implement=function(classOrObject,interfaceStr){if(typeof interfaceStr!="string"){return false;}
if(typeof classOrObject=="function"){classOrObject=classOrObject.prototype;}
if(!classOrObject||typeof classOrObject!="object"){return false;}
var interfaceObj=window;var objs=interfaceStr.split(".");try{for(var i=0;i<objs.length;++i){interfaceObj=interfaceObj[objs[i]];}}catch(e){return false;}
if(typeof classOrObject.interfaces!="object"){classOrObject.interfaces={};classOrObject.interfaces[interfaceStr]=true;}else if(classOrObject.interfaces[interfaceStr]!==true){classOrObject.interfaces=Zapatec.Utils.clone(classOrObject.interfaces);classOrObject.interfaces[interfaceStr]=true;}else{return true;}
for(var iProp in interfaceObj){classOrObject[iProp]=interfaceObj[iProp];}
classOrObject.hasInterface=function(interfaceStr){if(this.interfaces[interfaceStr]===true){return true;}
return false;};classOrObject.requireInterface=function(interfaceStr){if(!this.hasInterface(interfaceStr)){Zapatec.Log({description:"The object with ID '"+this.id+"' has no "+interfaceStr+" interface!"});return false;}
return true;};interfaceObj.setNamedProperty=classOrObject.setNamedProperty=function(name,val){this[name]=val;};interfaceObj.getNamedProperty=classOrObject.getNamedProperty=function(name){return this[name];};return true;};Zapatec.Utils.getCharFromEvent=function(evt){if(!evt){evt=window.event;}
var response={};if(Zapatec.is_gecko&&!Zapatec.is_khtml&&evt.type!="keydown"&&evt.type!="keyup"){if(evt.charCode){response.chr=String.fromCharCode(evt.charCode);}else{response.charCode=evt.keyCode;}}else{response.charCode=evt.keyCode||evt.which;response.chr=String.fromCharCode(response.charCode);}
if(Zapatec.is_opera&&response.charCode==0){response.charCode=null;response.chr=null;}
if(Zapatec.is_khtml&&response.charCode==63272){response.charCode=46;response.chr=null;}
return response;}
Zapatec.Utils.convertHTML2DOM=function(txt){var el=document.createElement("div");el.innerHTML=txt;var currEl=el.firstChild;while(!currEl.nodeType||currEl.nodeType!=1){currEl=currEl.nextSibling;}
Zapatec.Utils.destroy(currEl);return currEl;};Zapatec.Utils.escapeRegExp=function(s){return s.replace(/([.*+?^${}()|[\]\/\\])/g,'\\$1');};if(typeof Zapatec=='undefined'){Zapatec=function(){};}
Zapatec.EventDriven=function(){};Zapatec.EventDriven.prototype.init=function(){this.events={};};Zapatec.EventDriven.prototype.addEventListener=function(sEv,fLsnr){if(typeof fLsnr!="function"){return false;}
var oE=this.events;if(!oE[sEv]){oE[sEv]={listeners:[]};}else{this.removeEventListener(sEv,fLsnr);}
oE[sEv].listeners.push(fLsnr);};Zapatec.EventDriven.prototype.unshiftEventListener=function(sEv,fLsnr){if(typeof fLsnr!="function"){return false;}
var oE=this.events;if(!oE[sEv]){oE[sEv]={listeners:[]};}else{this.removeEventListener(sEv,fLsnr);}
oE[sEv].listeners.unshift(fLsnr);};Zapatec.EventDriven.prototype.removeEventListener=function(sEv,fLsnr){var oE=this.events;if(!oE[sEv]){return 0;}
var aL=oE[sEv].listeners;var iRemoved=0;for(var iL=aL.length-1;iL>=0;iL--){if(aL[iL]==fLsnr){aL.splice(iL,1);iRemoved++;}}
return iRemoved;};Zapatec.EventDriven.prototype.getEventListeners=function(sEv){var oE=this.events;if(!oE[sEv]){return[];}
return oE[sEv].listeners;};Zapatec.EventDriven.prototype.isEventListener=function(sEv,fLsnr){var oE=this.events;if(!oE[sEv]){return false;}
var aL=oE[sEv].listeners;for(var iL=aL.length-1;iL>=0;iL--){if(aL[iL]==fLsnr){return true;}}
return false;};Zapatec.EventDriven.prototype.isEvent=function(sEv){if(this.events[sEv]){return true;}
return false;};Zapatec.EventDriven.prototype.removeEvent=function(sEv){var oE=this.events;if(oE[sEv]){var undef;oE[sEv]=undef;}};Zapatec.EventDriven.prototype.fireEvent=function(sEv){var oE=this.events;if(!oE[sEv]){return;}
var aL=oE[sEv].listeners.slice();var iLs=aL.length;var aArgs;for(var iL=0;iLs--;iL++){aArgs=[].slice.call(arguments,1);aL[iL].apply(this,aArgs);}};Zapatec.EventDriven.events={};Zapatec.EventDriven.addEventListener=function(sEv,fLsnr){if(typeof fLsnr!="function"){return false;}
var oED=Zapatec.EventDriven;var oE=oED.events;if(!oE[sEv]){oE[sEv]={listeners:[]};}else{oED.removeEventListener(sEv,fLsnr);}
oE[sEv].listeners.push(fLsnr);};Zapatec.EventDriven.unshiftEventListener=function(sEv,fLsnr){if(typeof fLsnr!="function"){return false;}
var oED=Zapatec.EventDriven;var oE=oED.events;if(!oE[sEv]){oE[sEv]={listeners:[]};}else{oED.removeEventListener(sEv,fLsnr);}
oE[sEv].listeners.unshift(fLsnr);};Zapatec.EventDriven.removeEventListener=function(sEv,fLsnr){var oE=Zapatec.EventDriven.events;if(!oE[sEv]){return 0;}
var aL=oE[sEv].listeners;var iRemoved=0;for(var iL=aL.length-1;iL>=0;iL--){if(aL[iL]==fLsnr){aL.splice(iL,1);iRemoved++;}}
return iRemoved;};Zapatec.EventDriven.getEventListeners=function(sEv){var oE=Zapatec.EventDriven.events;if(!oE[sEv]){return[];}
return oE[sEv].listeners;};Zapatec.EventDriven.isEventListener=function(sEv,fLsnr){var oE=Zapatec.EventDriven.events;if(!oE[sEv]){return false;}
var aL=oE[sEv].listeners;for(var iL=aL.length-1;iL>=0;iL--){if(aL[iL]==fLsnr){return true;}}
return false;};Zapatec.EventDriven.isEvent=function(sEv){if(Zapatec.EventDriven.events[sEv]){return true;}
return false;};Zapatec.EventDriven.removeEvent=function(sEv){var oE=Zapatec.EventDriven.events;if(oE[sEv]){var undef;oE[sEv]=undef;}};Zapatec.EventDriven.fireEvent=function(sEv){var oE=Zapatec.EventDriven.events;if(!oE[sEv]){return;}
var aL=oE[sEv].listeners.slice();var iLs=aL.length;var aArgs;for(var iL=0;iLs--;iL++){aArgs=[].slice.call(arguments,1);aL[iL].apply(aL[iL],aArgs);}};Zapatec.ImagePreloader=function(objArgs){this.job=null;this.image=null;if(arguments.length>0)this.init(objArgs);};Zapatec.ImagePreloader.prototype.init=function(objArgs){if(!objArgs||!objArgs.job){return;}
this.job=objArgs.job;this.image=new Image();this.job.images.push(this.image);var objPreloader=this;this.image.onload=function(){objPreloader.job.loadedUrls.push(objArgs.url);setTimeout(function(){objPreloader.onLoad();},0);};this.image.onerror=function(){objPreloader.job.invalidUrls.push(objArgs.url);objPreloader.onLoad();};this.image.onabort=function(){objPreloader.job.abortedUrls.push(objArgs.url);objPreloader.onLoad();};this.image.src=objArgs.url;if(typeof objArgs.timeout=='number'){setTimeout(function(){if(objPreloader.job){if(objPreloader.image.complete){objPreloader.job.loadedUrls.push(objArgs.url);}else{objPreloader.job.abortedUrls.push(objArgs.url);}
objPreloader.onLoad();}},objArgs.timeout);}};Zapatec.ImagePreloader.prototype.onLoad=function(){if(!this.job){return;}
this.image.onload=null;this.image.onerror=null;this.image.onabort=null;var objJob=this.job;this.job=null;objJob.leftToLoad--;if(objJob.leftToLoad==0&&typeof objJob.onLoad=='function'){var funcOnLoad=objJob.onLoad;objJob.onLoad=null;funcOnLoad(objJob);}};Zapatec.PreloadImages=function(objArgs){this.images=[];this.leftToLoad=0;this.loadedUrls=[];this.invalidUrls=[];this.abortedUrls=[];this.onLoad=null;if(arguments.length>0)this.init(objArgs);};Zapatec.PreloadImages.prototype.init=function(objArgs){if(!objArgs){return;}
if(!objArgs.urls||!objArgs.urls.length){if(typeof objArgs.onLoad=='function'){objArgs.onLoad(this);}
return;}
this.images=[];this.leftToLoad=objArgs.urls.length;this.loadedUrls=[];this.invalidUrls=[];this.abortedUrls=[];this.onLoad=objArgs.onLoad;for(var iUrl=0;iUrl<objArgs.urls.length;iUrl++){new Zapatec.ImagePreloader({job:this,url:objArgs.urls[iUrl],timeout:objArgs.timeout});}};if(typeof Zapatec=='undefined'){Zapatec=function(){};}
Zapatec.StyleSheet=function(bUseLast){if(bUseLast){if(document.createStyleSheet){if(document.styleSheets.length){this.styleSheet=document.styleSheets[document.styleSheets.length-1];}}else{var aStyleSheets=document.getElementsByTagName('style');if(aStyleSheets.length){this.styleSheet=aStyleSheets[aStyleSheets.length-1];}}}
if(!this.styleSheet){if(document.createStyleSheet){try{this.styleSheet=document.createStyleSheet();}catch(oException){this.styleSheet=document.styleSheets[document.styleSheets.length-1];};}else{this.styleSheet=document.createElement('style');this.styleSheet.type='text/css';var oHead=document.getElementsByTagName('head')[0];if(!oHead){oHead=document.documentElement;}
if(oHead){oHead.appendChild(this.styleSheet);}}}};Zapatec.StyleSheet.prototype.addRule=function(strSelector,strDeclarations){if(!this.styleSheet){return;}
if(document.createStyleSheet){this.styleSheet.cssText+=strSelector+' { '+strDeclarations+' }';}else{this.styleSheet.appendChild(document.createTextNode(strSelector+' { '+strDeclarations+' }'));}};Zapatec.StyleSheet.prototype.removeRules=function(){if(!this.styleSheet){return;}
if(document.createStyleSheet){var iRules=this.styleSheet.rules.length;for(var iRule=0;iRule<iRules;iRule++){this.styleSheet.removeRule();}}else{while(this.styleSheet.firstChild){this.styleSheet.removeChild(this.styleSheet.firstChild);}}};Zapatec.StyleSheet.prototype.addParse=function(strStyleSheet){var arrClean=[];var arrTokens=strStyleSheet.split('/*');for(var iTok=0;iTok<arrTokens.length;iTok++){var arrTails=arrTokens[iTok].split('*/');arrClean.push(arrTails[arrTails.length-1]);}
strStyleSheet=arrClean.join('');strStyleSheet=strStyleSheet.replace(/@[^{]*;/g,'');var arrStyles=strStyleSheet.split('}');for(var iStl=0;iStl<arrStyles.length;iStl++){var arrRules=arrStyles[iStl].split('{');if(arrRules[0]&&arrRules[1]){var arrSelectors=arrRules[0].split(',');for(var iSel=0;iSel<arrSelectors.length;iSel++){this.addRule(arrSelectors[iSel],arrRules[1]);}}}};if(typeof Zapatec=='undefined'){Zapatec=function(){};}
Zapatec.Transport=function(){};if(typeof ActiveXObject!='undefined'){Zapatec.Transport.XMLDOM=null;Zapatec.Transport.XMLHTTP=null;Zapatec.Transport.pickActiveXVersion=function(aVersions){for(var iVn=0;iVn<aVersions.length;iVn++){try{var oDoc=new ActiveXObject(aVersions[iVn]);if(oDoc){return aVersions[iVn];}}catch(oExpn){};}
return null;};Zapatec.Transport.XMLDOM=Zapatec.Transport.pickActiveXVersion(['Msxml2.DOMDocument.4.0','Msxml2.DOMDocument.3.0','MSXML2.DOMDocument','MSXML.DOMDocument','Microsoft.XMLDOM']);Zapatec.Transport.XMLHTTP=Zapatec.Transport.pickActiveXVersion(['Msxml2.XMLHTTP.4.0','MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP','Microsoft.XMLHTTP']);Zapatec.Transport.pickActiveXVersion=null;}
Zapatec.Transport.createXmlHttpRequest=function(){if(typeof ActiveXObject!='undefined'){try{return new ActiveXObject(Zapatec.Transport.XMLHTTP);}catch(oExpn){};}
if(typeof XMLHttpRequest!='undefined'){return new XMLHttpRequest();}
return null;};Zapatec.Transport.isBusy=function(oArg){var oContr=oArg.busyContainer;if(typeof oContr=='string'){oContr=document.getElementById(oContr);}
if(!oContr){return;}
var sImage=oArg.busyImage;if(typeof sImage!='string'){sImage='';}
sImage=sImage.split('/').pop();if(!sImage.length){sImage='zpbusy.gif';}
var oFC=oContr.firstChild;if(oFC){oFC=oFC.firstChild;if(oFC){oFC=oFC.firstChild;if(oFC&&oFC.tagName&&oFC.tagName.toLowerCase()=='img'){var sSrc=oFC.getAttribute('src');if(typeof sSrc=='string'&&sSrc.length){sSrc=sSrc.split('/').pop();if(sSrc==sImage){return true;}}}}}
return false;};Zapatec.Transport.showBusy=function(oArg){if(Zapatec.Transport.isBusy(oArg)){return;}
var oContr=oArg.busyContainer;if(typeof oContr=='string'){oContr=document.getElementById(oContr);}
if(!oContr){return;}
var sImage=oArg.busyImage;var sImageWidth=oArg.busyImageWidth;var sImageHeight=oArg.busyImageHeight;if(typeof sImage!='string'||!sImage.length){sImage='zpbusy.gif';}else{if(typeof sImageWidth=='number'||(typeof sImageWidth=='string'&&/\d$/.test(sImageWidth))){sImageWidth+='px';}
if(typeof sImageHeight=='number'||(typeof sImageHeight=='string'&&/\d$/.test(sImageHeight))){sImageHeight+='px';}}
if(!sImageWidth){sImageWidth='65px';}
if(!sImageHeight){sImageHeight='35px';}
var sPath='';if(sImage.indexOf('/')<0){if(Zapatec.zapatecPath){sPath=Zapatec.zapatecPath;}else{sPath=Zapatec.Transport.getPath('transport.js');}}
var aImg=[];aImg.push('<img src="');aImg.push(sPath);aImg.push(sImage);aImg.push('"');if(sImageWidth||sImageHeight){aImg.push(' style="');if(sImageWidth){aImg.push('width:');aImg.push(sImageWidth);aImg.push(';');}
if(sImageHeight){aImg.push('height:');aImg.push(sImageHeight);}
aImg.push('"');}
aImg.push(' />');var iContainerWidth=oContr.offsetWidth;var iContainerHeight=oContr.offsetHeight;var oBusyContr=Zapatec.Utils.createElement('div');oBusyContr.style.position='relative';oBusyContr.style.zIndex=2147483583;var oBusy=Zapatec.Utils.createElement('div',oBusyContr);oBusy.style.position='absolute';oBusy.innerHTML=aImg.join('');oContr.insertBefore(oBusyContr,oContr.firstChild);var iBusyWidth=oBusy.offsetWidth;var iBusyHeight=oBusy.offsetHeight;if(iContainerWidth>iBusyWidth){oBusy.style.left=oContr.scrollLeft+
(iContainerWidth-iBusyWidth)/2+'px';}
if(iContainerHeight>iBusyHeight){oBusy.style.top=oContr.scrollTop+
(iContainerHeight-iBusyHeight)/2+'px';}};Zapatec.Transport.removeBusy=function(oArg){var oContr=oArg.busyContainer;if(typeof oContr=='string'){oContr=document.getElementById(oContr);}
if(!oContr){return;}
if(Zapatec.Transport.isBusy(oArg)){oContr.removeChild(oContr.firstChild);}};Zapatec.Transport.fetch=function(oArg){if(oArg==null||typeof oArg!='object'){return null;}
if(!oArg.url){return null;}
if(!oArg.method){oArg.method='GET';}
if(typeof oArg.async=='undefined'){oArg.async=true;}
if(!oArg.contentType&&oArg.method.toUpperCase()=='POST'){oArg.contentType='application/x-www-form-urlencoded';}
if(!oArg.content){oArg.content=null;}
if(!oArg.onLoad){oArg.onLoad=null;}
if(!oArg.onError){oArg.onError=null;}
var oRequest=Zapatec.Transport.createXmlHttpRequest();if(oRequest==null){return null;}
Zapatec.Transport.showBusy(oArg);var bErrorDisplayed=false;var funcOnReady=function(){Zapatec.Transport.removeBusy(oArg);try{if(oRequest.status==200||oRequest.status==304||(location.protocol=='file:'&&!oRequest.status)){if(typeof oArg.onLoad=='function'){oArg.onLoad(oRequest);}}else if(!bErrorDisplayed){bErrorDisplayed=true;Zapatec.Transport.displayError(oRequest.status,"Error: Can't fetch "+oArg.url+'.\n'+
(oRequest.statusText||''),oArg.onError);}}catch(oExpn){if(!bErrorDisplayed){bErrorDisplayed=true;if(oExpn.name&&oExpn.name=='NS_ERROR_NOT_AVAILABLE'){Zapatec.Transport.displayError(0,"Error: Can't fetch "+oArg.url+'.\nFile not found.',oArg.onError);}else{Zapatec.Transport.displayError(0,"Error: Can't fetch "+oArg.url+'.\n'+
(oExpn.message||''),oArg.onError);}}};};try{if(typeof oArg.username!='undefined'&&typeof oArg.password!='undefined'){oRequest.open(oArg.method,oArg.url,oArg.async,oArg.username,oArg.password);}else{oRequest.open(oArg.method,oArg.url,oArg.async);}
if(oArg.async){oRequest.onreadystatechange=function(){if(oRequest.readyState==4){funcOnReady();oRequest.onreadystatechange={};}};}
if(oArg.contentType){oRequest.setRequestHeader('Content-Type',oArg.contentType);}
oRequest.send(oArg.content);if(!oArg.async){funcOnReady();return oRequest;}}catch(oExpn){Zapatec.Transport.removeBusy(oArg);if(!bErrorDisplayed){bErrorDisplayed=true;if(oExpn.name&&oExpn.name=='NS_ERROR_FILE_NOT_FOUND'){Zapatec.Transport.displayError(0,"Error: Can't fetch "+oArg.url+'.\nFile not found.',oArg.onError);}else{Zapatec.Transport.displayError(0,"Error: Can't fetch "+oArg.url+'.\n'+
(oExpn.message||''),oArg.onError);}}};return null;};Zapatec.Transport.parseHtml=function(sHtml){sHtml+='';sHtml=sHtml.replace(/^\s+/g,'');var oTmpContr;if(document.createElementNS){oTmpContr=document.createElementNS('http://www.w3.org/1999/xhtml','div');}else{oTmpContr=document.createElement('div');}
oTmpContr.innerHTML=sHtml;return oTmpContr;};Zapatec.Transport.evalGlobalScope=function(sScript){if(typeof sScript!='string'||!sScript.match(/\S/)){return;}
if(window.execScript){window.execScript(sScript,'javascript');}else if(window.eval){window.eval(sScript);}};Zapatec.Transport.setInnerHtml=function(oArg){if(!oArg||typeof oArg.html!='string'){return;}
var sHtml=oArg.html;var oContr=null;if(typeof oArg.container=='string'){oContr=document.getElementById(oArg.container);}else if(typeof oArg.container=='object'){oContr=oArg.container;}
var aScripts=[];if(sHtml.match(/<\s*\/\s*script\s*>/i)){var aTokens=sHtml.split(/<\s*\/\s*script\s*>/i);var aHtml=[];for(var iToken=aTokens.length-1;iToken>=0;iToken--){var sToken=aTokens[iToken];if(sToken.match(/\S/)){var aMatch=sToken.match(/<\s*script([^>]*)>/i);if(aMatch){var aCouple=sToken.split(/<\s*script[^>]*>/i);while(aCouple.length<2){if(sToken.match(/^<\s*script[^>]*>/i)){aCouple.unshift('');}else{aCouple.push('');}}
aHtml.unshift(aCouple[0]);var sAttrs=aMatch[1];var srtScript=aCouple[1];if(sAttrs.match(/\s+src\s*=/i)){srtScript='';}else{srtScript=srtScript.replace(/function\s+([^(]+)/g,'$1=function');}
aScripts.push([sAttrs,srtScript]);}else if(iToken<aTokens.length-1){aTokens[iToken-1]+='</script>'+sToken;}else{aHtml.unshift(sToken);}}else{aHtml.unshift(sToken);}}
sHtml=aHtml.join('');}
if(oContr){if(window.opera){oContr.innerHTML='<form></form>';}
oContr.innerHTML=sHtml;}
for(var iScript=0;iScript<aScripts.length;iScript++){if(aScripts[iScript][1].length){Zapatec.Transport.evalGlobalScope(aScripts[iScript][1]);}
var sAttrs=aScripts[iScript][0];sAttrs=sAttrs.replace(/\s+/g,' ').replace(/^\s/,'').replace(/\s$/,'').replace(/ = /g,'=');if(sAttrs.indexOf('src=')>=0){var oContr=document.body;if(!oContr){oContr=document.getElementsByTagName('head')[0];if(!oContr){oContr=document;}}
var aAttrs=sAttrs.split(' ');var oScript=Zapatec.Utils.createElement('script');for(var iAttr=0;iAttr<aAttrs.length;iAttr++){var aAttr=aAttrs[iAttr].split('=');if(aAttr.length>1){oScript.setAttribute(aAttr[0],aAttr[1].match(/^[\s|"|']*([\s|\S]*[^'|"])[\s|"|']*$/)[1]);}else{oScript.setAttribute(aAttr[0],aAttr[0]);}}
oContr.appendChild(oScript);}}};Zapatec.Transport.fetchXmlDoc=function(oArg){if(oArg==null||typeof oArg!='object'){return null;}
if(!oArg.url){return null;}
if(typeof oArg.async=='undefined'){oArg.async=true;}
if(!oArg.onLoad){oArg.onLoad=null;}
if(!oArg.onError){oArg.onError=null;}
if(!oArg.method&&typeof oArg.username=='undefined'&&typeof oArg.password=='undefined'){if(document.implementation&&document.implementation.createDocument){var oDoc=null;if(!oArg.reliable){oArg.reliable=false;}
var oFetchArg={};for(var sKey in oArg){oFetchArg[sKey]=oArg[sKey];}
if(oArg.async){oFetchArg.onLoad=function(oRequest){oFetchArg.onLoad=null;var parser=new DOMParser();oDoc=parser.parseFromString(oRequest.responseText,"text/xml");Zapatec.Transport.removeBusy(oArg);Zapatec.Transport.onXmlDocLoad(oDoc,oArg.onLoad,oArg.onError);};}else{oFetchArg.onLoad=null;}
var oRequest=Zapatec.Transport.fetch(oFetchArg);if(!oArg.async&&oRequest){var parser=new DOMParser();oDoc=parser.parseFromString(oRequest.responseText,"text/xml");Zapatec.Transport.removeBusy(oArg);Zapatec.Transport.onXmlDocLoad(oDoc,oArg.onLoad,oArg.onError);return oDoc;}
return null;}
if(typeof ActiveXObject!='undefined'){Zapatec.Transport.showBusy(oArg);try{var oDoc=new ActiveXObject(Zapatec.Transport.XMLDOM);oDoc.async=oArg.async;if(oArg.async){oDoc.onreadystatechange=function(){if(oDoc.readyState==4){Zapatec.Transport.removeBusy(oArg);Zapatec.Transport.onXmlDocLoad(oDoc,oArg.onLoad,oArg.onError);oDoc.onreadystatechange={};}};}
oDoc.load(oArg.url);if(!oArg.async){Zapatec.Transport.removeBusy(oArg);Zapatec.Transport.onXmlDocLoad(oDoc,oArg.onLoad,oArg.onError);return oDoc;}
return null;}catch(oExpn){Zapatec.Transport.removeBusy(oArg);};}}
var oFetchArg={};for(var sKey in oArg){oFetchArg[sKey]=oArg[sKey];}
if(oArg.async){oFetchArg.onLoad=function(oRequest){Zapatec.Transport.parseXml({strXml:oRequest.responseText,onLoad:oArg.onLoad,onError:oArg.onError});};}else{oFetchArg.onLoad=null;}
var oRequest=Zapatec.Transport.fetch(oFetchArg);if(!oArg.async&&oRequest){return Zapatec.Transport.parseXml({strXml:oRequest.responseText,onLoad:oArg.onLoad,onError:oArg.onError});}
return null;};Zapatec.Transport.parseXml=function(oArg){if(oArg==null||typeof oArg!='object'){return null;}
if(!oArg.strXml){return null;}
if(!oArg.onLoad){oArg.onLoad=null;}
if(!oArg.onError){oArg.onError=null;}
if(window.DOMParser){try{var oDoc=(new DOMParser()).parseFromString(oArg.strXml,'text/xml');Zapatec.Transport.onXmlDocLoad(oDoc,oArg.onLoad,oArg.onError);return oDoc;}catch(oExpn){Zapatec.Transport.displayError(0,"Error: Can't parse.\n"+'String does not appear to be a valid XML fragment.',oArg.onError);};return null;}
if(typeof ActiveXObject!='undefined'){try{var oDoc=new ActiveXObject(Zapatec.Transport.XMLDOM);oDoc.loadXML(oArg.strXml);Zapatec.Transport.onXmlDocLoad(oDoc,oArg.onLoad,oArg.onError);return oDoc;}catch(oExpn){};}
return null;};Zapatec.Transport.onXmlDocLoad=function(oDoc,onLoad,onError){var sError=null;if(oDoc.parseError){sError=oDoc.parseError.reason;if(oDoc.parseError.srcText){sError+='Location: '+oDoc.parseError.url+'\nLine number '+oDoc.parseError.line+', column '+
oDoc.parseError.linepos+':\n'+
oDoc.parseError.srcText+'\n';}}else if(oDoc.documentElement&&oDoc.documentElement.tagName=='parsererror'){sError=oDoc.documentElement.firstChild.data+'\n'+
oDoc.documentElement.firstChild.nextSibling.firstChild.data;}else if(!oDoc.documentElement){sError='String does not appear to be a valid XML fragment.';}
if(sError){Zapatec.Transport.displayError(0,"Error: Can't parse.\n"+sError,onError);}else{if(typeof onLoad=='function'){onLoad(oDoc);}}};Zapatec.Transport.serializeXmlDoc=function(oDoc){if(window.XMLSerializer){return(new XMLSerializer).serializeToString(oDoc);}
if(oDoc.xml){return oDoc.xml;}};Zapatec.Transport.fetchJsonObj=function(oArg){if(oArg==null||typeof oArg!='object'){return null;}
if(!oArg.url){return null;}
if(typeof oArg.async=='undefined'){oArg.async=true;}
if(!oArg.reliable){oArg.reliable=false;}
var oFetchArg={};for(var sKey in oArg){oFetchArg[sKey]=oArg[sKey];}
if(oArg.async){oFetchArg.onLoad=function(oRequest){Zapatec.Transport.parseJson({strJson:oRequest.responseText,reliable:oArg.reliable,onLoad:oArg.onLoad,onError:oArg.onError});};}else{oFetchArg.onLoad=null;}
var oRequest=Zapatec.Transport.fetch(oFetchArg);if(!oArg.async&&oRequest){return Zapatec.Transport.parseJson({strJson:oRequest.responseText,reliable:oArg.reliable,onLoad:oArg.onLoad,onError:oArg.onError});}
return null;};Zapatec.Transport.parseJson=function(oArg){if(oArg==null||typeof oArg!='object'){return null;}
if(!oArg.reliable){oArg.reliable=false;}
if(!oArg.onLoad){oArg.onLoad=null;}
if(!oArg.onError){oArg.onError=null;}
var oJson=null;try{if(oArg.reliable){if(oArg.strJson){oJson=eval('('+oArg.strJson+')');}}else{oJson=Zapatec.Transport.parseJsonStr(oArg.strJson);}}catch(oExpn){var sError="Error: Can't parse.\nString doesn't appear to be a valid JSON fragment: ";sError+=oExpn.message;if(typeof oExpn.text!='undefined'&&oExpn.text.length){sError+='\n'+oExpn.text;}
sError+='\n'+oArg.strJson;Zapatec.Transport.displayError(0,sError,oArg.onError);return null;};if(typeof oArg.onLoad=='function'){oArg.onLoad(oJson);}
return oJson;};Zapatec.Transport.parseJsonStr=function(text){var p=/^\s*(([,:{}\[\]])|"(\\.|[^\x00-\x1f"\\])*"|-?\d+(\.\d*)?([eE][+-]?\d+)?|true|false|null)\s*/,token,operator;function error(m,t){throw{name:'JSONError',message:m,text:t||operator||token};}
function next(b){if(b&&b!=operator){error("Expected '"+b+"'");}
if(text){var t=p.exec(text);if(t){if(t[2]){token=null;operator=t[2];}else{operator=null;try{token=eval(t[1]);}catch(e){error("Bad token",t[1]);}}
text=text.substring(t[0].length);}else{error("Unrecognized token",text);}}else{token=operator=null;}}
function val(){var k,o;switch(operator){case'{':next('{');o={};if(operator!='}'){for(;;){if(operator||typeof token!='string'){error("Missing key");}
k=token;next();next(':');o[k]=val();if(operator!=','){break;}
next(',');}}
next('}');return o;case'[':next('[');o=[];if(operator!=']'){for(;;){o.push(val());if(operator!=','){break;}
next(',');}}
next(']');return o;default:if(operator!==null){error("Missing value");}
k=token;next();return k;}}
next();return val();};Zapatec.Transport.serializeJsonObj=function(v){var a=[];function e(s){a[a.length]=s;}
function g(x){var c,i,l,v;switch(typeof x){case'object':if(x){if(x instanceof Array){e('[');l=a.length;for(i=0;i<x.length;i+=1){v=x[i];if(typeof v!='undefined'&&typeof v!='function'){if(l<a.length){e(',');}
g(v);}}
e(']');return;}else if(typeof x.toString!='undefined'){e('{');l=a.length;for(i in x){v=x[i];if(x.hasOwnProperty(i)&&typeof v!='undefined'&&typeof v!='function'){if(l<a.length){e(',');}
g(i);e(':');g(v);}}
return e('}');}}
e('null');return;case'number':e(isFinite(x)?+x:'null');return;case'string':l=x.length;e('"');for(i=0;i<l;i+=1){c=x.charAt(i);if(c>=' '){if(c=='\\'||c=='"'){e('\\');}
e(c);}else{switch(c){case'\b':e('\\b');break;case'\f':e('\\f');break;case'\n':e('\\n');break;case'\r':e('\\r');break;case'\t':e('\\t');break;default:c=c.charCodeAt();e('\\u00'+Math.floor(c/16).toString(16)+
(c%16).toString(16));}}}
e('"');return;case'boolean':e(String(x));return;default:e('null');return;}}
g(v);return a.join('');};Zapatec.Transport.displayError=function(iErrCode,sError,onError){if(typeof onError=='function'){onError({errorCode:iErrCode,errorDescription:sError});}else{alert(sError);}};Zapatec.Transport.translateUrl=function(oArg){if(!oArg||!oArg.url){return null;}
var aFullUrl=oArg.url.split('?',2);var sUrl=aFullUrl[0];if(sUrl.indexOf(':')>=0){return oArg.url;}
var oLocation=document.location;var sPort=oLocation.port;if(sPort){sPort=':'+sPort;}
if(sUrl[0]=='/'){return[oLocation.protocol,'//',oLocation.hostname,sPort,sUrl].join('');}
var sLocation;if(sPort){sLocation=[oLocation.protocol,'//',oLocation.hostname,sPort,oLocation.pathname].join('');}else{sLocation=oLocation.toString();}
var sRelativeTo;if(typeof oArg.relativeTo!='string'){sRelativeTo=sLocation.split('?',2)[0];}else{sRelativeTo=oArg.relativeTo.split('?',2)[0];if(sRelativeTo.indexOf('/')<0){sRelativeTo=sLocation.split('?',2)[0];}else if(sRelativeTo.charAt(0)!='/'&&sRelativeTo.indexOf(':')<0){sRelativeTo=Zapatec.Transport.translateUrl({url:sRelativeTo});}}
sRelativeTo=sRelativeTo.split('#')[0];var aUrl=sUrl.split('/');var aRelativeTo=sRelativeTo.split('/');aRelativeTo.pop();for(var iToken=0;iToken<aUrl.length;iToken++){var sToken=aUrl[iToken];if(sToken=='..'){aRelativeTo.pop();}else if(sToken!='.'){aRelativeTo.push(sToken);}}
aFullUrl[0]=aRelativeTo.join('/');return aFullUrl.join('?');};Zapatec.Transport.loading={};Zapatec.Transport.setupEvents=function(oArg){if(!oArg){return{};}
if(oArg.force||!Zapatec.EventDriven||!oArg.url){return{onLoad:oArg.onLoad,onError:oArg.onError};}
var sUrl=oArg.url;if(typeof oArg.onLoad=='function'){Zapatec.EventDriven.addEventListener('zpTransportOnLoad'+sUrl,oArg.onLoad);}
if(typeof oArg.onError=='function'){Zapatec.EventDriven.addEventListener('zpTransportOnError'+sUrl,oArg.onError);}
if(Zapatec.Transport.loading[sUrl]){return{loading:true};}else{Zapatec.Transport.loading[sUrl]=true;return{onLoad:new Function("Zapatec.EventDriven.fireEvent('zpTransportOnLoad"+
sUrl+"');Zapatec.EventDriven.removeEvent('zpTransportOnLoad"+
sUrl+"');Zapatec.EventDriven.removeEvent('zpTransportOnError"+
sUrl+"');Zapatec.Transport.loading['"+sUrl+"'] = false;"),onError:new Function('oError',"Zapatec.EventDriven.fireEvent('zpTransportOnError"+
sUrl+"',oError);Zapatec.EventDriven.removeEvent('zpTransportOnLoad"+
sUrl+"');Zapatec.EventDriven.removeEvent('zpTransportOnError"+
sUrl+"');Zapatec.Transport.loading['"+sUrl+"'] = false;")};}};Zapatec.Transport.loadedJS={};Zapatec.Transport.isLoadedJS=function(sUrl,sAbsUrl){if(typeof sAbsUrl=='undefined'){sAbsUrl=Zapatec.Transport.translateUrl({url:sUrl});}
if(Zapatec.Transport.loadedJS[sAbsUrl]){return true;}
var aScripts=document.getElementsByTagName('script');for(var iScript=0;iScript<aScripts.length;iScript++){var sSrc=aScripts[iScript].getAttribute('src')||'';if(sSrc==sUrl){Zapatec.Transport.loadedJS[sAbsUrl]=true;return true;}}
return false;};Zapatec.Transport.getPath=function(sScriptFileName){var aScripts=document.getElementsByTagName('script');for(var iScript=aScripts.length-1;iScript>=0;iScript--){var sSrc=aScripts[iScript].getAttribute('src')||'';var aTokens=sSrc.split('/');var sLastToken=aTokens.pop();if(sLastToken==sScriptFileName){return aTokens.length?aTokens.join('/')+'/':'';}}
for(var sSrc in Zapatec.Transport.loadedJS){var aTokens=sSrc.split('/');var sLastToken=aTokens.pop();if(sLastToken==sScriptFileName){return aTokens.length?aTokens.join('/')+'/':'';}}
return'';};Zapatec.Transport.include=function(sSrc,sId,bForce){if(Zapatec.doNotInclude){return;}
var sAbsUrl=Zapatec.Transport.translateUrl({url:sSrc});if(!bForce&&Zapatec.Transport.isLoadedJS(sSrc,sAbsUrl)){return;}
document.write('<script type="text/javascript" src="'+sSrc+
(typeof sId=='string'?'" id="'+sId:'')+'"></script>');Zapatec.Transport.loadedJS[sAbsUrl]=true;};Zapatec.include=Zapatec.Transport.include;Zapatec.Transport.includeJS=function(sSrc,sId){setTimeout(function(){var oContr=document.body;if(!oContr){oContr=document.getElementsByTagName('head')[0];if(!oContr){oContr=document;}}
var oScript=document.createElement('script');oScript.type='text/javascript';oScript.src=sSrc;if(typeof sId=='string'){oScript.id=sId;}
oContr.appendChild(oScript);},0);};Zapatec.Transport.loadJS=function(oArg){if(!(oArg instanceof Object)){return;}
if(typeof oArg.async=='undefined'){oArg.async=true;}
var sUrl=null;if(oArg.url){sUrl=oArg.url;}else if(oArg.module){var sPath='';if(typeof oArg.path!='undefined'){sPath=oArg.path;}else if(typeof Zapatec.zapatecPath!='undefined'){sPath=Zapatec.zapatecPath;}
sUrl=sPath+oArg.module+'.js';}else{return;}
var sAbsUrl=Zapatec.Transport.translateUrl({url:sUrl});if(!oArg.onLoad){oArg.onLoad=null;}
if(!oArg.onError){oArg.onError=null;}
if(Zapatec.doNotInclude||(!oArg.force&&Zapatec.Transport.isLoadedJS(sUrl,sAbsUrl))){if(typeof oArg.onLoad=='function'){oArg.onLoad();}
return;}
var oHandlers=Zapatec.Transport.setupEvents({url:sAbsUrl,force:oArg.force,onLoad:oArg.onLoad,onError:oArg.onError});if(oHandlers.loading){return;}
Zapatec.Transport.fetch({url:sUrl,async:oArg.async,onLoad:function(oRequest){if(oArg.force||!Zapatec.Transport.loadedJS[sAbsUrl]){var aTokens=sUrl.split('/');var sLastToken=aTokens.pop();Zapatec.lastLoadedModule=aTokens.join('/')+'/';Zapatec.Transport.evalGlobalScope(oRequest.responseText);Zapatec.lastLoadedModule=null;Zapatec.Transport.loadedJS[sAbsUrl]=true;}
if(typeof oHandlers.onLoad=='function'){oHandlers.onLoad();}},onError:oHandlers.onError});};Zapatec.Transport.includeCSS=function(sHref){var oContr=document.getElementsByTagName('head')[0];if(!oContr){return;}
var oLink=document.createElement('link');oLink.setAttribute('rel','stylesheet');oLink.setAttribute('type','text/css');oLink.setAttribute('href',sHref);oContr.appendChild(oLink);};Zapatec.Transport.loadedCss={};Zapatec.Transport.loadCss=function(oArg){if(!(oArg instanceof Object)){return;}
if(!oArg.url){return;}
if(typeof oArg.async=='undefined'){oArg.async=true;}
var sAbsUrl=Zapatec.Transport.translateUrl({url:oArg.url});if(!oArg.force){if(Zapatec.Transport.loadedCss[sAbsUrl]){if(typeof oArg.onLoad=='function'){oArg.onLoad();}
return;}
var aLinks=document.getElementsByTagName('link');for(var iLnk=0;iLnk<aLinks.length;iLnk++){var sHref=aLinks[iLnk].getAttribute('href')||'';sHref=Zapatec.Transport.translateUrl({url:sHref});if(sHref==sAbsUrl){Zapatec.Transport.loadedCss[sAbsUrl]=true;if(typeof oArg.onLoad=='function'){oArg.onLoad();}
return;}}}
var oHandlers=Zapatec.Transport.setupEvents({url:sAbsUrl,force:oArg.force,onLoad:oArg.onLoad,onError:oArg.onError});if(oHandlers.loading){return;}
Zapatec.Transport.fetch({url:oArg.url,async:oArg.async,onLoad:function(oRequest){var sCss=oRequest.responseText;var aResultCss=[];var aImgUrls=[];var aCssUrls=[];var iPos=0;var iNextPos=sCss.indexOf('url(',iPos);while(iNextPos>=0){iNextPos+=4;var sToken=sCss.substring(iPos,iNextPos);var bIsImport=/@import\s+url\($/.test(sToken);aResultCss.push(sToken);iPos=iNextPos;iNextPos=sCss.indexOf(')',iPos);if(iNextPos>=0){var sImgUrl=sCss.substring(iPos,iNextPos);sImgUrl=sImgUrl.replace(/['"]/g,'');sImgUrl=Zapatec.Transport.translateUrl({url:sImgUrl,relativeTo:oArg.url});sImgUrl=Zapatec.Transport.translateUrl({url:sImgUrl});aResultCss.push(sImgUrl);if(bIsImport){aCssUrls.push(sImgUrl);}else{aImgUrls.push(sImgUrl);}
iPos=iNextPos;iNextPos=sCss.indexOf('url(',iPos);}}
aResultCss.push(sCss.substr(iPos));sCss=aResultCss.join('');Zapatec.Transport.loadCssList({urls:aCssUrls,async:oArg.async,onLoad:function(){(new Zapatec.StyleSheet()).addParse(sCss);if(typeof oHandlers.onLoad=='function'){oHandlers.onLoad();}}});Zapatec.Transport.loadedCss[sAbsUrl]=true;Zapatec.Transport.preloadImages({urls:aImgUrls,timeout:60000});},onError:oHandlers.onError});};Zapatec.Transport.loadCssList=function(oArg){if(!(oArg instanceof Object)){return;}
if(typeof oArg.async=='undefined'){oArg.async=true;}
if(!oArg.onLoad){oArg.onLoad=null;}
if(!oArg.onError){oArg.onError=null;}
if(!oArg.urls||!oArg.urls.length){if(typeof oArg.onLoad=='function'){oArg.onLoad();}
return;}
var sUrl=oArg.urls.shift();var funcOnLoad=function(){Zapatec.Transport.loadCssList({urls:oArg.urls,async:oArg.async,force:oArg.force,onLoad:oArg.onLoad,onError:oArg.onError});};Zapatec.Transport.loadCss({url:sUrl,async:oArg.async,force:oArg.force,onLoad:funcOnLoad,onError:function(oError){Zapatec.Transport.displayError(oError.errorCode,oError.errorDescription,oArg.onError);funcOnLoad();}});};Zapatec.Transport.imagePreloads=[];Zapatec.Transport.preloadImages=function(oArg){Zapatec.Transport.imagePreloads.push(new Zapatec.PreloadImages(oArg));};Zapatec.Drag={};Zapatec.Utils.emulateWindowEvent(['mousedown','mousemove','mouseup']);Zapatec.Drag.currentId=null;Zapatec.Drag.start=function(oEv,sId,oArg){var oDrag=Zapatec.Drag;var oUtils=Zapatec.Utils;if(oDrag.currentId){return true;}
var oEl=Zapatec.Widget.getElementById(sId);if(!oEl||oEl.zpDrag){return true;}
if(!oArg){oArg={};}
var oPos=oUtils.getMousePos(oEv||window.event);Zapatec.EventDriven.fireEvent('dragStart',{el:oEl,event:oEv});oEl.zpDrag=true;if(oArg.resize){oEl.zpDragResize=true;}
oEl.zpDragPageX=oPos.pageX;oEl.zpDragPageY=oPos.pageY;oEl.zpDragWidth=oEl.clientWidth;oEl.zpDragHeight=oEl.clientHeight;var sTag;var oOffsetParent=oEl.offsetParent;if(oOffsetParent){sTag=oOffsetParent.tagName.toLowerCase();}
if(sTag&&sTag!='body'&&sTag!='html'){oPos=oUtils.getElementOffset(oEl);var oPosParent=oUtils.getElementOffset(oOffsetParent);oEl.zpDragLeft=oPos.left-oPosParent.left;oEl.zpDragTop=oPos.top-oPosParent.top;}else{oEl.zpDragLeft=oEl.offsetLeft;oEl.zpDragTop=oEl.offsetTop;}
oEl.zpDragRight=oEl.zpDragLeft+oEl.zpDragWidth;oEl.zpDragBottom=oEl.zpDragTop+oEl.zpDragHeight;oEl.zpDragPrevLeft=oEl.zpDragPrevRealLeft=oEl.zpDragLeft;oEl.zpDragPrevTop=oEl.zpDragPrevRealTop=oEl.zpDragTop;oEl.zpDragV=oArg.vertical;oEl.zpDragH=oArg.horizontal;oEl.zpDragLimTop=typeof oArg.limitTop=='number'?oArg.limitTop:-Infinity;oEl.zpDragLimBot=typeof oArg.limitBottom=='number'?oArg.limitBottom:Infinity;oEl.zpDragLimLft=typeof oArg.limitLeft=='number'?oArg.limitLeft:-Infinity;oEl.zpDragLimRgh=typeof oArg.limitRight=='number'?oArg.limitRight:Infinity;if(typeof oArg.step=='number'){oEl.zpDragStepV=oEl.zpDragStepH=oArg.step;}
if(typeof oArg.stepVertical=='number'){oEl.zpDragStepV=oArg.stepVertical;}
if(typeof oArg.stepHorizontal=='number'){oEl.zpDragStepH=oArg.stepHorizontal;}
oDrag.currentId=sId;oUtils.addEvent(document,'mousemove',oDrag.move);oUtils.addEvent(document,'mouseup',oDrag.end);return true;};Zapatec.Drag.move=function(oEv){var oDrag=Zapatec.Drag;var oUtils=Zapatec.Utils;oEv||(oEv=window.event);if(!oDrag.currentId){return oUtils.stopEvent(oEv);}
var oEl=document.getElementById(oDrag.currentId);if(!(oEl&&oEl.zpDrag)){return oUtils.stopEvent(oEv);}
var oSt=oEl.style;var oPos=oUtils.getMousePos(oEv);var oParam={el:oEl,startLeft:oEl.zpDragLeft,startTop:oEl.zpDragTop,prevLeft:oEl.zpDragPrevLeft,prevTop:oEl.zpDragPrevTop,left:oEl.zpDragLeft,top:oEl.zpDragTop,realLeft:oEl.zpDragLeft,realTop:oEl.zpDragTop,event:oEv};var iOffset,iPos,iStep,iSize;iOffset=oPos.pageX-oEl.zpDragPageX;iStep=oEl.zpDragStepH;if(iStep){iPos=oEl.zpDragLeft+Math.floor(iOffset/iStep)*iStep;oParam.realLeft=oEl.zpDragPrevRealLeft=oEl.zpDragLeft+iOffset;}else{oParam.realLeft=oEl.zpDragPrevRealLeft=iPos=oEl.zpDragLeft+iOffset;}
if(!oEl.zpDragV){if(oEl.zpDragLimLft<=iPos&&oEl.zpDragLimRgh>=iPos){if(oSt.right){oSt.right='';}
if(oEl.zpDragResize){if(iOffset>0){iSize=oEl.zpDragWidth+iOffset;if(iStep){iSize=Math.floor(iSize/iStep)*iStep;}
oSt.left=oEl.zpDragLeft+'px';}else{iSize=oEl.zpDragWidth-iOffset;if(iStep){iSize=Math.ceil(iSize/iStep)*iStep;}
oSt.left=oEl.zpDragLeft-iSize+'px';}
oSt.width=iSize+'px';}else{oSt.left=iPos+'px';}
oParam.left=iPos;oEl.zpDragPrevLeft=iPos;}else{oParam.left=oParam.prevLeft;}}
iOffset=oPos.pageY-oEl.zpDragPageY;iStep=oEl.zpDragStepV;if(iStep){iPos=oEl.zpDragTop+Math.floor(iOffset/iStep)*iStep;oParam.realTop=oEl.zpDragPrevRealTop=oEl.zpDragTop+iOffset;}else{iPos=oParam.realTop=oEl.zpDragPrevRealTop=oEl.zpDragTop+iOffset;}
if(!oEl.zpDragH){if(oEl.zpDragLimTop<=iPos&&oEl.zpDragLimBot>=iPos){if(oSt.bottom){oSt.bottom='';}
if(oEl.zpDragResize){if(iOffset>0){iSize=oEl.zpDragHeight+iOffset;if(iStep){iSize=Math.floor(iSize/iStep)*iStep;}
oSt.top=oEl.zpDragTop+'px';}else{iSize=oEl.zpDragHeight-iOffset;if(iStep){iSize=Math.ceil(iSize/iStep)*iStep;}
oSt.top=oEl.zpDragBottom-iSize+'px';}
oSt.height=iSize+'px';}else{oSt.top=iPos+'px';}
oParam.top=iPos;oEl.zpDragPrevTop=iPos;}else{oParam.top=oParam.prevTop;}}
Zapatec.EventDriven.fireEvent('dragMove',oParam);return oUtils.stopEvent(oEv);};Zapatec.Drag.end=function(oEv){var oDrag=Zapatec.Drag;var oUtils=Zapatec.Utils;oEv||(oEv=window.event);if(!oDrag.currentId){return oUtils.stopEvent(oEv);}
var oEl=document.getElementById(oDrag.currentId);if(!(oEl&&oEl.zpDrag)){return oUtils.stopEvent(oEv);}
oUtils.removeEvent(document,'mousemove',oDrag.move);oUtils.removeEvent(document,'mouseup',oDrag.end);var oParam={el:oEl,startLeft:oEl.zpDragLeft,startTop:oEl.zpDragTop,left:oEl.zpDragPrevLeft,top:oEl.zpDragPrevTop,realLeft:oEl.zpDragPrevRealLeft,realTop:oEl.zpDragPrevRealTop,event:oEv};oDrag.currentId=null;oEl.zpDrag=null;oEl.zpDragPageY=null;oEl.zpDragPageX=null;oEl.zpDragTop=null;oEl.zpDragLeft=null;oEl.zpDragPrevTop=null;oEl.zpDragPrevLeft=null;oEl.zpDragPrevRealTop=null;oEl.zpDragPrevRealLeft=null;oEl.zpDragV=null;oEl.zpDragH=null;oEl.zpDragLimTop=null;oEl.zpDragLimBot=null;oEl.zpDragLimLft=null;oEl.zpDragLimRgh=null;oEl.zpDragStepV=null;oEl.zpDragStepH=null;Zapatec.EventDriven.fireEvent('dragEnd',oParam);return oUtils.stopEvent(oEv);};if(typeof Zapatec=='undefined'){Zapatec=function(){};}
Zapatec.Widget=function(oArg){this.config={};Zapatec.Widget.SUPERconstructor.call(this);this.init(oArg);};Zapatec.inherit(Zapatec.Widget,Zapatec.EventDriven);Zapatec.Widget.path=Zapatec.getPath('Zapatec.Widget');Zapatec.Widget.prototype.init=function(oArg){Zapatec.Widget.SUPERclass.init.call(this);if(typeof this.id=='undefined'){var iId=0;while(Zapatec.Widget.all[iId]){iId++;}
this.id=iId;Zapatec.Widget.all[iId]=this;}
this.configure(oArg);this.addUserEventListeners();this.addStandardEventListeners();this.initLang();this.loadTheme();};Zapatec.Widget.prototype.reconfigure=function(oArg){this.configure(oArg);this.loadTheme();if(oArg.lang||oArg.langCountryCode||oArg.langEncoding){this.langStr=this.config.lang;if(this.config.langCountryCode&&this.config.langCountryCode.length>0){this.langStr+="_"+this.config.langCountryCode;}
if(this.config.langEncoding&&this.config.langEncoding.length>0){this.langStr+="-"+this.config.langEncoding;}}
if(this.config.lang&&this.config.lang.length>0&&!(Zapatec.Langs[this.config.langId]&&Zapatec.Langs[this.config.langId][this.langStr])){Zapatec.Log({description:this.config.lang+(this.config.langCountryCode?" and country code "+this.config.langCountryCode:"")+(this.config.langEncoding?" and encoding "+this.config.langEncoding:"")});this.config.lang=null;this.config.langEncoding=null;this.langStr=null;}};Zapatec.Widget.prototype.configure=function(oArg){this.defineConfigOption('theme','default');var sPath=this.constructor.path;if(typeof sPath!='undefined'){this.defineConfigOption('themePath',sPath+'../themes/');}else{this.defineConfigOption('themePath','../themes/');}
this.defineConfigOption('asyncTheme',false);this.defineConfigOption('source');this.defineConfigOption('sourceType');this.defineConfigOption('callbackSource');this.defineConfigOption('asyncSource',true);this.defineConfigOption('reliableSource',true);this.defineConfigOption('callbackConvertSource');this.defineConfigOption('eventListeners',{});this.defineConfigOption('langId');this.defineConfigOption('lang');this.defineConfigOption('langCountryCode');this.defineConfigOption('langEncoding');if(oArg){var oConfig=this.config;for(var sOption in oArg){if(typeof oConfig[sOption]!='undefined'){oConfig[sOption]=oArg[sOption];}else{Zapatec.Log({description:"Unknown config option: "+sOption});}}}};Zapatec.Widget.prototype.getConfiguration=function(){return this.config;};Zapatec.Widget.all=[];Zapatec.Widget.getWidgetById=function(iId){return Zapatec.Widget.all[iId];};Zapatec.Widget.prototype.addCircularRef=function(oElement,sProperty){if(!this.widgetCircularRefs){this.widgetCircularRefs=[];}
this.widgetCircularRefs.push([oElement,sProperty]);};Zapatec.Widget.prototype.createProperty=function(oElement,sProperty,val){oElement[sProperty]=val;this.addCircularRef(oElement,sProperty);};Zapatec.Widget.prototype.removeCircularRefs=function(){if(!this.widgetCircularRefs){return;}
for(var iRef=this.widgetCircularRefs.length-1;iRef>=0;iRef--){var oRef=this.widgetCircularRefs[iRef];oRef[0][oRef[1]]=null;oRef[0]=null;}};Zapatec.Widget.prototype.discard=function(){Zapatec.Widget.all[this.id]=null;this.removeCircularRefs();};Zapatec.Widget.removeCircularRefs=function(){for(var iWidget=Zapatec.Widget.all.length-1;iWidget>=0;iWidget--){var oWidget=Zapatec.Widget.all[iWidget];if(oWidget&&oWidget.removeCircularRefs){oWidget.removeCircularRefs();}}};Zapatec.Utils.addEvent(window,'unload',Zapatec.Widget.removeCircularRefs);Zapatec.Widget.prototype.defineConfigOption=function(sOption,val){if(typeof this.config[sOption]=='undefined'){if(typeof val=='undefined'){this.config[sOption]=null;}else{this.config[sOption]=val;}}};Zapatec.Widget.prototype.addUserEventListeners=function(){var oListeners=this.config.eventListeners;var fListener,iListeners,iListener;for(var sEvent in oListeners){if(oListeners.hasOwnProperty(sEvent)){vListener=oListeners[sEvent];if(vListener instanceof Array){iListeners=vListener.length;for(iListener=0;iListener<iListeners;iListener++){this.addEventListener(sEvent,vListener[iListener]);}}else{this.addEventListener(sEvent,vListener);}}}};Zapatec.Widget.prototype.addStandardEventListeners=function(){this.addEventListener('loadThemeError',Zapatec.Widget.loadThemeError);};Zapatec.Widget.loadThemeError=function(oError){var sDescription="Can't load theme.";if(oError&&oError.errorDescription){sDescription+=' '+oError.errorDescription;}
Zapatec.Log({description:sDescription});};Zapatec.Widget.prototype.loadTheme=function(){var oConfig=this.config;if(typeof oConfig.theme=='string'&&oConfig.theme.length){var iPos=oConfig.theme.lastIndexOf('/');if(iPos>=0){iPos++;oConfig.themePath=oConfig.theme.substring(0,iPos);oConfig.theme=oConfig.theme.substring(iPos);}
iPos=oConfig.theme.lastIndexOf('.');if(iPos>=0){oConfig.theme=oConfig.theme.substring(0,iPos);}
oConfig.theme=oConfig.theme.toLowerCase();if(oConfig.theme=='auto'){var sUserAgent=navigator.userAgent;if(sUserAgent.indexOf('Windows NT 6')!=-1){oConfig.theme='winvista';}else if(sUserAgent.indexOf('Windows NT 5')!=-1){oConfig.theme='winxp';}else if(sUserAgent.indexOf('Win')!=-1){oConfig.theme='win2k';}else if(sUserAgent.indexOf('Mac')!=-1){oConfig.theme='macosx';}else{oConfig.theme='default';}}}else{oConfig.theme='';}
if(oConfig.theme){this.fireEvent('loadThemeStart');this.themeLoaded=false;var oWidget=this;var sUrl=oConfig.themePath+oConfig.theme+'.css';Zapatec.Transport.loadCss({url:sUrl,async:oConfig.asyncTheme,onLoad:function(){oWidget.fireEvent('loadThemeEnd');oWidget.themeLoaded=true;},onError:function(oError){oWidget.fireEvent('loadThemeEnd');oWidget.fireEvent('loadThemeError',oError);oWidget.themeLoaded=true;}});}}
Zapatec.Widget.prototype.getClassName=function(oArg){var aClassName=[];if(oArg&&oArg.prefix){aClassName.push(oArg.prefix);}
var sTheme=this.config.theme;if(sTheme!=''){aClassName.push(sTheme.charAt(0).toUpperCase());aClassName.push(sTheme.substr(1));}
if(oArg&&oArg.suffix){aClassName.push(oArg.suffix);}
return aClassName.join('');};Zapatec.Widget.prototype.formElementId=function(oArg){var aId=[];if(oArg&&oArg.prefix){aId.push(oArg.prefix);}else{aId.push('zpWidget');}
aId.push(this.id);if(oArg&&oArg.suffix){aId.push(oArg.suffix);}else{aId.push('-');}
if(typeof this.widgetUniqueIdCounter=='undefined'){this.widgetUniqueIdCounter=0;}else{this.widgetUniqueIdCounter++;}
aId.push(this.widgetUniqueIdCounter);return aId.join('');};Zapatec.Widget.prototype.showContainer=function(effects,animSpeed,onFinish){return this.showHideContainer(effects,animSpeed,onFinish,true);}
Zapatec.Widget.prototype.hideContainer=function(effects,animSpeed,onFinish){return this.showHideContainer(effects,animSpeed,onFinish,false);}
Zapatec.Widget.prototype.showHideContainer=function(effects,animSpeed,onFinish,show){if(this.container==null){return null;}
if(effects&&effects.length>0&&typeof(Zapatec.Effects)=='undefined'){var self=this;Zapatec.Transport.loadJS({url:Zapatec.zapatecPath+'../zpeffects/src/effects.js',onLoad:function(){self.showHideContainer(effects,animSpeed,onFinish,show);}});return false;}
if(animSpeed==null&&isNaN(parseInt(animSpeed))){animSpeed=5;}
if(!effects||effects.length==0){if(show){this.container.style.display=this.originalContainerDisplay;this.originalContainerDisplay=null;}else{this.originalContainerDisplay=this.container.style.display;this.container.style.display='none';}
if(onFinish){onFinish();}}else{if(show){Zapatec.Effects.show(this.container,animSpeed,effects,onFinish);}else{Zapatec.Effects.hide(this.container,animSpeed,effects,onFinish);}}
return true;}
Zapatec.Widget.prototype.loadData=function(oArg){var oConfig=this.config;if(typeof oConfig.callbackSource=='function'){var oSource=oConfig.callbackSource(oArg);if(oSource){if(typeof oSource.source!='undefined'){oConfig.source=oSource.source;}
if(typeof oSource.sourceType!='undefined'){oConfig.sourceType=oSource.sourceType;}}}
var vSource=oConfig.source;if(typeof oConfig.callbackConvertSource=='function'){vSource=oConfig.callbackConvertSource(vSource);}
var sSourceType=oConfig.sourceType;if(vSource!=null&&sSourceType!=null){sSourceType=sSourceType.toLowerCase();if(sSourceType=='html'){this.fireEvent('loadDataStart');this.loadDataHtml(Zapatec.Widget.getElementById(vSource));this.fireEvent('loadDataEnd');}else if(sSourceType=='html/text'){this.fireEvent('loadDataStart');this.loadDataHtmlText(vSource);this.fireEvent('loadDataEnd');}else if(sSourceType=='html/url'){this.fireEvent('fetchSourceStart');var oWidget=this;Zapatec.Transport.fetch({url:vSource,async:oConfig.asyncSource,onLoad:function(oRequest){oWidget.fireEvent('fetchSourceEnd');oWidget.fireEvent('loadDataStart');oWidget.loadDataHtmlText(oRequest.responseText);oWidget.fireEvent('loadDataEnd');},onError:function(oError){oWidget.fireEvent('fetchSourceError',oError);oWidget.fireEvent('fetchSourceEnd');oWidget.fireEvent('loadDataEnd');}});}else if(sSourceType=='json'){this.fireEvent('loadDataStart');if(typeof vSource=='object'){this.loadDataJson(vSource);}else if(oConfig.reliableSource){this.loadDataJson(eval(['(',vSource,')'].join('')));}else{this.loadDataJson(Zapatec.Transport.parseJson({strJson:vSource}));}
this.fireEvent('loadDataEnd');}else if(sSourceType=='json/url'){this.fireEvent('fetchSourceStart');var oWidget=this;Zapatec.Transport.fetchJsonObj({url:vSource,async:oConfig.asyncSource,reliable:oConfig.reliableSource,onLoad:function(oResult){oWidget.fireEvent('fetchSourceEnd');oWidget.fireEvent('loadDataStart');oWidget.loadDataJson(oResult);oWidget.fireEvent('loadDataEnd');},onError:function(oError){oWidget.fireEvent('fetchSourceError',oError);oWidget.fireEvent('fetchSourceEnd');oWidget.fireEvent('loadDataEnd');}});}else if(sSourceType=='xml'){this.fireEvent('loadDataStart');if(typeof vSource=='object'){this.loadDataXml(vSource);}else{this.loadDataXml(Zapatec.Transport.parseXml({strXml:vSource}));}
this.fireEvent('loadDataEnd');}else if(sSourceType=='xml/url'){this.fireEvent('fetchSourceStart');var oWidget=this;Zapatec.Transport.fetchXmlDoc({url:vSource,async:oConfig.asyncSource,onLoad:function(oResult){oWidget.fireEvent('fetchSourceEnd');oWidget.fireEvent('loadDataStart');oWidget.loadDataXml(oResult);oWidget.fireEvent('loadDataEnd');},onError:function(oError){oWidget.fireEvent('fetchSourceError',oError);oWidget.fireEvent('fetchSourceEnd');oWidget.fireEvent('loadDataEnd');}});}}else{this.fireEvent('loadDataStart');this.loadDataHtml(Zapatec.Widget.getElementById(vSource));this.fireEvent('loadDataEnd');}};Zapatec.Widget.prototype.loadDataHtml=function(oSource){};Zapatec.Widget.prototype.loadDataHtmlText=function(sSource){var oTempContainer=Zapatec.Transport.parseHtml(sSource);this.loadDataHtml(oTempContainer.firstChild);};Zapatec.Widget.prototype.loadDataJson=function(oSource){};Zapatec.Widget.prototype.loadDataXml=function(oSource){};Zapatec.Widget.prototype.receiveData=function(oArg){if(!oArg){oArg={};}
this.dataSender=oArg.widget;this.fireEvent('receiveData',oArg);};Zapatec.Widget.prototype.replyData=function(){return null;};Zapatec.Widget.prototype.replyDataCancel=function(){this.fireEvent('replyDataCancel');if(typeof this.hide=='function'){this.hide();}
this.dataSender=null;};Zapatec.Widget.prototype.replyDataReturn=function(oArg){if(!oArg){oArg={};}
this.fireEvent('replyDataReturn',oArg);var oWidget=oArg.widget;if(!oWidget){oWidget=this.dataSender;}
if(!oWidget||typeof oWidget.acceptData!='function'){return;}
oWidget.acceptData({widget:this,data:this.replyData()});this.replyDataCancel();};Zapatec.Widget.prototype.acceptData=function(oArg){this.fireEvent('acceptData',oArg);};Zapatec.Widget.prototype.initLang=function(){this.langStr=this.config.lang;if(this.config.langCountryCode&&this.config.langCountryCode.length>0){this.langStr+="_"+this.config.langCountryCode;}
if(this.config.langEncoding&&this.config.langEncoding.length>0){this.langStr+="-"+this.config.langEncoding;}
if(this.config.lang&&this.config.lang.length>0&&!(Zapatec.Langs[this.config.langId]&&Zapatec.Langs[this.config.langId][this.langStr])){Zapatec.Log({description:"No language data found for language "+
this.config.lang+(this.config.langCountryCode?" and country code "+this.config.langCountryCode:"")+(this.config.langEncoding?" and encoding "+this.config.langEncoding:"")});this.config.lang=null;this.config.langCountryCode=null;this.config.langEncoding=null;this.langStr=null;}};Zapatec.Widget.prototype.getMessage=function(key){if(arguments.length==0){return null;}
if(!Zapatec.Langs[this.config.langId]||!Zapatec.Langs[this.config.langId][this.langStr]||!Zapatec.Langs[this.config.langId][this.langStr][key]){return key;}
var res=Zapatec.Langs[this.config.langId][this.langStr][key];if(arguments.length>1&&typeof(res)=="string"){for(var ii=1;ii<arguments.length;ii++){var re=new RegExp("(^|([^\\\\]))\%"+ii);res=res.replace(re,"$2"+arguments[ii]);}}
return res;};Zapatec.Widget.callMethod=function(iWidgetId,sMethod){var oWidget=Zapatec.Widget.getWidgetById(iWidgetId);if(oWidget&&typeof oWidget[sMethod]=='function'){var aArgs=[].slice.call(arguments,2);return oWidget[sMethod].apply(oWidget,aArgs);}};Zapatec.Widget.getElementById=function(element){if(typeof element=='string'){return document.getElementById(element);}
return element;};Zapatec.Widget.getStyle=function(element){var style=element.getAttribute('style')||'';if(typeof style=='string'){return style;}
return style.cssText;};;
/*
 *
 * Copyright (c) 2004-2005 by Zapatec, Inc.
 * http://www.zapatec.com
 * 1700 MLK Way, Berkeley, California,
 * 94709, U.S.A.
 * All rights reserved.
 *
 *
 */
if (!window.Zapatec || (Zapatec && !Zapatec.include)) { alert("You need to include zapatec.js file!"); } else { Zapatec.calendarPath = Zapatec.getPath("Zapatec.CalendarWidget"); } window.calendar = null;		/**< global object that remembers the calendar */ // initialize the preferences object; // embed it in a try/catch so we don't have any surprises try { Zapatec.Calendar.loadPrefs(); } catch(e) {};

Zapatec.Calendar=function(firstDayOfWeek,dateStr,onSelected,onClose){if(typeof this.id=='undefined'){var iId=0;while(Zapatec.Widget.all[iId]){iId++;}
this.id=iId;Zapatec.Widget.all[iId]=this;}
this.bShowHistoryEvent=false;this.activeDiv=null;this.currentDateEl=null;this.getDateStatus=null;this.getDateToolTip=null;this.getDateText=null;this.timeout=null;this.onSelected=onSelected||null;this.onClose=onClose||null;this.onFDOW=null;this.dragging=false;this.hidden=false;this.minYear=1970;this.maxYear=2050;this.minMonth=0;this.maxMonth=11;this.dateFormat=Zapatec.Calendar.i18n("DEF_DATE_FORMAT");this.ttDateFormat=Zapatec.Calendar.i18n("TT_DATE_FORMAT");this.historyDateFormat="%B %d, %Y";this.isPopup=true;this.weekNumbers=true;this.noGrab=false;if(Zapatec.Calendar.prefs.fdow||(Zapatec.Calendar.prefs.fdow==0)){this.firstDayOfWeek=parseInt(Zapatec.Calendar.prefs.fdow,10);}
else{var fd=0;if(typeof firstDayOfWeek=="number"){fd=firstDayOfWeek;}else if(typeof Zapatec.Calendar._FD=='number'){fd=Zapatec.Calendar._FD;}
this.firstDayOfWeek=fd;}
this.showsOtherMonths=false;this.dateStr=dateStr;this.showsTime=false;this.sortOrder="asc";this.time24=true;this.timeInterval=null;this.yearStep=2;this.hiliteToday=true;this.multiple=null;this.table=null;this.element=null;this.tbody=new Array();this.firstdayname=null;this.monthsCombo=null;this.hilitedMonth=null;this.activeMonth=null;this.yearsCombo=null;this.hilitedYear=null;this.activeYear=null;this.histCombo=null;this.hilitedHist=null;this.dateClicked=false;this.numberMonths=1;this.controlMonth=1;this.vertical=false;this.monthsInRow=1;this.titles=new Array();this.rowsOfDayNames=new Array();this.helpButton=true;this.disableFdowClick=true;this.disableDrag=false;this.yearNav=true;this.closeButton=true;Zapatec.Calendar._initSDN();};Zapatec.Calendar._initSDN=function(){if(typeof Zapatec.Calendar._TT._SDN=="undefined"){if(typeof Zapatec.Calendar._TT._SDN_len=="undefined")
Zapatec.Calendar._TT._SDN_len=3;var ar=[];for(var i=8;i>0;){ar[--i]=Zapatec.Calendar._TT._DN[i].substr(0,Zapatec.Calendar._TT._SDN_len);}
Zapatec.Calendar._TT._SDN=ar;if(typeof Zapatec.Calendar._TT._SMN_len=="undefined")
Zapatec.Calendar._TT._SMN_len=3;ar=[];for(var i=12;i>0;){ar[--i]=Zapatec.Calendar._TT._MN[i].substr(0,Zapatec.Calendar._TT._SMN_len);}
Zapatec.Calendar._TT._SMN=ar;}
if(typeof Zapatec.Calendar._TT._AMPM=="undefined"){Zapatec.Calendar._TT._AMPM={am:"am",pm:"pm"};}};Zapatec.Calendar.i18n=function(str,type){var tr='';if(!type){if(Zapatec.Calendar._TT)
tr=Zapatec.Calendar._TT[str];if(!tr&&Zapatec.Calendar._TT_en)
tr=Zapatec.Calendar._TT_en[str];}else switch(type){case"dn":tr=Zapatec.Calendar._TT._DN[str];break;case"sdn":tr=Zapatec.Calendar._TT._SDN[str];break;case"mn":tr=Zapatec.Calendar._TT._MN[str];break;case"smn":tr=Zapatec.Calendar._TT._SMN[str];break;case"ampm":tr=Zapatec.Calendar._TT._AMPM[str];break;}
if(!tr)tr=""+str;return tr;};Zapatec.Calendar._C=null;Zapatec.Calendar.prefs={fdow:null,history:"",sortOrder:"asc",hsize:9};Zapatec.Calendar.savePrefs=function(){Zapatec.Utils.writeCookie("ZP_CAL",Zapatec.Utils.makePref(this.prefs),null,'/',30);};Zapatec.Calendar.loadPrefs=function(){var txt=Zapatec.Utils.getCookie("ZP_CAL"),tmp;if(txt){tmp=Zapatec.Utils.loadPref(txt);if(tmp)
Zapatec.Utils.mergeObjects(this.prefs,tmp);}};Zapatec.Calendar._add_evs=function(el){var C=Zapatec.Calendar;el.onmouseover=C.dayMouseOver;el.onmousedown=C.dayMouseDown;el.onmouseout=C.dayMouseOut;if(Zapatec.is_ie)
el.ondblclick=C.dayMouseDblClick;};Zapatec.Calendar._del_evs=function(el){el.onmouseover=null;el.onmousedown=null;el.onmouseout=null;if(Zapatec.is_ie)
el.ondblclick=null;};Zapatec.Calendar.findMonth=function(el){if(typeof el.month!="undefined"){return el;}else if(el.parentNode&&typeof el.parentNode.month!="undefined"){return el.parentNode;}
return null;};Zapatec.Calendar.findHist=function(el){if(typeof el.histDate!="undefined"){return el;}else if(el.parentNode&&typeof el.parentNode.histDate!="undefined"){return el.parentNode;}
return null;};Zapatec.Calendar.findYear=function(el){if(typeof el.year!="undefined"){return el;}else if(el.parentNode&&typeof el.parentNode.year!="undefined"){return el.parentNode;}
return null;};Zapatec.Calendar.showMonthsCombo=function(){var cal=Zapatec.Calendar._C;if(!cal){return false;}
var cd=cal.activeDiv;var mc=cal.monthsCombo;var date=cal.date,MM=cal.date.getMonth(),YY=cal.date.getFullYear(),min=(YY==cal.minYear),max=(YY==cal.maxYear);for(var i=mc.firstChild;i;i=i.nextSibling){var m=i.month;Zapatec.Utils.removeClass(i,"hilite");Zapatec.Utils.removeClass(i,"active");Zapatec.Utils.removeClass(i,"disabled");i.disabled=false;if((min&&m<cal.minMonth)||(max&&m>cal.maxMonth)){Zapatec.Utils.addClass(i,"disabled");i.disabled=true;}
if(m==MM)
Zapatec.Utils.addClass(cal.activeMonth=i,"active");}
var s=mc.style;s.display="block";if(cd.navtype<0)
s.left=cd.offsetLeft+"px";else{var mcw=mc.offsetWidth;if(typeof mcw=="undefined")
mcw=50;s.left=(cd.offsetLeft+cd.offsetWidth-mcw)+"px";}
s.top=(cd.offsetTop+cd.offsetHeight)+"px";cal.updateWCH(mc);};Zapatec.Calendar.showHistoryCombo=function(){var cal=Zapatec.Calendar._C,a,h,i,cd,hc,s,tmp,div;if(!cal)
return false;hc=cal.histCombo;while(hc.firstChild)
hc.removeChild(hc.lastChild);if(Zapatec.Calendar.prefs.history){a=Zapatec.Calendar.prefs.history.split(/,/);i=0;while(tmp=a[i++]){tmp=tmp.split(/\//);h=Zapatec.Utils.createElement("div");h.className=Zapatec.is_ie?"label-IEfix":"label";h.id="zpCal"+cal.id+"HistoryDropdownItem"+(i-1);h.histDate=new Date(parseInt(tmp[0],10),parseInt(tmp[1],10)-1,parseInt(tmp[2],10),tmp[3]?parseInt(tmp[3],10):0,tmp[4]?parseInt(tmp[4],10):0);h.appendChild(window.document.createTextNode(h.histDate.print(cal.historyDateFormat)));hc.appendChild(h);if(h.histDate.dateEqualsTo(cal.date))
Zapatec.Utils.addClass(h,"active");}}
cd=cal.activeDiv;s=hc.style;s.display="block";s.left=Math.floor(cd.offsetLeft+(cd.offsetWidth-hc.offsetWidth)/2)+"px";s.top=(cd.offsetTop+cd.offsetHeight)+"px";cal.updateWCH(hc);cal.bEventShowHistory=true;};Zapatec.Calendar.showYearsCombo=function(fwd){var cal=Zapatec.Calendar._C;if(!cal){return false;}
var cd=cal.activeDiv;var yc=cal.yearsCombo;if(cal.hilitedYear){Zapatec.Utils.removeClass(cal.hilitedYear,"hilite");}
if(cal.activeYear){Zapatec.Utils.removeClass(cal.activeYear,"active");}
cal.activeYear=null;var Y=cal.date.getFullYear()+(fwd?1:-1);var yr=yc.firstChild;var show=false;for(var i=12;i>0;--i){if(Y>=cal.minYear&&Y<=cal.maxYear){yr.firstChild.data=Y;yr.year=Y;yr.style.display="block";show=true;}else{yr.style.display="none";}
yr=yr.nextSibling;Y+=fwd?cal.yearStep:-cal.yearStep;}
if(show){var s=yc.style;s.display="block";if(cd.navtype<0)
s.left=cd.offsetLeft+"px";else{var ycw=yc.offsetWidth;if(typeof ycw=="undefined")
ycw=50;s.left=(cd.offsetLeft+cd.offsetWidth-ycw)+"px";}
s.top=(cd.offsetTop+cd.offsetHeight)+"px";}
cal.updateWCH(yc);};Zapatec.Calendar.tableMouseUp=function(ev){var cal=Zapatec.Calendar._C;if(!cal){return false;}
if(cal.timeout){clearTimeout(cal.timeout);}
var el=cal.activeDiv;if(!el){return false;}
var target=Zapatec.Utils.getTargetElement(ev);if(typeof(el.navtype)=="undefined"){while(target&&!target.calendar){target=target.parentNode;}}
ev||(ev=window.event);Zapatec.Utils.removeClass(el,"active");if(target==el||target.parentNode==el){Zapatec.Calendar.cellClick(el,ev);}
var mon=Zapatec.Calendar.findMonth(target);var date=null;if(mon){if(!mon.disabled){date=new Date(cal.date);if(mon.month!=date.getMonth()){date.setMonth(mon.month);cal.setDate(date,true);cal.dateClicked=false;cal.callHandler();}}}else{var year=Zapatec.Calendar.findYear(target);if(year){date=new Date(cal.date);if(year.year!=date.getFullYear()){date.setFullYear(year.year);cal.setDate(date,true);cal.dateClicked=false;cal.callHandler();}}else{var hist=Zapatec.Calendar.findHist(target);if(hist&&!hist.histDate.dateEqualsTo(cal.date)){date=new Date(hist.histDate);cal._init(cal.firstDayOfWeek,cal.date=date);cal.dateClicked=false;cal.callHandler();cal.updateHistory();}}}
Zapatec.Utils.removeEvent(window.document,"mouseup",Zapatec.Calendar.tableMouseUp);Zapatec.Utils.removeEvent(window.document,"mouseover",Zapatec.Calendar.tableMouseOver);Zapatec.Utils.removeEvent(window.document,"mousemove",Zapatec.Calendar.tableMouseOver);cal._hideCombos();Zapatec.Calendar._C=null;return Zapatec.Utils.stopEvent(ev);};Zapatec.Calendar.tableMouseOver=function(ev){var cal=Zapatec.Calendar._C;if(!cal){return;}
var el=cal.activeDiv;var target=Zapatec.Utils.getTargetElement(ev);if(target==el||target.parentNode==el){Zapatec.Utils.addClass(el,"hilite active");Zapatec.Utils.addClass(el.parentNode,"rowhilite");}else{if(typeof el.navtype=="undefined"||(el.navtype!=50&&((el.navtype==0&&!cal.histCombo)||Math.abs(el.navtype)>2)))
Zapatec.Utils.removeClass(el,"active");Zapatec.Utils.removeClass(el,"hilite");Zapatec.Utils.removeClass(el.parentNode,"rowhilite");}
ev||(ev=window.event);if(el.navtype==50&&target!=el){var pos=Zapatec.Utils.getAbsolutePos(el);var w=el.offsetWidth;var x=ev.clientX;var dx;var decrease=true;if(x>pos.x+w){dx=x-pos.x-w;decrease=false;}else
dx=pos.x-x;if(dx<0)dx=0;var range=el._range;var current=el._current;var date=cal.currentDate;var pm=(date.getHours()>=12);var old=el.firstChild.data;var count=Math.floor(dx/10)%range.length;for(var i=range.length;--i>=0;)
if(range[i]==current)
break;while(count-->0)
if(decrease){if(--i<0){i=range.length-1;}}else if(++i>=range.length){i=0;}
if(cal.getDateStatus){var minute=null;var hour=null;var new_date=new Date(date);if(el.className.indexOf("ampm",0)!=-1){minute=date.getMinutes();if(old!=range[i]){hour=(range[i]==Zapatec.Calendar.i18n("pm","ampm"))?((date.getHours()==0)?(12):(date.getHours()+12)):(date.getHours()-12);}else{hour=date.getHours();}
new_date.setHours(hour);}
if(el.className.indexOf("hour",0)!=-1){minute=date.getMinutes();hour=(!cal.time24)?((pm)?((range[i]!=12)?(parseInt(range[i],10)+12):(12)):((range[i]!=12)?(range[i]):(0))):(range[i]);new_date.setHours(hour);}
if(el.className.indexOf("minute",0)!=-1){hour=date.getHours();minute=range[i];new_date.setMinutes(minute);}}
var status=false;if(cal.getDateStatus){status=cal.getDateStatus(new_date,date.getFullYear(),date.getMonth(),date.getDate(),parseInt(hour,10),parseInt(minute,10));}
if(status==false){if(!((!cal.time24)&&(range[i]==Zapatec.Calendar.i18n("pm","ampm"))&&(hour>23))){el.firstChild.data=range[i];}}
cal.onUpdateTime();}
var mon=Zapatec.Calendar.findMonth(target);if(mon){if(!mon.disabled){if(mon.month!=cal.date.getMonth()){if(cal.hilitedMonth){Zapatec.Utils.removeClass(cal.hilitedMonth,"hilite");}
Zapatec.Utils.addClass(mon,"hilite");cal.hilitedMonth=mon;}else if(cal.hilitedMonth){Zapatec.Utils.removeClass(cal.hilitedMonth,"hilite");}}}else{if(cal.hilitedMonth){Zapatec.Utils.removeClass(cal.hilitedMonth,"hilite");}
var year=Zapatec.Calendar.findYear(target);if(year){if(year.year!=cal.date.getFullYear()){if(cal.hilitedYear){Zapatec.Utils.removeClass(cal.hilitedYear,"hilite");}
Zapatec.Utils.addClass(year,"hilite");cal.hilitedYear=year;}else if(cal.hilitedYear){Zapatec.Utils.removeClass(cal.hilitedYear,"hilite");}}else{if(cal.hilitedYear){Zapatec.Utils.removeClass(cal.hilitedYear,"hilite");}
var hist=Zapatec.Calendar.findHist(target);if(hist){if(!hist.histDate.dateEqualsTo(cal.date)){if(cal.hilitedHist){Zapatec.Utils.removeClass(cal.hilitedHist,"hilite");}
Zapatec.Utils.addClass(hist,"hilite");cal.hilitedHist=hist;}else if(cal.hilitedHist){Zapatec.Utils.removeClass(cal.hilitedHist,"hilite");}}else if(cal.hilitedHist){Zapatec.Utils.removeClass(cal.hilitedHist,"hilite");}}}
return Zapatec.Utils.stopEvent(ev);};Zapatec.Calendar.tableMouseDown=function(ev){if(Zapatec.Utils.getTargetElement(ev)==Zapatec.Utils.getElement(ev)){return Zapatec.Utils.stopEvent(ev);}};Zapatec.Calendar.calDragIt=function(ev){ev||(ev=window.event);var cal=Zapatec.Calendar._C;if(!cal){Zapatec.Calendar.calDragEnd();}
if(!cal.disableDrag){if(!(cal&&cal.dragging)){return false;}
var posX=ev.clientX+window.document.body.scrollLeft;var posY=ev.clientY+window.document.body.scrollTop;cal.hideShowCovered();var st=cal.element.style,L=posX-cal.xOffs,T=posY-cal.yOffs;st.left=L+"px";st.top=T+"px";Zapatec.Utils.setupWCH(cal.WCH,L,T);}
return Zapatec.Utils.stopEvent(ev);};Zapatec.Calendar.calDragEnd=function(ev){var cal=Zapatec.Calendar._C;Zapatec.Utils.removeEvent(window.document,"mousemove",Zapatec.Calendar.calDragIt);Zapatec.Utils.removeEvent(window.document,"mouseover",Zapatec.Calendar.calDragIt);Zapatec.Utils.removeEvent(window.document,"mouseup",Zapatec.Calendar.calDragEnd);if(!cal){return false;}
cal.dragging=false;Zapatec.Calendar.tableMouseUp(ev);cal.hideShowCovered();};Zapatec.Calendar.dayMouseDown=function(ev){var canDrag=true;var el=Zapatec.Utils.getElement(ev);if(el.className.indexOf("disabled")!=-1||el.className.indexOf("true")!=-1){return false;}
var cal=el.calendar;while(!cal){el=el.parentNode;cal=el.calendar;}
cal.bEventShowHistory=false;cal.activeDiv=el;Zapatec.Calendar._C=cal;if(el.navtype!=300){if(el.navtype==50){if(!((cal.timeInterval==null)||((cal.timeInterval<60)&&(el.className.indexOf("hour",0)!=-1)))){canDrag=false;}
el._current=el.firstChild.data;if(canDrag){Zapatec.Utils.addEvent(window.document,"mousemove",Zapatec.Calendar.tableMouseOver);}}else{if(((el.navtype==201)||(el.navtype==202))&&(cal.timeInterval>30)&&(el.timePart.className.indexOf("minute",0)!=-1)){canDrag=false;}
if(canDrag){Zapatec.Utils.addEvent(window.document,Zapatec.is_ie5?"mousemove":"mouseover",Zapatec.Calendar.tableMouseOver);}}
if(canDrag){Zapatec.Utils.addClass(el,"hilite active");}
Zapatec.Utils.addEvent(window.document,"mouseup",Zapatec.Calendar.tableMouseUp);}else if(cal.isPopup){cal._dragStart(ev);}else{Zapatec.Calendar._C=null;}
if(el.navtype==-1||el.navtype==1){if(cal.timeout)clearTimeout(cal.timeout);cal.timeout=setTimeout("Zapatec.Calendar.showMonthsCombo()",250);}else if(el.navtype==-2||el.navtype==2){if(cal.timeout)clearTimeout(cal.timeout);cal.timeout=setTimeout((el.navtype>0)?"Zapatec.Calendar.showYearsCombo(true)":"Zapatec.Calendar.showYearsCombo(false)",250);}else if(el.navtype==0&&Zapatec.Calendar.prefs.history){if(cal.timeout)clearTimeout(cal.timeout);cal.timeout=setTimeout("Zapatec.Calendar.showHistoryCombo()",250);}else{cal.timeout=null;}
return Zapatec.Utils.stopEvent(ev);};Zapatec.Calendar.dayMouseDblClick=function(ev){Zapatec.Calendar.cellClick(Zapatec.Utils.getElement(ev),ev||window.event);if(Zapatec.is_ie)
window.document.selection.empty();};Zapatec.Calendar.dayMouseOver=function(ev){var el=Zapatec.Utils.getElement(ev),caldate=el.caldate;while(!el.calendar){el=el.parentNode;caldate=el.caldate;}
var cal=el.calendar;var cel=el.timePart;if(caldate){caldate=new Date(caldate[0],caldate[1],caldate[2]);if(caldate.getDate()!=el.caldate[2])caldate.setDate(el.caldate[2]);}
if(Zapatec.Utils.isRelated(el,ev)||Zapatec.Calendar._C||el.className.indexOf("disabled")!=-1||el.className.indexOf("true")!=-1){return false;}
if(el.ttip){if(el.ttip.substr(0,1)=="_"){el.ttip=caldate.print(el.calendar.ttDateFormat)+el.ttip.substr(1);}
el.calendar.showHint(el.ttip);}
if(el.navtype!=300){if(!((cal.timeInterval==null)||(el.className.indexOf("ampm",0)!=-1)||((cal.timeInterval<60)&&(el.className.indexOf("hour",0)!=-1)))&&(el.navtype==50)){return Zapatec.Utils.stopEvent(ev);}
if(((el.navtype==201)||(el.navtype==202))&&(cal.timeInterval>30)&&(cel.className.indexOf("minute",0)!=-1)){return Zapatec.Utils.stopEvent(ev);}
Zapatec.Utils.addClass(el,"hilite");if(caldate){Zapatec.Utils.addClass(el.parentNode,"rowhilite");}}
return Zapatec.Utils.stopEvent(ev);};Zapatec.Calendar.dayMouseOut=function(ev){var el=Zapatec.Utils.getElement(ev);while(!el.calendar){el=el.parentNode;caldate=el.caldate;}
if(Zapatec.Utils.isRelated(el,ev)||Zapatec.Calendar._C||el.className.indexOf("disabled")!=-1||el.className.indexOf("true")!=-1)
return false;Zapatec.Utils.removeClass(el,"hilite");if(el.caldate)
Zapatec.Utils.removeClass(el.parentNode,"rowhilite");if(el.calendar)
el.calendar.showHint(Zapatec.Calendar.i18n("SEL_DATE"));return Zapatec.Utils.stopEvent(ev);};Zapatec.Calendar.cellClick=function(el,ev){var cal=el.calendar;var closing=false;var newdate=false;var date=null;while(!cal){el=el.parentNode;cal=el.calendar;}
if(el.className.indexOf("disabled")!=-1||el.className.indexOf("true")!=-1){return false;}
if(typeof el.navtype=="undefined"){if(cal.currentDateEl){Zapatec.Utils.removeClass(cal.currentDateEl,"selected");Zapatec.Utils.addClass(el,"selected");closing=(cal.currentDateEl==el);if(!closing){cal.currentDateEl=el;}}
var tmpDate=new Date(el.caldate[0],el.caldate[1],el.caldate[2]);if(tmpDate.getDate()!=el.caldate[2]){tmpDate.setDate(el.caldate[2]);}
cal.date.setDateOnly(tmpDate);cal.currentDate.setDateOnly(tmpDate);date=cal.date;cal.dateClicked=true;if(cal.multiple)
cal._toggleMultipleDate(new Date(date));newdate=true;if(el.otherMonth)
cal._init(cal.firstDayOfWeek,date);cal.onSetTime();}else{if(el.navtype==200){Zapatec.Utils.removeClass(el,"hilite");cal.callCloseHandler();return;}
date=new Date(cal.date);if(el.navtype==0&&!cal.bEventShowHistory)
date.setDateOnly(new Date());cal.dateClicked=false;var year=date.getFullYear();var mon=date.getMonth();function setMonth(m){var day=date.getDate();var max=date.getMonthDays(m);if(day>max){date.setDate(max);}
date.setMonth(m);};switch(el.navtype){case 400:Zapatec.Utils.removeClass(el,"hilite");var text=Zapatec.Calendar.i18n("ABOUT");if(typeof text!="undefined"){text+=cal.showsTime?Zapatec.Calendar.i18n("ABOUT_TIME"):"";}else{text="Help and about box text is not translated into this language.\n"+"If you know this language and you feel generous please update\n"+"the corresponding file in \"lang\" subdir to match calendar-en.js\n"+"and send it back to <support@zapatec.com> to get it into the distribution  ;-)\n\n"+"Thank you!\n"+"http://www.zapatec.com\n";}
alert(text);return;case-2:if(year>cal.minYear){date.setFullYear(year-1);}
break;case-1:if(mon>0){setMonth(mon-1);}else if(year-->cal.minYear){date.setFullYear(year);setMonth(11);}
break;case 1:if(mon<11){setMonth(mon+1);}else if(year<cal.maxYear){date.setFullYear(year+1);setMonth(0);}
break;case 2:if(year<cal.maxYear){date.setFullYear(year+1);}
break;case 100:cal.setFirstDayOfWeek(el.fdow);Zapatec.Calendar.prefs.fdow=cal.firstDayOfWeek;Zapatec.Calendar.savePrefs();if(cal.onFDOW)
cal.onFDOW(cal.firstDayOfWeek);return;case 50:var date=cal.currentDate;if(el.className.indexOf("ampm",0)>=0);else
if(!((cal.timeInterval==null)||((cal.timeInterval<60)&&(el.className.indexOf("hour",0)!=-1)))){break;}
var range=el._range;var current=el.firstChild.data;var pm=(date.getHours()>=12);for(var i=range.length;--i>=0;)
if(range[i]==current)
break;if(ev&&ev.shiftKey){if(--i<0){i=range.length-1;}}else if(++i>=range.length){i=0;}
if(cal.getDateStatus){var minute=null;var hour=null;var new_date=new Date(date);if(el.className.indexOf("ampm",0)!=-1){minute=date.getMinutes();hour=(range[i]==Zapatec.Calendar.i18n("pm","ampm"))?((date.getHours()==12)?(date.getHours()):(date.getHours()+12)):(date.getHours()-12);if(cal.getDateStatus&&cal.getDateStatus(new_date,date.getFullYear(),date.getMonth(),date.getDate(),parseInt(hour,10),parseInt(minute,10))){var dirrect;if(range[i]==Zapatec.Calendar.i18n("pm","ampm")){dirrect=-5;}else{dirrect=5;}
hours=hour;minutes=minute;do{minutes+=dirrect;if(minutes>=60){minutes-=60;++hours;if(hours>=24)hours-=24;new_date.setHours(hours);}
if(minutes<0){minutes+=60;--hours;if(hours<0)hours+=24;new_date.setHours(hours);}
new_date.setMinutes(minutes);if(!cal.getDateStatus(new_date,date.getFullYear(),date.getMonth(),date.getDate(),parseInt(hours,10),parseInt(minutes,10))){hour=hours;minute=minutes;if(hour>12)i=1;else i=0;cal.date.setHours(hour);cal.date.setMinutes(minute);cal.onSetTime();}}while((hour!=hours)||(minute!=minutes));}
new_date.setHours(hour);}
if(el.className.indexOf("hour",0)!=-1){minute=date.getMinutes();hour=(!cal.time24)?((pm)?((range[i]!=12)?(parseInt(range[i],10)+12):(12)):((range[i]!=12)?(range[i]):(0))):(range[i]);new_date.setHours(hour);}
if(el.className.indexOf("minute",0)!=-1){hour=date.getHours();minute=range[i];new_date.setMinutes(minute);}}
var status=false;if(cal.getDateStatus){status=cal.getDateStatus(new_date,date.getFullYear(),date.getMonth(),date.getDate(),parseInt(hour,10),parseInt(minute,10));}
if(!status){el.firstChild.data=range[i];}
cal.onUpdateTime();return;case 201:case 202:var cel=el.timePart;var date=cal.currentDate;if((cel.className.indexOf("minute",0)!=-1)&&(cal.timeInterval>30)){break;}
var val=parseInt(cel.firstChild.data,10);var pm=(date.getHours()>=12);var range=cel._range;for(var i=range.length;--i>=0;)
if(val==range[i]){val=i;break;}
var step=cel._step;if(el.navtype==201){val=step*Math.floor(val/step);val+=step;if(val>=range.length)
val=0;}else{val=step*Math.ceil(val/step);val-=step;if(val<0)
val=range.length-step;}
if(cal.getDateStatus){var minute=null;var hour=null;var new_date=new Date(date);if(cel.className=="hour"){minute=date.getMinutes();hour=(!cal.time24)?((pm)?((range[val]!=12)?(parseInt(range[val],10)+12):(12)):((range[val]!=12)?(range[val]):(0))):(range[val]);new_date.setHours(hour);}
if(cel.className=="minute"){hour=date.getHours();minute=val;new_date.setMinutes(range[val]);}}
var status=false;if(cal.getDateStatus){status=cal.getDateStatus(new_date,date.getFullYear(),date.getMonth(),date.getDate(),parseInt(hour,10),parseInt(minute,10));}
if(!status){cel.firstChild.data=range[val];}
cal.onUpdateTime();return;case 0:if(cal.getDateStatus&&((cal.getDateStatus(date,date.getFullYear(),date.getMonth(),date.getDate())==true)||(cal.getDateStatus(date,date.getFullYear(),date.getMonth(),date.getDate())=="disabled"))){return false;}
break;}
if(!date.equalsTo(cal.date)){if((el.navtype>=-2&&el.navtype<=2)&&(el.navtype!=0)){cal._init(cal.firstDayOfWeek,date,true);return;}
cal.setDate(date);newdate=!(el.navtype&&(el.navtype>=-2&&el.navtype<=2));}}
if(newdate){cal.callHandler();}
if(closing){Zapatec.Utils.removeClass(el,"hilite");cal.callCloseHandler();}};Zapatec.Calendar.prototype.create=function(_par){var parent=null;if(!_par){parent=window.document.getElementsByTagName("body")[0];this.isPopup=true;this.WCH=Zapatec.Utils.createWCH();}else{parent=_par;this.isPopup=false;}
this.currentDate=this.date=this.dateStr?new Date(this.dateStr):new Date();var table=Zapatec.Utils.createElement("table");this.table=table;table.cellSpacing=0;table.cellPadding=0;Zapatec.Utils.createProperty(table,"calendar",this);Zapatec.Utils.addEvent(table,"mousedown",Zapatec.Calendar.tableMouseDown);var div=Zapatec.Utils.createElement("div");this.element=div;div.className="calendar";div.id="zpCal"+this.id+"Container";if(Zapatec.is_opera){table.style.width=(this.monthsInRow*((this.weekNumbers)?(8):(7))*2+4.4*this.monthsInRow)+"em";}
if(this.isPopup){div.style.position="absolute";div.style.display="none";}
div.appendChild(table);var cell=null;var row=null;var cal=this;var hh=function(text,cs,navtype,buttonType){cell=Zapatec.Utils.createElement("td",row);if(buttonType){cell.id="zpCal"+cal.id+buttonType+"ButtonStatus";}
cell.colSpan=cs;cell.className="button";if(Math.abs(navtype)<=2)
cell.className+=" nav";Zapatec.Calendar._add_evs(cell);Zapatec.Utils.createProperty(cell,"calendar",cal);cell.navtype=navtype;if(text.substr(0,1)!="&"){cell.appendChild(document.createTextNode(text));}
else{cell.innerHTML=text;}
return cell;};var hd=function(par,colspan,buttonType){cell=Zapatec.Utils.createElement("td",par);if(buttonType){cell.id="zpCal"+cal.id+buttonType+"ButtonStatus";}
cell.colSpan=colspan;cell.className="button";cell.innerHTML="<div>&nbsp</div>";return cell;};var title_length=((this.weekNumbers)?(8):(7))*this.monthsInRow-2;var thead=Zapatec.Utils.createElement("thead",table);if(this.numberMonths==1){this.title=thead;}
row=Zapatec.Utils.createElement("tr",thead);if(this.helpButton){hh("?",1,400,"Help").ttip=Zapatec.Calendar.i18n("INFO");}else{hd(row,1,"Help");}
this.title=hh("&nbsp;",title_length,300);this.title.className="title";this.title.id="zpCal"+this.id+"Title";if(this.isPopup){if(!this.disableDrag){this.title.ttip=Zapatec.Calendar.i18n("DRAG_TO_MOVE");this.title.style.cursor="move";}
if(this.closeButton){hh("&#x00d7;",1,200,"Close").ttip=Zapatec.Calendar.i18n("CLOSE");}else{hd(row,1,"Close");}}else{hd(row,1,"Close");}
row=Zapatec.Utils.createElement("tr",thead);this._nav_py=hh("&#x00ab;",1,-2,"PrevYear");this._nav_py.ttip=Zapatec.Calendar.i18n("PREV_YEAR");this._nav_pm=hh("&#x2039;",1,-1,"PrevMonth");this._nav_pm.ttip=Zapatec.Calendar.i18n("PREV_MONTH");this._nav_now=hh(Zapatec.Calendar.i18n("TODAY"),title_length-2,0,"Today");this._nav_now.ttip=Zapatec.Calendar.i18n("GO_TODAY");this._nav_nm=hh("&#x203a;",1,1,"NextMonth");this._nav_nm.ttip=Zapatec.Calendar.i18n("NEXT_MONTH");this._nav_ny=hh("&#x00bb;",1,2,"NextYear");this._nav_ny.ttip=Zapatec.Calendar.i18n("NEXT_YEAR");var rowsOfMonths=Math.floor(this.numberMonths/this.monthsInRow);if(this.numberMonths%this.monthsInRow>0){++rowsOfMonths;}
for(var l=1;l<=rowsOfMonths;++l){var thead=Zapatec.Utils.createElement("thead",table);if(Zapatec.is_opera){thead.style.display="table-row-group";}
if(this.numberMonths!=1){row=Zapatec.Utils.createElement("tr",thead);var title_length=5;this.weekNumbers&&++title_length;this.titles[l]=new Array();for(var k=1;(k<=this.monthsInRow)&&((l-1)*this.monthsInRow+k<=this.numberMonths);++k){hd(row,1);this.titles[l][k]=hh("&nbsp;",title_length,300);this.titles[l][k].className="title";this.titles[l][k].id="zpCal"+this.id+"SubTitle"+((l-1)*this.monthsInRow+k);hd(row,1);}}
row=Zapatec.Utils.createElement("tr",thead);row.className="daynames";for(k=1;(k<=this.monthsInRow)&&((l-1)*this.monthsInRow+k<=this.numberMonths);++k){if(this.weekNumbers){cell=Zapatec.Utils.createElement("td",row);cell.className="name wn";cell.appendChild(window.document.createTextNode(Zapatec.Calendar.i18n("WK")));if(k>1){Zapatec.Utils.addClass(cell,"month-left-border");}
var cal_wk=Zapatec.Calendar.i18n("WK")
if(cal_wk==null){cal_wk="";}}
for(var i=7;i>0;--i){cell=Zapatec.Utils.createElement("td",row);cell.appendChild(document.createTextNode("&nbsp;"));cell.id="zpCal"+this.id+"WeekDayButton"+(7-i)+"Status";}}
this.firstdayname=row.childNodes[this.weekNumbers?1:0];this.rowsOfDayNames[l]=this.firstdayname;this._displayWeekdays();var tbody=Zapatec.Utils.createElement("tbody",table);this.tbody[l]=tbody;for(i=6;i>0;--i){row=Zapatec.Utils.createElement("tr",tbody);for(k=1;(k<=this.monthsInRow)&&((l-1)*this.monthsInRow+k<=this.numberMonths);++k){if(this.weekNumbers){cell=Zapatec.Utils.createElement("td",row);cell.id="zpCal"+this.id+"WeekNumber"+(6-i);cell.appendChild(document.createTextNode("&nbsp;"));}
for(var j=7;j>0;--j){cell=Zapatec.Utils.createElement("td",row);cell.id="zpCal"+this.id+"DateCell"+((l-1)*this.monthsInRow+k)+"-"+(6-i)+"-"+(7-j);cell.appendChild(document.createTextNode("&nbsp;"));Zapatec.Utils.createProperty(cell,"calendar",this);Zapatec.Calendar._add_evs(cell);}}}}
var tfoot=Zapatec.Utils.createElement("tfoot",table);if(this.showsTime){row=Zapatec.Utils.createElement("tr",tfoot);row.className="time";var emptyColspan;if(this.monthsInRow!=1){cell=Zapatec.Utils.createElement("td",row);emptyColspan=cell.colSpan=Math.ceil((((this.weekNumbers)?8:7)*(this.monthsInRow-1))/2);cell.className="timetext";cell.innerHTML="&nbsp";}
cell=Zapatec.Utils.createElement("td",row);cell.className="timetext";cell.colSpan=this.weekNumbers?2:1;cell.innerHTML=Zapatec.Calendar.i18n("TIME")||"&nbsp;";(function(){function makeTimePart(className,partId,init,range_start,range_end){var table,tbody,tr,tr2,part;if(range_end){cell=Zapatec.Utils.createElement("td",row);cell.colSpan=1;if(cal.showsTime!="seconds"){++cell.colSpan;}
cell.className="parent-"+className;table=Zapatec.Utils.createElement("table",cell);table.cellSpacing=table.cellPadding=0;if(className=="hour")
table.align="right";table.className="calendar-time-scroller";tbody=Zapatec.Utils.createElement("tbody",table);tr=Zapatec.Utils.createElement("tr",tbody);tr2=Zapatec.Utils.createElement("tr",tbody);}else
tr=row;part=Zapatec.Utils.createElement("td",tr);part.className=className;part.id="zpTime"+cal.id+partId+"SelectStatus";part.appendChild(window.document.createTextNode(init));Zapatec.Utils.createProperty(part,"calendar",cal);part.ttip=Zapatec.Calendar.i18n("TIME_PART");part.navtype=50;part._range=[];if(!range_end)
part._range=range_start;else{part.rowSpan=2;for(var i=range_start;i<=range_end;++i){var txt;if(i<10&&range_end>=10)txt='0'+i;else txt=''+i;part._range[part._range.length]=txt;}
var up=Zapatec.Utils.createElement("td",tr);up.className="up";up.navtype=201;up.id="zpTime"+cal.id+partId+"UpButtonStatus";Zapatec.Utils.createProperty(up,"calendar",cal);up.timePart=part;if(Zapatec.is_khtml)
up.innerHTML="&nbsp;";Zapatec.Calendar._add_evs(up);var down=Zapatec.Utils.createElement("td",tr2);down.className="down";down.navtype=202;down.id="zpTime"+cal.id+partId+"DownButtonStatus";Zapatec.Utils.createProperty(down,"calendar",cal);down.timePart=part;if(Zapatec.is_khtml)
down.innerHTML="&nbsp;";Zapatec.Calendar._add_evs(down);}
Zapatec.Calendar._add_evs(part);return part;};var hrs=cal.currentDate.getHours();var mins=cal.currentDate.getMinutes();if(cal.showsTime=="seconds"){var secs=cal.currentDate.getSeconds();}
var t12=!cal.time24;var pm=(hrs>12);if(t12&&pm)hrs-=12;var H=makeTimePart("hour","Hours",hrs,t12?1:0,t12?12:23);H._step=(cal.timeInterval>30)?(cal.timeInterval/60):1;cell=Zapatec.Utils.createElement("td",row);cell.innerHTML=":";cell.className="colon";var M=makeTimePart("minute","Minutes",mins,0,59);M._step=((cal.timeInterval)&&(cal.timeInterval<60))?(cal.timeInterval):5;if(cal.showsTime=="seconds"){cell=Zapatec.Utils.createElement("td",row);cell.innerHTML=":";cell.className="colon";var S=makeTimePart("minute","Seconds",secs,0,59);S._step=5;}
var AP=null;if(t12){AP=makeTimePart("ampm","AMPM",pm?Zapatec.Calendar.i18n("pm","ampm"):Zapatec.Calendar.i18n("am","ampm"),[Zapatec.Calendar.i18n("am","ampm"),Zapatec.Calendar.i18n("pm","ampm")]);AP.className+=" button";}else
Zapatec.Utils.createElement("td",row).innerHTML="&nbsp;";cal.onSetTime=function(){var hrs=this.currentDate.getHours();var mins=this.currentDate.getMinutes();if(this.showsTime=="seconds"){var secs=cal.currentDate.getSeconds();}
if(this.timeInterval){mins+=this.timeInterval-((mins-1+this.timeInterval)%this.timeInterval)-1;}
while(mins>=60){mins-=60;++hrs;}
if(this.timeInterval>60){var interval=this.timeInterval/60;if(hrs%interval!=0){hrs+=interval-((hrs-1+interval)%interval)-1;}
if(hrs>=24){hrs-=24;}}
var new_date=new Date(this.currentDate);if(this.getDateStatus&&this.getDateStatus(this.currentDate,this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate(),hrs,mins)){hours=hrs;minutes=mins;do{if(this.timeInterval){if(this.timeInterval<60){minutes+=this.timeInterval;}else{hrs+=this.timeInterval/60;}}else{minutes+=5;}
if(minutes>=60){minutes-=60;hours+=1;}
if(hours>=24){hours-=24;}
new_date.setMinutes(minutes);new_date.setHours(hours);if(!this.getDateStatus(new_date,this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate(),hours,minutes)){hrs=hours;mins=minutes;}}while((hrs!=hours)||(mins!=minutes));}
this.currentDate.setMinutes(mins);this.currentDate.setHours(hrs);var pm=(hrs>=12);if(pm&&t12&&hrs!=12)hrs-=12;if(!pm&&t12&&hrs==0)hrs=12;H.firstChild.data=(hrs<10)?("0"+hrs):hrs;M.firstChild.data=(mins<10)?("0"+mins):mins;if(this.showsTime=="seconds"){S.firstChild.data=(secs<10)?("0"+secs):secs;}
if(t12)
AP.firstChild.data=pm?Zapatec.Calendar.i18n("pm","ampm"):Zapatec.Calendar.i18n("am","ampm");};cal.onUpdateTime=function(){var date=this.currentDate;var h=parseInt(H.firstChild.data,10);if(t12){if(/pm/i.test(AP.firstChild.data)&&h<12)
h+=12;else if(/am/i.test(AP.firstChild.data)&&h==12)
h=0;}
var d=date.getDate();var m=date.getMonth();var y=date.getFullYear();date.setHours(h);date.setMinutes(parseInt(M.firstChild.data,10));if(this.showsTime=="seconds"){date.setSeconds(parseInt(S.firstChild.data,10));}
date.setFullYear(y);date.setMonth(m);date.setDate(d);this.dateClicked=false;this.callHandler();};})();if(this.monthsInRow!=1){cell=Zapatec.Utils.createElement("td",row);cell.colSpan=((this.weekNumbers)?8:7)*(this.monthsInRow-1)-Math.ceil(emptyColspan);cell.className="timetext";cell.innerHTML="&nbsp";}}else{this.onSetTime=this.onUpdateTime=function(){};}
row=Zapatec.Utils.createElement("tr",tfoot);row.className="footrow";cell=hh(Zapatec.Calendar.i18n("SEL_DATE"),this.weekNumbers?(8*this.numberMonths):(7*this.numberMonths),300);cell.className="ttip";cell.id="zpCal"+this.id+"Status";if(this.isPopup&&!this.disableDrag){cell.ttip=Zapatec.Calendar.i18n("DRAG_TO_MOVE");cell.style.cursor="move";}
this.tooltips=cell;div=this.monthsCombo=Zapatec.Utils.createElement("div",this.element);div.className="combo";div.id="zpCal"+this.id+"MonthDropdownCombo";for(i=0;i<12;++i){var mn=Zapatec.Utils.createElement("div");mn.className=Zapatec.is_ie?"label-IEfix":"label";mn.id="zpCal"+this.id+"MonthDropdownItem"+i;mn.month=i;mn.appendChild(window.document.createTextNode(Zapatec.Calendar.i18n(i,"smn")));div.appendChild(mn);}
div=this.yearsCombo=Zapatec.Utils.createElement("div",this.element);div.className="combo";div.id="zpCal"+this.id+"YearDropdownCombo";for(i=0;i<12;++i){var yr=Zapatec.Utils.createElement("div");yr.className=Zapatec.is_ie?"label-IEfix":"label";yr.id="zpCal"+this.id+"YearDropdownItem"+i;yr.appendChild(window.document.createTextNode("&nbsp;"));div.appendChild(yr);}
div=this.histCombo=Zapatec.Utils.createElement("div",this.element);div.id="zpCal"+this.id+"HistoryDropdownCombo";div.className="combo history";this._init(this.firstDayOfWeek,this.date);parent.appendChild(this.element);};Zapatec.Calendar._keyEvent=function(ev){if(!window.calendar){return false;}
(Zapatec.is_ie)&&(ev=window.event);var cal=window.calendar;var act=(Zapatec.is_ie||ev.type=="keypress");var K=ev.keyCode;var date=new Date(cal.date);if(ev.ctrlKey){switch(K){case 37:act&&Zapatec.Calendar.cellClick(cal._nav_pm);break;case 38:act&&Zapatec.Calendar.cellClick(cal._nav_py);break;case 39:act&&Zapatec.Calendar.cellClick(cal._nav_nm);break;case 40:act&&Zapatec.Calendar.cellClick(cal._nav_ny);break;default:return false;}}else switch(K){case 32:Zapatec.Calendar.cellClick(cal._nav_now);break;case 27:act&&cal.callCloseHandler();break;case 37:if(act&&!cal.multiple){date.setTime(date.getTime()-86400000);cal.setDate(date);}
break;case 38:if(act&&!cal.multiple){date.setTime(date.getTime()-7*86400000);cal.setDate(date);}
break;case 39:if(act&&!cal.multiple){date.setTime(date.getTime()+86400000);cal.setDate(date);}
break;case 40:if(act&&!cal.multiple){date.setTime(date.getTime()+7*86400000);cal.setDate(date);}
break;case 13:if(act){Zapatec.Calendar.cellClick(cal.currentDateEl);}
break;default:return false;}
return Zapatec.Utils.stopEvent(ev);};Zapatec.Calendar.prototype._init=function(firstDayOfWeek,date,last){var
today=new Date(),TD=today.getDate(),TY=today.getFullYear(),TM=today.getMonth();if(this.getDateStatus&&!last){var status=this.getDateStatus(date,date.getFullYear(),date.getMonth(),date.getDate());var backupDate=new Date(date);while(((status==true)||(status=="disabled"))&&(backupDate.getMonth()==date.getMonth())){date.setTime(date.getTime()+86400000);var status=this.getDateStatus(date,date.getFullYear(),date.getMonth(),date.getDate());}
if(backupDate.getMonth()!=date.getMonth()){date=new Date(backupDate);while(((status==true)||(status=="disabled"))&&(backupDate.getMonth()==date.getMonth())){date.setTime(date.getTime()-86400000);var status=this.getDateStatus(date,date.getFullYear(),date.getMonth(),date.getDate());}}
if(backupDate.getMonth()!=date.getMonth()){last=true;date=new Date(backupDate);}}
var year=date.getFullYear();var month=date.getMonth();var rowsOfMonths=Math.floor(this.numberMonths/this.monthsInRow);var minMonth;var diffMonth,last_row,before_control;if(!this.vertical){diffMonth=(this.controlMonth-1);minMonth=month-diffMonth;}else{last_row=((this.numberMonths-1)%this.monthsInRow)+1;before_control=(this.controlMonth-1)%this.monthsInRow;bottom=(before_control>=(last_row)?(last_row):(before_control));diffMonth=(before_control)*(rowsOfMonths-1)+Math.floor((this.controlMonth-1)/this.monthsInRow)+bottom;minMonth=month-diffMonth;}
var minYear=year;if(minMonth<0){minMonth+=12;--minYear;}
var maxMonth=minMonth+this.numberMonths-1;var maxYear=minYear;if(maxMonth>11){maxMonth-=12;++maxYear;}
function disableControl(ctrl){Zapatec.Calendar._del_evs(ctrl);ctrl.disabled=true;ctrl.className="button";ctrl.innerHTML="<div>&nbsp</div>";}
function enableControl(ctrl,sign){Zapatec.Calendar._add_evs(ctrl);ctrl.disabled=false;ctrl.className="button nav";ctrl.innerHTML=sign;}
if((minYear<=this.minYear)||!this.yearNav){if(!this._nav_py.disabled){disableControl(this._nav_py);}}else{if(this._nav_py.disabled){enableControl(this._nav_py,"&#x00ab;");}}
if(maxYear>=this.maxYear||!this.yearNav){if(!this._nav_ny.disabled){disableControl(this._nav_ny);}}else{if(this._nav_ny.disabled){enableControl(this._nav_ny,"&#x00bb;");}}
if(((minYear==this.minYear)&&(minMonth<=this.minMonth))||(minYear<this.minYear)){if(!this._nav_pm.disabled){disableControl(this._nav_pm);}}else{if(this._nav_pm.disabled){enableControl(this._nav_pm,"&#x2039;");}}
if(((maxYear==this.maxYear)&&(maxMonth>=this.maxMonth))||(maxYear>this.maxYear)){if(!this._nav_nm.disabled){disableControl(this._nav_nm);}}else{if(this._nav_nm.disabled){enableControl(this._nav_nm,"&#x203a;");}}
upperMonth=this.maxMonth+1;upperYear=this.maxYear;if(upperMonth>11){upperMonth-=12;++upperYear;}
bottomMonth=this.minMonth-1;bottomYear=this.minYear;if(bottomMonth<0){bottomMonth+=12;--bottomYear;}
maxDate1=new Date(maxYear,maxMonth,date.getMonthDays(maxMonth),23,59,59,999);maxDate2=new Date(upperYear,upperMonth,1,0,0,0,0);minDate1=new Date(minYear,minMonth,1,0,0,0,0);minDate2=new Date(bottomYear,bottomMonth,date.getMonthDays(bottomMonth),23,59,59,999);if(maxDate1.getTime()>maxDate2.getTime()){date.setTime(date.getTime()-(maxDate1.getTime()-maxDate2.getTime()));}
if(minDate1.getTime()<minDate2.getTime()){date.setTime(date.getTime()+(minDate2.getTime()-minDate1.getTime())+1);}
delete maxDate1;delete maxDate2;delete minDate1;delete minDate2;this.firstDayOfWeek=firstDayOfWeek;if(!last){this.currentDate=date;}
this.date=date;(this.date=new Date(this.date)).setDateOnly(date);year=this.date.getFullYear();month=this.date.getMonth();var initMonth=date.getMonth();var mday=this.date.getDate();var no_days=date.getMonthDays();var months=new Array();if(this.numberMonths%this.monthsInRow>0){++rowsOfMonths;}
for(var l=1;l<=rowsOfMonths;++l){months[l]=new Array();for(var k=1;(k<=this.monthsInRow)&&((l-1)*this.monthsInRow+k<=this.numberMonths);++k){var tmpDate=new Date(date);if(this.vertical){var validMonth=date.getMonth()-diffMonth+((k-1)*(rowsOfMonths-1)+(l-1)+((last_row<k)?(last_row):(k-1)));}else{var validMonth=date.getMonth()-diffMonth+(l-1)*this.monthsInRow+k-1;}
if(validMonth<0){tmpDate.setFullYear(tmpDate.getFullYear()-1);validMonth=12+validMonth;}
if(validMonth>11){tmpDate.setFullYear(tmpDate.getFullYear()+1);validMonth=validMonth-12;}
tmpDate.setDate(1);tmpDate.setMonth(validMonth);var day1=(tmpDate.getDay()-this.firstDayOfWeek)%7;if(day1<0)
day1+=7;var hrs=tmpDate.getHours();tmpDate.setDate(-day1);tmpDate.setDate(tmpDate.getDate()+1);if(hrs!=tmpDate.getHours()){tmpDate.setDate(1);tmpDate.setMonth(validMonth);tmpDate.setDate(-day1);tmpDate.setDate(tmpDate.getDate()+1);}
months[l][k]=tmpDate;}}
var MN=Zapatec.Calendar.i18n(month,"smn");var weekend=Zapatec.Calendar.i18n("WEEKEND");var dates=this.multiple?(this.datesCells={}):null;var DATETXT=this.getDateText;for(var l=1;l<=rowsOfMonths;++l){var row=this.tbody[l].firstChild;for(var i=7;--i>0;row=row.nextSibling){var cell=row.firstChild;var hasdays=false;for(var k=1;(k<=this.monthsInRow)&&((l-1)*this.monthsInRow+k<=this.numberMonths);++k){date=months[l][k];if(this.weekNumbers){cell.className=" day wn";cell.innerHTML=date.getWeekNumber();if(k>1){Zapatec.Utils.addClass(cell,"month-left-border");}
cell=cell.nextSibling;}
row.className="daysrow";row.id="zpCal"+this.id+"Daysrow"+(6-i);var iday;for(j=7;cell&&(iday=date.getDate())&&(j>0);date.setDate(iday+1),((date.getDate()==iday)?(date.setHours(1)&&date.setDate(iday+1)):(false)),cell=cell.nextSibling,--j){var
wday=date.getDay(),dmonth=date.getMonth(),dyear=date.getFullYear();cell.className=" day";if((!this.weekNumbers)&&(j==7)&&(k!=1)){Zapatec.Utils.addClass(cell,"month-left-border");}
if((j==1)&&(k!=this.monthsInRow)){Zapatec.Utils.addClass(cell,"month-right-border");}
if(this.vertical){validMonth=initMonth-diffMonth+((k-1)*(rowsOfMonths-1)+(l-1)+((last_row<k)?(last_row):(k-1)));}else{validMonth=initMonth-diffMonth+((l-1)*this.monthsInRow+k-1);}
if(validMonth<0){validMonth=12+validMonth;}
if(validMonth>11){validMonth=validMonth-12;}
var current_month=!(cell.otherMonth=!(dmonth==validMonth));if(!current_month){if(this.showsOtherMonths)
cell.className+=" othermonth";else{cell.className+=" true";cell.innerHTML="<div>&nbsp;</div>";continue;}}else
hasdays=true;cell.innerHTML=DATETXT?DATETXT(date,dyear,dmonth,iday):iday;dates&&(dates[date.print("%Y%m%d")]=cell);if(this.getDateStatus){var status=this.getDateStatus(date,dyear,dmonth,iday);if(this.getDateToolTip){var toolTip=this.getDateToolTip(date,dyear,dmonth,iday);if(toolTip)
cell.title=toolTip;}
if(status==true){cell.className+=" disabled";}else{cell.className+=" "+status;}}
if(!cell.disabled){cell.caldate=[dyear,dmonth,iday];cell.ttip="_";if(!this.multiple&&current_month&&iday==this.currentDate.getDate()&&this.hiliteToday&&(dmonth==this.currentDate.getMonth())&&(dyear==this.currentDate.getFullYear())){cell.className+=" selected";this.currentDateEl=cell;}
if(dyear==TY&&dmonth==TM&&iday==TD){cell.className+=" today";cell.ttip+=Zapatec.Calendar.i18n("PART_TODAY");}
if((weekend!=null)&&(weekend.indexOf(wday.toString())!=-1)){cell.className+=cell.otherMonth?" oweekend":" weekend";}}}
if(!(hasdays||this.showsOtherMonths))
row.className="emptyrow";}
if((i==1)&&(l<rowsOfMonths)){if(row.className=="emptyrow"){row=row.previousSibling;}
cell=row.firstChild;while(cell!=null){Zapatec.Utils.addClass(cell,"month-bottom-border");cell=cell.nextSibling;}}}}
if(this.numberMonths==1){this.title.innerHTML=Zapatec.Calendar.i18n(month,"mn")+", "+year;if(this.params&&this.params.titleHtml)
if(typeof this.params.titleHtml=='function')
this.title.innerHTML=this.params.titleHtml(this.title.innerHTML,month,year)
else
this.title.innerHTML+=this.params.titleHtml}else{if(this.params&&this.params.titleHtml)
if(typeof this.params.titleHtml=='function')
this.title.innerHTML=this.params.titleHtml(Zapatec.Calendar.i18n(month,"mn")+", "+year,month,year)
else
this.title.innerHTML=this.params.titleHtml
for(var l=1;l<=rowsOfMonths;++l){for(var k=1;(k<=this.monthsInRow)&&((l-1)*this.monthsInRow+k<=this.numberMonths);++k){if(this.vertical){validMonth=month-diffMonth+((k-1)*(rowsOfMonths-1)+(l-1)+((last_row<k)?(last_row):(k-1)));}else{validMonth=month-diffMonth+(l-1)*this.monthsInRow+k-1;}
validYear=year;if(validMonth<0){--validYear;validMonth=12+validMonth;}
if(validMonth>11){++validYear;validMonth=validMonth-12;}
this.titles[l][k].innerHTML=Zapatec.Calendar.i18n(validMonth,"mn")+", "+validYear;}}}
this.onSetTime();this._initMultipleDates();this.updateWCH();};Zapatec.Calendar.prototype._initMultipleDates=function(){if(this.multiple){for(var i in this.multiple){var cell=this.datesCells[i];var d=this.multiple[i];if(!d)
continue;if(cell)
cell.className+=" selected";}}};Zapatec.Calendar.prototype._toggleMultipleDate=function(date){if(this.multiple){var ds=date.print("%Y%m%d");var cell=this.datesCells[ds];if(cell){var d=this.multiple[ds];if(!d){Zapatec.Utils.addClass(cell,"selected");this.multiple[ds]=date;}else{Zapatec.Utils.removeClass(cell,"selected");delete this.multiple[ds];}}}};Zapatec.Calendar.prototype.setDateToolTipHandler=function(unaryFunction){this.getDateToolTip=unaryFunction;};Zapatec.Calendar.prototype.setDate=function(date,justInit){if(!date)
date=new Date();if(!date.equalsTo(this.date)){var year=date.getFullYear(),m=date.getMonth();if(year<this.minYear||(year==this.minYear&&m<this.minMonth))
this.showHint("<div class='error'>"+Zapatec.Calendar.i18n("E_RANGE")+" »»»</div>");else if(year>this.maxYear||(year==this.maxYear&&m>this.maxMonth))
this.showHint("<div class='error'>««« "+Zapatec.Calendar.i18n("E_RANGE")+"</div>");this._init(this.firstDayOfWeek,date,justInit);}};Zapatec.Calendar.prototype.showHint=function(text){this.tooltips.innerHTML=text;};Zapatec.Calendar.prototype.reinit=function(){this._init(this.firstDayOfWeek,this.date);};Zapatec.Calendar.prototype.refresh=function(){var p=this.isPopup?null:this.element.parentNode;var x=parseInt(this.element.style.left);var y=parseInt(this.element.style.top);this.destroy();this.dateStr=this.date;this.create(p);if(this.isPopup)
this.showAt(x,y);else
this.show();};Zapatec.Calendar.prototype.setFirstDayOfWeek=function(firstDayOfWeek){if(this.firstDayOfWeek!=firstDayOfWeek){this._init(firstDayOfWeek,this.date);var rowsOfMonths=Math.floor(this.numberMonths/this.monthsInRow);if(this.numberMonths%this.monthsInRow>0){++rowsOfMonths;}
for(var l=1;l<=rowsOfMonths;++l){this.firstdayname=this.rowsOfDayNames[l];this._displayWeekdays();}}};Zapatec.Calendar.prototype.setDateStatusHandler=Zapatec.Calendar.prototype.setDisabledHandler=function(unaryFunction){this.getDateStatus=unaryFunction;};Zapatec.Calendar.prototype.setRange=function(A,Z){var m,a=Math.min(A,Z),z=Math.max(A,Z);this.minYear=m=Math.floor(a);this.minMonth=(m==a)?0:Math.ceil((a-m)*100-1);this.maxYear=m=Math.floor(z);this.maxMonth=(m==z)?11:Math.ceil((z-m)*100-1);};Zapatec.Calendar.prototype.setMultipleDates=function(multiple){if(!multiple||typeof multiple=="undefined")return;this.multiple={};for(var i=multiple.length;--i>=0;){var d=multiple[i];var ds=d.print("%Y%m%d");this.multiple[ds]=d;}};Zapatec.Calendar.prototype.submitFlatDates=function()
{if(typeof this.params.flatCallback=="function"){Zapatec.Utils.sortOrder=(this.sortOrder!="asc"&&this.sortOrder!="desc"&&this.sortOrder!="none")?"none":this.sortOrder;if(this.multiple&&(Zapatec.Utils.sortOrder!="none")){var dateArray=new Array();for(var i in this.multiple){var currentDate=this.multiple[i];if(currentDate){dateArray[dateArray.length]=currentDate;}
dateArray.sort(Zapatec.Utils.compareDates);}
this.multiple={};for(var i=0;i<dateArray.length;i++){var d=dateArray[i];var ds=d.print("%Y%m%d");this.multiple[ds]=d;}}
this.params.flatCallback(this);}}
Zapatec.Calendar.prototype.callHandler=function(){if(this.onSelected){this.onSelected(this,this.date.print(this.dateFormat));}};Zapatec.Calendar.prototype.updateHistory=function(){var a,i,d,tmp,s,str="",len=Zapatec.Calendar.prefs.hsize-1;if(Zapatec.Calendar.prefs.history){a=Zapatec.Calendar.prefs.history.split(/,/);i=0;while(i<len&&(tmp=a[i++])){s=tmp.split(/\//);d=new Date(parseInt(s[0],10),parseInt(s[1],10)-1,parseInt(s[2],10),parseInt(s[3],10),parseInt(s[4],10));if(!d.dateEqualsTo(this.date))
str+=","+tmp;}}
Zapatec.Calendar.prefs.history=this.date.print("%Y/%m/%d/%H/%M")+str;Zapatec.Calendar.savePrefs();};Zapatec.Calendar.prototype.callCloseHandler=function(){if(this.dateClicked){this.updateHistory();}
if(this.onClose){this.onClose(this);}
this.hideShowCovered();};Zapatec.Calendar.prototype.destroy=function(){this.hide();Zapatec.Utils.destroy(this.element);Zapatec.Utils.destroy(this.WCH);Zapatec.Calendar._C=null;window.calendar=null;};Zapatec.Calendar.prototype.reparent=function(new_parent){var el=this.element;el.parentNode.removeChild(el);new_parent.appendChild(el);};Zapatec.Calendar._checkCalendar=function(ev){if(!window.calendar){return false;}
var el=Zapatec.is_ie?Zapatec.Utils.getElement(ev):Zapatec.Utils.getTargetElement(ev);for(;el!=null&&el!=calendar.element;el=el.parentNode);if(el==null){window.calendar.callCloseHandler();}};Zapatec.Calendar.prototype.updateWCH=function(other_el){Zapatec.Utils.setupWCH_el(this.WCH,this.element,other_el);};Zapatec.Calendar.prototype.show=function(){var rows=this.table.getElementsByTagName("tr");for(var i=rows.length;i>0;){var row=rows[--i];Zapatec.Utils.removeClass(row,"rowhilite");var cells=row.getElementsByTagName("td");for(var j=cells.length;j>0;){var cell=cells[--j];Zapatec.Utils.removeClass(cell,"hilite");Zapatec.Utils.removeClass(cell,"active");}}
if(this.element.style.display!="block"){this.element.style.display="block";}
this.hidden=false;if(this.isPopup){this.updateWCH();window.calendar=this;if(!this.noGrab){Zapatec.Utils.addEvent(window.document,"keydown",Zapatec.Calendar._keyEvent);Zapatec.Utils.addEvent(window.document,"keypress",Zapatec.Calendar._keyEvent);Zapatec.Utils.addEvent(window.document,"mousedown",Zapatec.Calendar._checkCalendar);}}
this.hideShowCovered();};Zapatec.Calendar.prototype.hide=function(){if(this.isPopup){Zapatec.Utils.removeEvent(window.document,"keydown",Zapatec.Calendar._keyEvent);Zapatec.Utils.removeEvent(window.document,"keypress",Zapatec.Calendar._keyEvent);Zapatec.Utils.removeEvent(window.document,"mousedown",Zapatec.Calendar._checkCalendar);}
this.element.style.display="none";Zapatec.Utils.hideWCH(this.WCH);this.hidden=true;this.hideShowCovered();};Zapatec.Calendar.prototype.showAt=function(x,y){var s=this.element.style;s.left=x+"px";s.top=y+"px";this.show();};Zapatec.Calendar.prototype.showAtElement=function(el,opts){var self=this;var p=Zapatec.Utils.getElementOffset(el);if(!opts||typeof opts!="string"){this.showAt(p.x,p.y+el.offsetHeight);return true;}
this.element.style.display="block";var w=self.element.offsetWidth;var h=self.element.offsetHeight;self.element.style.display="none";var valign=opts.substr(0,1);var halign="l";if(opts.length>1){halign=opts.substr(1,1);}
switch(valign){case"T":p.y-=h;break;case"B":p.y+=el.offsetHeight;break;case"C":p.y+=(el.offsetHeight-h)/2;break;case"t":p.y+=el.offsetHeight-h;break;case"b":break;}
switch(halign){case"L":p.x-=w;break;case"R":p.x+=el.offsetWidth;break;case"C":p.x+=(el.offsetWidth-w)/2;break;case"l":p.x+=el.offsetWidth-w;break;case"r":break;}
p.width=w;p.height=h;self.monthsCombo.style.display="none";Zapatec.Utils.fixBoxPosition(p,10);self.showAt(p.x,p.y);};Zapatec.Calendar.prototype.setDateFormat=function(str){this.dateFormat=str;};Zapatec.Calendar.prototype.setTtDateFormat=function(str){this.ttDateFormat=str;};Zapatec.Calendar.prototype.parseDate=function(str,fmt){if(!str)
return this.setDate(this.date);if(!fmt)
fmt=this.dateFormat;var date=Date.parseDate(str,fmt);return this.setDate(date);};Zapatec.Calendar.prototype.hideShowCovered=function(){if(!Zapatec.is_ie5)
return;var self=this;function getVisib(obj){var value=obj.style.visibility;if(!value){if(window.document.defaultView&&typeof(window.document.defaultView.getComputedStyle)=="function"){if(!Zapatec.is_khtml)
value=window.document.defaultView.getComputedStyle(obj,"").getPropertyValue("visibility");else
value='';}else if(obj.currentStyle){value=obj.currentStyle.visibility;}else
value='';}
return value;};var tags=["applet","iframe","select"];var el=self.element;var p=Zapatec.Utils.getAbsolutePos(el);var EX1=p.x;var EX2=el.offsetWidth+EX1;var EY1=p.y;var EY2=el.offsetHeight+EY1;for(var k=tags.length;k>0;){var ar=window.document.getElementsByTagName(tags[--k]);var cc=null;for(var i=ar.length;i>0;){cc=ar[--i];p=Zapatec.Utils.getAbsolutePos(cc);var CX1=p.x;var CX2=cc.offsetWidth+CX1;var CY1=p.y;var CY2=cc.offsetHeight+CY1;if(self.hidden||(CX1>EX2)||(CX2<EX1)||(CY1>EY2)||(CY2<EY1)){if(!cc.__msh_save_visibility){cc.__msh_save_visibility=getVisib(cc);}
cc.style.visibility=cc.__msh_save_visibility;}else{if(!cc.__msh_save_visibility){cc.__msh_save_visibility=getVisib(cc);}
cc.style.visibility="hidden";}}}};Zapatec.Calendar.prototype._displayWeekdays=function(){var fdow=this.firstDayOfWeek;var cell=this.firstdayname;var weekend=Zapatec.Calendar.i18n("WEEKEND");for(k=1;(k<=this.monthsInRow)&&(cell);++k){for(var i=0;i<7;++i){cell.className=" day name";if((!this.weekNumbers)&&(i==0)&&(k!=1)){Zapatec.Utils.addClass(cell,"month-left-border");}
if((i==6)&&(k!=this.monthsInRow)){Zapatec.Utils.addClass(cell,"month-right-border");}
var realday=(i+fdow)%7;if((!this.disableFdowClick)&&((this.params&&this.params.fdowClick)||i)){if(Zapatec.Calendar.i18n("DAY_FIRST")!=null){cell.ttip=Zapatec.Calendar.i18n("DAY_FIRST").replace("%s",Zapatec.Calendar.i18n(realday,"dn"));}
cell.navtype=100;cell.calendar=this;cell.fdow=realday;Zapatec.Calendar._add_evs(cell);}
if((weekend!=null)&&(weekend.indexOf(realday.toString())!=-1)){Zapatec.Utils.addClass(cell,"weekend");}
cell.innerHTML=Zapatec.Calendar.i18n((i+fdow)%7,"sdn");cell=cell.nextSibling;}
if(this.weekNumbers&&cell){cell=cell.nextSibling;}}};Zapatec.Utils.compareDates=function(date1,date2)
{if(Zapatec.Calendar.prefs.sortOrder=="asc")
return date1-date2;else
return date2-date1;}
Zapatec.Calendar.prototype._hideCombos=function(){this.monthsCombo.style.display="none";this.yearsCombo.style.display="none";this.histCombo.style.display="none";this.updateWCH();};Zapatec.Calendar.prototype._dragStart=function(ev){ev||(ev=window.event);if(this.dragging){return;}
this.dragging=true;var posX=ev.clientX+window.document.body.scrollLeft;var posY=ev.clientY+window.document.body.scrollTop;var st=this.element.style;this.xOffs=posX-parseInt(st.left);this.yOffs=posY-parseInt(st.top);Zapatec.Utils.addEvent(window.document,"mousemove",Zapatec.Calendar.calDragIt);Zapatec.Utils.addEvent(window.document,"mouseover",Zapatec.Calendar.calDragIt);Zapatec.Utils.addEvent(window.document,"mouseup",Zapatec.Calendar.calDragEnd);};Date._MD=[31,28,31,30,31,30,31,31,30,31,30,31];Date.SECOND=1000;Date.MINUTE=60*Date.SECOND;Date.HOUR=60*Date.MINUTE;Date.DAY=24*Date.HOUR;Date.WEEK=7*Date.DAY;Date.prototype.getMonthDays=function(month){var year=this.getFullYear();if(typeof month=="undefined"){month=this.getMonth();}
if(((0==(year%4))&&((0!=(year%100))||(0==(year%400))))&&month==1){return 29;}else{return Date._MD[month];}};Date.prototype.getDayOfYear=function(){var now=new Date(this.getFullYear(),this.getMonth(),this.getDate(),0,0,0);var then=new Date(this.getFullYear(),0,0,0,0,0);var time=now-then;return Math.round(time/Date.DAY);};Date.prototype.getWeekNumber=function(){var d=new Date(this.getFullYear(),this.getMonth(),this.getDate(),0,0,0);var DoW=d.getDay();d.setDate(d.getDate()-(DoW+6)%7+3);var ms=d.valueOf();d.setMonth(0);d.setDate(4);return Math.round((ms-d.valueOf())/(7*864e5))+1;};Date.prototype.equalsTo=function(date){return((this.getFullYear()==date.getFullYear())&&(this.getMonth()==date.getMonth())&&(this.getDate()==date.getDate())&&(this.getHours()==date.getHours())&&(this.getMinutes()==date.getMinutes()));};Date.prototype.dateEqualsTo=function(date){return((this.getFullYear()==date.getFullYear())&&(this.getMonth()==date.getMonth())&&(this.getDate()==date.getDate()));};Date.prototype.setDateOnly=function(date){var tmp=new Date(date);this.setDate(1);this.setFullYear(tmp.getFullYear());this.setMonth(tmp.getMonth());this.setDate(tmp.getDate());};Date.prototype.print=function(str){var m=this.getMonth();var d=this.getDate();var y=this.getFullYear();var wn=this.getWeekNumber();var w=this.getDay();var s={};var hr=this.getHours();var pm=(hr>=12);var ir=(pm)?(hr-12):hr;var dy=this.getDayOfYear();if(ir==0)
ir=12;var min=this.getMinutes();var sec=this.getSeconds();s["%a"]=Zapatec.Calendar.i18n(w,"sdn");s["%A"]=Zapatec.Calendar.i18n(w,"dn");s["%b"]=Zapatec.Calendar.i18n(m,"smn");s["%B"]=Zapatec.Calendar.i18n(m,"mn");s["%C"]=1+Math.floor(y/100);s["%d"]=(d<10)?("0"+d):d;s["%e"]=d;s["%H"]=(hr<10)?("0"+hr):hr;s["%I"]=(ir<10)?("0"+ir):ir;s["%j"]=(dy<100)?((dy<10)?("00"+dy):("0"+dy)):dy;s["%k"]=hr?hr:"0";s["%l"]=ir;s["%m"]=(m<9)?("0"+(1+m)):(1+m);s["%M"]=(min<10)?("0"+min):min;s["%n"]="\n";s["%p"]=pm?"PM":"AM";s["%P"]=pm?"pm":"am";s["%s"]=Math.floor(this.getTime()/1000);s["%S"]=(sec<10)?("0"+sec):sec;s["%t"]="\t";s["%U"]=s["%W"]=s["%V"]=(wn<10)?("0"+wn):wn;s["%u"]=(w==0)?7:w;s["%w"]=w?w:"0";s["%y"]=''+y%100;if(s["%y"]<10){s["%y"]="0"+s["%y"];}
s["%Y"]=y;s["%%"]="%";var re=/%./g;var a=str.match(re)||[];for(var i=0;i<a.length;i++){var tmp=s[a[i]];if(tmp){re=new RegExp(a[i],'g');str=str.replace(re,tmp);}}
return str;};Date.parseDate=function(str,format){var fmt=format,strPointer=0,token=null,parseFunc=null,valueLength=null,valueRange=null,valueType=null,date=new Date(),values={};var numberRules=["%d","%H","%I","%m","%M","%S","%s","%W","%u","%w","%y","%e","%k","%l","%s","%Y","%C"];function isNumberRule(rule){if(Zapatec.Utils.arrIndexOf(numberRules,rule)!=-1){return true;}
return false;}
function parseString(){for(var iString=valueRange[0];iString<valueRange[1];++iString){var value=Zapatec.Calendar.i18n(iString,valueType);if(!value){return null;}
if(value==str.substr(strPointer,value.length)){valueLength=value.length;return iString;}}
return null;}
function parseNumber(){var val=str.substr(strPointer,valueLength);if(val.length!=valueLength||/$\d+^/.test(val)){return null;}
return parseInt(val,10);}
function parseAMPM(){var result=(str.substr(strPointer,valueLength).toLowerCase()==Zapatec.Calendar.i18n("pm","ampm"))?true:false;return result||((str.substr(strPointer,valueLength).toLowerCase()==Zapatec.Calendar.i18n("am","ampm"))?false:null);}
function parseCharacter(){return"";}
function parseRule(rule){return(values[rule]=parseFunc());}
function wasParsed(rule){if(typeof rule=="undefined"||rule===null){return false;}
return true;}
function getValue(){for(var i=0;i<arguments.length;++i){if(arguments[i]!==null&&typeof arguments[i]!="undefined"&&!isNaN(arguments[i])){return arguments[i];}}
return null;}
if(typeof fmt!="string"||typeof str!="string"||str==""||fmt==""){return null;}
while(fmt){parseFunc=parseNumber;valueLength=fmt.indexOf("%");valueLength=(valueLength==-1)?fmt.length:valueLength;token=fmt.slice(0,valueLength);if(token!=str.substr(strPointer,valueLength)){return null;}
strPointer+=valueLength;fmt=fmt.slice(valueLength);if(fmt==""){break;}
token=fmt.slice(0,2);valueLength=2;switch(token){case"%A":case"%a":{valueType=(token=="%A")?"dn":"sdn";valueRange=[0,7];parseFunc=parseString;break;}
case"%B":case"%b":{valueType=(token=="%B")?"mn":"smn";valueRange=[0,12];parseFunc=parseString;break;}
case"%p":case"%P":{parseFunc=parseAMPM;break;}
case"%Y":{valueLength=4;if(isNumberRule(fmt.substr(2,2))){return null;}
while(isNaN(parseInt(str.charAt(strPointer+valueLength-1)))&&valueLength>0){--valueLength;}
if(valueLength==0){break;}
break;}
case"%C":case"%s":{valueLength=1;if(isNumberRule(fmt.substr(2,2))){return null;}
while(!isNaN(parseInt(str.charAt(strPointer+valueLength)))){++valueLength;}
break;}
case"%k":case"%l":case"%e":{valueLength=1;if(isNumberRule(fmt.substr(2,2))){return null;}
if(!isNaN(parseInt(str.charAt(strPointer+1)))){++valueLength;}
break;}
case"%j":valueLength=3;break;case"%u":case"%w":valueLength=1;case"%y":case"%m":case"%d":case"%W":case"%H":case"%I":case"%M":case"%S":{break;}}
if(parseRule(token)===null){return null;}
strPointer+=valueLength;fmt=fmt.slice(2);}
if(wasParsed(values["%s"])){date.setTime(values["%s"]*1000);}else{var year=getValue(values["%Y"],values["%y"]+--values["%C"]*100,values["%y"]+(date.getFullYear()-date.getFullYear()%100),values["%C"]*100+date.getFullYear()%100);var month=getValue(values["%m"]-1,values["%b"],values["%B"]);var day=getValue(values["%d"]||values["%e"]);if(day===null||month===null){var dayOfWeek=getValue(values["%a"],values["%A"],values["%u"]==7?0:values["%u"],values["%w"]);}
var hour=getValue(values["%H"],values["%k"]);if(hour===null&&(wasParsed(values["%p"])||wasParsed(values["%P"]))){var pm=getValue(values["%p"],values["%P"]);hour=getValue(values["%I"],values["%l"]);hour=pm?((hour==12)?12:(hour+12)):((hour==12)?(0):hour);}
if(year||year===0){date.setFullYear(year);}
if(month||month===0){date.setMonth(month);}
if(day||day===0){date.setDate(day);}
if(wasParsed(values["%j"])){date.setMonth(0);date.setDate(1);date.setDate(values["%j"]);}
if(wasParsed(dayOfWeek)){date.setDate(date.getDate()+(dayOfWeek-date.getDay()));}
if(wasParsed(values["%W"])){var weekNumber=date.getWeekNumber();if(weekNumber!=values["%W"]){date.setDate(date.getDate()+(values["%W"]-weekNumber)*7);}}
if(hour!==null){date.setHours(hour);}
if(wasParsed(values["%M"])){date.setMinutes(values["%M"]);}
if(wasParsed(values["%S"])){date.setSeconds(values["%S"]);}}
if(date.print(format)!=str){return null;}
return date;};Date.prototype.__msh_oldSetFullYear=Date.prototype.setFullYear;Date.prototype.setFullYear=function(y){var d=new Date(this);d.__msh_oldSetFullYear(y);if(d.getMonth()!=this.getMonth())
this.setDate(28);this.__msh_oldSetFullYear(y);};Date.prototype.compareDatesOnly=function(date1,date2){var year1=date1.getYear();var year2=date2.getYear();var month1=date1.getMonth();var month2=date2.getMonth();var day1=date1.getDate();var day2=date2.getDate();if(year1>year2){return-1;}
if(year2>year1){return 1;}
if(month1>month2){return-1;}
if(month2>month1){return 1;}
if(day1>day2){return-1;}
if(day2>day1){return 1;}
return 0;}
Zapatec.Setup=function(){};Zapatec.Setup.test=true;Zapatec.Calendar.setup=function(params){paramsList=["id"];function param_default(pname,def){if(typeof params[pname]=="undefined"){params[pname]=def;}
paramsList.push(pname);};params.id=Zapatec.Utils.generateID("calendar");param_default("inputField",null);param_default("displayArea",null);param_default("button",null);param_default("eventName","click");param_default("closeEventName",null);param_default("ifFormat","%Y/%m/%d");param_default("daFormat","%Y/%m/%d");param_default("singleClick",true);param_default("disableFunc",null);param_default("dateStatusFunc",params["disableFunc"]);param_default("dateText",null);param_default("firstDay",null);param_default("align","Br");param_default("range",[1900,2999]);param_default("weekNumbers",true);param_default("flat",null);param_default("flatCallback",null);param_default("onSelect",null);param_default("onClose",null);param_default("onUpdate",null);param_default("date",null);param_default("showsTime",false);param_default("sortOrder","asc");param_default("timeFormat","24");param_default("timeInterval",null);param_default("electric",true);param_default("step",2);param_default("position",null);param_default("cache",false);param_default("showOthers",false);param_default("multiple",null);param_default("saveDate",null);param_default("fdowClick",false);param_default("titleHtml",null);param_default("noHelp",false);param_default("noCloseButton",false);param_default("disableYearNav",false);param_default("disableFdowChange",false);if(params.weekNumbers){params.disableFdowChange=true;params.firstDay=1;}
param_default("disableDrag",false);param_default("numberMonths",1);if((params.numberMonths>12)||(params.numberMonths<1)){params.numberMonths=1;}
if(params.numberMonths>1){params.showOthers=false;}
params.numberMonths=parseInt(params.numberMonths,10);param_default("controlMonth",1);if((params.controlMonth>params.numberMonths)||(params.controlMonth<1)){params.controlMonth=1;}
params.controlMonth=parseInt(params.controlMonth,10);param_default("vertical",false);if(params.monthsInRow>params.numberMonths){params.monthsInRow=params.numberMonths;}
param_default("monthsInRow",params.numberMonths);params.monthsInRow=parseInt(params.monthsInRow,10);param_default("multiple",false);if(params.multiple){params.singleClick=false;}
param_default("canType",false);var tmp=["inputField","displayArea","button"];for(var i in tmp){if(typeof params[tmp[i]]=="string"){params[tmp[i]]=document.getElementById(params[tmp[i]]);}}
if(!params.inputField){params.canType=false;}else{params.inputField.setAttribute("autocomplete","off");}
if(!(params.flat||params.multiple||params.inputField||params.displayArea||params.button)){alert("Calendar.setup '"+params.id+"':\n  Nothing to setup (no fields found).  Please check your code");return false;}
if(((params.timeInterval)&&((params.timeInterval!==Math.floor(params.timeInterval))||((60%params.timeInterval!==0)&&(params.timeInterval%60!==0))))||(params.timeInterval>360)){alert("'"+params.id+"': timeInterval option can only have the following number of minutes:\n1, 2, 3, 4, 5, 6, 10, 15, 30,  60, 120, 180, 240, 300, 360 ");params.timeInterval=null;}
if(params.date&&!Date.parse(params.date)){alert("'"+params.id+"' Start Date Invalid: "+params.date+".\nSee date option.\nDefaulting to today.");params.date=null;}
if(params.saveDate){param_default("cookiePrefix",window.location.href+"--"+params.button.id);var cookieName=params.cookiePrefix;var newdate=Zapatec.Utils.getCookie(cookieName);if(newdate!=null){document.getElementById(params.inputField.id).value=newdate;}}
for(var ii in params){if(typeof params.constructor.prototype[ii]!="undefined"){continue;}
if(Zapatec.Utils.arrIndexOf(paramsList,ii)==-1){alert("Wrong config option: "+ii);}}
function onSelect(cal){var p=cal.params;var update=(cal.dateClicked||p.electric);if(update&&p.flat){if(typeof p.flatCallback=="function")
{if(!p.multiple)
p.flatCallback(cal);}else
alert("'"+cal.id+"': No flatCallback given -- doing nothing.");return false;}
if(update&&p.inputField){p.inputField.value=cal.currentDate.print(p.ifFormat);if(typeof p.inputField.onchange=="function")
p.inputField.onchange();}
if(update&&p.displayArea)
p.displayArea.innerHTML=cal.currentDate.print(p.daFormat);if(update&&p.singleClick&&cal.dateClicked)
cal.callCloseHandler();if(update&&typeof p.onUpdate=="function")
p.onUpdate(cal);if(p.saveDate){var cookieName=p.cookiePrefix;Zapatec.Utils.writeCookie(cookieName,p.inputField.value,null,'/',p.saveDate);}};if(params.flat!=null){if(typeof params.flat=="string")
params.flat=document.getElementById(params.flat);if(!params.flat){alert("Calendar.setup '"+params.id+"':\n  Flat specified but can't find parent.");return false;}
var cal=new Zapatec.Calendar(params.firstDay,params.date,params.onSelect||onSelect);cal.disableFdowClick=params.disableFdowChange;cal.showsOtherMonths=params.showOthers;cal.showsTime=params.showsTime;cal.time24=(params.timeFormat=="24");cal.timeInterval=params.timeInterval;cal.params=params;cal.weekNumbers=params.weekNumbers;cal.sortOrder=params.sortOrder.toLowerCase();cal.setRange(params.range[0],params.range[1]);cal.setDateStatusHandler(params.dateStatusFunc);cal.getDateText=params.dateText;cal.numberMonths=params.numberMonths;cal.controlMonth=params.controlMonth;cal.vertical=params.vertical;cal.yearStep=params.step;cal.monthsInRow=params.monthsInRow;cal.helpButton=!params.noHelp;cal.closeButton=!params.noCloseButton;cal.yearNav=!params.disableYearNav;if(params.ifFormat){cal.setDateFormat(params.ifFormat);}
if(params.inputField&&params.inputField.type=="text"&&typeof params.inputField.value=="string"){cal.parseDate(params.inputField.value);}
if(params.multiple){cal.setMultipleDates(params.multiple);}
cal.create(params.flat);cal.show();return cal;}
var triggerEl=params.button||params.displayArea||params.inputField;if(params.canType){function cancelBubble(ev){ev=ev||window.event;if(Zapatec.is_ie){ev.cancelBubble=true;}else{ev.stopPropagation();}}
Zapatec.Utils.addEvent(params.inputField,"mousedown",cancelBubble);Zapatec.Utils.addEvent(params.inputField,"keydown",cancelBubble);Zapatec.Utils.addEvent(params.inputField,"keypress",cancelBubble);Zapatec.Utils.addEvent(params.inputField,"keyup",function(ev){var format=params.inputField?params.ifFormat:params.daFormat;var parsedDate=Date.parseDate(params.inputField.value,format);var cal=window.calendar;if(cal&&parsedDate&&!cal.hidden){cal.setDate(parsedDate);}});}
triggerEl["on"+params.eventName]=function(){var dateEl=params.inputField||params.displayArea;if((!params.canType||params.inputField!=triggerEl)&&triggerEl.blur){triggerEl.blur();}
var dateFmt=params.inputField?params.ifFormat:params.daFormat;var mustCreate=false;var cal=window.calendar;if(params.canType&&(params.inputField==triggerEl)&&cal&&!cal.hidden){return;}
if(!(cal&&params.cache)){window.calendar=cal=new Zapatec.Calendar(params.firstDay,params.date,params.onSelect||onSelect,params.onClose||function(cal){if(params.cache)
cal.hide();else
cal.destroy();});cal.disableFdowClick=params.disableFdowChange;cal.showsTime=params.showsTime;cal.time24=(params.timeFormat=="24");cal.timeInterval=params.timeInterval;cal.weekNumbers=params.weekNumbers;cal.numberMonths=params.numberMonths;cal.controlMonth=params.controlMonth;cal.vertical=params.vertical;cal.monthsInRow=params.monthsInRow;cal.historyDateFormat=params.ifFormat||params.daFormat;cal.helpButton=!params.noHelp;cal.disableDrag=params.disableDrag;cal.closeButton=!params.noCloseButton;cal.yearNav=!params.disableYearNav;cal.sortOrder=params.sortOrder.toLowerCase();mustCreate=true;}else{if(params.date)
cal.setDate(params.date);cal.hide();}
if(params.multiple){cal.setMultipleDates(params.multiple);}
cal.showsOtherMonths=params.showOthers;cal.yearStep=params.step;cal.setRange(params.range[0],params.range[1]);cal.params=params;cal.setDateStatusHandler(params.dateStatusFunc);cal.getDateText=params.dateText;cal.setDateFormat(dateFmt);if(mustCreate)
cal.create();if(dateEl){var dateValue;if(dateEl.value){dateValue=dateEl.value;}else{dateValue=dateEl.innerHTML;}
if(dateValue!=""){var parsedDate=Date.parseDate(dateEl.value||dateEl.innerHTML,dateFmt);if(parsedDate!=null){cal.setDate(parsedDate);}}}
if(!params.position)
cal.showAtElement(params.button||params.displayArea||params.inputField,params.align);else
cal.showAt(params.position[0],params.position[1]);return false;};if(params.closeEventName){triggerEl["on"+params.closeEventName]=function(){if(window.calendar)
window.calendar.callCloseHandler();};}
return cal;};
Zapatec.Utils.addEvent(window, 'load', Zapatec.Utils.checkActivation);
;
// $Id: calendar-cs.js 6573 2007-03-09 08:36:16Z slip $
/* 
	calendar-cs-win.js
	language: Czech
	encoding: UTF-8
	author: Lubos Jerabek (xnet@seznam.cz)
	        Jan Uhlir (espinosa@centrum.cz)
*/

// ** I18N
Zapatec.Calendar._DN  = new Array('Neděle','Pondělí','Úterý','Středa','Čtvrtek','Pátek','Sobota','Neděle');
Zapatec.Calendar._SDN = new Array('Ne','Po','Út','St','Čt','Pá','So','Ne');
Zapatec.Calendar._MN  = new Array('Leden','Únor','Březen','Duben','Květen','Červen','Červenec','Srpen','Září','Říjen','Listopad','Prosinec');
Zapatec.Calendar._SMN = new Array('Led','Úno','Bře','Dub','Kvě','Črv','Čvc','Srp','Zář','Říj','Lis','Pro');

// tooltips
Zapatec.Calendar._TT_cs = Zapatec.Calendar._TT = {};
Zapatec.Calendar._TT["INFO"] = "O komponentě kalendář";
Zapatec.Calendar._TT["TOGGLE"] = "Změna prvního dne v týdnu";
Zapatec.Calendar._TT["PREV_YEAR"] = "Předchozí rok (přidrž pro menu)";
Zapatec.Calendar._TT["PREV_MONTH"] = "Předchozí měsíc (přidrž pro menu)";
Zapatec.Calendar._TT["GO_TODAY"] = "Dnešní datum";
Zapatec.Calendar._TT["NEXT_MONTH"] = "Další měsíc (přidrž pro menu)";
Zapatec.Calendar._TT["NEXT_YEAR"] = "Další rok (přidrž pro menu)";
Zapatec.Calendar._TT["SEL_DATE"] = "Vyber datum";
Zapatec.Calendar._TT["DRAG_TO_MOVE"] = "Chyť a táhni, pro přesun";
Zapatec.Calendar._TT["PART_TODAY"] = " (dnes)";
Zapatec.Calendar._TT["MON_FIRST"] = "Ukaž jako první Pondělí";
//Zapatec.Calendar._TT["SUN_FIRST"] = "Ukaž jako první Neděli";

Zapatec.Calendar._TT["ABOUT"] =
"DHTML Date/Time Selector\n" +
"(c) zapatec.com 2002-2007\n" + // don't translate this this ;-)
"For latest version visit: http://www.zapatec.com/\n" +
"This translation distributed under GNU LGPL.  See http://gnu.org/licenses/lgpl.html for details." +
"\n\n" +
"Výběr datumu:\n" +
"- Use the \xab, \xbb buttons to select year\n" +
"- Použijte tlačítka " + String.fromCharCode(0x2039) + ", " + String.fromCharCode(0x203a) + " k výběru měsíce\n" +
"- Podržte tlačítko myši na jakémkoliv z těch tlačítek pro rychlejší výběr.";

Zapatec.Calendar._TT["ABOUT_TIME"] = "\n\n" +
"Výběr času:\n" +
"- Klikněte na jakoukoliv z částí výběru času pro zvýšení.\n" +
"- nebo Shift-click pro snížení\n" +
"- nebo klikněte a táhněte pro rychlejší výběr.";

// the following is to inform that "%s" is to be the first day of week
// %s will be replaced with the day name.
Zapatec.Calendar._TT["DAY_FIRST"] = "Zobraz %s první";

// This may be locale-dependent.  It specifies the week-end days, as an array
// of comma-separated numbers.  The numbers are from 0 to 6: 0 means Sunday, 1
// means Monday, etc.
Zapatec.Calendar._TT["WEEKEND"] = "0,6";

Zapatec.Calendar._TT["CLOSE"] = "Zavřít";
Zapatec.Calendar._TT["TODAY"] = "Dnes";
Zapatec.Calendar._TT["TIME_PART"] = "(Shift-)Klikni nebo táhni pro změnu hodnoty";

// date formats
Zapatec.Calendar._TT["DEF_DATE_FORMAT"] = "d.m.yy";
Zapatec.Calendar._TT["TT_DATE_FORMAT"] = "%a, %b %e";

Zapatec.Calendar._TT["WK"] = "wk";
Zapatec.Calendar._TT["TIME"] = "Čas:";

/* Preserve data */
	if(Zapatec.Calendar._DN) Zapatec.Calendar._TT._DN = Zapatec.Calendar._DN;
	if(Zapatec.Calendar._SDN) Zapatec.Calendar._TT._SDN = Zapatec.Calendar._SDN;
	if(Zapatec.Calendar._SDN_len) Zapatec.Calendar._TT._SDN_len = Zapatec.Calendar._SDN_len;
	if(Zapatec.Calendar._MN) Zapatec.Calendar._TT._MN = Zapatec.Calendar._MN;
	if(Zapatec.Calendar._SMN) Zapatec.Calendar._TT._SMN = Zapatec.Calendar._SMN;
	if(Zapatec.Calendar._SMN_len) Zapatec.Calendar._TT._SMN_len = Zapatec.Calendar._SMN_len;
	Zapatec.Calendar._DN = Zapatec.Calendar._SDN = Zapatec.Calendar._SDN_len = Zapatec.Calendar._MN = Zapatec.Calendar._SMN = Zapatec.Calendar._SMN_len = null
;
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('if(2v 1r=="2Z"){1b 1r={}}if(2v 1r.3E=="2Z"){1r.3E={}}if(2v 1r.3C=="2Z"){1r.3C={}}1r.6Q=1c(9C,id,w,h,9y,c,aG,cf,c9,bn){if(!1g.8K){1d}1e.iK=bn?bn:"jO";1e.hM=1r.3E.as(1e.iK);1e.aV={};1e.7w={};1e.cN=[];if(9C){1e.2g("5h",9C)}if(id){1e.2g("id",id)}if(w){1e.2g("1A",w)}if(h){1e.2g("1m",h)}if(9y){1e.2g("6j",1p 1r.3r(9y.9G().2q(".")))}1e.6m=1r.3C.i5();if(!1v.iF&&1g.6A&&1e.6m.4R>7){if(!1r.iX){1r.3C.j7=1c(){ks=1c(){};ku=1c(){};1v.8n("kp",1r.3C.ho)};1v.8n("jN",1r.3C.j7);1r.iX=1I}}if(c){1e.9V("lv",c)}1b q=aG?aG:"kN";1e.9V("kF",q);1e.2g("8a",1o);1e.2g("6n",1o);1b jg=(cf)?cf:1v.9i;1e.2g("gd",jg);1e.2g("8N","");if(c9){1e.2g("8N",c9)}};1r.6Q.hG={8a:1c(bN){1e.aR=!bN?"l2.5h":bN;1e.2g("8a",1I)},2g:1c(gA,gU){1e.cN[gA]=gU},1w:1c(g1){1d 1e.cN[g1]||""},9V:1c(g2,fX){1e.aV[g2]=fX},9P:1c(){1d 1e.aV},6v:1c(fW,fQ){1e.7w[fW]=fQ},lC:1c(fO){1d 1e.7w[fO]||""},fS:1c(){1d 1e.7w},cB:1c(){1b 7e=[];1b 2i;1b an=1e.fS();1s(2i in an){7e[7e.1n]=2i+"="+an[2i]}1d 7e},ik:1c(){1b 2B="";if(3t.bL&&3t.bI&&3t.bI.1n){if(1e.1w("6n")){1e.6v("gm","lx");1e.2g("5h",1e.aR)}2B="<9r 3g=\\"ly/x-lz-lG\\" 2W=\\""+1e.1w("5h")+"\\" 1A=\\""+1e.1w("1A")+"\\" 1m=\\""+1e.1w("1m")+"\\" 1q=\\""+(1e.1w("1q")||"")+"\\"";2B+=" id=\\""+1e.1w("id")+"\\" 1x=\\""+1e.1w("id")+"\\" ";1b ar=1e.9P();1s(1b 2i in ar){2B+=[2i]+"=\\""+ar[2i]+"\\" "}1b b2=1e.cB().6O("&");if(b2.1n>0){2B+="g8=\\""+b2+"\\""}2B+="/>"}1j{if(1e.1w("6n")){1e.6v("gm","lL");1e.2g("5h",1e.aR)}2B="<8h id=\\""+1e.1w("id")+"\\" lK=\\"lH:lI-lJ-li-lj-lh\\" 1A=\\""+1e.1w("1A")+"\\" 1m=\\""+1e.1w("1m")+"\\" 1q=\\""+(1e.1w("1q")||"")+"\\">";2B+="<cz 1x=\\"kx\\" 2z=\\""+1e.1w("5h")+"\\" />";1b 9O=1e.9P();1s(1b 2i in 9O){2B+="<cz 1x=\\""+2i+"\\" 2z=\\""+9O[2i]+"\\" />"}1b co=1e.cB().6O("&");if(co.1n>0){2B+="<cz 1x=\\"g8\\" 2z=\\""+co+"\\" />"}2B+="</8h>"}1d 2B},eC:1c(8Y){if(1e.1w("8a")){1b gb=1p 1r.3r([6,0,65]);if(1e.6m.8A(gb)&&!1e.6m.8A(1e.1w("6j"))){1e.2g("6n",1I);1e.6v("lm",ls(1e.1w("gd")));1g.5H=1g.5H.lr(0,47)+" - hj lo lp";1e.6v("k4",1g.5H)}}if(1e.hM||1e.1w("6n")||1e.6m.8A(1e.1w("6j"))){1b n=(2v 8Y=="6r")?1g.8K(8Y):8Y;n.kw=1e.ik();1d 1I}1j{if(1e.1w("8N")!=""){1g.9i.1Y(1e.1w("8N"))}}1d 1o}};1r.3C.i5=1c(){1b 3I=1p 1r.3r([0,0,0]);if(3t.bL&&3t.bI.1n){1b x=3t.bL["kf hj"];if(x&&x.hk){3I=1p 1r.3r(x.hk.1Y(/([a-k8-Z]|\\s)+/,"").1Y(/(\\s+r|\\s+b[0-9]+)/,".").2q("."))}}1j{if(3t.cb&&3t.cb.7s("jP jZ")>=0){1b 2X=1;1b 8W=3;3e(2X){4u{8W++;2X=1p 8H("3B.3B."+8W);3I=1p 1r.3r([8W,0,0])}4A(e){2X=1y}}}1j{4u{1b 2X=1p 8H("3B.3B.7")}4A(e){4u{1b 2X=1p 8H("3B.3B.6");3I=1p 1r.3r([6,0,21]);2X.jT="oG"}4A(e){if(3I.4R==6){1d 3I}}4u{2X=1p 8H("3B.3B")}4A(e){}}if(2X!=1y){3I=1p 1r.3r(2X.nK("$6j").2q(" ")[1].2q(","))}}}1d 3I};1r.3r=1c(4M){1e.4R=4M[0]!=1y?2k(4M[0]):0;1e.5Y=4M[1]!=1y?2k(4M[1]):0;1e.bZ=4M[2]!=1y?2k(4M[2]):0};1r.3r.hG.8A=1c(fv){if(1e.4R<fv.4R){1d 1o}if(1e.4R>fv.4R){1d 1I}if(1e.5Y<fv.5Y){1d 1o}if(1e.5Y>fv.5Y){1d 1I}if(1e.bZ<fv.bZ){1d 1o}1d 1I};1r.3E={as:1c(bF){1b q=1g.9i.9p||1g.9i.nL;if(bF==1y){1d q}if(q){1b 5I=q.6k(1).2q("&");1s(1b i=0;i<5I.1n;i++){if(5I[i].6k(0,5I[i].7s("="))==bF){1d 5I[i].6k((5I[i].7s("=")+1))}}}1d""}};1r.3C.ho=1c(){1b 5C=1g.ba("nM");1s(1b i=5C.1n-1;i>=0;i--){5C[i].1q.2D="4X";1s(1b x in 5C[i]){if(2v 5C[i][x]=="1c"){5C[i][x]=1c(){}}}}};if(!1g.8K&&1g.6A){1g.8K=1c(id){1d 1g.6A[id]}}1b nJ=1r.3E.as;1b nI=1r.6Q;1b 6Q=1r.6Q;2t.4f(2t.8X,{nE:1c(x,t,b,c,d){1d c*(t/=d)*t+b},nF:1c(x,t,b,c,d){if(t<d/2)1d 2*c*t*t/(d*d)+b;1b ts=t-d/2;1d-2*c*ts*ts/(d*d)+2*c*ts/d+c/2+b},nG:1c(x,t,b,c,d){1d-c*t*t/(d*d)+2*c*t/d+b},nN:1c(x,t,b,c,d){1b 3a=1;if(c<0){3a*=-1;c*=-1}1d 3a*(1l.8Q(1l.8E(c)/d*t))+b},nS:1c(x,t,b,c,d){1b 3a=1;if(c<0){3a*=-1;c*=-1}1d 3a*(-1l.8Q(-1l.8E(c)/d*(t-d))+c+1)+b},nQ:1c(x,t,b,c,d){1b 3a=1;if(c<0){3a*=-1;c*=-1}if(t<d/2)1d 3a*(1l.8Q(1l.8E(c/2)/(d/2)*t))+b;1d 3a*(-1l.8Q(-2*1l.8E(c/2)/d*(t-d))+c+1)+b},il:1c(x,t,b,c,d){1d c-2t.8X[\'9M\'](x,d-t,0,c,d)+b},9M:1c(x,t,b,c,d){if((t/=d)<(1/2.75)){1d c*(7.9e*t*t)+b}1j if(t<(2/2.75)){1d c*(7.9e*(t-=(1.5/2.75))*t+.75)+b}1j if(t<(2.5/2.75)){1d c*(7.9e*(t-=(2.25/2.75))*t+.nR)+b}1j{1d c*(7.9e*(t-=(2.iB/2.75))*t+.nD)+b}},nC:1c(x,t,b,c,d){if(t<d/2)1d 2t.8X[\'il\'](x,t*2,0,c,d)*.5+b;1d 2t.8X[\'9M\'](x,t*2-d,0,c,d)*.5+c*.5+b},nl:1c(x,t,b,c,d){1b s=1.5k;1b p=0;1b a=c;if(t==0)1d b;if((t/=d)==1)1d b+c;if(!p)p=d*.3;if(a<1l.ck(c)){a=c;1b s=p/4}1j 1b s=p/(2*1l.4t)*1l.cX(c/a);1d-(a*1l.8B(2,10*(t-=1))*1l.9b((t*d-s)*(2*1l.4t)/p))+b},nk:1c(x,t,b,c,d){1b s=1.5k;1b p=0;1b a=c;if(t==0)1d b;if((t/=d)==1)1d b+c;if(!p)p=d*.3;if(a<1l.ck(c)){a=c;1b s=p/4}1j 1b s=p/(2*1l.4t)*1l.cX(c/a);1d a*1l.8B(2,-10*t)*1l.9b((t*d-s)*(2*1l.4t)/p)+c+b},ng:1c(x,t,b,c,d){1b s=1.5k;1b p=0;1b a=c;if(t==0)1d b;if((t/=d/2)==2)1d b+c;if(!p)p=d*(.3*1.5);if(a<1l.ck(c)){a=c;1b s=p/4}1j 1b s=p/(2*1l.4t)*1l.cX(c/a);if(t<1)1d-.5*(a*1l.8B(2,10*(t-=1))*1l.9b((t*d-s)*(2*1l.4t)/p))+b;1d a*1l.8B(2,-10*(t-=1))*1l.9b((t*d-s)*(2*1l.4t)/p)*.5+c+b},ni:1c(x,t,b,c,d){1b s=1.5k;1d c*(t/=d)*t*((s+1)*t-s)+b},nj:1c(x,t,b,c,d){1b s=1.5k;1d c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},lQ:1c(x,t,b,c,d){1b s=1.5k;if((t/=d/2)<1)1d c/2*(t*t*(((s*=(1.gc))+1)*t-s))+b;1d c/2*((t-=2)*t*(((s*=(1.gc))+1)*t+s)+2)+b}});2t.3O=1c(1x,2z,1J){if(2v 2z!=\'2Z\'){1J=1J||{};if(2z===1y){2z=\'\';1J.2L=-1}1b 2L=\'\';if(1J.2L&&(2v 1J.2L==\'ax\'||1J.2L.gg)){1b 3J;if(2v 1J.2L==\'ax\'){3J=1p aM();3J.nt(3J.nu()+(1J.2L*24*60*60*nv))}1j{3J=1J.2L}2L=\'; 2L=\'+3J.gg()}1b 5x=1J.5x?\'; 5x=\'+(1J.5x):\'\';1b 6e=1J.6e?\'; 6e=\'+(1J.6e):\'\';1b 9l=1J.9l?\'; 9l\':\'\';1g.3O=[1x,\'=\',nY(2z),2L,5x,6e,9l].6O(\'\')}1j{1b bP=1y;if(1g.3O&&1g.3O!=\'\'){1b bR=1g.3O.2q(\';\');1s(1b i=0;i<bR.1n;i++){1b 3O=2t.ot(bR[i]);if(3O.6k(0,1x.1n+1)==(1x+\'=\')){bP=ov(3O.6k(1x.1n+1));3s}}}1d bP}};(1c($){$.os={6j:\'@or\'};$.6Z([\'5S\',\'bY\'],1c(i,1x){$.fn[\'om\'+1x]=1c(){if(!1e[0])1d;1b 5o=1x==\'5S\'?\'7h\':\'6h\',5m=1x==\'5S\'?\'gl\':\'gj\';1d 2j(1e,1x.2R())+2j(1e,\'6N\'+5o)+2j(1e,\'6N\'+5m)};$.fn[\'oo\'+1x]=1c(1J){if(!1e[0])1d;1b 5o=1x==\'5S\'?\'7h\':\'6h\',5m=1x==\'5S\'?\'gl\':\'gj\';1J=$.4f({7a:1o},1J||{});1d 2j(1e,1x.2R())+2j(1e,\'gk\'+5o+\'bY\')+2j(1e,\'gk\'+5m+\'bY\')+2j(1e,\'6N\'+5o)+2j(1e,\'6N\'+5m)+(1J.7a?(2j(1e,\'7a\'+5o)+2j(1e,\'7a\'+5m)):0)}});$.6Z([\'6h\',\'7h\'],1c(i,1x){$.fn[\'6g\'+1x]=1c(6l){if(!1e[0])1d;1d 6l!=2Z?1e.6Z(1c(){1e==1v||1e==1g?1v.oq(1x==\'6h\'?6l:$(1v)[\'b9\'](),1x==\'7h\'?6l:$(1v)[\'7J\']()):1e[\'6g\'+1x]=6l}):1e[0]==1v||1e[0]==1g?4j[(1x==\'6h\'?\'jK\':\'bc\')]||$.ow&&1g.2A[\'6g\'+1x]||1g.1V[\'6g\'+1x]:1e[0][\'6g\'+1x]}});$.fn.4f({2E:1c(){1b 1z=0,2m=0,7q=1e[0],3j,5l,2c,cd;if(7q){2c=1e.2c();3j=1e.3j();5l=2c.3j();3j.2m-=2j(7q,\'dA\');3j.1z-=2j(7q,\'ox\');5l.2m+=2j(2c,\'g3\');5l.1z+=2j(2c,\'g4\');cd={2m:3j.2m-5l.2m,1z:3j.1z-5l.1z}}1d cd},2c:1c(){1b 2c=1e[0].2c;3e(2c&&(!/^1V|5J$/i.3f(2c.oD)&&$.1O(2c,\'2E\')==\'oE\'))2c=2c.2c;1d $(2c)}});1c 2j(el,4E){1d 2k($.1O(el.2G?el[0]:el,4E))||0}})(2t);(1c($){$.fn.oF=$.fn.bj=1c(s){if($.gz.gv&&/6.0/.3f(3t.cb)){s=$.4f({2m:\'3N\',1z:\'3N\',1A:\'3N\',1m:\'3N\',3X:1I,2W:\'oC:1o;\'},s||{});1b 4E=1c(n){1d n&&n.oB==oy?n+\'px\':n},5J=\'<bX oz="bj"oA="0"ok="-1"2W="\'+s.2W+\'"\'+\'1q="2D:4x;2E:5R;z-oj:-1;\'+(s.3X!==1o?\'o5:o6(o7=\\\'0\\\');\':\'\')+\'2m:\'+(s.2m==\'3N\'?\'7x(((2k(1e.7A.6H.g3)||0)*-1)+\\\'px\\\')\':4E(s.2m))+\';\'+\'1z:\'+(s.1z==\'3N\'?\'7x(((2k(1e.7A.6H.g4)||0)*-1)+\\\'px\\\')\':4E(s.1z))+\';\'+\'1A:\'+(s.1A==\'3N\'?\'7x(1e.7A.jk+\\\'px\\\')\':4E(s.1A))+\';\'+\'1m:\'+(s.1m==\'3N\'?\'7x(1e.7A.aU+\\\'px\\\')\':4E(s.1m))+\';\'+\'"/>\';1d 1e.6Z(1c(){if($(\'> bX.bj\',1e).1n==0)1e.ix(1g.1U(5J),1e.3W)})}1d 1e}})(2t);(1c($){$.fn.o4=1c(1h){1h=2t.4f({gP:\'#o3\',gN:0.8,7G:1o,gT:\'/6o/6p/1i/1i-o1-3G.6q\',9K:\'/6o/6p/1i/1i-bx-o2.6q\',9T:\'/6o/6p/1i/1i-bx-o8.6q\',gS:\'/6o/6p/1i/1i-bx-o9.6q\',7E:\'/6o/6p/1i/1i-og.6q\',8k:10,gL:5T,gB:\'oh\',gH:\'/\',ju:\'c\',jv:\'p\',jy:\'n\',2a:[],1t:0},1h);1b 4D=1e;1c jG(){gq(1e,4D);1d 1o}1c gq(8f,4D){$(\'9r, 8h, bU\').1O({\'jd\':\'fb\'});gR();1h.2a.1n=0;1h.1t=0;if(4D.1n==1){1h.2a.2x(1p 7X(8f.1w(\'4J\'),8f.1w(\'5H\')))}1j{1s(1b i=0;i<4D.1n;i++){1h.2a.2x(1p 7X(4D[i].1w(\'4J\'),4D[i].1w(\'5H\')))}}3e(1h.2a[1h.1t][0]!=8f.1w(\'4J\')){1h.1t++}4b()}1c gR(){$(\'1V\').oi(\'<1R id="2G-5g"></1R><1R id="2G-1i"><1R id="1i-2N-1B-3H-3b"><1R id="1i-2N-1B-3H"><1R id="1i-1B-3u"><6R id="1i-1B-3u-8m"></6R><6R id="1i-1B-3u-8p"></6R></1R><1R id="1i-cQ"><a 4J="#" id="1i-cQ-gO"><bC 2W="\'+1h.gS+\'"></a></1R></1R></1R><1R id="1i-2N-1B-3b"><1R id="1i-2N-1B"><bC id="1i-1B"><1R 1q="" id="1i-2h"><a 4J="#" id="1i-2h-5e"></a><a 4J="#" id="1i-2h-4V"></a></1R><1R id="1i-3G"><a 4J="#" id="1i-3G-aL"><bC 2W="\'+1h.gT+\'"></a></1R></1R></1R></1R>\');1b 3P=aW();$(\'#2G-5g\').1O({of:1h.gP,3X:1h.gN,1A:3P[0],1m:3P[1]}).gt();1b 5u=b1();$(\'#2G-1i\').1O({2m:5u[1]+(3P[3]/10),1z:5u[0]}).4k();$(\'#2G-5g,#2G-1i\').3L(1c(){7S()});$(\'#1i-3G-aL,#1i-cQ-gO\').3L(1c(){7S();1d 1o});$(1v).oe(1c(){1b 3P=aW();$(\'#2G-5g\').1O({1A:3P[0],1m:3P[1]});1b 5u=b1();$(\'#2G-1i\').1O({2m:5u[1]+(3P[3]/10),1z:5u[0]})})}1c 4b(){$(\'#1i-3G\').4k();if(1h.7G){$(\'#1i-1B,#1i-2N-1B-3H-3b,#1i-1B-3u-8p\').8q()}1j{$(\'#1i-1B,#1i-2h,#1i-2h-5e,#1i-2h-4V,#1i-2N-1B-3H-3b,#1i-1B-3u-8p\').8q()}1b 5r=1p 9D();5r.gV=1c(){$(\'#1i-1B\').oa(\'2W\',1h.2a[1h.1t][0]);h1(5r.1A,5r.1m);5r.gV=1c(){}};5r.2W=1h.2a[1h.1t][0]};1c h1(cH,cJ){1b h0=$(\'#1i-2N-1B-3b\').1A();1b gX=$(\'#1i-2N-1B-3b\').1m();1b cq=(cH+(1h.8k*2));1b cl=(cJ+(1h.8k*2));1b gx=h0-cq;1b gy=gX-cl;$(\'#1i-2N-1B-3b\').ob({1A:cq,1m:cl},1h.gL,1c(){gs()});if((gx==0)&&(gy==0)){if($.gz.gv){b7(oc)}1j{b7(1F)}}$(\'#1i-2N-1B-3H-3b\').1O({1A:cH});$(\'#1i-2h-5e,#1i-2h-4V\').1O({1m:cJ+(1h.8k*2)})};1c gs(){$(\'#1i-3G\').8q();$(\'#1i-1B\').gt(1c(){gu();gD()});jx()};1c gu(){$(\'#1i-2N-1B-3H-3b\').od(\'nf\');$(\'#1i-1B-3u-8m\').8q();if(1h.2a[1h.1t][1]){$(\'#1i-1B-3u-8m\').5J(\'<h2>\'+1h.2a[1h.1t][1]+\'</h2>\').4k()}if(1h.2a.1n>1){$(\'#1i-1B-3u-8p\').5J(\'<p>(\'+1h.gB+\' \'+(1h.1t+1)+\'\'+1h.gH+\'\'+1h.2a.1n+\')</p>\').4k()}$(\'#1i-1B-3u-8m\').1O({2m:($(\'#1i-1B\').1m()-20)+\'px\'});$.mj(mk+\'js/1C-ml.js\')}1c gD(){$(\'#1i-2h\').4k();$(\'#1i-2h-5e,#1i-2h-4V\').1O({\'4l\':\'a2 3l(\'+1h.7E+\') no-3q\'});if(1h.1t!=0){if(1h.7G){$(\'#1i-2h-5e\').1O({\'4l\':\'3l(\'+1h.9K+\') 1z 50% no-3q\'}).5d().7F(\'3L\',1c(){1h.1t=1h.1t-1;4b();1d 1o})}1j{$(\'#1i-2h-5e\').5d().5B(1c(){$(1e).1O({\'4l\':\'3l(\'+1h.9K+\') 1z 50% no-3q\'})},1c(){$(1e).1O({\'4l\':\'a2 3l(\'+1h.7E+\') no-3q\'})}).4k().7F(\'3L\',1c(){1h.1t=1h.1t-1;4b();1d 1o})}}if(1h.1t!=(1h.2a.1n-1)){if(1h.7G){$(\'#1i-2h-4V\').1O({\'4l\':\'3l(\'+1h.9T+\') aF 50% no-3q\'}).5d().7F(\'3L\',1c(){1h.1t=1h.1t+1;4b();1d 1o})}1j{$(\'#1i-2h-4V\').5d().5B(1c(){$(1e).1O({\'4l\':\'3l(\'+1h.9T+\') aF 50% no-3q\'})},1c(){$(1e).1O({\'4l\':\'a2 3l(\'+1h.7E+\') no-3q\'})}).4k().7F(\'3L\',1c(){1h.1t=1h.1t+1;4b();1d 1o})}}gE()}1c gE(){$(1g).mh(1c(4W){jt(4W)})}1c 9w(){$(1g).5d()}1c jt(4W){if(4W==1y){4T=jb.jr;9Z=27}1j{4T=4W.jr;9Z=4W.md}2i=iL.me(4T).2R();if((2i==1h.ju)||(2i==\'x\')||(4T==9Z)){7S()}if((2i==1h.jv)||(4T==37)){if(1h.1t!=0){1h.1t=1h.1t-1;4b();9w()}}if((2i==1h.jy)||(4T==39)){if(1h.1t!=(1h.2a.1n-1)){1h.1t=1h.1t+1;4b();9w()}}}1c jx(){if((1h.2a.1n-1)>1h.1t){jw=1p 9D();jw.2W=1h.2a[1h.1t+1][0]}if(1h.1t>0){jo=1p 9D();jo.2W=1h.2a[1h.1t-1][0]}}1c 7S(){$(\'#2G-1i\').je();$(\'#2G-5g\').mn(1c(){$(\'#2G-5g\').je()});$(\'9r, 8h, bU\').1O({\'jd\':\'mu\'})}1c aW(){1b 2P,2T;if(1v.7T&&1v.ji){2P=1v.jj+1v.mv;2T=1v.7T+1v.ji}1j if(1g.1V.jl>1g.1V.aU){2P=1g.1V.mw;2T=1g.1V.jl}1j{2P=1g.1V.jk;2T=1g.1V.aU}1b 3Z,4i;if(4j.7T){if(1g.2A.7W){3Z=1g.2A.7W}1j{3Z=4j.jj}4i=4j.7T}1j if(1g.2A&&1g.2A.aP){3Z=1g.2A.7W;4i=1g.2A.aP}1j if(1g.1V){3Z=1g.1V.7W;4i=1g.1V.aP}if(2T<4i){aS=4i}1j{aS=2T}if(2P<3Z){a8=2P}1j{a8=3Z}jA=1p 7X(a8,aS,3Z,4i);1d jA};1c b1(){1b 2P,2T;if(4j.bc){2T=4j.bc;2P=4j.jK}1j if(1g.2A&&1g.2A.7J){2T=1g.2A.7J;2P=1g.2A.b9}1j if(1g.1V){2T=1g.1V.7J;2P=1g.1V.b9}jC=1p 7X(2P,2T);1d jC};1c b7(ms){1b 3J=1p aM();aq=1y;do{1b aq=1p aM()}3e(aq-3J<ms)};1d 1e.5d(\'3L\').3L(jG)}})(2t);1b 2r=(1c(){1b m=1c(){1d m.1Y.3K(1y,2s)};1b x=m.mt={4I:(1c(){1b C=1o,E={mr:1,mo:1};1b B=[],D=1c(){if(C){1d}C=1I;1s(1b F;F=B.iQ();F()){}};if(1g.6y){1g.6y("mp",D,1o);1v.6y("mq",D,1o)}if(!1v.iF&&1g.aj){(1c(){E[1g.aj]?D():7C(2s.7v,10)})()}if(1g.aj&&1g.iS){(1c(){4u{1g.1V.lY("1z");D()}4A(F){7C(2s.7v,1)}})()}q(1v,"lZ",D);1d 1c(F){if(!2s.1n){D()}1j{C?F():B.2x(F)}}})(),cr:1c(){1d 1g.2A||1g.1V}};1b n=m.3p={ct:1c(C,B){1e.2z=3o(C);1e.iJ=iL(C).aD(/[a-z%]*$/)[0]||"px";1e.2p=1c(D){1d D/B*1e.2z};1e.4Z=1c(D){1d D/1e.2z*B};1e.9G=1c(){1d 1e.2z+1e.iJ}},cw:1c(C,B){1b D=C.4P;C.4P=D+(D&&" ")+B;1d C},1X:j(1c(C){1b B={};B.1X=C.1Y(/^lR\\((.*?),\\s*([\\d.]+)\\)/,1c(E,D,F){B.3X=3o(F);1d"lS("+D+")"});1d B}),6t:j(1c(B){if(2v B=="ax"){1d B}if(/%$/.3f(B)){1d 3o(B)/1F}1d{"iv-7u":0.5,"is-7u":0.iB,7u:0.75,"fN-7u":0.lT,"fN-7r":1.1Z,7r:1.25,"is-7r":1.5,"iv-7r":2}[B]||1}),bs:1c(C){1b B=1g.m1;if(B&&B.iA){1d 1p a(B.iA(C,1y))}if(C.6H){1d 1p a(C.6H)}1d 1p a(C.1q)},9h:j(1c(F){1b G={id:F,3g:F.aD(/^-([a-z]+)-9h\\(/)[1],9m:[]},C=F.m8(F.7s("(")).aD(/([\\d.]+=)?(#[a-f0-9]+|[a-z]+\\(.*?\\)|[a-z]+)/ig);1s(1b E=0,B=C.1n,D;E<B;++E){D=C[E].2q("=",2).m9();G.9m.2x([D[1]||E/(B-1),D[0]])}1d G}),iD:j(1c(E){1b D=[],C=/\\s*((["\'])([\\s\\S]*?[^\\\\])\\2|[^,]+)\\s*/g,B;3e(B=C.9Y(E)){D.2x(B[3]||B[1])}1d D}),b3:j(1c(G){1b E=1g.1U("1q"),D,C,B;E.3g="3w/1O";E.4r=G;4u{E.2b(1g.8C("/**/"))}4A(F){}C=g("9s")[0];C.ix(E,C.3W);D=(E.iT||E.iY);B=D&&!D.be;C.8t(E);1d B}),dm:1c(D,C){1b B=ma("(?:^|\\\\s+)"+C+"(?=\\\\s|$)","g");D.4P=D.4P.1Y(B,"");1d D},du:1c(D,C){1b B=1g.1U("6R").1q;if(B[D]===2Z){1d 1o}B[D]=C;1d B[D]===C},bt:1c(E,D,B,C){if(D.1G("bt")=="aF"){if(B>0){E=" "+E}}1j{if(B<C-1){E+=" "}}1d E},3y:j(1c(F){if(F=="4X"){1d 1y}1b E=[],G={},B,C=0;1b D=/(#[a-f0-9]+|[a-z]+\\(.*?\\)|[a-z]+)|(-?[\\d.]+[a-z%]*)|,/ig;3e(B=D.9Y(F)){if(B[0]==","){E.2x(G);G={};C=0}1j{if(B[1]){G.1X=B[1]}1j{G[["7g","8u","m7"][C++]]=B[2]}}}E.2x(G);1d E}),8G:(1c(){1b B={m2:1c(C){1d C.j9()},m3:1c(C){1d C.2R()},m4:1c(C){1d C.1Y(/\\b./g,1c(D){1d D.j9()})}};1d 1c(E,D){1b C=B[D.1G("8G")];1d C?C(E):E}})(),jI:(1c(){1b D={3A:1,"3A-4x":1,"m5-in":1};1b C=/^\\s+/,B=/\\s+$/;1d 1c(H,F,G,E){if(E){if(E.7k.2R()=="br"){H=H.1Y(C,"")}}if(D[F.1G("2D")]){1d H}if(!G.mx){H=H.1Y(C,"")}if(!G.bK){H=H.1Y(B,"")}1d H}})()};n.4I=(1c(){1b B=!n.b3("6A"),E=1o;1b D=[],H=1c(){B=1I;1s(1b K;K=D.iQ();K()){}};1b I=g("aL"),J=g("1q");1c C(K){1d K.be||G(K.iT,K.4r||"cV")}1c G(M,P){if(!n.b3(P||"6A")){1d 1I}if(!M||M.be){1d 1o}4u{1b Q=M.n2,O;if(Q){9p:1s(1b L=0,K=Q.1n;O=Q[L],L<K;++L){fH(O.3g){4d 2:3s;4d 3:if(!G(O.iY,O.4r.n3)){1d 1o}3s;cv:3s 9p}}}}4A(N){}1d 1I}1c F(){if(1g.iS){1d 1I}1b L,K;1s(K=0;L=I[K];++K){if(L.mZ.2R()=="mV"&&!C(L)){1d 1o}}1s(K=0;L=J[K];++K){if(!C(L)){1d 1o}}1d 1I}x.4I(1c(){if(!E){E=n.bs(1g.1V).iu()}if(B||(E&&F())){H()}1j{7C(2s.7v,10)}});1d 1c(K){if(B){K()}1j{D.2x(K)}}})();1c s(D){1b C=1e.7p=D.7p,B={"\\mW":1,"\\6B":1,"\\mX":1};1e.4B=D.4B;1e.w=D.w;1e.cj=2k(C["ay-aJ-em"],10);1e.6E=C["2K-6E"].2R();1e.6V=C["2K-6V"];1e.1q=C["2K-1q"]||"4p";1e.az=(1c(){1b F=C.av.2q(/\\s+/);1b E={6T:2k(F[0],10),5a:2k(F[1],10),j6:2k(F[2],10),cg:2k(F[3],10)};E.1A=E.j6-E.6T;E.1m=E.cg-E.5a;E.9G=1c(){1d[1e.6T,1e.5a,1e.1A,1e.1m].6O(" ")};1d E})();1e.4H=-2k(C.4H,10);1e.6S=-2k(C.6S,10);1e.1m=-1e.4H+1e.6S;1e.at=1c(L,N,E){1b O=1e.4B,M,K,G,P=[],F=0,J=-1,I=-1,H;3e(H=L[++J]){M=O[H]||1e.cx;if(!M){5P}if(K){F-=G=K[H]||0;P[I]-=G}F+=P[++I]=~~(M.w||1e.w)+N+(B[H]?E:0);K=M.k}P.bb=F;1d P}}1c f(){1b C={},B={9Q:"9L",9L:"9Q"};1e.6w=1c(D){(C[D.1q]||(C[D.1q]={}))[D.6V]=D};1e.1G=1c(H,I){1b G=C[H]||C[B[H]]||C.4p||C.9L||C.9Q;if(!G){1d 1y}I={4p:5T,mY:f7}[I]||2k(I,10);if(G[I]){1d G[I]}1b E={1:1,99:0}[I%1F],K=[],F,D;if(E===2Z){E=I>5T}if(I==n4){I=5T}1s(1b J in G){if(!k(G,J)){5P}J=2k(J,10);if(!F||J<F){F=J}if(!D||J>D){D=J}K.2x(J)}if(I<F){I=F}if(I>D){I=D}K.n5(1c(M,L){1d(E?(M>=I&&L>=I)?M<L:M>L:(M<=I&&L<=I)?M>L:M<L)?-1:1});1d G[K[0]]}}1c r(){1c D(F,G){if(F.j4){1d F.j4(G)}1d F.nb(G)&16}1c B(G){1b F=G.nc;if(!F||D(1e,F)){1d}C(1e,G.3g=="iy")}1c E(F){C(1e,F.3g=="ir")}1c C(F,G){7C(1c(){1b H=d.1G(F).1J;m.1Y(F,G?h(H,H.5B):H,1I)},10)}1e.iI=1c(F){if(F.nd===2Z){q(F,"iy",B);q(F,"na",B)}1j{q(F,"ir",E);q(F,"n6",E)}}}1c u(){1b C=[],D={};1c B(H){1b E=[],G;1s(1b F=0;G=H[F];++F){E[F]=C[D[G]]}1d E}1e.6w=1c(F,E){D[F]=C.2x(E)-1};1e.3q=1c(){1b E=2s.1n?B(2s):C,F;1s(1b G=0;F=E[G++];){m.1Y(F[0],F[1],1I)}}}1c A(){1b D={},B=0;1c C(E){1d E.it||(E.it=++B)}1e.1G=1c(E){1b F=C(E);1d D[F]||(D[F]={})}}1c a(B){1b D={},C={};1e.4f=1c(E){1s(1b F in E){if(k(E,F)){D[F]=E[F]}}1d 1e};1e.1G=1c(E){1d D[E]!=2Z?D[E]:B[E]};1e.dX=1c(F,E){1d C[F]||(C[F]=1p n.ct(1e.1G(F),E))};1e.iu=1c(){1d!!B}}1c q(C,B,D){if(C.6y){C.6y(B,D,1o)}1j{if(C.8n){C.8n("on"+B,1c(){1d D.mT(C,1v.jb)})}}}1c v(C,B){1b D=d.1G(C);if(D.1J){1d C}if(B.5B&&B.jz[C.7k.2R()]){b.iI(C)}D.1J=B;1d C}1c j(B){1b C={};1d 1c(D){if(!k(C,D)){C[D]=B.3K(1y,2s)}1d C[D]}}1c c(F,E){1b B=n.iD(E.1G("cn").2R()),D;1s(1b C=0;D=B[C];++C){if(i[D]){1d i[D].1G(E.1G("mD"),E.1G("mz"))}}1d 1y}1c g(B){1d 1g.ba(B)}1c k(C,B){1d C.mA(B)}1c h(){1b C={},B,F;1s(1b E=0,D=2s.1n;B=2s[E],E<D;++E){1s(F in B){if(k(B,F)){C[F]=B[F]}}}1d C}1c o(E,M,C,N,F,D){1b K=1g.mB(),H;if(M===""){1d K}1b L=N.dt;1b I=M.2q(p[L]),B=(L=="bB");if(B&&t){if(/^\\s/.3f(M)){I.mC("")}if(/\\s$/.3f(M)){I.2x("")}}1s(1b J=0,G=I.1n;J<G;++J){H=z[N.5W](E,B?n.bt(I[J],C,J,G):I[J],C,N,F,D,J<G-1);if(H){K.2b(H)}}1d K}1c l(D,M){1b C=D.7k.2R();if(M.jq[C]){1d}1b E=!M.dw[C];1b B=n.bs(v(D,M)).4f(M);1b F=c(D,B),G,K,I,H,L,J;if(!F){1d}1s(G=D.3W;G;G=I){K=G.dc;I=G.bK;if(E&&K==3){if(H){H.mI(G.3H);D.8t(G)}1j{H=G}if(I){5P}}if(H){D.mJ(o(F,n.jI(H.3H,B,H,J),B,M,G,D),H);H=1y}if(K==1){if(G.3W){if(G.7k.2R()=="1C"){z[M.5W](F,1y,B,M,G,D)}1j{2s.7v(G,M)}}J=G}}}1b t=" ".2q(/\\s+/).1n==0;1b d=1p A();1b b=1p r();1b y=1p u();1b e=1o;1b z={},i={},w={dH:1o,5W:1y,bE:1o,5B:1o,jz:{a:1I},jq:{mK:1,3T:1,mL:1,nB:1,9s:1,bX:1,mN:1,mM:1,mO:1,mP:1,bU:1,1q:1,mS:1,5H:1,mR:1},bT:1I,ds:(1v.mQ||(1v.2t&&1c(B){1d 2t(B)})||(1v.de&&de.bu)||(1v.dC&&dC.bu)||(1v.7i&&7i.3E&&7i.3E.dx&&7i.3E.dx.bu)||(1v.$$&&1c(B){1d $$(B)})||(1v.$&&1c(B){1d $(B)})||(1g.dB&&1c(B){1d 1g.dB(B)})||g),dt:"bB",dw:{dl:1,5J:1,ol:1,mE:1,mH:1,mG:1,mF:1,tr:1,ul:1},3y:"4X"};1b p={bB:/\\s/.3f("\\6B")?/[^\\S\\6B]+/:/\\s+/,mU:"",4X:/^/};m.n8=1c(){x.4I();1d m};m.n7=1c(){y.3q.3K(y,2s);1d m};m.bv=1c(C,B){if(!B){1d m}z[C]=B;1d m.9X("5W",C)};m.aI=1c(D){if(!D){1d m}1b B=1p s(D),C=B.6E;if(!i[C]){i[C]=1p f()}i[C].6w(B);1d m.9X("cn",\'"\'+C+\'"\')};m.1Y=1c(D,C,B){C=h(w,C);if(!C.5W){1d m}if(!e){n.cw(x.cr(),"1C-n9 1C-3G");n.4I(1c(){n.cw(n.dm(x.cr(),"1C-3G"),"1C-4I")});e=1I}if(C.5B){C.bE=1I}if(C.dH){d4 C.cn}if(2v C.3y=="6r"){C.3y=n.3y(C.3y)}if(2v C.1X=="6r"&&/^-/.3f(C.1X)){C.5K=n.9h(C.1X)}1j{d4 C.5K}if(!B){y.6w(D,2s)}if(D.dc||2v D=="6r"){D=[D]}n.4I(1c(){1s(1b F=0,E=D.1n;F<E;++F){1b G=D[F];if(2v G=="6r"){m.1Y(C.ds(G),C,1I)}1j{l(G,C)}}});1d m};m.9X=1c(B,C){w[B]=C;1d m};1d m})();2r.bv("3T",(1c(){1b b=1g.1U("3T");if(!b||!b.bO||!b.bO.3K){1d}b=1y;1b a=2r.3p.du("2D","3A-4x");1b e=!a&&(1g.n0=="n1"||/my|m6/i.3f(1g.m0.lV));1b f=1g.1U("1q");f.3g="3w/1O";f.2b(1g.8C(("1C{3w-bz:0;}@4r cV,lW{1C{2D:3A;2D:3A-4x;2E:cF;ft-9N:fq;"+(e?"":"2K-fo:a3;lX-1m:a3;")+"}1C 8F{2D:-mb-3A-3b;2D:3A-4x;1A:0;1m:0;mc:fb;3w-bz:-fk;}"+(a?"1C 3T{2E:cF;}":"1C 3T{2E:5R;}")+"}@4r fG{1C{6N:0;}1C 3T{2D:4X;}}").1Y(/;/g,"!eX;")));1g.ba("9s")[0].2b(f);1c d(p,h){1b n=0,m=0;1b g=[],o=/([mm])([^a-z]*)/g,k;eb:1s(1b j=0;k=o.9Y(p);++j){1b l=k[2].2q(",");fH(k[1]){4d"v":g[j]={m:"mg",a:[n+~~l[0],m+~~l[1],n+~~l[2],m+~~l[3],n+=~~l[4],m+=~~l[5]]};3s;4d"r":g[j]={m:"mf",a:[n+=~~l[0],m+=~~l[1]]};3s;4d"m":g[j]={m:"mi",a:[n=~~l[0],m=~~l[1]]};3s;4d"x":g[j]={m:"ne"};3s;4d"e":3s eb}h[g[j].m].3K(h,g[j].a)}1d g}1c c(m,k){1s(1b j=0,h=m.1n;j<h;++j){1b g=m[j];k[g.m].3K(k,g.a)}}1d 1c(V,w,P,t,C,W){1b k=(w===1y);if(k){w=C.1w("8M")}1b A=V.az;1b m=P.dX("dk",V.cj);1b B=0,O=0,N=0,u=0;1b z=t.3y,L=[];if(z){1s(1b U=z.1n;U--;){1b F=z[U];1b K=m.4Z(3o(F.7g));1b I=m.4Z(3o(F.8u));L[U]=[K,I];if(I<B){B=I}if(K>O){O=K}if(I>N){N=I}if(K<u){u=K}}}1b Z=2r.3p.8G(w,P).2q("");1b E=V.at(Z,~~m.4Z(3o(P.1G("eQ"))||0),~~m.4Z(3o(P.1G("eP"))||0));if(!E.1n){1d 1y}1b h=E.bb;O+=A.1A-E[E.1n-1];u+=A.6T;1b s,n;if(k){s=C;n=C.3W}1j{s=1g.1U("1C");s.4P="1C 1C-3T";s.2g("8M",w);n=1g.1U("3T");s.2b(n);if(t.bT){1b S=1g.1U("8F");S.2b(1g.8C(w));s.2b(S)}}1b aa=s.1q;1b H=n.1q;1b j=m.2p(A.1m);1b Y=1l.4N(j);1b M=Y/j;1b G=M*2r.3p.6t(P.1G("6t"));1b J=h*G;1b Q=1l.4N(m.2p(J+O-u));1b o=1l.4N(m.2p(A.1m-B+N));n.1A=Q;n.1m=o;H.1A=Q+"px";H.1m=o+"px";B+=A.5a;H.2m=1l.6a(m.2p(B-V.4H))+"px";H.1z=1l.6a(m.2p(u))+"px";1b r=1l.eR(1l.4N(m.2p(J)),0)+"px";if(a){aa.1A=r;aa.1m=m.2p(V.1m)+"px"}1j{aa.o0=r;aa.nZ=(m.2p(V.1m)-1)+"px"}1b X=n.bO("2d"),D=j/A.1m;X.es(D,D*M);X.ch(-u,-B);X.ej();1c T(){1b x=V.4B,ab,l=-1,g=-1,y;X.es(G,1);3e(y=Z[++l]){1b ab=x[Z[l]]||V.cx;if(!ab){5P}if(ab.d){X.op();if(ab.bQ){c(ab.bQ,X)}1j{ab.bQ=d("m"+ab.d,X)}X.7R()}X.ch(E[++g],0)}X.ou()}if(z){1s(1b U=z.1n;U--;){1b F=z[U];X.ej();X.c4=F.1X;X.ch.3K(X,L[U]);T()}}1b q=t.5K;if(q){1b v=q.9m,p=X.nX(0,A.5a,0,A.cg);1s(1b U=0,R=v.1n;U<R;++U){p.nw.3K(p,v[U])}X.c4=p}1j{X.c4=P.1G("1X")}T();1d s}})());2r.bv("7D",(1c(){1b e=1g.nx;if(!e){1d}e.6w("2H","ny:nA-nz-nr:7D");e=1y;1b b=1g.1U("2H:8J");b.1q.e0="3l(#cv#ed)";if(!b.ec){1d}b=1y;1b h=(1g.nq||0)<8;1g.eC((\'<1q 3g="3w/1O">8D{3w-bz:0;}@4r cV{2H\\\\:8J,2H\\\\:dM,2H\\\\:7R,2H\\\\:ei{e0:3l(#cv#ed);2D:4x;nh:1I;2E:5R;}8D{2E:5R;3w-9N:1z;}1C{2D:3A-4x;2E:cF;ft-9N:\'+(h?"fq":"3w-np")+";}1C 8F{2E:5R;1z:-fk;2K-fo:a3;}a 1C{nn:nm}}@4r fG{1C 8D{2D:4X;}}</1q>").1Y(/;/g,"!eX;"));1c c(i,j){1d a(i,/(?:em|ex|%)$|^[a-z-]+$/i.3f(j)?"f9":j)}1c a(l,m){if(m==="0"){1d 0}if(/px$/i.3f(m)){1d 3o(m)}1b k=l.1q.1z,j=l.al.1z;l.al.1z=l.6H.1z;l.1q.1z=m.1Y("%","em");1b i=l.1q.nP;l.1q.1z=k;l.al.1z=j;1d i}1c f(l,k,j,n){1b i="nT"+n,m=k[i];if(f3(m)){m=k.1G(n);k[i]=m=(m=="4p")?0:~~j.4Z(a(l,m))}1d m}1b g={};1c d(p){1b q=p.id;if(!g[q]){1b n=p.9m,o=1g.1U("2H:7R"),i=[];o.3g="9h";o.nW=7b;o.nV="0";o.nU="nO";o.1X=n[0][1];1s(1b m=1,l=n.1n-1;m<l;++m){i.2x(n[m][0]*1F+"% "+n[m][1])}o.nH=i.6O(",");o.eD=n[l][1];g[q]=o}1d g[q]}1d 1c(ac,G,Y,C,K,ad,W){1b n=(G===1y);if(n){G=K.8M}1b I=ac.az;1b p=Y.dy||(Y.dy=1p 2r.3p.ct(c(ad,Y.1G("dk"))+"px",ac.cj));1b y,q;if(n){y=K;q=K.3W}1j{y=1g.1U("1C");y.4P="1C 1C-7D";y.8M=G;q=1g.1U("8D");y.2b(q);if(C.bT){1b Z=1g.1U("8F");Z.2b(1g.8C(G));y.2b(Z)}if(!W){y.2b(1g.1U("2H:8J"))}}1b ai=y.1q;1b R=q.1q;1b l=p.2p(I.1m),af=1l.4N(l);1b V=af/l;1b P=V*2r.3p.6t(Y.1G("6t"));1b U=I.6T,T=I.5a;R.1m=af;R.2m=1l.6a(p.2p(T-ac.4H));R.1z=1l.6a(p.2p(U));ai.1m=p.2p(ac.1m)+"px";1b F=Y.1G("1X");1b ag=2r.3p.8G(G,Y).2q("");1b L=ac.at(ag,f(ad,Y,p,"eQ"),f(ad,Y,p,"eP"));if(!L.1n){1d 1y}1b k=L.bb;1b x=-U+k+(I.1A-L[L.1n-1]);1b ah=p.2p(x*P),X=1l.6a(ah);1b O=x+","+I.1m,m;1b J="r"+O+"ns";1b u=C.5K&&d(C.5K);1b o=ac.4B,S=0;1b H=C.3y;1b ab=-1,aa=0,w;3e(w=ag[++ab]){1b D=o[ag[ab]]||ac.cx,v;if(!D){5P}if(n){v=q.kj[aa];3e(v.3W){v.8t(v.3W)}}1j{v=1g.1U("2H:8J");q.2b(v)}v.dP="f";v.ec=O;v.ke=m=(U-S)+","+T;v.5x=(D.d?"m"+D.d+"xe":"")+"m"+m+J;v.kr=F;if(u){v.2b(u.kq(1o))}1b ae=v.1q;ae.1A=X;ae.1m=af;if(H){1b s=H[0],r=H[1];1b B=2r.3p.1X(s.1X),z;1b N=1g.1U("2H:ei");N.on="t";N.1X=B.1X;N.3j=s.7g+","+s.8u;if(r){z=2r.3p.1X(r.1X);N.3g="k0";N.eD=z.1X;N.lq=r.7g+","+r.8u}N.3X=B.3X||(z&&z.3X)||1;v.2b(N)}S+=L[aa++]}1b M=v.bK,t,A;if(C.bE){if(!M){M=1g.1U("2H:dM");M.dP="f";M.4P="1C-7D-lk";t=1g.1U("2H:7R");t.3X=0;M.2b(t);q.2b(M)}A=M.1q;A.1A=X;A.1m=af}1j{if(M){q.8t(M)}}ai.1A=1l.eR(1l.4N(p.2p(k*P)),0);if(h){1b Q=Y.dD;if(Q===2Z){1b E=Y.1G("lB");if(E=="4p"){E="f9"}1j{if(!f3(E)){E+="em"}}Y.dD=Q=0.5*(a(ad,E)-3o(ai.1m))}if(Q){ai.dA=1l.4N(Q)+"px";ai.kK=Q+"px"}}1d y}})());2r.aI({"w":3i,"7p":{"2K-6E":"f6","2K-6V":5T,"2K-d7":"4p","ay-aJ-em":"d8","d3-1":"2 0 0 0 0 0 0 0 0 0","4H":"dj","6S":"-72","x-1m":"4","av":"-13 -kP bk 70","7Y-dI":"21.24","7Y-2E":"-14.4","d9":"21","df":"22","dp-da":"U+dd-U+dg"},"4B":{" ":{"w":90},"\\6B":{"w":90},"!":{"d":"28,1a,-kO,1a,1E-25,kI,-kH,-kB,1a,kA-25,0","w":81},"\\"":{"d":"15,-5L-2,-ce,1f-3,bS-17,kz,-5L-3,-ce,1f-2,bS-17,0","w":86},"#":{"d":"2U,-ky-9,5b-17,8i,-5b-40,1f-9,5b-17,8i,-5b-36,dJ,-kR,l5,-l4-36,dJ,-l7,8i,-dq,1f-9,l9,8i,-dq,1f-9,l1,1f-3,kW-37,1f-6,l0,1f-2,eN-37,kZ,-6f-40,1f-6,kY,0"},"$":{"d":"39,-lg,27,21,44,45,kX,2,58,-51,30,-6u-16,-13,-68,-17,-76,-5X-27,-34,-9,-89,35,-a1,-kT,1a,kU,5,51,29,53,cU-23,1k-1,-23,-17,-40,-40,-kV-32,0,-49,41,-29,l8,14,65,19,76,la,35,14,2f,-37,9t,6U-24,1a,-fd-33,-7,-58,-31,-56,-l6,0"},"%":{"d":"75,-l3,0,61,29,61,b4,33,-28,62,-61,7O-34,0,-61,-28,-61,-6z,-33,28,-61,61,-kS,-kE-23,0,-42,20,-42,kG,25,19,44,42,kD,0,42,-20,42,-2w,-23,-19,-43,-42,-kC,-kQ,0,61,29,61,b4,33,-28,61,-61,gM-34,0,-62,-27,-62,-b4,-33,29,-61,62,-kM,-kJ-23,0,-43,20,-43,kL,25,20,45,43,9o,0,42,-20,42,-2w,-23,-19,-43,-42,-lb,lc,-lD,1f-3M,1u-19,0","w":lE},"&":{"d":"69,-lA-43,-29,-29,-2f,31,-lF,0,58,26,58,aA,24,-17,44,-47,lM,lN,-lO,1f-44,lw,c7-17,eN-55,-6d-19,37,-41,54,-73,6d-42,0,-76,-33,-76,-8P,-31,18,-54,55,-ld,-jF-22,10,-49,28,-49,dn,48,67,69,92,le,-7,10,-14,15,-lf,-ll-43,0,-42,54,-4,lt,-8,38,-23,38,-fM,-17,-16,-32,-34,-32","w":jH},"(":{"d":"3d,7n-51,-16,-1F,-91,-1F,-lu,-65,43,-c5,1F,-ln,fr-43,23,-76,79,-76,lP,57,31,2y,76,dr,23","w":3k},")":{"d":"11,-jU,16,1F,90,1F,cS,65,-42,5z,-1F,jR,-jQ,-23,76,-80,76,-k3,-57,-33,-3Y,-76,-dr,-22","w":3k},"*":{"d":"62,-km,1f-1,kt,-kd,gZ-36,kb,d5-16,iz-21,-6C-22,6C-16,-k9,-ki-35,-kn,-kg,kh,-37","w":5z},"+":{"d":"1L,-ka,1a,1P-64,1a,5b-22,1a,-5b-64,1a,-kl,1a,-kv,1a,63"},",":{"d":"5,bh,-ev,1f-29,a6-24,0","w":71,"k":{"1":22}},"-":{"d":"0,-d2,1a,1P-84,1a,-21","w":84,"k":{"Y":8,"W":-5,"V":1,"A":-9}},"\\jB":{"d":"0,-d2,1a,1P-84,1a,-21","w":84},".":{"d":"24,1a,-6K,1a,1E-24,0","w":71,"k":{"1":27}},"\\/":{"d":"-3,jL,-fJ,1f-1L,eU-22,0","w":5U},"0":{"d":"90,4v-45,0,-77,-35,-77,-cO,-5O-1,-48,33,-86,77,-k7,0,78,37,78,fY,k6,56,-32,91,-78,jY,-kk,0,54,-72,54,-jS,-42,-21,-70,-54,-7n-33,0,-53,28,-53,6i,64,-5,4Y,53,4Y","k":{"7":15,"4":-3,"1":22}},"1":{"d":"89,1a,-4c-42,1a,-kc,1a,1u-24,0","k":{"9":19,"8":17,"7":33,"6":18,"5":17,"4":24,"3":20,"2":19,"1":45,"0":13,".":17,",":15}},"2":{"d":"89,-7Q-31,0,-54,23,-53,cU-23,1k-1,-49,30,-82,77,-ko,0,75,33,75,fl-1,57,-87,by,-2U,jM,1a,2o-k2,1a,-k5,-k1,-34,12,-91,-35,-91","k":{"7":15,"4":8,"1":27}},"3":{"d":"5z,-5j,-34,-22,-58,-69,-4z,-jW,12,70,-74,15,-dz-22,0,-36,18,-36,jV-24,3x,-38,26,-65,61,-jX,0,86,77,36,lU,31,40,5w,-37,b6-44,0,-75,-34,-76,-q0,7f,38,23,59,52,vK,0,54,-25,54,-55","k":{"7":20,"4":-2,"1":27}},"4":{"d":"2l,1a,-4m-2U,1a,-vL,-vM,1a,vJ,1a,2o-22,1a,4m-24,vI,-vF,-vG-94,vH,0","k":{"7":15,"4":-6,"1":24}},"5":{"d":"21,-vN,-vO,1a,1P-90,1f-12,vU,-33,2U,12,2U,3V,87,-1Z,4e,-5q,ja-4,-10,-7,-16,-9,-vV,5V,35,28,59,59,vW,0,58,-28,58,-6z,-60,-76,-86,-3M,-35","k":{"7":14,"4":-5,"1":26}},"6":{"d":"97,-vT,1f-57,vS,-23,1H,24,3S,7I,46,-37,84,-82,vP-46,0,-83,-38,-83,-c2,-53,64,-8l,89,-vQ,-b6-32,0,-59,28,-59,fL,36,27,64,59,vR,0,58,-28,58,-6z,-34,-26,-62,-58,-62","k":{"7":24,"4":-5,"1":29}},"7":{"d":"39,vE,-4c-3d,1a,-vD,1a,1P-99,4c-25,0","k":{":":6,"7":8,"6":19,"4":26,"1":20,".":31}},"8":{"d":"55,-vq-53,-24,-26,-4S,35,-vr,0,90,86,36,vs,29,42,4o,-36,vp-78,0,-1M,-3Y,-35,-vo,-vk-29,0,-52,23,-52,f4,29,23,52,52,vl,0,54,-24,54,-f4,-29,-24,-52,-54,-vm,-7Q-22,0,-41,18,-41,fM,22,19,40,41,vn,0,39,-18,39,-fV,-22,-17,-39,-39,-39","k":{"7":18,"4":-3,"1":26}},"9":{"d":"84,1f-27,vt,-7L-53,23,-1H,-25,-1H,-7I,-46,37,-85,82,-vu,0,83,38,83,c2,53,-64,3n,-89,vA,-7Q-32,0,-58,28,-58,6z,34,26,62,58,vB,0,59,-28,59,-fL,-36,-27,-64,-59,-64","k":{"7":14,"4":12,"1":26}},":":{"d":"24,1a,-6K,1a,1E-24,dF,-fh,-6K,1a,1E-24,0","w":71},";":{"d":"5,bh,-ev,1f-29,a6-24,vC,-fh,-6K,1a,1E-24,0","w":71},"<":{"d":"3m,-vz,7d-2O,vy,vv,7d-a0,-gW,-20"},"=":{"d":"16,-vw,1a,1P-aQ,1a,-vx,-vX,1a,2o-aQ,1a,-22"},">":{"d":"12,-vY,-wo,-c7-2O,-a4,-wp,fP,20"},"?":{"d":"70,1a,-6K,1a,1E-24,dv,-wq-29,1,-54,19,-53,c0-23,1k-2,-46,33,-80,77,-wn,0,74,32,74,3V,39,-68,74,-62,wm-24,1k-10,-44,62,-77,62,-wj,-26,-23,-48,-51,-48","w":wk},"@":{"d":"3R,4v-75,0,-2J,-54,-2J,-5A,-70,55,-1Z,2l,-wl,0,4e,46,4e,wr,45,-28,86,-60,ws-15,0,-25,-10,-26,-9n-26,46,-96,27,-96,-6G,-62,80,-2f,1H,-wy,-wz,1f-17,wA,10,5,17,14,wx,0,43,-34,43,-cy,-54,-42,-92,-99,-ww-62,0,-2Y,48,-2Y,wt,62,46,2Y,2y,wu,0,51,-6,77,-wv,d6-26,12,-52,18,-82,wi,-wh-25,0,-46,25,-46,dn,25,14,42,35,w4,0,44,-26,44,-w5,-23,-13,-38,-33,-38","w":w6},"A":{"d":"2,eu,-bV,et,1u-26,1f-35,-2Q-2y,1f-35,2Q-25,er,-fg,1f-46,-4S","w":eq,"k":{"\\1Q":9,"\\3z":23,"y":9,"w":10,"v":9,"u":5,"t":4,"q":5,"o":5,"g":5,"e":5,"d":5,"c":5,"Y":23,"W":15,"V":21,"U":9,"T":18,"Q":12,"O":12,"J":-3,"G":12,"C":10,".":-9,"-":-9,",":-10}},"B":{"d":"4o,-w3,30,42,4h,-52,gJ-61,1a,-w2,-5,c5,2,c5,vZ,20,-8,34,-27,w0,-7m,-46,-49,-50,-3S,-w1,w7,3,3S,-1,3S,-w8,-eA-1,-40,-44,-45,-91,-we,wf,2,91,0,91,-41","w":wg,"k":{"Y":12,"W":4,"V":8,"J":-5}},"C":{"d":"4o,-e3,-1,66,-20,85,-e4,1k-23,42,-66,67,-3Y,7j-70,0,-2l,-56,-2l,-5A,-1L,2l,-5Q,7M,-e5,14,26,25,32,aO-27,1k-18,-27,-50,-44,-83,-eL-54,0,-1L,48,-1L,eM,55,48,1M,1L,1M","w":fs,"k":{"y":-5,"Z":8,"O":3,"J":-6,"A":6,";":-10,":":-14,".":-3,",":-4}},"D":{"d":"wd,-ap,67,-53,2M,-2F,wc-70,1a,-gF,w9,-3,1N,53,1N,wa,-wb,-73,-65,-3M,-5q,-vj,vi,8,5q,-24,5q,-99","w":uq,"k":{"Y":14,"W":5,"V":9,"T":13,"J":3,"A":12}},"E":{"d":"26,1a,-cA,1a,1P-3M,1a,cC,1a,2o-1H,1a,cE,1a,2o-2O,0","w":4y,"k":{"\\5D":4,"v":7,"O":4,"C":4}},"F":{"d":"26,1a,-ur,1a,1P-98,1a,us,1a,1P-94,1a,up-24,0","w":5Z,"k":{"\\2u":6,"\\1D":1,"\\1S":1,"\\2e":19,"u":6,"r":6,"o":2,"e":1,"a":1,"O":1,"J":19,"A":19,".":20,"-":-13,",":19}},"G":{"d":"2f,-uo,1k-5,65,-60,4e,-2S,j3-71,0,-2J,-57,-2J,-5A,-1F,8s,-uk,ak,-um,14,29,28,34,ci-27,1k-16,-28,-50,-47,-85,-un-58,0,-2f,46,-2f,5M,57,48,1H,iG,ut,0,87,-31,97,-uu-1N,1a,-22","w":fC,"k":{"Y":16,"W":7,"V":12,"T":16,"A":13,";":-10,":":-13,".":4,",":3}},"H":{"d":"26,1a,-5n,1a,uA,1a,-uB,1a,1u-24,1a,-bi-1Z,1a,bi-24,0","w":3U},"I":{"d":"26,1a,-5n,1a,1u-24,0","w":76},"J":{"d":"66,-uC,0,39,-18,39,-a9,-uz,1a,uy,52,-24,75,-64,6u-37,0,-63,-25,-65,-uv,7P,23,19,40,42,40","w":3F,"k":{"A":7}},"K":{"d":"26,1a,-5n,1a,uw,-ux,1f-95,uj,cG-30,1f-81,-aN-31,ui,cc-24,0","w":bA,"k":{"y":15,"u":14,"o":15,"e":15,"a":15,"T":-8,"O":13,"G":13,"C":12,"-":6}},"L":{"d":"26,1a,-5n,1a,u5,1a,2o-3k,0","w":5q,"k":{"\\5D":19,"\\1Q":22,"\\3z":33,"y":22,"u":10,"j":2,"Y":33,"W":24,"V":35,"U":13,"T":21,"O":20,"G":20,"C":19,"-":24}},"M":{"d":"26,1a,-u6,u7,u4,-u3,1a,1u-24,1a,-9j-91,9j-21,1f-90,-tZ,9j-24,0","w":u0,"k":{"j":-3}},"N":{"d":"26,1a,-u1,u2,aE,-wC,1a,1u-24,1f-5i,-u8,u9-24,0","w":jf,"k":{"u":-2,"o":-2,"j":-4,"e":-2,"a":-2,"A":1,".":-4,",":-6}},"O":{"d":"5z,-uf,0,1K,56,1K,5A,68,-58,1Z,-1K,ug-71,0,-1K,-56,-1K,-8z,-67,59,-3k,1K,-uh,-7Q-56,0,-1H,47,-1H,5M,58,46,1H,1H,ue,0,1M,-47,1M,-5M,-57,-46,-1H,-1M,-1H","w":fC,"k":{"Z":12,"Y":14,"X":9,"W":5,"V":9,"T":13,"J":2,"A":12,";":-13,":":-18,".":4,",":3}},"P":{"d":"9F,-ud,63,-63,77,-4Q,8O,6J-24,1a,-ua,ub,-2,91,24,93,uc,-uD-1,-48,-50,-55,-3Y,-f8,uE,2,3Y,1,3Y,-50","w":v5,"k":{"\\2e":20,"o":7,"e":6,"a":6,"Y":5,"J":23,"A":20,".":31,"-":-3,",":29}},"Q":{"d":"v6,-iC,db-23,0,-37,-6,-54,-iE-82,56,-4F,-7,-4F,-5M,-71,56,-2l,2J,-v7,0,4y,5i,89,v4,9,22,13,37,v3,-cs-34,-30,-88,-57,-4h,-v0,43,98,74,4h,v1,-v2,-23,1N,6,c3,v8,-60,21,-7b,-71,-eA-67,2,-2U,60,-1M,ao","w":v9},"R":{"d":"2n,-fu,-51,-55,-59,-8l,-4z,4c-24,1a,-4w,fw,-3,1M,27,1M,7I,40,-30,70,-72,fp,fj-30,1f-82,-fi,4,92,-13,92,-56","w":7M,"k":{"\\1Q":-4,"\\3z":9,"y":-4,"u":2,"o":4,"e":4,"Y":9,"W":6,"V":6,"T":8,"O":2,"J":9,"G":2,"C":2,"-":-3}},"S":{"d":"31,-ep,32,22,50,50,eo,1,65,-55,32,-7L-17,-14,-73,-20,-83,-5X-38,-39,-7,-3M,51,-eh,0,67,29,67,cc-25,7f,-56,-86,-57,-86,-eg,46,77,40,93,en,39,16,2M,-50,ek-43,0,-73,-29,-75,-ew,0","w":5p,"k":{"\\1D":-2,"v":-1,"t":-6,"Y":8,"W":2,"V":5,"T":5,"J":-5,"A":5}},"T":{"d":"60,1a,-4c-56,1a,-vf,1a,1P-55,1a,4c-24,0","w":c8,"k":{"\\2u":16,"\\1Q":8,"\\2V":-3,"\\1D":15,"\\1S":15,"\\2e":18,"y":18,"w":19,"v":18,"u":16,"s":12,"r":14,"o":15,"j":1,"i":1,"g":15,"e":15,"c":15,"a":15,"Y":-9,"W":-7,"V":-10,"S":2,"O":13,"J":17,"G":13,"C":13,"A":18,";":1,":":-1,".":13,",":11}},"U":{"d":"2f,4v-51,0,-82,-37,-82,-a1,-9E,fm,84,-27,cp,58,fx,0,52,-4o,58,-fy,1a,fI,58,-31,95,-82,95","w":fA,"k":{"r":-2,"p":-2,"n":-2,"m":-2,"j":-1,"A":9,".":1}},"V":{"d":"99,1f-1F,-bV,gG,vg,-vh,1f-1F,1u-23,0","w":7o,"k":{"\\5G":-5,"\\2u":10,"\\5s":16,"\\2V":-1,"\\1D":16,"\\1S":16,"\\2e":21,"y":1,"u":12,"r":11,"o":16,"i":-1,"g":16,"e":16,"c":16,"a":16,"T":-10,"S":3,"O":9,"J":22,"G":9,"C":9,"A":21,";":3,":":-1,".":23,"-":1,",":23}},"W":{"d":"74,1f-69,-ve,vd,va,-vb,vc,uZ,-uY,1f-69,1u-31,1f-54,-7z-53,7z-31,0","w":uL,"k":{"\\5G":-3,"\\2u":8,"\\5s":10,"\\1Q":-1,"\\1D":10,"\\1S":9,"\\2e":15,"u":8,"r":7,"o":10,"i":2,"g":9,"e":10,"c":10,"a":9,"Y":-9,"T":-8,"O":5,"G":5,"C":5,"A":15,";":-5,".":13,"-":-5,",":13}},"X":{"d":"2,uM,-cG-78,-uN,uK,uJ,-uF,1f-77,uG,cG-28,1f-68,-8x-69,8x-28,0","w":9A,"k":{"y":12,"o":11,"e":11,"Q":9,"O":9,"C":8}},"Y":{"d":"84,1a,-2Q-84,-eG,c1,eI,-eJ,1f-85,eK,2Q-24,0","w":eE,"k":{"\\1D":20,"\\1S":22,"\\2e":23,"v":5,"u":15,"q":22,"p":15,"o":22,"g":22,"e":20,"a":22,"W":-9,"T":-10,"S":5,"O":15,"J":27,"G":15,"C":13,"A":23,";":7,":":4,".":25,"-":10,",":23}},"Z":{"d":"9,1a,-ez,-7z-3d,1a,-ey,1a,1P-6P,ef,1a,2o-ee,0","w":5p,"k":{"O":14,":":-1,".":4}},"[":{"d":"91,7n-38,-10,-68,-43,-66,-uH,-94,-23,-4O,66,-eT,fr-66,21,-43,2M,-43,uI,37,11,54,43,gr,24","w":3k},"\\\\":{"d":"4n,a6-1L,-fJ,uO,eU-22,0","w":5U},"]":{"d":"35,-uP,10,66,44,65,fD-3,93,22,ak,-65,eT,-uV,-21,42,-2M,42,-uW,-37,-10,-55,-42,-8O,-23","w":3k},"^":{"d":"36,-uX-26,f1,-uU,f1,uT-26,1f-55,-90"},"gY":{"d":"0,uQ,1a,1P-3i,1a,-21"},"a":{"d":"6F,-6W,3Q-23,1a,-cI-47,70,-2n,25,-2n,-6x,-84,4n,-1K,2n,-bw,-dV,cP,-4C-39,0,-73,33,-73,5j,41,33,74,73,bJ,0,70,-33,70,-3V,-41,-31,-73,-70,-73","w":3U,"k":{"w":2}},"b":{"d":"24,1a,-5n,1a,uR,-70,4G,-25,4G,8b,85,-8j,1K,-2n,a4,6C-23,uS,-eZ,42,33,73,72,fF,0,72,-33,72,-8P,-40,-32,-72,-72,-5O-41,0,-72,31,-72,72","w":3U,"k":{"y":5,"w":6,"v":6}},"c":{"d":"bW,-fz-17,35,-43,56,-87,fB-55,0,-98,-40,-98,-5t,-52,43,-94,96,-fE,0,75,22,89,dL-27,1k-31,-64,-1N,-37,-1N,eW,72,1F,1H,1N,eV,0","w":9x,"k":{"j":2,"J":-7}},"d":{"d":"6F,-4K,1u-22,1a,-fd-47,72,-5p,27,-5p,-aA,-83,8l,-1K,2n,-dK,-wB,j8,-4C-39,0,-72,32,-72,cy,41,32,75,72,dh,0,72,-34,72,-8P,-41,-32,-72,-72,-72","w":8g,"k":{"j":-2}},"e":{"d":"4s,-2Q-4q,7P,35,34,65,69,aX,0,54,-18,63,-aY,1k-13,37,-49,62,-88,7O-51,0,-93,-41,-93,-5t,-51,42,-94,93,-aZ,0,95,38,93,aT,-b0,1k-13,-78,-1Z,-78,-4Y,0","w":7H,"k":{"\\5F":5,"y":6,"x":7,"w":7,"v":6,"t":2,"j":2}},"f":{"d":"31,-xP,-47,26,-59,68,-dK,db-26,-2,-47,9,-45,yq,1a,1P-45,1a,9d-23,1a,-9d-28,1a,-yr,0","w":3c,"k":{"\\1Q":-10,"\\2V":-4,"\\1D":8,"\\1S":8,"t":-14,"o":9,"l":1,"j":1,"i":1,"f":-9,"e":8,"a":8}},"g":{"d":"42,yp,64,4Y,57,ao,-yo,-bo-37,73,-5Q,32,-5Q,-yl,-86,ym,-8s,5Q,-bw,-yn,1a,ys,3Y,-5Z,6P,-7b,yt,yy,-4C-37,0,-68,32,-68,cy,42,30,75,70,dh,0,70,-33,70,-8P,-40,-33,-72,-72,-72","w":7o},"h":{"d":"3c,-4C-32,0,-54,21,-54,8o,6J-23,1a,-8R,1a,yx,-55,2F,-19,2F,9f,6J-23,1a,-fe,-39,-23,-64,-57,-64","w":7V,"k":{"\\1Q":5,"y":5,"v":6}},"i":{"d":"24,1a,-4a,1a,3Q-23,dF,-aE,-f5,1a,1E-23,0","w":70,"k":{"j":-3}},"j":{"d":"46,-6W,yw,52,-18,69,-59,cR,-yu,-1,36,-15,36,-f8,-yv,eH,-aE,-f5,1a,1E-23,0","w":70},"k":{"d":"24,1a,-8R,1a,yk,-yj,1f-70,y8,y9-29,1f-59,-bH-28,y7,7c-23,0","w":2n,"k":{"u":3,"o":9,"g":9,"e":9,"c":9,"a":9,".":-1,"-":7,",":-2}},"l":{"d":"24,1a,-8R,1a,1u-23,0","w":70,"k":{"j":-3}},"m":{"d":"95,-4C-66,-1,-43,97,-47,y3-24,1a,-4a,1a,y4,-39,92,-29,2Y,yB,-61,2O,-33,2O,5N,ya-23,1a,-yb,-33,-22,-58,-49,-yi-28,0,-49,20,-49,9f,aN-23,1k-2,-66,17,-aB,-49,-4q","w":yg,"k":{"y":5,"w":6,"v":5,"p":-1,"j":-1}},"n":{"d":"1L,-4C-32,0,-54,22,-54,8o,6J-24,1a,-4a,1a,yd,-57,2F,-18,2F,9f,6J-23,1a,-fe,-38,-23,-64,-56,-64","w":7V,"k":{"y":5,"w":6,"v":6,"p":-1}},"o":{"d":"3S,-ye,0,94,43,94,eS,51,-43,93,-94,yA-52,0,-93,-41,-93,-eS,-50,43,-93,93,-yK,-eZ,-40,-34,-72,-70,-5O-39,0,-71,32,-71,5j,41,31,74,71,bJ,0,70,-32,70,-74","w":7H,"k":{"\\5F":4,"y":5,"x":6,"w":6,"v":6,"t":1}},"p":{"d":"24,-4a,1a,yF,-68,2n,-27,2n,6x,82,-4n,1K,-4G,9f,yL-24,1a,-yD,-fD-1,41,32,73,72,fF,0,72,-33,72,-3V,-41,-32,-73,-72,-yG-40,0,-72,32,-72,72","w":3U,"k":{"\\1Q":5,"y":5,"t":2}},"q":{"d":"yC,-6W,cM-23,1a,-yE-44,69,-4G,25,-4G,-8b,-84,8j,-1K,2n,-a4,-yN,yH,-yJ,-42,-32,-74,-71,-fl-40,0,-72,32,-72,3V,40,32,73,72,yI,0,71,-31,71,-72","w":h3,"k":{"u":-1,"c":-1}},"r":{"d":"99,-ff-70,1,-48,91,-51,fa-24,1a,-4a,1a,yM,-19,26,-29,52,-bd,24","w":1M,"k":{"\\5G":2,"\\2u":1,"\\4L":10,"\\5F":-4,"\\1Q":-9,"\\1D":10,"\\1S":10,"z":-4,"y":-9,"x":-7,"w":-8,"v":-9,"u":1,"t":-13,"s":1,"r":2,"q":10,"p":2,"o":10,"n":2,"m":2,"l":2,"k":2,"h":2,"g":8,"f":-8,"e":10,"d":10,"c":10,"b":2,"a":10,":":-6,".":14,"-":3,",":12}},"s":{"d":"98,-dY,-41,-83,-32,-83,-bM,-28,23,-51,51,-dT,0,49,21,50,bD-24,3x,-36,-54,-35,-54,-dS,18,10,26,32,dN,14,61,2Y,-5,dO-33,0,-56,-24,-56,-dR,1k-2,46,64,47,65,5","w":1N,"k":{"\\1D":2,"t":-3}},"t":{"d":"31,1a,-9d-37,1a,-y5,1a,-y1,1a,x5,1a,1P-42,1a,9d-23,0","w":95,"k":{"y":-12,"o":6,"e":6,"c":6,"a":6,";":-7,":":-12}},"u":{"d":"3c,-eO,0,56,-26,55,-8o,-8c,1a,3Q-22,1a,-f2-36,58,-1N,31,-1N,-fc,-8c,1a,8Z-2,40,22,64,56,64","w":4F,"k":{"j":-2}},"v":{"d":"75,1f-75,-x6,x7,x4,-wZ,1f-76,3Q-25,0","w":4y,"k":{"\\1D":5,"\\1S":5,"s":2,"o":6,"g":5,"e":5,"c":6,"a":5,";":-6,":":-9,".":16,"-":-7,",":15}},"w":{"d":"71,1f-67,-4a,cT,x0,-x1,gI,x2,-9E,1f-68,3Q-26,1f-38,-e6-38,e6-26,0","w":x8,"k":{"s":3,"o":6,"g":5,"e":6,"c":6,"a":5,";":-6,":":-10,".":15,"-":-6,",":15}},"x":{"d":"4,x9,-dU-60,-xh,xi,y2,-xj,1f-62,xg,dU-28,1f-47,-bH-47,bH-27,0","w":5q,"k":{"q":6,"o":6,"e":6,"c":6,"a":5}},"y":{"d":"40,dQ,-9a-69,-dZ,cT,ea,-e9,1f-1M,cM-26,0","w":3m,"k":{"\\4L":6,"s":3,"o":6,"g":6,"e":6,"c":6,"a":6,";":-4,":":-9,".":18,"-":-6,",":17}},"z":{"d":"8,1a,-e8,-e7-96,1a,-e2,1a,2o-98,e1,1a,1P-2O,0","w":7B,"k":{"o":9,"e":9,";":-5,":":-10,",":-1}},"{":{"d":"89,jJ-70,8,-55,-52,-57,-eB,-21,-6,-31,-21,-xf,-oH,-15,-24,-5Z,78,-xa,5c-72,-7,0,by,-57,xb,10,23,59,23,eF,27,7,34,34,c6,20","w":3k},"|":{"d":"79,-8R,1a,9k-23,1a,-gn"},"}":{"d":"36,-xc,-9,56,51,58,eB,21,5,30,20,c6,xd-53,17,24,wY,-78,wX,-wJ,8,2,-2Y,57,-iH-32,-12,-22,-59,-22,-eF,-27,-8,-34,-35,-c6,-19","w":3k},"~":{"d":"a0,-wK-6,6,-54,-24,-76,-9n-13,0,-22,7,-33,wL-14,-wI,-29,27,-40,48,-wH,-4,65,28,77,wD,0,22,-7,34,-wE,9v-14,27,-29,39,-50,39","w":h4},"\'":{"d":"15,-5L-2,-ce,1f-3,bS-17,0","w":47},"`":{"d":"2y,-9j-13,wG-56,-wM,-15"},"\\2e":{"d":"2,eu,-bV,et,1u-26,1f-35,-2Q-2y,1f-35,2Q-25,er,-fg,1f-46,-wN,-7t,-bq,7y-63,37","w":eq,"k":{"T":18}},"\\hY":{"d":"26,1a,-cA,1a,1P-3M,1a,cC,1a,2o-1H,1a,cE,1a,2o-2O,wU,-7t,-bq,7y-63,37","w":4y},"\\hZ":{"d":"26,1a,-5n,1a,1u-24,dW,-7t,-wV,7y-63,37","w":76},"\\hS":{"d":"31,-ep,32,22,50,50,eo,1,65,-55,32,-7L-17,-14,-73,-20,-83,-5X-38,-39,-7,-3M,51,-eh,0,67,29,67,cc-25,7f,-56,-86,-57,-86,-eg,46,77,40,93,en,39,16,2M,-50,ek-43,0,-73,-29,-75,-ew,eH,-7K,6c,4g,-4g,1f-46,1E-22,0","w":5p},"\\3z":{"d":"84,1a,-2Q-84,-eG,c1,eI,-eJ,1f-85,eK,2Q-24,ia,-7t,-bq,7y-63,37","w":eE,"k":{"\\1D":20,"\\1S":22,"\\2e":23,"J":27,";":7,":":4,".":25,"-":10,",":23}},"\\io":{"d":"9,1a,-ez,-7z-3d,1a,-ey,1a,1P-6P,ef,1a,2o-ee,wW,-wT,8L,bg,-4g,1f-46,1E-22,0","w":5p},"\\1S":{"d":"6F,-6W,3Q-23,1a,-cI-47,70,-2n,25,-2n,-6x,-84,4n,-1K,2n,-bw,-dV,cP,-4C-39,0,-73,33,-73,5j,41,33,74,73,bJ,0,70,-33,70,-3V,-41,-31,-73,-70,-wS,-cu,-8w,7Z-56,47","w":3U},"\\1D":{"d":"4s,-2Q-4q,7P,35,34,65,69,aX,0,54,-18,63,-aY,1k-13,37,-49,62,-88,7O-51,0,-93,-41,-93,-5t,-51,42,-94,93,-aZ,0,95,38,93,aT,-b0,1k-13,-78,-1Z,-78,-4Y,wO,-cu,-8w,7Z-57,47","w":7H,"k":{"t":2}},"\\2V":{"d":"24,1a,-4a,1a,3Q-23,dW,-wP,-8w,7Z-54,47","w":70},"\\hI":{"d":"98,-dY,-41,-83,-32,-83,-bM,-28,23,-51,51,-dT,0,49,21,50,bD-24,3x,-36,-54,-35,-54,-dS,18,10,26,32,dN,14,61,2Y,-5,dO-33,0,-56,-24,-56,-dR,1k-2,46,64,47,65,wQ,-6I-43,4m-22,1f-42,-am,6L,6M,-6D,0","w":1N,"k":{"t":-3}},"\\1Q":{"d":"40,dQ,-9a-69,-dZ,cT,ea,-e9,1f-1M,cM-26,wR,-cu,-8w,7Z-57,47","w":3m,"k":{"\\4L":6,".":18,",":17}},"\\5F":{"d":"8,1a,-e8,-e7-96,1a,-e2,1a,2o-98,e1,1a,1P-2O,xk,-6I-43,4m-21,1f-42,-eY,6L,6M,-6D,0","w":7B,"k":{"e":9,";":-5,":":-11,",":-2}},"\\5D":{"d":"4o,-e3,-1,66,-20,85,-e4,1k-23,42,-66,67,-3Y,7j-70,0,-2l,-56,-2l,-5A,-1L,2l,-5Q,7M,-e5,14,26,25,32,aO-27,1k-18,-27,-50,-44,-83,-eL-54,0,-1L,48,-1L,eM,55,48,1M,1L,xQ,-7K,6c,bg,-4g,1f-46,1E-22,0","w":fs,"k":{"O":3}},"\\hH":{"d":"26,1a,-cA,1a,1P-3M,1a,cC,1a,2o-1H,1a,cE,1a,2o-2O,xN,-7K,6c,bg,-4g,1f-46,1E-22,0","w":4y},"\\hz":{"d":"2n,-fu,-51,-55,-59,-8l,-4z,4c-24,1a,-4w,fw,-3,1M,27,1M,7I,40,-30,70,-72,fp,fj-30,1f-82,-fi,4,92,-13,92,-xM,-7K,6c,4g,-4g,1f-47,1E-22,0","w":7M},"\\h7":{"d":"2f,4v-51,0,-82,-37,-82,-a1,-9E,fm,84,-27,cp,58,fx,0,52,-4o,58,-fy,1a,fI,58,-31,95,-82,xI,-xK,0,34,15,34,8d,18,-15,33,-34,cs-19,0,-34,-15,-34,-8d,-18,16,-33,34,-xR,-xS-9,0,-17,8,-17,fK,10,8,18,17,xZ,0,17,-7,17,-fK,-10,-8,-18,-17,-18","w":fA},"\\4L":{"d":"bW,-fz-17,35,-43,56,-87,fB-55,0,-98,-40,-98,-5t,-52,43,-94,96,-fE,0,75,22,89,dL-27,1k-31,-64,-1N,-37,-1N,eW,72,1F,1H,1N,eV,y0,-6I-43,4m-21,1f-42,-eY,6L,6M,-6D,0","w":9x,"k":{"o":2,"e":2}},"\\5s":{"d":"4s,-2Q-4q,7P,35,34,65,69,aX,0,54,-18,63,-aY,1k-13,37,-49,62,-88,7O-51,0,-93,-41,-93,-5t,-51,42,-94,93,-aZ,0,95,38,93,aT,-b0,1k-13,-78,-1Z,-78,-4Y,xX,-6I-43,4m-22,1f-42,-am,6L,6M,-6D,0","w":7H},"\\2u":{"d":"3c,-eO,0,56,-26,55,-8o,-8c,1a,3Q-22,1a,-f2-36,58,-1N,31,-1N,-fc,-8c,1a,8Z-2,40,22,64,56,xW,-xT,0,34,15,34,8d,18,-15,34,-34,g9-19,0,-34,-15,-34,-8d,-18,16,-34,34,-hA,-xU-10,0,-17,8,-17,xV,10,7,19,17,xH,0,18,-9,18,-xG,-10,-8,-18,-18,-18","w":4F},"\\5G":{"d":"99,-ff-70,1,-48,91,-51,fa-24,1a,-4a,1a,xs,-19,26,-29,52,-bd,xt,-6I-43,4m-22,1f-42,-am,6L,6M,-6D,0","w":1M,"k":{"\\2u":1,"\\2V":2,"\\1D":9,"\\1S":9,"v":-9,"u":1,"o":10,"i":2,"e":9,"d":10,"a":9,";":-1,":":-4,".":13,",":12}}}});2r.aI({"w":xu,"7p":{"2K-6E":"f6","2K-6V":f7,"2K-d7":"4p","ay-aJ-em":"d8","d3-1":"2 0 0 0 0 0 0 0 0 0","4H":"dj","6S":"-72","x-1m":"6","av":"-8 -xr bk 79.xq","7Y-dI":"34.92","7Y-2E":"-2.52","d9":"45","df":"55","dp-da":"U+dd-U+dg"},"4B":{" ":{"w":90},"\\6B":{"w":90},"!":{"d":"81,-4K,xm-56,1a,-xn,dv,-4z,1T-56,1a,-xo,0","w":2f},"\\"":{"d":"13,-bm-4,-bl,1f-3,8U-24,xp,-bm-3,-bl,1f-3,8U-25,0","w":94},"#":{"d":"c8,-6X-8,1W-33,cD,-1W-31,1f-7,1W-34,cD,-1W-32,di,-xv,xw,-d5-32,di,-xD,cD,-xE,1f-8,dE,xC,-xB,1f-7,dE,1f-4,7c-32,1f-4,xx,1f-5,6U-31,xy,-xA-31,1f-4,xz,0"},"$":{"d":"78,-8v-32,-5,-56,-34,-54,-xF,1k-1,29,36,30,37,4v-5,-23,-10,-24,-40,-cs-70,-21,-66,-3d,1,-d0,-xY,1a,xL,6,46,30,45,cU-50,3x,-28,-36,-24,-36,-xJ,22,16,23,44,xO,22,62,4S,-3,d0,7c-44,1a,-32"},"%":{"d":"70,-xl,0,59,25,59,8b,33,-25,59,-60,9W-34,0,-58,-25,-58,-6x,-33,26,-58,59,-wF,-x3-12,0,-21,10,-21,9S,13,9,23,21,dG,0,21,-10,21,-9I,-12,-9,-22,-21,-yc,-yf,0,60,25,60,8b,33,-25,59,-60,9W-34,0,-59,-25,-59,-6x,-33,26,-58,59,-yh,-dz-12,0,-22,10,-22,9S,13,10,23,22,dG,0,21,-10,21,-9I,-12,-9,-22,-21,-y6,-d1,1f-1L,1u-38,0","w":yz},"&":{"d":"tX,-qs,1k-11,25,-22,58,-37,qt,7c-37,8r-29,-qu-47,53,-3F,29,-3F,-aC,-26,12,-45,44,-7j-44,-40,-18,-3d,45,-qr,0,88,84,30,qq,qn,-c7-38,-qo-29,17,-24,50,9,qp,0,20,-4,29,-qv,-qw,-13,15,-17,15,-qC,-9,-6,-15,-14,-d6-21,0,-19,28,-1,41","w":qD},"(":{"d":"1Z,5O-2M,-34,-jD,-8g,-47,-qE,-10,28,-18,47,-5E,6d-74,37,-74,3i,0,cZ,54","w":2F},")":{"d":"10,-qB,35,qA,8g,47,qx-15,10,-28,18,-47,5E,-qy,-36,74,-7b,0,-cZ,-54","w":2F},"*":{"d":"68,-d1,1f-2,qz,-qm,5y-42,ql,8r-31,2o-26,-cK-26,cK-30,-q8,-8r-43,-q9,-qa,16","w":c3},"+":{"d":"4n,-q7,1a,1E-64,1a,jp-41,1a,-jp-64,1a,-q6,1a,-q2,1a,64"},",":{"d":"76,-iM-1,54,12,8j,-57,9t,-iV,2,30,-3,26,-7d-26,1a,-3h,0","w":94,"k":{"1":22}},"-":{"d":"92,-jh,jm-92,1a,-jE,0","w":91,"k":{"Y":3,"W":-6,"V":-4,"T":-2,"A":-8}},"\\jB":{"d":"92,-jh,jm-92,1a,-jE,0","w":91},".":{"d":"76,-4z,1T-57,1a,-3h,0","w":94,"k":{"1":22}},"\\/":{"d":"87,-6s,1f-95,9k-53,0","w":3F},"0":{"d":"1F,5v-46,0,-92,-37,-91,-cO,-7n-1,-53,44,-90,91,-q3,0,89,36,89,q4,q5,53,-43,91,-89,qb,-qc,1,25,-65,29,-qi,-24,-10,-36,-29,-ja-41,0,-25,65,-28,gh-1,22,10,34,28,35","k":{"7":6,"4":-3,"1":14}},"1":{"d":"4o,-4K,1u-62,1a,-j1-39,1a,-qj,0","k":{"9":16,"8":17,"7":24,"6":16,"5":14,"4":19,"3":16,"2":15,"1":33,"0":11,".":14,",":14}},"2":{"d":"qk,-qh,49,-42,92,-81,qg,1a,iN-qd,1a,-qe,-34,96,-72,iG,-ap,-14,-9,-24,-23,-ge-18,0,-27,12,-28,4U-58,1k-1,-62,35,-93,89,-qf,0,82,30,82,70","k":{"7":8,"4":-1,"1":17}},"3":{"d":"1Z,-3V,-24,-27,-27,-54,-5E,-9o,2,40,-6,40,-j0,-13,-7,-21,-17,-iE-12,0,-18,8,-19,1P-61,3x,-45,34,-75,83,-qF,0,2f,86,44,qG,28,38,5U,-44,iH-50,-3,-87,-25,-89,-r6,r7,31,54,28,54,-1","w":4s,"k":{"7":11,"4":-2,"1":20}},"4":{"d":"by,-ci-2f,1a,-r8,-r5,1a,r4,1a,bD-26,1a,ci-59,1a,-r1,-cO,-r2-49,r3,0","k":{"7":7,"4":-6,"1":16}},"5":{"d":"r9,-7L-1,47,-42,88,-93,ra-48,0,-84,-28,-92,-rg,rh,28,61,15,61,-9B,-35,-53,-44,-64,-iz-50,-ri,-rf,1a,iN-86,1f-5,re,-26,3d,19,2y,74","k":{"7":9,"4":-4,"1":18}},"6":{"d":"1F,5v-77,0,-4n,-89,-73,-rb,-rc,1f-54,rd,-8,89,29,89,iZ,53,-40,92,-94,r0,-j3-19,0,-33,14,-33,6G,19,14,33,33,iR,0,33,-14,33,-6G,-18,-14,-33,-33,-33","k":{"7":12,"4":-5,"1":21}},"7":{"d":"22,-qZ,1a,8S-85,qM-67,qN,-j1-94,1a,-52","k":{"7":11,"6":14,"4":20,"1":19,".":26}},"8":{"d":"aQ,-qO,31,31,5U,-50,j5-81,0,-2U,-3S,-51,-j5-50,-38,-12,-2y,50,-qL,0,3c,76,51,qK,-qH-13,0,-23,10,-23,9I,12,9,21,22,qI,0,22,-9,22,-9S,-12,-9,-22,-21,-qJ,-qP-15,0,-26,12,-26,qQ,16,11,28,27,qW,0,26,-13,26,-j0,-15,-12,-27,-27,-27","k":{"7":11,"4":-2,"1":20}},"9":{"d":"1F,-6u-55,14,-95,-31,-95,-iZ,-51,40,-90,94,-qX,0,6P,86,78,jc-61,qY-70,qV,-jn-18,0,-32,15,-32,6G,18,14,33,32,iR,0,34,-14,34,-6G,-18,-16,-33,-34,-33","k":{"7":7,"4":4,"1":15}},":":{"d":"76,-4z,1T-57,1a,-3h,iW,-3D,1T-57,1a,-3h,0","w":94},";":{"d":"76,-iM-1,54,12,8j,-57,9t,-iV,2,30,-3,26,-7d-26,1a,-3h,iW,-3D,1T-57,1a,-3h,0","w":94},"<":{"d":"3m,-qU,iU-94,qR,iP,iU-a0,-qS,-49","w":3i},"=":{"d":"15,-qT,1a,aO-3m,1a,-q1,-tY,1a,4U-3m,1a,-39"},">":{"d":"12,-p8,-p9,-9q-95,-iP,-pa,ga,50","w":3i},"?":{"d":"50,-iO-10,-26,56,-67,56,-5t,-13,-7,-20,-19,-bo-16,0,-22,9,-22,6C-60,1k-2,-52,33,-86,85,-p7,0,78,30,78,7m,44,-57,69,-61,p6-57,j8,-4z,1T-57,1a,-3h,0","w":9g},"@":{"d":"5i,5v-76,3,-2J,-55,-2J,-p3,-72,56,-1K,1K,-p4,0,4e,45,4e,p5,58,-56,3d,-89,7j-28,39,-96,19,-96,-pb,-53,61,-3c,99,-pc,-pi,1f-16,pj,7,3,11,8,pk,0,30,-29,30,-aA,-45,-35,-77,-85,-iO-55,0,-97,43,-97,ph,53,38,94,97,pg,0,47,-4,69,-pd,pe-22,8,-48,12,-75,pf,-p2-17,0,-31,17,-31,iw,16,9,26,23,p1,0,31,-17,31,-iw,-15,-10,-26,-23,-26","w":oO},"A":{"d":"4q,-5y-84,1f-13,5y-66,h5,-hW,hV,1u-66,hU,-hX,1f-25,-82","w":cW,"k":{"\\1Q":8,"\\3z":18,"y":8,"w":5,"v":7,"u":2,"t":1,"q":3,"o":5,"g":5,"e":5,"d":5,"c":5,"Y":18,"W":12,"V":14,"U":7,"T":15,"Q":10,"O":10,"G":10,"C":10,".":-10,"-":-8,",":-10}},"B":{"d":"4s,-3V,52,-32,73,-3c,oP-76,1a,-oQ,oN,-3,91,15,91,6z,21,-10,38,-28,oM,9,40,29,40,oI,-oJ,-21,-24,-19,-47,-iC,oK,0,47,2,47,-oL,-oR,-25,-32,-21,-59,-oS,oY,1,59,2,59,-23","w":ak,"k":{"Y":9,"W":2,"V":3,"J":-5}},"C":{"d":"bA,-hp,1k-14,57,-63,95,-2U,hC-71,0,-1K,-56,-1K,-8z,-70,56,-1Z,2S,-hB,0,3d,44,2M,8V-65,1k-10,-26,-32,-42,-59,-bG-36,0,-64,30,-64,6i,74,97,1F,2M,32","w":hE,"k":{"y":-3,"Z":-1,"J":-5,"A":9,";":-20,":":-20,".":-1,",":-1}},"D":{"d":"oZ,-p0,69,-43,2U,-2y,oX-95,1a,-oW,oT,-4,2l,46,2S,oU,-ap,-50,-29,-73,-86,-oV,pl,5,87,-15,86,-66","w":cW,"k":{"Y":10,"W":3,"V":4,"T":4,"J":-2,"A":10}},"E":{"d":"21,1a,-i1,1a,1W-75,1a,cY,1a,1T-72,1a,i0,1a,1W-2F,0","w":3m,"k":{"\\5D":-3,"v":-1,"O":-3,"C":-3}},"F":{"d":"21,1a,-pm,1a,1W-72,1a,pN,1a,1W-70,1a,pO-59,0","w":pP,"k":{"\\2u":-1,"\\2e":10,"u":-1,"r":-1,"O":-1,"J":2,"A":10,".":10,"-":-17,",":10}},"G":{"d":"72,-jF-11,73,1H,3S,2M,8r-71,1a,-pM,5V,83,-51,5w,-1K,b6-72,0,-8s,-55,-8s,-8z,-70,59,-1Z,2J,-pL,0,2f,36,4n,9R-69,1k-28,-56,-1Z,-29,-6P,37","w":pI,"k":{"Y":12,"W":4,"V":7,"T":5,"A":11,";":-19,":":-19,".":3,",":3}},"H":{"d":"21,1a,-4w,1a,pJ,1a,-pK,1a,1u-61,1a,-8V-79,1a,8V-61,0","w":jH},"I":{"d":"21,1a,-4w,1a,1u-61,0","w":1L},"J":{"d":"85,-pQ,0,19,-9,18,-bd,-pR,1a,pX,2f,-2Y,2S,-jD,jJ-9,-12,-11,-26,-11,-pY,3x,19,6,27,19,27","w":gQ,"k":{"A":6}},"K":{"d":"21,1a,-4w,1a,pZ,-pW,1f-80,pV,pS-72,1f-67,-pT,aN-61,0","w":cL,"k":{"y":9,"u":8,"o":12,"e":12,"a":10,"T":-7,"O":10,"G":10,"C":10,"-":4}},"L":{"d":"21,1a,-4w,1a,pU,1a,1W-2O,0","w":5Z,"k":{"\\5D":7,"\\1Q":11,"\\3z":19,"y":11,"u":1,"j":1,"Y":19,"W":14,"V":15,"U":3,"T":15,"O":6,"G":7,"C":7,"-":-6}},"M":{"d":"21,1a,-pH,pG,ps,-pt,1a,1u-56,pu,-2I-52,2I-41,1f-52,-pr,2I-56,0","w":pq,"k":{"j":-5}},"N":{"d":"21,1a,-pn,po,jc-3,-pp,1a,1u-53,1f-94,-pv,pw-59,0","w":jf,"k":{"u":-4,"o":-3,"j":-5,"e":-3,"a":-3,".":-6,",":-6}},"O":{"d":"5U,-pD,0,2S,54,2S,5A,70,-56,2l,-2S,pE-73,0,-1K,-54,-1K,-pF,-69,57,-3k,1K,-pC,-jn-37,0,-66,31,-66,6i,41,28,72,67,pB,0,65,-30,65,-6i,-40,-29,-72,-66,-72","w":py,"k":{"Y":10,"X":8,"W":4,"V":5,"T":5,"J":-1,"A":11,";":-20,":":-20,".":3,",":3}},"P":{"d":"4F,-cS,61,-45,92,-2U,go,6X-59,1a,-pz,pA,-3,1M,25,1M,rj,-aH,-30,-30,-30,-63,-rk,t4,1,63,1,63,-28","w":4O,"k":{"\\2e":16,"o":3,"e":4,"a":3,"Y":5,"J":13,"A":16,".":23,"-":-10,",":23}},"Q":{"d":"9x,-aw-84,54,-9A,-13,-9A,-t5,-71,56,-2S,2S,-t6,0,2n,2Y,2Y,t3,6,20,11,32,t2,sZ-31,4,-58,-3,-72,-t0,-t1,-51,-7,-2f,-59,-t7-34,0,-60,23,-66,t8,-22,87,3,1Z,te,-9W-23,-29,-47,-42,-83,-tf,32,52,55,83,31","w":tg},"R":{"d":"6F,-aH,37,-23,71,-60,hy,hs-70,1f-56,-hr,hq-59,1a,-ht,hu,-4,1H,28,1H,hx,-hw,-29,-28,-36,-62,-gK,hv,2,62,-4,62,-34","w":h6,"k":{"\\1Q":-4,"\\3z":8,"y":-4,"u":-1,"o":1,"e":1,"Y":8,"W":3,"V":4,"U":-2,"T":-1,"O":1,"J":9,"G":1,"C":1,"-":-8}},"S":{"d":"4y,-5L-61,3x,-30,-42,-29,-43,-hL,26,1,17,50,hK,33,68,8T,-28,hN-55,-2,-89,-27,-88,-hO,1k-4,39,47,43,49,hR-12,-28,-3,-19,-54,-5X-83,-31,-60,-5z,32,-hP,2,81,25,81,75","w":9F,"k":{"\\1D":-2,"v":-5,"t":-6,"Y":5,"V":1,"T":-2,"J":-5,"A":4}},"T":{"d":"50,1a,-ip-47,1a,-td,1a,1W-47,1a,ip-62,0","w":4q,"k":{"\\2u":1,"\\1Q":-8,"\\2V":-3,"\\1D":13,"\\1S":12,"\\2e":14,"y":14,"w":13,"v":13,"u":10,"s":8,"r":9,"o":13,"g":12,"e":13,"c":13,"a":12,"Y":-10,"W":-7,"V":-10,"S":-4,"O":5,"J":15,"G":5,"C":5,"A":14,";":-7,":":-7,".":8,"-":-2,",":8}},"U":{"d":"4S,5v-58,0,-93,-33,-93,-he,-hl,1a,hn,32,9,45,31,9o,0,32,-12,31,-hg,-hJ,1a,i9,65,-35,1F,-92,1F","w":7o,"k":{"r":-4,"p":-5,"n":-4,"m":-4,"j":-4,"A":6,".":-1,",":-1}},"V":{"d":"-4,-tc,t9,ta,-tb,1f-82,1u-63,0","w":cL,"k":{"\\5G":-3,"\\2u":6,"\\5s":10,"\\1Q":-4,"\\2V":-3,"\\1D":10,"\\1S":10,"\\2e":14,"y":-3,"u":7,"r":6,"o":10,"i":-3,"g":10,"e":10,"c":10,"a":10,"T":-10,"O":6,"J":15,"G":6,"C":6,"A":14,";":-9,":":-9,".":15,"-":-4,",":15}},"W":{"d":"3,-sY,sX,sK,-sL,sM,sJ,-sI,1f-64,1u-55,1f-36,-gC-36,gC-56,0","w":sE,"k":{"\\2u":5,"\\5s":9,"\\1Q":-3,"\\1D":9,"\\1S":8,"\\2e":14,"y":-2,"u":6,"r":4,"o":8,"g":8,"e":9,"c":8,"a":8,"Y":-10,"T":-8,"S":-1,"O":4,"G":4,"C":4,"A":14,";":-12,".":10,"-":-6,",":10}},"X":{"d":"5Z,-gF,1f-74,sF,sG-70,1f-52,-9R-50,9R-69,gG,-gJ-75,-sH,gI,69","w":sN,"k":{"y":10,"o":9,"e":11,"Q":9,"O":9,"C":9,"-":3}},"Y":{"d":"68,1a,-8y-72,-i2,i3,ij,-ii,1f-72,ih,8y-62,0","w":4s,"k":{"\\2V":-2,"\\1D":15,"\\1S":15,"\\2e":20,"v":1,"u":10,"q":15,"p":10,"o":15,"i":-3,"g":15,"e":15,"a":15,"W":-10,"T":-10,"S":4,"O":10,"J":20,"G":10,"C":10,"A":20,";":-5,":":-5,".":18,"-":3,",":18}},"Z":{"d":"6,1a,-im,-ie-83,1a,-ic,1a,9q-77,i6,1a,1W-3F,0","w":4G,"k":{";":-22,":":-22,".":-12,",":-12}},"[":{"d":"2y,5O-63,-8,-91,-38,-91,-5M,-1M,-20,-cL,91,-sO,sU-26,1,-36,13,-36,5N,gw,30,10,42,36,5N,53","w":2F},"\\\\":{"d":"65,-sV,9k-53,1f-95,-sW,0","w":3F},"]":{"d":"2y,-cI-1,65,-31,96,-91,sT,-sS,-1,36,-13,36,-5N,-gw,-30,-10,-42,-36,-5N,-sP,3,91,4e,91,cp","w":2F},"^":{"d":"57,-sQ-53,iq,-sR,iq,th-52,1f-35,-78","w":3i},"gY":{"d":"0,ti,1a,5y-3i,1a,-35","w":3i},"a":{"d":"4O,-3D,2I-51,1a,-5c-9,17,-27,25,-56,9n-54,0,-92,-40,-92,-7l,-81,1L,-2J,8T,-8O,-i4,b8,-2C-25,0,-45,19,-45,2w,27,19,46,45,b5,0,46,-19,46,-5f,-26,-20,-45,-46,-45","w":i7,"k":{"y":-2,"v":-2}},"b":{"d":"72,-tK,-50,5w,1,5w,tL,80,-91,2O,-7B,gW,gZ-51,1a,-6s,1a,tM,-2C-26,0,-45,20,-45,2w,27,18,46,44,ca,0,45,-20,45,-5f,-26,-19,-45,-44,-45","w":h3,"k":{"y":4,"w":2,"v":2,"j":-1}},"c":{"d":"3R,-hQ,1k-11,44,-49,75,-95,6u-54,0,-97,-43,-97,-7l,-54,41,-96,95,-hT,0,86,31,96,6X-55,1k-15,-41,-82,-28,-82,gf,47,63,62,83,21","w":8e,"k":{"j":-1,"J":-6}},"d":{"d":"8e,-4K,1u-51,1a,-5c-50,58,-3R,8,-3R,-5j,-78,90,-2l,5i,-cR,-tJ,tI,-2C-27,0,-46,19,-46,2w,27,18,46,45,tF,0,47,-19,47,-5f,-25,-20,-45,-46,-45","w":3U,"k":{"j":-4}},"e":{"d":"1N,-cm,-7,40,-1,58,-3v-17,39,-50,63,-89,9H-52,0,-94,-43,-94,-9J,-54,42,-97,94,-a5,0,1L,48,94,a7-4Q,5V,33,50,45,73,9u,-9z,1k-6,-40,-76,-42,-82,0","w":4O,"k":{"y":6,"x":7,"w":4,"v":4,"t":-1}},"f":{"d":"23,-tG-2,-49,25,-67,77,-tH,fR-17,-2,-25,7,-23,tN,1a,1E-23,1a,6f-54,1a,-6f-20,1a,-tO,0","w":2f,"k":{"\\2u":-1,"\\1Q":-8,"\\2V":-2,"\\1D":2,"\\1S":1,"t":-8,"s":-2,"o":2,"l":-3,"j":-2,"i":-3,"f":-5,"e":2,"a":1}},"g":{"d":"76,tU,36,86,14,76,-tV-44,57,-5w,10,-5w,-7m,-78,93,-2J,7B,-cR,-tW,1a,cS,37,-2,46,-11,gM-34,59,-tT,55,-gQ,-tS,cP,-2C-24,0,-44,20,-44,2w,27,19,46,44,b5,0,44,-19,44,-2w,-27,-18,-46,-44,-46","w":8g},"h":{"d":"1M,-2C-52,0,-24,87,-31,6Y-54,1a,-6s,1a,tP,-15,26,-22,48,-tQ,0,66,25,66,tR,tE-55,1k-6,-47,19,-4Q,-28,-4Q","w":4F,"k":{"\\1Q":3,"y":3,"v":1}},"i":{"d":"72,-3D,2I-54,1a,-ib,g0,-4K,1E-54,1a,-fZ,0","w":90,"k":{"j":-4}},"j":{"d":"72,-3D,tD,58,-23,72,-80,gr,-to,1,26,-3,26,-tp,-tq,g0,-4K,1E-54,1a,-fZ,0","w":90},"k":{"d":"18,1a,-6s,1a,tn,-tm,1f-68,tj,tk-61,1f-52,-fY,tl-54,0","w":tt,"k":{"u":-2,"o":6,"g":5,"e":6,"c":6,"a":5,".":-2,"-":3,",":-2}},"l":{"d":"18,1a,-6s,1a,1u-54,0","w":90,"k":{"j":-4}},"m":{"d":"tu,-2C-49,0,-23,88,-29,6Y-55,1k-6,-46,19,-4Q,-27,-2C-51,0,-25,88,-31,6Y-54,1a,-7U,1a,tA,-36,83,-33,1L,tB,-56,1Z,-38,1Z,tC,tz-55,1a,-g5,-29,-6,-40,-27,-40","w":bk,"k":{"y":3,"w":1,"v":1,"p":-3,"j":-2}},"n":{"d":"1M,-2C-52,0,-25,87,-31,6Y-54,1a,-7U,1a,ty,-49,3n,-24,3n,bp,bi-55,1a,-tv,-26,-7,-37,-28,-37","w":4F,"k":{"y":3,"v":1,"p":-4,"j":-4}},"o":{"d":"10,-tw-1,-53,42,-96,97,-tx,0,98,42,98,g5,53,-42,97,-98,sD-57,0,-97,-40,-97,-sC,-2C-24,0,-44,20,-44,2w,27,19,46,44,rL,0,43,-20,43,-5f,-25,-19,-45,-43,-45","w":rM,"k":{"y":6,"x":7,"w":3,"v":3,"t":-1}},"p":{"d":"69,-rN,-61,4h,-7,4h,5j,78,-91,2l,-c8,fP,8U-54,1a,-rK,1a,rJ,-2C-25,0,-45,22,-45,2w,26,20,46,46,ca,0,45,-20,45,-5f,-26,-20,-45,-46,-45","w":3U,"k":{"\\1Q":5,"y":5,"t":-2,"j":-1}},"q":{"d":"8e,-3D,1u-54,1a,-rG-50,55,-5i,8,-5i,-7m,-82,96,-2F,3R,-rH,-rI,b8,-2C-25,0,-45,20,-45,2w,27,20,46,46,ca,0,45,-20,45,-2w,-26,-20,-46,-46,-46","w":3U,"k":{"u":-3,"c":-2}},"r":{"d":"69,-rO,-18,23,-24,45,-5E,6d-70,-4,-33,79,-42,j2-54,1a,-7U,1a,19","w":3n,"k":{"\\5F":-5,"\\1Q":-10,"z":-5,"y":-10,"x":-5,"w":-8,"v":-10,"t":-10,"s":-4,"l":-1,"k":-1,"h":-1,"f":-7,";":-15,":":-15,".":9,"-":-7,",":9}},"s":{"d":"3R,-hi-53,1k-1,-9,-5,-14,-15,-aw-10,0,-17,5,-17,hh-1,20,71,27,74,hm,39,2,3c,-58,8Z-38,-1,-71,-21,-73,-aK,1k-1,21,39,22,40,3v-10,-21,-4,-10,-53,-hf-68,-22,-38,-2y,34,-h8,2,65,20,67,57","w":aB,"k":{"\\1D":1,"t":-4,"p":-2,"k":-2}},"t":{"d":"77,-4K,rP,1a,1E-26,1a,6f-54,1a,-6f-27,1a,-rV,1a,-aK,0","w":2f,"k":{"y":-9,"o":1,"e":1,"c":1,";":-18,":":-18}},"u":{"d":"71,-gp,25,9,35,29,gi,0,25,-88,31,-fT,1a,2I-51,1a,-5c-33,52,-3n,19,-3n,-a9,-fU,1a,3c","w":7V,"k":{"j":-4}},"v":{"d":"9g,-2I-66,2I-52,1f-65,-au,rW,rX,-rU,0","w":c3,"k":{"\\1D":3,"\\1S":2,"s":-1,"o":3,"j":-2,"g":2,"e":3,"c":3,"a":2,";":-15,":":-15,".":12,"-":-9,",":12}},"w":{"d":"0,-rT,6c,rQ,-rR,rS,rF,-rE,1f-56,2I-50,1f-31,-g6-31,g6-50,0","w":rr,"k":{"s":-1,"o":2,"g":2,"e":2,"c":2,"a":2,";":-15,":":-15,".":9,"-":-9,",":9}},"x":{"d":"2S,-rs,1f-61,rt,g7-66,1f-37,-c0-37,c0-65,c1,-g7-61,-rq,8L,47","w":bW,"k":{"q":6,"o":6,"e":6,"c":6,"a":6}},"y":{"d":"2l,-au,1f-90,1u-58,8L,-9a-68,-h9,ha,3S","w":9g,"k":{"\\4L":4,"o":4,"j":-2,"g":4,"e":4,"c":4,"a":3,";":-14,":":-14,".":13,"-":-8,",":13}},"z":{"d":"70,-hd,1a,1E-1N,1a,-hc,-8x-76,1a,-hb,1a,41","w":4h,"k":{";":-22,":":-22,",":-5}},"{":{"d":"1H,-rp-65,-15,-6,92,-56,rl,16,26,43,23,rm-2,30,8,23,33,5E,rn-48,4,-91,0,-86,-ro-3,-31,10,-78,-18,-go,-ru,-7,18,-53,18,-c2,-49,35,-53,86,-bp,43","w":4S},"|":{"d":"60,-rv,1a,9k-60,1a,-gn","w":3i},"}":{"d":"8,rB,15,6,-92,56,-gh-31,-29,-23,-28,-23,-rC,-30,-9,-23,-33,-rD,-rA,-4,86,0,86,rz,31,-10,79,18,ga,g9-30,7,-18,52,-18,bM,49,-35,53,-86,bp,-43","w":4S},"~":{"d":"3F,-rw-7,4,-51,-21,-66,-bo-9,0,-15,6,-24,1P-29,-rx,-35,32,-51,55,-ry,-4,60,21,68,rY,0,16,-7,24,-bh,ge-15,37,-31,51,-57,51","w":h4},"\'":{"d":"13,-bm-4,-bl,1f-3,8U-24,0","w":50},"`":{"d":"54,-rZ,1W-19,sp-74,-47","w":3i},"\\2e":{"d":"4q,-5y-84,1f-13,5y-66,h5,-hW,hV,1u-66,hU,-hX,1f-25,-sq,-9U,1E-89,4U-16,-33","w":cW,"k":{"T":15}},"\\hY":{"d":"21,1a,-i1,1a,1W-75,1a,cY,1a,1T-72,1a,i0,1a,1W-2F,sr,-9U,1E-88,4U-17,-33","w":3m},"\\hZ":{"d":"21,1a,-4w,1a,1u-61,so,-sn,4U-83,cK-16,-33","w":1L},"\\hS":{"d":"4y,-5L-61,3x,-30,-42,-29,-43,-hL,26,1,17,50,hK,33,68,8T,-28,hN-55,-2,-89,-27,-88,-hO,1k-4,39,47,43,49,hR-12,-28,-3,-19,-54,-5X-83,-31,-60,-5z,32,-hP,2,81,25,81,sk,-sl,-hF,1f-47,1T-54,1f-46,-3h,0","w":9F},"\\3z":{"d":"68,1a,-8y-72,-i2,i3,ij,-ii,1f-72,ih,8y-62,sm,-9U,1E-88,4U-17,-33","w":4s,"k":{"\\1D":15,"\\1S":15,"\\2e":20,"J":20,";":-5,":":-5,".":18,"-":3,",":18}},"\\io":{"d":"6,1a,-im,-ie-83,1a,-ic,1a,9q-77,i6,1a,1W-3F,ss,-9c,-bf,1f-48,1T-53,1f-47,-hD,0","w":4G},"\\1S":{"d":"4O,-3D,2I-51,1a,-5c-9,17,-27,25,-56,9n-54,0,-92,-40,-92,-7l,-81,1L,-2J,8T,-8O,-i4,b8,-2C-25,0,-45,19,-45,2w,27,19,46,45,b5,0,46,-19,46,-5f,-26,-20,-45,-46,-st,-i8,6U-74,8S-18,-26","w":i7},"\\1D":{"d":"1N,-cm,-7,40,-1,58,-3v-17,39,-50,63,-89,9H-52,0,-94,-43,-94,-9J,-54,42,-97,94,-a5,0,1L,48,94,a7-4Q,5V,33,50,45,73,9u,-9z,1k-6,-40,-76,-42,-82,sz,-i8,6U-74,8S-18,-26","w":4O,"k":{"t":-1}},"\\2V":{"d":"72,-3D,2I-54,1a,-ib,ia,-sA,6C-69,sB-19,-26","w":90,"k":{"v":-2}},"\\hI":{"d":"3R,-hi-53,1k-1,-9,-5,-14,-15,-aw-10,0,-17,5,-17,hh-1,20,71,27,74,hm,39,2,3c,-58,8Z-38,-1,-71,-21,-73,-aK,1k-1,21,39,22,40,3v-10,-21,-4,-10,-53,-hf-68,-22,-38,-2y,34,-h8,2,65,20,67,sy,-7N,-8I,1f-48,1T-38,1f-47,-6b,0","w":aB,"k":{"t":-4,"p":-2,"k":-2}},"\\1Q":{"d":"2l,-au,1f-90,1u-58,8L,-9a-68,-h9,ha,sx,-su,6U-73,8S-19,-26","w":9g,"k":{"\\4L":4,".":13,",":13}},"\\5F":{"d":"70,-hd,1a,1E-1N,1a,-hc,-8x-76,1a,-hb,1a,sv,-7N,-sw,1f-47,1T-38,1f-47,-6b,0","w":4h,"k":{";":-21,":":-21,",":-5}},"\\5D":{"d":"bA,-hp,1k-14,57,-63,95,-2U,hC-71,0,-1K,-56,-1K,-8z,-70,56,-1Z,2S,-hB,0,3d,44,2M,8V-65,1k-10,-26,-32,-42,-59,-bG-36,0,-64,30,-64,6i,74,97,1F,2M,sj,-9c,-bf,1f-48,1T-53,1f-47,-hD,0","w":hE},"\\hH":{"d":"21,1a,-si,1a,1W-74,1a,cY,1a,1T-72,1a,s5,1a,1W-ao,s6,-9c,-hF,1f-47,1T-54,1f-46,-3h,0","w":3m},"\\hz":{"d":"6F,-aH,37,-23,71,-60,hy,hs-70,1f-56,-hr,hq-59,1a,-ht,hu,-4,1H,28,1H,hx,-hw,-29,-28,-36,-62,-gK,hv,2,62,-4,62,-hA,-9c,-bf,1f-48,1T-53,1f-46,-3h,0","w":h6},"\\h7":{"d":"4S,5v-58,0,-93,-33,-93,-he,-hl,1a,hn,32,9,45,31,9o,0,32,-12,31,-hg,-hJ,1a,i9,65,-35,1F,-92,s7,-s4,0,41,18,41,aC,23,-18,42,-41,bG-23,0,-42,-19,-42,-s3,-23,19,-41,42,-s0,-s1-9,0,-16,6,-16,s2,23,31,18,31,7f,-9,-7,-15,-15,-15","w":7o},"\\4L":{"d":"3R,-hQ,1k-11,44,-49,75,-95,6u-54,0,-97,-43,-97,-7l,-54,41,-96,95,-hT,0,86,31,96,6X-55,1k-15,-41,-82,-28,-82,gf,47,63,62,83,s8,-7N,-8I,1f-48,1T-38,1f-47,-6b,0","w":8e,"k":{"o":-1,"e":-1}},"\\5s":{"d":"1N,-cm,-7,40,-1,58,-3v-17,39,-50,63,-89,9H-52,0,-94,-43,-94,-9J,-54,42,-97,94,-a5,0,1L,48,94,a7-4Q,5V,33,50,45,73,9u,-9z,1k-6,-40,-76,-42,-82,s9,-7N,-8I,1f-48,1T-38,1f-47,-6b,0","w":4O},"\\2u":{"d":"71,-gp,25,9,35,29,gi,0,25,-88,31,-fT,1a,2I-51,1a,-5c-33,52,-3n,19,-3n,-a9,-fU,1a,sf,-sg,0,40,18,40,fV,22,-18,41,-40,fR-23,0,-42,-19,-42,-aC,-22,19,-40,42,-sh,-se-9,0,-16,7,-16,9B,9,7,16,15,sd,0,16,-7,16,-9B,-9,-7,-16,-15,-16","w":7V},"\\5G":{"d":"69,-sa,-18,23,-24,45,-5E,6d-70,-4,-33,79,-42,j2-54,1a,-7U,1a,sb,-sc,-8I,1f-48,1T-38,1f-47,-6b,0","w":3n,"k":{"v":-10,";":-13,":":-13,".":10,",":10}}}});',62,2158,'||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||0r0|var|function|return|this|0r|document|settings|lightbox|else|0v|Math|height|length|false|new|style|deconcept|for|activeImage|241r|window|getAttribute|name|null|left|width|image|cufon|u00e9|41r|100|get|104|true|options|128|102|103|135|css|21r|u00fd|div|u00e1|55r|createElement|body|54r|color|replace|125|||||||||||imageArray|appendChild|offsetParent||u00c1|106|setAttribute|nav|key|num|parseInt|126|top|166|22r|convert|split|Cufon|arguments|jQuery|u016f|typeof|45v0|push|113|value|documentElement|_19|136v|display|position|134|jquery|cvml|181r|130|font|expires|123|container|132|xScroll|81r|toLowerCase|127|yScroll|122|u00ed|src|axo|109|undefined|||||||||||flip|box|101|114|while|test|type|55r57|181|offset|124|url|169|117|parseFloat|CSS|repeat|PlayerVersion|break|navigator|details||text|0v1|textShadow|u00dd|inline|ShockwaveFlash|SWFObjectUtil|181r0|util|152|loading|data|_23|date|apply|click|108|auto|cookie|arrPageSizes|179r|147|105|canvas|225|73v0|firstChild|opacity|112|windowWidth|||||||||||179r23|_set_image_to_view|220r|case|115|extend|24r29|146|windowHeight|self|show|background|44r|120|139|normal|162|media|198|PI|try||241r61|block|175|55r0|catch|glyphs|162v|jQueryMatchedObj|prop|202|165|ascent|ready|href|241r0|u010d|_29|ceil|209|className|136|major|111|keycode|39r|btnNext|objEvent|none|137|convertFrom|||||||||||minY|62r|19v|unbind|btnPrev|46v0|overlay|swf|144|72v0|70158|parentOffset|borr|241r24|torl|167|156|objImagePreloader|u011b|93v0|arrPageScroll||142|path|35r|141|125v0|hover|_2f|u010c|25r0|u017e|u0159|title|_2d|html|textGradient|171r|103v0|43r0|72v|continue|163|absolute|Height|400|138|0v4|engine|38v|minor|158|||||||||||round|55r51|0r28|54v|domain|140r|scroll|Left|70v0|version|substring|val|installedVer|doExpressInstall|themes|images|gif|string|241r54|fontStretch|75v|addVariable|add|59v0|addEventListener|63v0|all|u00a0|31r|27r28|family|201|32v0|currentStyle|249r|98r|41r24|0r25|27r26|padding|join|119|SWFObject|span|descent|minX|33r|weight|179r0|76r|136r|each|||||||||||margin|180|34r|23r|_16|0v0|offX|Top|YAHOO|67v|nodeName|97v0|69v0|70v|221|face|elem|expanded|indexOf|279r63|condensed|callee|variables|expression|18r|198r|parentNode|145|setTimeout|vml|imageBlank|bind|fixedNavigation|210|78v0|scrollTop|306r30|83v|204|241r15|62v|0v2|224v|fill|_finish|innerHeight|181r51|203|clientWidth|Array|underline|15r|||||||||||useExpressInstall|58v0|99r23|34v0|207|objClicked|224|object|0r9|121|containerBorderSize|116|caption|attachEvent|64r0|currentNumber|hide|36r|129|removeChild|offY||48r13|103r|88r|126v0|versionIsValid|pow|createTextNode|cufoncanvas|log|cufontext|textTransform|ActiveXObject|21r52|shape|getElementById|0r29|alt|redirectUrl|71r0|74v0|exp|241r23|47r|148|77r|96r|_26|easing|_20|99v|||||||||||69r|sin|297r16|158r|5625|58r0|179|gradient|location|215r|301r|secure|stops|25v|45v24|search|50r|embed|head|108r0|19xm63||_disable_keyboard_navigation|206|_5|110r82|196|16v0|_1|Image|150r24|186|toString|63v|23v0|96v0|imageBtnPrev|italic|bounceout|align|_1d|getParams|oblique|85r|22v0|imageBtnNext|337r18|addParam|59v|set|exec|escapeKey|157|95r0|transparent|1px|59r0|97v58|63r|114r|pageWidth|54r0||||||||||readyState|208|runtimeStyle|44r28|_18|133|120v0|curDate|_1a|getRequestParameter|spacing|181r57|bbox|14v|number|units|viewBox|57v0|161|41v0|match|200r0|right|_7|158v0|registerFont|per|60r54|link|Date|104r|38r|clientHeight|150|xiSWFPath|pageHeight|102xm37|offsetHeight|params|___getPageSize|65v27|42r25|94v50|102r137|___getPageScroll|_1c|recognizesMedia|62v0|46v26|142v|___pause|0xm109|scrollLeft|getElementsByTagName|total|pageYOffset|30r0|disabled|23r58|24r28|22r29|113r|bgiframe|312|77r31|164r|_a|20v|49r0|38r10||getStyle|textAlign|query|registerEngine|57r0|btn|110|indent|195|words|img|49r|forceHitArea|_2b|42v|71r|mimeTypes|74v39|nextSibling|plugins|84v0|_d|getContext|cookieValue|code|cookies|70r|printable|select|241r27|197|iframe|Width|rev|56r|0r69|85v0|174|fillStyle|140|34r0|60r|143|_9|46v25|userAgent|66r|results|70r22|_8|maxY|translate|42r|baseSize|abs|intHeight|54v13|fontFamily|_1f|222|intWidth|root|33v|Size|215r56|default|addClass|missingGlyph|71v0|param|241r132|getVariablePairs|87r104|0r7|89r108|relative|123r|intImageWidth|31v|intImageHeight|37r|218|242r|attributes|91r0|0xm108|secNav|75r0|159v0|0r57|61r|screen|239|asin|37r72|217r0|129r0|241r39|102r84|panose|delete|29r|15v|stretch|360|stemh|range|22v|nodeType|0020|dojo|stemv|017E|75v39|0r5|288|fontSize||removeClass|56v0||unicode|62r17|137r0|selector|separate|supports|0xm81|textless|Selector|computedFontSize|76v|marginTop|querySelectorAll|Ext|computedYAdjust|53r31|0xm24|23v12|autoDetect|thickness|0r2|61r0|58r|rect|30v76|110v|stroked|63r29|57r24|2v4|51v27|91r|32r23|0xm13|getSize|48v1|173r26|behavior|136r104|21r123|17v36|46r27|97v16|119r|137r|21r99|143r25|143r61|generate|coordsize|VML|149|198r122|1v0|108v38|shadow|save|123v|||62v49|51v43|68v1|237|0xm71|scale|0r104|0r103|63r24|72r26||21r142|22r118|178v|110v0|write|color2|193|99v0|160r27|0xm23|135r71|135r26|160r0|44v|104v0|16r|16v33|wordSpacing|letterSpacing|max|94v0|228r0|304r|38r27|35v0|important|44r27|90v0||0r66|27v|isNaN|53v0|41r23|lexum|700|51r0|1em|159r|hidden|53r0|32v|98v2|159v|103r94|138r0|109v60|90r|10000in|74v|0v6||size|73r68|middle|23v|259|vertical|165v0||0v66|222v85|222r24|52v|211|56v|281|90v|94v40|74v40|print|switch|150v2|304r22|17v0|61v0|39v0|semi|_15|72r0|_14|41v|getVariables|136r54|108r54|40v0|_13|_12|87r0|41r54|0xm72|_10|_11|borderTopWidth|borderLeftWidth|96v1|117r|97r|flashvars|34v|84r0|_21|525|xiRedirectUrl|24v|21v0|toUTCString|107v|35v51|Right|border|Bottom|MMplayerType|301|83r0|80v0|_start|70r0|_show_image|fadeIn|_show_image_data|msie|133v0|intDiffW|intDiffH|browser|_e|txtImage|156r|_set_navigation|_enable_keyboard_navigation|241r69|0r85|txtOf|0r41|129r|33r0|containerResizeSpeed|61v|overlayOpacity|btnClose|overlayBgColor|182|_set_interface|imageBtnClose|imageLoading|_f|onload|73r0|intCurrentHeight|_|19r|intCurrentWidth|_resize_container_image_box||223|241|0r97|212|u016e|110v36|172r58|0r37|41r135|37r76|41r71|100r0|26v|45r0|12v|130r|Flash|description|146r62|39v41|146v0|cleanupSWFs|90r65|78r|78r0|82r|241r76|0v74|67v34|154v0|83xm142|76r65|u0158|34xm101|125v58|95v|55r58|266|23r57|prototype|u011a|u0161|146r61|36v86|4v11|skipDetect|144v|85r62|138v45|69r55|10v|u0160|96v48|0xm95|0r96|241r48|84r50|u00c9|u00cd|41r75|241r134|153r67|0r36|19r51|getPlayerVersion|137r77|227|277r22|146v3|0xm77|181r54|54r152||146r|||153r0|97r67|97r36|getSWFHTML|bouncein|41r83||u017d|187r|0r54|mouseenter|extra|cufid|isUsable|ultra|38v0|insertBefore|mouseover|12r|getComputedStyle|625|18r0|quotedList|21v|opera|107|134v|attach|unit|DETECT_KEY|String|55v|52r|77v|50r0|shift|33v19|createStyleSheet|sheet|59r|30v18|0xm76|unloadSet|styleSheet|81v0|28v0|189r|133r|115v|contains|138v|maxX|prepUnload|0xm107|toUpperCase|36v|event|151r|visibility|remove|244|_c|116r0|scrollMaxY|innerWidth|offsetWidth|scrollHeight|46r|192v|objPrev|64r|ignore|keyCode||_keyboard_action|keyToClose|keyToPrev|objNext|_preload_neighbor_images|keyToNext|hoverables|arrayPageSize|u00ad|arrayPageScroll|154|46r92|124v|_initialize|243|whiteSpace|64v|pageXOffset|63r102|150r121|onbeforeunload|detectflash|Windows|23v43|159r0|137v0|AllowScriptAccess|248v50|43r|21v62|65v55|91xm90|CE|double|111v34|153|136v0|MMdoctitle|22r113|72v3|87v45|zA|12r23|131r64|11r23|21r66|13r6|coordorigin|Shockwave|18r36|12r0|30r|childNodes|17v58|21r64|241r19|11r5|83v41|onunload|cloneNode|fillcolor|__flash_unloadHandler|38r35|__flash_savedUnloadHandler|63r22|innerHTML|movie|84r|0xm54|178r|178r25|43xm237|44v24|228v|quality|44v0|63r0|0xm28|101v|marginBottom|43v0|61xm237|high|41r25|328|119v33|16r36|61xm75|28r24|27v32|40v|17r|45v39|40r40|0xm113|40r37|62r38|expressinstall|246v33|40r|0r6|65r22|17r36|63v13|62r40|36v36|43xm92|0r109|71xm87|26v4|25xm100|74v1|444553540000|11cf|96B8|cover|223v|MMredirectURL|158r0|Player|Installation|offset2|slice|escape|71v24|160v0|bgcolor|85r60|PlugIn|application|shockwave|141v|lineHeight|getVariable|241r18|311|105v32|flash|clsid|D27CDB6E|AE6D|classid|ActiveX|55r46|45r35|68r27|135v0|backinout|rgba|rgb|875|108v71|publicId|projection|line|doScroll|load|doctype|defaultView|uppercase|lowercase|capitalize|run|transitional|blur|substr|reverse|RegExp|moz|overflow|DOM_VK_ESCAPE|fromCharCode|lineTo|bezierCurveTo|keydown|moveTo|getScript|ROOT|config|mrvxe|fadeOut|complete|DOMContentLoaded|pageshow|loaded||DOM|visible|scrollMaxX|scrollWidth|previousSibling|frameset|fontWeight|hasOwnProperty|createDocumentFragment|unshift|fontStyle|table|tfoot|thead|tbody|appendData|replaceChild|applet|col|optgroup|map|option|script|Sizzle|pre|textarea|call|characters|stylesheet|u0020|u3000|bold|rel|compatMode|BackCompat|cssRules|mediaText|500|sort|mouseleave|refresh|now|active|mouseout|compareDocumentPosition|relatedTarget|onmouseenter|closePath|fast|elasinout|antialias|backin|backout|elasout|elasin|pointer|cursor||bottom|documentMode|com||setTime|getTime|1000|addColorStop|namespaces|urn|microsoft|schemas|colgroup|bounceinout|984375|easein|easeinout|easeout|colors|FlashObject|getQueryParamValue|GetVariable|hash|OBJECT|expoin|sigma|pixelLeft|expoinout|9375|expoout|computed|method|focus|angle|createLinearGradient|encodeURIComponent|paddingBottom|paddingLeft|ico|prev|000|lightBox|filter|Alpha|Opacity|next|close|attr|animate|250|slideDown|resize|backgroundColor|blank|PHOTO|append|index|tabindex||inner||outer|beginPath|scrollTo|VERSION|dimensions|trim|restore|decodeURIComponent|boxModel|marginLeft|Number|class|frameborder|constructor|javascript|tagName|static|bgIframe|always|18v55|57xm127|169v0|37v22|19xm139|48v26|0v68|271|73r|241r74|77v0|21r0|0v83|119xm168|67r0|241r81|122r|44v27|229|122v1|26v16|149v|123v0|128v66|107v0|100r|87v44|13r0|59r95|59r157|37v0|57r3|13r7|30v|12xm140|94v24|98v0|13r32|86v0|11v15|133v56|241r131|241r52|0r95|151r59|295|181r2|159r47|159r80|0r1|147r3|147r||275|241r78|0v71|72v36|124xm138|246v72|126v|127v0|0r48|241r79|277|90r79|90r61|125v55|49r143|41r70|92r|160|50v14|161r62|121r|104r0|187r71|120r85|109r65|146v15|46r66|109r69|80r24|38xm15|64r41|90v44|90r0|70v2|41r64|141r64|22r28|14r12|35r41|91xm99|50v44|170|48v58|93v47|124r82|176v0|106v1|52r101|184|14r27|16r12|28xm127|39v|52v12|115r28|114v65|142r57|77r33|29v|13xm99|161v13|300v|54v74|46r42|155|253v122|26v0|238|300v15|75v70|117v84|196v|21v12|22xm99|113xm100|113v64|194r|0r89|133v72|104v|27v0|50r94|85r0|170r169|231r0|0xm99|28v14|90v79|95r|241r157|92xm99|42xm114|75r|75r49|150r26|154r57|77r63|0v3|45r108|191|88v|158r60|88r72|73v54|32v55|136r133|70r62|0v15|12r21|82xm143|29r0|108v21|82v|43v|50v|198v|84r65|272|181r65|84r70|34v30|241r60|199v|24v14|51v7|50v0|43v48|17v65|82v0|26r0|112r56|112r28|78v|74r0|20r51|20xm115|241r51|46v24|215|161v49|162v8|60r26|112r29|112r46|0r30|181r56|113r57|41r27|0r34|113r35|21v10|277r71|41xm111|315v|15v0|42v0|341v22|41r74|0xm90|100xm111|21xm108|0xm105|162v9|19xm66|241r14|16v9|256v|101xm102|280v22|40xm102|241r133|32xm138|75xm95|297r17|0xm150|333r18|0xm92|26r|82xm166|0xm136|0xm84|45xm155|277r21|41xm75|21r51|105xm129|57xm80|0xm141|273r22|45r|97xm108|97v|313|114r84|127r|112r70|157r63|157r33|157r36|157r47|0r35|232|222r0|53v108|125r|118r65|53v26|103r0|53v|241r95|301r53|0r33|241r62|49v|18xm197|87v24|8r0|193v7|57v32|105v0|127v99|105v|61v54|0r49|169r49|169r64|241r64|54r156|44xm162|31v14|276|118r|19r181|79r66|102r|87r|65r64|125r51|41v19|27r0|179r54|||185|214|99v1|91v|96v55|19v35|99r|19v24|7v38|56r0|177v2|101r|46v27|181v|65r0|0xm110|75r54|167v53|75v0|74xm115|24r23|41r20|76v9|22v47|86r0|22r63|177|17v20|37v|17r51|176|110r169|215r0|302|241r33|0r135|205r37|205r88|219r100|241r37|0r88|212r0|212r|241r67|0v59|72xm162|169v2|104v56|246v70|125v|124xm141|38r0|118r95|164||98v18|47v|111r164|111r|242|241r122|88r94|104v45|72r|61r24|138r111|138r31|170v3|170r24|106r125|106r24|17v28|169v|101v56|96r27|118r82|90v3|201v0|96r64|0r64|316|0r82|118r29|0r102|248v37|25r181|93v44|0xm46|108r|108r29|24v65|200v0|134r|210r25|210r59|38v18|38xm41|91v70|12xm197|216v14|194|269|126v114|45v70|285|210r58|210r23|0r58|0r59|241r25|21r135|211r85|211r26|198v94|99r0|122v|52v30|52xm91|40v21|139xm90|139v|135v|111v59|111v71|0r55|85v46|60r0|153r150|21xm16|59r132|204r0|161xm90|62v32|0xm34|21r139|0r99|66r0|142r|142r94|0xm126|175r22|59v29|22r117|175r29|122r22|119r109|84v|160xm91|64v32|83v54|241r28|67v57|32r24|59v32|110r150|39r0|64v0|48xm155|47r0|241v71|129v70|42v24|60v0|274|94v56|47xm141|0v80|121xm206|121v0|120r|230|42r0|83v48|192|166v|18xm141|111v0|168|125v66|110r|80v42|23r132|23r157|222v|108v0|86v|110v1|109v28|18r5|92v|17v22|45r5|25r17|95v0|91r23|200r24|25v14|26r14|58xm70|14r|40v13|9v15|20v73|214v|27r|47r13|111xm94|0xm83|215r53|5xm120|0xm66|73xm85|306r29|0xm70|38r11|0xm26|144r0|159|151r25|150r41|128r20|128r57|210v|151r64|62r42|179r24|0r63|270|0r60|143r0|134v33|242v71|18v||35r0|88r62|88r27|0r47|69r28|0xm128|246v34|161r|161r56|55r56|0xm57|4671|341|26v9|24xm110|199|33r32|0r4|29r32|0xm118|29r31|138r|53r33|0r8|34r32|53r34|65r56|19v0|19v10|95xm106|2v5|328v19|34v29|56xm38|0xm36|33v64|179v0|103xm81|33xm106|312v|270v19|254v|18v0|64xm101|0xm159|34r44|18v9|0xm161|62r23|69r47|162r|21v21|21r37|22xm176|37r0|90r73|89r|106r|104v1|22xm219|23v45|183v51|112v34|310|58xm220|58v|110r29|172r84|54v0|118|33r23|20r0|5v18|39r45|21r28|157v9|27r24|24v26|167r23|167v2|85v41|0xm103|289|93v|9v30|200|242xm46|94v|31v44|73v|0xm178|73v40|88v0|93xm176|94r|26v8|31r22'.split('|'),0,{}))
;
