Calendar=function(){function m(a){function b(e){var f=a[e];f instanceof Array||(f=[f]);c.handlers[e]=f}a=a||{};this.args=a=$(a,{animation:!S,cont:null,bottomBar:true,date:new Date,fdow:r("fdow"),min:null,max:null,reverseWheel:false,selection:[],selectionType:m.SEL_SINGLE,weekNumbers:false,align:"Bl/ / /T/r",inputField:null,trigger:null,dateFormat:"%Y-%m-%d",opacity:p?1:3,titleFormat:"%b %Y",disabled:E,dateInfo:E,onChange:E,onSelect:E});this.handlers={};var c=this;a.min=K(a.min);a.max=K(a.max);this.date=
K(a.date);this.fdow=a.fdow;b("onSelect");b("onChange");this.selection=new m.Selection(a.selection,a.selectionType,q(na,this));var d=oa.call(this);a.cont&&L(a.cont).appendChild(d);a.trigger&&y(L(a.trigger),"click",q(this.popup,this,a.trigger,null))}function aa(a){var b=["<table",A,"><tr>"],c=0;for(a.args.weekNumbers&&b.push("<td><div class='DynarchCalendar-weekNumber'>",r("wk"),"</div></td>");c<7;){var d=(c++ +a.fdow)%7;b.push("<td><div",r("weekend").indexOf(d)>=0?" class='DynarchCalendar-weekend'>":
">",r("sdn")[d],"</div></td>")}b.push("</tr></table>");return b.join("")}function T(a,b,c){b=b||a.date;c=c||a.fdow;b=new Date(b);var d=b.getMonth(),e=[],f=0,h=a.args.weekNumbers;b.setDate(1);c=(b.getDay()-c)%7;if(c<0)c+=7;b.setDate(-c);b.setDate(b.getDate()+1);var g=new Date;c=g.getDate();var j=g.getMonth();g=g.getFullYear();e[f++]="<table class='DynarchCalendar-bodyTable'"+A+">";for(var i=0;i<6;++i){e[f++]="<tr class='DynarchCalendar-week";if(i==0)e[f++]=" DynarchCalendar-first-row";if(i==5)e[f++]=
" DynarchCalendar-last-row";e[f++]="'>";if(h)e[f++]="<td class='DynarchCalendar-first-col'><div class='DynarchCalendar-weekNumber'>"+ba(b)+"</div></td>";for(var k=0;k<7;++k){var l=b.getDate(),o=b.getMonth(),t=b.getFullYear(),u=1E4*t+100*(o+1)+l,M=a.selection.isSelected(u),z=a.isDisabled(b);e[f++]="<td class='";if(k==0&&!h)e[f++]=" DynarchCalendar-first-col";if(k==0&&i==0)a._firstDateVisible=u;if(k==6){e[f++]=" DynarchCalendar-last-col";if(i==5)a._lastDateVisible=u}if(M)e[f++]=" DynarchCalendar-td-selected";
e[f++]="'><div dyc-type='date' unselectable='on' dyc-date='"+u+"' ";if(z)e[f++]="disabled='1' ";e[f++]="class='DynarchCalendar-day";if(r("weekend").indexOf(b.getDay())>=0)e[f++]=" DynarchCalendar-weekend";if(o!=d)e[f++]=" DynarchCalendar-day-othermonth";if(l==c&&o==j&&t==g)e[f++]=" DynarchCalendar-day-today";if(z)e[f++]=" DynarchCalendar-day-disabled";if(M)e[f++]=" DynarchCalendar-day-selected";if((z=a.args.dateInfo(b))&&z.klass)e[f++]=" "+z.klass;e[f++]="'>"+l+"</div></td>";b.setDate(l+1)}e[f++]=
"</tr>"}e[f++]="</table>";return e.join("")}function pa(a){var b=["<table class='DynarchCalendar-topCont'",A,"><tr><td><div class='DynarchCalendar'>",!p?"<button class='DynarchCalendar-focusLink'></button>":"<a class='DynarchCalendar-focusLink' href='#'></a>","<div class='DynarchCalendar-topBar'><div dyc-type='nav' dyc-btn='-Y' dyc-cls='hover-navBtn,pressed-navBtn' class='DynarchCalendar-navBtn DynarchCalendar-prevYear'><div></div></div><div dyc-type='nav' dyc-btn='+Y' dyc-cls='hover-navBtn,pressed-navBtn' class='DynarchCalendar-navBtn DynarchCalendar-nextYear'><div></div></div><div dyc-type='nav' dyc-btn='-M' dyc-cls='hover-navBtn,pressed-navBtn' class='DynarchCalendar-navBtn DynarchCalendar-prevMonth'><div></div></div><div dyc-type='nav' dyc-btn='+M' dyc-cls='hover-navBtn,pressed-navBtn' class='DynarchCalendar-navBtn DynarchCalendar-nextMonth'><div></div></div><table class='DynarchCalendar-titleCont'",
A,"><tr><td><div dyc-type='title' dyc-btn='menu' dyc-cls='hover-title,pressed-title' class='DynarchCalendar-title'>",ca(a),"</div></td></tr></table><div class='DynarchCalendar-dayNames'>",aa(a),"</div></div><div class='DynarchCalendar-body'></div>"];a.args.bottomBar&&b.push("<div class='DynarchCalendar-bottomBar'>",da(a),"</div>");b.push("<div class='DynarchCalendar-menu' style='display: none'>",ea(a),"</div><div class='DynarchCalendar-tooltip'></div></div></td></tr></table>");return b.join("")}function ca(a){return"<div unselectable='on'>"+
B(a.date,a.args.titleFormat)+"</div>"}function ea(a){a=["<table height='100%'",A,"><tr><td><table style='margin-top: 1.5em'",A,"><tr><td colspan='3'><input dyc-btn='year' class='DynarchCalendar-menu-year' size='6' value='",a.date.getFullYear(),"' /></td></tr><tr><td><div dyc-type='menubtn' dyc-cls='hover-navBtn,pressed-navBtn' dyc-btn='today'>",r("goToday"),"</div></td></tr></table><p class='DynarchCalendar-menu-sep'>&nbsp;</p><table class='DynarchCalendar-menu-mtable'",A,">"];for(var b=r("smn"),
c=0,d=a.length,e;c<12;){a[d++]="<tr>";for(e=4;--e>0;)a[d++]="<td><div dyc-type='menubtn' dyc-cls='hover-navBtn,pressed-navBtn' dyc-btn='m"+c+"' class='DynarchCalendar-menu-month'>"+b[c++]+"</div></td>";a[d++]="</tr>"}a[d++]="</table></td></tr></table>";return a.join("")}function da(){return"<table"+A+"><tr><td><div dyc-btn='today' dyc-cls='hover-bottomBar-today,pressed-bottomBar-today' dyc-type='bottomBar-today' class='DynarchCalendar-bottomBar-today'>"+r("today")+"</div></td></tr></table>"}function oa(){var a=
fa("div"),b=this.els={},c={mousedown:q(ga,this,true),mouseup:q(ga,this,false),mouseover:q(U,this,true),mouseout:q(U,this,false),keypress:q(qa,this)};c[ra?"DOMMouseScroll":"mousewheel"]=q(sa,this);if(p){c.dblclick=c.mousedown;c.keydown=c.keypress}a.innerHTML=pa(this);N(a.firstChild,function(d){var e=ta[d.className];if(e)b[e]=d;p&&d.setAttribute("unselectable","on")});y(b.main,c);y([b.focusLink,b.yearInput],this._focusEvents={focus:q(ha,this),blur:q(ua,this)});this.moveTo(this.date,false);return b.topCont}
function ha(){this._bluringTimeout&&clearTimeout(this._bluringTimeout);this.focused=true;V(this.els.main,"DynarchCalendar-focused")}function ia(){this.focused=false;F(this.els.main,"DynarchCalendar-focused");this._menuVisible&&C(this,false);this.args.cont||this.hide()}function ua(){this._bluringTimeout=setTimeout(q(ia,this),50)}function I(a,b,c){this._bodyAnim&&this._bodyAnim.stop();var d;if(b!=0){d=new Date(a.date);d.setDate(1);switch(b){case "-Y":case -2:d.setFullYear(d.getFullYear()-1);break;case "+Y":case 2:d.setFullYear(d.getFullYear()+
1);break;case "-M":case -1:d.setMonth(d.getMonth()-1);break;case "+M":case 1:d.setMonth(d.getMonth()+1);break}}else d=new Date;return a.moveTo(d,!c)}function C(a,b){a._menuVisible=b;G(b,a.els.title,"DynarchCalendar-pressed-title");var c=a.els.menu;if(S)c.style.height=a.els.main.offsetHeight+"px";if(a.args.animation){a._menuAnim&&a._menuAnim.stop();var d=a.els.main.offsetHeight;if(S)c.style.width=a.els.topBar.offsetWidth+"px";if(b){c.firstChild.style.marginTop=-d+"px";a.args.opacity>0&&w(c,0);W(c,
true)}a._menuAnim=O({onUpdate:function(e,f){c.firstChild.style.marginTop=f(D.accel_b(e),-d,0,!b)+"px";a.args.opacity>0&&w(c,f(D.accel_b(e),0,0.85,!b))},onStop:function(){a.args.opacity>0&&w(c,0.85);c.firstChild.style.marginTop="";a._menuAnim=null;if(!b){W(c,false);a.focused&&a.focus()}}})}else{W(c,b);a.focused&&a.focus()}}function ga(a,b){b=b||window.event;var c=X(b);if(c&&!c.getAttribute("disabled")){var d=c.getAttribute("dyc-btn"),e=c.getAttribute("dyc-date"),f=this.selection,h,g={mouseover:v,mousemove:v,
mouseup:function(){var i=c.getAttribute("dyc-cls");i&&F(c,Y(i,1));clearTimeout(h);Z(document,g,true);g=null}};if(a){setTimeout(q(this.focus,this),1);(a=c.getAttribute("dyc-cls"))&&V(c,Y(a,1));if("menu"==d)this.toggleMenu();else if(c&&/^[+-][MY]$/.test(d))if(I(this,d)){var j=q(function(){if(I(this,d,true))h=setTimeout(j,40);else{g.mouseup();I(this,d)}},this);h=setTimeout(j,350);y(document,g,true)}else g.mouseup();else if("year"==d){this.els.yearInput.focus();this.els.yearInput.select()}else{if(e){if(f.type==
m.SEL_MULTIPLE)if(b.shiftKey&&this._selRangeStart)f.selectRange(this._selRangeStart,e);else{!b.ctrlKey&&!f.isSelected(e)&&f.clear(true);f.set(e,true);this._selRangeStart=e}else{f.set(e);this.moveTo(s(e),2)}c=this._getDateDiv(e);U.call(this,true,{target:c})}y(document,g,true)}p&&g&&/dbl/i.test(b.type)&&g.mouseup();if(/^(DynarchCalendar-(topBar|bottomBar|weekend|weekNumber|menu(-sep)?))?$/.test(c.className)&&!this.args.cont){g.mousemove=q(va,this);this._mouseDiff=ja(b,P(this.els.topCont));y(document,
g,true)}}else if("today"==d){!this._menuVisible&&f.type==m.SEL_SINGLE&&f.set(new Date);this.moveTo(new Date,true);C(this,false)}else if(/^m([0-9]+)/.test(d)){e=new Date(this.date);e.setDate(1);e.setMonth(RegExp.$1);e.setFullYear(this._getInputYear());this.moveTo(e,true);C(this,false)}p||v(b)}}function va(a){a=a||window.event;var b=this.els.topCont.style;a=ja(a,this._mouseDiff);b.left=a.x+"px";b.top=a.y+"px"}function X(a){for(var b=a=a.target||a.srcElement;a&&a.getAttribute&&!a.getAttribute("dyc-type");)a=
a.parentNode;return a.getAttribute&&a||b}function Y(a,b){return"DynarchCalendar-"+a.split(/,/)[b]}function U(a,b){b=b||window.event;if(b=X(b)){var c=b.getAttribute("dyc-type");if(c&&!b.getAttribute("disabled"))if(!a||!this._bodyAnim||c!="date"){var d=b.getAttribute("dyc-cls");d=d?Y(d,0):"DynarchCalendar-hover-"+c;G(a,b,d);if(c=="date"){G(a,b.parentNode.parentNode,"DynarchCalendar-hover-week");this._showTooltip(b.getAttribute("dyc-date"))}F(this._getDateDiv(this._lastHoverDate),"DynarchCalendar-hover-date");
this._lastHoverDate=null}}a||this._showTooltip()}function sa(a){a=a||window.event;var b=X(a);if(b){b=b.getAttribute("dyc-btn");var c=a.wheelDelta?a.wheelDelta/120:-a.detail/3;c=c<0?-1:c>0?1:0;if(this.args.reverseWheel)c=-c;if(/Y/i.test(b))c*=2;I(this,-c);v(a)}}function na(){this.refresh();var a=L(this.args.inputField),b=this.selection;if(a){var c=b.print(this.args.dateFormat);/input|textarea/i.test(a.tagName)?(a.value=c):(a.innerHTML=c)}this.callHooks("onSelect",this,b)}function qa(a){if(!this._menuAnim){a=
a||window.event;var b=(a.target||a.srcElement).getAttribute("dyc-btn"),c=a.keyCode,d=a.charCode||c,e=wa[c];if("year"==b&&c==13){d=new Date(this.date);d.setDate(1);d.setFullYear(this._getInputYear());this.moveTo(d,true);C(this,false);return v(a)}if(this._menuVisible){if(c==27){C(this,false);return v(a)}}else{a.ctrlKey||(e=null);if(e==null&&!a.ctrlKey)e=xa[c];if(c==36)e=0;if(e!=null){I(this,e);return v(a)}d=String.fromCharCode(d).toLowerCase();e=this.els.yearInput;b=this.selection;if(d==" "){C(this,
true);this.focus();e.focus();e.select();return v(a)}if(d>="0"&&d<="9"){C(this,true);this.focus();e.value=d;e.focus();return v(a)}var f=r("mn");e=a.shiftKey?-1:this.date.getMonth();for(var h=0,g;++h<12;){g=f[(e+h)%12].toLowerCase();if(g.indexOf(d)==0){d=new Date(this.date);d.setDate(1);d.setMonth((e+h)%12);this.moveTo(d,true);return v(a)}}if(c>=37&&c<=40){d=this._lastHoverDate;if(!d&&!b.isEmpty()){d=c<39?b.getFirstDate():b.getLastDate();if(d<this._firstDateVisible||d>this._lastDateVisible)d=null}if(d){var j=
d;d=s(d);for(e=100;e-- >0;){switch(c){case 37:d.setDate(d.getDate()-1);break;case 38:d.setDate(d.getDate()-7);break;case 39:d.setDate(d.getDate()+1);break;case 40:d.setDate(d.getDate()+7);break}if(!this.isDisabled(d))break}d=x(d);if(d<this._firstDateVisible||d>this._lastDateVisible)this.moveTo(d)}else d=c<39?this._lastDateVisible:this._firstDateVisible;F(this._getDateDiv(j),V(this._getDateDiv(d),"DynarchCalendar-hover-date"));this._lastHoverDate=d;return v(a)}if(c==13)if(this._lastHoverDate){if(b.type==
m.SEL_MULTIPLE&&(a.shiftKey||a.ctrlKey)){if(a.shiftKey&&this._selRangeStart){b.clear(true);b.selectRange(this._selRangeStart,this._lastHoverDate)}if(a.ctrlKey)b.set(this._selRangeStart=this._lastHoverDate,true)}else b.reset(this._selRangeStart=this._lastHoverDate);return v(a)}c==27&&!this.args.cont&&this.hide()}}}function ka(a,b){return a.replace(/\$\{([^:\}]+)(:[^\}]+)?\}/g,function(c,d,e){var f=b[d];if(e){c=e.substr(1).split(/\s*\|\s*/);f=(f>=c.length?c[c.length-1]:c[f]).replace(/##?/g,function(h){return h.length==
2?"#":f})}return f})}function r(a,b){a=I18N.__.data[a];if(b&&typeof a=="string")a=ka(a,b);return a}function ba(a){a=new Date(a.getFullYear(),a.getMonth(),a.getDate(),12,0,0);var b=a.getDay();a.setDate(a.getDate()-(b+6)%7+3);b=a.valueOf();a.setMonth(0);a.setDate(4);return Math.round((b-a.valueOf())/6048E5)+1}function ya(a){a=new Date(a.getFullYear(),a.getMonth(),a.getDate(),0,0,0);var b=new Date(a.getFullYear(),0,1,12,0,0);return Math.floor((a-b)/864E5)}function x(a){if(a instanceof Date)return 1E4*
a.getFullYear()+100*(a.getMonth()+1)+a.getDate();if(typeof a=="string")return parseInt(a,10);return a}function s(a){if(!(a instanceof Date)){a=parseInt(a);var b=Math.floor(a/1E4);a%=1E4;var c=Math.floor(a/100);a%=100;a=new Date(b,c-1,a,12,0,0,0)}return a}function J(a,b,c){var d=a.getFullYear(),e=a.getMonth();a=a.getDate();var f=b.getFullYear(),h=b.getMonth();b=b.getDate();return d<f?-3:d>f?3:e<h?-2:e>h?2:c?0:a<b?-1:a>b?1:0}function B(a,b){var c=a.getMonth(),d=a.getDate(),e=a.getFullYear(),f=ba(a),
h=a.getDay(),g=a.getHours(),j=g>=12,i=j?g-12:g,k=ya(a),l=a.getMinutes(),o=a.getSeconds(),t;if(i===0)i=12;t={"%a":r("sdn")[h],"%A":r("dn")[h],"%b":r("smn")[c],"%B":r("mn")[c],"%C":1+Math.floor(e/100),"%d":d<10?"0"+d:d,"%e":d,"%H":g<10?"0"+g:g,"%I":i<10?"0"+i:i,"%j":k<10?"00"+k:k<100?"0"+k:k,"%k":g,"%l":i,"%m":c<9?"0"+(1+c):1+c,"%o":1+c,"%M":l<10?"0"+l:l,"%n":"\n","%p":j?"PM":"AM","%P":j?"pm":"am","%s":Math.floor(a.getTime()/1E3),"%S":o<10?"0"+o:o,"%t":"\t","%U":f<10?"0"+f:f,"%W":f<10?"0"+f:f,"%V":f<
10?"0"+f:f,"%u":h+1,"%w":h,"%y":(""+e).substr(2,2),"%Y":e,"%%":"%"};return b.replace(/%./g,function(u){return t.hasOwnProperty(u)?t[u]:u})}function K(a){if(a){if(typeof a=="number")return s(a);if(!(a instanceof Date)){a=a.split(/-/);return new Date(parseInt(a[0],10),parseInt(a[1],10)-1,parseInt(a[2],10),12,0,0,0)}}return a}function za(a){function b(d){for(var e=d.length;--e>=0;)if(d[e].toLowerCase().indexOf(a)==0)return e}a=a.toLowerCase();var c=b(r("smn"))||b(r("mn"));c!=null&&c++;return c}function $(a,
b,c,d){d={};for(c in b)if(b.hasOwnProperty(c))d[c]=b[c];for(c in a)if(a.hasOwnProperty(c))d[c]=a[c];return d}function y(a,b,c,d){if(a instanceof Array)for(var e=a.length;--e>=0;)y(a[e],b,c,d);else if(typeof b=="object")for(e in b)b.hasOwnProperty(e)&&y(a,e,b[e],c);else if(a.addEventListener)a.addEventListener(b,c,p?true:!!d);else if(a.attachEvent)a.attachEvent("on"+b,c);else a["on"+b]=c}function Z(a,b,c,d){if(a instanceof Array)for(var e=a.length;--e>=0;)Z(a[e],b,c);else if(typeof b=="object")for(e in b)b.hasOwnProperty(e)&&
Z(a,e,b[e],c);else if(a.removeEventListener)a.removeEventListener(b,c,p?true:!!d);else if(a.detachEvent)a.detachEvent("on"+b,c);else a["on"+b]=null}function v(a){a=a||window.event;if(p){a.cancelBubble=true;a.returnValue=false}else{a.preventDefault();a.stopPropagation()}return false}function F(a,b,c){if(a){var d=a.className.replace(/^\s+|\s+$/,"").split(/\x20/),e=[],f;for(f=d.length;f>0;)d[--f]!=b&&e.push(d[f]);c&&e.push(c);a.className=e.join(" ")}return c}function V(a,b){return F(a,b,b)}function G(a,
b,c){if(b instanceof Array)for(var d=b.length;--d>=0;)G(a,b[d],c);else F(b,c,a?c:null);return a}function fa(a,b,c){var d=null;d=document.createElementNS?document.createElementNS("http://www.w3.org/1999/xhtml",a):document.createElement(a);if(b)d.className=b;c&&c.appendChild(d);return d}function Q(a,b){if(b==null)b=0;var c,d;try{c=Array.prototype.slice.call(a,b)}catch(e){c=new Array(a.length-b);b=b;for(d=0;b<a.length;++b,++d)c[d]=a[b]}return c}function q(a,b){var c=Q(arguments,2);return b==undefined?
function(){return a.apply(this,c.concat(Q(arguments)))}:function(){return a.apply(b,c.concat(Q(arguments)))}}function N(a,b){if(!b(a))for(a=a.firstChild;a;a=a.nextSibling)a.nodeType==1&&N(a,b)}function O(a,b,c){function d(g,j,i,k){return k?i+g*(j-i):j+g*(i-j)}function e(){b&&f();c=0;b=setInterval(h,1E3/a.fps)}function f(){if(b){clearInterval(b);b=null}a.onStop(c/a.len,d)}function h(){var g=a.len;a.onUpdate(c/g,d);c==g&&f();++c}a=$(a,{fps:50,len:15,onUpdate:E,onStop:E});if(p)a.len=Math.round(a.len/
2);e();return{start:e,stop:f,update:h,args:a,map:d}}function w(a,b){if(b==="")p?(a.style.filter=""):(a.style.opacity="");else if(b!=null)p?(a.style.filter="alpha(opacity="+b*100+")"):(a.style.opacity=b);else if(p){if(/alpha\(opacity=([0-9.])+\)/.test(a.style.opacity))b=parseFloat(RegExp.$1)/100}else b=parseFloat(a.style.opacity);return b}function W(a,b){a=a.style;if(b!=null)a.display=b?"":"none";return a.display!="none"}function ja(a,b){var c=p?a.clientX+document.body.scrollLeft:a.pageX;a=p?a.clientY+
document.body.scrollTop:a.pageY;if(b){c-=b.x;a-=b.y}return{x:c,y:a}}function P(a){var b=0,c=0,d=/^div$/i.test(a.tagName);if(d&&a.scrollLeft)b=a.scrollLeft;if(d&&a.scrollTop)c=a.scrollTop;b={x:a.offsetLeft-b,y:a.offsetTop-c};if(a.offsetParent){a=P(a.offsetParent);b.x+=a.x;b.y+=a.y}return b}function Aa(){var a=document.documentElement,b=document.body;return{x:a.scrollLeft||b.scrollLeft,y:a.scrollTop||b.scrollTop,w:a.clientWidth||window.innerWidth||b.clientWidth,h:a.clientHeight||window.innerHeight||
b.clientHeight}}function L(a){if(typeof a=="string")a=document.getElementById(a);return a}var n=navigator.userAgent,la=/opera/i.test(n),Ba=/Konqueror|Safari|KHTML/i.test(n),p=/msie/i.test(n)&&!la&&!/mac_powerpc/i.test(n),S=p&&/msie 6/i.test(n),ra=/gecko/i.test(n)&&!Ba&&!la&&!p;n=m.prototype;m.SEL_SINGLE=1;m.SEL_MULTIPLE=2;m.SEL_WEEK=3;m.dateToInt=x;m.intToDate=s;m.printDate=B;m.formatString=ka;m.i18n=r;I18N=m.I18N={};m.LANG=function(a,b,c){I18N.__=I18N[a]={name:b,data:c}};m.setup=function(a){return new m(a)};
n.moveTo=function(a,b){a=K(a);var c=J(a,this.date,true),d,e=this.args,f=e.min&&J(a,e.min),h=e.max&&J(a,e.max);e.animation||(b=false);G(f!=null&&f<=1,[this.els.navPrevMonth,this.els.navPrevYear],"DynarchCalendar-navDisabled");G(h!=null&&h>=-1,[this.els.navNextMonth,this.els.navNextYear],"DynarchCalendar-navDisabled");if(f<-1){a=e.min;d=1;c=0}if(h>1){a=e.max;d=2;c=0}this.date=a;this.refresh(!!b);this.callHooks("onChange",this,a,b);if(b&&!(c==0&&b==2)){this._bodyAnim&&this._bodyAnim.stop();var g=this.els.body,
j=fa("div","DynarchCalendar-animBody-"+Ca[c],g);b=g.firstChild;w(b);var i=d?D.brakes:c==0?D.shake:D.accel_ab2,k=c*c>4;e=k?b.offsetTop:b.offsetLeft;var l=j.style,o=k?g.offsetHeight:g.offsetWidth;if(c<0)o+=e;else if(c>0)o=e-o;else{o=Math.round(o/7);if(d==2)o=-o}if(!d&&c!=0){var t=j.cloneNode(true),u=t.style,M=2*o;t.appendChild(b.cloneNode(true));u[k?"marginTop":"marginLeft"]=o+"px";g.appendChild(t)}b.style.visibility="hidden";j.innerHTML=T(this);this._bodyAnim=O({onUpdate:q(function(z,R){var H=i(z);
if(t)var ma=R(H,o,M)+"px";if(d)l[k?"marginTop":"marginLeft"]=R(H,o,0)+"px";else{if(k||c==0){l.marginTop=R(c==0?i(z*z):H,0,o)+"px";if(c!=0)u.marginTop=ma}if(!k||c==0){l.marginLeft=R(H,0,o)+"px";if(c!=0)u.marginLeft=ma}}if(this.args.opacity>2&&t){w(t,1-H);w(j,H)}},this),onStop:q(function(){g.innerHTML=T(this,a);this._bodyAnim=null},this)})}this._lastHoverDate=null;return f>=-1&&h<=1};n.isDisabled=function(a){var b=this.args;return b.min&&J(a,b.min)<0||b.max&&J(a,b.max)>0||b.disabled(a)};n.toggleMenu=
function(){C(this,!this._menuVisible)};n.refresh=function(a){var b=this.els;if(!a)b.body.innerHTML=T(this);b.title.innerHTML=ca(this);b.yearInput.value=this.date.getFullYear()};n.redraw=function(){var a=this.els;this.refresh();a.dayNames.innerHTML=aa(this);a.menu.innerHTML=ea(this);if(a.bottomBar)a.bottomBar.innerHTML=da(this);N(a.menu,q(function(b){if(b.className=="DynarchCalendar-menu-year"){y(b,this._focusEvents);a.yearInput=b}},this))};n.setLanguage=function(a){if(a=m.setLanguage(a)){this.fdow=
a.data.fdow;this.redraw()}};m.setLanguage=function(a){if(a=I18N[a])I18N.__=a;return a};n.focus=function(){try{this.els[this._menuVisible?"yearInput":"focusLink"].focus()}catch(a){}ha.call(this)};n.blur=function(){this.els.focusLink.blur();this.els.yearInput.blur();ia.call(this)};n.showAt=function(a,b,c){this._showAnim&&this._showAnim.stop();c=c&&this.args.animation;var d=this.els.topCont,e=this,f=this.els.body.firstChild,h=f.offsetHeight,g=d.style;g.position="absolute";g.left=a+"px";g.top=b+"px";
g.zIndex=1E4;g.display="";if(c){f.style.marginTop=-h+"px";this.args.opacity>1&&w(d,0);this._showAnim=O({onUpdate:function(j,i){f.style.marginTop=-i(D.accel_b(j),h,0)+"px";e.args.opacity>1&&w(d,j)},onStop:function(){e.args.opacity>1&&w(d,"");e._showAnim=null}})}};n.hide=function(){var a=this.els.topCont,b=this,c=this.els.body.firstChild,d=c.offsetHeight,e=P(a).y;if(this.args.animation){this._showAnim&&this._showAnim.stop();this._showAnim=O({onUpdate:function(f,h){b.args.opacity>1&&w(a,1-f);c.style.marginTop=
-h(D.accel_b(f),0,d)+"px";a.style.top=h(D.accel_ab(f),e,e-10)+"px"},onStop:function(){a.style.display="none";c.style.marginTop="";b.args.opacity>1&&w(a,"");b._showAnim=null}})}else a.style.display="none"};n.popup=function(a,b){function c(i){var k={x:j.x,y:j.y};if(!i)return k;if(/B/.test(i))k.y+=a.offsetHeight;if(/b/.test(i))k.y+=a.offsetHeight-h.y;if(/T/.test(i))k.y-=h.y;if(/l/.test(i))k.x-=h.x-a.offsetWidth;if(/L/.test(i))k.x-=h.x;if(/R/.test(i))k.x+=a.offsetWidth;if(/c/i.test(i))k.x+=(a.offsetWidth-
h.x)/2;if(/m/i.test(i))k.y+=(a.offsetHeight-h.y)/2;return k}a=L(a);if(!b)b=this.args.align;b=b.split(/\x2f/);var d=P(a),e=this.els.topCont,f=e.style,h,g=Aa();f.visibility="hidden";f.display="";this.showAt(0,0);document.body.appendChild(e);h={x:e.offsetWidth,y:e.offsetHeight};var j=d;j=c(b[0]);if(j.y<g.y){j.y=d.y;j=c(b[1])}if(j.x+h.x>g.x+g.w){j.x=d.x;j=c(b[2])}if(j.y+h.y>g.y+g.h){j.y=d.y;j=c(b[3])}if(j.x<g.x){j.x=d.x;j=c(b[4])}this.showAt(j.x,j.y,true);f.visibility="";this.focus()};n.callHooks=function(a){for(var b=
Q(arguments,1),c=this.handlers[a],d=0;d<c.length;++d)c[d].apply(this,b)};n.addEventListener=function(a,b){this.handlers[a].push(b)};n.removeEventListener=function(a,b){a=this.handlers[a];for(var c=a.length;--c>=0;)a[c]===b&&a.splice(c,1)};n._getInputYear=function(){var a=parseInt(this.els.yearInput.value,10);if(isNaN(a))a=this.date.getFullYear();return a};n._showTooltip=function(a){var b="",c,d=this.els.tooltip;if(a){a=s(a);if((c=this.args.dateInfo(a))&&c.tooltip)b="<div class='DynarchCalendar-tooltipCont'>"+
B(a,c.tooltip)+"</div>"}d.innerHTML=b};var A=" align='center' cellspacing='0' cellpadding='0'",ta={"DynarchCalendar-topCont":"topCont","DynarchCalendar-focusLink":"focusLink",DynarchCalendar:"main","DynarchCalendar-topBar":"topBar","DynarchCalendar-title":"title","DynarchCalendar-dayNames":"dayNames","DynarchCalendar-body":"body","DynarchCalendar-menu":"menu","DynarchCalendar-menu-year":"yearInput","DynarchCalendar-bottomBar":"bottomBar","DynarchCalendar-tooltip":"tooltip","DynarchCalendar-navBtn DynarchCalendar-prevYear":"navPrevYear",
"DynarchCalendar-navBtn DynarchCalendar-nextYear":"navNextYear","DynarchCalendar-navBtn DynarchCalendar-prevMonth":"navPrevMonth","DynarchCalendar-navBtn DynarchCalendar-nextMonth":"navNextMonth"},Ca={"-3":"backYear","-2":"back","0":"now","2":"fwd","3":"fwdYear"},wa={37:-1,38:-2,39:1,40:2},xa={33:-1,34:1};n._getDateDiv=function(a){var b=null;if(a)try{N(this.els.body,function(d){if(d.getAttribute("dyc-date")==a)throw b=d;})}catch(c){}return b};(m.Selection=function(a,b,c){this.type=b;this.sel=a instanceof
Array?a:[a];this.onChange=c}).prototype={get:function(){return this.type==m.SEL_SINGLE?this.sel[0]:this.sel},isEmpty:function(){return this.sel.length==0},set:function(a,b){var c=this.type==m.SEL_SINGLE;if(a instanceof Array){this.sel=a;this.normalize();this.onChange(this)}else{a=x(a);if(c||!this.isSelected(a)){c?(this.sel=[a]):this.sel.splice(this.findInsertPos(a),0,a);this.normalize();this.onChange(this)}else b&&this.unselect(a)}},reset:function(){this.sel=[];this.set.apply(this,arguments)},countDays:function(){for(var a=
0,b=this.sel,c=b.length,d,e;--c>=0;){d=b[c];if(d instanceof Array){e=s(d[0]);d=s(d[1]);a+=Math.round(Math.abs(d.getTime()-e.getTime())/864E5)}++a}return a},unselect:function(a){a=x(a);for(var b=false,c=this.sel,d=c.length,e;--d>=0;){e=c[d];if(e instanceof Array){if(a>=e[0]&&a<=e[1]){b=s(a);var f=b.getDate();if(a==e[0]){b.setDate(f+1);e[0]=x(b)}else{if(a==e[1])b.setDate(f-1);else{var h=new Date(b);h.setDate(f+1);b.setDate(f-1);c.splice(d+1,0,[x(h),e[1]])}e[1]=x(b)}b=true}}else if(a==e){c.splice(d,
1);b=true}}if(b){this.normalize();this.onChange(this)}},normalize:function(){for(var a=this.sel=this.sel.sort(function(h,g){if(h instanceof Array)h=h[0];if(g instanceof Array)g=g[0];return h-g}),b=a.length,c,d;--b>=0;){c=a[b];if(c instanceof Array){if(c[0]>c[1]){a.splice(b,1);continue}if(c[0]==c[1])c=a[b]=c[0]}if(d){var e=d,f=c instanceof Array?c[1]:c;f=s(f);f.setDate(f.getDate()+1);f=x(f);if(f>=e){e=a[b+1];if(c instanceof Array&&e instanceof Array){c[1]=e[1];a.splice(b+1,1)}else if(c instanceof Array){c[1]=
d;a.splice(b+1,1)}else if(e instanceof Array){e[0]=c;a.splice(b,1)}else{a[b]=[c,e];a.splice(b+1,1)}}}d=c instanceof Array?c[0]:c}},findInsertPos:function(a){for(var b=this.sel,c=b.length,d;--c>=0;){d=b[c];if(d instanceof Array)d=d[0];if(d<=a)break}return c+1},clear:function(a){this.sel=[];a||this.onChange(this)},selectRange:function(a,b){a=x(a);b=x(b);if(a>b){var c=a;a=b;b=c}this.sel.push([a,b]);this.normalize();this.onChange(this)},isSelected:function(a){for(var b=this.sel.length,c;--b>=0;){c=this.sel[b];
if(c instanceof Array&&a>=c[0]&&a<=c[1]||a==c)return true}return false},getFirstDate:function(){var a=this.sel[0];if(a&&a instanceof Array)a=a[0];return a},getLastDate:function(){if(this.sel.length>0){var a=this.sel[this.sel.length-1];if(a&&a instanceof Array)a=a[1];return a}},print:function(a,b){var c=[],d=0,e;for(b||(b=" -> ");d<this.sel.length;){e=this.sel[d++];e instanceof Array?c.push(B(s(e[0]),a)+b+B(s(e[1]),a)):c.push(B(s(e),a))}return c},getDates:function(a){for(var b=[],c=0,d,e;c<this.sel.length;){e=
this.sel[c++];if(e instanceof Array){d=s(e[0]);for(e=e[1];x(d)<e;){b.push(a?B(d,a):d);d.setDate(d.getDate()+1)}}else d=s(e);b.push(a?B(d,a):d)}return b}};m.parseDate=function(a,b,c){if(!/\S/.test(a))return"";a=a.replace(/^\s+/,"").replace(/\s+$/,"");c=c||new Date;var d=null,e=null,f=null,h=null,g=null,j=null,i=a.match(/([0-9]{1,2}):([0-9]{1,2})(:[0-9]{1,2})?\s*(am|pm)?/i);if(i){h=parseInt(i[1],10);g=parseInt(i[2],10);j=i[3]?parseInt(i[3].substr(1),10):0;a=a.substring(0,i.index)+a.substr(i.index+i[0].length);
if(i[4])if(i[4].toLowerCase()=="pm"&&h<12)h+=12;else if(i[4].toLowerCase()=="am"&&h>=12)h-=12}a=a.split(/\W+/);i=[];for(var k=0;k<a.length;++k){var l=a[k];if(/^[0-9]{4}$/.test(l)){d=parseInt(l,10);if(!e&&!f)b=true}else if(/^[0-9]{1,2}$/.test(l)){l=parseInt(l,10);if(l>=60)d=l;else if(l>=0&&l<=12)i.push(l);else if(l>=1&&l<=31)f=l}else e=za(l)}if(i.length>=2)if(b){e||(e=i.shift());f||(f=i.shift())}else{f||(f=i.shift());e||(e=i.shift())}else if(i.length==1)if(f)e||(e=i.shift());else f=i.shift();d||(d=
i.length>0?i.shift():c.getFullYear());if(d<30)d+=2E3;else if(d<99)d+=1900;e||(e=c.getMonth()+1);return d&&e&&f?new Date(d,e-1,f,h,g,j):null};var D={elastic_b:function(a){return 1-Math.cos(-a*5.5*Math.PI)/Math.pow(2,7*a)},magnetic:function(a){return 1-Math.cos(a*a*a*10.5*Math.PI)/Math.exp(4*a)},accel_b:function(a){a=1-a;return 1-a*a*a*a},accel_a:function(a){return a*a*a},accel_ab:function(a){a=1-a;return 1-Math.sin(a*a*Math.PI/2)},accel_ab2:function(a){return(a/=0.5)<1?0.5*a*a:-0.5*(--a*(a-2)-1)},
brakes:function(a){a=1-a;return 1-Math.sin(a*a*Math.PI)},shake:function(a){return a<0.5?-Math.cos(a*11*Math.PI)*a*a:(a=1-a,Math.cos(a*11*Math.PI)*a*a)}},E=new Function;return m}();
