Date.CultureInfo={name:"en-US",englishName:"English (United States)",nativeName:"English (United States)",dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],abbreviatedDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],shortestDayNames:["Su","Mo","Tu","We","Th","Fr","Sa"],firstLetterDayNames:["S","M","T","W","T","F","S"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],abbreviatedMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],amDesignator:"AM",pmDesignator:"PM",firstDayOfWeek:0,twoDigitYearMax:2029,dateElementOrder:"mdy",formatPatterns:{shortDate:"M/d/yyyy",longDate:"dddd, MMMM dd, yyyy",shortTime:"h:mm tt",longTime:"h:mm:ss tt",fullDateTime:"dddd, MMMM dd, yyyy h:mm:ss tt",sortableDateTime:"yyyy-MM-ddTHH:mm:ss",universalSortableDateTime:"yyyy-MM-dd HH:mm:ssZ",rfc1123:"ddd, dd MMM yyyy HH:mm:ss GMT",monthDay:"MMMM dd",yearMonth:"MMMM, yyyy"},regexPatterns:{jan:/^jan(uary)?/i,feb:/^feb(ruary)?/i,mar:/^mar(ch)?/i,apr:/^apr(il)?/i,may:/^may/i,jun:/^jun(e)?/i,jul:/^jul(y)?/i,aug:/^aug(ust)?/i,sep:/^sep(t(ember)?)?/i,oct:/^oct(ober)?/i,nov:/^nov(ember)?/i,dec:/^dec(ember)?/i,sun:/^su(n(day)?)?/i,mon:/^mo(n(day)?)?/i,tue:/^tu(e(s(day)?)?)?/i,wed:/^we(d(nesday)?)?/i,thu:/^th(u(r(s(day)?)?)?)?/i,fri:/^fr(i(day)?)?/i,sat:/^sa(t(urday)?)?/i,future:/^next/i,past:/^last|past|prev(ious)?/i,add:/^(\+|aft(er)?|from|hence)/i,subtract:/^(\-|bef(ore)?|ago)/i,yesterday:/^yes(terday)?/i,today:/^t(od(ay)?)?/i,tomorrow:/^tom(orrow)?/i,now:/^n(ow)?/i,millisecond:/^ms|milli(second)?s?/i,second:/^sec(ond)?s?/i,minute:/^mn|min(ute)?s?/i,hour:/^h(our)?s?/i,week:/^w(eek)?s?/i,month:/^m(onth)?s?/i,day:/^d(ay)?s?/i,year:/^y(ear)?s?/i,shortMeridian:/^(a|p)/i,longMeridian:/^(a\.?m?\.?|p\.?m?\.?)/i,timezone:/^((e(s|d)t|c(s|d)t|m(s|d)t|p(s|d)t)|((gmt)?\s*(\+|\-)\s*\d\d\d\d?)|gmt|utc)/i,ordinalSuffix:/^\s*(st|nd|rd|th)/i,timeContext:/^\s*(\:|a(?!u|p)|p)/i},timezones:{UTC:"-000",GMT:"-000",EST:"-0500",EDT:"-0400",CST:"-0600",CDT:"-0500",MST:"-0700",MDT:"-0600",PST:"-0800",PDT:"-0700"}};(function(){var b=Date,a=b.prototype,c=b.CultureInfo;a.clearTime=function(){this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);return this};a.setTimeToNow=function(){var d=new Date();this.setHours(d.getHours());this.setMinutes(d.getMinutes());this.setSeconds(d.getSeconds());this.setMilliseconds(d.getMilliseconds());return this};b.today=function(){return new Date().clearTime()};b.compare=function(e,d){if(isNaN(e)||isNaN(d)){throw new Error(e+" - "+d)}else{if(e instanceof Date&&d instanceof Date){return(e<d)?-1:(e>d)?1:0}else{throw new TypeError(e+" - "+d)}}};b.equals=function(e,d){return(e.compareTo(d)===0)};b.getMonthNumberFromName=function(e){var h=c.monthNames,d=c.abbreviatedMonthNames,f=e.toLowerCase();for(var g=0;g<h.length;g++){if(h[g].toLowerCase()==f||d[g].toLowerCase()==f){return g}}return -1};b.getDayNumberFromName=function(e){var j=c.dayNames,d=c.abbreviatedDayNames,f=c.shortestDayNames,g=e.toLowerCase();for(var h=0;h<j.length;h++){if(j[h].toLowerCase()==g||d[h].toLowerCase()==g||f[h].toLowerCase()==g){return h}}return -1};b.isLeapYear=function(d){return(((d%4===0)&&(d%100!==0))||(d%400===0))};b.getDaysInMonth=function(e,d){return[31,(b.isLeapYear(e)?29:28),31,30,31,30,31,31,30,31,30,31][d]};b.getTimezoneOffset=function(d){return c.timezones[d.toUpperCase()]};b.getTimezoneAbbreviation=function(f){var d=c.timezones,g;for(var e=0;e<d.length;e++){if(d[e]===f){return d[e]}}return null};a.clone=function(){return new Date(this.getTime())};a.compareTo=function(d){return Date.compare(this,d)};a.equals=function(d){return Date.equals(this,d)};a.between=function(e,f){var d=this.getTime();return d>=e.getTime()&&d<=f.getTime()};a.addMilliseconds=function(d){this.setMilliseconds(this.getMilliseconds()+d);return this};a.addSeconds=function(d){return this.addMilliseconds(d*1000)};a.addMinutes=function(d){return this.addMilliseconds(d*60000)};a.addHours=function(d){return this.addMilliseconds(d*3600000)};a.addDays=function(d){this.setDate(this.getDate()+d);return this};a.addWeeks=function(d){return this.addDays(d*7)};a.addMonths=function(d){var e=this.getDate();this.setDate(1);this.setMonth(this.getMonth()+d);this.setDate(Math.min(e,b.getDaysInMonth(this.getFullYear(),this.getMonth())));return this};a.addYears=function(d){return this.addMonths(d*12)};a.add=function(e){if(typeof e=="number"){this._orient=e;return this}var d=e;if(d.millisecond||d.milliseconds){this.addMilliseconds(d.millisecond||d.milliseconds)}if(d.second||d.seconds){this.addSeconds(d.second||d.seconds)}if(d.minute||d.minutes){this.addMinutes(d.minute||d.minutes)}if(d.hour||d.hours){this.addHours(d.hour||d.hours)}if(d.week||d.weeks){this.addWeeks(d.week||d.weeks)}if(d.month||d.months){this.addMonths(d.month||d.months)}if(d.year||d.years){this.addYears(d.year||d.years)}if(d.day||d.days){this.addDays(d.day||d.days)}return this};b._validate=function(d,e,g,f){if(typeof d=="undefined"){return false}else{if(typeof d!="number"){throw new TypeError(d+" is not a Number.")}else{if(d<e||d>g){throw new RangeError(d+" is not a valid value for "+f+".")}}}return true};b.validateMillisecond=function(d){return b._validate(d,0,999,"milliseconds")};b.validateSecond=function(d){return b._validate(d,0,59,"seconds")};b.validateMinute=function(d){return b._validate(d,0,59,"minutes")};b.validateHour=function(d){return b._validate(d,0,23,"hours")};b.validateDay=function(d,f,e){return b._validate(d,1,b.getDaysInMonth(f,e),"days")};b.validateMonth=function(d){return b._validate(d,0,11,"months")};b.validateYear=function(d){return b._validate(d,0,9999,"years")};a.set=function(d){if(b.validateMillisecond(d.millisecond)){this.addMilliseconds(d.millisecond-this.getMilliseconds())}if(b.validateSecond(d.second)){this.addSeconds(d.second-this.getSeconds())}if(b.validateMinute(d.minute)){this.addMinutes(d.minute-this.getMinutes())}if(b.validateHour(d.hour)){this.addHours(d.hour-this.getHours())}if(b.validateMonth(d.month)){this.addMonths(d.month-this.getMonth())}if(b.validateYear(d.year)){this.addYears(d.year-this.getFullYear())}if(b.validateDay(d.day,this.getFullYear(),this.getMonth())){this.addDays(d.day-this.getDate())}if(d.timezone){this.setTimezone(d.timezone)}if(d.timezoneOffset){this.setTimezoneOffset(d.timezoneOffset)}return this};a.moveToFirstDayOfMonth=function(){return this.set({day:1})};a.moveToLastDayOfMonth=function(){return this.set({day:b.getDaysInMonth(this.getFullYear(),this.getMonth())})};a.moveToNthOccurrence=function(d,e){var f=0;if(e){if(e>0){f=e-1}else{if(e==-1){return this.moveToLastDayOfMonth().moveToDayOfWeek(d,-1)}}}return this.moveToFirstDayOfMonth().addDays(-1).moveToDayOfWeek(d,+1).addWeeks(f)};a.moveToDayOfWeek=function(d,e){var f=(d-this.getDay()+7*(e||+1))%7;return this.addDays((f===0)?f+=7*(e||+1):f)};a.moveToMonth=function(e,d){var f=(e-this.getMonth()+12*(d||+1))%12;return this.addMonths((f===0)?f+=12*(d||+1):f)};a.getDayOfYear=function(){return Math.floor((this-new Date(this.getFullYear(),0,1))/86400000)};a.getWeekOfYear=function(l){var g=this.getFullYear(),e=this.getMonth(),i=this.getDate();var h=l||c.firstDayOfWeek;var n=7+1-new Date(g,0,1).getDay();if(n==8){n=1}var k=((b.UTC(g,e,i,0,0,0)-b.UTC(g,0,1,0,0,0))/86400000)+1;var j=Math.floor((k-n+7)/7);if(j===h){g--;var f=7+1-new Date(g,0,1).getDay();if(f==2||f==8){j=53}else{j=52}}return j};a.getTimezone=function(){return b.getTimezoneAbbreviation(this.getUTCOffset())};a.setTimezoneOffset=function(e){var f=this.getTimezoneOffset(),d=Number(e)*-6/10;return this.addMinutes(d-f)};a.setTimezone=function(d){return this.setTimezoneOffset(b.getTimezoneOffset(d))};a.hasDaylightSavingTime=function(){return(Date.today().set({month:0,day:1}).getTimezoneOffset()!==Date.today().set({month:6,day:1}).getTimezoneOffset())};a.isDaylightSavingTime=function(){return(this.hasDaylightSavingTime()&&new Date().getTimezoneOffset()===Date.today().set({month:6,day:1}).getTimezoneOffset())};a.getUTCOffset=function(){var e=this.getTimezoneOffset()*-10/6,d;if(e<0){d=(e-10000).toString();return d[0]+d.substr(2)}else{d=(e+10000).toString();return"+"+d.substr(1)}};a.getElapsed=function(d){return(d||new Date())-this};a._toString=a.toString;a.toString=function(e){var d=this;var f=function f(g){return g<10?"0"+g:g};return e?e.replace(/dd?d?d?|MM?M?M?|yy?y?y?|hh?|HH?|mm?|ss?|tt?|zz?z?/g,function(g){switch(g){case"hh":return f(d.getHours()<13?(d.getHours()===0?12:d.getHours()):(d.getHours()-12));case"h":return d.getHours()<13?(d.getHours()===0?12:d.getHours()):(d.getHours()-12);case"HH":return f(d.getHours());case"H":return d.getHours();case"mm":return f(d.getMinutes());case"m":return d.getMinutes();case"ss":return f(d.getSeconds());case"s":return d.getSeconds();case"yyyy":var h="000"+d.getFullYear();return h.substring(h.length-4);case"yy":return d.toString("yyyy").substring(2);case"dddd":return c.dayNames[d.getDay()];case"ddd":return c.abbreviatedDayNames[d.getDay()];case"dd":return f(d.getDate());case"d":return d.getDate().toString();case"MMMM":return c.monthNames[d.getMonth()];case"MMM":return c.abbreviatedMonthNames[d.getMonth()];case"MM":return f((d.getMonth()+1));case"M":return d.getMonth()+1;case"t":return d.getHours()<12?c.amDesignator.substring(0,1):c.pmDesignator.substring(0,1);case"tt":return d.getHours()<12?c.amDesignator:c.pmDesignator}}):this._toString()}}());(function(){var y=Date,f=y.prototype,q=y.CultureInfo,u=Number.prototype,o=false;f._orient=+1;f._nth=null;f._is=false;u._dateElement="day";f.next=function(){this._orient=+1;return this};y.next=function(){return y.today().next()};f.last=f.prev=f.previous=function(){this._orient=-1;return this};y.last=y.prev=y.previous=function(){return y.today().last()};f.is=function(){this._is=true;return this};f.at=function(i){return(typeof i==="string")?y.parse(this.toShortDateString()+" "+i):this.set(i)};f.weekday=function(){if(this._is){this._is=false;return(!this.is().sat()&&!this.is().sun())}return this};u.fromNow=u.after=function(i){var j={};j[this._dateElement]=this;return((!i)?new Date():i.clone()).add(j)};u.ago=u.before=function(i){var j={};j[this._dateElement]=this*-1;return((!i)?new Date():i.clone()).add(j)};var c=("sunday monday tuesday wednesday thursday friday saturday").split(/\s/),z=("january february march april may june july august september october november december").split(/\s/),v=("Millisecond Second Minute Hour Day Week Month Year").split(/\s/),e=("final first second third fourth fifth").split(/\s/),d;var s=function(i){return function(){if(this._is){this._is=false;return this.getDay()==i}if(this._nth!==null){if(this._isSecond){this.addSeconds(this._orient*-1)}this._isSecond=false;var k=this._nth;this._nth=null;var j=this.clone().moveToLastDayOfMonth();this.moveToNthOccurrence(i,k);if(this>j){throw new RangeError(y.getDayName(i)+" does not occur "+k+" times in the month of "+y.getMonthName(j.getMonth())+" "+j.getFullYear()+".")}return this}return this.moveToDayOfWeek(i,this._orient)}};var p=function(i){return function(){var j=y.today(),k=i-j.getDay();if(i===0&&q.firstDayOfWeek===1&&j.getDay()!==0){k=k+7}return j.addDays(k)}};for(var g=0;g<c.length;g++){y[c[g].toUpperCase()]=y[c[g].toUpperCase().substring(0,3)]=g;y[c[g]]=y[c[g].substring(0,3)]=p(g);f[c[g]]=f[c[g].substring(0,3)]=s(g)}var a=function(i){return function(){if(this._is){this._is=false;return this.getMonth()===i}return this.moveToMonth(i,this._orient)}};var w=function(i){return function(){return y.today().set({month:i,day:1})}};for(var h=0;h<z.length;h++){y[z[h].toUpperCase()]=y[z[h].toUpperCase().substring(0,3)]=h;y[z[h]]=y[z[h].substring(0,3)]=w(h);f[z[h]]=f[z[h].substring(0,3)]=a(h)}var t=function(i){return function(){if(this._isSecond){this._isSecond=false;return this}if(i.substring(i.length-1)!="s"){i+="s"}return this["add"+i](this._orient)}};var b=function(i){return function(){this._dateElement=i;return this}};for(var m=0;m<v.length;m++){d=v[m].toLowerCase();f[d]=f[d+"s"]=t(v[m]);u[d]=u[d+"s"]=b(d)}var x=function(i){return function(j){if(j||j===0){return this.moveToNthOccurrence(j,i)}this._nth=i;if(i===2&&(j===undefined||j===null)){this._isSecond=true;return this.addSeconds(this._orient)}return this}};for(var n=0;n<e.length;n++){f[e[n]]=(n===0)?x(-1):x(n)}if(!y.toISOString){f.toISOString=function(){function i(j){return j<10?"0"+j:j}return'"'+this.getUTCFullYear()+"-"+i(this.getUTCMonth()+1)+"-"+i(this.getUTCDate())+"T"+i(this.getUTCHours())+":"+i(this.getUTCMinutes())+":"+i(this.getUTCSeconds())+'Z"'}}if(!y.toJSONString){f.toJSONString=f.toISOString}f.toShortDateString=function(){return this.toString(q.formatPatterns.shortDate)};f.toLongDateString=function(){return this.toString(q.formatPatterns.longDate)};f.toShortTimeString=function(){return this.toString(q.formatPatterns.shortTime)};f.toLongTimeString=function(){return this.toString(q.formatPatterns.longTime)};f.getOrdinal=function(){switch(this.getDate()){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th"}}}());(function(){Date.Parsing={Exception:function(i){this.message="Parse error at '"+i.substring(0,10)+" ...'"}};var f=Date.Parsing;var c=f.Operators={rtoken:function(i){return function(j){var k=j.match(i);if(k){return([k[0],j.substring(k[0].length)])}else{throw new f.Exception(j)}}},token:function(i){return function(j){return c.rtoken(new RegExp("^s*"+j+"s*"))(j)}},stoken:function(i){return c.rtoken(new RegExp("^"+i))},until:function(i){return function(j){var m=[],k=null;while(j.length){try{k=i.call(this,j)}catch(l){m.push(k[0]);j=k[1];continue}break}return[m,j]}},many:function(i){return function(k){var l=[],j=null;while(k.length){try{j=i.call(this,k)}catch(m){return[l,k]}l.push(j[0]);k=j[1]}return[l,k]}},optional:function(i){return function(k){var j=null;try{j=i.call(this,k)}catch(l){return[null,k]}return[j[0],j[1]]}},not:function(i){return function(j){try{i.call(this,j)}catch(k){return[null,j]}throw new f.Exception(j)}},ignore:function(i){return i?function(k){var j=null;j=i.call(this,k);return[null,j[1]]}:null},product:function(){var j=arguments[0],k=Array.prototype.slice.call(arguments,1),l=[];for(var m=0;m<j.length;m++){l.push(c.each(j[m],k))}return l},cache:function(k){var j={},i=null;return function(l){try{i=j[l]=(j[l]||k.call(this,l))}catch(m){i=j[l]=m}if(i instanceof f.Exception){throw i}else{return i}}},any:function(){var i=arguments;return function(k){var j=null;for(var l=0;l<i.length;l++){if(i[l]==null){continue}try{j=(i[l].call(this,k))}catch(m){j=null}if(j){return j}}throw new f.Exception(k)}},each:function(){var i=arguments;return function(k){var l=[],j=null;for(var m=0;m<i.length;m++){if(i[m]==null){continue}try{j=(i[m].call(this,k))}catch(n){throw new f.Exception(k)}l.push(j[0]);k=j[1]}return[l,k]}},all:function(){var i=arguments,j=j;return j.each(j.optional(i))},sequence:function(i,k,j){k=k||c.rtoken(/^\s*/);j=j||null;if(i.length==1){return i[0]}return function(u){var t=null,p=null;var v=[];for(var l=0;l<i.length;l++){try{t=i[l].call(this,u)}catch(m){break}v.push(t[0]);try{p=k.call(this,t[1])}catch(o){p=null;break}u=p[1]}if(!t){throw new f.Exception(u)}if(p){throw new f.Exception(p[1])}if(j){try{t=j.call(this,t[1])}catch(n){throw new f.Exception(t[1])}}return[v,(t?t[1]:u)]}},between:function(j,l,i){i=i||j;var k=c.each(c.ignore(j),l,c.ignore(i));return function(m){var n=k.call(this,m);return[[n[0][0],r[0][2]],n[1]]}},list:function(k,j,i){j=j||c.rtoken(/^\s*/);i=i||null;return(k instanceof Array?c.each(c.product(k.slice(0,-1),c.ignore(j)),k.slice(-1),c.ignore(i)):c.each(c.many(c.each(k,c.ignore(j))),px,c.ignore(i)))},set:function(i,k,j){k=k||c.rtoken(/^\s*/);j=j||null;return function(A){var z=null,x=null,y=null,u=null,n=[[],A],B=false;for(var l=0;l<i.length;l++){y=null;x=null;z=null;B=(i.length==1);try{z=i[l].call(this,A)}catch(v){continue}u=[[z[0]],z[1]];if(z[1].length>0&&!B){try{y=k.call(this,z[1])}catch(o){B=true}}else{B=true}if(!B&&y[1].length===0){B=true}if(!B){var t=[];for(var m=0;m<i.length;m++){if(l!=m){t.push(i[m])}}x=c.set(t,k).call(this,y[1]);if(x[0].length>0){u[0]=u[0].concat(x[0]);u[1]=x[1]}}if(u[1].length<n[1].length){n=u}if(n[1].length===0){break}}if(n[0].length===0){return n}if(j){try{y=j.call(this,n[1])}catch(w){throw new f.Exception(n[1])}n[1]=y[1]}return n}},forward:function(i,j){return function(k){return i[j].call(this,k)}},replace:function(j,i){return function(l){var k=j.call(this,l);return[i,k[1]]}},process:function(j,i){return function(l){var k=j.call(this,l);return[i.call(this,k[0]),k[1]]}},min:function(i,j){return function(k){var l=j.call(this,k);if(l[0].length<i){throw new f.Exception(k)}return l}}};var d=function(i){return function(){var k=null,j=[];if(arguments.length>1){k=Array.prototype.slice.call(arguments)}else{if(arguments[0] instanceof Array){k=arguments[0]}}if(k){for(var l=0,m=k.shift();l<m.length;l++){k.unshift(m[l]);j.push(i.apply(null,k));k.shift();return j}}else{return i.apply(null,arguments)}}};var g="optional not ignore cache".split(/\s/);for(var a=0;a<g.length;a++){c[g[a]]=d(c[g[a]])}var e=function(i){return function(){if(arguments[0] instanceof Array){return i.apply(null,arguments[0])}else{return i.apply(null,arguments)}}};var h="each any all".split(/\s/);for(var b=0;b<h.length;b++){c[h[b]]=e(c[h[b]])}}());(function(){var k=Date,i=k.prototype,e=k.CultureInfo;var l=function(m){var g=[];for(var n=0;n<m.length;n++){if(m[n] instanceof Array){g=g.concat(l(m[n]))}else{if(m[n]){g.push(m[n])}}}return g};k.Grammar={};k.Translator={hour:function(g){return function(){this.hour=Number(g)}},minute:function(g){return function(){this.minute=Number(g)}},second:function(g){return function(){this.second=Number(g)}},meridian:function(g){return function(){this.meridian=g.slice(0,1).toLowerCase()}},timezone:function(g){return function(){var m=g.replace(/[^\d\+\-]/g,"");if(m.length){this.timezoneOffset=Number(m)}else{this.timezone=g.toLowerCase()}}},day:function(g){var m=g[0];return function(){this.day=Number(m.match(/\d+/)[0])}},month:function(g){return function(){this.month=((g.length==3)?k.getMonthNumberFromName(g):(Number(g)-1))}},year:function(g){return function(){var m=Number(g);this.year=((g.length>2)?m:(m+(((m+2000)<e.twoDigitYearMax)?2000:1900)))}},rday:function(g){return function(){switch(g){case"yesterday":this.days=-1;break;case"tomorrow":this.days=1;break;case"today":this.days=0;break;case"now":this.days=0;this.now=true;break}}},finishExact:function(m){m=(m instanceof Array)?m:[m];for(var n=0;n<m.length;n++){if(m[n]){m[n].call(this)}}var o=new Date();if((this.hour||this.minute)&&(!this.month&&!this.year&&!this.day)){this.day=o.getDate()}if(!this.year){this.year=o.getFullYear()}if(!this.month&&this.month!==0){this.month=o.getMonth()}if(!this.day){this.day=1}if(!this.hour){this.hour=0}if(!this.minute){this.minute=0}if(!this.second){this.second=0}if(this.meridian&&this.hour){if(this.meridian=="p"&&this.hour<12){this.hour=this.hour+12}else{if(this.meridian=="a"&&this.hour==12){this.hour=0}}}if(this.day>k.getDaysInMonth(this.year,this.month)){throw new RangeError(this.day+" is not a valid value for days.")}var g=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second);if(this.timezone){g.set({timezone:this.timezone})}else{if(this.timezoneOffset){g.set({timezoneOffset:this.timezoneOffset})}}return g},finish:function(o){o=(o instanceof Array)?l(o):[o];if(o.length===0){return null}for(var g=0;g<o.length;g++){if(typeof o[g]=="function"){o[g].call(this)}}var t=k.today();if(this.now&&!this.unit&&!this.operator){return new Date()}else{if(this.now){t=new Date()}}var m=!!(this.days&&this.days!==null||this.orient||this.operator);var p,n,s;s=((this.orient=="past"||this.operator=="subtract")?-1:1);if(!this.now&&"hour minute second".indexOf(this.unit)!=-1){t.setTimeToNow()}if(this.month||this.month===0){if("year day hour minute second".indexOf(this.unit)!=-1){this.value=this.month+1;this.month=null;m=true}}if(!m&&this.weekday&&!this.day&&!this.days){var q=Date[this.weekday]();this.day=q.getDate();if(!this.month){this.month=q.getMonth()}this.year=q.getFullYear()}if(m&&this.weekday&&this.unit!="month"){this.unit="day";p=(k.getDayNumberFromName(this.weekday)-t.getDay());n=7;this.days=p?((p+(s*n))%n):(s*n)}if(this.month&&this.unit=="day"&&this.operator){this.value=(this.month+1);this.month=null}if(this.value!=null&&this.month!=null&&this.year!=null){this.day=this.value*1}if(this.month&&!this.day&&this.value){t.set({day:this.value*1});if(!m){this.day=this.value*1}}if(!this.month&&this.value&&this.unit=="month"&&!this.now){this.month=this.value;m=true}if(m&&(this.month||this.month===0)&&this.unit!="year"){this.unit="month";p=(this.month-t.getMonth());n=12;this.months=p?((p+(s*n))%n):(s*n);this.month=null}if(!this.unit){this.unit="day"}if(!this.value&&this.operator&&this.operator!==null&&this[this.unit+"s"]&&this[this.unit+"s"]!==null){this[this.unit+"s"]=this[this.unit+"s"]+((this.operator=="add")?1:-1)+(this.value||0)*s}else{if(this[this.unit+"s"]==null||this.operator!=null){if(!this.value){this.value=1}this[this.unit+"s"]=this.value*s}}if(this.meridian&&this.hour){if(this.meridian=="p"&&this.hour<12){this.hour=this.hour+12}else{if(this.meridian=="a"&&this.hour==12){this.hour=0}}}if(this.weekday&&!this.day&&!this.days){var q=Date[this.weekday]();this.day=q.getDate();if(q.getMonth()!==t.getMonth()){this.month=q.getMonth()}}if(this.month&&!this.day){this.day=1}if(!this.orient&&!this.operator&&this.unit=="week"&&this.value&&!this.day&&!this.month){return k.jan().first().mon().addWeeks(this.value)}if(m&&this.timezone&&this.day&&this.days){this.day=this.days}return(m)?t.add(this):t.set(this)}};var b=k.Parsing.Operators,j=k.Grammar,h=k.Translator,c;j.datePartDelimiter=b.rtoken(/^([\s\-\.\,\/\x27]+)/);j.timePartDelimiter=b.stoken(":");j.whiteSpace=b.rtoken(/^\s*/);j.generalDelimiter=b.rtoken(/^(([\s\,]|at|@|on)+)/);var d={};j.ctoken=function(m){var g=d[m];if(!g){var n=e.regexPatterns;var p=m.split(/\s+/),o=[];for(var q=0;q<p.length;q++){o.push(b.replace(b.rtoken(n[p[q]]),p[q]))}g=d[m]=b.any.apply(null,o)}return g};j.ctoken2=function(g){return b.rtoken(e.regexPatterns[g])};j.h=b.cache(b.process(b.rtoken(/^(0[0-9]|1[0-2]|[1-9])/),h.hour));j.hh=b.cache(b.process(b.rtoken(/^(0[0-9]|1[0-2])/),h.hour));j.H=b.cache(b.process(b.rtoken(/^([0-1][0-9]|2[0-3]|[0-9])/),h.hour));j.HH=b.cache(b.process(b.rtoken(/^([0-1][0-9]|2[0-3])/),h.hour));j.m=b.cache(b.process(b.rtoken(/^([0-5][0-9]|[0-9])/),h.minute));j.mm=b.cache(b.process(b.rtoken(/^[0-5][0-9]/),h.minute));j.s=b.cache(b.process(b.rtoken(/^([0-5][0-9]|[0-9])/),h.second));j.ss=b.cache(b.process(b.rtoken(/^[0-5][0-9]/),h.second));j.hms=b.cache(b.sequence([j.H,j.m,j.s],j.timePartDelimiter));j.t=b.cache(b.process(j.ctoken2("shortMeridian"),h.meridian));j.tt=b.cache(b.process(j.ctoken2("longMeridian"),h.meridian));j.z=b.cache(b.process(b.rtoken(/^((\+|\-)\s*\d\d\d\d)|((\+|\-)\d\d\:?\d\d)/),h.timezone));j.zz=b.cache(b.process(b.rtoken(/^((\+|\-)\s*\d\d\d\d)|((\+|\-)\d\d\:?\d\d)/),h.timezone));j.zzz=b.cache(b.process(j.ctoken2("timezone"),h.timezone));j.timeSuffix=b.each(b.ignore(j.whiteSpace),b.set([j.tt,j.zzz]));j.time=b.each(b.optional(b.ignore(b.stoken("T"))),j.hms,j.timeSuffix);j.d=b.cache(b.process(b.each(b.rtoken(/^([0-2]\d|3[0-1]|\d)/),b.optional(j.ctoken2("ordinalSuffix"))),h.day));j.dd=b.cache(b.process(b.each(b.rtoken(/^([0-2]\d|3[0-1])/),b.optional(j.ctoken2("ordinalSuffix"))),h.day));j.ddd=j.dddd=b.cache(b.process(j.ctoken("sun mon tue wed thu fri sat"),function(g){return function(){this.weekday=g}}));j.M=b.cache(b.process(b.rtoken(/^(1[0-2]|0\d|\d)/),h.month));j.MM=b.cache(b.process(b.rtoken(/^(1[0-2]|0\d)/),h.month));j.MMM=j.MMMM=b.cache(b.process(j.ctoken("jan feb mar apr may jun jul aug sep oct nov dec"),h.month));j.y=b.cache(b.process(b.rtoken(/^(\d\d?)/),h.year));j.yy=b.cache(b.process(b.rtoken(/^(\d\d)/),h.year));j.yyy=b.cache(b.process(b.rtoken(/^(\d\d?\d?\d?)/),h.year));j.yyyy=b.cache(b.process(b.rtoken(/^(\d\d\d\d)/),h.year));c=function(){return b.each(b.any.apply(null,arguments),b.not(j.ctoken2("timeContext")))};j.day=c(j.d,j.dd);j.month=c(j.M,j.MMM);j.year=c(j.yyyy,j.yy);j.orientation=b.process(j.ctoken("past future"),function(g){return function(){this.orient=g}});j.operator=b.process(j.ctoken("add subtract"),function(g){return function(){this.operator=g}});j.rday=b.process(j.ctoken("yesterday tomorrow today now"),h.rday);j.unit=b.process(j.ctoken("second minute hour day week month year"),function(g){return function(){this.unit=g}});j.value=b.process(b.rtoken(/^\d\d?(st|nd|rd|th)?/),function(g){return function(){this.value=g.replace(/\D/g,"")}});j.expression=b.set([j.rday,j.operator,j.value,j.unit,j.orientation,j.ddd,j.MMM]);c=function(){return b.set(arguments,j.datePartDelimiter)};j.mdy=c(j.ddd,j.month,j.day,j.year);j.ymd=c(j.ddd,j.year,j.month,j.day);j.dmy=c(j.ddd,j.day,j.month,j.year);j.date=function(g){return((j[e.dateElementOrder]||j.mdy).call(this,g))};j.format=b.process(b.many(b.any(b.process(b.rtoken(/^(dd?d?d?|MM?M?M?|yy?y?y?|hh?|HH?|mm?|ss?|tt?|zz?z?)/),function(g){if(j[g]){return j[g]}else{throw k.Parsing.Exception(g)}}),b.process(b.rtoken(/^[^dMyhHmstz]+/),function(g){return b.ignore(b.stoken(g))}))),function(g){return b.process(b.each.apply(null,g),h.finishExact)});var f={};var a=function(g){return f[g]=(f[g]||j.format(g)[0])};j.formats=function(g){if(g instanceof Array){var m=[];for(var n=0;n<g.length;n++){m.push(a(g[n]))}return b.any.apply(null,m)}else{return a(g)}};j._formats=j.formats(['"yyyy-MM-ddTHH:mm:ssZ"',"yyyy-MM-ddTHH:mm:ssZ","yyyy-MM-ddTHH:mm:ssz","yyyy-MM-ddTHH:mm:ss","yyyy-MM-ddTHH:mmZ","yyyy-MM-ddTHH:mmz","yyyy-MM-ddTHH:mm","ddd, MMM dd, yyyy H:mm:ss tt","ddd MMM d yyyy HH:mm:ss zzz","MMddyyyy","ddMMyyyy","Mddyyyy","ddMyyyy","Mdyyyy","dMyyyy","yyyy","Mdyy","dMyy","d"]);j._start=b.process(b.set([j.date,j.time,j.expression],j.generalDelimiter,j.whiteSpace),h.finish);j.start=function(m){try{var g=j._formats.call({},m);if(g[1].length===0){return g}}catch(n){}return j._start.call({},m)};k._parse=k.parse;k.parse=function(m){var g=null;if(!m){return null}if(m instanceof Date){return m}try{g=k.Grammar.start.call({},m.replace(/^\s*(\S*(\s+\S+)*)\s*$/,"$1"))}catch(n){return null}return((g[1].length===0)?g[0]:null)};k.getParseFunction=function(g){var m=k.Grammar.formats(g);return function(o){var n=null;try{n=m.call({},o)}catch(p){return null}return((n[1].length===0)?n[0]:null)}};k.parseExact=function(m,g){return k.getParseFunction(g)(m)}}());