UNPKG

sugar

Version:

A Javascript library for working with native objects.

69 lines (68 loc) 30.4 kB
/* * Sugar Library v1.2.4 * * Freely distributable and licensed under the MIT-style license. * Copyright (c) 2012 Andrew Plummer * http://sugarjs.com/ * * ---------------------------- */ (function(context){var i=true,j=false;function k(a){return function(){return a}}var l=Object,o=Array,r=RegExp,s=Date,t=String,u=Number,v,aa=l.defineProperty&&l.defineProperties;function w(a,b,c,d){var g=b?a.prototype:a;y(d,function(f,h){if(typeof c==="function")z(g,f,ba(g[f],h,c));else if(c===i||!g[f])z(g,f,h)})}function ba(a,b,c){return function(){return a&&(c===i||c.apply(this,arguments))?a.apply(this,arguments):b.apply(this,arguments)}} function z(a,b,c){if(aa)l.defineProperty(a,b,{value:c,configurable:i,enumerable:j,writable:i});else a[b]=c}function y(a,b){var c=0,d;for(d in a)if(a.hasOwnProperty(d)){b.call(a,d,a[d],c);c++}}function A(a,b,c,d){return a===b?i:l.isRegExp(b)?r(b).test(a):l.isFunction(b)?b.apply(c,[a].concat(d)):l.equal(b,a)}function B(a,b,c,d){return C(b)?a:l.isFunction(b)?b.apply(c,d||[]):l.isFunction(a[b])?a[b].call(a):a[b]}function ca(a,b,c,d){a=Array.prototype.slice.call(a,void 0);if(c!==j)a=D(a);E(a,b,d)} function C(a){return a===void 0}function F(a){return a!==void 0}function G(a,b,c,d){typeof b=="object"&&y(b,function(g,f){var h=a[g],e=F(h),m=l.isArray(f);if(c===i&&(m||l.isObject(f))){h||(h=m?[]:{});G(h,f,c)}else if(e&&l.isFunction(d))h=d.call(b,g,a[g],b[g]);else if(!e||e&&d!==j)h=b[g];if(F(h))a[g]=h});return a} w(l,j,j,{isObject:function(a){return a===null||C(a)?j:l.prototype.toString.call(a)==="[object Object]"&&a.constructor===l},each:function(a,b){b&&y(a,function(c,d){b.call(a,c,d,a)});return a},merge:function(a,b,c){return G(a,b,i,c)}});function E(a,b,c,d){var g;H(b);if(c<0)c=a.length+c;c=isNaN(c)?0:parseInt(c>>0);for(d=d===i?a.length+c:a.length;c<d;){g=c%a.length;if(b.call(a,a[g],g,a)===j)break;c++}} function I(a,b,c,d,g){var f,h;E(a,function(e,m,q){if(A(e,b,q,[m,q])){f=e;h=m;return j}},c,d);return g?h:f}function D(a,b,c){b=b||Infinity;c=c||0;var d=[];E(a,function(g){if(l.isArray(g)&&c<b)d=d.concat(D(g,b,c+1));else d.push(g)});return d}function J(a,b,c,d){var g=a.length,f=d==-1,h=f?g-1:0;c=isNaN(c)?h:parseInt(c>>0);if(c<0)c=g+c;if(!f&&c<0||f&&c>=g)c=h;for(;f&&c>=0||!f&&c<g;){if(a[c]===b)return c;c+=d}return-1}function H(a){if(!a||!a.call)throw new TypeError("Callback is not callable");} function K(a){if(a.length===0)throw new TypeError("First argument must be defined");} w(o,i,function(){var a=arguments;return a.length===0||l.isFunction(a[0])},{every:function(a,b){var c=this.length,d=0;for(K(arguments);d<c;){if(d in this&&!A(this[d],a,b,[d,this]))return j;d++}return i},some:function(a,b){var c=this.length,d=0;for(K(arguments);d<c;){if(d in this&&A(this[d],a,b,[d,this]))return i;d++}return j},map:function(a,b){var c=this.length,d=0,g,f=Array(c);for(K(arguments);d<c;){if(d in this){g=this[d];f[d]=B(g,a,b,[g,d,this])}d++}return f},filter:function(a,b){var c=this.length, d=0,g=[];for(K(arguments);d<c;){d in this&&A(this[d],a,b,[d,this])&&g.push(this[d]);d++}return g}}); w(o,i,j,{indexOf:function(a,b){if(l.isString(this))return this.indexOf(a,b);return J(this,a,b,1)},lastIndexOf:function(a,b){if(l.isString(this))return this.lastIndexOf(a,b);return J(this,a,b,-1)},forEach:function(a,b){var c=this.length,d=0;for(H(a);d<c;){d in this&&a.call(b,this[d],d,this);d++}},reduce:function(a,b){return arrayReduce(this,a,b)},reduceRight:function(a,b){return arrayReduce(this,a,b,i)},groupBy:function(a,b){var c=this,d={},g;E(c,function(f,h){g=B(f,a,c,[f,h,c]);d[g]||(d[g]=[]);d[g].push(f)}); return l.each(d,b)},compact:function(a){var b=[];E(this,function(c){if(l.isArray(c))b.push(c.compact());else if(a&&c)b.push(c);else if(!a&&F(c)&&c!==null&&(!l.isNumber(c)||!isNaN(c)))b.push(c)});return b}});function L(a,b,c){c=Math[c||"round"];var d=Math.abs(Math.pow(10,b||0));if(b<0)d=1/d;return c(a*d)/d}function da(a,b,c,d){var g=[];a=parseInt(a);for(var f=d>0;f&&a<=b||!f&&a>=b;){g.push(a);c&&c.call(this,a);a+=d}return g} w(u,i,j,{toNumber:function(){return parseFloat(this,10)},ordinalize:function(){var a;if(this>=11&&this<=13)a="th";else switch(this%10){case 1:a="st";break;case 2:a="nd";break;case 3:a="rd";break;default:a="th"}return this.toString()+a},pad:function(a,b,c){c=c||10;var d=this.toNumber()===0?"":this.toString(c).replace(/^-/,"");c=d;a=a-d.replace(/\.\d+$/,"").length;d=0;var g=String("0");if(g!="0")g="";l.isNumber(a)||(a=1);l.isNumber(d)||(d=1);d=g.repeat(a)+c+g.repeat(d);if(b||this<0)d=(this<0?"-":"+")+ d;return d}});function fa(a,b){function c(){return L(this*b)}function d(){return M(arguments)[f](this)}function g(){return M(arguments)[f](-this)}var f="add"+a.capitalize()+"s";z(u.prototype,a,c);z(u.prototype,a+"s",c);z(u.prototype,a+"Before",g);z(u.prototype,a+"sBefore",g);z(u.prototype,a+"Ago",g);z(u.prototype,a+"sAgo",g);z(u.prototype,a+"After",d);z(u.prototype,a+"sAfter",d);z(u.prototype,a+"FromNow",d);z(u.prototype,a+"sFromNow",d)} function N(){return"\t\n\u000b\u000c\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u2028\u2029\u3000\ufeff"} w(t,i,j,{capitalize:function(a){return this.toLowerCase().replace(a?/\b[a-z]/g:/^[a-z]/,function(b){return b.toUpperCase()})},repeat:function(a){var b="",c=0;if(l.isNumber(a)&&a>0)for(;c<a;){b+=this;c++}return b},toNumber:function(a){var b=this.replace(/,/g,"");return b.match(/\./)?parseFloat(b):parseInt(b,a||10)},first:function(a){a=C(a)?1:a;return this.substr(0,a)},last:function(a){a=C(a)?1:a;return this.substr(this.length-a<0?0:this.length-a)},to:function(a){if(C(a))a=this.length;return this.slice(0, a)},toDate:function(a){return M([this.toString(),a])},assign:function(){var a={};ca(arguments,function(b,c){if(l.isObject(b))l.merge(a,b);else a[c+1]=b});return this.replace(/\{(.+?)\}/g,function(b,c){return a.hasOwnProperty(c)?a[c]:b})}}); var O=["hour","minute","second","millisecond","meridian","utc","offset_sign","offset_hours","offset_minutes"],P="\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",Q="\u5341\u767e\u5343\u4e07",ga=r("["+P+Q+"]","g"),ha=[],R,S,ia=[{src:"(\\d{4})",to:["year"]},{src:"([+-])?(\\d{4})[-.]?({month})[-.]?(\\d{1,2})?",to:["year_sign","year","month","date"]},{src:"(\\d{1,2})[-.\\/]({month})[-.\\/]?(\\d{2,4})?",to:["month","date","year"],h:i},{src:"\\/Date\\((\\d+(?:\\+\\d{4})?)\\)\\/",to:["timestamp"], s:j}],ja=[{b:"f{1,4}|ms|milliseconds",format:function(a){return a.getMilliseconds()}},{b:"ss?|seconds",format:function(a){return a.getSeconds()}},{b:"mm?|minutes",format:function(a){return a.getMinutes()}},{b:"hh?|hours|12hr",format:function(a){a=a.getHours(void 0);return a===0?12:a-(a/13|0)*12}},{b:"HH?|24hr",format:function(a){return a.getHours()}},{b:"dd?|date|day",format:function(a){return a.getDate()}},{b:"dow|weekday",i:i,format:function(a,b,c){return b.weekdays[a.getDay()+(c-1)*7]}},{b:"MM?", format:function(a){return a.getMonth()+1}},{b:"mon|month",i:i,format:function(a,b,c){return b.months[a.getMonth()+(c-1)*12]}},{b:"y{2,4}|year",format:function(a){return a.getFullYear()}},{b:"[Tt]{1,2}",format:function(a,b,c,d){a=a.getHours(void 0)<12?"am":"pm";if(d.length===1)a=a.first();if(d.first()==="T")a=a.toUpperCase();return a}},{b:"z{1,4}|tz|timezone",text:i,format:function(a,b,c,d){a=a.getUTCOffset();if(d=="z"||d=="zz")a=a.replace(/(\d{2})(\d{2})/,function(g,f){return f.toNumber().pad(d.length)}); return a}},{b:"iso(tz|timezone)",format:function(a){return a.getUTCOffset(i)}},{b:"ord",format:function(a){return a.getDate().ordinalize()}}],T=[{a:"year",method:"FullYear",c:function(a){return(365+(a?a.isLeapYear()?1:0:0.25))*24*60*60*1E3}},{a:"month",method:"Month",c:function(a,b){var c=30.4375,d;if(a){d=a.daysInMonth();if(b<=d.days())c=d}return c*24*60*60*1E3}},{a:"week",method:"Week",c:k(6048E5)},{a:"day",method:"Date",c:k(864E5)},{a:"hour",method:"Hours",c:k(36E5)},{a:"minute",method:"Minutes", c:k(6E4)},{a:"second",method:"Seconds",c:k(1E3)},{a:"millisecond",method:"Milliseconds",c:k(1)}],U={},ka={en:"2;;January,February,March,April,May,June,July,August,September,October,November,December;Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday;millisecond:|s,second:|s,minute:|s,hour:|s,day:|s,week:|s,month:|s,year:|s;one,two,three,four,five,six,seven,eight,nine,ten;a,an,the;the,st|nd|rd|th,of;{num} {unit} {sign},{num} {unit=4-5} {sign} {day},{weekday?} {month} {date}{1} {year?} {time?},{date} {month} {year},{month} {year},{shift?} {weekday} {time?},{shift} week {weekday} {time?},{shift} {unit=5-7},{0} {edge} of {shift?} {unit=4-7?}{month?}{year?},{weekday} {2} {shift} week,{0} {date}{1} of {month},{0}{month?} {date?}{1} of {shift} {unit=6-7},{day} at {time?},{time} {day};{Month} {d}, {yyyy};,yesterday,today,tomorrow;,ago|before,,from now|after|from;,last,the|this,next;last day,end,,first day|beginning", ja:"1;\u6708;;\u65e5\u66dc\u65e5,\u6708\u66dc\u65e5,\u706b\u66dc\u65e5,\u6c34\u66dc\u65e5,\u6728\u66dc\u65e5,\u91d1\u66dc\u65e5,\u571f\u66dc\u65e5;\u30df\u30ea\u79d2,\u79d2,\u5206,\u6642\u9593,\u65e5,\u9031\u9593|\u9031,\u30f6\u6708|\u30f5\u6708|\u6708,\u5e74;;;;{num}{unit}{sign},{shift}{unit=5-7}{weekday?},{year}\u5e74{month?}\u6708?{date?}\u65e5?,{month}\u6708{date?}\u65e5?,{date}\u65e5;{yyyy}\u5e74{M}\u6708{d}\u65e5;\u4e00\u6628\u65e5,\u6628\u65e5,\u4eca\u65e5,\u660e\u65e5,\u660e\u5f8c\u65e5;,\u524d,,\u5f8c;,\u53bb|\u5148,,\u6765", ko:"1;\uc6d4;;\uc77c\uc694\uc77c,\uc6d4\uc694\uc77c,\ud654\uc694\uc77c,\uc218\uc694\uc77c,\ubaa9\uc694\uc77c,\uae08\uc694\uc77c,\ud1a0\uc694\uc77c;\ubc00\ub9ac\ucd08,\ucd08,\ubd84,\uc2dc\uac04,\uc77c,\uc8fc,\uac1c\uc6d4|\ub2ec,\ub144;\uc77c|\ud55c,\uc774,\uc0bc,\uc0ac,\uc624,\uc721,\uce60,\ud314,\uad6c,\uc2ed;;;{num}{unit} {sign},{shift} {unit=5-7},{shift} {unit=5?} {weekday},{year}\ub144{month?}\uc6d4?{date?}\uc77c?,{month}\uc6d4{date?}\uc77c?,{date}\uc77c;{yyyy}\ub144{M}\uc6d4{d}\uc77c;\uadf8\uc800\uaed8,\uc5b4\uc81c,\uc624\ub298,\ub0b4\uc77c,\ubaa8\ub808;,\uc804,,\ud6c4;,\uc9c0\ub09c|\uc791,\uc774\ubc88,\ub2e4\uc74c|\ub0b4", ru:"4;;\u042f\u043d\u0432\u0430\u0440:\u044f|\u044c,\u0424\u0435\u0432\u0440\u0430\u043b:\u044f|\u044c,\u041c\u0430\u0440\u0442:\u0430|,\u0410\u043f\u0440\u0435\u043b:\u044f|\u044c,\u041c\u0430:\u044f|\u0439,\u0418\u044e\u043d:\u044f|\u044c,\u0418\u044e\u043b:\u044f|\u044c,\u0410\u0432\u0433\u0443\u0441\u0442:\u0430|,\u0421\u0435\u043d\u0442\u044f\u0431\u0440:\u044f|\u044c,\u041e\u043a\u0442\u044f\u0431\u0440:\u044f|\u044c,\u041d\u043e\u044f\u0431\u0440:\u044f|\u044c,\u0414\u0435\u043a\u0430\u0431\u0440:\u044f|\u044c;\u0412\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435,\u041f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a,\u0412\u0442\u043e\u0440\u043d\u0438\u043a,\u0421\u0440\u0435\u0434\u0430,\u0427\u0435\u0442\u0432\u0435\u0440\u0433,\u041f\u044f\u0442\u043d\u0438\u0446\u0430,\u0421\u0443\u0431\u0431\u043e\u0442\u0430;\u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434:\u0430|\u0443|\u044b|,\u0441\u0435\u043a\u0443\u043d\u0434:\u0430|\u0443|\u044b|,\u043c\u0438\u043d\u0443\u0442:\u0430|\u0443|\u044b|,\u0447\u0430\u0441:||\u0430|\u043e\u0432,\u0434\u0435\u043d\u044c|\u0434\u0435\u043d\u044c|\u0434\u043d\u044f|\u0434\u043d\u0435\u0439,\u043d\u0435\u0434\u0435\u043b:\u044f|\u044e|\u0438|\u044c|\u0435,\u043c\u0435\u0441\u044f\u0446:||\u0430|\u0435\u0432|\u0435,\u0433\u043e\u0434|\u0433\u043e\u0434|\u0433\u043e\u0434\u0430|\u043b\u0435\u0442|\u0433\u043e\u0434\u0443;\u043e\u0434:\u0438\u043d|\u043d\u0443,\u0434\u0432:\u0430|\u0435,\u0442\u0440\u0438,\u0447\u0435\u0442\u044b\u0440\u0435,\u043f\u044f\u0442\u044c,\u0448\u0435\u0441\u0442\u044c,\u0441\u0435\u043c\u044c,\u0432\u043e\u0441\u0435\u043c\u044c,\u0434\u0435\u0432\u044f\u0442\u044c,\u0434\u0435\u0441\u044f\u0442\u044c;;\u0432|\u043d\u0430,\u0433\u043e\u0434\u0430;{num} {unit} {sign},{sign} {num} {unit},{date} {month} {year?} {1},{month} {year},{0} {shift} {unit=5-7};{d} {month} {yyyy} \u0433\u043e\u0434\u0430;\u043f\u043e\u0437\u0430\u0432\u0447\u0435\u0440\u0430,\u0432\u0447\u0435\u0440\u0430,\u0441\u0435\u0433\u043e\u0434\u043d\u044f,\u0437\u0430\u0432\u0442\u0440\u0430,\u043f\u043e\u0441\u043b\u0435\u0437\u0430\u0432\u0442\u0440\u0430;,\u043d\u0430\u0437\u0430\u0434,,\u0447\u0435\u0440\u0435\u0437;,\u043f\u0440\u043e\u0448\u043b\u043e:\u0439|\u043c,,\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435:\u0439|\u043c", es:"6;;enero,febrero,marzo,abril,mayo,junio,julio,agosto,septiembre,octubre,noviembre,diciembre;domingo,lunes,martes,mi\u00e9rcoles|miercoles,jueves,viernes,s\u00e1bado|sabado;milisegundo:|s,segundo:|s,minuto:|s,hora:|s,d\u00eda|d\u00edas|dia|dias,semana:|s,mes:|es,a\u00f1o|a\u00f1os|ano|anos;uno,dos,tres,cuatro,cinco,seis,siete,ocho,nueve,diez;;el,de;{sign} {num} {unit},{num} {unit} {sign},{date?} {1} {month} {1} {year?},{0} {unit=5-7} {shift},{0} {shift} {unit=5-7};{d} de {month} de {yyyy};anteayer,ayer,hoy,ma\u00f1ana|manana;,hace,,de ahora;,pasad:o|a,,pr\u00f3ximo|pr\u00f3xima|proximo|proxima", pt:"6;;janeiro,fevereiro,mar\u00e7o,abril,maio,junho,julho,agosto,setembro,outubro,novembro,dezembro;domingo,segunda-feira,ter\u00e7a-feira,quarta-feira,quinta-feira,sexta-feira,s\u00e1bado|sabado;milisegundo:|s,segundo:|s,minuto:|s,hora:|s,dia:|s,semana:|s,m\u00eas|m\u00eases|mes|meses,ano:|s;um,dois,tr\u00eas|tres,quatro,cinco,seis,sete,oito,nove,dez,uma,duas;;a,de;{num} {unit} {sign},{sign} {num} {unit},{date?} {1} {month} {1} {year?},{0} {unit=5-7} {shift},{0} {shift} {unit=5-7};{d} de {month} de {yyyy};anteontem,ontem,hoje,amanh:\u00e3|a;,atr\u00e1s|atras|h\u00e1|ha,,daqui a;,passad:o|a,,pr\u00f3ximo|pr\u00f3xima|proximo|proxima", fr:"2;;janvier,f\u00e9vrier|fevrier,mars,avril,mai,juin,juillet,ao\u00fbt,septembre,octobre,novembre,d\u00e9cembre|decembre;dimanche,lundi,mardi,mercredi,jeudi,vendredi,samedi;milliseconde:|s,seconde:|s,minute:|s,heure:|s,jour:|s,semaine:|s,mois,an:|s|n\u00e9e|nee;un:|e,deux,trois,quatre,cinq,six,sept,huit,neuf,dix;;l'|la|le;{sign} {num} {unit},{sign} {num} {unit},{0} {date?} {month} {year?},{0} {unit=5-7} {shift};{d} {month} {yyyy};,hier,aujourd'hui,demain;,il y a,,dans|d'ici;,derni:er|\u00e8re|ere,,prochain:|e", it:"2;;Gennaio,Febbraio,Marzo,Aprile,Maggio,Giugno,Luglio,Agosto,Settembre,Ottobre,Novembre,Dicembre;Domenica,Luned:\u00ec|i,Marted:\u00ec|i,Mercoled:\u00ec|i,Gioved:\u00ec|i,Venerd:\u00ec|i,Sabato;millisecond:o|i,second:o|i,minut:o|i,or:a|e,giorn:o|i,settiman:a|e,mes:e|i,ann:o|i;un:|'|a|o,due,tre,quattro,cinque,sei,sette,otto,nove,dieci;;l'|la|il;{num} {unit} {sign},{weekday?} {date?} {month} {year?},{0} {unit=5-7} {shift},{0} {shift} {unit=5-7};{d} {month} {yyyy};,ieri,oggi,domani,dopodomani;,fa,,da adesso;,scors:o|a,,prossim:o|a", de:"2;;Januar,Februar,M\u00e4rz|Marz,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember;Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag;Millisekunde:|n,Sekunde:|n,Minute:|n,Stunde:|n,Tag:|en,Woche:|n,Monat:|en,Jahr:|en;ein:|e|er|em|en,zwei,drei,vier,fuenf,sechs,sieben,acht,neun,zehn;;der;{sign} {num} {unit},{num} {unit} {sign},{num} {unit} {sign},{sign} {num} {unit},{weekday?} {date?} {month} {year?},{shift} {unit=5-7};{d}. {Month} {yyyy};vorgestern,gestern,heute,morgen,\u00fcbermorgen|ubermorgen|uebermorgen;,vor:|her,,in;,letzte:|r|n|s,,n\u00e4chste:|r|n|s+naechste:|r|n|s", "zh-TW":"1;\u6708;;\u65e5,\u4e00,\u4e8c,\u4e09,\u56db,\u4e94,\u516d;\u6beb\u79d2,\u79d2\u9418,\u5206\u9418,\u5c0f\u6642,\u5929,\u500b\u661f\u671f|\u9031,\u500b\u6708,\u5e74;;;\u65e5|\u865f;{num}{unit}{sign},\u661f\u671f{weekday},{shift}{unit=5-7},{shift}{unit=5}{weekday},{year}\u5e74{month?}\u6708?{date?}{0},{month}\u6708{date?}{0},{date}{0};{yyyy}\u5e74{M}\u6708{d}\u65e5;\u524d\u5929,\u6628\u5929,\u4eca\u5929,\u660e\u5929,\u5f8c\u5929;,\u524d,,\u5f8c;,\u4e0a|\u53bb,\u9019,\u4e0b|\u660e","zh-CN":"1;\u6708;;\u65e5,\u4e00,\u4e8c,\u4e09,\u56db,\u4e94,\u516d;\u6beb\u79d2,\u79d2\u949f,\u5206\u949f,\u5c0f\u65f6,\u5929,\u4e2a\u661f\u671f|\u5468,\u4e2a\u6708,\u5e74;;;\u65e5|\u53f7;{num}{unit}{sign},\u661f\u671f{weekday},{shift}{unit=5-7},{shift}{unit=5}{weekday},{year}\u5e74{month?}\u6708?{date?}{0},{month}\u6708{date?}{0},{date}{0};{yyyy}\u5e74{M}\u6708{d}\u65e5;\u524d\u5929,\u6628\u5929,\u4eca\u5929,\u660e\u5929,\u540e\u5929;,\u524d,,\u540e;,\u4e0a|\u53bb,\u8fd9,\u4e0b|\u660e"}; function la(a){var b=a.code;if(!a.m){V("("+a.months.compact().join("|")+")",["month"],b);V("("+a.weekdays.compact().join("|")+")",["weekday"],b);V("("+a.modifiers.filter(function(c){return c.name==="day"}).map("src").join("|")+")",["day"],b);E(a.formats,function(c){a.addFormat(c,b,j)});a.m=i}}function V(a,b,c,d,g){g=g||"push";ha[g]({h:d,p:c,q:r("^"+a+"$","i"),to:b})}function W(a,b,c){if(b&&(!l.isString(a)||!a))a=Date.currentLocale;a&&!U[a]&&ma(a,c);return U[a]} function ma(a,b){function c(f,h){f=f.split("+").map(function(e){return e.replace(/(.+):(.+)$/,function(m,q,n){return n.split("|").map(function(p){return q+p}).join("|")})}).join("|");return E(f.split("|"),h)}function d(f,h,e){var m=[];if(b[f]){E(b[f],function(q,n){c(q,function(p,x){m[x*e+n]=p.toLowerCase()})});if(h)m=m.concat(b[f].map(function(q){return q.slice(0,3).toLowerCase()}));return b[f]=m}}function g(f,h){var e="[0-9\uff10-\uff19]"+(f?"{"+f+","+h+"}":"+");if(b.digits)e+="|["+b.digits+"]+"; return e}b=b||na(a);if(!b)throw Error("Invalid locale.");d("months",i,12);d("weekdays",i,7);d("units",j,8);d("numbers",j,10);b.code=a;b.date=g(1,2);b.year=g(4,4);b.num=function(){var f=[g()].concat(b.articles);b.digits||(f=f.concat(b.numbers));return f.compact().join("|")}();(function(){var f=[];b.f={};E(b.modifiers,function(h){c(h.src,function(e){b.f[e]=h;f.push({name:h.name,src:e,value:h.value})})});f.groupBy("name",function(h,e){e=e.map("src");if(h==="day")e=e.concat(b.weekdays);b[h]=e.join("|")}); b.modifiers=f})();if(b.monthSuffix){b.month=g(1,2);b.months=da(1,12,null,1).map(function(f){return f+b.monthSuffix})}U[a]=new oa(b)} function na(a){function b(g){return!!(d[0]&Math.pow(2,g-1))}if(a.slice(0,3)=="en-")a="en";if(!ka[a])return null;var c={modifiers:[]},d=ka[a].split(";");E(["months","weekdays","units","numbers","articles","optionals","formats"],function(g,f){c[g]=d[f+2]?d[f+2].split(","):[]});c.outputFormat=d[9];E(["day","sign","shift","edge"],function(g,f){d[f+10]&&E(d[f+10].split(","),function(h,e){h&&c.modifiers.push({name:g,src:h,value:e-2})})});if(b(1)){c.digits=P+Q;if(c.numbers.length>0)c.digits+=c.numbers.join(""); else c.numbers=P.split("");c.monthSuffix=d[1]}c.capitalizeUnit=a=="de";c.hasPlural=b(2);c.pastRelativeFormat=c.formats[0];c.futureRelativeFormat=c.formats[b(3)?1:0];c.durationFormat=c.formats[0].replace(/\s*\{sign\}\s*/,"");return c}function pa(a){a||(a=Date.currentLocale);return a!="en"&&a!="en-US"}function oa(a){l.merge(this,a)} w(oa,i,j,{getMonth:function(a){return l.isNumber(a)?a-1:I(this.months,r(a,"i"),0,j,i)%12},l:function(a){return I(this.weekdays,r(a,"i"),0,j,i)%7},k:function(a){var b;return l.isNumber(a)?a:a&&(b=this.numbers.indexOf(a))!==-1?(b+1)%10:1},o:function(a){var b=this;return a.replace(this.numbers[9],"").replace(/./g,function(c){return b.k(c)})},n:function(a){return v.units[this.units.indexOf(a)%8]},r:function(a){return this.j(a,a[2]>0?"futureRelativeFormat":"pastRelativeFormat")},duration:function(a){return this.j(X(a), "durationFormat")},j:function(a,b){var c=a[0],d=a[1],g=a[2],f;if(this.code=="ru"){f=c.toString().slice(-1);switch(i){case f==1:f=1;break;case f>=2&&f<=4:f=2;break;default:f=3}}else f=this.hasPlural&&c>1?1:0;f=this.units[f*8+d]||this.units[d];if(this.capitalizeUnit)f=f.capitalize();d=I(this.modifiers,function(h){return h.name=="sign"&&h.value==(g>0?1:-1)});return this[b].assign({num:c,unit:f,sign:d.src})},addFormat:function(a,b,c){var d=[],g=this;c!==j&&g.formats.push(a);a=a.replace(/\s+/g,"[-,. ]*"); a=a.replace(/\{(.+?)\}/g,function(f,h){var e=h.match(/\?$/),m=h.match(/(\d)(?:-(\d))?/),q=h.match(/^\d+$/),n=h.replace(/[^a-z]+$/,""),p,x;if(n==="time"){d=d.concat(O);return e?"\\s*(?:(?:t|at |\\s+)(\\d{1,2}):?(\\d{2})?:?(\\d{2})?(?:\\.(\\d{1,6}))?(am|pm)?(?:(Z)|(?:([+-])(\\d{2})(?::?(\\d{2}))?)?)?)?":"(\\d{1,2}):?(\\d{2})?:?(\\d{2})?(?:\\.(\\d{1,6}))?(am|pm)?(?:(Z)|(?:([+-])(\\d{2})(?::?(\\d{2}))?)?)?"}if(q)p=g.optionals[q[0]];else if(g[n])p=g[n];else if(g[n+"s"]){p=g[n+"s"];if(m){x=[];p.forEach(function(ta, ua){var ea=ua%(g.units?8:p.length);if(ea>=m[1]&&ea<=(m[2]||m[1]))x.push(ta)});p=x}p=p.compact().join("|")}if(q)return"(?:"+p+")?";else{d.push(n);return"("+p+")"+(e?"?":"")}});V(a,d,b)}});function Y(a){var b;if(typeof a[0]=="object")return a;else if(a.length==1&&l.isNumber(a[0]))return[a[0]];b={};E(R,function(c,d){b[c.a]=a[d]});return[b]} function qa(a,b){a=a.replace(/[\uff11\uff12\uff13\uff14\uff15\uff16\uff17\uff18\uff19\uff10]/g,function(c){return String.fromCharCode(c.charCodeAt(0)-65248)});if(b!="date"&&b!="month"&&b!="year")return a;return a.replace(ga,function(c){return P.indexOf(c)+1||""})}function ra(a,b){var c={},d,g;E(b,function(f,h){d=a[h+1];if(!(C(d)||d==="")){d=qa(d,f);if(f==="year")c.t=d;if(f==="millisecond")d*=Math.pow(10,3-d.length);g=parseFloat(d);c[f]=!isNaN(g)?g:d.toLowerCase()}});return c} function sa(a,b){var c=new s,d=j,g,f,h,e,m,q,n;if(l.isDate(a))c=a;else if(l.isNumber(a))c=new s(a);else if(l.isObject(a)){c=(new s).set(a,i);e=a}else if(l.isString(a)){la(W(b,i));f=pa(b);a=a.trim().replace(/\.+$/,"").replace(/^now$/,"");E(ha,function(p){var x=a.match(p.q);if(x){h=p;e=ra(x,h.to);g=W(h.p,i);if(e.timestamp){c.setTime(0);e={milliseconds:e.timestamp};return j}if(h.h&&!l.isString(e.month)&&(l.isString(e.date)||f)){n=e.month;e.month=e.date;e.date=n}if(e.year&&e.t.length===2)e.year=L((new s).getFullYear()/ 100)*100-L(e.year/100)*100+e.year;if(e.month){e.month=g.getMonth(e.month);if(e.shift&&!e.unit)e.unit="year"}if(e.weekday&&e.date)delete e.weekday;else if(e.weekday){e.weekday=g.l(e.weekday);if(e.shift&&!e.unit)e.unit="week"}if(e.day&&(n=g.f[e.day])){e.day=n.value;c.resetTime();d=i}else if(e.day&&(n=g.l(e.day))>-1){delete e.day;e.weekday=n}if(e.date&&!l.isNumber(e.date))e.date=g.o(e.date);if(e.meridian)if(e.meridian==="pm"&&e.hour<12)e.hour+=12;if(e.offset_hours||e.offset_minutes){e.utc=i;e.offset_minutes= e.offset_minutes||0;e.offset_minutes+=e.offset_hours*60;if(e.offset_sign==="-")e.offset_minutes*=-1;e.minute-=e.offset_minutes}if(e.unit){d=i;q=g.k(e.num);m=g.n(e.unit);if(e.shift||e.edge){q*=(n=g.f[e.shift])?n.value:0;if(m==="month"&&F(e.date)){c.set({day:e.date},i);delete e.date}if(m==="year"&&F(e.month)){c.set({month:e.month,day:e.date},i);delete e.month;delete e.date}}if(e.sign&&(n=g.f[e.sign]))q*=n.value;if(F(e.weekday)){c.set({weekday:e.weekday},i);delete e.weekday}e[m]=(e[m]||0)+q}if(e.year_sign=== "-")e.year*=-1;return j}});if(h)if(d)c.advance(e);else if(e.utc){c.resetTime();c.setUTC(e,i)}else c.set(e,i);else c=a?new s(a):new s;if(e&&e.edge){n=g.f[e.edge];E(S.slice(4),function(p){if(F(e[p.a])){m=p.a;return j}});if(m==="year")e.d="month";else if(m==="month"||m==="week")e.d="day";c[(n.value<0?"endOf":"beginningOf")+m.capitalize()]();n.value===-2&&c.resetTime()}}return{e:c,set:e}} function Z(a,b,c,d){var g,f=W(d,i),h=r(/^[A-Z]/);if(a.isValid())if(Date[b])b=Date[b];else{if(l.isFunction(b)){g=X(a.millisecondsFromNow());b=b.apply(a,g.concat(f))}}else return"Invalid Date";if(!b&&!c)b=f.outputFormat;else if(!b&&c){g=g||X(a.millisecondsFromNow());if(g[1]===0){g[1]=1;g[0]=1}return f.r(g)}E(ja,function(e){b=b.replace(r("\\{("+e.b+")(\\d)?\\}",e.i?"i":""),function(m,q,n){m=e.format(a,f,n||1,q);n=q.length;var p=q.match(/^(.)\1+$/);if(e.i){if(n===3)m=m.slice(0,3);if(p||q.match(h))m=m.capitalize()}else if(p&& !e.text)m=(l.isNumber(m)?m.pad(n):m.toString()).last(n);return m})});return b}function va(a,b,c){var d=sa(b),g=0,f=b=0,h;if(c>0){b=f=c;h=i}if(!d.e.isValid())return j;if(d.set&&d.set.d){E(T,function(m){if(m.a===d.set.d)g=m.c(d.e,a-d.e)-1});if(d.set.edge||d.set.shift)d.e["beginningOf"+d.set.d.capitalize()]();if(!h&&d.set.sign&&d.set.d!="millisecond"){b=50;f=-50}}c=a.getTime();h=d.e.getTime();var e=h+g;if(d.set&&d.set.d=="week"&&(new Date(e+1)).getHours()!=0)e-=s.DSTOffset;return c>=h-b&&c<=e+f} function $(a,b,c,d,g){if(l.isNumber(b)&&g)b={milliseconds:b};else if(l.isNumber(b)){a.setTime(b);return a}if(b.date)b.day=b.date;if(!g&&C(b.day)&&F(b.weekday)){a["set"+(d?"UTC":"")+"Weekday"](b.weekday);b.day=a["get"+(d?"UTC":"")+"Date"](void 0);delete b.weekday}E(S,function(f){if(F(b[f.a])||F(b[f.a+"s"])){b.d=f.a;return j}else if(c&&f.a!=="week"&&f.a!=="year")a["set"+(d?"UTC":"")+f.method](f.a==="day"?1:0)});E(T,function(f){var h=f.a;f=f.method;var e=F(b[h])?b[h]:b[h+"s"];if(!C(e)){if(g){if(h=== "week"){e=(b.day||0)+e*7;f="Date"}e=e*g+a["get"+f](void 0)}a["set"+(d?"UTC":"")+f](e);if(h==="month"){h=e;if(h<0)h+=12;h%12!=a.getMonth()&&a.setDate(0)}}});return a}function wa(a){a.addDays(4-(a.getDay()||7)).resetTime();return 1+(a.daysSince(a.clone().beginningOfYear())/7|0)}function X(a){var b,c=Math.abs(a),d=c,g=0;E(S.slice(1),function(f,h){b=L(c/f.c(),1)|0;if(b>=1){d=b;g=h+1}});return[d,g,a]}function M(a){var b;b=l.isNumber(a[1])?Y(a)[0]:a[0];return sa(b,a[1]).e} function xa(a){var b=new s(s.UTC(1999,11,31)),c={};if(!b[a]||b[a]()!=="1999-12-31T00:00:00.000Z"){c[a]=function(){return Z(this.toUTC(),s.ISO8601_DATETIME)};w(s,i,i,c)}}w(s,j,j,{create:function(){return M(arguments)},now:function(){return(new s).getTime()},setLocale:function(a,b){var c=W(a,j,b);if(c){Date.currentLocale=a;la(c);return c}},getLocale:function(a){return W(a,i)},addFormat:function(a,b,c,d){V(a,b,c,d,"unshift")}}); w(s,i,j,{set:function(){var a=Y(arguments);return $(this,a[0],a[1])},setUTC:function(){var a=Y(arguments);return $(this,a[0],a[1],i)},setWeekday:function(a){C(a)||this.setDate(this.getDate()+a-this.getDay())},setUTCWeekday:function(a){C(a)||this.setDate(this.getUTCDate()+a-this.getDay())},setWeek:function(a){if(!C(a)){this.setMonth(0);this.setDate(a*7+1)}},setUTCWeek:function(a){if(!C(a)){this.setMonth(0);this.setUTCDate(a*7+1)}},getWeek:function(){return wa(this)},getUTCWeek:function(){return wa(this.toUTC())}, getUTCOffset:function(a){var b=this.g?0:this.getTimezoneOffset(),c=a===i?":":"";if(!b&&a)return"Z";return L(-b/60).pad(2,i)+c+(b%60).pad(2)},toUTC:function(){if(this.g)return this;var a=this.clone().addMinutes(this.getTimezoneOffset());a.g=i;return a},isUTC:function(){return this.g||this.getTimezoneOffset()===0},advance:function(){var a=Y(arguments);return $(this,a[0],j,j,1,i)},rewind:function(){var a=Y(arguments);return $(this,a[0],j,j,-1)},isValid:function(){return!isNaN(this.getTime())},isAfter:function(a, b){return this.getTime()>s.create(a).getTime()-(b||0)},isBefore:function(a,b){return this.getTime()<s.create(a).getTime()+(b||0)},isBetween:function(a,b,c){var d=this.getTime();a=s.create(a).getTime();var g=s.create(b).getTime();b=Math.min(a,g);a=Math.max(a,g);c=c||0;return b-c<d&&a+c>d},isLeapYear:function(){var a=this.getFullYear();return a%4===0&&a%100!==0||a%400===0},daysInMonth:function(){return 32-(new s(this.getFullYear(),this.getMonth(),32)).getDate()},format:function(a,b){return Z(this,a, j,b)},relative:function(a,b){if(l.isString(a)){b=a;a=null}return Z(this,a,i,b)},is:function(a,b){var c;if(l.isString(a)){a=a.trim().toLowerCase();switch(i){case a==="future":return this.getTime()>(new s).getTime();case a==="past":return this.getTime()<(new s).getTime();case a==="weekday":return this.getDay()>0&&this.getDay()<6;case a==="weekend":return this.getDay()===0||this.getDay()===6;case (c=v.weekdays.indexOf(a)%7)>-1:return this.getDay()===c;case (c=v.months.indexOf(a)%12)>-1:return this.getMonth()=== c}}return va(this,a,b)},resetTime:function(){return this.set({hour:0,minute:0,second:0,millisecond:0})},clone:function(){return new s(this.getTime())}});w(s,i,j,{iso:function(){return this.toISOString()},getWeekday:s.prototype.getDay,getUTCWeekday:s.prototype.getUTCDay});w(u,i,j,{duration:function(a){return s.getLocale(a).duration(this)}}); (function(){var a={};E(["Array","Boolean","Date","Function","Number","String","RegExp"],function(b){a["is"+b]=function(c){return l.prototype.toString.call(c)==="[object "+b+"]"}});w(Object,j,j,a)})();(function(){var a=N().match(/^\s+$/);try{t.prototype.trim.call([1])}catch(b){a=j}var c=r("^["+N()+"]+"),d=r("["+N()+"]+$");w(t,i,!a,{trim:function(){return this.toString().trimLeft().trimRight()},trimLeft:function(){return this.replace(c,"")},trimRight:function(){return this.replace(d,"")}})})();v=s.setLocale("en"); E(T,function(a,b){var c=a.a,d=c.capitalize(),g=a.c();z(s.prototype,c+"sSince",function(f,h){return L((this.getTime()-s.create(f,h).getTime())/g)});z(s.prototype,c+"sUntil",function(f,h){return L((s.create(f,h).getTime()-this.getTime())/g)});z(s.prototype,c+"sAgo",s.prototype[c+"sUntil"]);z(s.prototype,c+"sFromNow",s.prototype[c+"sSince"]);z(s.prototype,"add"+d+"s",function(f){var h={};h[c]=f;return this.advance(h)});fa(c,g);b<3&&E(["Last","This","Next"],function(f){z(s.prototype,"is"+f+d,function(){return this.is(f+ " "+c)})});if(b<4){z(s.prototype,"beginningOf"+d,function(){var f={};switch(c){case "year":f.year=this.getFullYear();break;case "month":f.month=this.getMonth();break;case "day":f.day=this.getDate();break;case "week":f.weekday=0}return this.set(f,i)});z(s.prototype,"endOf"+d,function(){var f={hours:23,minutes:59,seconds:59,milliseconds:999};switch(c){case "year":f.month=11;f.day=31;break;case "month":f.day=this.daysInMonth();break;case "week":f.weekday=6}return this.set(f,i)})}}); (function(){R=T.concat();R.splice(2,1);S=T.concat().reverse();var a="\\d{1,2}|"+v.months.join("|");E(ia,function(b){s.addFormat(b.src.replace(/\{month\}/,a)+(b.s===j?"":"\\s*(?:(?:t|at |\\s+)(\\d{1,2}):?(\\d{2})?:?(\\d{2})?(?:\\.(\\d{1,6}))?(am|pm)?(?:(Z)|(?:([+-])(\\d{2})(?::?(\\d{2}))?)?)?)?"),b.to.concat(O),"en",b.h)});V("(\\d{1,2}):?(\\d{2})?:?(\\d{2})?(?:\\.(\\d{1,6}))?(am|pm)?(?:(Z)|(?:([+-])(\\d{2})(?::?(\\d{2}))?)?)?",O)})(); (function(){var a=v.weekdays.slice(0,7),b=v.months.slice(0,12);E(["today","yesterday","tomorrow","weekday","weekend","future","past"].concat(a).concat(b),function(c){z(s.prototype,"is"+c.capitalize(),function(){return this.is(c)})})})();xa("toISOString");xa("toJSON"); w(s,j,i,{DSTOffset:((new s(2E3,6,1)).getTimezoneOffset()-(new s(2E3,0,1)).getTimezoneOffset())*60*1E3,INTERNATIONAL_TIME:"{h}:{mm}:{ss}",RFC1123:"{Dow}, {dd} {Mon} {yyyy} {HH}:{mm}:{ss} {tz}",RFC1036:"{Weekday}, {dd}-{Mon}-{yy} {HH}:{mm}:{ss} {tz}",ISO8601_DATE:"{yyyy}-{MM}-{dd}",ISO8601_DATETIME:"{yyyy}-{MM}-{dd}T{HH}:{mm}:{ss}.{fff}{isotz}"});})(this);