Date.$VERSION=1.02;Date.LZ=function(a){return(a<0||a>9?"":"0")+a};Date.monthNames=new Array("January","February","March","April","May","June","July","August","September","October","November","December");Date.monthAbbreviations=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");Date.dayNames=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");Date.dayAbbreviations=new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat");Date.preferAmericanFormat=true;if(!Date.prototype.getFullYear){Date.prototype.getFullYear=function(){var a=this.getYear();return(a<1900?a+1900:a)}}Date.parseString=function(H,A){if(typeof(A)=="undefined"||A==null||A==""){var o=new Array("y-M-d","MMM d, y","MMM d,y","y-MMM-d","d-MMM-y","MMM d","MMM-d","d-MMM");var b=new Array("M/d/y","M-d-y","M.d.y","M/d","M-d");var n=new Array("d/M/y","d-M-y","d.M.y","d/M","d-M");var e=new Array(o,Date.preferAmericanFormat?b:n,Date.preferAmericanFormat?n:b);for(var w=0;w<e.length;w++){var u=e[w];for(var v=0;v<u.length;v++){var B=Date.parseString(H,u[v]);if(B!=null){return B}}}return null}this.isInteger=function(d){for(var c=0;c<d.length;c++){if("1234567890".indexOf(d.charAt(c))==-1){return false}}return true};this.getInt=function(I,l,y,j){for(var c=j;c>=y;c--){var d=I.substring(l,l+c);if(d.length<y){return null}if(this.isInteger(d)){return d}}return null};H=H+"";A=A+"";var G=0;var r=0;var D="";var g="";var F="";var k,h;var m=new Date().getFullYear();var E=1;var C=1;var a=0;var z=0;var t=0;var q="";while(r<A.length){D=A.charAt(r);g="";while((A.charAt(r)==D)&&(r<A.length)){g+=A.charAt(r++)}if(g=="yyyy"||g=="yy"||g=="y"){if(g=="yyyy"){k=4;h=4}if(g=="yy"){k=2;h=2}if(g=="y"){k=2;h=4}m=this.getInt(H,G,k,h);if(m==null){return null}G+=m.length;if(m.length==2){if(m>70){m=1900+(m-0)}else{m=2000+(m-0)}}}else{if(g=="MMM"||g=="NNN"){E=0;var p=(g=="MMM"?(Date.monthNames.concat(Date.monthAbbreviations)):Date.monthAbbreviations);for(var w=0;w<p.length;w++){var f=p[w];if(H.substring(G,G+f.length).toLowerCase()==f.toLowerCase()){E=(w%12)+1;G+=f.length;break}}if((E<1)||(E>12)){return null}}else{if(g=="EE"||g=="E"){var p=(g=="EE"?Date.dayNames:Date.dayAbbreviations);for(var w=0;w<p.length;w++){var s=p[w];if(H.substring(G,G+s.length).toLowerCase()==s.toLowerCase()){G+=s.length;break}}}else{if(g=="MM"||g=="M"){E=this.getInt(H,G,g.length,2);if(E==null||(E<1)||(E>12)){return null}G+=E.length}else{if(g=="dd"||g=="d"){C=this.getInt(H,G,g.length,2);if(C==null||(C<1)||(C>31)){return null}G+=C.length}else{if(g=="hh"||g=="h"){a=this.getInt(H,G,g.length,2);if(a==null||(a<1)||(a>12)){return null}G+=a.length}else{if(g=="HH"||g=="H"){a=this.getInt(H,G,g.length,2);if(a==null||(a<0)||(a>23)){return null}G+=a.length}else{if(g=="KK"||g=="K"){a=this.getInt(H,G,g.length,2);if(a==null||(a<0)||(a>11)){return null}G+=a.length;a++}else{if(g=="kk"||g=="k"){a=this.getInt(H,G,g.length,2);if(a==null||(a<1)||(a>24)){return null}G+=a.length;a--}else{if(g=="mm"||g=="m"){z=this.getInt(H,G,g.length,2);if(z==null||(z<0)||(z>59)){return null}G+=z.length}else{if(g=="ss"||g=="s"){t=this.getInt(H,G,g.length,2);if(t==null||(t<0)||(t>59)){return null}G+=t.length}else{if(g=="a"){if(H.substring(G,G+2).toLowerCase()=="am"){q="AM"}else{if(H.substring(G,G+2).toLowerCase()=="pm"){q="PM"}else{return null}}G+=2}else{if(H.substring(G,G+g.length)!=g){return null}else{G+=g.length}}}}}}}}}}}}}}if(G!=H.length){return null}if(E==2){if(((m%4==0)&&(m%100!=0))||(m%400==0)){if(C>29){return null}}else{if(C>28){return null}}}if((E==4)||(E==6)||(E==9)||(E==11)){if(C>30){return null}}if(a<12&&q=="PM"){a=a-0+12}else{if(a>11&&q=="AM"){a-=12}}return new Date(m,E-1,C,a,z,t)};Date.isValid=function(b,a){return(Date.parseString(b,a)!=null)};Date.prototype.isBefore=function(a){if(a==null){return false}return(this.getTime()<a.getTime())};Date.prototype.isAfter=function(a){if(a==null){return false}return(this.getTime()>a.getTime())};Date.prototype.equals=function(a){if(a==null){return false}return(this.getTime()==a.getTime())};Date.prototype.equalsIgnoreTime=function(c){if(c==null){return false}var b=new Date(this.getTime()).clearTime();var a=new Date(c.getTime()).clearTime();return(b.getTime()==a.getTime())};Date.prototype.format=function(D){D=D+"";var l="";var v=0;var G="";var f="";var j=this.getYear()+"";var g=this.getMonth()+1;var F=this.getDate();var o=this.getDay();var n=this.getHours();var x=this.getMinutes();var q=this.getSeconds();var t,u,b,r,I,e,C,B,z,p,L,n,J,i,a,A;var w=new Object();if(j.length<4){j=""+(+j+1900)}w.y=""+j;w.yyyy=j;w.yy=j.substring(2,4);w.M=g;w.MM=Date.LZ(g);w.MMM=Date.monthNames[g-1];w.NNN=Date.monthAbbreviations[g-1];w.d=F;w.dd=Date.LZ(F);w.E=Date.dayAbbreviations[o];w.EE=Date.dayNames[o];w.H=n;w.HH=Date.LZ(n);if(n==0){w.h=12}else{if(n>12){w.h=n-12}else{w.h=n}}w.hh=Date.LZ(w.h);w.K=w.h-1;w.k=w.H+1;w.KK=Date.LZ(w.K);w.kk=Date.LZ(w.k);if(n>11){w.a="PM"}else{w.a="AM"}w.m=x;w.mm=Date.LZ(x);w.s=q;w.ss=Date.LZ(q);while(v<D.length){G=D.charAt(v);f="";while((D.charAt(v)==G)&&(v<D.length)){f+=D.charAt(v++)}if(typeof(w[f])!="undefined"){l=l+w[f]}else{l=l+f}}return l};Date.prototype.getDayName=function(){return Date.dayNames[this.getDay()]};Date.prototype.getDayAbbreviation=function(){return Date.dayAbbreviations[this.getDay()]};Date.prototype.getMonthName=function(){return Date.monthNames[this.getMonth()]};Date.prototype.getMonthAbbreviation=function(){return Date.monthAbbreviations[this.getMonth()]};Date.prototype.clearTime=function(){this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);return this};Date.prototype.add=function(a,c){if(typeof(a)=="undefined"||a==null||typeof(c)=="undefined"||c==null){return this}c=+c;if(a=="y"){this.setFullYear(this.getFullYear()+c)}else{if(a=="M"){this.setMonth(this.getMonth()+c)}else{if(a=="d"){this.setDate(this.getDate()+c)}else{if(a=="w"){var b=(c>0)?1:-1;while(c!=0){this.add("d",b);while(this.getDay()==0||this.getDay()==6){this.add("d",b)}c-=b}}else{if(a=="h"){this.setHours(this.getHours()+c)}else{if(a=="m"){this.setMinutes(this.getMinutes()+c)}else{if(a=="s"){this.setSeconds(this.getSeconds()+c)}}}}}}}return this};
