PageSourceSearch

https://www.zahnarzt-muehlheim-am-main.de/wp-content/themes/zahnarztpraxis-kusch/js/moment.js

js zahnarzt-muehlheim-am-main.de collected 2026-10-07 04:46:03 UTC 360,503 bytes, 9,737 lines download raw bytes

vendor: 4,610 bytes, lines 1-166
1(function (global, factory) {
2    typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
3    typeof define === 'function' && define.amd ? define(factory) :
4    global.moment = factory()
5}(this, function () { 'use strict';
6
7    var hookCallback;
8
9    function utils_hooks__hooks () {
10        return hookCallback.apply(null, arguments);
11    }
12
13    // This is done to register the method called with moment()
14    // without creating circular dependencies.
15    function setHookCallback (callback) {
16        hookCallback = callback;
17    }
18
19    function isArray(input) {
20        return Object.prototype.toString.call(input) === '[object Array]';
21    }
22
23    function isDate(input) {
24        return input instanceof Date || Object.prototype.toString.call(input) === '[object Date]';
25    }
26
27    function map(arr, fn) {
28        var res = [], i;
29        for (i = 0; i < arr.length; ++i) {
30            res.push(fn(arr[i], i));
31        }
32        return res;
33    }
34
35    function hasOwnProp(a, b) {
36        return Object.prototype.hasOwnProperty.call(a, b);
37    }
38
39    function extend(a, b) {
40        for (var i in b) {
41            if (hasOwnProp(b, i)) {
42                a[i] = b[i];
43            }
44        }
45
46        if (hasOwnProp(b, 'toString')) {
47            a.toString = b.toString;
48        }
49
50        if (hasOwnProp(b, 'valueOf')) {
51            a.valueOf = b.valueOf;
52        }
53
54        return a;
55    }
56
57    function create_utc__createUTC (input, format, locale, strict) {
58        return createLocalOrUTC(input, format, locale, strict, true).utc();
59    }
60
61    function defaultParsingFlags() {
62        // We need to deep clone this object.
63        return {
64            empty           : false,
65            unusedTokens    : [],
66            unusedInput     : [],
67            overflow        : -2,
68            charsLeftOver   : 0,
69            nullInput       : false,
70            invalidMonth    : null,
71            invalidFormat   : false,
72            userInvalidated : false,
73            iso             : false
74        };
75    }
76
77    function getParsingFlags(m) {
78        if (m._pf == null) {
79            m._pf = defaultParsingFlags();
80        }
81        return m._pf;
82    }
83
84    function valid__isValid(m) {
85        if (m._isValid == null) {
86            var flags = getParsingFlags(m);
87            m._isValid = !isNaN(m._d.getTime()) &&
88                flags.overflow < 0 &&
89                !flags.empty &&
90                !flags.invalidMonth &&
91                !flags.nullInput &&
92                !flags.invalidFormat &&
93                !flags.userInvalidated;
94
95            if (m._strict) {
96                m._isValid = m._isValid &&
97                    flags.charsLeftOver === 0 &&
98                    flags.unusedTokens.length === 0 &&
99                    flags.bigHour === undefined;
100            }
101        }
102        return m._isValid;
103    }
104
105    function valid__createInvalid (flags) {
106        var m = create_utc__createUTC(NaN);
107        if (flags != null) {
108            extend(getParsingFlags(m), flags);
109        }
110        else {
111            getParsingFlags(m).userInvalidated = true;
112        }
113
114        return m;
115    }
116
117    var momentProperties = utils_hooks__hooks.momentProperties = [];
118
119    function copyConfig(to, from) {
120        var i, prop, val;
121
122        if (typeof from._isAMomentObject !== 'undefined') {
123            to._isAMomentObject = from._isAMomentObject;
124        }
125        if (typeof from._i !== 'undefined') {
126            to._i = from._i;
127        }
128        if (typeof from._f !== 'undefined') {
129            to._f = from._f;
130        }
131        if (typeof from._l !== 'undefined') {
132            to._l = from._l;
133        }
134        if (typeof from._strict !== 'undefined') {
135            to._strict = from._strict;
136        }
137        if (typeof from._tzm !== 'undefined') {
138            to._tzm = from._tzm;
139        }
140        if (typeof from._isUTC !== 'undefined') {
141            to._isUTC = from._isUTC;
142        }
143        if (typeof from._offset !== 'undefined') {
144            to._offset = from._offset;
145        }
146        if (typeof from._pf !== 'undefined') {
147            to._pf = getParsingFlags(from);
148        }
149        if (typeof from._locale !== 'undefined') {
150            to._locale = from._locale;
151        }
152
153        if (momentProperties.length > 0) {
154            for (i in momentProperties) {
155                prop = momentProperties[i];
156                val = from[prop];
157                if (typeof val !== 'undefined') {
158                    to[prop] = val;
159                }
160            }
161        }
162
163        return to;
164    }
165
166    var updateInProgress = false;
vendor: 23,232 bytes, lines 167-913
167
168    // Moment prototype object
169    function Moment(config) {
170        copyConfig(this, config);
171        this._d = new Date(+config._d);
172        // Prevent infinite loop in case updateOffset creates new moment
173        // objects.
174        if (updateInProgress === false) {
175            updateInProgress = true;
176            utils_hooks__hooks.updateOffset(this);
177            updateInProgress = false;
178        }
179    }
180
181    function isMoment (obj) {
182        return obj instanceof Moment || (obj != null && obj._isAMomentObject != null);
183    }
184
185    function toInt(argumentForCoercion) {
186        var coercedNumber = +argumentForCoercion,
187            value = 0;
188
189        if (coercedNumber !== 0 && isFinite(coercedNumber)) {
190            if (coercedNumber >= 0) {
191                value = Math.floor(coercedNumber);
192            } else {
193                value = Math.ceil(coercedNumber);
194            }
195        }
196
197        return value;
198    }
199
200    function compareArrays(array1, array2, dontConvert) {
201        var len = Math.min(array1.length, array2.length),
202            lengthDiff = Math.abs(array1.length - array2.length),
203            diffs = 0,
204            i;
205        for (i = 0; i < len; i++) {
206            if ((dontConvert && array1[i] !== array2[i]) ||
207                (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) {
208                diffs++;
209            }
210        }
211        return diffs + lengthDiff;
212    }
213
214    function Locale() {
215    }
216
217    var locales = {};
218    var globalLocale;
219
220    function normalizeLocale(key) {
221        return key ? key.toLowerCase().replace('_', '-') : key;
222    }
223
224    // pick the locale from the array
225    // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each
226    // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root
227    function chooseLocale(names) {
228        var i = 0, j, next, locale, split;
229
230        while (i < names.length) {
231            split = normalizeLocale(names[i]).split('-');
232            j = split.length;
233            next = normalizeLocale(names[i + 1]);
234            next = next ? next.split('-') : null;
235            while (j > 0) {
236                locale = loadLocale(split.slice(0, j).join('-'));
237                if (locale) {
238                    return locale;
239                }
240                if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) {
241                    //the next array item is better than a shallower substring of this one
242                    break;
243                }
244                j--;
245            }
246            i++;
247        }
248        return null;
249    }
250
251    function loadLocale(name) {
252        var oldLocale = null;
253        // TODO: Find a better way to register and load all the locales in Node
254        if (!locales[name] && typeof module !== 'undefined' &&
255                module && module.exports) {
256            try {
257                oldLocale = globalLocale._abbr;
258                require('./locale/' + name);
259                // because defineLocale currently also sets the global locale, we
260                // want to undo that for lazy loaded locales
261                locale_locales__getSetGlobalLocale(oldLocale);
262            } catch (e) { }
263        }
264        return locales[name];
265    }
266
267    // This function will load locale and then set the global locale.  If
268    // no arguments are passed in, it will simply return the current global
269    // locale key.
270    function locale_locales__getSetGlobalLocale (key, values) {
271        var data;
272        if (key) {
273            if (typeof values === 'undefined') {
274                data = locale_locales__getLocale(key);
275            }
276            else {
277                data = defineLocale(key, values);
278            }
279
280            if (data) {
281                // moment.duration._locale = moment._locale = data;
282                globalLocale = data;
283            }
284        }
285
286        return globalLocale._abbr;
287    }
288
289    function defineLocale (name, values) {
290        if (values !== null) {
291            values.abbr = name;
292            if (!locales[name]) {
293                locales[name] = new Locale();
294            }
295            locales[name].set(values);
296
297            // backwards compat for now: also set the locale
298            locale_locales__getSetGlobalLocale(name);
299
300            return locales[name];
301        } else {
302            // useful for testing
303            delete locales[name];
304            return null;
305        }
306    }
307
308    // returns locale data
309    function locale_locales__getLocale (key) {
310        var locale;
311
312        if (key && key._locale && key._locale._abbr) {
313            key = key._locale._abbr;
314        }
315
316        if (!key) {
317            return globalLocale;
318        }
319
320        if (!isArray(key)) {
321            //short-circuit everything else
322            locale = loadLocale(key);
323            if (locale) {
324                return locale;
325            }
326            key = [key];
327        }
328
329        return chooseLocale(key);
330    }
331
332    var aliases = {};
333
334    function addUnitAlias (unit, shorthand) {
335        var lowerCase = unit.toLowerCase();
336        aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;
337    }
338
339    function normalizeUnits(units) {
340        return typeof units === 'string' ? aliases[units] || aliases[units.toLowerCase()] : undefined;
341    }
342
343    function normalizeObjectUnits(inputObject) {
344        var normalizedInput = {},
345            normalizedProp,
346            prop;
347
348        for (prop in inputObject) {
349            if (hasOwnProp(inputObject, prop)) {
350                normalizedProp = normalizeUnits(prop);
351                if (normalizedProp) {
352                    normalizedInput[normalizedProp] = inputObject[prop];
353                }
354            }
355        }
356
357        return normalizedInput;
358    }
359
360    function makeGetSet (unit, keepTime) {
361        return function (value) {
362            if (value != null) {
363                get_set__set(this, unit, value);
364                utils_hooks__hooks.updateOffset(this, keepTime);
365                return this;
366            } else {
367                return get_set__get(this, unit);
368            }
369        };
370    }
371
372    function get_set__get (mom, unit) {
373        return mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]();
374    }
375
376    function get_set__set (mom, unit, value) {
377        return mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);
378    }
379
380    // MOMENTS
381
382    function getSet (units, value) {
383        var unit;
384        if (typeof units === 'object') {
385            for (unit in units) {
386                this.set(unit, units[unit]);
387            }
388        } else {
389            units = normalizeUnits(units);
390            if (typeof this[units] === 'function') {
391                return this[units](value);
392            }
393        }
394        return this;
395    }
396
397    function zeroFill(number, targetLength, forceSign) {
398        var output = '' + Math.abs(number),
399            sign = number >= 0;
400
401        while (output.length < targetLength) {
402            output = '0' + output;
403        }
404        return (sign ? (forceSign ? '+' : '') : '-') + output;
405    }
406
407    var formattingTokens = /(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|x|X|zz?|ZZ?|.)/g;
408
409    var localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g;
410
411    var formatFunctions = {};
412
413    var formatTokenFunctions = {};
414
415    // token:    'M'
416    // padded:   ['MM', 2]
417    // ordinal:  'Mo'
418    // callback: function () { this.month() + 1 }
419    function addFormatToken (token, padded, ordinal, callback) {
420        var func = callback;
421        if (typeof callback === 'string') {
422            func = function () {
423                return this[callback]();
424            };
425        }
426        if (token) {
427            formatTokenFunctions[token] = func;
428        }
429        if (padded) {
430            formatTokenFunctions[padded[0]] = function () {
431                return zeroFill(func.apply(this, arguments), padded[1], padded[2]);
432            };
433        }
434        if (ordinal) {
435            formatTokenFunctions[ordinal] = function () {
436                return this.localeData().ordinal(func.apply(this, arguments), token);
437            };
438        }
439    }
440
441    function removeFormattingTokens(input) {
442        if (input.match(/\[[\s\S]/)) {
443            return input.replace(/^\[|\]$/g, '');
444        }
445        return input.replace(/\\/g, '');
446    }
447
448    function makeFormatFunction(format) {
449        var array = format.match(formattingTokens), i, length;
450
451        for (i = 0, length = array.length; i < length; i++) {
452            if (formatTokenFunctions[array[i]]) {
453                array[i] = formatTokenFunctions[array[i]];
454            } else {
455                array[i] = removeFormattingTokens(array[i]);
456            }
457        }
458
459        return function (mom) {
460            var output = '';
461            for (i = 0; i < length; i++) {
462                output += array[i] instanceof Function ? array[i].call(mom, format) : array[i];
463            }
464            return output;
465        };
466    }
467
468    // format date using native date object
469    function formatMoment(m, format) {
470        if (!m.isValid()) {
471            return m.localeData().invalidDate();
472        }
473
474        format = expandFormat(format, m.localeData());
475
476        if (!formatFunctions[format]) {
477            formatFunctions[format] = makeFormatFunction(format);
478        }
479
480        return formatFunctions[format](m);
481    }
482
483    function expandFormat(format, locale) {
484        var i = 5;
485
486        function replaceLongDateFormatTokens(input) {
487            return locale.longDateFormat(input) || input;
488        }
489
490        localFormattingTokens.lastIndex = 0;
491        while (i >= 0 && localFormattingTokens.test(format)) {
492            format = format.replace(localFormattingTokens, replaceLongDateFormatTokens);
493            localFormattingTokens.lastIndex = 0;
494            i -= 1;
495        }
496
497        return format;
498    }
499
500    var match1         = /\d/;            //       0 - 9
501    var match2         = /\d\d/;          //      00 - 99
502    var match3         = /\d{3}/;         //     000 - 999
503    var match4         = /\d{4}/;         //    0000 - 9999
504    var match6         = /[+-]?\d{6}/;    // -999999 - 999999
505    var match1to2      = /\d\d?/;         //       0 - 99
506    var match1to3      = /\d{1,3}/;       //       0 - 999
507    var match1to4      = /\d{1,4}/;       //       0 - 9999
508    var match1to6      = /[+-]?\d{1,6}/;  // -999999 - 999999
509
510    var matchUnsigned  = /\d+/;           //       0 - inf
511    var matchSigned    = /[+-]?\d+/;      //    -inf - inf
512
513    var matchOffset    = /Z|[+-]\d\d:?\d\d/gi; // +00:00 -00:00 +0000 -0000 or Z
514
515    var matchTimestamp = /[+-]?\d+(\.\d{1,3})?/; // 123456789 123456789.123
516
517    // any word (or two) characters or numbers including two/three word month in arabic.
518    var matchWord = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i;
519
520    var regexes = {};
521
522    function addRegexToken (token, regex, strictRegex) {
523        regexes[token] = typeof regex === 'function' ? regex : function (isStrict) {
524            return (isStrict && strictRegex) ? strictRegex : regex;
525        };
526    }
527
528    function getParseRegexForToken (token, config) {
529        if (!hasOwnProp(regexes, token)) {
530            return new RegExp(unescapeFormat(token));
531        }
532
533        return regexes[token](config._strict, config._locale);
534    }
535
536    // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript
537    function unescapeFormat(s) {
538        return s.replace('\\', '').replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function (matched, p1, p2, p3, p4) {
539            return p1 || p2 || p3 || p4;
540        }).replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
541    }
542
543    var tokens = {};
544
545    function addParseToken (token, callback) {
546        var i, func = callback;
547        if (typeof token === 'string') {
548            token = [token];
549        }
550        if (typeof callback === 'number') {
551            func = function (input, array) {
552                array[callback] = toInt(input);
553            };
554        }
555        for (i = 0; i < token.length; i++) {
556            tokens[token[i]] = func;
557        }
558    }
559
560    function addWeekParseToken (token, callback) {
561        addParseToken(token, function (input, array, config, token) {
562            config._w = config._w || {};
563            callback(input, config._w, config, token);
564        });
565    }
566
567    function addTimeToArrayFromToken(token, input, config) {
568        if (input != null && hasOwnProp(tokens, token)) {
569            tokens[token](input, config._a, config, token);
570        }
571    }
572
573    var YEAR = 0;
574    var MONTH = 1;
575    var DATE = 2;
576    var HOUR = 3;
577    var MINUTE = 4;
578    var SECOND = 5;
579    var MILLISECOND = 6;
580
581    function daysInMonth(year, month) {
582        return new Date(Date.UTC(year, month + 1, 0)).getUTCDate();
583    }
584
585    // FORMATTING
586
587    addFormatToken('M', ['MM', 2], 'Mo', function () {
588        return this.month() + 1;
589    });
590
591    addFormatToken('MMM', 0, 0, function (format) {
592        return this.localeData().monthsShort(this, format);
593    });
594
595    addFormatToken('MMMM', 0, 0, function (format) {
596        return this.localeData().months(this, format);
597    });
598
599    // ALIASES
600
601    addUnitAlias('month', 'M');
602
603    // PARSING
604
605    addRegexToken('M',    match1to2);
606    addRegexToken('MM',   match1to2, match2);
607    addRegexToken('MMM',  matchWord);
608    addRegexToken('MMMM', matchWord);
609
610    addParseToken(['M', 'MM'], function (input, array) {
611        array[MONTH] = toInt(input) - 1;
612    });
613
614    addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {
615        var month = config._locale.monthsParse(input, token, config._strict);
616        // if we didn't find a month name, mark the date as invalid.
617        if (month != null) {
618            array[MONTH] = month;
619        } else {
620            getParsingFlags(config).invalidMonth = input;
621        }
622    });
623
624    // LOCALES
625
626    var defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_');
627    function localeMonths (m) {
628        return this._months[m.month()];
629    }
630
631    var defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_');
632    function localeMonthsShort (m) {
633        return this._monthsShort[m.month()];
634    }
635
636    function localeMonthsParse (monthName, format, strict) {
637        var i, mom, regex;
638
639        if (!this._monthsParse) {
640            this._monthsParse = [];
641            this._longMonthsParse = [];
642            this._shortMonthsParse = [];
643        }
644
645        for (i = 0; i < 12; i++) {
646            // make the regex if we don't have it already
647            mom = create_utc__createUTC([2000, i]);
648            if (strict && !this._longMonthsParse[i]) {
649                this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i');
650                this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i');
651            }
652            if (!strict && !this._monthsParse[i]) {
653                regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');
654                this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');
655            }
656            // test the regex
657            if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) {
658                return i;
659            } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) {
660                return i;
661            } else if (!strict && this._monthsParse[i].test(monthName)) {
662                return i;
663            }
664        }
665    }
666
667    // MOMENTS
668
669    function setMonth (mom, value) {
670        var dayOfMonth;
671
672        // TODO: Move this out of here!
673        if (typeof value === 'string') {
674            value = mom.localeData().monthsParse(value);
675            // TODO: Another silent failure?
676            if (typeof value !== 'number') {
677                return mom;
678            }
679        }
680
681        dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));
682        mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);
683        return mom;
684    }
685
686    function getSetMonth (value) {
687        if (value != null) {
688            setMonth(this, value);
689            utils_hooks__hooks.updateOffset(this, true);
690            return this;
691        } else {
692            return get_set__get(this, 'Month');
693        }
694    }
695
696    function getDaysInMonth () {
697        return daysInMonth(this.year(), this.month());
698    }
699
700    function checkOverflow (m) {
701        var overflow;
702        var a = m._a;
703
704        if (a && getParsingFlags(m).overflow === -2) {
705            overflow =
706                a[MONTH]       < 0 || a[MONTH]       > 11  ? MONTH :
707                a[DATE]        < 1 || a[DATE]        > daysInMonth(a[YEAR], a[MONTH]) ? DATE :
708                a[HOUR]        < 0 || a[HOUR]        > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR :
709                a[MINUTE]      < 0 || a[MINUTE]      > 59  ? MINUTE :
710                a[SECOND]      < 0 || a[SECOND]      > 59  ? SECOND :
711                a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND :
712                -1;
713
714            if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {
715                overflow = DATE;
716            }
717
718            getParsingFlags(m).overflow = overflow;
719        }
720
721        return m;
722    }
723
724    function warn(msg) {
725        if (utils_hooks__hooks.suppressDeprecationWarnings === false && typeof console !== 'undefined' && console.warn) {
726            console.warn('Deprecation warning: ' + msg);
727        }
728    }
729
730    function deprecate(msg, fn) {
731        var firstTime = true,
732            msgWithStack = msg + '\n' + (new Error()).stack;
733
734        return extend(function () {
735            if (firstTime) {
736                warn(msgWithStack);
737                firstTime = false;
738            }
739            return fn.apply(this, arguments);
740        }, fn);
741    }
742
743    var deprecations = {};
744
745    function deprecateSimple(name, msg) {
746        if (!deprecations[name]) {
747            warn(msg);
748            deprecations[name] = true;
749        }
750    }
751
752    utils_hooks__hooks.suppressDeprecationWarnings = false;
753
754    var from_string__isoRegex = /^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/;
755
756    var isoDates = [
757        ['YYYYYY-MM-DD', /[+-]\d{6}-\d{2}-\d{2}/],
758        ['YYYY-MM-DD', /\d{4}-\d{2}-\d{2}/],
759        ['GGGG-[W]WW-E', /\d{4}-W\d{2}-\d/],
760        ['GGGG-[W]WW', /\d{4}-W\d{2}/],
761        ['YYYY-DDD', /\d{4}-\d{3}/]
762    ];
763
764    // iso time formats and regexes
765    var isoTimes = [
766        ['HH:mm:ss.SSSS', /(T| )\d\d:\d\d:\d\d\.\d+/],
767        ['HH:mm:ss', /(T| )\d\d:\d\d:\d\d/],
768        ['HH:mm', /(T| )\d\d:\d\d/],
769        ['HH', /(T| )\d\d/]
770    ];
771
772    var aspNetJsonRegex = /^\/?Date\((\-?\d+)/i;
773
774    // date from iso format
775    function configFromISO(config) {
776        var i, l,
777            string = config._i,
778            match = from_string__isoRegex.exec(string);
779
780        if (match) {
781            getParsingFlags(config).iso = true;
782            for (i = 0, l = isoDates.length; i < l; i++) {
783                if (isoDates[i][1].exec(string)) {
784                    // match[5] should be 'T' or undefined
785                    config._f = isoDates[i][0] + (match[6] || ' ');
786                    break;
787                }
788            }
789            for (i = 0, l = isoTimes.length; i < l; i++) {
790                if (isoTimes[i][1].exec(string)) {
791                    config._f += isoTimes[i][0];
792                    break;
793                }
794            }
795            if (string.match(matchOffset)) {
796                config._f += 'Z';
797            }
798            configFromStringAndFormat(config);
799        } else {
800            config._isValid = false;
801        }
802    }
803
804    // date from iso format or fallback
805    function configFromString(config) {
806        var matched = aspNetJsonRegex.exec(config._i);
807
808        if (matched !== null) {
809            config._d = new Date(+matched[1]);
810            return;
811        }
812
813        configFromISO(config);
814        if (config._isValid === false) {
815            delete config._isValid;
816            utils_hooks__hooks.createFromInputFallback(config);
817        }
818    }
819
820    utils_hooks__hooks.createFromInputFallback = deprecate(
821        'moment construction falls back to js Date. This is ' +
822        'discouraged and will be removed in upcoming major ' +
823        'release. Please refer to ' +
824        'https://github.com/moment/moment/issues/1407 for more info.',
825        function (config) {
826            config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));
827        }
828    );
829
830    function createDate (y, m, d, h, M, s, ms) {
831        //can't just apply() to create a date:
832        //http://stackoverflow.com/questions/181348/instantiating-a-javascript-object-by-calling-prototype-constructor-apply
833        var date = new Date(y, m, d, h, M, s, ms);
834
835        //the date constructor doesn't accept years < 1970
836        if (y < 1970) {
837            date.setFullYear(y);
838        }
839        return date;
840    }
841
842    function createUTCDate (y) {
843        var date = new Date(Date.UTC.apply(null, arguments));
844        if (y < 1970) {
845            date.setUTCFullYear(y);
846        }
847        return date;
848    }
849
850    addFormatToken(0, ['YY', 2], 0, function () {
851        return this.year() % 100;
852    });
853
854    addFormatToken(0, ['YYYY',   4],       0, 'year');
855    addFormatToken(0, ['YYYYY',  5],       0, 'year');
856    addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');
857
858    // ALIASES
859
860    addUnitAlias('year', 'y');
861
862    // PARSING
863
864    addRegexToken('Y',      matchSigned);
865    addRegexToken('YY',     match1to2, match2);
866    addRegexToken('YYYY',   match1to4, match4);
867    addRegexToken('YYYYY',  match1to6, match6);
868    addRegexToken('YYYYYY', match1to6, match6);
869
870    addParseToken(['YYYY', 'YYYYY', 'YYYYYY'], YEAR);
871    addParseToken('YY', function (input, array) {
872        array[YEAR] = utils_hooks__hooks.parseTwoDigitYear(input);
873    });
874
875    // HELPERS
876
877    function daysInYear(year) {
878        return isLeapYear(year) ? 366 : 365;
879    }
880
881    function isLeapYear(year) {
882        return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;
883    }
884
885    // HOOKS
886
887    utils_hooks__hooks.parseTwoDigitYear = function (input) {
888        return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);
889    };
890
891    // MOMENTS
892
893    var getSetYear = makeGetSet('FullYear', false);
894
895    function getIsLeapYear () {
896        return isLeapYear(this.year());
897    }
898
899    addFormatToken('w', ['ww', 2], 'wo', 'week');
900    addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');
901
902    // ALIASES
903
904    addUnitAlias('week', 'w');
905    addUnitAlias('isoWeek', 'W');
906
907    // PARSING
908
909    addRegexToken('w',  match1to2);
910    addRegexToken('ww', match1to2, match2);
911    addRegexToken('W',  match1to2);
912    addRegexToken('WW', match1to2, match2);
913
914    addWeekParseToken(['w', 'ww', 'W', 'WW'], function (input, week, config, token) {
915        week[token.substr(0, 1)] = toInt(input);
916    });
917
918    // HELPERS
919
920    // firstDayOfWeek       0 = sun, 6 = sat
921    //                      the day of the week that starts the week
922    //                      (usually sunday or monday)
923    // firstDayOfWeekOfYear 0 = sun, 6 = sat
924    //                      the first week is the week that contains the first
925    //                      of this day of the week
926    //                      (eg. ISO weeks use thursday (4))
927    function weekOfYear(mom, firstDayOfWeek, firstDayOfWeekOfYear) {
928        var end = firstDayOfWeekOfYear - firstDayOfWeek,
929            daysToDayOfWeek = firstDayOfWeekOfYear - mom.day(),
930            adjustedMoment;
931
932
933        if (daysToDayOfWeek > end) {
934            daysToDayOfWeek -= 7;
935        }
936
937        if (daysToDayOfWeek < end - 7) {
938            daysToDayOfWeek += 7;
939        }
940
941        adjustedMoment = local__createLocal(mom).add(daysToDayOfWeek, 'd');
942        return {
943            week: Math.ceil(adjustedMoment.dayOfYear() / 7),
944            year: adjustedMoment.year()
945        };
946    }
947
948    // LOCALES
949
950    function localeWeek (mom) {
951        return weekOfYear(mom, this._week.dow, this._week.doy).week;
952    }
953
954    var defaultLocaleWeek = {
955        dow : 0, // Sunday is the first day of the week.
956        doy : 6  // The week that contains Jan 1st is the first week of the year.
957    };
958
959    function localeFirstDayOfWeek () {
960        return this._week.dow;
961    }
962
963    function localeFirstDayOfYear () {
964        return this._week.doy;
965    }
966
967    // MOMENTS
968
969    function getSetWeek (input) {
970        var week = this.localeData().week(this);
971        return input == null ? week : this.add((input - week) * 7, 'd');
972    }
973
974    function getSetISOWeek (input) {
975        var week = weekOfYear(this, 1, 4).week;
976        return input == null ? week : this.add((input - week) * 7, 'd');
977    }
978
979    addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');
980
981    // ALIASES
982
983    addUnitAlias('dayOfYear', 'DDD');
984
985    // PARSING
986
987    addRegexToken('DDD',  match1to3);
988    addRegexToken('DDDD', match3);
989    addParseToken(['DDD', 'DDDD'], function (input, array, config) {
990        config._dayOfYear = toInt(input);
991    });
992
993    // HELPERS
994
995    //http://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday
996    function dayOfYearFromWeeks(year, week, weekday, firstDayOfWeekOfYear, firstDayOfWeek) {
997        var d = createUTCDate(year, 0, 1).getUTCDay();
998        var daysToAdd;
999        var dayOfYear;
1000
1001        d = d === 0 ? 7 : d;
1002        weekday = weekday != null ? weekday : firstDayOfWeek;
1003        daysToAdd = firstDayOfWeek - d + (d > firstDayOfWeekOfYear ? 7 : 0) - (d < firstDayOfWeek ? 7 : 0);
1004        dayOfYear = 7 * (week - 1) + (weekday - firstDayOfWeek) + daysToAdd + 1;
1005
1006        return {
1007            year      : dayOfYear > 0 ? year      : year - 1,
1008            dayOfYear : dayOfYear > 0 ? dayOfYear : daysInYear(year - 1) + dayOfYear
1009        };
1010    }
1011
1012    // MOMENTS
1013
1014    function getSetDayOfYear (input) {
1015        var dayOfYear = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1;
1016        return input == null ? dayOfYear : this.add((input - dayOfYear), 'd');
1017    }
1018
1019    // Pick the first defined of two or three arguments.
1020    function defaults(a, b, c) {
1021        if (a != null) {
1022            return a;
1023        }
1024        if (b != null) {
1025            return b;
1026        }
1027        return c;
1028    }
1029
1030    function currentDateArray(config) {
1031        var now = new Date();
1032        if (config._useUTC) {
1033            return [now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate()];
1034        }
1035        return [now.getFullYear(), now.getMonth(), now.getDate()];
1036    }
1037
1038    // convert an array to a date.
1039    // the array should mirror the parameters below
1040    // note: all values past the year are optional and will default to the lowest possible value.
1041    // [year, month, day , hour, minute, second, millisecond]
1042    function configFromArray (config) {
1043        var i, date, input = [], currentDate, yearToUse;
1044
1045        if (config._d) {
1046            return;
1047        }
1048
1049        currentDate = currentDateArray(config);
1050
1051        //compute day of the year from weeks and weekdays
1052        if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {
1053            dayOfYearFromWeekInfo(config);
1054        }
1055
1056        //if the day of the year is set, figure out what it is
1057        if (config._dayOfYear) {
1058            yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);
1059
1060            if (config._dayOfYear > daysInYear(yearToUse)) {
1061                getParsingFlags(config)._overflowDayOfYear = true;
1062            }
1063
1064            date = createUTCDate(yearToUse, 0, config._dayOfYear);
1065            config._a[MONTH] = date.getUTCMonth();
1066            config._a[DATE] = date.getUTCDate();
1067        }
1068
1069        // Default to current date.
1070        // * if no year, month, day of month are given, default to today
1071        // * if day of month is given, default month and year
1072        // * if month is given, default only year
1073        // * if year is given, don't default anything
1074        for (i = 0; i < 3 && config._a[i] == null; ++i) {
vendor: 29,331 bytes, lines 1075-1936
1075            config._a[i] = input[i] = currentDate[i];
1076        }
1077
1078        // Zero out whatever was not defaulted, including time
1079        for (; i < 7; i++) {
1080            config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i];
1081        }
1082
1083        // Check for 24:00:00.000
1084        if (config._a[HOUR] === 24 &&
1085                config._a[MINUTE] === 0 &&
1086                config._a[SECOND] === 0 &&
1087                config._a[MILLISECOND] === 0) {
1088            config._nextDay = true;
1089            config._a[HOUR] = 0;
1090        }
1091
1092        config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
1093        // Apply timezone offset from input. The actual utcOffset can be changed
1094        // with parseZone.
1095        if (config._tzm != null) {
1096            config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
1097        }
1098
1099        if (config._nextDay) {
1100            config._a[HOUR] = 24;
1101        }
1102    }
1103
1104    function dayOfYearFromWeekInfo(config) {
1105        var w, weekYear, week, weekday, dow, doy, temp;
1106
1107        w = config._w;
1108        if (w.GG != null || w.W != null || w.E != null) {
1109            dow = 1;
1110            doy = 4;
1111
1112            // TODO: We need to take the current isoWeekYear, but that depends on
1113            // how we interpret now (local, utc, fixed offset). So create
1114            // a now version of current config (take local/utc/offset flags, and
1115            // create now).
1116            weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(local__createLocal(), 1, 4).year);
1117            week = defaults(w.W, 1);
1118            weekday = defaults(w.E, 1);
1119        } else {
1120            dow = config._locale._week.dow;
1121            doy = config._locale._week.doy;
1122
1123            weekYear = defaults(w.gg, config._a[YEAR], weekOfYear(local__createLocal(), dow, doy).year);
1124            week = defaults(w.w, 1);
1125
1126            if (w.d != null) {
1127                // weekday -- low day numbers are considered next week
1128                weekday = w.d;
1129                if (weekday < dow) {
1130                    ++week;
1131                }
1132            } else if (w.e != null) {
1133                // local weekday -- counting starts from begining of week
1134                weekday = w.e + dow;
1135            } else {
1136                // default to begining of week
1137                weekday = dow;
1138            }
1139        }
1140        temp = dayOfYearFromWeeks(weekYear, week, weekday, doy, dow);
1141
1142        config._a[YEAR] = temp.year;
1143        config._dayOfYear = temp.dayOfYear;
1144    }
1145
1146    utils_hooks__hooks.ISO_8601 = function () {};
1147
1148    // date from string and format string
1149    function configFromStringAndFormat(config) {
1150        // TODO: Move this to another part of the creation flow to prevent circular deps
1151        if (config._f === utils_hooks__hooks.ISO_8601) {
1152            configFromISO(config);
1153            return;
1154        }
1155
1156        config._a = [];
1157        getParsingFlags(config).empty = true;
1158
1159        // This array is used to make a Date, either with `new Date` or `Date.UTC`
1160        var string = '' + config._i,
1161            i, parsedInput, tokens, token, skipped,
1162            stringLength = string.length,
1163            totalParsedInputLength = 0;
1164
1165        tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];
1166
1167        for (i = 0; i < tokens.length; i++) {
1168            token = tokens[i];
1169            parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];
1170            if (parsedInput) {
1171                skipped = string.substr(0, string.indexOf(parsedInput));
1172                if (skipped.length > 0) {
1173                    getParsingFlags(config).unusedInput.push(skipped);
1174                }
1175                string = string.slice(string.indexOf(parsedInput) + parsedInput.length);
1176                totalParsedInputLength += parsedInput.length;
1177            }
1178            // don't parse if it's not a known token
1179            if (formatTokenFunctions[token]) {
1180                if (parsedInput) {
1181                    getParsingFlags(config).empty = false;
1182                }
1183                else {
1184                    getParsingFlags(config).unusedTokens.push(token);
1185                }
1186                addTimeToArrayFromToken(token, parsedInput, config);
1187            }
1188            else if (config._strict && !parsedInput) {
1189                getParsingFlags(config).unusedTokens.push(token);
1190            }
1191        }
1192
1193        // add remaining unparsed input length to the string
1194        getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;
1195        if (string.length > 0) {
1196            getParsingFlags(config).unusedInput.push(string);
1197        }
1198
1199        // clear _12h flag if hour is <= 12
1200        if (getParsingFlags(config).bigHour === true &&
1201                config._a[HOUR] <= 12 &&
1202                config._a[HOUR] > 0) {
1203            getParsingFlags(config).bigHour = undefined;
1204        }
1205        // handle meridiem
1206        config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem);
1207
1208        configFromArray(config);
1209        checkOverflow(config);
1210    }
1211
1212
1213    function meridiemFixWrap (locale, hour, meridiem) {
1214        var isPm;
1215
1216        if (meridiem == null) {
1217            // nothing to do
1218            return hour;
1219        }
1220        if (locale.meridiemHour != null) {
1221            return locale.meridiemHour(hour, meridiem);
1222        } else if (locale.isPM != null) {
1223            // Fallback
1224            isPm = locale.isPM(meridiem);
1225            if (isPm && hour < 12) {
1226                hour += 12;
1227            }
1228            if (!isPm && hour === 12) {
1229                hour = 0;
1230            }
1231            return hour;
1232        } else {
1233            // this is not supposed to happen
1234            return hour;
1235        }
1236    }
1237
1238    function configFromStringAndArray(config) {
1239        var tempConfig,
1240            bestMoment,
1241
1242            scoreToBeat,
1243            i,
1244            currentScore;
1245
1246        if (config._f.length === 0) {
1247            getParsingFlags(config).invalidFormat = true;
1248            config._d = new Date(NaN);
1249            return;
1250        }
1251
1252        for (i = 0; i < config._f.length; i++) {
1253            currentScore = 0;
1254            tempConfig = copyConfig({}, config);
1255            if (config._useUTC != null) {
1256                tempConfig._useUTC = config._useUTC;
1257            }
1258            tempConfig._f = config._f[i];
1259            configFromStringAndFormat(tempConfig);
1260
1261            if (!valid__isValid(tempConfig)) {
1262                continue;
1263            }
1264
1265            // if there is any input that was not parsed add a penalty for that format
1266            currentScore += getParsingFlags(tempConfig).charsLeftOver;
1267
1268            //or tokens
1269            currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;
1270
1271            getParsingFlags(tempConfig).score = currentScore;
1272
1273            if (scoreToBeat == null || currentScore < scoreToBeat) {
1274                scoreToBeat = currentScore;
1275                bestMoment = tempConfig;
1276            }
1277        }
1278
1279        extend(config, bestMoment || tempConfig);
1280    }
1281
1282    function configFromObject(config) {
1283        if (config._d) {
1284            return;
1285        }
1286
1287        var i = normalizeObjectUnits(config._i);
1288        config._a = [i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond];
1289
1290        configFromArray(config);
1291    }
1292
1293    function createFromConfig (config) {
1294        var input = config._i,
1295            format = config._f,
1296            res;
1297
1298        config._locale = config._locale || locale_locales__getLocale(config._l);
1299
1300        if (input === null || (format === undefined && input === '')) {
1301            return valid__createInvalid({nullInput: true});
1302        }
1303
1304        if (typeof input === 'string') {
1305            config._i = input = config._locale.preparse(input);
1306        }
1307
1308        if (isMoment(input)) {
1309            return new Moment(checkOverflow(input));
1310        } else if (isArray(format)) {
1311            configFromStringAndArray(config);
1312        } else if (format) {
1313            configFromStringAndFormat(config);
1314        } else if (isDate(input)) {
1315            config._d = input;
1316        } else {
1317            configFromInput(config);
1318        }
1319
1320        res = new Moment(checkOverflow(config));
1321        if (res._nextDay) {
1322            // Adding is smart enough around DST
1323            res.add(1, 'd');
1324            res._nextDay = undefined;
1325        }
1326
1327        return res;
1328    }
1329
1330    function configFromInput(config) {
1331        var input = config._i;
1332        if (input === undefined) {
1333            config._d = new Date();
1334        } else if (isDate(input)) {
1335            config._d = new Date(+input);
1336        } else if (typeof input === 'string') {
1337            configFromString(config);
1338        } else if (isArray(input)) {
1339            config._a = map(input.slice(0), function (obj) {
1340                return parseInt(obj, 10);
1341            });
1342            configFromArray(config);
1343        } else if (typeof(input) === 'object') {
1344            configFromObject(config);
1345        } else if (typeof(input) === 'number') {
1346            // from milliseconds
1347            config._d = new Date(input);
1348        } else {
1349            utils_hooks__hooks.createFromInputFallback(config);
1350        }
1351    }
1352
1353    function createLocalOrUTC (input, format, locale, strict, isUTC) {
1354        var c = {};
1355
1356        if (typeof(locale) === 'boolean') {
1357            strict = locale;
1358            locale = undefined;
1359        }
1360        // object construction must be done this way.
1361        // https://github.com/moment/moment/issues/1423
1362        c._isAMomentObject = true;
1363        c._useUTC = c._isUTC = isUTC;
1364        c._l = locale;
1365        c._i = input;
1366        c._f = format;
1367        c._strict = strict;
1368
1369        return createFromConfig(c);
1370    }
1371
1372    function local__createLocal (input, format, locale, strict) {
1373        return createLocalOrUTC(input, format, locale, strict, false);
1374    }
1375
1376    var prototypeMin = deprecate(
1377         'moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548',
1378         function () {
1379             var other = local__createLocal.apply(null, arguments);
1380             return other < this ? this : other;
1381         }
1382     );
1383
1384    var prototypeMax = deprecate(
1385        'moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548',
1386        function () {
1387            var other = local__createLocal.apply(null, arguments);
1388            return other > this ? this : other;
1389        }
1390    );
1391
1392    // Pick a moment m from moments so that m[fn](other) is true for all
1393    // other. This relies on the function fn to be transitive.
1394    //
1395    // moments should either be an array of moment objects or an array, whose
1396    // first element is an array of moment objects.
1397    function pickBy(fn, moments) {
1398        var res, i;
1399        if (moments.length === 1 && isArray(moments[0])) {
1400            moments = moments[0];
1401        }
1402        if (!moments.length) {
1403            return local__createLocal();
1404        }
1405        res = moments[0];
1406        for (i = 1; i < moments.length; ++i) {
1407            if (moments[i][fn](res)) {
1408                res = moments[i];
1409            }
1410        }
1411        return res;
1412    }
1413
1414    // TODO: Use [].sort instead?
1415    function min () {
1416        var args = [].slice.call(arguments, 0);
1417
1418        return pickBy('isBefore', args);
1419    }
1420
1421    function max () {
1422        var args = [].slice.call(arguments, 0);
1423
1424        return pickBy('isAfter', args);
1425    }
1426
1427    function Duration (duration) {
1428        var normalizedInput = normalizeObjectUnits(duration),
1429            years = normalizedInput.year || 0,
1430            quarters = normalizedInput.quarter || 0,
1431            months = normalizedInput.month || 0,
1432            weeks = normalizedInput.week || 0,
1433            days = normalizedInput.day || 0,
1434            hours = normalizedInput.hour || 0,
1435            minutes = normalizedInput.minute || 0,
1436            seconds = normalizedInput.second || 0,
1437            milliseconds = normalizedInput.millisecond || 0;
1438
1439        // representation for dateAddRemove
1440        this._milliseconds = +milliseconds +
1441            seconds * 1e3 + // 1000
1442            minutes * 6e4 + // 1000 * 60
1443            hours * 36e5; // 1000 * 60 * 60
1444        // Because of dateAddRemove treats 24 hours as different from a
1445        // day when working around DST, we need to store them separately
1446        this._days = +days +
1447            weeks * 7;
1448        // It is impossible translate months into days without knowing
1449        // which months you are are talking about, so we have to store
1450        // it separately.
1451        this._months = +months +
1452            quarters * 3 +
1453            years * 12;
1454
1455        this._data = {};
1456
1457        this._locale = locale_locales__getLocale();
1458
1459        this._bubble();
1460    }
1461
1462    function isDuration (obj) {
1463        return obj instanceof Duration;
1464    }
1465
1466    function offset (token, separator) {
1467        addFormatToken(token, 0, 0, function () {
1468            var offset = this.utcOffset();
1469            var sign = '+';
1470            if (offset < 0) {
1471                offset = -offset;
1472                sign = '-';
1473            }
1474            return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2);
1475        });
1476    }
1477
1478    offset('Z', ':');
1479    offset('ZZ', '');
1480
1481    // PARSING
1482
1483    addRegexToken('Z',  matchOffset);
1484    addRegexToken('ZZ', matchOffset);
1485    addParseToken(['Z', 'ZZ'], function (input, array, config) {
1486        config._useUTC = true;
1487        config._tzm = offsetFromString(input);
1488    });
1489
1490    // HELPERS
1491
1492    // timezone chunker
1493    // '+10:00' > ['10',  '00']
1494    // '-1530'  > ['-15', '30']
1495    var chunkOffset = /([\+\-]|\d\d)/gi;
1496
1497    function offsetFromString(string) {
1498        var matches = ((string || '').match(matchOffset) || []);
1499        var chunk   = matches[matches.length - 1] || [];
1500        var parts   = (chunk + '').match(chunkOffset) || ['-', 0, 0];
1501        var minutes = +(parts[1] * 60) + toInt(parts[2]);
1502
1503        return parts[0] === '+' ? minutes : -minutes;
1504    }
1505
1506    // Return a moment from input, that is local/utc/zone equivalent to model.
1507    function cloneWithOffset(input, model) {
1508        var res, diff;
1509        if (model._isUTC) {
1510            res = model.clone();
1511            diff = (isMoment(input) || isDate(input) ? +input : +local__createLocal(input)) - (+res);
1512            // Use low-level api, because this fn is low-level api.
1513            res._d.setTime(+res._d + diff);
1514            utils_hooks__hooks.updateOffset(res, false);
1515            return res;
1516        } else {
1517            return local__createLocal(input).local();
1518        }
1519        return model._isUTC ? local__createLocal(input).zone(model._offset || 0) : local__createLocal(input).local();
1520    }
1521
1522    function getDateOffset (m) {
1523        // On Firefox.24 Date#getTimezoneOffset returns a floating point.
1524        // https://github.com/moment/moment/pull/1871
1525        return -Math.round(m._d.getTimezoneOffset() / 15) * 15;
1526    }
1527
1528    // HOOKS
1529
1530    // This function will be called whenever a moment is mutated.
1531    // It is intended to keep the offset in sync with the timezone.
1532    utils_hooks__hooks.updateOffset = function () {};
1533
1534    // MOMENTS
1535
1536    // keepLocalTime = true means only change the timezone, without
1537    // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->
1538    // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset
1539    // +0200, so we adjust the time as needed, to be valid.
1540    //
1541    // Keeping the time actually adds/subtracts (one hour)
1542    // from the actual represented time. That is why we call updateOffset
1543    // a second time. In case it wants us to change the offset again
1544    // _changeInProgress == true case, then we have to adjust, because
1545    // there is no such time in the given timezone.
1546    function getSetOffset (input, keepLocalTime) {
1547        var offset = this._offset || 0,
1548            localAdjust;
1549        if (input != null) {
1550            if (typeof input === 'string') {
1551                input = offsetFromString(input);
1552            }
1553            if (Math.abs(input) < 16) {
1554                input = input * 60;
1555            }
1556            if (!this._isUTC && keepLocalTime) {
1557                localAdjust = getDateOffset(this);
1558            }
1559            this._offset = input;
1560            this._isUTC = true;
1561            if (localAdjust != null) {
1562                this.add(localAdjust, 'm');
1563            }
1564            if (offset !== input) {
1565                if (!keepLocalTime || this._changeInProgress) {
1566                    add_subtract__addSubtract(this, create__createDuration(input - offset, 'm'), 1, false);
1567                } else if (!this._changeInProgress) {
1568                    this._changeInProgress = true;
1569                    utils_hooks__hooks.updateOffset(this, true);
1570                    this._changeInProgress = null;
1571                }
1572            }
1573            return this;
1574        } else {
1575            return this._isUTC ? offset : getDateOffset(this);
1576        }
1577    }
1578
1579    function getSetZone (input, keepLocalTime) {
1580        if (input != null) {
1581            if (typeof input !== 'string') {
1582                input = -input;
1583            }
1584
1585            this.utcOffset(input, keepLocalTime);
1586
1587            return this;
1588        } else {
1589            return -this.utcOffset();
1590        }
1591    }
1592
1593    function setOffsetToUTC (keepLocalTime) {
1594        return this.utcOffset(0, keepLocalTime);
1595    }
1596
1597    function setOffsetToLocal (keepLocalTime) {
1598        if (this._isUTC) {
1599            this.utcOffset(0, keepLocalTime);
1600            this._isUTC = false;
1601
1602            if (keepLocalTime) {
1603                this.subtract(getDateOffset(this), 'm');
1604            }
1605        }
1606        return this;
1607    }
1608
1609    function setOffsetToParsedOffset () {
1610        if (this._tzm) {
1611            this.utcOffset(this._tzm);
1612        } else if (typeof this._i === 'string') {
1613            this.utcOffset(offsetFromString(this._i));
1614        }
1615        return this;
1616    }
1617
1618    function hasAlignedHourOffset (input) {
1619        if (!input) {
1620            input = 0;
1621        }
1622        else {
1623            input = local__createLocal(input).utcOffset();
1624        }
1625
1626        return (this.utcOffset() - input) % 60 === 0;
1627    }
1628
1629    function isDaylightSavingTime () {
1630        return (
1631            this.utcOffset() > this.clone().month(0).utcOffset() ||
1632            this.utcOffset() > this.clone().month(5).utcOffset()
1633        );
1634    }
1635
1636    function isDaylightSavingTimeShifted () {
1637        if (this._a) {
1638            var other = this._isUTC ? create_utc__createUTC(this._a) : local__createLocal(this._a);
1639            return this.isValid() && compareArrays(this._a, other.toArray()) > 0;
1640        }
1641
1642        return false;
1643    }
1644
1645    function isLocal () {
1646        return !this._isUTC;
1647    }
1648
1649    function isUtcOffset () {
1650        return this._isUTC;
1651    }
1652
1653    function isUtc () {
1654        return this._isUTC && this._offset === 0;
1655    }
1656
1657    var aspNetRegex = /(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/;
1658
1659    // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html
1660    // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere
1661    var create__isoRegex = /^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;
1662
1663    function create__createDuration (input, key) {
1664        var duration = input,
1665            // matching against regexp is expensive, do it on demand
1666            match = null,
1667            sign,
1668            ret,
1669            diffRes;
1670
1671        if (isDuration(input)) {
1672            duration = {
1673                ms : input._milliseconds,
1674                d  : input._days,
1675                M  : input._months
1676            };
1677        } else if (typeof input === 'number') {
1678            duration = {};
1679            if (key) {
1680                duration[key] = input;
1681            } else {
1682                duration.milliseconds = input;
1683            }
1684        } else if (!!(match = aspNetRegex.exec(input))) {
1685            sign = (match[1] === '-') ? -1 : 1;
1686            duration = {
1687                y  : 0,
1688                d  : toInt(match[DATE])        * sign,
1689                h  : toInt(match[HOUR])        * sign,
1690                m  : toInt(match[MINUTE])      * sign,
1691                s  : toInt(match[SECOND])      * sign,
1692                ms : toInt(match[MILLISECOND]) * sign
1693            };
1694        } else if (!!(match = create__isoRegex.exec(input))) {
1695            sign = (match[1] === '-') ? -1 : 1;
1696            duration = {
1697                y : parseIso(match[2], sign),
1698                M : parseIso(match[3], sign),
1699                d : parseIso(match[4], sign),
1700                h : parseIso(match[5], sign),
1701                m : parseIso(match[6], sign),
1702                s : parseIso(match[7], sign),
1703                w : parseIso(match[8], sign)
1704            };
1705        } else if (duration == null) {// checks for null or undefined
1706            duration = {};
1707        } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) {
1708            diffRes = momentsDifference(local__createLocal(duration.from), local__createLocal(duration.to));
1709
1710            duration = {};
1711            duration.ms = diffRes.milliseconds;
1712            duration.M = diffRes.months;
1713        }
1714
1715        ret = new Duration(duration);
1716
1717        if (isDuration(input) && hasOwnProp(input, '_locale')) {
1718            ret._locale = input._locale;
1719        }
1720
1721        return ret;
1722    }
1723
1724    create__createDuration.fn = Duration.prototype;
1725
1726    function parseIso (inp, sign) {
1727        // We'd normally use ~~inp for this, but unfortunately it also
1728        // converts floats to ints.
1729        // inp may be undefined, so careful calling replace on it.
1730        var res = inp && parseFloat(inp.replace(',', '.'));
1731        // apply sign while we're at it
1732        return (isNaN(res) ? 0 : res) * sign;
1733    }
1734
1735    function positiveMomentsDifference(base, other) {
1736        var res = {milliseconds: 0, months: 0};
1737
1738        res.months = other.month() - base.month() +
1739            (other.year() - base.year()) * 12;
1740        if (base.clone().add(res.months, 'M').isAfter(other)) {
1741            --res.months;
1742        }
1743
1744        res.milliseconds = +other - +(base.clone().add(res.months, 'M'));
1745
1746        return res;
1747    }
1748
1749    function momentsDifference(base, other) {
1750        var res;
1751        other = cloneWithOffset(other, base);
1752        if (base.isBefore(other)) {
1753            res = positiveMomentsDifference(base, other);
1754        } else {
1755            res = positiveMomentsDifference(other, base);
1756            res.milliseconds = -res.milliseconds;
1757            res.months = -res.months;
1758        }
1759
1760        return res;
1761    }
1762
1763    function createAdder(direction, name) {
1764        return function (val, period) {
1765            var dur, tmp;
1766            //invert the arguments, but complain about it
1767            if (period !== null && !isNaN(+period)) {
1768                deprecateSimple(name, 'moment().' + name  + '(period, number) is deprecated. Please use moment().' + name + '(number, period).');
1769                tmp = val; val = period; period = tmp;
1770            }
1771
1772            val = typeof val === 'string' ? +val : val;
1773            dur = create__createDuration(val, period);
1774            add_subtract__addSubtract(this, dur, direction);
1775            return this;
1776        };
1777    }
1778
1779    function add_subtract__addSubtract (mom, duration, isAdding, updateOffset) {
1780        var milliseconds = duration._milliseconds,
1781            days = duration._days,
1782            months = duration._months;
1783        updateOffset = updateOffset == null ? true : updateOffset;
1784
1785        if (milliseconds) {
1786            mom._d.setTime(+mom._d + milliseconds * isAdding);
1787        }
1788        if (days) {
1789            get_set__set(mom, 'Date', get_set__get(mom, 'Date') + days * isAdding);
1790        }
1791        if (months) {
1792            setMonth(mom, get_set__get(mom, 'Month') + months * isAdding);
1793        }
1794        if (updateOffset) {
1795            utils_hooks__hooks.updateOffset(mom, days || months);
1796        }
1797    }
1798
1799    var add_subtract__add      = createAdder(1, 'add');
1800    var add_subtract__subtract = createAdder(-1, 'subtract');
1801
1802    function moment_calendar__calendar (time) {
1803        // We want to compare the start of today, vs this.
1804        // Getting start-of-today depends on whether we're local/utc/offset or not.
1805        var now = time || local__createLocal(),
1806            sod = cloneWithOffset(now, this).startOf('day'),
1807            diff = this.diff(sod, 'days', true),
1808            format = diff < -6 ? 'sameElse' :
1809                diff < -1 ? 'lastWeek' :
1810                diff < 0 ? 'lastDay' :
1811                diff < 1 ? 'sameDay' :
1812                diff < 2 ? 'nextDay' :
1813                diff < 7 ? 'nextWeek' : 'sameElse';
1814        return this.format(this.localeData().calendar(format, this, local__createLocal(now)));
1815    }
1816
1817    function clone () {
1818        return new Moment(this);
1819    }
1820
1821    function isAfter (input, units) {
1822        var inputMs;
1823        units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond');
1824        if (units === 'millisecond') {
1825            input = isMoment(input) ? input : local__createLocal(input);
1826            return +this > +input;
1827        } else {
1828            inputMs = isMoment(input) ? +input : +local__createLocal(input);
1829            return inputMs < +this.clone().startOf(units);
1830        }
1831    }
1832
1833    function isBefore (input, units) {
1834        var inputMs;
1835        units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond');
1836        if (units === 'millisecond') {
1837            input = isMoment(input) ? input : local__createLocal(input);
1838            return +this < +input;
1839        } else {
1840            inputMs = isMoment(input) ? +input : +local__createLocal(input);
1841            return +this.clone().endOf(units) < inputMs;
1842        }
1843    }
1844
1845    function isBetween (from, to, units) {
1846        return this.isAfter(from, units) && this.isBefore(to, units);
1847    }
1848
1849    function isSame (input, units) {
1850        var inputMs;
1851        units = normalizeUnits(units || 'millisecond');
1852        if (units === 'millisecond') {
1853            input = isMoment(input) ? input : local__createLocal(input);
1854            return +this === +input;
1855        } else {
1856            inputMs = +local__createLocal(input);
1857            return +(this.clone().startOf(units)) <= inputMs && inputMs <= +(this.clone().endOf(units));
1858        }
1859    }
1860
1861    function absFloor (number) {
1862        if (number < 0) {
1863            return Math.ceil(number);
1864        } else {
1865            return Math.floor(number);
1866        }
1867    }
1868
1869    function diff (input, units, asFloat) {
1870        var that = cloneWithOffset(input, this),
1871            zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4,
1872            delta, output;
1873
1874        units = normalizeUnits(units);
1875
1876        if (units === 'year' || units === 'month' || units === 'quarter') {
1877            output = monthDiff(this, that);
1878            if (units === 'quarter') {
1879                output = output / 3;
1880            } else if (units === 'year') {
1881                output = output / 12;
1882            }
1883        } else {
1884            delta = this - that;
1885            output = units === 'second' ? delta / 1e3 : // 1000
1886                units === 'minute' ? delta / 6e4 : // 1000 * 60
1887                units === 'hour' ? delta / 36e5 : // 1000 * 60 * 60
1888                units === 'day' ? (delta - zoneDelta) / 864e5 : // 1000 * 60 * 60 * 24, negate dst
1889                units === 'week' ? (delta - zoneDelta) / 6048e5 : // 1000 * 60 * 60 * 24 * 7, negate dst
1890                delta;
1891        }
1892        return asFloat ? output : absFloor(output);
1893    }
1894
1895    function monthDiff (a, b) {
1896        // difference in months
1897        var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),
1898            // b is in (anchor - 1 month, anchor + 1 month)
1899            anchor = a.clone().add(wholeMonthDiff, 'months'),
1900            anchor2, adjust;
1901
1902        if (b - anchor < 0) {
1903            anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');
1904            // linear across the month
1905            adjust = (b - anchor) / (anchor - anchor2);
1906        } else {
1907            anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');
1908            // linear across the month
1909            adjust = (b - anchor) / (anchor2 - anchor);
1910        }
1911
1912        return -(wholeMonthDiff + adjust);
1913    }
1914
1915    utils_hooks__hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';
1916
1917    function toString () {
1918        return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');
1919    }
1920
1921    function moment_format__toISOString () {
1922        var m = this.clone().utc();
1923        if (0 < m.year() && m.year() <= 9999) {
1924            if ('function' === typeof Date.prototype.toISOString) {
1925                // native implementation is ~50x faster, use it when we can
1926                return this.toDate().toISOString();
1927            } else {
1928                return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]');
1929            }
1930        } else {
1931            return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]');
1932        }
1933    }
1934
1935    function moment_format__format (inputString) {
1936        var output = formatMoment(this, inputString || utils_hooks__hooks.defaultFormat);
vendor: 3,533 bytes, lines 1937-2066
1937        return this.localeData().postformat(output);
1938    }
1939
1940    function from (time, withoutSuffix) {
1941        if (!this.isValid()) {
1942            return this.localeData().invalidDate();
1943        }
1944        return create__createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix);
1945    }
1946
1947    function fromNow (withoutSuffix) {
1948        return this.from(local__createLocal(), withoutSuffix);
1949    }
1950
1951    function to (time, withoutSuffix) {
1952        if (!this.isValid()) {
1953            return this.localeData().invalidDate();
1954        }
1955        return create__createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix);
1956    }
1957
1958    function toNow (withoutSuffix) {
1959        return this.to(local__createLocal(), withoutSuffix);
1960    }
1961
1962    function locale (key) {
1963        var newLocaleData;
1964
1965        if (key === undefined) {
1966            return this._locale._abbr;
1967        } else {
1968            newLocaleData = locale_locales__getLocale(key);
1969            if (newLocaleData != null) {
1970                this._locale = newLocaleData;
1971            }
1972            return this;
1973        }
1974    }
1975
1976    var lang = deprecate(
1977        'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',
1978        function (key) {
1979            if (key === undefined) {
1980                return this.localeData();
1981            } else {
1982                return this.locale(key);
1983            }
1984        }
1985    );
1986
1987    function localeData () {
1988        return this._locale;
1989    }
1990
1991    function startOf (units) {
1992        units = normalizeUnits(units);
1993        // the following switch intentionally omits break keywords
1994        // to utilize falling through the cases.
1995        switch (units) {
1996        case 'year':
1997            this.month(0);
1998            /* falls through */
1999        case 'quarter':
2000        case 'month':
2001            this.date(1);
2002            /* falls through */
2003        case 'week':
2004        case 'isoWeek':
2005        case 'day':
2006            this.hours(0);
2007            /* falls through */
2008        case 'hour':
2009            this.minutes(0);
2010            /* falls through */
2011        case 'minute':
2012            this.seconds(0);
2013            /* falls through */
2014        case 'second':
2015            this.milliseconds(0);
2016        }
2017
2018        // weeks are a special case
2019        if (units === 'week') {
2020            this.weekday(0);
2021        }
2022        if (units === 'isoWeek') {
2023            this.isoWeekday(1);
2024        }
2025
2026        // quarters are also special
2027        if (units === 'quarter') {
2028            this.month(Math.floor(this.month() / 3) * 3);
2029        }
2030
2031        return this;
2032    }
2033
2034    function endOf (units) {
2035        units = normalizeUnits(units);
2036        if (units === undefined || units === 'millisecond') {
2037            return this;
2038        }
2039        return this.startOf(units).add(1, (units === 'isoWeek' ? 'week' : units)).subtract(1, 'ms');
2040    }
2041
2042    function to_type__valueOf () {
2043        return +this._d - ((this._offset || 0) * 60000);
2044    }
2045
2046    function unix () {
2047        return Math.floor(+this / 1000);
2048    }
2049
2050    function toDate () {
2051        return this._offset ? new Date(+this) : this._d;
2052    }
2053
2054    function toArray () {
2055        var m = this;
2056        return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()];
2057    }
2058
2059    function moment_valid__isValid () {
2060        return valid__isValid(this);
2061    }
2062
2063    function parsingFlags () {
2064        return extend({}, getParsingFlags(this));
2065    }
2066
vendor: 4,241 bytes, lines 2067-2215
2067    function invalidAt () {
2068        return getParsingFlags(this).overflow;
2069    }
2070
2071    addFormatToken(0, ['gg', 2], 0, function () {
2072        return this.weekYear() % 100;
2073    });
2074
2075    addFormatToken(0, ['GG', 2], 0, function () {
2076        return this.isoWeekYear() % 100;
2077    });
2078
2079    function addWeekYearFormatToken (token, getter) {
2080        addFormatToken(0, [token, token.length], 0, getter);
2081    }
2082
2083    addWeekYearFormatToken('gggg',     'weekYear');
2084    addWeekYearFormatToken('ggggg',    'weekYear');
2085    addWeekYearFormatToken('GGGG',  'isoWeekYear');
2086    addWeekYearFormatToken('GGGGG', 'isoWeekYear');
2087
2088    // ALIASES
2089
2090    addUnitAlias('weekYear', 'gg');
2091    addUnitAlias('isoWeekYear', 'GG');
2092
2093    // PARSING
2094
2095    addRegexToken('G',      matchSigned);
2096    addRegexToken('g',      matchSigned);
2097    addRegexToken('GG',     match1to2, match2);
2098    addRegexToken('gg',     match1to2, match2);
2099    addRegexToken('GGGG',   match1to4, match4);
2100    addRegexToken('gggg',   match1to4, match4);
2101    addRegexToken('GGGGG',  match1to6, match6);
2102    addRegexToken('ggggg',  match1to6, match6);
2103
2104    addWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (input, week, config, token) {
2105        week[token.substr(0, 2)] = toInt(input);
2106    });
2107
2108    addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {
2109        week[token] = utils_hooks__hooks.parseTwoDigitYear(input);
2110    });
2111
2112    // HELPERS
2113
2114    function weeksInYear(year, dow, doy) {
2115        return weekOfYear(local__createLocal([year, 11, 31 + dow - doy]), dow, doy).week;
2116    }
2117
2118    // MOMENTS
2119
2120    function getSetWeekYear (input) {
2121        var year = weekOfYear(this, this.localeData()._week.dow, this.localeData()._week.doy).year;
2122        return input == null ? year : this.add((input - year), 'y');
2123    }
2124
2125    function getSetISOWeekYear (input) {
2126        var year = weekOfYear(this, 1, 4).year;
2127        return input == null ? year : this.add((input - year), 'y');
2128    }
2129
2130    function getISOWeeksInYear () {
2131        return weeksInYear(this.year(), 1, 4);
2132    }
2133
2134    function getWeeksInYear () {
2135        var weekInfo = this.localeData()._week;
2136        return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);
2137    }
2138
2139    addFormatToken('Q', 0, 0, 'quarter');
2140
2141    // ALIASES
2142
2143    addUnitAlias('quarter', 'Q');
2144
2145    // PARSING
2146
2147    addRegexToken('Q', match1);
2148    addParseToken('Q', function (input, array) {
2149        array[MONTH] = (toInt(input) - 1) * 3;
2150    });
2151
2152    // MOMENTS
2153
2154    function getSetQuarter (input) {
2155        return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);
2156    }
2157
2158    addFormatToken('D', ['DD', 2], 'Do', 'date');
2159
2160    // ALIASES
2161
2162    addUnitAlias('date', 'D');
2163
2164    // PARSING
2165
2166    addRegexToken('D',  match1to2);
2167    addRegexToken('DD', match1to2, match2);
2168    addRegexToken('Do', function (isStrict, locale) {
2169        return isStrict ? locale._ordinalParse : locale._ordinalParseLenient;
2170    });
2171
2172    addParseToken(['D', 'DD'], DATE);
2173    addParseToken('Do', function (input, array) {
2174        array[DATE] = toInt(input.match(match1to2)[0], 10);
2175    });
2176
2177    // MOMENTS
2178
2179    var getSetDayOfMonth = makeGetSet('Date', true);
2180
2181    addFormatToken('d', 0, 'do', 'day');
2182
2183    addFormatToken('dd', 0, 0, function (format) {
2184        return this.localeData().weekdaysMin(this, format);
2185    });
2186
2187    addFormatToken('ddd', 0, 0, function (format) {
2188        return this.localeData().weekdaysShort(this, format);
2189    });
2190
2191    addFormatToken('dddd', 0, 0, function (format) {
2192        return this.localeData().weekdays(this, format);
2193    });
2194
2195    addFormatToken('e', 0, 0, 'weekday');
2196    addFormatToken('E', 0, 0, 'isoWeekday');
2197
2198    // ALIASES
2199
2200    addUnitAlias('day', 'd');
2201    addUnitAlias('weekday', 'e');
2202    addUnitAlias('isoWeekday', 'E');
2203
2204    // PARSING
2205
2206    addRegexToken('d',    match1to2);
2207    addRegexToken('e',    match1to2);
2208    addRegexToken('E',    match1to2);
2209    addRegexToken('dd',   matchWord);
2210    addRegexToken('ddd',  matchWord);
2211    addRegexToken('dddd', matchWord);
2212
2213    addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config) {
2214        var weekday = config._locale.weekdaysParse(input);
2215        // if we didn't get a weekday name, mark the date as invali
2215d
2216        if (weekday != null) {
2217            week.d = weekday;
2218        } else {
2219            getParsingFlags(config).invalidWeekday = input;
2220        }
2221    });
2222
2223    addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {
2224        week[token] = toInt(input);
2225    });
2226
2227    // HELPERS
2228
2229    function parseWeekday(input, locale) {
2230        if (typeof input === 'string') {
2231            if (!isNaN(input)) {
2232                input = parseInt(input, 10);
2233            }
2234            else {
2235                input = locale.weekdaysParse(input);
2236                if (typeof input !== 'number') {
2237                    return null;
2238                }
2239            }
2240        }
2241        return input;
2242    }
2243
2244    // LOCALES
2245
2246    var defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_');
2247    function localeWeekdays (m) {
2248        return this._weekdays[m.day()];
2249    }
2250
2251    var defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_');
2252    function localeWeekdaysShort (m) {
2253        return this._weekdaysShort[m.day()];
2254    }
2255
2256    var defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_');
2257    function localeWeekdaysMin (m) {
2258        return this._weekdaysMin[m.day()];
2259    }
2260
2261    function localeWeekdaysParse (weekdayName) {
2262        var i, mom, regex;
2263
2264        if (!this._weekdaysParse) {
2265            this._weekdaysParse = [];
2266        }
2267
2268        for (i = 0; i < 7; i++) {
2269            // make the regex if we don't have it already
2270            if (!this._weekdaysParse[i]) {
2271                mom = local__createLocal([2000, 1]).day(i);
2272                regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, '');
2273                this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');
2274            }
2275            // test the regex
2276            if (this._weekdaysParse[i].test(weekdayName)) {
2277                return i;
2278            }
2279        }
2280    }
2281
2282    // MOMENTS
2283
2284    function getSetDayOfWeek (input) {
2285        var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();
2286        if (input != null) {
2287            input = parseWeekday(input, this.localeData());
2288            return this.add(input - day, 'd');
2289        } else {
2290            return day;
2291        }
2292    }
2293
2294    function getSetLocaleDayOfWeek (input) {
2295        var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;
2296        return input == null ? weekday : this.add(input - weekday, 'd');
2297    }
2298
2299    function getSetISODayOfWeek (input) {
2300        // behaves the same as moment#day except
2301        // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)
2302        // as a setter, sunday should belong to the previous week.
2303        return input == null ? this.day() || 7 : this.day(this.day() % 7 ? input : input - 7);
2304    }
2305
2306    addFormatToken('H', ['HH', 2], 0, 'hour');
2307    addFormatToken('h', ['hh', 2], 0, function () {
2308        return this.hours() % 12 || 12;
2309    });
2310
2311    function meridiem (token, lowercase) {
2312        addFormatToken(token, 0, 0, function () {
2313            return this.localeData().meridiem(this.hours(), this.minutes(), lowercase);
2314        });
2315    }
2316
2317    meridiem('a', true);
2318    meridiem('A', false);
2319
2320    // ALIASES
2321
2322    addUnitAlias('hour', 'h');
2323
2324    // PARSING
2325
2326    function matchMeridiem (isStrict, locale) {
2327        return locale._meridiemParse;
2328    }
2329
2330    addRegexToken('a',  matchMeridiem);
2331    addRegexToken('A',  matchMeridiem);
2332    addRegexToken('H',  match1to2);
2333    addRegexToken('h',  match1to2);
2334    addRegexToken('HH', match1to2, match2);
2335    addRegexToken('hh', match1to2, match2);
2336
2337    addParseToken(['H', 'HH'], HOUR);
2338    addParseToken(['a', 'A'], function (input, array, config) {
2339        config._isPm = config._locale.isPM(input);
2340        config._meridiem = input;
2341    });
2342    addParseToken(['h', 'hh'], function (input, array, config) {
2343        array[HOUR] = toInt(input);
2344        getParsingFlags(config).bigHour = true;
2345    });
2346
2347    // LOCALES
2348
2349    function localeIsPM (input) {
2350        // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays
2351        // Using charAt should be more compatible.
2352        return ((input + '').toLowerCase().charAt(0) === 'p');
2353    }
2354
2355    var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i;
2356    function localeMeridiem (hours, minutes, isLower) {
2357        if (hours > 11) {
2358            return isLower ? 'pm' : 'PM';
2359        } else {
2360            return isLower ? 'am' : 'AM';
2361        }
2362    }
2363
2364
2365    // MOMENTS
2366
2367    // Setting the hour should keep the time, because the user explicitly
2368    // specified which hour he wants. So trying to maintain the same hour (in
2369    // a new timezone) makes sense. Adding/subtracting hours does not follow
2370    // this rule.
2371    var getSetHour = makeGetSet('Hours', true);
2372
2373    addFormatToken('m', ['mm', 2], 0, 'minute');
2374
2375    // ALIASES
2376
2377    addUnitAlias('minute', 'm');
2378
2379    // PARSING
2380
2381    addRegexToken('m',  match1to2);
2382    addRegexToken('mm', match1to2, match2);
2383    addParseToken(['m', 'mm'], MINUTE);
2384
2385    // MOMENTS
2386
2387    var getSetMinute = makeGetSet('Minutes', false);
2388
2389    addFormatToken('s', ['ss', 2], 0, 'second');
2390
2391    // ALIASES
2392
2393    addUnitAlias('second', 's');
2394
2395    // PARSING
2396
2397    addRegexToken('s',  match1to2);
2398    addRegexToken('ss', match1to2, match2);
2399    addParseToken(['s', 'ss'], SECOND);
2400
2401    // MOMENTS
2402
2403    var getSetSecond = makeGetSet('Seconds', false);
2404
2405    addFormatToken('S', 0, 0, function () {
2406        return ~~(this.millisecond() / 100);
2407    });
2408
2409    addFormatToken(0, ['SS', 2], 0, function () {
2410        return ~~(this.millisecond() / 10);
2411    });
2412
2413    function millisecond__milliseconds (token) {
2414        addFormatToken(0, [token, 3], 0, 'millisecond');
2415    }
2416
2417    millisecond__milliseconds('SSS');
2418    millisecond__milliseconds('SSSS');
2419
2420    // ALIASES
2421
2422    addUnitAlias('millisecond', 'ms');
2423
2424    // PARSING
2425
2426    addRegexToken('S',    match1to3, match1);
2427    addRegexToken('SS',   match1to3, match2);
2428    addRegexToken('SSS',  match1to3, match3);
2429    addRegexToken('SSSS', matchUnsigned);
2430    addParseToken(['S', 'SS', 'SSS', 'SSSS'], function (input, array) {
2431        array[MILLISECOND] = toInt(('0.' + input) * 1000);
2432    });
2433
2434    // MOMENTS
2435
2436    var getSetMillisecond = makeGetSet('Milliseconds', false);
2437
2438    addFormatToken('z',  0, 0, 'zoneAbbr');
2439    addFormatToken('zz', 0, 0, 'zoneName');
2440
2441    // MOMENTS
2442
2443    function getZoneAbbr () {
2444        return this._isUTC ? 'UTC' : '';
2445    }
2446
2447    function getZoneName () {
2448        return this._isUTC ? 'Coordinated Universal Time' : '';
2449    }
2450
2451    var momentPrototype__proto = Moment.prototype;
2452
2453    momentPrototype__proto.add          = add_subtract__add;
2454    momentPrototype__proto.calendar     = moment_calendar__calendar;
2455    momentPrototype__proto.clone        = clone;
2456    momentPrototype__proto.diff         = diff;
2457    momentPrototype__proto.endOf        = endOf;
2458    momentPrototype__proto.format       = moment_format__format;
2459    momentPrototype__proto.from         = from;
2460    momentPrototype__proto.fromNow      = fromNow;
2461    momentPrototype__proto.to           = to;
2462    momentPrototype__proto.toNow        = toNow;
2463    momentPrototype__proto.get          = getSet;
2464    momentPrototype__proto.invalidAt    = invalidAt;
2465    momentPrototype__proto.isAfter      = isAfter;
2466    momentPrototype__proto.isBefore     = isBefore;
2467    momentPrototype__proto.isBetween    = isBetween;
2468    momentPrototype__proto.isSame       = isSame;
2469    momentPrototype__proto.isValid      = moment_valid__isValid;
2470    momentPrototype__proto.lang         = lang;
2471    momentPrototype__proto.locale       = locale;
2472    momentPrototype__proto.localeData   = localeData;
2473    momentPrototype__proto.max          = prototypeMax;
2474    momentPrototype__proto.min          = prototypeMin;
2475    momentPrototype__proto.parsingFlags = parsingFlags;
2476    momentPrototype__proto.set          = getSet;
2477    momentPrototype__proto.startOf      = startOf;
2478    momentPrototype__proto.subtract     = add_subtract__subtract;
2479    momentPrototype__proto.toArray      = toArray;
2480    momentPrototype__proto.toDate       = toDate;
2481    momentPrototype__proto.toISOString  = moment_format__toISOString;
2482    momentPrototype__proto.toJSON       = moment_format__toISOString;
2483    momentPrototype__proto.toString     = toString;
2484    momentPrototype__proto.unix         = unix;
2485    momentPrototype__proto.valueOf      = to_type__valueOf;
2486
2487    // Year
2488    momentPrototype__proto.year       = getSetYear;
2489    momentPrototype__proto.isLeapYear = getIsLeapYear;
2490
2491    // Week Year
2492    momentPrototype__proto.weekYear    = getSetWeekYear;
2493    momentPrototype__proto.isoWeekYear = getSetISOWeekYear;
2494
2495    // Quarter
2496    momentPrototype__proto.quarter = momentPrototype__proto.quarters = getSetQuarter;
2497
2498    // Month
2499    momentPrototype__proto.month       = getSetMonth;
2500    momentPrototype__proto.daysInMonth = getDaysInMonth;
2501
2502    // Week
2503    momentPrototype__proto.week           = momentPrototype__proto.weeks        = getSetWeek;
2504    momentPrototype__proto.isoWeek        = momentPrototype__proto.isoWeeks     = getSetISOWeek;
2505    momentPrototype__proto.weeksInYear    = getWeeksInYear;
2506    momentPrototype__proto.isoWeeksInYear = getISOWeeksInYear;
2507
2508    // Day
2509    momentPrototype__proto.date       = getSetDayOfMonth;
2510    momentPrototype__proto.day        = momentPrototype__proto.days             = getSetDayOfWeek;
2511    momentPrototype__proto.weekday    = getSetLocaleDayOfWeek;
2512    momentPrototype__proto.isoWeekday = getSetISODayOfWeek;
2513    momentPrototype__proto.dayOfYear  = getSetDayOfYear;
2514
2515    // Hour
2516    momentPrototype__proto.hour = momentPrototype__proto.hours = getSetHour;
2517
2518    // Minute
2519    momentPrototype__proto.minute = momentPrototype__proto.minutes = getSetMinute;
2520
2521    // Second
2522    momentPrototype__proto.second = momentPrototype__proto.seconds = getSetSecond;
2523
2524    // Millisecond
2525    momentPrototype__proto.millisecond = momentPrototype__proto.milliseconds = getSetMillisecond;
2526
2527    // Offset
2528    momentPrototype__proto.utcOffset            = getSetOffset;
2529    momentPrototype__proto.utc                  = setOffsetToUTC;
2530    momentPrototype__proto.local                = setOffsetToLocal;
2531    momentPrototype__proto.parseZone            = setOffsetToParsedOffset;
2532    momentPrototype__proto.hasAlignedHourOffset = hasAlignedHourOffset;
2533    momentPrototype__proto.isDST                = isDaylightSavingTime;
2534    momentPrototype__proto.isDSTShifted         = isDaylightSavingTimeShifted;
2535    momentPrototype__proto.isLocal              = isLocal;
2536    momentPrototype__proto.isUtcOffset          = isUtcOffset;
2537    momentPrototype__proto.isUtc                = isUtc;
2538    momentPrototype__proto.isUTC                = isUtc;
2539
2540    // Timezone
2541    momentPrototype__proto.zoneAbbr = getZoneAbbr;
2542    momentPrototype__proto.zoneName = getZoneName;
2543
2544    // Deprecations
2545    momentPrototype__proto.dates  = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth);
2546    momentPrototype__proto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth);
2547    momentPrototype__proto.years  = deprecate('years accessor is deprecated. Use year instead', getSetYear);
2548    momentPrototype__proto.zone   = deprecate('moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779', getSetZone);
2549
2550    var momentPrototype = momentPrototype__proto;
2551
2552    function moment_moment__createUnix (input) {
2553        return local__createLocal(input * 1000);
2554    }
2555
2556    function moment_moment__createInZone () {
2557        return local__createLocal.apply(null, arguments).parseZone();
2558    }
2559
2560    var defaultCalendar = {
2561        sameDay : '[Today at] LT',
2562        nextDay : '[Tomorrow at] LT',
2563        nextWeek : 'dddd [at] LT',
2564        lastDay : '[Yesterday at] LT',
2565        lastWeek : '[Last] dddd [at] LT',
2566        sameElse : 'L'
2567    };
2568
2569    function locale_calendar__calendar (key, mom, now) {
2570        var output = this._calendar[key];
2571        return typeof output === 'function' ? output.call(mom, now) : output;
2572    }
2573
2574    var defaultLongDateFormat = {
2575        LTS  : 'h:mm:ss A',
2576        LT   : 'h:mm A',
2577        L    : 'MM/DD/YYYY',
2578        LL   : 'MMMM D, YYYY',
2579        LLL  : 'MMMM D, YYYY LT',
2580        LLLL : 'dddd, MMMM D, YYYY LT'
2581    };
2582
2583    function longDateFormat (key) {
2584        var output = this._longDateFormat[key];
2585        if (!output && this._longDateFormat[key.toUpperCase()]) {
2586            output = this._longDateFormat[key.toUpperCase()].replace(/MMMM|MM|DD|dddd/g, function (val) {
2587                return val.slice(1);
2588            });
2589            this._longDateFormat[key] = output;
2590        }
2591        return output;
2592    }
2593
2594    var defaultInvalidDate = 'Invalid date';
2595
2596    function invalidDate () {
2597        return this._invalidDate;
2598    }
2599
2600    var defaultOrdinal = '%d';
2601    var defaultOrdinalParse = /\d{1,2}/;
2602
2603    function ordinal (number) {
2604        return this._ordinal.replace('%d', number);
2605    }
2606
2607    function preParsePostFormat (string) {
2608        return string;
2609    }
2610
2611    var defaultRelativeTime = {
2612        future : 'in %s',
2613        past   : '%s ago',
2614        s  : 'a few seconds',
2615        m  : 'a minute',
2616        mm : '%d minutes',
2617        h  : 'an hour',
2618        hh : '%d hours',
2619        d  : 'a day',
2620        dd : '%d days',
2621        M  : 'a month',
2622        MM : '%d months',
2623        y  : 'a year',
2624        yy : '%d years'
2625    };
2626
2627    function relative__relativeTime (number, withoutSuffix, string, isFuture) {
2628        var output = this._relativeTime[string];
2629        return (typeof output === 'function') ?
2630            output(number, withoutSuffix, string, isFuture) :
2631            output.replace(/%d/i, number);
2632    }
2633
2634    function pastFuture (diff, output) {
2635        var format = this._relativeTime[diff > 0 ? 'future' : 'past'];
2636        return typeof format === 'function' ? format(output) : format.replace(/%s/i, output);
2637    }
2638
2639    function locale_set__set (config) {
2640        var prop, i;
2641        for (i in config) {
2642            prop = config[i];
2643            if (typeof prop === 'function') {
2644                this[i] = prop;
2645            } else {
2646                this['_' + i] = prop;
2647            }
2648        }
2649        // Lenient ordinal parsing accepts just a number in addition to
2650        // number + (possibly) stuff coming from _ordinalParseLenient.
2651        this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + (/\d{1,2}/).source);
2652    }
2653
2654    var prototype__proto = Locale.prototype;
2655
2656    prototype__proto._calendar       = defaultCalendar;
2657    prototype__proto.calendar        = locale_calendar__calendar;
2658    prototype__proto._longDateFormat = defaultLongDateFormat;
2659    prototype__proto.longDateFormat  = longDateFormat;
2660    prototype__proto._invalidDate    = defaultInvalidDate;
2661    prototype__proto.invalidDate     = invalidDate;
2662    prototype__proto._ordinal        = defaultOrdinal;
2663    prototype__proto.ordinal         = ordinal;
2664    prototype__proto._ordinalParse   = defaultOrdinalParse;
2665    prototype__proto.preparse        = preParsePostFormat;
2666    prototype__proto.postformat      = preParsePostFormat;
2667    prototype__proto._relativeTime   = defaultRelativeTime;
2668    prototype__proto.relativeTime    = relative__relativeTime;
2669    prototype__proto.pastFuture      = pastFuture;
2670    prototype__proto.set             = locale_set__set;
2671
2672    // Month
2673    prototype__proto.months       =        localeMonths;
2674    prototype__proto._months      = defaultLocaleMonths;
2675    prototype__proto.monthsShort  =        localeMonthsShort;
2676    prototype__proto._monthsShort = defaultLocaleMonthsShort;
2677    prototype__proto.monthsParse  =        localeMonthsParse;
2678
2679    // Week
2680    prototype__proto.week = localeWeek;
2681    prototype__proto._week = defaultLocaleWeek;
2682    prototype__proto.firstDayOfYear = localeFirstDayOfYear;
2683    prototype__proto.firstDayOfWeek = localeFirstDayOfWeek;
2684
2685    // Day of Week
2686    prototype__proto.weekdays       =        localeWeekdays;
2687    prototype__proto._weekdays      = defaultLocaleWeekdays;
2688    prototype__proto.weekdaysMin    =        localeWeekdaysMin;
2689    prototype__proto._weekdaysMin   = defaultLocaleWeekdaysMin;
2690    prototype__proto.weekdaysShort  =        localeWeekdaysShort;
2691    prototype__proto._weekdaysShort = defaultLocaleWeekdaysShort;
2692    prototype__proto.weekdaysParse  =        localeWeekdaysParse;
2693
2694    // Hours
2695    prototype__proto.isPM = localeIsPM;
2696    prototype__proto._meridiemParse = defaultLocaleMeridiemParse;
2697    prototype__proto.meridiem = localeMeridiem;
2698
2699    function lists__get (format, index, field, setter) {
2700        var locale = locale_locales__getLocale();
2701        var utc = create_utc__createUTC().set(setter, index);
2702        return locale[field](utc, format);
2703    }
2704
2705    function list (format, index, field, count, setter) {
2706        if (typeof format === 'number') {
2707            index = format;
2708            format = undefined;
2709        }
2710
2711        format = format || '';
2712
2713        if (index != null) {
2714            return lists__get(format, index, field, setter);
2715        }
2716
2717        var i;
2718        var out = [];
2719        for (i = 0; i < count; i++) {
2720            out[i] = lists__get(format, i, field, setter);
2721        }
2722        return out;
2723    }
2724
2725    function lists__listMonths (format, index) {
2726        return list(format, index, 'months', 12, 'month');
2727    }
2728
2729    function lists__listMonthsShort (format, index) {
2730        return list(format, index, 'monthsShort', 12, 'month');
2731    }
2732
2733    function lists__listWeekdays (format, index) {
2734        return list(format, index, 'weekdays', 7, 'day');
2735    }
2736
2737    function lists__listWeekdaysShort (format, index) {
2738        return list(format, index, 'weekdaysShort', 7, 'day');
2739    }
2740
2741    function lists__listWeekdaysMin (format, index) {
2742        return list(format, index, 'weekdaysMin', 7, 'day');
2743    }
2744
2745    locale_locales__getSetGlobalLocale('en', {
2746        ordinalParse: /\d{1,2}(th|st|nd|rd)/,
2747        ordinal : function (number) {
2748            var b = number % 10,
2749                output = (toInt(number % 100 / 10) === 1) ? 'th' :
2750                (b === 1) ? 'st' :
2751                (b === 2) ? 'nd' :
2752                (b === 3) ? 'rd' : 'th';
2753            return number + output;
2754        }
2755    });
2756
2757    // Side effect imports
2758    utils_hooks__hooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', locale_locales__getSetGlobalLocale);
2759    utils_hooks__hooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', locale_locales__getLocale);
2760
2761    var mathAbs = Math.abs;
2762
2763    function duration_abs__abs () {
2764        var data           = this._data;
2765
2766        this._milliseconds = mathAbs(this._milliseconds);
2767        this._days         = mathAbs(this._days);
2768        this._months       = mathAbs(this._months);
2769
2770        data.milliseconds  = mathAbs(data.milliseconds);
2771        data.seconds       = mathAbs(data.seconds);
2772        data.minutes       = mathAbs(data.minutes);
2773        data.hours         = mathAbs(data.hours);
2774        data.months        = mathAbs(data.months);
2775        data.years         = mathAbs(data.years);
2776
2777        return this;
2778    }
2779
2780    function duration_add_subtract__addSubtract (duration, input, value, direction) {
2781        var other = create__createDuration(input, value);
2782
2783        duration._milliseconds += direction * other._milliseconds;
2784        duration._days         += direction * other._days;
vendor: 10,860 bytes, lines 2785-3082
2785        duration._months       += direction * other._months;
2786
2787        return duration._bubble();
2788    }
2789
2790    // supports only 2.0-style add(1, 's') or add(duration)
2791    function duration_add_subtract__add (input, value) {
2792        return duration_add_subtract__addSubtract(this, input, value, 1);
2793    }
2794
2795    // supports only 2.0-style subtract(1, 's') or subtract(duration)
2796    function duration_add_subtract__subtract (input, value) {
2797        return duration_add_subtract__addSubtract(this, input, value, -1);
2798    }
2799
2800    function bubble () {
2801        var milliseconds = this._milliseconds;
2802        var days         = this._days;
2803        var months       = this._months;
2804        var data         = this._data;
2805        var seconds, minutes, hours, years = 0;
2806
2807        // The following code bubbles up values, see the tests for
2808        // examples of what that means.
2809        data.milliseconds = milliseconds % 1000;
2810
2811        seconds           = absFloor(milliseconds / 1000);
2812        data.seconds      = seconds % 60;
2813
2814        minutes           = absFloor(seconds / 60);
2815        data.minutes      = minutes % 60;
2816
2817        hours             = absFloor(minutes / 60);
2818        data.hours        = hours % 24;
2819
2820        days += absFloor(hours / 24);
2821
2822        // Accurately convert days to years, assume start from year 0.
2823        years = absFloor(daysToYears(days));
2824        days -= absFloor(yearsToDays(years));
2825
2826        // 30 days to a month
2827        // TODO (iskren): Use anchor date (like 1st Jan) to compute this.
2828        months += absFloor(days / 30);
2829        days   %= 30;
2830
2831        // 12 months -> 1 year
2832        years  += absFloor(months / 12);
2833        months %= 12;
2834
2835        data.days   = days;
2836        data.months = months;
2837        data.years  = years;
2838
2839        return this;
2840    }
2841
2842    function daysToYears (days) {
2843        // 400 years have 146097 days (taking into account leap year rules)
2844        return days * 400 / 146097;
2845    }
2846
2847    function yearsToDays (years) {
2848        // years * 365 + absFloor(years / 4) -
2849        //     absFloor(years / 100) + absFloor(years / 400);
2850        return years * 146097 / 400;
2851    }
2852
2853    function as (units) {
2854        var days;
2855        var months;
2856        var milliseconds = this._milliseconds;
2857
2858        units = normalizeUnits(units);
2859
2860        if (units === 'month' || units === 'year') {
2861            days   = this._days   + milliseconds / 864e5;
2862            months = this._months + daysToYears(days) * 12;
2863            return units === 'month' ? months : months / 12;
2864        } else {
2865            // handle milliseconds separately because of floating point math errors (issue #1867)
2866            days = this._days + Math.round(yearsToDays(this._months / 12));
2867            switch (units) {
2868                case 'week'   : return days / 7     + milliseconds / 6048e5;
2869                case 'day'    : return days         + milliseconds / 864e5;
2870                case 'hour'   : return days * 24    + milliseconds / 36e5;
2871                case 'minute' : return days * 1440  + milliseconds / 6e4;
2872                case 'second' : return days * 86400 + milliseconds / 1000;
2873                // Math.floor prevents floating point math errors here
2874                case 'millisecond': return Math.floor(days * 864e5) + milliseconds;
2875                default: throw new Error('Unknown unit ' + units);
2876            }
2877        }
2878    }
2879
2880    // TODO: Use this.as('ms')?
2881    function duration_as__valueOf () {
2882        return (
2883            this._milliseconds +
2884            this._days * 864e5 +
2885            (this._months % 12) * 2592e6 +
2886            toInt(this._months / 12) * 31536e6
2887        );
2888    }
2889
2890    function makeAs (alias) {
2891        return function () {
2892            return this.as(alias);
2893        };
2894    }
2895
2896    var asMilliseconds = makeAs('ms');
2897    var asSeconds      = makeAs('s');
2898    var asMinutes      = makeAs('m');
2899    var asHours        = makeAs('h');
2900    var asDays         = makeAs('d');
2901    var asWeeks        = makeAs('w');
2902    var asMonths       = makeAs('M');
2903    var asYears        = makeAs('y');
2904
2905    function duration_get__get (units) {
2906        units = normalizeUnits(units);
2907        return this[units + 's']();
2908    }
2909
2910    function makeGetter(name) {
2911        return function () {
2912            return this._data[name];
2913        };
2914    }
2915
2916    var duration_get__milliseconds = makeGetter('milliseconds');
2917    var seconds      = makeGetter('seconds');
2918    var minutes      = makeGetter('minutes');
2919    var hours        = makeGetter('hours');
2920    var days         = makeGetter('days');
2921    var duration_get__months       = makeGetter('months');
2922    var years        = makeGetter('years');
2923
2924    function weeks () {
2925        return absFloor(this.days() / 7);
2926    }
2927
2928    var round = Math.round;
2929    var thresholds = {
2930        s: 45,  // seconds to minute
2931        m: 45,  // minutes to hour
2932        h: 22,  // hours to day
2933        d: 26,  // days to month
2934        M: 11   // months to year
2935    };
2936
2937    // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize
2938    function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {
2939        return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);
2940    }
2941
2942    function duration_humanize__relativeTime (posNegDuration, withoutSuffix, locale) {
2943        var duration = create__createDuration(posNegDuration).abs();
2944        var seconds  = round(duration.as('s'));
2945        var minutes  = round(duration.as('m'));
2946        var hours    = round(duration.as('h'));
2947        var days     = round(duration.as('d'));
2948        var months   = round(duration.as('M'));
2949        var years    = round(duration.as('y'));
2950
2951        var a = seconds < thresholds.s && ['s', seconds]  ||
2952                minutes === 1          && ['m']           ||
2953                minutes < thresholds.m && ['mm', minutes] ||
2954                hours   === 1          && ['h']           ||
2955                hours   < thresholds.h && ['hh', hours]   ||
2956                days    === 1          && ['d']           ||
2957                days    < thresholds.d && ['dd', days]    ||
2958                months  === 1          && ['M']           ||
2959                months  < thresholds.M && ['MM', months]  ||
2960                years   === 1          && ['y']           || ['yy', years];
2961
2962        a[2] = withoutSuffix;
2963        a[3] = +posNegDuration > 0;
2964        a[4] = locale;
2965        return substituteTimeAgo.apply(null, a);
2966    }
2967
2968    // This function allows you to set a threshold for relative time strings
2969    function duration_humanize__getSetRelativeTimeThreshold (threshold, limit) {
2970        if (thresholds[threshold] === undefined) {
2971            return false;
2972        }
2973        if (limit === undefined) {
2974            return thresholds[threshold];
2975        }
2976        thresholds[threshold] = limit;
2977        return true;
2978    }
2979
2980    function humanize (withSuffix) {
2981        var locale = this.localeData();
2982        var output = duration_humanize__relativeTime(this, !withSuffix, locale);
2983
2984        if (withSuffix) {
2985            output = locale.pastFuture(+this, output);
2986        }
2987
2988        return locale.postformat(output);
2989    }
2990
2991    var iso_string__abs = Math.abs;
2992
2993    function iso_string__toISOString() {
2994        // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js
2995        var Y = iso_string__abs(this.years());
2996        var M = iso_string__abs(this.months());
2997        var D = iso_string__abs(this.days());
2998        var h = iso_string__abs(this.hours());
2999        var m = iso_string__abs(this.minutes());
3000        var s = iso_string__abs(this.seconds() + this.milliseconds() / 1000);
3001        var total = this.asSeconds();
3002
3003        if (!total) {
3004            // this is the same as C#'s (Noda) and python (isodate)...
3005            // but not other JS (goog.date)
3006            return 'P0D';
3007        }
3008
3009        return (total < 0 ? '-' : '') +
3010            'P' +
3011            (Y ? Y + 'Y' : '') +
3012            (M ? M + 'M' : '') +
3013            (D ? D + 'D' : '') +
3014            ((h || m || s) ? 'T' : '') +
3015            (h ? h + 'H' : '') +
3016            (m ? m + 'M' : '') +
3017            (s ? s + 'S' : '');
3018    }
3019
3020    var duration_prototype__proto = Duration.prototype;
3021
3022    duration_prototype__proto.abs            = duration_abs__abs;
3023    duration_prototype__proto.add            = duration_add_subtract__add;
3024    duration_prototype__proto.subtract       = duration_add_subtract__subtract;
3025    duration_prototype__proto.as             = as;
3026    duration_prototype__proto.asMilliseconds = asMilliseconds;
3027    duration_prototype__proto.asSeconds      = asSeconds;
3028    duration_prototype__proto.asMinutes      = asMinutes;
3029    duration_prototype__proto.asHours        = asHours;
3030    duration_prototype__proto.asDays         = asDays;
3031    duration_prototype__proto.asWeeks        = asWeeks;
3032    duration_prototype__proto.asMonths       = asMonths;
3033    duration_prototype__proto.asYears        = asYears;
3034    duration_prototype__proto.valueOf        = duration_as__valueOf;
3035    duration_prototype__proto._bubble        = bubble;
3036    duration_prototype__proto.get            = duration_get__get;
3037    duration_prototype__proto.milliseconds   = duration_get__milliseconds;
3038    duration_prototype__proto.seconds        = seconds;
3039    duration_prototype__proto.minutes        = minutes;
3040    duration_prototype__proto.hours          = hours;
3041    duration_prototype__proto.days           = days;
3042    duration_prototype__proto.weeks          = weeks;
3043    duration_prototype__proto.months         = duration_get__months;
3044    duration_prototype__proto.years          = years;
3045    duration_prototype__proto.humanize       = humanize;
3046    duration_prototype__proto.toISOString    = iso_string__toISOString;
3047    duration_prototype__proto.toString       = iso_string__toISOString;
3048    duration_prototype__proto.toJSON         = iso_string__toISOString;
3049    duration_prototype__proto.locale         = locale;
3050    duration_prototype__proto.localeData     = localeData;
3051
3052    // Deprecations
3053    duration_prototype__proto.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', iso_string__toISOString);
3054    duration_prototype__proto.lang = lang;
3055
3056    // Side effect imports
3057
3058    addFormatToken('X', 0, 0, 'unix');
3059    addFormatToken('x', 0, 0, 'valueOf');
3060
3061    // PARSING
3062
3063    addRegexToken('x', matchSigned);
3064    addRegexToken('X', matchTimestamp);
3065    addParseToken('X', function (input, array, config) {
3066        config._d = new Date(parseFloat(input, 10) * 1000);
3067    });
3068    addParseToken('x', function (input, array, config) {
3069        config._d = new Date(toInt(input));
3070    });
3071
3072    // Side effect imports
3073
3074    ;
3075
3076    //! moment.js
3077    //! version : 2.10.3
3078    //! authors : Tim Wood, Iskren Chernev, Moment.js contributors
3079    //! license : MIT
3080    //! momentjs.com
3081
3082    utils_hooks__hooks.version = '2.10.3';
vendor: 53,524 bytes, lines 3083-4459
3083
3084    setHookCallback(local__createLocal);
3085
3086    utils_hooks__hooks.fn                    = momentPrototype;
3087    utils_hooks__hooks.min                   = min;
3088    utils_hooks__hooks.max                   = max;
3089    utils_hooks__hooks.utc                   = create_utc__createUTC;
3090    utils_hooks__hooks.unix                  = moment_moment__createUnix;
3091    utils_hooks__hooks.months                = lists__listMonths;
3092    utils_hooks__hooks.isDate                = isDate;
3093    utils_hooks__hooks.locale                = locale_locales__getSetGlobalLocale;
3094    utils_hooks__hooks.invalid               = valid__createInvalid;
3095    utils_hooks__hooks.duration              = create__createDuration;
3096    utils_hooks__hooks.isMoment              = isMoment;
3097    utils_hooks__hooks.weekdays              = lists__listWeekdays;
3098    utils_hooks__hooks.parseZone             = moment_moment__createInZone;
3099    utils_hooks__hooks.localeData            = locale_locales__getLocale;
3100    utils_hooks__hooks.isDuration            = isDuration;
3101    utils_hooks__hooks.monthsShort           = lists__listMonthsShort;
3102    utils_hooks__hooks.weekdaysMin           = lists__listWeekdaysMin;
3103    utils_hooks__hooks.defineLocale          = defineLocale;
3104    utils_hooks__hooks.weekdaysShort         = lists__listWeekdaysShort;
3105    utils_hooks__hooks.normalizeUnits        = normalizeUnits;
3106    utils_hooks__hooks.relativeTimeThreshold = duration_humanize__getSetRelativeTimeThreshold;
3107
3108    var _moment__default = utils_hooks__hooks;
3109
3110    //! moment.js locale configuration
3111    //! locale : afrikaans (af)
3112    //! author : Werner Mollentze : https://github.com/wernerm
3113
3114    var af = _moment__default.defineLocale('af', {
3115        months : 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split('_'),
3116        monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),
3117        weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'),
3118        weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),
3119        weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),
3120        meridiemParse: /vm|nm/i,
3121        isPM : function (input) {
3122            return /^nm$/i.test(input);
3123        },
3124        meridiem : function (hours, minutes, isLower) {
3125            if (hours < 12) {
3126                return isLower ? 'vm' : 'VM';
3127            } else {
3128                return isLower ? 'nm' : 'NM';
3129            }
3130        },
3131        longDateFormat : {
3132            LT : 'HH:mm',
3133            LTS : 'LT:ss',
3134            L : 'DD/MM/YYYY',
3135            LL : 'D MMMM YYYY',
3136            LLL : 'D MMMM YYYY LT',
3137            LLLL : 'dddd, D MMMM YYYY LT'
3138        },
3139        calendar : {
3140            sameDay : '[Vandag om] LT',
3141            nextDay : '[Môre om] LT',
3142            nextWeek : 'dddd [om] LT',
3143            lastDay : '[Gister om] LT',
3144            lastWeek : '[Laas] dddd [om] LT',
3145            sameElse : 'L'
3146        },
3147        relativeTime : {
3148            future : 'oor %s',
3149            past : '%s gelede',
3150            s : '\'n paar sekondes',
3151            m : '\'n minuut',
3152            mm : '%d minute',
3153            h : '\'n uur',
3154            hh : '%d ure',
3155            d : '\'n dag',
3156            dd : '%d dae',
3157            M : '\'n maand',
3158            MM : '%d maande',
3159            y : '\'n jaar',
3160            yy : '%d jaar'
3161        },
3162        ordinalParse: /\d{1,2}(ste|de)/,
3163        ordinal : function (number) {
3164            return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); // Thanks to Joris Röling : https://github.com/jjupiter
3165        },
3166        week : {
3167            dow : 1, // Maandag is die eerste dag van die week.
3168            doy : 4  // Die week wat die 4de Januarie bevat is die eerste week van die jaar.
3169        }
3170    });
3171
3172    //! moment.js locale configuration
3173    //! locale : Moroccan Arabic (ar-ma)
3174    //! author : ElFadili Yassine : https://github.com/ElFadiliY
3175    //! author : Abdel Said : https://github.com/abdelsaid
3176
3177    var ar_ma = _moment__default.defineLocale('ar-ma', {
3178        months : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),
3179        monthsShort : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),
3180        weekdays : 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
3181        weekdaysShort : 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),
3182        weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),
3183        longDateFormat : {
3184            LT : 'HH:mm',
3185            LTS : 'LT:ss',
3186            L : 'DD/MM/YYYY',
3187            LL : 'D MMMM YYYY',
3188            LLL : 'D MMMM YYYY LT',
3189            LLLL : 'dddd D MMMM YYYY LT'
3190        },
3191        calendar : {
3192            sameDay: '[اليوم على الساعة] LT',
3193            nextDay: '[غدا على الساعة] LT',
3194            nextWeek: 'dddd [على الساعة] LT',
3195            lastDay: '[أمس على الساعة] LT',
3196            lastWeek: 'dddd [على الساعة] LT',
3197            sameElse: 'L'
3198        },
3199        relativeTime : {
3200            future : 'في %s',
3201            past : 'منذ %s',
3202            s : 'ثوان',
3203            m : 'دقيقة',
3204            mm : '%d دقائق',
3205            h : 'ساعة',
3206            hh : '%d ساعات',
3207            d : 'يوم',
3208            dd : '%d أيام',
3209            M : 'شهر',
3210            MM : '%d أشهر',
3211            y : 'سنة',
3212            yy : '%d سنوات'
3213        },
3214        week : {
3215            dow : 6, // Saturday is the first day of the week.
3216            doy : 12  // The week that contains Jan 1st is the first week of the year.
3217        }
3218    });
3219
3220    //! moment.js locale configuration
3221    //! locale : Arabic Saudi Arabia (ar-sa)
3222    //! author : Suhail Alkowaileet : https://github.com/xsoh
3223
3224    var ar_sa__symbolMap = {
3225        '1': 'Ù¡',
3226        '2': 'Ù¢',
3227        '3': 'Ù£',
3228        '4': 'Ù¤',
3229        '5': 'Ù¥',
3230        '6': 'Ù¦',
3231        '7': 'Ù§',
3232        '8': 'Ù¨',
3233        '9': 'Ù©',
3234        '0': 'Ù '
3235    }, ar_sa__numberMap = {
3236        'Ù¡': '1',
3237        'Ù¢': '2',
3238        'Ù£': '3',
3239        'Ù¤': '4',
3240        'Ù¥': '5',
3241        'Ù¦': '6',
3242        'Ù§': '7',
3243        'Ù¨': '8',
3244        'Ù©': '9',
3245        'Ù ': '0'
3246    };
3247
3248    var ar_sa = _moment__default.defineLocale('ar-sa', {
3249        months : 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
3250        monthsShort : 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
3251        weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
3252        weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
3253        weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),
3254        longDateFormat : {
3255            LT : 'HH:mm',
3256            LTS : 'HH:mm:ss',
3257            L : 'DD/MM/YYYY',
3258            LL : 'D MMMM YYYY',
3259            LLL : 'D MMMM YYYY LT',
3260            LLLL : 'dddd D MMMM YYYY LT'
3261        },
3262        meridiemParse: /ص|م/,
3263        isPM : function (input) {
3264            return 'م' === input;
3265        },
3266        meridiem : function (hour, minute, isLower) {
3267            if (hour < 12) {
3268                return 'ص';
3269            } else {
3270                return 'م';
3271            }
3272        },
3273        calendar : {
3274            sameDay: '[اليوم على الساعة] LT',
3275            nextDay: '[غدا على الساعة] LT',
3276            nextWeek: 'dddd [على الساعة] LT',
3277            lastDay: '[أمس على الساعة] LT',
3278            lastWeek: 'dddd [على الساعة] LT',
3279            sameElse: 'L'
3280        },
3281        relativeTime : {
3282            future : 'في %s',
3283            past : 'منذ %s',
3284            s : 'ثوان',
3285            m : 'دقيقة',
3286            mm : '%d دقائق',
3287            h : 'ساعة',
3288            hh : '%d ساعات',
3289            d : 'يوم',
3290            dd : '%d أيام',
3291            M : 'شهر',
3292            MM : '%d أشهر',
3293            y : 'سنة',
3294            yy : '%d سنوات'
3295        },
3296        preparse: function (string) {
3297            return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
3298                return ar_sa__numberMap[match];
3299            }).replace(/،/g, ',');
3300        },
3301        postformat: function (string) {
3302            return string.replace(/\d/g, function (match) {
3303                return ar_sa__symbolMap[match];
3304            }).replace(/,/g, '،');
3305        },
3306        week : {
3307            dow : 6, // Saturday is the first day of the week.
3308            doy : 12  // The week that contains Jan 1st is the first week of the year.
3309        }
3310    });
3311
3312    //! moment.js locale configuration
3313    //! locale  : Tunisian Arabic (ar-tn)
3314
3315    var ar_tn = _moment__default.defineLocale('ar-tn', {
3316        months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
3317        monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
3318        weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
3319        weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
3320        weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
3321        longDateFormat: {
3322            LT: 'HH:mm',
3323            LTS: 'LT:ss',
3324            L: 'DD/MM/YYYY',
3325            LL: 'D MMMM YYYY',
3326            LLL: 'D MMMM YYYY LT',
3327            LLLL: 'dddd D MMMM YYYY LT'
3328        },
3329        calendar: {
3330            sameDay: '[اليوم على الساعة] LT',
3331            nextDay: '[غدا على الساعة] LT',
3332            nextWeek: 'dddd [على الساعة] LT',
3333            lastDay: '[أمس على الساعة] LT',
3334            lastWeek: 'dddd [على الساعة] LT',
3335            sameElse: 'L'
3336        },
3337        relativeTime: {
3338            future: 'في %s',
3339            past: 'منذ %s',
3340            s: 'ثوان',
3341            m: 'دقيقة',
3342            mm: '%d دقائق',
3343            h: 'ساعة',
3344            hh: '%d ساعات',
3345            d: 'يوم',
3346            dd: '%d أيام',
3347            M: 'شهر',
3348            MM: '%d أشهر',
3349            y: 'سنة',
3350            yy: '%d سنوات'
3351        },
3352        week: {
3353            dow: 1, // Monday is the first day of the week.
3354            doy: 4 // The week that contains Jan 4th is the first week of the year.
3355        }
3356    });
3357
3358    //! moment.js locale configuration
3359    //! Locale: Arabic (ar)
3360    //! Author: Abdel Said: https://github.com/abdelsaid
3361    //! Changes in months, weekdays: Ahmed Elkhatib
3362    //! Native plural forms: forabi https://github.com/forabi
3363
3364    var ar__symbolMap = {
3365        '1': 'Ù¡',
3366        '2': 'Ù¢',
3367        '3': 'Ù£',
3368        '4': 'Ù¤',
3369        '5': 'Ù¥',
3370        '6': 'Ù¦',
3371        '7': 'Ù§',
3372        '8': 'Ù¨',
3373        '9': 'Ù©',
3374        '0': 'Ù '
3375    }, ar__numberMap = {
3376        'Ù¡': '1',
3377        'Ù¢': '2',
3378        'Ù£': '3',
3379        'Ù¤': '4',
3380        'Ù¥': '5',
3381        'Ù¦': '6',
3382        'Ù§': '7',
3383        'Ù¨': '8',
3384        'Ù©': '9',
3385        'Ù ': '0'
3386    }, pluralForm = function (n) {
3387        return n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5;
3388    }, plurals = {
3389        s : ['أقل من ثانية', 'ثانية واحدة', ['ثانيتان', 'ثانيتين'], '%d ثوان', '%d ثانية', '%d ثانية'],
3390        m : ['أقل من دقيقة', 'دقيقة واحدة', ['دقيقتان', 'دقيقتين'], '%d دقائق', '%d دقيقة', '%d دقيقة'],
3391        h : ['أقل من ساعة', 'ساعة واحدة', ['ساعتان', 'ساعتين'], '%d ساعات', '%d ساعة', '%d ساعة'],
3392        d : ['أقل من يوم', 'يوم واحد', ['يومان', 'يومين'], '%d أيام', '%d يومًا', '%d يوم'],
3393        M : ['أقل من شهر', 'شهر واحد', ['شهران', 'شهرين'], '%d أشهر', '%d شهرا', '%d شهر'],
3394        y : ['أقل من عام', 'عام واحد', ['عامان', 'عامين'], '%d أعوام', '%d عامًا', '%d عام']
3395    }, pluralize = function (u) {
3396        return function (number, withoutSuffix, string, isFuture) {
3397            var f = pluralForm(number),
3398                str = plurals[u][pluralForm(number)];
3399            if (f === 2) {
3400                str = str[withoutSuffix ? 0 : 1];
3401            }
3402            return str.replace(/%d/i, number);
3403        };
3404    }, ar__months = [
3405        'كانون الثاني يناير',
3406        'شباط فبراير',
3407        'آذار مارس',
3408        'نيسان أبريل',
3409        'أيار مايو',
3410        'حزيران يونيو',
3411        'تموز يوليو',
3412        'آب أغسطس',
3413        'أيلول سبتمبر',
3414        'تشرين الأول أكتوبر',
3415        'تشرين الثاني نوفمبر',
3416        'كانون الأول ديسمبر'
3417    ];
3418
3419    var ar = _moment__default.defineLocale('ar', {
3420        months : ar__months,
3421        monthsShort : ar__months,
3422        weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
3423        weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
3424        weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),
3425        longDateFormat : {
3426            LT : 'HH:mm',
3427            LTS : 'HH:mm:ss',
3428            L : 'D/\u200FM/\u200FYYYY',
3429            LL : 'D MMMM YYYY',
3430            LLL : 'D MMMM YYYY LT',
3431            LLLL : 'dddd D MMMM YYYY LT'
3432        },
3433        meridiemParse: /ص|م/,
3434        isPM : function (input) {
3435            return 'م' === input;
3436        },
3437        meridiem : function (hour, minute, isLower) {
3438            if (hour < 12) {
3439                return 'ص';
3440            } else {
3441                return 'م';
3442            }
3443        },
3444        calendar : {
3445            sameDay: '[اليوم عند الساعة] LT',
3446            nextDay: '[غدًا عند الساعة] LT',
3447            nextWeek: 'dddd [عند الساعة] LT',
3448            lastDay: '[أمس عند الساعة] LT',
3449            lastWeek: 'dddd [عند الساعة] LT',
3450            sameElse: 'L'
3451        },
3452        relativeTime : {
3453            future : 'بعد %s',
3454            past : 'منذ %s',
3455            s : pluralize('s'),
3456            m : pluralize('m'),
3457            mm : pluralize('m'),
3458            h : pluralize('h'),
3459            hh : pluralize('h'),
3460            d : pluralize('d'),
3461            dd : pluralize('d'),
3462            M : pluralize('M'),
3463            MM : pluralize('M'),
3464            y : pluralize('y'),
3465            yy : pluralize('y')
3466        },
3467        preparse: function (string) {
3468            return string.replace(/\u200f/g, '').replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
3469                return ar__numberMap[match];
3470            }).replace(/،/g, ',');
3471        },
3472        postformat: function (string) {
3473            return string.replace(/\d/g, function (match) {
3474                return ar__symbolMap[match];
3475            }).replace(/,/g, '،');
3476        },
3477        week : {
3478            dow : 6, // Saturday is the first day of the week.
3479            doy : 12  // The week that contains Jan 1st is the first week of the year.
3480        }
3481    });
3482
3483    //! moment.js locale configuration
3484    //! locale : azerbaijani (az)
3485    //! author : topchiyev : https://github.com/topchiyev
3486
3487    var az__suffixes = {
3488        1: '-inci',
3489        5: '-inci',
3490        8: '-inci',
3491        70: '-inci',
3492        80: '-inci',
3493        2: '-nci',
3494        7: '-nci',
3495        20: '-nci',
3496        50: '-nci',
3497        3: '-üncü',
3498        4: '-üncü',
3499        100: '-üncü',
3500        6: '-ncı',
3501        9: '-uncu',
3502        10: '-uncu',
3503        30: '-uncu',
3504        60: '-ıncı',
3505        90: '-ıncı'
3506    };
3507
3508    var az = _moment__default.defineLocale('az', {
3509        months : 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split('_'),
3510        monthsShort : 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),
3511        weekdays : 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split('_'),
3512        weekdaysShort : 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),
3513        weekdaysMin : 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),
3514        longDateFormat : {
3515            LT : 'HH:mm',
3516            LTS : 'LT:ss',
3517            L : 'DD.MM.YYYY',
3518            LL : 'D MMMM YYYY',
3519            LLL : 'D MMMM YYYY LT',
3520            LLLL : 'dddd, D MMMM YYYY LT'
3521        },
3522        calendar : {
3523            sameDay : '[bugün saat] LT',
3524            nextDay : '[sabah saat] LT',
3525            nextWeek : '[gələn həftə] dddd [saat] LT',
3526            lastDay : '[dünən] LT',
3527            lastWeek : '[keçən həftə] dddd [saat] LT',
3528            sameElse : 'L'
3529        },
3530        relativeTime : {
3531            future : '%s sonra',
3532            past : '%s əvvəl',
3533            s : 'birneçə saniyyə',
3534            m : 'bir dəqiqə',
3535            mm : '%d dəqiqə',
3536            h : 'bir saat',
3537            hh : '%d saat',
3538            d : 'bir gün',
3539            dd : '%d gün',
3540            M : 'bir ay',
3541            MM : '%d ay',
3542            y : 'bir il',
3543            yy : '%d il'
3544        },
3545        meridiemParse: /gecə|səhər|gündüz|axşam/,
3546        isPM : function (input) {
3547            return /^(gündüz|axşam)$/.test(input);
3548        },
3549        meridiem : function (hour, minute, isLower) {
3550            if (hour < 4) {
3551                return 'gecə';
3552            } else if (hour < 12) {
3553                return 'səhər';
3554            } else if (hour < 17) {
3555                return 'gündüz';
3556            } else {
3557                return 'axşam';
3558            }
3559        },
3560        ordinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,
3561        ordinal : function (number) {
3562            if (number === 0) {  // special case for zero
3563                return number + '-ıncı';
3564            }
3565            var a = number % 10,
3566                b = number % 100 - a,
3567                c = number >= 100 ? 100 : null;
3568            return number + (az__suffixes[a] || az__suffixes[b] || az__suffixes[c]);
3569        },
3570        week : {
3571            dow : 1, // Monday is the first day of the week.
3572            doy : 7  // The week that contains Jan 1st is the first week of the year.
3573        }
3574    });
3575
3576    //! moment.js locale configuration
3577    //! locale : belarusian (be)
3578    //! author : Dmitry Demidov : https://github.com/demidov91
3579    //! author: Praleska: http://praleska.pro/
3580    //! Author : Menelion Elensúle : https://github.com/Oire
3581
3582    function be__plural(word, num) {
3583        var forms = word.split('_');
3584        return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);
3585    }
3586    function be__relativeTimeWithPlural(number, withoutSuffix, key) {
3587        var format = {
3588            'mm': withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',
3589            'hh': withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',
3590            'dd': 'дзень_дні_дзён',
3591            'MM': 'месяц_месяцы_месяцаў',
3592            'yy': 'год_гады_гадоў'
3593        };
3594        if (key === 'm') {
3595            return withoutSuffix ? 'хвіліна' : 'хвіліну';
3596        }
3597        else if (key === 'h') {
3598            return withoutSuffix ? 'гадзіна' : 'гадзіну';
3599        }
3600        else {
3601            return number + ' ' + be__plural(format[key], +number);
3602        }
3603    }
3604    function be__monthsCaseReplace(m, format) {
3605        var months = {
3606            'nominative': 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split('_'),
3607            'accusative': 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split('_')
3608        },
3609        nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
3610            'accusative' :
3611            'nominative';
3612        return months[nounCase][m.month()];
3613    }
3614    function be__weekdaysCaseReplace(m, format) {
3615        var weekdays = {
3616            'nominative': 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split('_'),
3617            'accusative': 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split('_')
3618        },
3619        nounCase = (/\[ ?[Вв] ?(?:мінулую|наступную)? ?\] ?dddd/).test(format) ?
3620            'accusative' :
3621            'nominative';
3622        return weekdays[nounCase][m.day()];
3623    }
3624
3625    var be = _moment__default.defineLocale('be', {
3626        months : be__monthsCaseReplace,
3627        monthsShort : 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),
3628        weekdays : be__weekdaysCaseReplace,
3629        weekdaysShort : 'нд_пн_ат_ср_чц_пт_сб'.split('_'),
3630        weekdaysMin : 'нд_пн_ат_ср_чц_пт_сб'.split('_'),
3631        longDateFormat : {
3632            LT : 'HH:mm',
3633            LTS : 'LT:ss',
3634            L : 'DD.MM.YYYY',
3635            LL : 'D MMMM YYYY г.',
3636            LLL : 'D MMMM YYYY г., LT',
3637            LLLL : 'dddd, D MMMM YYYY г., LT'
3638        },
3639        calendar : {
3640            sameDay: '[Сёння ў] LT',
3641            nextDay: '[Заўтра ў] LT',
3642            lastDay: '[Учора ў] LT',
3643            nextWeek: function () {
3644                return '[У] dddd [ў] LT';
3645            },
3646            lastWeek: function () {
3647                switch (this.day()) {
3648                case 0:
3649                case 3:
3650                case 5:
3651                case 6:
3652                    return '[У мінулую] dddd [ў] LT';
3653                case 1:
3654                case 2:
3655                case 4:
3656                    return '[У мінулы] dddd [ў] LT';
3657                }
3658            },
3659            sameElse: 'L'
3660        },
3661        relativeTime : {
3662            future : 'праз %s',
3663            past : '%s таму',
3664            s : 'некалькі секунд',
3665            m : be__relativeTimeWithPlural,
3666            mm : be__relativeTimeWithPlural,
3667            h : be__relativeTimeWithPlural,
3668            hh : be__relativeTimeWithPlural,
3669            d : 'дзень',
3670            dd : be__relativeTimeWithPlural,
3671            M : 'месяц',
3672            MM : be__relativeTimeWithPlural,
3673            y : 'год',
3674            yy : be__relativeTimeWithPlural
3675        },
3676        meridiemParse: /ночы|раніцы|дня|вечара/,
3677        isPM : function (input) {
3678            return /^(дня|вечара)$/.test(input);
3679        },
3680        meridiem : function (hour, minute, isLower) {
3681            if (hour < 4) {
3682                return 'ночы';
3683            } else if (hour < 12) {
3684                return 'раніцы';
3685            } else if (hour < 17) {
3686                return 'дня';
3687            } else {
3688                return 'вечара';
3689            }
3690        },
3691        ordinalParse: /\d{1,2}-(і|ы|га)/,
3692        ordinal: function (number, period) {
3693            switch (period) {
3694            case 'M':
3695            case 'd':
3696            case 'DDD':
3697            case 'w':
3698            case 'W':
3699                return (number % 10 === 2 || number % 10 === 3) && (number % 100 !== 12 && number % 100 !== 13) ? number + '-і' : number + '-ы';
3700            case 'D':
3701                return number + '-га';
3702            default:
3703                return number;
3704            }
3705        },
3706        week : {
3707            dow : 1, // Monday is the first day of the week.
3708            doy : 7  // The week that contains Jan 1st is the first week of the year.
3709        }
3710    });
3711
3712    //! moment.js locale configuration
3713    //! locale : bulgarian (bg)
3714    //! author : Krasen Borisov : https://github.com/kraz
3715
3716    var bg = _moment__default.defineLocale('bg', {
3717        months : 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split('_'),
3718        monthsShort : 'янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'),
3719        weekdays : 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split('_'),
3720        weekdaysShort : 'нед_пон_вто_сря_чет_пет_съб'.split('_'),
3721        weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
3722        longDateFormat : {
3723            LT : 'H:mm',
3724            LTS : 'LT:ss',
3725            L : 'D.MM.YYYY',
3726            LL : 'D MMMM YYYY',
3727            LLL : 'D MMMM YYYY LT',
3728            LLLL : 'dddd, D MMMM YYYY LT'
3729        },
3730        calendar : {
3731            sameDay : '[Днес в] LT',
3732            nextDay : '[Утре в] LT',
3733            nextWeek : 'dddd [в] LT',
3734            lastDay : '[Вчера в] LT',
3735            lastWeek : function () {
3736                switch (this.day()) {
3737                case 0:
3738                case 3:
3739                case 6:
3740                    return '[В изминалата] dddd [в] LT';
3741                case 1:
3742                case 2:
3743                case 4:
3744                case 5:
3745                    return '[В изминалия] dddd [в] LT';
3746                }
3747            },
3748            sameElse : 'L'
3749        },
3750        relativeTime : {
3751            future : 'след %s',
3752            past : 'преди %s',
3753            s : 'няколко секунди',
3754            m : 'минута',
3755            mm : '%d минути',
3756            h : 'час',
3757            hh : '%d часа',
3758            d : 'ден',
3759            dd : '%d дни',
3760            M : 'месец',
3761            MM : '%d месеца',
3762            y : 'година',
3763            yy : '%d години'
3764        },
3765        ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/,
3766        ordinal : function (number) {
3767            var lastDigit = number % 10,
3768                last2Digits = number % 100;
3769            if (number === 0) {
3770                return number + '-ев';
3771            } else if (last2Digits === 0) {
3772                return number + '-ен';
3773            } else if (last2Digits > 10 && last2Digits < 20) {
3774                return number + '-ти';
3775            } else if (lastDigit === 1) {
3776                return number + '-ви';
3777            } else if (lastDigit === 2) {
3778                return number + '-ри';
3779            } else if (lastDigit === 7 || lastDigit === 8) {
3780                return number + '-ми';
3781            } else {
3782                return number + '-ти';
3783            }
3784        },
3785        week : {
3786            dow : 1, // Monday is the first day of the week.
3787            doy : 7  // The week that contains Jan 1st is the first week of the year.
3788        }
3789    });
3790
3791    //! moment.js locale configuration
3792    //! locale : Bengali (bn)
3793    //! author : Kaushik Gandhi : https://github.com/kaushikgandhi
3794
3795    var bn__symbolMap = {
3796        '1': 'à§§',
3797        '2': '২',
3798        '3': 'à§©',
3799        '4': '৪',
3800        '5': 'à§«',
3801        '6': '৬',
3802        '7': 'à§­',
3803        '8': 'à§®',
3804        '9': '৯',
3805        '0': '০'
3806    },
3807    bn__numberMap = {
3808        'à§§': '1',
3809        '২': '2',
3810        'à§©': '3',
3811        '৪': '4',
3812        'à§«': '5',
3813        '৬': '6',
3814        'à§­': '7',
3815        'à§®': '8',
3816        '৯': '9',
3817        '০': '0'
3818    };
3819
3820    var bn = _moment__default.defineLocale('bn', {
3821        months : 'জানুয়ারী_ফেবুয়ারী_মার্চ_এপ্রিল_মে_জুন_জুলাই_অগাস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split('_'),
3822        monthsShort : 'জানু_ফেব_মার্চ_এপর_মে_জুন_জুল_অগ_সেপ্ট_অক্টো_নভ_ডিসেম্'.split('_'),
3823        weekdays : 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পত্তিবার_শুক্রুবার_শনিবার'.split('_'),
3824        weekdaysShort : 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পত্তি_শুক্রু_শনি'.split('_'),
3825        weekdaysMin : 'রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি'.split('_'),
3826        longDateFormat : {
3827            LT : 'A h:mm সময়',
3828            LTS : 'A h:mm:ss সময়',
3829            L : 'DD/MM/YYYY',
3830            LL : 'D MMMM YYYY',
3831            LLL : 'D MMMM YYYY, LT',
3832            LLLL : 'dddd, D MMMM YYYY, LT'
3833        },
3834        calendar : {
3835            sameDay : '[আজ] LT',
3836            nextDay : '[আগামীকাল] LT',
3837            nextWeek : 'dddd, LT',
3838            lastDay : '[গতকাল] LT',
3839            lastWeek : '[গত] dddd, LT',
3840            sameElse : 'L'
3841        },
3842        relativeTime : {
3843            future : '%s পরে',
3844            past : '%s আগে',
3845            s : 'কএক সেকেন্ড',
3846            m : 'এক মিনিট',
3847            mm : '%d মিনিট',
3848            h : 'এক ঘন্টা',
3849            hh : '%d ঘন্টা',
3850            d : 'এক দিন',
3851            dd : '%d দিন',
3852            M : 'এক মাস',
3853            MM : '%d মাস',
3854            y : 'এক বছর',
3855            yy : '%d বছর'
3856        },
3857        preparse: function (string) {
3858            return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {
3859                return bn__numberMap[match];
3860            });
3861        },
3862        postformat: function (string) {
3863            return string.replace(/\d/g, function (match) {
3864                return bn__symbolMap[match];
3865            });
3866        },
3867        meridiemParse: /রাত|শকাল|দুপুর|বিকেল|রাত/,
3868        isPM: function (input) {
3869            return /^(দুপুর|বিকেল|রাত)$/.test(input);
3870        },
3871        //Bengali is a vast language its spoken
3872        //in different forms in various parts of the world.
3873        //I have just generalized with most common one used
3874        meridiem : function (hour, minute, isLower) {
3875            if (hour < 4) {
3876                return 'রাত';
3877            } else if (hour < 10) {
3878                return 'শকাল';
3879            } else if (hour < 17) {
3880                return 'দুপুর';
3881            } else if (hour < 20) {
3882                return 'বিকেল';
3883            } else {
3884                return 'রাত';
3885            }
3886        },
3887        week : {
3888            dow : 0, // Sunday is the first day of the week.
3889            doy : 6  // The week that contains Jan 1st is the first week of the year.
3890        }
3891    });
3892
3893    //! moment.js locale configuration
3894    //! locale : tibetan (bo)
3895    //! author : Thupten N. Chakrishar : https://github.com/vajradog
3896
3897    var bo__symbolMap = {
3898        '1': '༡',
3899        '2': '༢',
3900        '3': '༣',
3901        '4': '༤',
3902        '5': '༥',
3903        '6': '༦',
3904        '7': '༧',
3905        '8': '༨',
3906        '9': '༩',
3907        '0': '༠'
3908    },
3909    bo__numberMap = {
3910        '༡': '1',
3911        '༢': '2',
3912        '༣': '3',
3913        '༤': '4',
3914        '༥': '5',
3915        '༦': '6',
3916        '༧': '7',
3917        '༨': '8',
3918        '༩': '9',
3919        '༠': '0'
3920    };
3921
3922    var bo = _moment__default.defineLocale('bo', {
3923        months : 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split('_'),
3924        monthsShort : 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split('_'),
3925        weekdays : 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split('_'),
3926        weekdaysShort : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'),
3927        weekdaysMin : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'),
3928        longDateFormat : {
3929            LT : 'A h:mm',
3930            LTS : 'LT:ss',
3931            L : 'DD/MM/YYYY',
3932            LL : 'D MMMM YYYY',
3933            LLL : 'D MMMM YYYY, LT',
3934            LLLL : 'dddd, D MMMM YYYY, LT'
3935        },
3936        calendar : {
3937            sameDay : '[དི་རིང] LT',
3938            nextDay : '[སང་ཉིན] LT',
3939            nextWeek : '[བདུན་ཕྲག་རྗེས་མ], LT',
3940            lastDay : '[ཁ་སང] LT',
3941            lastWeek : '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',
3942            sameElse : 'L'
3943        },
3944        relativeTime : {
3945            future : '%s ལ་',
3946            past : '%s སྔན་ལ',
3947            s : 'ལམ་སང',
3948            m : 'སྐར་མ་གཅིག',
3949            mm : '%d སྐར་མ',
3950            h : 'ཆུ་ཚོད་གཅིག',
3951            hh : '%d ཆུ་ཚོད',
3952            d : 'ཉིན་གཅིག',
3953            dd : '%d ཉིན་',
3954            M : 'ཟླ་བ་གཅིག',
3955            MM : '%d ཟླ་བ',
3956            y : 'ལོ་གཅིག',
3957            yy : '%d ལོ'
3958        },
3959        preparse: function (string) {
3960            return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {
3961                return bo__numberMap[match];
3962            });
3963        },
3964        postformat: function (string) {
3965            return string.replace(/\d/g, function (match) {
3966                return bo__symbolMap[match];
3967            });
3968        },
3969        meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,
3970        isPM: function (input) {
3971            return /^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(input);
3972        },
3973        meridiem : function (hour, minute, isLower) {
3974            if (hour < 4) {
3975                return 'མཚན་མོ';
3976            } else if (hour < 10) {
3977                return 'ཞོགས་ཀས';
3978            } else if (hour < 17) {
3979                return 'ཉིན་གུང';
3980            } else if (hour < 20) {
3981                return 'དགོང་དག';
3982            } else {
3983                return 'མཚན་མོ';
3984            }
3985        },
3986        week : {
3987            dow : 0, // Sunday is the first day of the week.
3988            doy : 6  // The week that contains Jan 1st is the first week of the year.
3989        }
3990    });
3991
3992    //! moment.js locale configuration
3993    //! locale : breton (br)
3994    //! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou
3995
3996    function relativeTimeWithMutation(number, withoutSuffix, key) {
3997        var format = {
3998            'mm': 'munutenn',
3999            'MM': 'miz',
4000            'dd': 'devezh'
4001        };
4002        return number + ' ' + mutation(format[key], number);
4003    }
4004    function specialMutationForYears(number) {
4005        switch (lastNumber(number)) {
4006        case 1:
4007        case 3:
4008        case 4:
4009        case 5:
4010        case 9:
4011            return number + ' bloaz';
4012        default:
4013            return number + ' vloaz';
4014        }
4015    }
4016    function lastNumber(number) {
4017        if (number > 9) {
4018            return lastNumber(number % 10);
4019        }
4020        return number;
4021    }
4022    function mutation(text, number) {
4023        if (number === 2) {
4024            return softMutation(text);
4025        }
4026        return text;
4027    }
4028    function softMutation(text) {
4029        var mutationTable = {
4030            'm': 'v',
4031            'b': 'v',
4032            'd': 'z'
4033        };
4034        if (mutationTable[text.charAt(0)] === undefined) {
4035            return text;
4036        }
4037        return mutationTable[text.charAt(0)] + text.substring(1);
4038    }
4039
4040    var br = _moment__default.defineLocale('br', {
4041        months : 'Genver_C\'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split('_'),
4042        monthsShort : 'Gen_C\'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),
4043        weekdays : 'Sul_Lun_Meurzh_Merc\'her_Yaou_Gwener_Sadorn'.split('_'),
4044        weekdaysShort : 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),
4045        weekdaysMin : 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),
4046        longDateFormat : {
4047            LT : 'h[e]mm A',
4048            LTS : 'h[e]mm:ss A',
4049            L : 'DD/MM/YYYY',
4050            LL : 'D [a viz] MMMM YYYY',
4051            LLL : 'D [a viz] MMMM YYYY LT',
4052            LLLL : 'dddd, D [a viz] MMMM YYYY LT'
4053        },
4054        calendar : {
4055            sameDay : '[Hiziv da] LT',
4056            nextDay : '[Warc\'hoazh da] LT',
4057            nextWeek : 'dddd [da] LT',
4058            lastDay : '[Dec\'h da] LT',
4059            lastWeek : 'dddd [paset da] LT',
4060            sameElse : 'L'
4061        },
4062        relativeTime : {
4063            future : 'a-benn %s',
4064            past : '%s \'zo',
4065            s : 'un nebeud segondennoù',
4066            m : 'ur vunutenn',
4067            mm : relativeTimeWithMutation,
4068            h : 'un eur',
4069            hh : '%d eur',
4070            d : 'un devezh',
4071            dd : relativeTimeWithMutation,
4072            M : 'ur miz',
4073            MM : relativeTimeWithMutation,
4074            y : 'ur bloaz',
4075            yy : specialMutationForYears
4076        },
4077        ordinalParse: /\d{1,2}(añ|vet)/,
4078        ordinal : function (number) {
4079            var output = (number === 1) ? 'añ' : 'vet';
4080            return number + output;
4081        },
4082        week : {
4083            dow : 1, // Monday is the first day of the week.
4084            doy : 4  // The week that contains Jan 4th is the first week of the year.
4085        }
4086    });
4087
4088    //! moment.js locale configuration
4089    //! locale : bosnian (bs)
4090    //! author : Nedim Cholich : https://github.com/frontyard
4091    //! based on (hr) translation by Bojan Marković
4092
4093    function bs__translate(number, withoutSuffix, key) {
4094        var result = number + ' ';
4095        switch (key) {
4096        case 'm':
4097            return withoutSuffix ? 'jedna minuta' : 'jedne minute';
4098        case 'mm':
4099            if (number === 1) {
4100                result += 'minuta';
4101            } else if (number === 2 || number === 3 || number === 4) {
4102                result += 'minute';
4103            } else {
4104                result += 'minuta';
4105            }
4106            return result;
4107        case 'h':
4108            return withoutSuffix ? 'jedan sat' : 'jednog sata';
4109        case 'hh':
4110            if (number === 1) {
4111                result += 'sat';
4112            } else if (number === 2 || number === 3 || number === 4) {
4113                result += 'sata';
4114            } else {
4115                result += 'sati';
4116            }
4117            return result;
4118        case 'dd':
4119            if (number === 1) {
4120                result += 'dan';
4121            } else {
4122                result += 'dana';
4123            }
4124            return result;
4125        case 'MM':
4126            if (number === 1) {
4127                result += 'mjesec';
4128            } else if (number === 2 || number === 3 || number === 4) {
4129                result += 'mjeseca';
4130            } else {
4131                result += 'mjeseci';
4132            }
4133            return result;
4134        case 'yy':
4135            if (number === 1) {
4136                result += 'godina';
4137            } else if (number === 2 || number === 3 || number === 4) {
4138                result += 'godine';
4139            } else {
4140                result += 'godina';
4141            }
4142            return result;
4143        }
4144    }
4145
4146    var bs = _moment__default.defineLocale('bs', {
4147        months : 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split('_'),
4148        monthsShort : 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split('_'),
4149        weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),
4150        weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),
4151        weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'),
4152        longDateFormat : {
4153            LT : 'H:mm',
4154            LTS : 'LT:ss',
4155            L : 'DD. MM. YYYY',
4156            LL : 'D. MMMM YYYY',
4157            LLL : 'D. MMMM YYYY LT',
4158            LLLL : 'dddd, D. MMMM YYYY LT'
4159        },
4160        calendar : {
4161            sameDay  : '[danas u] LT',
4162            nextDay  : '[sutra u] LT',
4163            nextWeek : function () {
4164                switch (this.day()) {
4165                case 0:
4166                    return '[u] [nedjelju] [u] LT';
4167                case 3:
4168                    return '[u] [srijedu] [u] LT';
4169                case 6:
4170                    return '[u] [subotu] [u] LT';
4171                case 1:
4172                case 2:
4173                case 4:
4174                case 5:
4175                    return '[u] dddd [u] LT';
4176                }
4177            },
4178            lastDay  : '[jučer u] LT',
4179            lastWeek : function () {
4180                switch (this.day()) {
4181                case 0:
4182                case 3:
4183                    return '[prošlu] dddd [u] LT';
4184                case 6:
4185                    return '[prošle] [subote] [u] LT';
4186                case 1:
4187                case 2:
4188                case 4:
4189                case 5:
4190                    return '[prošli] dddd [u] LT';
4191                }
4192            },
4193            sameElse : 'L'
4194        },
4195        relativeTime : {
4196            future : 'za %s',
4197            past   : 'prije %s',
4198            s      : 'par sekundi',
4199            m      : bs__translate,
4200            mm     : bs__translate,
4201            h      : bs__translate,
4202            hh     : bs__translate,
4203            d      : 'dan',
4204            dd     : bs__translate,
4205            M      : 'mjesec',
4206            MM     : bs__translate,
4207            y      : 'godinu',
4208            yy     : bs__translate
4209        },
4210        ordinalParse: /\d{1,2}\./,
4211        ordinal : '%d.',
4212        week : {
4213            dow : 1, // Monday is the first day of the week.
4214            doy : 7  // The week that contains Jan 1st is the first week of the year.
4215        }
4216    });
4217
4218    //! moment.js locale configuration
4219    //! locale : catalan (ca)
4220    //! author : Juan G. Hurtado : https://github.com/juanghurtado
4221
4222    var ca = _moment__default.defineLocale('ca', {
4223        months : 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split('_'),
4224        monthsShort : 'gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.'.split('_'),
4225        weekdays : 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split('_'),
4226        weekdaysShort : 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),
4227        weekdaysMin : 'Dg_Dl_Dt_Dc_Dj_Dv_Ds'.split('_'),
4228        longDateFormat : {
4229            LT : 'H:mm',
4230            LTS : 'LT:ss',
4231            L : 'DD/MM/YYYY',
4232            LL : 'D MMMM YYYY',
4233            LLL : 'D MMMM YYYY LT',
4234            LLLL : 'dddd D MMMM YYYY LT'
4235        },
4236        calendar : {
4237            sameDay : function () {
4238                return '[avui a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4239            },
4240            nextDay : function () {
4241                return '[demà a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4242            },
4243            nextWeek : function () {
4244                return 'dddd [a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4245            },
4246            lastDay : function () {
4247                return '[ahir a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4248            },
4249            lastWeek : function () {
4250                return '[el] dddd [passat a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4251            },
4252            sameElse : 'L'
4253        },
4254        relativeTime : {
4255            future : 'en %s',
4256            past : 'fa %s',
4257            s : 'uns segons',
4258            m : 'un minut',
4259            mm : '%d minuts',
4260            h : 'una hora',
4261            hh : '%d hores',
4262            d : 'un dia',
4263            dd : '%d dies',
4264            M : 'un mes',
4265            MM : '%d mesos',
4266            y : 'un any',
4267            yy : '%d anys'
4268        },
4269        ordinalParse: /\d{1,2}(r|n|t|è|a)/,
4270        ordinal : function (number, period) {
4271            var output = (number === 1) ? 'r' :
4272                (number === 2) ? 'n' :
4273                (number === 3) ? 'r' :
4274                (number === 4) ? 't' : 'è';
4275            if (period === 'w' || period === 'W') {
4276                output = 'a';
4277            }
4278            return number + output;
4279        },
4280        week : {
4281            dow : 1, // Monday is the first day of the week.
4282            doy : 4  // The week that contains Jan 4th is the first week of the year.
4283        }
4284    });
4285
4286    //! moment.js locale configuration
4287    //! locale : czech (cs)
4288    //! author : petrbela : https://github.com/petrbela
4289
4290    var cs__months = 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split('_'),
4291        cs__monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_');
4292    function cs__plural(n) {
4293        return (n > 1) && (n < 5) && (~~(n / 10) !== 1);
4294    }
4295    function cs__translate(number, withoutSuffix, key, isFuture) {
4296        var result = number + ' ';
4297        switch (key) {
4298        case 's':  // a few seconds / in a few seconds / a few seconds ago
4299            return (withoutSuffix || isFuture) ? 'pár sekund' : 'pár sekundami';
4300        case 'm':  // a minute / in a minute / a minute ago
4301            return withoutSuffix ? 'minuta' : (isFuture ? 'minutu' : 'minutou');
4302        case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago
4303            if (withoutSuffix || isFuture) {
4304                return result + (cs__plural(number) ? 'minuty' : 'minut');
4305            } else {
4306                return result + 'minutami';
4307            }
4308            break;
4309        case 'h':  // an hour / in an hour / an hour ago
4310            return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');
4311        case 'hh': // 9 hours / in 9 hours / 9 hours ago
4312            if (withoutSuffix || isFuture) {
4313                return result + (cs__plural(number) ? 'hodiny' : 'hodin');
4314            } else {
4315                return result + 'hodinami';
4316            }
4317            break;
4318        case 'd':  // a day / in a day / a day ago
4319            return (withoutSuffix || isFuture) ? 'den' : 'dnem';
4320        case 'dd': // 9 days / in 9 days / 9 days ago
4321            if (withoutSuffix || isFuture) {
4322                return result + (cs__plural(number) ? 'dny' : 'dní');
4323            } else {
4324                return result + 'dny';
4325            }
4326            break;
4327        case 'M':  // a month / in a month / a month ago
4328            return (withoutSuffix || isFuture) ? 'měsíc' : 'měsícem';
4329        case 'MM': // 9 months / in 9 months / 9 months ago
4330            if (withoutSuffix || isFuture) {
4331                return result + (cs__plural(number) ? 'měsíce' : 'měsíců');
4332            } else {
4333                return result + 'měsíci';
4334            }
4335            break;
4336        case 'y':  // a year / in a year / a year ago
4337            return (withoutSuffix || isFuture) ? 'rok' : 'rokem';
4338        case 'yy': // 9 years / in 9 years / 9 years ago
4339            if (withoutSuffix || isFuture) {
4340                return result + (cs__plural(number) ? 'roky' : 'let');
4341            } else {
4342                return result + 'lety';
4343            }
4344            break;
4345        }
4346    }
4347
4348    var cs = _moment__default.defineLocale('cs', {
4349        months : cs__months,
4350        monthsShort : cs__monthsShort,
4351        monthsParse : (function (months, monthsShort) {
4352            var i, _monthsParse = [];
4353            for (i = 0; i < 12; i++) {
4354                // use custom parser to solve problem with July (červenec)
4355                _monthsParse[i] = new RegExp('^' + months[i] + '$|^' + monthsShort[i] + '$', 'i');
4356            }
4357            return _monthsParse;
4358        }(cs__months, cs__monthsShort)),
4359        weekdays : 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),
4360        weekdaysShort : 'ne_po_út_st_čt_pá_so'.split('_'),
4361        weekdaysMin : 'ne_po_út_st_čt_pá_so'.split('_'),
4362        longDateFormat : {
4363            LT: 'H:mm',
4364            LTS : 'LT:ss',
4365            L : 'DD.MM.YYYY',
4366            LL : 'D. MMMM YYYY',
4367            LLL : 'D. MMMM YYYY LT',
4368            LLLL : 'dddd D. MMMM YYYY LT'
4369        },
4370        calendar : {
4371            sameDay: '[dnes v] LT',
4372            nextDay: '[zítra v] LT',
4373            nextWeek: function () {
4374                switch (this.day()) {
4375                case 0:
4376                    return '[v neděli v] LT';
4377                case 1:
4378                case 2:
4379                    return '[v] dddd [v] LT';
4380                case 3:
4381                    return '[ve středu v] LT';
4382                case 4:
4383                    return '[ve čtvrtek v] LT';
4384                case 5:
4385                    return '[v pátek v] LT';
4386                case 6:
4387                    return '[v sobotu v] LT';
4388                }
4389            },
4390            lastDay: '[včera v] LT',
4391            lastWeek: function () {
4392                switch (this.day()) {
4393                case 0:
4394                    return '[minulou neděli v] LT';
4395                case 1:
4396                case 2:
4397                    return '[minulé] dddd [v] LT';
4398                case 3:
4399                    return '[minulou středu v] LT';
4400                case 4:
4401                case 5:
4402                    return '[minulý] dddd [v] LT';
4403                case 6:
4404                    return '[minulou sobotu v] LT';
4405                }
4406            },
4407            sameElse: 'L'
4408        },
4409        relativeTime : {
4410            future : 'za %s',
4411            past : 'před %s',
4412            s : cs__translate,
4413            m : cs__translate,
4414            mm : cs__translate,
4415            h : cs__translate,
4416            hh : cs__translate,
4417            d : cs__translate,
4418            dd : cs__translate,
4419            M : cs__translate,
4420            MM : cs__translate,
4421            y : cs__translate,
4422            yy : cs__translate
4423        },
4424        ordinalParse : /\d{1,2}\./,
4425        ordinal : '%d.',
4426        week : {
4427            dow : 1, // Monday is the first day of the week.
4428            doy : 4  // The week that contains Jan 4th is the first week of the year.
4429        }
4430    });
4431
4432    //! moment.js locale configuration
4433    //! locale : chuvash (cv)
4434    //! author : Anatoly Mironov : https://github.com/mirontoli
4435
4436    var cv = _moment__default.defineLocale('cv', {
4437        months : 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split('_'),
4438        monthsShort : 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),
4439        weekdays : 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split('_'),
4440        weekdaysShort : 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'),
4441        weekdaysMin : 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'),
4442        longDateFormat : {
4443            LT : 'HH:mm',
4444            LTS : 'LT:ss',
4445            L : 'DD-MM-YYYY',
4446            LL : 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',
4447            LLL : 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], LT',
4448            LLLL : 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], LT'
4449        },
4450        calendar : {
4451            sameDay: '[Паян] LT [сехетре]',
4452            nextDay: '[Ыран] LT [сехетре]',
4453            lastDay: '[Ӗнер] LT [сехетре]',
4454            nextWeek: '[Ҫитес] dddd LT [сехетре]',
4455            lastWeek: '[Иртнӗ] dddd LT [сехетре]',
4456            sameElse: 'L'
4457        },
4458        relativeTime : {
4459            future : function (output) {
4460                var affix = /сехет$/i.exec(output) ? 'рен' : /ҫул$/i.exec(output) ? 'тан' : 'ран';
4461                return output + affix;
4462            },
4463            past : '%s каялла',
4464            s : 'пӗр-ик ҫеккунт',
4465            m : 'пӗр минут',
4466            mm : '%d минут',
4467            h : 'пӗр сехет',
4468            hh : '%d сехет',
4469            d : 'пӗр кун',
4470            dd : '%d кун',
4471            M : 'пӗр уйӑх',
4472            MM : '%d уйӑх',
4473            y : 'пӗр ҫул',
4474            yy : '%d ҫул'
4475        },
4476        ordinalParse: /\d{1,2}-мӗш/,
4477        ordinal : '%d-мӗш',
4478        week : {
4479            dow : 1, // Monday is the first day of the week.
4480            doy : 7  // The week that contains Jan 1st is the first week of the year.
4481        }
4482    });
4483
4484    //! moment.js locale configuration
4485    //! locale : Welsh (cy)
4486    //! author : Robert Allen
4487
4488    var cy = _moment__default.defineLocale('cy', {
4489        months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split('_'),
4490        monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split('_'),
4491        weekdays: 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split('_'),
4492        weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),
4493        weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),
4494        // time formats are the same as en-gb
4495        longDateFormat: {
4496            LT: 'HH:mm',
4497            LTS : 'LT:ss',
4498            L: 'DD/MM/YYYY',
4499            LL: 'D MMMM YYYY',
4500            LLL: 'D MMMM YYYY LT',
4501            LLLL: 'dddd, D MMMM YYYY LT'
4502        },
4503        calendar: {
4504            sameDay: '[Heddiw am] LT',
4505            nextDay: '[Yfory am] LT',
4506            nextWeek: 'dddd [am] LT',
4507            lastDay: '[Ddoe am] LT',
4508            lastWeek: 'dddd [diwethaf am] LT',
4509            sameElse: 'L'
4510        },
4511        relativeTime: {
4512            future: 'mewn %s',
4513            past: '%s yn ôl',
4514            s: 'ychydig eiliadau',
4515            m: 'munud',
4516            mm: '%d munud',
4517            h: 'awr',
4518            hh: '%d awr',
4519            d: 'diwrnod',
4520            dd: '%d diwrnod',
4521            M: 'mis',
4522            MM: '%d mis',
4523            y: 'blwyddyn',
4524            yy: '%d flynedd'
4525        },
4526        ordinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,
4527        // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh
4528        ordinal: function (number) {
4529            var b = number,
4530                output = '',
4531                lookup = [
vendor: 116,534 bytes, lines 4532-7551
4532                    '', 'af', 'il', 'ydd', 'ydd', 'ed', 'ed', 'ed', 'fed', 'fed', 'fed', // 1af to 10fed
4533                    'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'fed' // 11eg to 20fed
4534                ];
4535            if (b > 20) {
4536                if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {
4537                    output = 'fed'; // not 30ain, 70ain or 90ain
4538                } else {
4539                    output = 'ain';
4540                }
4541            } else if (b > 0) {
4542                output = lookup[b];
4543            }
4544            return number + output;
4545        },
4546        week : {
4547            dow : 1, // Monday is the first day of the week.
4548            doy : 4  // The week that contains Jan 4th is the first week of the year.
4549        }
4550    });
4551
4552    //! moment.js locale configuration
4553    //! locale : danish (da)
4554    //! author : Ulrik Nielsen : https://github.com/mrbase
4555
4556    var da = _moment__default.defineLocale('da', {
4557        months : 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split('_'),
4558        monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),
4559        weekdays : 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),
4560        weekdaysShort : 'søn_man_tir_ons_tor_fre_lør'.split('_'),
4561        weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'),
4562        longDateFormat : {
4563            LT : 'HH:mm',
4564            LTS : 'LT:ss',
4565            L : 'DD/MM/YYYY',
4566            LL : 'D. MMMM YYYY',
4567            LLL : 'D. MMMM YYYY LT',
4568            LLLL : 'dddd [d.] D. MMMM YYYY LT'
4569        },
4570        calendar : {
4571            sameDay : '[I dag kl.] LT',
4572            nextDay : '[I morgen kl.] LT',
4573            nextWeek : 'dddd [kl.] LT',
4574            lastDay : '[I går kl.] LT',
4575            lastWeek : '[sidste] dddd [kl] LT',
4576            sameElse : 'L'
4577        },
4578        relativeTime : {
4579            future : 'om %s',
4580            past : '%s siden',
4581            s : 'få sekunder',
4582            m : 'et minut',
4583            mm : '%d minutter',
4584            h : 'en time',
4585            hh : '%d timer',
4586            d : 'en dag',
4587            dd : '%d dage',
4588            M : 'en måned',
4589            MM : '%d måneder',
4590            y : 'et år',
4591            yy : '%d år'
4592        },
4593        ordinalParse: /\d{1,2}\./,
4594        ordinal : '%d.',
4595        week : {
4596            dow : 1, // Monday is the first day of the week.
4597            doy : 4  // The week that contains Jan 4th is the first week of the year.
4598        }
4599    });
4600
4601    //! moment.js locale configuration
4602    //! locale : austrian german (de-at)
4603    //! author : lluchs : https://github.com/lluchs
4604    //! author: Menelion Elensúle: https://github.com/Oire
4605    //! author : Martin Groller : https://github.com/MadMG
4606
4607    function de_at__processRelativeTime(number, withoutSuffix, key, isFuture) {
4608        var format = {
4609            'm': ['eine Minute', 'einer Minute'],
4610            'h': ['eine Stunde', 'einer Stunde'],
4611            'd': ['ein Tag', 'einem Tag'],
4612            'dd': [number + ' Tage', number + ' Tagen'],
4613            'M': ['ein Monat', 'einem Monat'],
4614            'MM': [number + ' Monate', number + ' Monaten'],
4615            'y': ['ein Jahr', 'einem Jahr'],
4616            'yy': [number + ' Jahre', number + ' Jahren']
4617        };
4618        return withoutSuffix ? format[key][0] : format[key][1];
4619    }
4620
4621    var de_at = _moment__default.defineLocale('de-at', {
4622        months : 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),
4623        monthsShort : 'Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),
4624        weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),
4625        weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),
4626        weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),
4627        longDateFormat : {
4628            LT: 'HH:mm',
4629            LTS: 'HH:mm:ss',
4630            L : 'DD.MM.YYYY',
4631            LL : 'D. MMMM YYYY',
4632            LLL : 'D. MMMM YYYY LT',
4633            LLLL : 'dddd, D. MMMM YYYY LT'
4634        },
4635        calendar : {
4636            sameDay: '[Heute um] LT [Uhr]',
4637            sameElse: 'L',
4638            nextDay: '[Morgen um] LT [Uhr]',
4639            nextWeek: 'dddd [um] LT [Uhr]',
4640            lastDay: '[Gestern um] LT [Uhr]',
4641            lastWeek: '[letzten] dddd [um] LT [Uhr]'
4642        },
4643        relativeTime : {
4644            future : 'in %s',
4645            past : 'vor %s',
4646            s : 'ein paar Sekunden',
4647            m : de_at__processRelativeTime,
4648            mm : '%d Minuten',
4649            h : de_at__processRelativeTime,
4650            hh : '%d Stunden',
4651            d : de_at__processRelativeTime,
4652            dd : de_at__processRelativeTime,
4653            M : de_at__processRelativeTime,
4654            MM : de_at__processRelativeTime,
4655            y : de_at__processRelativeTime,
4656            yy : de_at__processRelativeTime
4657        },
4658        ordinalParse: /\d{1,2}\./,
4659        ordinal : '%d.',
4660        week : {
4661            dow : 1, // Monday is the first day of the week.
4662            doy : 4  // The week that contains Jan 4th is the first week of the year.
4663        }
4664    });
4665
4666    //! moment.js locale configuration
4667    //! locale : german (de)
4668    //! author : lluchs : https://github.com/lluchs
4669    //! author: Menelion Elensúle: https://github.com/Oire
4670
4671    function de__processRelativeTime(number, withoutSuffix, key, isFuture) {
4672        var format = {
4673            'm': ['eine Minute', 'einer Minute'],
4674            'h': ['eine Stunde', 'einer Stunde'],
4675            'd': ['ein Tag', 'einem Tag'],
4676            'dd': [number + ' Tage', number + ' Tagen'],
4677            'M': ['ein Monat', 'einem Monat'],
4678            'MM': [number + ' Monate', number + ' Monaten'],
4679            'y': ['ein Jahr', 'einem Jahr'],
4680            'yy': [number + ' Jahre', number + ' Jahren']
4681        };
4682        return withoutSuffix ? format[key][0] : format[key][1];
4683    }
4684
4685    var de = _moment__default.defineLocale('de', {
4686        months : 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),
4687        monthsShort : 'Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),
4688        weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),
4689        weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),
4690        weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),
4691        longDateFormat : {
4692            LT: 'HH:mm',
4693            LTS: 'HH:mm:ss',
4694            L : 'DD.MM.YYYY',
4695            LL : 'D. MMMM YYYY',
4696            LLL : 'D. MMMM YYYY LT',
4697            LLLL : 'dddd, D. MMMM YYYY LT'
4698        },
4699        calendar : {
4700            sameDay: '[Heute um] LT [Uhr]',
4701            sameElse: 'L',
4702            nextDay: '[Morgen um] LT [Uhr]',
4703            nextWeek: 'dddd [um] LT [Uhr]',
4704            lastDay: '[Gestern um] LT [Uhr]',
4705            lastWeek: '[letzten] dddd [um] LT [Uhr]'
4706        },
4707        relativeTime : {
4708            future : 'in %s',
4709            past : 'vor %s',
4710            s : 'ein paar Sekunden',
4711            m : de__processRelativeTime,
4712            mm : '%d Minuten',
4713            h : de__processRelativeTime,
4714            hh : '%d Stunden',
4715            d : de__processRelativeTime,
4716            dd : de__processRelativeTime,
4717            M : de__processRelativeTime,
4718            MM : de__processRelativeTime,
4719            y : de__processRelativeTime,
4720            yy : de__processRelativeTime
4721        },
4722        ordinalParse: /\d{1,2}\./,
4723        ordinal : '%d.',
4724        week : {
4725            dow : 1, // Monday is the first day of the week.
4726            doy : 4  // The week that contains Jan 4th is the first week of the year.
4727        }
4728    });
4729
4730    //! moment.js locale configuration
4731    //! locale : modern greek (el)
4732    //! author : Aggelos Karalias : https://github.com/mehiel
4733
4734    var el = _moment__default.defineLocale('el', {
4735        monthsNominativeEl : 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split('_'),
4736        monthsGenitiveEl : 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split('_'),
4737        months : function (momentToFormat, format) {
4738            if (/D/.test(format.substring(0, format.indexOf('MMMM')))) { // if there is a day number before 'MMMM'
4739                return this._monthsGenitiveEl[momentToFormat.month()];
4740            } else {
4741                return this._monthsNominativeEl[momentToFormat.month()];
4742            }
4743        },
4744        monthsShort : 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'),
4745        weekdays : 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split('_'),
4746        weekdaysShort : 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'),
4747        weekdaysMin : 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'),
4748        meridiem : function (hours, minutes, isLower) {
4749            if (hours > 11) {
4750                return isLower ? 'μμ' : 'ΜΜ';
4751            } else {
4752                return isLower ? 'πμ' : 'ΠΜ';
4753            }
4754        },
4755        isPM : function (input) {
4756            return ((input + '').toLowerCase()[0] === 'μ');
4757        },
4758        meridiemParse : /[ΠΜ]\.?Μ?\.?/i,
4759        longDateFormat : {
4760            LT : 'h:mm A',
4761            LTS : 'h:mm:ss A',
4762            L : 'DD/MM/YYYY',
4763            LL : 'D MMMM YYYY',
4764            LLL : 'D MMMM YYYY LT',
4765            LLLL : 'dddd, D MMMM YYYY LT'
4766        },
4767        calendarEl : {
4768            sameDay : '[Σήμερα {}] LT',
4769            nextDay : '[Αύριο {}] LT',
4770            nextWeek : 'dddd [{}] LT',
4771            lastDay : '[Χθες {}] LT',
4772            lastWeek : function () {
4773                switch (this.day()) {
4774                    case 6:
4775                        return '[το προηγούμενο] dddd [{}] LT';
4776                    default:
4777                        return '[την προηγούμενη] dddd [{}] LT';
4778                }
4779            },
4780            sameElse : 'L'
4781        },
4782        calendar : function (key, mom) {
4783            var output = this._calendarEl[key],
4784                hours = mom && mom.hours();
4785            if (typeof output === 'function') {
4786                output = output.apply(mom);
4787            }
4788            return output.replace('{}', (hours % 12 === 1 ? 'στη' : 'στις'));
4789        },
4790        relativeTime : {
4791            future : 'σε %s',
4792            past : '%s πριν',
4793            s : 'λίγα δευτερόλεπτα',
4794            m : 'ένα λεπτό',
4795            mm : '%d λεπτά',
4796            h : 'μία ώρα',
4797            hh : '%d ώρες',
4798            d : 'μία μέρα',
4799            dd : '%d μέρες',
4800            M : 'ένας μήνας',
4801            MM : '%d μήνες',
4802            y : 'ένας χρόνος',
4803            yy : '%d χρόνια'
4804        },
4805        ordinalParse: /\d{1,2}η/,
4806        ordinal: '%dη',
4807        week : {
4808            dow : 1, // Monday is the first day of the week.
4809            doy : 4  // The week that contains Jan 4st is the first week of the year.
4810        }
4811    });
4812
4813    //! moment.js locale configuration
4814    //! locale : australian english (en-au)
4815
4816    var en_au = _moment__default.defineLocale('en-au', {
4817        months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),
4818        monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
4819        weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
4820        weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
4821        weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
4822        longDateFormat : {
4823            LT : 'h:mm A',
4824            LTS : 'h:mm:ss A',
4825            L : 'DD/MM/YYYY',
4826            LL : 'D MMMM YYYY',
4827            LLL : 'D MMMM YYYY LT',
4828            LLLL : 'dddd, D MMMM YYYY LT'
4829        },
4830        calendar : {
4831            sameDay : '[Today at] LT',
4832            nextDay : '[Tomorrow at] LT',
4833            nextWeek : 'dddd [at] LT',
4834            lastDay : '[Yesterday at] LT',
4835            lastWeek : '[Last] dddd [at] LT',
4836            sameElse : 'L'
4837        },
4838        relativeTime : {
4839            future : 'in %s',
4840            past : '%s ago',
4841            s : 'a few seconds',
4842            m : 'a minute',
4843            mm : '%d minutes',
4844            h : 'an hour',
4845            hh : '%d hours',
4846            d : 'a day',
4847            dd : '%d days',
4848            M : 'a month',
4849            MM : '%d months',
4850            y : 'a year',
4851            yy : '%d years'
4852        },
4853        ordinalParse: /\d{1,2}(st|nd|rd|th)/,
4854        ordinal : function (number) {
4855            var b = number % 10,
4856                output = (~~(number % 100 / 10) === 1) ? 'th' :
4857                (b === 1) ? 'st' :
4858                (b === 2) ? 'nd' :
4859                (b === 3) ? 'rd' : 'th';
4860            return number + output;
4861        },
4862        week : {
4863            dow : 1, // Monday is the first day of the week.
4864            doy : 4  // The week that contains Jan 4th is the first week of the year.
4865        }
4866    });
4867
4868    //! moment.js locale configuration
4869    //! locale : canadian english (en-ca)
4870    //! author : Jonathan Abourbih : https://github.com/jonbca
4871
4872    var en_ca = _moment__default.defineLocale('en-ca', {
4873        months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),
4874        monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
4875        weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
4876        weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
4877        weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
4878        longDateFormat : {
4879            LT : 'h:mm A',
4880            LTS : 'h:mm:ss A',
4881            L : 'YYYY-MM-DD',
4882            LL : 'D MMMM, YYYY',
4883            LLL : 'D MMMM, YYYY LT',
4884            LLLL : 'dddd, D MMMM, YYYY LT'
4885        },
4886        calendar : {
4887            sameDay : '[Today at] LT',
4888            nextDay : '[Tomorrow at] LT',
4889            nextWeek : 'dddd [at] LT',
4890            lastDay : '[Yesterday at] LT',
4891            lastWeek : '[Last] dddd [at] LT',
4892            sameElse : 'L'
4893        },
4894        relativeTime : {
4895            future : 'in %s',
4896            past : '%s ago',
4897            s : 'a few seconds',
4898            m : 'a minute',
4899            mm : '%d minutes',
4900            h : 'an hour',
4901            hh : '%d hours',
4902            d : 'a day',
4903            dd : '%d days',
4904            M : 'a month',
4905            MM : '%d months',
4906            y : 'a year',
4907            yy : '%d years'
4908        },
4909        ordinalParse: /\d{1,2}(st|nd|rd|th)/,
4910        ordinal : function (number) {
4911            var b = number % 10,
4912                output = (~~(number % 100 / 10) === 1) ? 'th' :
4913                (b === 1) ? 'st' :
4914                (b === 2) ? 'nd' :
4915                (b === 3) ? 'rd' : 'th';
4916            return number + output;
4917        }
4918    });
4919
4920    //! moment.js locale configuration
4921    //! locale : great britain english (en-gb)
4922    //! author : Chris Gedrim : https://github.com/chrisgedrim
4923
4924    var en_gb = _moment__default.defineLocale('en-gb', {
4925        months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),
4926        monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
4927        weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
4928        weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
4929        weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
4930        longDateFormat : {
4931            LT : 'HH:mm',
4932            LTS : 'HH:mm:ss',
4933            L : 'DD/MM/YYYY',
4934            LL : 'D MMMM YYYY',
4935            LLL : 'D MMMM YYYY LT',
4936            LLLL : 'dddd, D MMMM YYYY LT'
4937        },
4938        calendar : {
4939            sameDay : '[Today at] LT',
4940            nextDay : '[Tomorrow at] LT',
4941            nextWeek : 'dddd [at] LT',
4942            lastDay : '[Yesterday at] LT',
4943            lastWeek : '[Last] dddd [at] LT',
4944            sameElse : 'L'
4945        },
4946        relativeTime : {
4947            future : 'in %s',
4948            past : '%s ago',
4949            s : 'a few seconds',
4950            m : 'a minute',
4951            mm : '%d minutes',
4952            h : 'an hour',
4953            hh : '%d hours',
4954            d : 'a day',
4955            dd : '%d days',
4956            M : 'a month',
4957            MM : '%d months',
4958            y : 'a year',
4959            yy : '%d years'
4960        },
4961        ordinalParse: /\d{1,2}(st|nd|rd|th)/,
4962        ordinal : function (number) {
4963            var b = number % 10,
4964                output = (~~(number % 100 / 10) === 1) ? 'th' :
4965                (b === 1) ? 'st' :
4966                (b === 2) ? 'nd' :
4967                (b === 3) ? 'rd' : 'th';
4968            return number + output;
4969        },
4970        week : {
4971            dow : 1, // Monday is the first day of the week.
4972            doy : 4  // The week that contains Jan 4th is the first week of the year.
4973        }
4974    });
4975
4976    //! moment.js locale configuration
4977    //! locale : esperanto (eo)
4978    //! author : Colin Dean : https://github.com/colindean
4979    //! komento: Mi estas malcerta se mi korekte traktis akuzativojn en tiu traduko.
4980    //!          Se ne, bonvolu korekti kaj avizi min por ke mi povas lerni!
4981
4982    var eo = _moment__default.defineLocale('eo', {
4983        months : 'januaro_februaro_marto_aprilo_majo_junio_julio_aÅ­gusto_septembro_oktobro_novembro_decembro'.split('_'),
4984        monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aÅ­g_sep_okt_nov_dec'.split('_'),
4985        weekdays : 'Dimanĉo_Lundo_Mardo_Merkredo_Ĵaŭdo_Vendredo_Sabato'.split('_'),
4986        weekdaysShort : 'Dim_Lun_Mard_Merk_Ä´aÅ­_Ven_Sab'.split('_'),
4987        weekdaysMin : 'Di_Lu_Ma_Me_Ä´a_Ve_Sa'.split('_'),
4988        longDateFormat : {
4989            LT : 'HH:mm',
4990            LTS : 'LT:ss',
4991            L : 'YYYY-MM-DD',
4992            LL : 'D[-an de] MMMM, YYYY',
4993            LLL : 'D[-an de] MMMM, YYYY LT',
4994            LLLL : 'dddd, [la] D[-an de] MMMM, YYYY LT'
4995        },
4996        meridiemParse: /[ap]\.t\.m/i,
4997        isPM: function (input) {
4998            return input.charAt(0).toLowerCase() === 'p';
4999        },
5000        meridiem : function (hours, minutes, isLower) {
5001            if (hours > 11) {
5002                return isLower ? 'p.t.m.' : 'P.T.M.';
5003            } else {
5004                return isLower ? 'a.t.m.' : 'A.T.M.';
5005            }
5006        },
5007        calendar : {
5008            sameDay : '[HodiaÅ­ je] LT',
5009            nextDay : '[MorgaÅ­ je] LT',
5010            nextWeek : 'dddd [je] LT',
5011            lastDay : '[HieraÅ­ je] LT',
5012            lastWeek : '[pasinta] dddd [je] LT',
5013            sameElse : 'L'
5014        },
5015        relativeTime : {
5016            future : 'je %s',
5017            past : 'antaÅ­ %s',
5018            s : 'sekundoj',
5019            m : 'minuto',
5020            mm : '%d minutoj',
5021            h : 'horo',
5022            hh : '%d horoj',
5023            d : 'tago',//ne 'diurno', ĉar estas uzita por proksimumo
5024            dd : '%d tagoj',
5025            M : 'monato',
5026            MM : '%d monatoj',
5027            y : 'jaro',
5028            yy : '%d jaroj'
5029        },
5030        ordinalParse: /\d{1,2}a/,
5031        ordinal : '%da',
5032        week : {
5033            dow : 1, // Monday is the first day of the week.
5034            doy : 7  // The week that contains Jan 1st is the first week of the year.
5035        }
5036    });
5037
5038    //! moment.js locale configuration
5039    //! locale : spanish (es)
5040    //! author : Julio Napurí : https://github.com/julionc
5041
5042    var monthsShortDot = 'Ene._Feb._Mar._Abr._May._Jun._Jul._Ago._Sep._Oct._Nov._Dic.'.split('_'),
5043        es__monthsShort = 'Ene_Feb_Mar_Abr_May_Jun_Jul_Ago_Sep_Oct_Nov_Dic'.split('_');
5044
5045    var es = _moment__default.defineLocale('es', {
5046        months : 'Enero_Febrero_Marzo_Abril_Mayo_Junio_Julio_Agosto_Septiembre_Octubre_Noviembre_Diciembre'.split('_'),
5047        monthsShort : function (m, format) {
5048            if (/-MMM-/.test(format)) {
5049                return es__monthsShort[m.month()];
5050            } else {
5051                return monthsShortDot[m.month()];
5052            }
5053        },
5054        weekdays : 'Domingo_Lunes_Martes_Miércoles_Jueves_Viernes_Sábado'.split('_'),
5055        weekdaysShort : 'Dom._Lun._Mar._Mié._Jue._Vie._Sáb.'.split('_'),
5056        weekdaysMin : 'Do_Lu_Ma_Mi_Ju_Vi_Sá'.split('_'),
5057        longDateFormat : {
5058            LT : 'H:mm',
5059            LTS : 'LT:ss',
5060            L : 'DD/MM/YYYY',
5061            LL : 'D [de] MMMM [de] YYYY',
5062            LLL : 'D [de] MMMM [de] YYYY LT',
5063            LLLL : 'dddd, D [de] MMMM [de] YYYY LT'
5064        },
5065        calendar : {
5066            sameDay : function () {
5067                return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5068            },
5069            nextDay : function () {
5070                return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5071            },
5072            nextWeek : function () {
5073                return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5074            },
5075            lastDay : function () {
5076                return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5077            },
5078            lastWeek : function () {
5079                return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5080            },
5081            sameElse : 'L'
5082        },
5083        relativeTime : {
5084            future : 'en %s',
5085            past : 'hace %s',
5086            s : 'unos segundos',
5087            m : 'un minuto',
5088            mm : '%d minutos',
5089            h : 'una hora',
5090            hh : '%d horas',
5091            d : 'un día',
5092            dd : '%d días',
5093            M : 'un mes',
5094            MM : '%d meses',
5095            y : 'un año',
5096            yy : '%d años'
5097        },
5098        ordinalParse : /\d{1,2}º/,
5099        ordinal : '%dº',
5100        week : {
5101            dow : 1, // Monday is the first day of the week.
5102            doy : 4  // The week that contains Jan 4th is the first week of the year.
5103        }
5104    });
5105
5106    //! moment.js locale configuration
5107    //! locale : estonian (et)
5108    //! author : Henry Kehlmann : https://github.com/madhenry
5109    //! improvements : Illimar Tambek : https://github.com/ragulka
5110
5111    function et__processRelativeTime(number, withoutSuffix, key, isFuture) {
5112        var format = {
5113            's' : ['mõne sekundi', 'mõni sekund', 'paar sekundit'],
5114            'm' : ['ühe minuti', 'üks minut'],
5115            'mm': [number + ' minuti', number + ' minutit'],
5116            'h' : ['ühe tunni', 'tund aega', 'üks tund'],
5117            'hh': [number + ' tunni', number + ' tundi'],
5118            'd' : ['ühe päeva', 'üks päev'],
5119            'M' : ['kuu aja', 'kuu aega', 'üks kuu'],
5120            'MM': [number + ' kuu', number + ' kuud'],
5121            'y' : ['ühe aasta', 'aasta', 'üks aasta'],
5122            'yy': [number + ' aasta', number + ' aastat']
5123        };
5124        if (withoutSuffix) {
5125            return format[key][2] ? format[key][2] : format[key][1];
5126        }
5127        return isFuture ? format[key][0] : format[key][1];
5128    }
5129
5130    var et = _moment__default.defineLocale('et', {
5131        months        : 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split('_'),
5132        monthsShort   : 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),
5133        weekdays      : 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split('_'),
5134        weekdaysShort : 'P_E_T_K_N_R_L'.split('_'),
5135        weekdaysMin   : 'P_E_T_K_N_R_L'.split('_'),
5136        longDateFormat : {
5137            LT   : 'H:mm',
5138            LTS : 'LT:ss',
5139            L    : 'DD.MM.YYYY',
5140            LL   : 'D. MMMM YYYY',
5141            LLL  : 'D. MMMM YYYY LT',
5142            LLLL : 'dddd, D. MMMM YYYY LT'
5143        },
5144        calendar : {
5145            sameDay  : '[Täna,] LT',
5146            nextDay  : '[Homme,] LT',
5147            nextWeek : '[Järgmine] dddd LT',
5148            lastDay  : '[Eile,] LT',
5149            lastWeek : '[Eelmine] dddd LT',
5150            sameElse : 'L'
5151        },
5152        relativeTime : {
5153            future : '%s pärast',
5154            past   : '%s tagasi',
5155            s      : et__processRelativeTime,
5156            m      : et__processRelativeTime,
5157            mm     : et__processRelativeTime,
5158            h      : et__processRelativeTime,
5159            hh     : et__processRelativeTime,
5160            d      : et__processRelativeTime,
5161            dd     : '%d päeva',
5162            M      : et__processRelativeTime,
5163            MM     : et__processRelativeTime,
5164            y      : et__processRelativeTime,
5165            yy     : et__processRelativeTime
5166        },
5167        ordinalParse: /\d{1,2}\./,
5168        ordinal : '%d.',
5169        week : {
5170            dow : 1, // Monday is the first day of the week.
5171            doy : 4  // The week that contains Jan 4th is the first week of the year.
5172        }
5173    });
5174
5175    //! moment.js locale configuration
5176    //! locale : euskara (eu)
5177    //! author : Eneko Illarramendi : https://github.com/eillarra
5178
5179    var eu = _moment__default.defineLocale('eu', {
5180        months : 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split('_'),
5181        monthsShort : 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split('_'),
5182        weekdays : 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split('_'),
5183        weekdaysShort : 'ig._al._ar._az._og._ol._lr.'.split('_'),
5184        weekdaysMin : 'ig_al_ar_az_og_ol_lr'.split('_'),
5185        longDateFormat : {
5186            LT : 'HH:mm',
5187            LTS : 'LT:ss',
5188            L : 'YYYY-MM-DD',
5189            LL : 'YYYY[ko] MMMM[ren] D[a]',
5190            LLL : 'YYYY[ko] MMMM[ren] D[a] LT',
5191            LLLL : 'dddd, YYYY[ko] MMMM[ren] D[a] LT',
5192            l : 'YYYY-M-D',
5193            ll : 'YYYY[ko] MMM D[a]',
5194            lll : 'YYYY[ko] MMM D[a] LT',
5195            llll : 'ddd, YYYY[ko] MMM D[a] LT'
5196        },
5197        calendar : {
5198            sameDay : '[gaur] LT[etan]',
5199            nextDay : '[bihar] LT[etan]',
5200            nextWeek : 'dddd LT[etan]',
5201            lastDay : '[atzo] LT[etan]',
5202            lastWeek : '[aurreko] dddd LT[etan]',
5203            sameElse : 'L'
5204        },
5205        relativeTime : {
5206            future : '%s barru',
5207            past : 'duela %s',
5208            s : 'segundo batzuk',
5209            m : 'minutu bat',
5210            mm : '%d minutu',
5211            h : 'ordu bat',
5212            hh : '%d ordu',
5213            d : 'egun bat',
5214            dd : '%d egun',
5215            M : 'hilabete bat',
5216            MM : '%d hilabete',
5217            y : 'urte bat',
5218            yy : '%d urte'
5219        },
5220        ordinalParse: /\d{1,2}\./,
5221        ordinal : '%d.',
5222        week : {
5223            dow : 1, // Monday is the first day of the week.
5224            doy : 7  // The week that contains Jan 1st is the first week of the year.
5225        }
5226    });
5227
5228    //! moment.js locale configuration
5229    //! locale : Persian (fa)
5230    //! author : Ebrahim Byagowi : https://github.com/ebraminio
5231
5232    var fa__symbolMap = {
5233        '1': 'Û±',
5234        '2': 'Û²',
5235        '3': 'Û³',
5236        '4': 'Û´',
5237        '5': 'Ûµ',
5238        '6': 'Û¶',
5239        '7': 'Û·',
5240        '8': 'Û¸',
5241        '9': 'Û¹',
5242        '0': 'Û°'
5243    }, fa__numberMap = {
5244        'Û±': '1',
5245        'Û²': '2',
5246        'Û³': '3',
5247        'Û´': '4',
5248        'Ûµ': '5',
5249        'Û¶': '6',
5250        'Û·': '7',
5251        'Û¸': '8',
5252        'Û¹': '9',
5253        'Û°': '0'
5254    };
5255
5256    var fa = _moment__default.defineLocale('fa', {
5257        months : 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'),
5258        monthsShort : 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'),
5259        weekdays : 'یک\u200cشنبه_دوشنبه_سه\u200cشنبه_چهارشنبه_پنج\u200cشنبه_جمعه_شنبه'.split('_'),
5260        weekdaysShort : 'یک\u200cشنبه_دوشنبه_سه\u200cشنبه_چهارشنبه_پنج\u200cشنبه_جمعه_شنبه'.split('_'),
5261        weekdaysMin : 'ی_د_س_چ_پ_ج_ش'.split('_'),
5262        longDateFormat : {
5263            LT : 'HH:mm',
5264            LTS : 'LT:ss',
5265            L : 'DD/MM/YYYY',
5266            LL : 'D MMMM YYYY',
5267            LLL : 'D MMMM YYYY LT',
5268            LLLL : 'dddd, D MMMM YYYY LT'
5269        },
5270        meridiemParse: /قبل از ظهر|بعد از ظهر/,
5271        isPM: function (input) {
5272            return /بعد از ظهر/.test(input);
5273        },
5274        meridiem : function (hour, minute, isLower) {
5275            if (hour < 12) {
5276                return 'قبل از ظهر';
5277            } else {
5278                return 'بعد از ظهر';
5279            }
5280        },
5281        calendar : {
5282            sameDay : '[امروز ساعت] LT',
5283            nextDay : '[فردا ساعت] LT',
5284            nextWeek : 'dddd [ساعت] LT',
5285            lastDay : '[دیروز ساعت] LT',
5286            lastWeek : 'dddd [پیش] [ساعت] LT',
5287            sameElse : 'L'
5288        },
5289        relativeTime : {
5290            future : 'در %s',
5291            past : '%s پیش',
5292            s : 'چندین ثانیه',
5293            m : 'یک دقیقه',
5294            mm : '%d دقیقه',
5295            h : 'یک ساعت',
5296            hh : '%d ساعت',
5297            d : 'یک روز',
5298            dd : '%d روز',
5299            M : 'یک ماه',
5300            MM : '%d ماه',
5301            y : 'یک سال',
5302            yy : '%d سال'
5303        },
5304        preparse: function (string) {
5305            return string.replace(/[Û°-Û¹]/g, function (match) {
5306                return fa__numberMap[match];
5307            }).replace(/،/g, ',');
5308        },
5309        postformat: function (string) {
5310            return string.replace(/\d/g, function (match) {
5311                return fa__symbolMap[match];
5312            }).replace(/,/g, '،');
5313        },
5314        ordinalParse: /\d{1,2}م/,
5315        ordinal : '%dم',
5316        week : {
5317            dow : 6, // Saturday is the first day of the week.
5318            doy : 12 // The week that contains Jan 1st is the first week of the year.
5319        }
5320    });
5321
5322    //! moment.js locale configuration
5323    //! locale : finnish (fi)
5324    //! author : Tarmo Aidantausta : https://github.com/bleadof
5325
5326    var numbersPast = 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(' '),
5327        numbersFuture = [
5328            'nolla', 'yhden', 'kahden', 'kolmen', 'neljän', 'viiden', 'kuuden',
5329            numbersPast[7], numbersPast[8], numbersPast[9]
5330        ];
5331    function fi__translate(number, withoutSuffix, key, isFuture) {
5332        var result = '';
5333        switch (key) {
5334        case 's':
5335            return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';
5336        case 'm':
5337            return isFuture ? 'minuutin' : 'minuutti';
5338        case 'mm':
5339            result = isFuture ? 'minuutin' : 'minuuttia';
5340            break;
5341        case 'h':
5342            return isFuture ? 'tunnin' : 'tunti';
5343        case 'hh':
5344            result = isFuture ? 'tunnin' : 'tuntia';
5345            break;
5346        case 'd':
5347            return isFuture ? 'päivän' : 'päivä';
5348        case 'dd':
5349            result = isFuture ? 'päivän' : 'päivää';
5350            break;
5351        case 'M':
5352            return isFuture ? 'kuukauden' : 'kuukausi';
5353        case 'MM':
5354            result = isFuture ? 'kuukauden' : 'kuukautta';
5355            break;
5356        case 'y':
5357            return isFuture ? 'vuoden' : 'vuosi';
5358        case 'yy':
5359            result = isFuture ? 'vuoden' : 'vuotta';
5360            break;
5361        }
5362        result = verbalNumber(number, isFuture) + ' ' + result;
5363        return result;
5364    }
5365    function verbalNumber(number, isFuture) {
5366        return number < 10 ? (isFuture ? numbersFuture[number] : numbersPast[number]) : number;
5367    }
5368
5369    var fi = _moment__default.defineLocale('fi', {
5370        months : 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split('_'),
5371        monthsShort : 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split('_'),
5372        weekdays : 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split('_'),
5373        weekdaysShort : 'su_ma_ti_ke_to_pe_la'.split('_'),
5374        weekdaysMin : 'su_ma_ti_ke_to_pe_la'.split('_'),
5375        longDateFormat : {
5376            LT : 'HH.mm',
5377            LTS : 'HH.mm.ss',
5378            L : 'DD.MM.YYYY',
5379            LL : 'Do MMMM[ta] YYYY',
5380            LLL : 'Do MMMM[ta] YYYY, [klo] LT',
5381            LLLL : 'dddd, Do MMMM[ta] YYYY, [klo] LT',
5382            l : 'D.M.YYYY',
5383            ll : 'Do MMM YYYY',
5384            lll : 'Do MMM YYYY, [klo] LT',
5385            llll : 'ddd, Do MMM YYYY, [klo] LT'
5386        },
5387        calendar : {
5388            sameDay : '[tänään] [klo] LT',
5389            nextDay : '[huomenna] [klo] LT',
5390            nextWeek : 'dddd [klo] LT',
5391            lastDay : '[eilen] [klo] LT',
5392            lastWeek : '[viime] dddd[na] [klo] LT',
5393            sameElse : 'L'
5394        },
5395        relativeTime : {
5396            future : '%s päästä',
5397            past : '%s sitten',
5398            s : fi__translate,
5399            m : fi__translate,
5400            mm : fi__translate,
5401            h : fi__translate,
5402            hh : fi__translate,
5403            d : fi__translate,
5404            dd : fi__translate,
5405            M : fi__translate,
5406            MM : fi__translate,
5407            y : fi__translate,
5408            yy : fi__translate
5409        },
5410        ordinalParse: /\d{1,2}\./,
5411        ordinal : '%d.',
5412        week : {
5413            dow : 1, // Monday is the first day of the week.
5414            doy : 4  // The week that contains Jan 4th is the first week of the year.
5415        }
5416    });
5417
5418    //! moment.js locale configuration
5419    //! locale : faroese (fo)
5420    //! author : Ragnar Johannesen : https://github.com/ragnar123
5421
5422    var fo = _moment__default.defineLocale('fo', {
5423        months : 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split('_'),
5424        monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),
5425        weekdays : 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split('_'),
5426        weekdaysShort : 'sun_mán_týs_mik_hós_frí_ley'.split('_'),
5427        weekdaysMin : 'su_má_tý_mi_hó_fr_le'.split('_'),
5428        longDateFormat : {
5429            LT : 'HH:mm',
5430            LTS : 'LT:ss',
5431            L : 'DD/MM/YYYY',
5432            LL : 'D MMMM YYYY',
5433            LLL : 'D MMMM YYYY LT',
5434            LLLL : 'dddd D. MMMM, YYYY LT'
5435        },
5436        calendar : {
5437            sameDay : '[Í dag kl.] LT',
5438            nextDay : '[Í morgin kl.] LT',
5439            nextWeek : 'dddd [kl.] LT',
5440            lastDay : '[Í gjár kl.] LT',
5441            lastWeek : '[síðstu] dddd [kl] LT',
5442            sameElse : 'L'
5443        },
5444        relativeTime : {
5445            future : 'um %s',
5446            past : '%s síðani',
5447            s : 'fá sekund',
5448            m : 'ein minutt',
5449            mm : '%d minuttir',
5450            h : 'ein tími',
5451            hh : '%d tímar',
5452            d : 'ein dagur',
5453            dd : '%d dagar',
5454            M : 'ein mánaði',
5455            MM : '%d mánaðir',
5456            y : 'eitt ár',
5457            yy : '%d ár'
5458        },
5459        ordinalParse: /\d{1,2}\./,
5460        ordinal : '%d.',
5461        week : {
5462            dow : 1, // Monday is the first day of the week.
5463            doy : 4  // The week that contains Jan 4th is the first week of the year.
5464        }
5465    });
5466
5467    //! moment.js locale configuration
5468    //! locale : canadian french (fr-ca)
5469    //! author : Jonathan Abourbih : https://github.com/jonbca
5470
5471    var fr_ca = _moment__default.defineLocale('fr-ca', {
5472        months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),
5473        monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),
5474        weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
5475        weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
5476        weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'),
5477        longDateFormat : {
5478            LT : 'HH:mm',
5479            LTS : 'LT:ss',
5480            L : 'YYYY-MM-DD',
5481            LL : 'D MMMM YYYY',
5482            LLL : 'D MMMM YYYY LT',
5483            LLLL : 'dddd D MMMM YYYY LT'
5484        },
5485        calendar : {
5486            sameDay: '[Aujourd\'hui à] LT',
5487            nextDay: '[Demain à] LT',
5488            nextWeek: 'dddd [à] LT',
5489            lastDay: '[Hier à] LT',
5490            lastWeek: 'dddd [dernier à] LT',
5491            sameElse: 'L'
5492        },
5493        relativeTime : {
5494            future : 'dans %s',
5495            past : 'il y a %s',
5496            s : 'quelques secondes',
5497            m : 'une minute',
5498            mm : '%d minutes',
5499            h : 'une heure',
5500            hh : '%d heures',
5501            d : 'un jour',
5502            dd : '%d jours',
5503            M : 'un mois',
5504            MM : '%d mois',
5505            y : 'un an',
5506            yy : '%d ans'
5507        },
5508        ordinalParse: /\d{1,2}(er|)/,
5509        ordinal : function (number) {
5510            return number + (number === 1 ? 'er' : '');
5511        }
5512    });
5513
5514    //! moment.js locale configuration
5515    //! locale : french (fr)
5516    //! author : John Fischer : https://github.com/jfroffice
5517
5518    var fr = _moment__default.defineLocale('fr', {
5519        months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),
5520        monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),
5521        weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
5522        weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
5523        weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'),
5524        longDateFormat : {
5525            LT : 'HH:mm',
5526            LTS : 'LT:ss',
5527            L : 'DD/MM/YYYY',
5528            LL : 'D MMMM YYYY',
5529            LLL : 'D MMMM YYYY LT',
5530            LLLL : 'dddd D MMMM YYYY LT'
5531        },
5532        calendar : {
5533            sameDay: '[Aujourd\'hui à] LT',
5534            nextDay: '[Demain à] LT',
5535            nextWeek: 'dddd [à] LT',
5536            lastDay: '[Hier à] LT',
5537            lastWeek: 'dddd [dernier à] LT',
5538            sameElse: 'L'
5539        },
5540        relativeTime : {
5541            future : 'dans %s',
5542            past : 'il y a %s',
5543            s : 'quelques secondes',
5544            m : 'une minute',
5545            mm : '%d minutes',
5546            h : 'une heure',
5547            hh : '%d heures',
5548            d : 'un jour',
5549            dd : '%d jours',
5550            M : 'un mois',
5551            MM : '%d mois',
5552            y : 'un an',
5553            yy : '%d ans'
5554        },
5555        ordinalParse: /\d{1,2}(er|)/,
5556        ordinal : function (number) {
5557            return number + (number === 1 ? 'er' : '');
5558        },
5559        week : {
5560            dow : 1, // Monday is the first day of the week.
5561            doy : 4  // The week that contains Jan 4th is the first week of the year.
5562        }
5563    });
5564
5565    //! moment.js locale configuration
5566    //! locale : frisian (fy)
5567    //! author : Robin van der Vliet : https://github.com/robin0van0der0v
5568
5569    var fy__monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),
5570        fy__monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');
5571
5572    var fy = _moment__default.defineLocale('fy', {
5573        months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'),
5574        monthsShort : function (m, format) {
5575            if (/-MMM-/.test(format)) {
5576                return fy__monthsShortWithoutDots[m.month()];
5577            } else {
5578                return fy__monthsShortWithDots[m.month()];
5579            }
5580        },
5581        weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'),
5582        weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'),
5583        weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),
5584        longDateFormat : {
5585            LT : 'HH:mm',
5586            LTS : 'LT:ss',
5587            L : 'DD-MM-YYYY',
5588            LL : 'D MMMM YYYY',
5589            LLL : 'D MMMM YYYY LT',
5590            LLLL : 'dddd D MMMM YYYY LT'
5591        },
5592        calendar : {
5593            sameDay: '[hjoed om] LT',
5594            nextDay: '[moarn om] LT',
5595            nextWeek: 'dddd [om] LT',
5596            lastDay: '[juster om] LT',
5597            lastWeek: '[ôfrûne] dddd [om] LT',
5598            sameElse: 'L'
5599        },
5600        relativeTime : {
5601            future : 'oer %s',
5602            past : '%s lyn',
5603            s : 'in pear sekonden',
5604            m : 'ien minút',
5605            mm : '%d minuten',
5606            h : 'ien oere',
5607            hh : '%d oeren',
5608            d : 'ien dei',
5609            dd : '%d dagen',
5610            M : 'ien moanne',
5611            MM : '%d moannen',
5612            y : 'ien jier',
5613            yy : '%d jierren'
5614        },
5615        ordinalParse: /\d{1,2}(ste|de)/,
5616        ordinal : function (number) {
5617            return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');
5618        },
5619        week : {
5620            dow : 1, // Monday is the first day of the week.
5621            doy : 4  // The week that contains Jan 4th is the first week of the year.
5622        }
5623    });
5624
5625    //! moment.js locale configuration
5626    //! locale : galician (gl)
5627    //! author : Juan G. Hurtado : https://github.com/juanghurtado
5628
5629    var gl = _moment__default.defineLocale('gl', {
5630        months : 'Xaneiro_Febreiro_Marzo_Abril_Maio_Xuño_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro'.split('_'),
5631        monthsShort : 'Xan._Feb._Mar._Abr._Mai._Xuñ._Xul._Ago._Set._Out._Nov._Dec.'.split('_'),
5632        weekdays : 'Domingo_Luns_Martes_Mércores_Xoves_Venres_Sábado'.split('_'),
5633        weekdaysShort : 'Dom._Lun._Mar._Mér._Xov._Ven._Sáb.'.split('_'),
5634        weekdaysMin : 'Do_Lu_Ma_Mé_Xo_Ve_Sá'.split('_'),
5635        longDateFormat : {
5636            LT : 'H:mm',
5637            LTS : 'LT:ss',
5638            L : 'DD/MM/YYYY',
5639            LL : 'D MMMM YYYY',
5640            LLL : 'D MMMM YYYY LT',
5641            LLLL : 'dddd D MMMM YYYY LT'
5642        },
5643        calendar : {
5644            sameDay : function () {
5645                return '[hoxe ' + ((this.hours() !== 1) ? 'ás' : 'á') + '] LT';
5646            },
5647            nextDay : function () {
5648                return '[mañá ' + ((this.hours() !== 1) ? 'ás' : 'á') + '] LT';
5649            },
5650            nextWeek : function () {
5651                return 'dddd [' + ((this.hours() !== 1) ? 'ás' : 'a') + '] LT';
5652            },
5653            lastDay : function () {
5654                return '[onte ' + ((this.hours() !== 1) ? 'á' : 'a') + '] LT';
5655            },
5656            lastWeek : function () {
5657                return '[o] dddd [pasado ' + ((this.hours() !== 1) ? 'ás' : 'a') + '] LT';
5658            },
5659            sameElse : 'L'
5660        },
5661        relativeTime : {
5662            future : function (str) {
5663                if (str === 'uns segundos') {
5664                    return 'nuns segundos';
5665                }
5666                return 'en ' + str;
5667            },
5668            past : 'hai %s',
5669            s : 'uns segundos',
5670            m : 'un minuto',
5671            mm : '%d minutos',
5672            h : 'unha hora',
5673            hh : '%d horas',
5674            d : 'un día',
5675            dd : '%d días',
5676            M : 'un mes',
5677            MM : '%d meses',
5678            y : 'un ano',
5679            yy : '%d anos'
5680        },
5681        ordinalParse : /\d{1,2}º/,
5682        ordinal : '%dº',
5683        week : {
5684            dow : 1, // Monday is the first day of the week.
5685            doy : 7  // The week that contains Jan 1st is the first week of the year.
5686        }
5687    });
5688
5689    //! moment.js locale configuration
5690    //! locale : Hebrew (he)
5691    //! author : Tomer Cohen : https://github.com/tomer
5692    //! author : Moshe Simantov : https://github.com/DevelopmentIL
5693    //! author : Tal Ater : https://github.com/TalAter
5694
5695    var he = _moment__default.defineLocale('he', {
5696        months : 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split('_'),
5697        monthsShort : 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'),
5698        weekdays : 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),
5699        weekdaysShort : 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),
5700        weekdaysMin : 'א_ב_ג_ד_ה_ו_ש'.split('_'),
5701        longDateFormat : {
5702            LT : 'HH:mm',
5703            LTS : 'LT:ss',
5704            L : 'DD/MM/YYYY',
5705            LL : 'D [ב]MMMM YYYY',
5706            LLL : 'D [ב]MMMM YYYY LT',
5707            LLLL : 'dddd, D [ב]MMMM YYYY LT',
5708            l : 'D/M/YYYY',
5709            ll : 'D MMM YYYY',
5710            lll : 'D MMM YYYY LT',
5711            llll : 'ddd, D MMM YYYY LT'
5712        },
5713        calendar : {
5714            sameDay : '[היום ב־]LT',
5715            nextDay : '[מחר ב־]LT',
5716            nextWeek : 'dddd [בשעה] LT',
5717            lastDay : '[אתמול ב־]LT',
5718            lastWeek : '[ביום] dddd [האחרון בשעה] LT',
5719            sameElse : 'L'
5720        },
5721        relativeTime : {
5722            future : 'בעוד %s',
5723            past : 'לפני %s',
5724            s : 'מספר שניות',
5725            m : 'דקה',
5726            mm : '%d דקות',
5727            h : 'שעה',
5728            hh : function (number) {
5729                if (number === 2) {
5730                    return 'שעתיים';
5731                }
5732                return number + ' שעות';
5733            },
5734            d : 'יום',
5735            dd : function (number) {
5736                if (number === 2) {
5737                    return 'יומיים';
5738                }
5739                return number + ' ימים';
5740            },
5741            M : 'חודש',
5742            MM : function (number) {
5743                if (number === 2) {
5744                    return 'חודשיים';
5745                }
5746                return number + ' חודשים';
5747            },
5748            y : 'שנה',
5749            yy : function (number) {
5750                if (number === 2) {
5751                    return 'שנתיים';
5752                } else if (number % 10 === 0 && number !== 10) {
5753                    return number + ' שנה';
5754                }
5755                return number + ' שנים';
5756            }
5757        }
5758    });
5759
5760    //! moment.js locale configuration
5761    //! locale : hindi (hi)
5762    //! author : Mayank Singhal : https://github.com/mayanksinghal
5763
5764    var hi__symbolMap = {
5765        '1': '१',
5766        '2': '२',
5767        '3': '३',
5768        '4': '४',
5769        '5': '५',
5770        '6': '६',
5771        '7': '७',
5772        '8': '८',
5773        '9': '९',
5774        '0': '०'
5775    },
5776    hi__numberMap = {
5777        '१': '1',
5778        '२': '2',
5779        '३': '3',
5780        '४': '4',
5781        '५': '5',
5782        '६': '6',
5783        '७': '7',
5784        '८': '8',
5785        '९': '9',
5786        '०': '0'
5787    };
5788
5789    var hi = _moment__default.defineLocale('hi', {
5790        months : 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split('_'),
5791        monthsShort : 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'),
5792        weekdays : 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),
5793        weekdaysShort : 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'),
5794        weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'),
5795        longDateFormat : {
5796            LT : 'A h:mm बजे',
5797            LTS : 'A h:mm:ss बजे',
5798            L : 'DD/MM/YYYY',
5799            LL : 'D MMMM YYYY',
5800            LLL : 'D MMMM YYYY, LT',
5801            LLLL : 'dddd, D MMMM YYYY, LT'
5802        },
5803        calendar : {
5804            sameDay : '[आज] LT',
5805            nextDay : '[कल] LT',
5806            nextWeek : 'dddd, LT',
5807            lastDay : '[कल] LT',
5808            lastWeek : '[पिछले] dddd, LT',
5809            sameElse : 'L'
5810        },
5811        relativeTime : {
5812            future : '%s में',
5813            past : '%s पहले',
5814            s : 'कुछ ही क्षण',
5815            m : 'एक मिनट',
5816            mm : '%d मिनट',
5817            h : 'एक घंटा',
5818            hh : '%d घंटे',
5819            d : 'एक दिन',
5820            dd : '%d दिन',
5821            M : 'एक महीने',
5822            MM : '%d महीने',
5823            y : 'एक वर्ष',
5824            yy : '%d वर्ष'
5825        },
5826        preparse: function (string) {
5827            return string.replace(/[१२३४५६७८९०]/g, function (match) {
5828                return hi__numberMap[match];
5829            });
5830        },
5831        postformat: function (string) {
5832            return string.replace(/\d/g, function (match) {
5833                return hi__symbolMap[match];
5834            });
5835        },
5836        // Hindi notation for meridiems are quite fuzzy in practice. While there exists
5837        // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.
5838        meridiemParse: /रात|सुबह|दोपहर|शाम/,
5839        meridiemHour : function (hour, meridiem) {
5840            if (hour === 12) {
5841                hour = 0;
5842            }
5843            if (meridiem === 'रात') {
5844                return hour < 4 ? hour : hour + 12;
5845            } else if (meridiem === 'सुबह') {
5846                return hour;
5847            } else if (meridiem === 'दोपहर') {
5848                return hour >= 10 ? hour : hour + 12;
5849            } else if (meridiem === 'शाम') {
5850                return hour + 12;
5851            }
5852        },
5853        meridiem : function (hour, minute, isLower) {
5854            if (hour < 4) {
5855                return 'रात';
5856            } else if (hour < 10) {
5857                return 'सुबह';
5858            } else if (hour < 17) {
5859                return 'दोपहर';
5860            } else if (hour < 20) {
5861                return 'शाम';
5862            } else {
5863                return 'रात';
5864            }
5865        },
5866        week : {
5867            dow : 0, // Sunday is the first day of the week.
5868            doy : 6  // The week that contains Jan 1st is the first week of the year.
5869        }
5870    });
5871
5872    //! moment.js locale configuration
5873    //! locale : hrvatski (hr)
5874    //! author : Bojan Marković : https://github.com/bmarkovic
5875
5876    function hr__translate(number, withoutSuffix, key) {
5877        var result = number + ' ';
5878        switch (key) {
5879        case 'm':
5880            return withoutSuffix ? 'jedna minuta' : 'jedne minute';
5881        case 'mm':
5882            if (number === 1) {
5883                result += 'minuta';
5884            } else if (number === 2 || number === 3 || number === 4) {
5885                result += 'minute';
5886            } else {
5887                result += 'minuta';
5888            }
5889            return result;
5890        case 'h':
5891            return withoutSuffix ? 'jedan sat' : 'jednog sata';
5892        case 'hh':
5893            if (number === 1) {
5894                result += 'sat';
5895            } else if (number === 2 || number === 3 || number === 4) {
5896                result += 'sata';
5897            } else {
5898                result += 'sati';
5899            }
5900            return result;
5901        case 'dd':
5902            if (number === 1) {
5903                result += 'dan';
5904            } else {
5905                result += 'dana';
5906            }
5907            return result;
5908        case 'MM':
5909            if (number === 1) {
5910                result += 'mjesec';
5911            } else if (number === 2 || number === 3 || number === 4) {
5912                result += 'mjeseca';
5913            } else {
5914                result += 'mjeseci';
5915            }
5916            return result;
5917        case 'yy':
5918            if (number === 1) {
5919                result += 'godina';
5920            } else if (number === 2 || number === 3 || number === 4) {
5921                result += 'godine';
5922            } else {
5923                result += 'godina';
5924            }
5925            return result;
5926        }
5927    }
5928
5929    var hr = _moment__default.defineLocale('hr', {
5930        months : 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split('_'),
5931        monthsShort : 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split('_'),
5932        weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),
5933        weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),
5934        weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'),
5935        longDateFormat : {
5936            LT : 'H:mm',
5937            LTS : 'LT:ss',
5938            L : 'DD. MM. YYYY',
5939            LL : 'D. MMMM YYYY',
5940            LLL : 'D. MMMM YYYY LT',
5941            LLLL : 'dddd, D. MMMM YYYY LT'
5942        },
5943        calendar : {
5944            sameDay  : '[danas u] LT',
5945            nextDay  : '[sutra u] LT',
5946            nextWeek : function () {
5947                switch (this.day()) {
5948                case 0:
5949                    return '[u] [nedjelju] [u] LT';
5950                case 3:
5951                    return '[u] [srijedu] [u] LT';
5952                case 6:
5953                    return '[u] [subotu] [u] LT';
5954                case 1:
5955                case 2:
5956                case 4:
5957                case 5:
5958                    return '[u] dddd [u] LT';
5959                }
5960            },
5961            lastDay  : '[jučer u] LT',
5962            lastWeek : function () {
5963                switch (this.day()) {
5964                case 0:
5965                case 3:
5966                    return '[prošlu] dddd [u] LT';
5967                case 6:
5968                    return '[prošle] [subote] [u] LT';
5969                case 1:
5970                case 2:
5971                case 4:
5972                case 5:
5973                    return '[prošli] dddd [u] LT';
5974                }
5975            },
5976            sameElse : 'L'
5977        },
5978        relativeTime : {
5979            future : 'za %s',
5980            past   : 'prije %s',
5981            s      : 'par sekundi',
5982            m      : hr__translate,
5983            mm     : hr__translate,
5984            h      : hr__translate,
5985            hh     : hr__translate,
5986            d      : 'dan',
5987            dd     : hr__translate,
5988            M      : 'mjesec',
5989            MM     : hr__translate,
5990            y      : 'godinu',
5991            yy     : hr__translate
5992        },
5993        ordinalParse: /\d{1,2}\./,
5994        ordinal : '%d.',
5995        week : {
5996            dow : 1, // Monday is the first day of the week.
5997            doy : 7  // The week that contains Jan 1st is the first week of the year.
5998        }
5999    });
6000
6001    //! moment.js locale configuration
6002    //! locale : hungarian (hu)
6003    //! author : Adam Brunner : https://github.com/adambrunner
6004
6005    var weekEndings = 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' ');
6006    function hu__translate(number, withoutSuffix, key, isFuture) {
6007        var num = number,
6008            suffix;
6009        switch (key) {
6010        case 's':
6011            return (isFuture || withoutSuffix) ? 'néhány másodperc' : 'néhány másodperce';
6012        case 'm':
6013            return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');
6014        case 'mm':
6015            return num + (isFuture || withoutSuffix ? ' perc' : ' perce');
6016        case 'h':
6017            return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');
6018        case 'hh':
6019            return num + (isFuture || withoutSuffix ? ' óra' : ' órája');
6020        case 'd':
6021            return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');
6022        case 'dd':
6023            return num + (isFuture || withoutSuffix ? ' nap' : ' napja');
6024        case 'M':
6025            return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');
6026        case 'MM':
6027            return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');
6028        case 'y':
6029            return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');
6030        case 'yy':
6031            return num + (isFuture || withoutSuffix ? ' év' : ' éve');
6032        }
6033        return '';
6034    }
6035    function week(isFuture) {
6036        return (isFuture ? '' : '[múlt] ') + '[' + weekEndings[this.day()] + '] LT[-kor]';
6037    }
6038
6039    var hu = _moment__default.defineLocale('hu', {
6040        months : 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split('_'),
6041        monthsShort : 'jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec'.split('_'),
6042        weekdays : 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'),
6043        weekdaysShort : 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),
6044        weekdaysMin : 'v_h_k_sze_cs_p_szo'.split('_'),
6045        longDateFormat : {
6046            LT : 'H:mm',
6047            LTS : 'LT:ss',
6048            L : 'YYYY.MM.DD.',
6049            LL : 'YYYY. MMMM D.',
6050            LLL : 'YYYY. MMMM D., LT',
6051            LLLL : 'YYYY. MMMM D., dddd LT'
6052        },
6053        meridiemParse: /de|du/i,
6054        isPM: function (input) {
6055            return input.charAt(1).toLowerCase() === 'u';
6056        },
6057        meridiem : function (hours, minutes, isLower) {
6058            if (hours < 12) {
6059                return isLower === true ? 'de' : 'DE';
6060            } else {
6061                return isLower === true ? 'du' : 'DU';
6062            }
6063        },
6064        calendar : {
6065            sameDay : '[ma] LT[-kor]',
6066            nextDay : '[holnap] LT[-kor]',
6067            nextWeek : function () {
6068                return week.call(this, true);
6069            },
6070            lastDay : '[tegnap] LT[-kor]',
6071            lastWeek : function () {
6072                return week.call(this, false);
6073            },
6074            sameElse : 'L'
6075        },
6076        relativeTime : {
6077            future : '%s múlva',
6078            past : '%s',
6079            s : hu__translate,
6080            m : hu__translate,
6081            mm : hu__translate,
6082            h : hu__translate,
6083            hh : hu__translate,
6084            d : hu__translate,
6085            dd : hu__translate,
6086            M : hu__translate,
6087            MM : hu__translate,
6088            y : hu__translate,
6089            yy : hu__translate
6090        },
6091        ordinalParse: /\d{1,2}\./,
6092        ordinal : '%d.',
6093        week : {
6094            dow : 1, // Monday is the first day of the week.
6095            doy : 7  // The week that contains Jan 1st is the first week of the year.
6096        }
6097    });
6098
6099    //! moment.js locale configuration
6100    //! locale : Armenian (hy-am)
6101    //! author : Armendarabyan : https://github.com/armendarabyan
6102
6103    function hy_am__monthsCaseReplace(m, format) {
6104        var months = {
6105            'nominative': 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split('_'),
6106            'accusative': 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split('_')
6107        },
6108        nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
6109            'accusative' :
6110            'nominative';
6111        return months[nounCase][m.month()];
6112    }
6113    function hy_am__monthsShortCaseReplace(m, format) {
6114        var monthsShort = 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_');
6115        return monthsShort[m.month()];
6116    }
6117    function hy_am__weekdaysCaseReplace(m, format) {
6118        var weekdays = 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split('_');
6119        return weekdays[m.day()];
6120    }
6121
6122    var hy_am = _moment__default.defineLocale('hy-am', {
6123        months : hy_am__monthsCaseReplace,
6124        monthsShort : hy_am__monthsShortCaseReplace,
6125        weekdays : hy_am__weekdaysCaseReplace,
6126        weekdaysShort : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),
6127        weekdaysMin : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),
6128        longDateFormat : {
6129            LT : 'HH:mm',
6130            LTS : 'LT:ss',
6131            L : 'DD.MM.YYYY',
6132            LL : 'D MMMM YYYY Õ©.',
6133            LLL : 'D MMMM YYYY Õ©., LT',
6134            LLLL : 'dddd, D MMMM YYYY Õ©., LT'
6135        },
6136        calendar : {
6137            sameDay: '[այսօր] LT',
6138            nextDay: '[Õ¾Õ¡Õ²Õ¨] LT',
6139            lastDay: '[երեկ] LT',
6140            nextWeek: function () {
6141                return 'dddd [օրը ժամը] LT';
6142            },
6143            lastWeek: function () {
6144                return '[անցած] dddd [օրը ժամը] LT';
6145            },
6146            sameElse: 'L'
6147        },
6148        relativeTime : {
6149            future : '%s Õ°Õ¥Õ¿Õ¸',
6150            past : '%s Õ¡Õ¼Õ¡Õ»',
6151            s : 'մի քանի վայրկյան',
6152            m : 'րոպե',
6153            mm : '%d րոպե',
6154            h : 'ÕªÕ¡Õ´',
6155            hh : '%d ÕªÕ¡Õ´',
6156            d : 'օր',
6157            dd : '%d օր',
6158            M : 'Õ¡Õ´Õ«Õ½',
6159            MM : '%d Õ¡Õ´Õ«Õ½',
6160            y : 'տարի',
6161            yy : '%d տարի'
6162        },
6163        meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,
6164        isPM: function (input) {
6165            return /^(ցերեկվա|երեկոյան)$/.test(input);
6166        },
6167        meridiem : function (hour) {
6168            if (hour < 4) {
6169                return 'գիշերվա';
6170            } else if (hour < 12) {
6171                return 'Õ¡Õ¼Õ¡Õ¾Õ¸Õ¿Õ¾Õ¡';
6172            } else if (hour < 17) {
6173                return 'ցերեկվա';
6174            } else {
6175                return 'երեկոյան';
6176            }
6177        },
6178        ordinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/,
6179        ordinal: function (number, period) {
6180            switch (period) {
6181            case 'DDD':
6182            case 'w':
6183            case 'W':
6184            case 'DDDo':
6185                if (number === 1) {
6186                    return number + '-Õ«Õ¶';
6187                }
6188                return number + '-րդ';
6189            default:
6190                return number;
6191            }
6192        },
6193        week : {
6194            dow : 1, // Monday is the first day of the week.
6195            doy : 7  // The week that contains Jan 1st is the first week of the year.
6196        }
6197    });
6198
6199    //! moment.js locale configuration
6200    //! locale : Bahasa Indonesia (id)
6201    //! author : Mohammad Satrio Utomo : https://github.com/tyok
6202    //! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan
6203
6204    var id = _moment__default.defineLocale('id', {
6205        months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split('_'),
6206        monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des'.split('_'),
6207        weekdays : 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),
6208        weekdaysShort : 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),
6209        weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),
6210        longDateFormat : {
6211            LT : 'HH.mm',
6212            LTS : 'LT.ss',
6213            L : 'DD/MM/YYYY',
6214            LL : 'D MMMM YYYY',
6215            LLL : 'D MMMM YYYY [pukul] LT',
6216            LLLL : 'dddd, D MMMM YYYY [pukul] LT'
6217        },
6218        meridiemParse: /pagi|siang|sore|malam/,
6219        meridiemHour : function (hour, meridiem) {
6220            if (hour === 12) {
6221                hour = 0;
6222            }
6223            if (meridiem === 'pagi') {
6224                return hour;
6225            } else if (meridiem === 'siang') {
6226                return hour >= 11 ? hour : hour + 12;
6227            } else if (meridiem === 'sore' || meridiem === 'malam') {
6228                return hour + 12;
6229            }
6230        },
6231        meridiem : function (hours, minutes, isLower) {
6232            if (hours < 11) {
6233                return 'pagi';
6234            } else if (hours < 15) {
6235                return 'siang';
6236            } else if (hours < 19) {
6237                return 'sore';
6238            } else {
6239                return 'malam';
6240            }
6241        },
6242        calendar : {
6243            sameDay : '[Hari ini pukul] LT',
6244            nextDay : '[Besok pukul] LT',
6245            nextWeek : 'dddd [pukul] LT',
6246            lastDay : '[Kemarin pukul] LT',
6247            lastWeek : 'dddd [lalu pukul] LT',
6248            sameElse : 'L'
6249        },
6250        relativeTime : {
6251            future : 'dalam %s',
6252            past : '%s yang lalu',
6253            s : 'beberapa detik',
6254            m : 'semenit',
6255            mm : '%d menit',
6256            h : 'sejam',
6257            hh : '%d jam',
6258            d : 'sehari',
6259            dd : '%d hari',
6260            M : 'sebulan',
6261            MM : '%d bulan',
6262            y : 'setahun',
6263            yy : '%d tahun'
6264        },
6265        week : {
6266            dow : 1, // Monday is the first day of the week.
6267            doy : 7  // The week that contains Jan 1st is the first week of the year.
6268        }
6269    });
6270
6271    //! moment.js locale configuration
6272    //! locale : icelandic (is)
6273    //! author : Hinrik Örn Sigurðsson : https://github.com/hinrik
6274
6275    function is__plural(n) {
6276        if (n % 100 === 11) {
6277            return true;
6278        } else if (n % 10 === 1) {
6279            return false;
6280        }
6281        return true;
6282    }
6283    function is__translate(number, withoutSuffix, key, isFuture) {
6284        var result = number + ' ';
6285        switch (key) {
6286        case 's':
6287            return withoutSuffix || isFuture ? 'nokkrar sekúndur' : 'nokkrum sekúndum';
6288        case 'm':
6289            return withoutSuffix ? 'mínúta' : 'mínútu';
6290        case 'mm':
6291            if (is__plural(number)) {
6292                return result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum');
6293            } else if (withoutSuffix) {
6294                return result + 'mínúta';
6295            }
6296            return result + 'mínútu';
6297        case 'hh':
6298            if (is__plural(number)) {
6299                return result + (withoutSuffix || isFuture ? 'klukkustundir' : 'klukkustundum');
6300            }
6301            return result + 'klukkustund';
6302        case 'd':
6303            if (withoutSuffix) {
6304                return 'dagur';
6305            }
6306            return isFuture ? 'dag' : 'degi';
6307        case 'dd':
6308            if (is__plural(number)) {
6309                if (withoutSuffix) {
6310                    return result + 'dagar';
6311                }
6312                return result + (isFuture ? 'daga' : 'dögum');
6313            } else if (withoutSuffix) {
6314                return result + 'dagur';
6315            }
6316            return result + (isFuture ? 'dag' : 'degi');
6317        case 'M':
6318            if (withoutSuffix) {
6319                return 'mánuður';
6320            }
6321            return isFuture ? 'mánuð' : 'mánuði';
6322        case 'MM':
6323            if (is__plural(number)) {
6324                if (withoutSuffix) {
6325                    return result + 'mánuðir';
6326                }
6327                return result + (isFuture ? 'mánuði' : 'mánuðum');
6328            } else if (withoutSuffix) {
6329                return result + 'mánuður';
6330            }
6331            return result + (isFuture ? 'mánuð' : 'mánuði');
6332        case 'y':
6333            return withoutSuffix || isFuture ? 'ár' : 'ári';
6334        case 'yy':
6335            if (is__plural(number)) {
6336                return result + (withoutSuffix || isFuture ? 'ár' : 'árum');
6337            }
6338            return result + (withoutSuffix || isFuture ? 'ár' : 'ári');
6339        }
6340    }
6341
6342    var is = _moment__default.defineLocale('is', {
6343        months : 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split('_'),
6344        monthsShort : 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),
6345        weekdays : 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split('_'),
6346        weekdaysShort : 'sun_mán_þri_mið_fim_fös_lau'.split('_'),
6347        weekdaysMin : 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),
6348        longDateFormat : {
6349            LT : 'H:mm',
6350            LTS : 'LT:ss',
6351            L : 'DD/MM/YYYY',
6352            LL : 'D. MMMM YYYY',
6353            LLL : 'D. MMMM YYYY [kl.] LT',
6354            LLLL : 'dddd, D. MMMM YYYY [kl.] LT'
6355        },
6356        calendar : {
6357            sameDay : '[í dag kl.] LT',
6358            nextDay : '[á morgun kl.] LT',
6359            nextWeek : 'dddd [kl.] LT',
6360            lastDay : '[í gær kl.] LT',
6361            lastWeek : '[síðasta] dddd [kl.] LT',
6362            sameElse : 'L'
6363        },
6364        relativeTime : {
6365            future : 'eftir %s',
6366            past : 'fyrir %s síðan',
6367            s : is__translate,
6368            m : is__translate,
6369            mm : is__translate,
6370            h : 'klukkustund',
6371            hh : is__translate,
6372            d : is__translate,
6373            dd : is__translate,
6374            M : is__translate,
6375            MM : is__translate,
6376            y : is__translate,
6377            yy : is__translate
6378        },
6379        ordinalParse: /\d{1,2}\./,
6380        ordinal : '%d.',
6381        week : {
6382            dow : 1, // Monday is the first day of the week.
6383            doy : 4  // The week that contains Jan 4th is the first week of the year.
6384        }
6385    });
6386
6387    //! moment.js locale configuration
6388    //! locale : italian (it)
6389    //! author : Lorenzo : https://github.com/aliem
6390    //! author: Mattia Larentis: https://github.com/nostalgiaz
6391
6392    var it = _moment__default.defineLocale('it', {
6393        months : 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split('_'),
6394        monthsShort : 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),
6395        weekdays : 'Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato'.split('_'),
6396        weekdaysShort : 'Dom_Lun_Mar_Mer_Gio_Ven_Sab'.split('_'),
6397        weekdaysMin : 'D_L_Ma_Me_G_V_S'.split('_'),
6398        longDateFormat : {
6399            LT : 'HH:mm',
6400            LTS : 'LT:ss',
6401            L : 'DD/MM/YYYY',
6402            LL : 'D MMMM YYYY',
6403            LLL : 'D MMMM YYYY LT',
6404            LLLL : 'dddd, D MMMM YYYY LT'
6405        },
6406        calendar : {
6407            sameDay: '[Oggi alle] LT',
6408            nextDay: '[Domani alle] LT',
6409            nextWeek: 'dddd [alle] LT',
6410            lastDay: '[Ieri alle] LT',
6411            lastWeek: function () {
6412                switch (this.day()) {
6413                    case 0:
6414                        return '[la scorsa] dddd [alle] LT';
6415                    default:
6416                        return '[lo scorso] dddd [alle] LT';
6417                }
6418            },
6419            sameElse: 'L'
6420        },
6421        relativeTime : {
6422            future : function (s) {
6423                return ((/^[0-9].+$/).test(s) ? 'tra' : 'in') + ' ' + s;
6424            },
6425            past : '%s fa',
6426            s : 'alcuni secondi',
6427            m : 'un minuto',
6428            mm : '%d minuti',
6429            h : 'un\'ora',
6430            hh : '%d ore',
6431            d : 'un giorno',
6432            dd : '%d giorni',
6433            M : 'un mese',
6434            MM : '%d mesi',
6435            y : 'un anno',
6436            yy : '%d anni'
6437        },
6438        ordinalParse : /\d{1,2}º/,
6439        ordinal: '%dº',
6440        week : {
6441            dow : 1, // Monday is the first day of the week.
6442            doy : 4  // The week that contains Jan 4th is the first week of the year.
6443        }
6444    });
6445
6446    //! moment.js locale configuration
6447    //! locale : japanese (ja)
6448    //! author : LI Long : https://github.com/baryon
6449
6450    var ja = _moment__default.defineLocale('ja', {
6451        months : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
6452        monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
6453        weekdays : '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),
6454        weekdaysShort : '日_月_火_水_木_金_土'.split('_'),
6455        weekdaysMin : '日_月_火_水_木_金_土'.split('_'),
6456        longDateFormat : {
6457            LT : 'Ah時m分',
6458            LTS : 'LTs秒',
6459            L : 'YYYY/MM/DD',
6460            LL : 'YYYY年M月D日',
6461            LLL : 'YYYY年M月D日LT',
6462            LLLL : 'YYYY年M月D日LT dddd'
6463        },
6464        meridiemParse: /午前|午後/i,
6465        isPM : function (input) {
6466            return input === '午後';
6467        },
6468        meridiem : function (hour, minute, isLower) {
6469            if (hour < 12) {
6470                return '午前';
6471            } else {
6472                return '午後';
6473            }
6474        },
6475        calendar : {
6476            sameDay : '[今日] LT',
6477            nextDay : '[明日] LT',
6478            nextWeek : '[来週]dddd LT',
6479            lastDay : '[昨日] LT',
6480            lastWeek : '[前週]dddd LT',
6481            sameElse : 'L'
6482        },
6483        relativeTime : {
6484            future : '%s後',
6485            past : '%s前',
6486            s : '数秒',
6487            m : '1分',
6488            mm : '%d分',
6489            h : '1時間',
6490            hh : '%d時間',
6491            d : '1日',
6492            dd : '%d日',
6493            M : '1ヶ月',
6494            MM : '%dヶ月',
6495            y : '1å¹´',
6496            yy : '%då¹´'
6497        }
6498    });
6499
6500    //! moment.js locale configuration
6501    //! locale : Boso Jowo (jv)
6502    //! author : Rony Lantip : https://github.com/lantip
6503    //! reference: http://jv.wikipedia.org/wiki/Basa_Jawa
6504
6505    var jv = _moment__default.defineLocale('jv', {
6506        months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split('_'),
6507        monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),
6508        weekdays : 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),
6509        weekdaysShort : 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),
6510        weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),
6511        longDateFormat : {
6512            LT : 'HH.mm',
6513            LTS : 'LT.ss',
6514            L : 'DD/MM/YYYY',
6515            LL : 'D MMMM YYYY',
6516            LLL : 'D MMMM YYYY [pukul] LT',
6517            LLLL : 'dddd, D MMMM YYYY [pukul] LT'
6518        },
6519        meridiemParse: /enjing|siyang|sonten|ndalu/,
6520        meridiemHour : function (hour, meridiem) {
6521            if (hour === 12) {
6522                hour = 0;
6523            }
6524            if (meridiem === 'enjing') {
6525                return hour;
6526            } else if (meridiem === 'siyang') {
6527                return hour >= 11 ? hour : hour + 12;
6528            } else if (meridiem === 'sonten' || meridiem === 'ndalu') {
6529                return hour + 12;
6530            }
6531        },
6532        meridiem : function (hours, minutes, isLower) {
6533            if (hours < 11) {
6534                return 'enjing';
6535            } else if (hours < 15) {
6536                return 'siyang';
6537            } else if (hours < 19) {
6538                return 'sonten';
6539            } else {
6540                return 'ndalu';
6541            }
6542        },
6543        calendar : {
6544            sameDay : '[Dinten puniko pukul] LT',
6545            nextDay : '[Mbenjang pukul] LT',
6546            nextWeek : 'dddd [pukul] LT',
6547            lastDay : '[Kala wingi pukul] LT',
6548            lastWeek : 'dddd [kepengker pukul] LT',
6549            sameElse : 'L'
6550        },
6551        relativeTime : {
6552            future : 'wonten ing %s',
6553            past : '%s ingkang kepengker',
6554            s : 'sawetawis detik',
6555            m : 'setunggal menit',
6556            mm : '%d menit',
6557            h : 'setunggal jam',
6558            hh : '%d jam',
6559            d : 'sedinten',
6560            dd : '%d dinten',
6561            M : 'sewulan',
6562            MM : '%d wulan',
6563            y : 'setaun',
6564            yy : '%d taun'
6565        },
6566        week : {
6567            dow : 1, // Monday is the first day of the week.
6568            doy : 7  // The week that contains Jan 1st is the first week of the year.
6569        }
6570    });
6571
6572    //! moment.js locale configuration
6573    //! locale : Georgian (ka)
6574    //! author : Irakli Janiashvili : https://github.com/irakli-janiashvili
6575
6576    function ka__monthsCaseReplace(m, format) {
6577        var months = {
6578            'nominative': 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split('_'),
6579            'accusative': 'იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს'.split('_')
6580        },
6581        nounCase = (/D[oD] *MMMM?/).test(format) ?
6582            'accusative' :
6583            'nominative';
6584        return months[nounCase][m.month()];
6585    }
6586    function ka__weekdaysCaseReplace(m, format) {
6587        var weekdays = {
6588            'nominative': 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split('_'),
6589            'accusative': 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split('_')
6590        },
6591        nounCase = (/(წინა|შემდეგ)/).test(format) ?
6592            'accusative' :
6593            'nominative';
6594        return weekdays[nounCase][m.day()];
6595    }
6596
6597    var ka = _moment__default.defineLocale('ka', {
6598        months : ka__monthsCaseReplace,
6599        monthsShort : 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),
6600        weekdays : ka__weekdaysCaseReplace,
6601        weekdaysShort : 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),
6602        weekdaysMin : 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),
6603        longDateFormat : {
6604            LT : 'h:mm A',
6605            LTS : 'h:mm:ss A',
6606            L : 'DD/MM/YYYY',
6607            LL : 'D MMMM YYYY',
6608            LLL : 'D MMMM YYYY LT',
6609            LLLL : 'dddd, D MMMM YYYY LT'
6610        },
6611        calendar : {
6612            sameDay : '[დღეს] LT[-ზე]',
6613            nextDay : '[ხვალ] LT[-ზე]',
6614            lastDay : '[გუშინ] LT[-ზე]',
6615            nextWeek : '[შემდეგ] dddd LT[-ზე]',
6616            lastWeek : '[წინა] dddd LT-ზე',
6617            sameElse : 'L'
6618        },
6619        relativeTime : {
6620            future : function (s) {
6621                return (/(წამი|წუთი|საათი|წელი)/).test(s) ?
6622                    s.replace(/ი$/, 'ში') :
6623                    s + 'ში';
6624            },
6625            past : function (s) {
6626                if ((/(წამი|წუთი|საათი|დღე|თვე)/).test(s)) {
6627                    return s.replace(/(ი|ე)$/, 'ის წინ');
6628                }
6629                if ((/წელი/).test(s)) {
6630                    return s.replace(/წელი$/, 'წლის წინ');
6631                }
6632            },
6633            s : 'რამდენიმე წამი',
6634            m : 'წუთი',
6635            mm : '%d წუთი',
6636            h : 'საათი',
6637            hh : '%d საათი',
6638            d : 'დღე',
6639            dd : '%d დღე',
6640            M : 'თვე',
6641            MM : '%d თვე',
6642            y : 'წელი',
6643            yy : '%d წელი'
6644        },
6645        ordinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,
6646        ordinal : function (number) {
6647            if (number === 0) {
6648                return number;
6649            }
6650            if (number === 1) {
6651                return number + '-ლი';
6652            }
6653            if ((number < 20) || (number <= 100 && (number % 20 === 0)) || (number % 100 === 0)) {
6654                return 'მე-' + number;
6655            }
6656            return number + '-ე';
6657        },
6658        week : {
6659            dow : 1,
6660            doy : 7
6661        }
6662    });
6663
6664    //! moment.js locale configuration
6665    //! locale : khmer (km)
6666    //! author : Kruy Vanna : https://github.com/kruyvanna
6667
6668    var km = _moment__default.defineLocale('km', {
6669        months: 'មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split('_'),
6670        monthsShort: 'មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split('_'),
6671        weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),
6672        weekdaysShort: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),
6673        weekdaysMin: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),
6674        longDateFormat: {
6675            LT: 'HH:mm',
6676            LTS : 'LT:ss',
6677            L: 'DD/MM/YYYY',
6678            LL: 'D MMMM YYYY',
6679            LLL: 'D MMMM YYYY LT',
6680            LLLL: 'dddd, D MMMM YYYY LT'
6681        },
6682        calendar: {
6683            sameDay: '[ថ្ងៃនៈ ម៉ោង] LT',
6684            nextDay: '[ស្អែក ម៉ោង] LT',
6685            nextWeek: 'dddd [ម៉ោង] LT',
6686            lastDay: '[ម្សិលមិញ ម៉ោង] LT',
6687            lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',
6688            sameElse: 'L'
6689        },
6690        relativeTime: {
6691            future: '%sទៀត',
6692            past: '%sមុន',
6693            s: 'ប៉ុន្មានវិនាទី',
6694            m: 'មួយនាទី',
6695            mm: '%d នាទី',
6696            h: 'មួយម៉ោង',
6697            hh: '%d ម៉ោង',
6698            d: 'មួយថ្ងៃ',
6699            dd: '%d ថ្ងៃ',
6700            M: 'មួយខែ',
6701            MM: '%d ខែ',
6702            y: 'មួយឆ្នាំ',
6703            yy: '%d ឆ្នាំ'
6704        },
6705        week: {
6706            dow: 1, // Monday is the first day of the week.
6707            doy: 4 // The week that contains Jan 4th is the first week of the year.
6708        }
6709    });
6710
6711    //! moment.js locale configuration
6712    //! locale : korean (ko)
6713    //!
6714    //! authors
6715    //!
6716    //! - Kyungwook, Park : https://github.com/kyungw00k
6717    //! - Jeeeyul Lee <[email protected]>
6718
6719    var ko = _moment__default.defineLocale('ko', {
6720        months : '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),
6721        monthsShort : '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),
6722        weekdays : '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'),
6723        weekdaysShort : '일_월_화_수_목_금_토'.split('_'),
6724        weekdaysMin : '일_월_화_수_목_금_토'.split('_'),
6725        longDateFormat : {
6726            LT : 'A h시 m분',
6727            LTS : 'A h시 m분 s초',
6728            L : 'YYYY.MM.DD',
6729            LL : 'YYYY년 MMMM D일',
6730            LLL : 'YYYY년 MMMM D일 LT',
6731            LLLL : 'YYYY년 MMMM D일 dddd LT'
6732        },
6733        calendar : {
6734            sameDay : '오늘 LT',
6735            nextDay : '내일 LT',
6736            nextWeek : 'dddd LT',
6737            lastDay : '어제 LT',
6738            lastWeek : '지난주 dddd LT',
6739            sameElse : 'L'
6740        },
6741        relativeTime : {
6742            future : '%s 후',
6743            past : '%s 전',
6744            s : '몇초',
6745            ss : '%d초',
6746            m : '일분',
6747            mm : '%d분',
6748            h : '한시간',
6749            hh : '%d시간',
6750            d : '하루',
6751            dd : '%d일',
6752            M : '한달',
6753            MM : '%d달',
6754            y : '일년',
6755            yy : '%d년'
6756        },
6757        ordinalParse : /\d{1,2}일/,
6758        ordinal : '%d일',
6759        meridiemParse : /오전|오후/,
6760        isPM : function (token) {
6761            return token === '오후';
6762        },
6763        meridiem : function (hour, minute, isUpper) {
6764            return hour < 12 ? '오전' : '오후';
6765        }
6766    });
6767
6768    //! moment.js locale configuration
6769    //! locale : Luxembourgish (lb)
6770    //! author : mweimerskirch : https://github.com/mweimerskirch, David Raison : https://github.com/kwisatz
6771
6772    function lb__processRelativeTime(number, withoutSuffix, key, isFuture) {
6773        var format = {
6774            'm': ['eng Minutt', 'enger Minutt'],
6775            'h': ['eng Stonn', 'enger Stonn'],
6776            'd': ['een Dag', 'engem Dag'],
6777            'M': ['ee Mount', 'engem Mount'],
6778            'y': ['ee Joer', 'engem Joer']
6779        };
6780        return withoutSuffix ? format[key][0] : format[key][1];
6781    }
6782    function processFutureTime(string) {
6783        var number = string.substr(0, string.indexOf(' '));
6784        if (eifelerRegelAppliesToNumber(number)) {
6785            return 'a ' + string;
6786        }
6787        return 'an ' + string;
6788    }
6789    function processPastTime(string) {
6790        var number = string.substr(0, string.indexOf(' '));
6791        if (eifelerRegelAppliesToNumber(number)) {
6792            return 'viru ' + string;
6793        }
6794        return 'virun ' + string;
6795    }
6796    /**
6797     * Returns true if the word before the given number loses the '-n' ending.
6798     * e.g. 'an 10 Deeg' but 'a 5 Deeg'
6799     *
6800     * @param number {integer}
6801     * @returns {boolean}
6802     */
6803    function eifelerRegelAppliesToNumber(number) {
6804        number = parseInt(number, 10);
6805        if (isNaN(number)) {
6806            return false;
6807        }
6808        if (number < 0) {
6809            // Negative Number --> always true
6810            return true;
6811        } else if (number < 10) {
6812            // Only 1 digit
6813            if (4 <= number && number <= 7) {
6814                return true;
6815            }
6816            return false;
6817        } else if (number < 100) {
6818            // 2 digits
6819            var lastDigit = number % 10, firstDigit = number / 10;
6820            if (lastDigit === 0) {
6821                return eifelerRegelAppliesToNumber(firstDigit);
6822            }
6823            return eifelerRegelAppliesToNumber(lastDigit);
6824        } else if (number < 10000) {
6825            // 3 or 4 digits --> recursively check first digit
6826            while (number >= 10) {
6827                number = number / 10;
6828            }
6829            return eifelerRegelAppliesToNumber(number);
6830        } else {
6831            // Anything larger than 4 digits: recursively check first n-3 digits
6832            number = number / 1000;
6833            return eifelerRegelAppliesToNumber(number);
6834        }
6835    }
6836
6837    var lb = _moment__default.defineLocale('lb', {
6838        months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),
6839        monthsShort: 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),
6840        weekdays: 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split('_'),
6841        weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),
6842        weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),
6843        longDateFormat: {
6844            LT: 'H:mm [Auer]',
6845            LTS: 'H:mm:ss [Auer]',
6846            L: 'DD.MM.YYYY',
6847            LL: 'D. MMMM YYYY',
6848            LLL: 'D. MMMM YYYY LT',
6849            LLLL: 'dddd, D. MMMM YYYY LT'
6850        },
6851        calendar: {
6852            sameDay: '[Haut um] LT',
6853            sameElse: 'L',
6854            nextDay: '[Muer um] LT',
6855            nextWeek: 'dddd [um] LT',
6856            lastDay: '[Gëschter um] LT',
6857            lastWeek: function () {
6858                // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule
6859                switch (this.day()) {
6860                    case 2:
6861                    case 4:
6862                        return '[Leschten] dddd [um] LT';
6863                    default:
6864                        return '[Leschte] dddd [um] LT';
6865                }
6866            }
6867        },
6868        relativeTime : {
6869            future : processFutureTime,
6870            past : processPastTime,
6871            s : 'e puer Sekonnen',
6872            m : lb__processRelativeTime,
6873            mm : '%d Minutten',
6874            h : lb__processRelativeTime,
6875            hh : '%d Stonnen',
6876            d : lb__processRelativeTime,
6877            dd : '%d Deeg',
6878            M : lb__processRelativeTime,
6879            MM : '%d Méint',
6880            y : lb__processRelativeTime,
6881            yy : '%d Joer'
6882        },
6883        ordinalParse: /\d{1,2}\./,
6884        ordinal: '%d.',
6885        week: {
6886            dow: 1, // Monday is the first day of the week.
6887            doy: 4  // The week that contains Jan 4th is the first week of the year.
6888        }
6889    });
6890
6891    //! moment.js locale configuration
6892    //! locale : Lithuanian (lt)
6893    //! author : Mindaugas Mozūras : https://github.com/mmozuras
6894
6895    var lt__units = {
6896        'm' : 'minutė_minutės_minutę',
6897        'mm': 'minutės_minučių_minutes',
6898        'h' : 'valanda_valandos_valandą',
6899        'hh': 'valandos_valandų_valandas',
6900        'd' : 'diena_dienos_dieną',
6901        'dd': 'dienos_dienų_dienas',
6902        'M' : 'mėnuo_mėnesio_mėnesį',
6903        'MM': 'mėnesiai_mėnesių_mėnesius',
6904        'y' : 'metai_metų_metus',
6905        'yy': 'metai_metų_metus'
6906    },
6907    weekDays = 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split('_');
6908    function translateSeconds(number, withoutSuffix, key, isFuture) {
6909        if (withoutSuffix) {
6910            return 'kelios sekundės';
6911        } else {
6912            return isFuture ? 'kelių sekundžių' : 'kelias sekundes';
6913        }
6914    }
6915    function translateSingular(number, withoutSuffix, key, isFuture) {
6916        return withoutSuffix ? forms(key)[0] : (isFuture ? forms(key)[1] : forms(key)[2]);
6917    }
6918    function special(number) {
6919        return number % 10 === 0 || (number > 10 && number < 20);
6920    }
6921    function forms(key) {
6922        return lt__units[key].split('_');
6923    }
6924    function lt__translate(number, withoutSuffix, key, isFuture) {
6925        var result = number + ' ';
6926        if (number === 1) {
6927            return result + translateSingular(number, withoutSuffix, key[0], isFuture);
6928        } else if (withoutSuffix) {
6929            return result + (special(number) ? forms(key)[1] : forms(key)[0]);
6930        } else {
6931            if (isFuture) {
6932                return result + forms(key)[1];
6933            } else {
6934                return result + (special(number) ? forms(key)[1] : forms(key)[2]);
6935            }
6936        }
6937    }
6938    function relativeWeekDay(moment, format) {
6939        var nominative = format.indexOf('dddd HH:mm') === -1,
6940            weekDay = weekDays[moment.day()];
6941        return nominative ? weekDay : weekDay.substring(0, weekDay.length - 2) + 'į';
6942    }
6943
6944    var lt = _moment__default.defineLocale('lt', {
6945        months : 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split('_'),
6946        monthsShort : 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),
6947        weekdays : relativeWeekDay,
6948        weekdaysShort : 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),
6949        weekdaysMin : 'S_P_A_T_K_Pn_Å '.split('_'),
6950        longDateFormat : {
6951            LT : 'HH:mm',
6952            LTS : 'LT:ss',
6953            L : 'YYYY-MM-DD',
6954            LL : 'YYYY [m.] MMMM D [d.]',
6955            LLL : 'YYYY [m.] MMMM D [d.], LT [val.]',
6956            LLLL : 'YYYY [m.] MMMM D [d.], dddd, LT [val.]',
6957            l : 'YYYY-MM-DD',
6958            ll : 'YYYY [m.] MMMM D [d.]',
6959            lll : 'YYYY [m.] MMMM D [d.], LT [val.]',
6960            llll : 'YYYY [m.] MMMM D [d.], ddd, LT [val.]'
6961        },
6962        calendar : {
6963            sameDay : '[Å iandien] LT',
6964            nextDay : '[Rytoj] LT',
6965            nextWeek : 'dddd LT',
6966            lastDay : '[Vakar] LT',
6967            lastWeek : '[Praėjusį] dddd LT',
6968            sameElse : 'L'
6969        },
6970        relativeTime : {
6971            future : 'po %s',
6972            past : 'prieš %s',
6973            s : translateSeconds,
6974            m : translateSingular,
6975            mm : lt__translate,
6976            h : translateSingular,
6977            hh : lt__translate,
6978            d : translateSingular,
6979            dd : lt__translate,
6980            M : translateSingular,
6981            MM : lt__translate,
6982            y : translateSingular,
6983            yy : lt__translate
6984        },
6985        ordinalParse: /\d{1,2}-oji/,
6986        ordinal : function (number) {
6987            return number + '-oji';
6988        },
6989        week : {
6990            dow : 1, // Monday is the first day of the week.
6991            doy : 4  // The week that contains Jan 4th is the first week of the year.
6992        }
6993    });
6994
6995    //! moment.js locale configuration
6996    //! locale : latvian (lv)
6997    //! author : Kristaps Karlsons : https://github.com/skakri
6998    //! author : Jānis Elmeris : https://github.com/JanisE
6999
7000    var lv__units = {
7001        'm': 'minūtes_minūtēm_minūte_minūtes'.split('_'),
7002        'mm': 'minūtes_minūtēm_minūte_minūtes'.split('_'),
7003        'h': 'stundas_stundām_stunda_stundas'.split('_'),
7004        'hh': 'stundas_stundām_stunda_stundas'.split('_'),
7005        'd': 'dienas_dienām_diena_dienas'.split('_'),
7006        'dd': 'dienas_dienām_diena_dienas'.split('_'),
7007        'M': 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),
7008        'MM': 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),
7009        'y': 'gada_gadiem_gads_gadi'.split('_'),
7010        'yy': 'gada_gadiem_gads_gadi'.split('_')
7011    };
7012    /**
7013     * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.
7014     */
7015    function lv__format(forms, number, withoutSuffix) {
7016        if (withoutSuffix) {
7017            // E.g. "21 minūte", "3 minūtes".
7018            return number % 10 === 1 && number !== 11 ? forms[2] : forms[3];
7019        } else {
7020            // E.g. "21 minūtes" as in "pēc 21 minūtes".
7021            // E.g. "3 minūtēm" as in "pēc 3 minūtēm".
7022            return number % 10 === 1 && number !== 11 ? forms[0] : forms[1];
7023        }
7024    }
7025    function lv__relativeTimeWithPlural(number, withoutSuffix, key) {
7026        return number + ' ' + lv__format(lv__units[key], number, withoutSuffix);
7027    }
7028    function relativeTimeWithSingular(number, withoutSuffix, key) {
7029        return lv__format(lv__units[key], number, withoutSuffix);
7030    }
7031    function relativeSeconds(number, withoutSuffix) {
7032        return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm';
7033    }
7034
7035    var lv = _moment__default.defineLocale('lv', {
7036        months : 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split('_'),
7037        monthsShort : 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'),
7038        weekdays : 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split('_'),
7039        weekdaysShort : 'Sv_P_O_T_C_Pk_S'.split('_'),
7040        weekdaysMin : 'Sv_P_O_T_C_Pk_S'.split('_'),
7041        longDateFormat : {
7042            LT : 'HH:mm',
7043            LTS : 'LT:ss',
7044            L : 'DD.MM.YYYY.',
7045            LL : 'YYYY. [gada] D. MMMM',
7046            LLL : 'YYYY. [gada] D. MMMM, LT',
7047            LLLL : 'YYYY. [gada] D. MMMM, dddd, LT'
7048        },
7049        calendar : {
7050            sameDay : '[Å odien pulksten] LT',
7051            nextDay : '[Rīt pulksten] LT',
7052            nextWeek : 'dddd [pulksten] LT',
7053            lastDay : '[Vakar pulksten] LT',
7054            lastWeek : '[Pagājušā] dddd [pulksten] LT',
7055            sameElse : 'L'
7056        },
7057        relativeTime : {
7058            future : 'pēc %s',
7059            past : 'pirms %s',
7060            s : relativeSeconds,
7061            m : relativeTimeWithSingular,
7062            mm : lv__relativeTimeWithPlural,
7063            h : relativeTimeWithSingular,
7064            hh : lv__relativeTimeWithPlural,
7065            d : relativeTimeWithSingular,
7066            dd : lv__relativeTimeWithPlural,
7067            M : relativeTimeWithSingular,
7068            MM : lv__relativeTimeWithPlural,
7069            y : relativeTimeWithSingular,
7070            yy : lv__relativeTimeWithPlural
7071        },
7072        ordinalParse: /\d{1,2}\./,
7073        ordinal : '%d.',
7074        week : {
7075            dow : 1, // Monday is the first day of the week.
7076            doy : 4  // The week that contains Jan 4th is the first week of the year.
7077        }
7078    });
7079
7080    //! moment.js locale configuration
7081    //! locale : Montenegrin (me)
7082    //! author : Miodrag Nikač <[email protected]> : https://github.com/miodragnikac
7083
7084    var me__translator = {
7085        words: { //Different grammatical cases
7086            m: ['jedan minut', 'jednog minuta'],
7087            mm: ['minut', 'minuta', 'minuta'],
7088            h: ['jedan sat', 'jednog sata'],
7089            hh: ['sat', 'sata', 'sati'],
7090            dd: ['dan', 'dana', 'dana'],
7091            MM: ['mjesec', 'mjeseca', 'mjeseci'],
7092            yy: ['godina', 'godine', 'godina']
7093        },
7094        correctGrammaticalCase: function (number, wordKey) {
7095            return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);
7096        },
7097        translate: function (number, withoutSuffix, key) {
7098            var wordKey = me__translator.words[key];
7099            if (key.length === 1) {
7100                return withoutSuffix ? wordKey[0] : wordKey[1];
7101            } else {
7102                return number + ' ' + me__translator.correctGrammaticalCase(number, wordKey);
7103            }
7104        }
7105    };
7106
7107    var me = _moment__default.defineLocale('me', {
7108        months: ['januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar'],
7109        monthsShort: ['jan.', 'feb.', 'mar.', 'apr.', 'maj', 'jun', 'jul', 'avg.', 'sep.', 'okt.', 'nov.', 'dec.'],
7110        weekdays: ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
7111        weekdaysShort: ['ned.', 'pon.', 'uto.', 'sri.', 'čet.', 'pet.', 'sub.'],
7112        weekdaysMin: ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
7113        longDateFormat: {
7114            LT: 'H:mm',
7115            LTS : 'LT:ss',
7116            L: 'DD. MM. YYYY',
7117            LL: 'D. MMMM YYYY',
7118            LLL: 'D. MMMM YYYY LT',
7119            LLLL: 'dddd, D. MMMM YYYY LT'
7120        },
7121        calendar: {
7122            sameDay: '[danas u] LT',
7123            nextDay: '[sjutra u] LT',
7124
7125            nextWeek: function () {
7126                switch (this.day()) {
7127                case 0:
7128                    return '[u] [nedjelju] [u] LT';
7129                case 3:
7130                    return '[u] [srijedu] [u] LT';
7131                case 6:
7132                    return '[u] [subotu] [u] LT';
7133                case 1:
7134                case 2:
7135                case 4:
7136                case 5:
7137                    return '[u] dddd [u] LT';
7138                }
7139            },
7140            lastDay  : '[juče u] LT',
7141            lastWeek : function () {
7142                var lastWeekDays = [
7143                    '[prošle] [nedjelje] [u] LT',
7144                    '[prošlog] [ponedjeljka] [u] LT',
7145                    '[prošlog] [utorka] [u] LT',
7146                    '[prošle] [srijede] [u] LT',
7147                    '[prošlog] [četvrtka] [u] LT',
7148                    '[prošlog] [petka] [u] LT',
7149                    '[prošle] [subote] [u] LT'
7150                ];
7151                return lastWeekDays[this.day()];
7152            },
7153            sameElse : 'L'
7154        },
7155        relativeTime : {
7156            future : 'za %s',
7157            past   : 'prije %s',
7158            s      : 'nekoliko sekundi',
7159            m      : me__translator.translate,
7160            mm     : me__translator.translate,
7161            h      : me__translator.translate,
7162            hh     : me__translator.translate,
7163            d      : 'dan',
7164            dd     : me__translator.translate,
7165            M      : 'mjesec',
7166            MM     : me__translator.translate,
7167            y      : 'godinu',
7168            yy     : me__translator.translate
7169        },
7170        ordinalParse: /\d{1,2}\./,
7171        ordinal : '%d.',
7172        week : {
7173            dow : 1, // Monday is the first day of the week.
7174            doy : 7  // The week that contains Jan 1st is the first week of the year.
7175        }
7176    });
7177
7178    //! moment.js locale configuration
7179    //! locale : macedonian (mk)
7180    //! author : Borislav Mickov : https://github.com/B0k0
7181
7182    var mk = _moment__default.defineLocale('mk', {
7183        months : 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split('_'),
7184        monthsShort : 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'),
7185        weekdays : 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split('_'),
7186        weekdaysShort : 'нед_пон_вто_сре_чет_пет_саб'.split('_'),
7187        weekdaysMin : 'нe_пo_вт_ср_че_пе_сa'.split('_'),
7188        longDateFormat : {
7189            LT : 'H:mm',
7190            LTS : 'LT:ss',
7191            L : 'D.MM.YYYY',
7192            LL : 'D MMMM YYYY',
7193            LLL : 'D MMMM YYYY LT',
7194            LLLL : 'dddd, D MMMM YYYY LT'
7195        },
7196        calendar : {
7197            sameDay : '[Денес во] LT',
7198            nextDay : '[Утре во] LT',
7199            nextWeek : 'dddd [во] LT',
7200            lastDay : '[Вчера во] LT',
7201            lastWeek : function () {
7202                switch (this.day()) {
7203                case 0:
7204                case 3:
7205                case 6:
7206                    return '[Во изминатата] dddd [во] LT';
7207                case 1:
7208                case 2:
7209                case 4:
7210                case 5:
7211                    return '[Во изминатиот] dddd [во] LT';
7212                }
7213            },
7214            sameElse : 'L'
7215        },
7216        relativeTime : {
7217            future : 'после %s',
7218            past : 'пред %s',
7219            s : 'неколку секунди',
7220            m : 'минута',
7221            mm : '%d минути',
7222            h : 'час',
7223            hh : '%d часа',
7224            d : 'ден',
7225            dd : '%d дена',
7226            M : 'месец',
7227            MM : '%d месеци',
7228            y : 'година',
7229            yy : '%d години'
7230        },
7231        ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/,
7232        ordinal : function (number) {
7233            var lastDigit = number % 10,
7234                last2Digits = number % 100;
7235            if (number === 0) {
7236                return number + '-ев';
7237            } else if (last2Digits === 0) {
7238                return number + '-ен';
7239            } else if (last2Digits > 10 && last2Digits < 20) {
7240                return number + '-ти';
7241            } else if (lastDigit === 1) {
7242                return number + '-ви';
7243            } else if (lastDigit === 2) {
7244                return number + '-ри';
7245            } else if (lastDigit === 7 || lastDigit === 8) {
7246                return number + '-ми';
7247            } else {
7248                return number + '-ти';
7249            }
7250        },
7251        week : {
7252            dow : 1, // Monday is the first day of the week.
7253            doy : 7  // The week that contains Jan 1st is the first week of the year.
7254        }
7255    });
7256
7257    //! moment.js locale configuration
7258    //! locale : malayalam (ml)
7259    //! author : Floyd Pink : https://github.com/floydpink
7260
7261    var ml = _moment__default.defineLocale('ml', {
7262        months : 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split('_'),
7263        monthsShort : 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split('_'),
7264        weekdays : 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split('_'),
7265        weekdaysShort : 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),
7266        weekdaysMin : 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),
7267        longDateFormat : {
7268            LT : 'A h:mm -നു',
7269            LTS : 'A h:mm:ss -നു',
7270            L : 'DD/MM/YYYY',
7271            LL : 'D MMMM YYYY',
7272            LLL : 'D MMMM YYYY, LT',
7273            LLLL : 'dddd, D MMMM YYYY, LT'
7274        },
7275        calendar : {
7276            sameDay : '[ഇന്ന്] LT',
7277            nextDay : '[നാളെ] LT',
7278            nextWeek : 'dddd, LT',
7279            lastDay : '[ഇന്നലെ] LT',
7280            lastWeek : '[കഴിഞ്ഞ] dddd, LT',
7281            sameElse : 'L'
7282        },
7283        relativeTime : {
7284            future : '%s കഴിഞ്ഞ്',
7285            past : '%s മുൻപ്',
7286            s : 'അൽപ നിമിഷങ്ങൾ',
7287            m : 'ഒരു മിനിറ്റ്',
7288            mm : '%d മിനിറ്റ്',
7289            h : 'ഒരു മണിക്കൂർ',
7290            hh : '%d മണിക്കൂർ',
7291            d : 'ഒരു ദിവസം',
7292            dd : '%d ദിവസം',
7293            M : 'ഒരു മാസം',
7294            MM : '%d മാസം',
7295            y : 'ഒരു വർഷം',
7296            yy : '%d വർഷം'
7297        },
7298        meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,
7299        isPM : function (input) {
7300            return /^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(input);
7301        },
7302        meridiem : function (hour, minute, isLower) {
7303            if (hour < 4) {
7304                return 'രാത്രി';
7305            } else if (hour < 12) {
7306                return 'രാവിലെ';
7307            } else if (hour < 17) {
7308                return 'ഉച്ച കഴിഞ്ഞ്';
7309            } else if (hour < 20) {
7310                return 'വൈകുന്നേരം';
7311            } else {
7312                return 'രാത്രി';
7313            }
7314        }
7315    });
7316
7317    //! moment.js locale configuration
7318    //! locale : Marathi (mr)
7319    //! author : Harshad Kale : https://github.com/kalehv
7320
7321    var mr__symbolMap = {
7322        '1': '१',
7323        '2': '२',
7324        '3': '३',
7325        '4': '४',
7326        '5': '५',
7327        '6': '६',
7328        '7': '७',
7329        '8': '८',
7330        '9': '९',
7331        '0': '०'
7332    },
7333    mr__numberMap = {
7334        '१': '1',
7335        '२': '2',
7336        '३': '3',
7337        '४': '4',
7338        '५': '5',
7339        '६': '6',
7340        '७': '7',
7341        '८': '8',
7342        '९': '9',
7343        '०': '0'
7344    };
7345
7346    var mr = _moment__default.defineLocale('mr', {
7347        months : 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split('_'),
7348        monthsShort: 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split('_'),
7349        weekdays : 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),
7350        weekdaysShort : 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'),
7351        weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'),
7352        longDateFormat : {
7353            LT : 'A h:mm वाजता',
7354            LTS : 'A h:mm:ss वाजता',
7355            L : 'DD/MM/YYYY',
7356            LL : 'D MMMM YYYY',
7357            LLL : 'D MMMM YYYY, LT',
7358            LLLL : 'dddd, D MMMM YYYY, LT'
7359        },
7360        calendar : {
7361            sameDay : '[आज] LT',
7362            nextDay : '[उद्या] LT',
7363            nextWeek : 'dddd, LT',
7364            lastDay : '[काल] LT',
7365            lastWeek: '[मागील] dddd, LT',
7366            sameElse : 'L'
7367        },
7368        relativeTime : {
7369            future : '%s नंतर',
7370            past : '%s पूर्वी',
7371            s : 'सेकंद',
7372            m: 'एक मिनिट',
7373            mm: '%d मिनिटे',
7374            h : 'एक तास',
7375            hh : '%d तास',
7376            d : 'एक दिवस',
7377            dd : '%d दिवस',
7378            M : 'एक महिना',
7379            MM : '%d महिने',
7380            y : 'एक वर्ष',
7381            yy : '%d वर्षे'
7382        },
7383        preparse: function (string) {
7384            return string.replace(/[१२३४५६७८९०]/g, function (match) {
7385                return mr__numberMap[match];
7386            });
7387        },
7388        postformat: function (string) {
7389            return string.replace(/\d/g, function (match) {
7390                return mr__symbolMap[match];
7391            });
7392        },
7393        meridiemParse: /रात्री|सकाळी|दुपारी|सायंकाळी/,
7394        meridiemHour : function (hour, meridiem) {
7395            if (hour === 12) {
7396                hour = 0;
7397            }
7398            if (meridiem === 'रात्री') {
7399                return hour < 4 ? hour : hour + 12;
7400            } else if (meridiem === 'सकाळी') {
7401                return hour;
7402            } else if (meridiem === 'दुपारी') {
7403                return hour >= 10 ? hour : hour + 12;
7404            } else if (meridiem === 'सायंकाळी') {
7405                return hour + 12;
7406            }
7407        },
7408        meridiem: function (hour, minute, isLower) {
7409            if (hour < 4) {
7410                return 'रात्री';
7411            } else if (hour < 10) {
7412                return 'सकाळी';
7413            } else if (hour < 17) {
7414                return 'दुपारी';
7415            } else if (hour < 20) {
7416                return 'सायंकाळी';
7417            } else {
7418                return 'रात्री';
7419            }
7420        },
7421        week : {
7422            dow : 0, // Sunday is the first day of the week.
7423            doy : 6  // The week that contains Jan 1st is the first week of the year.
7424        }
7425    });
7426
7427    //! moment.js locale configuration
7428    //! locale : Bahasa Malaysia (ms-MY)
7429    //! author : Weldan Jamili : https://github.com/weldan
7430
7431    var ms_my = _moment__default.defineLocale('ms-my', {
7432        months : 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split('_'),
7433        monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),
7434        weekdays : 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),
7435        weekdaysShort : 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),
7436        weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),
7437        longDateFormat : {
7438            LT : 'HH.mm',
7439            LTS : 'LT.ss',
7440            L : 'DD/MM/YYYY',
7441            LL : 'D MMMM YYYY',
7442            LLL : 'D MMMM YYYY [pukul] LT',
7443            LLLL : 'dddd, D MMMM YYYY [pukul] LT'
7444        },
7445        meridiemParse: /pagi|tengahari|petang|malam/,
7446        meridiemHour: function (hour, meridiem) {
7447            if (hour === 12) {
7448                hour = 0;
7449            }
7450            if (meridiem === 'pagi') {
7451                return hour;
7452            } else if (meridiem === 'tengahari') {
7453                return hour >= 11 ? hour : hour + 12;
7454            } else if (meridiem === 'petang' || meridiem === 'malam') {
7455                return hour + 12;
7456            }
7457        },
7458        meridiem : function (hours, minutes, isLower) {
7459            if (hours < 11) {
7460                return 'pagi';
7461            } else if (hours < 15) {
7462                return 'tengahari';
7463            } else if (hours < 19) {
7464                return 'petang';
7465            } else {
7466                return 'malam';
7467            }
7468        },
7469        calendar : {
7470            sameDay : '[Hari ini pukul] LT',
7471            nextDay : '[Esok pukul] LT',
7472            nextWeek : 'dddd [pukul] LT',
7473            lastDay : '[Kelmarin pukul] LT',
7474            lastWeek : 'dddd [lepas pukul] LT',
7475            sameElse : 'L'
7476        },
7477        relativeTime : {
7478            future : 'dalam %s',
7479            past : '%s yang lepas',
7480            s : 'beberapa saat',
7481            m : 'seminit',
7482            mm : '%d minit',
7483            h : 'sejam',
7484            hh : '%d jam',
7485            d : 'sehari',
7486            dd : '%d hari',
7487            M : 'sebulan',
7488            MM : '%d bulan',
7489            y : 'setahun',
7490            yy : '%d tahun'
7491        },
7492        week : {
7493            dow : 1, // Monday is the first day of the week.
7494            doy : 7  // The week that contains Jan 1st is the first week of the year.
7495        }
7496    });
7497
7498    //! moment.js locale configuration
7499    //! locale : Burmese (my)
7500    //! author : Squar team, mysquar.com
7501
7502    var my__symbolMap = {
7503        '1': '၁',
7504        '2': '၂',
7505        '3': '၃',
7506        '4': '၄',
7507        '5': '၅',
7508        '6': '၆',
7509        '7': '၇',
7510        '8': '၈',
7511        '9': '၉',
7512        '0': '၀'
7513    }, my__numberMap = {
7514        '၁': '1',
7515        '၂': '2',
7516        '၃': '3',
7517        '၄': '4',
7518        '၅': '5',
7519        '၆': '6',
7520        '၇': '7',
7521        '၈': '8',
7522        '၉': '9',
7523        '၀': '0'
7524    };
7525
7526    var my = _moment__default.defineLocale('my', {
7527        months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split('_'),
7528        monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),
7529        weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split('_'),
7530        weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),
7531        weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),
7532
7533        longDateFormat: {
7534            LT: 'HH:mm',
7535            LTS: 'HH:mm:ss',
7536            L: 'DD/MM/YYYY',
7537            LL: 'D MMMM YYYY',
7538            LLL: 'D MMMM YYYY LT',
7539            LLLL: 'dddd D MMMM YYYY LT'
7540        },
7541        calendar: {
7542            sameDay: '[ယနေ.] LT [မှာ]',
7543            nextDay: '[မနက်ဖြန်] LT [မှာ]',
7544            nextWeek: 'dddd LT [မှာ]',
7545            lastDay: '[မနေ.က] LT [မှာ]',
7546            lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',
7547            sameElse: 'L'
7548        },
7549        relativeTime: {
7550            future: 'လာမည့် %s မှာ',
7551            past: 'လွန်ခဲ့သော %s က',
7552            s: 'စက္ကန်.အနည်းငယ်',
7553            m: 'တစ်မိနစ်',
7554            mm: '%d မိနစ်',
7555            h: 'တစ်နာရီ',
7556            hh: '%d နာရီ',
7557            d: 'တစ်ရက်',
7558            dd: '%d ရက်',
7559            M: 'တစ်လ',
7560            MM: '%d လ',
7561            y: 'တစ်နှစ်',
7562            yy: '%d နှစ်'
7563        },
7564        preparse: function (string) {
7565            return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {
7566                return my__numberMap[match];
7567            });
7568        },
7569        postformat: function (string) {
7570            return string.replace(/\d/g, function (match) {
7571                return my__symbolMap[match];
7572            });
7573        },
7574        week: {
7575            dow: 1, // Monday is the first day of the week.
7576            doy: 4 // The week that contains Jan 1st is the first week of the year.
7577        }
7578    });
7579
7580    //! moment.js locale configuration
7581    //! locale : norwegian bokmål (nb)
7582    //! authors : Espen Hovlandsdal : https://github.com/rexxars
7583    //!           Sigurd Gartmann : https://github.com/sigurdga
7584
7585    var nb = _moment__default.defineLocale('nb', {
7586        months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),
7587        monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),
7588        weekdays : 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),
7589        weekdaysShort : 'søn_man_tirs_ons_tors_fre_lør'.split('_'),
7590        weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'),
7591        longDateFormat : {
7592            LT : 'H.mm',
7593            LTS : 'LT.ss',
7594            L : 'DD.MM.YYYY',
7595            LL : 'D. MMMM YYYY',
7596            LLL : 'D. MMMM YYYY [kl.] LT',
7597            LLLL : 'dddd D. MMMM YYYY [kl.] LT'
7598        },
7599        calendar : {
7600            sameDay: '[i dag kl.] LT',
7601            nextDay: '[i morgen kl.] LT',
7602            nextWeek: 'dddd [kl.] LT',
7603            lastDay: '[i går kl.] LT',
7604            lastWeek: '[forrige] dddd [kl.] LT',
7605            sameElse: 'L'
7606        },
7607        relativeTime : {
7608            future : 'om %s',
7609            past : 'for %s siden',
7610            s : 'noen sekunder',
7611            m : 'ett minutt',
7612            mm : '%d minutter',
7613            h : 'en time',
7614            hh : '%d timer',
7615            d : 'en dag',
7616            dd : '%d dager',
7617            M : 'en måned',
7618            MM : '%d måneder',
7619            y : 'ett år',
7620            yy : '%d år'
7621        },
7622        ordinalParse: /\d{1,2}\./,
7623        ordinal : '%d.',
7624        week : {
7625            dow : 1, // Monday is the first day of the week.
7626            doy : 4  // The week that contains Jan 4th is the first week of the year.
7627        }
7628    });
7629
7630    //! moment.js locale configuration
7631    //! locale : nepali/nepalese
7632    //! author : suvash : https://github.com/suvash
7633
7634    var ne__symbolMap = {
7635        '1': '१',
7636        '2': '२',
7637        '3': '३',
7638        '4': '४',
7639        '5': '५',
7640        '6': '६',
7641        '7': '७',
7642        '8': '८',
7643        '9': '९',
7644        '0': '०'
7645    },
7646    ne__numberMap = {
7647        '१': '1',
7648        '२': '2',
7649        '३': '3',
7650        '४': '4',
7651        '५': '5',
7652        '६': '6',
7653        '७': '7',
7654        '८': '8',
7655        '९': '9',
7656        '०': '0'
7657    };
7658
7659    var ne = _moment__default.defineLocale('ne', {
7660        months : 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split('_'),
7661        monthsShort : 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split('_'),
7662        weekdays : 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split('_'),
7663        weekdaysShort : 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'),
7664        weekdaysMin : 'आइ._सो._मङ्_बु._बि._शु._श.'.split('_'),
7665        longDateFormat : {
7666            LT : 'Aको h:mm बजे',
7667            LTS : 'Aको h:mm:ss बजे',
7668            L : 'DD/MM/YYYY',
7669            LL : 'D MMMM YYYY',
7670            LLL : 'D MMMM YYYY, LT',
7671            LLLL : 'dddd, D MMMM YYYY, LT'
7672        },
7673        preparse: function (string) {
7674            return string.replace(/[१२३४५६७८९०]/g, function (match) {
7675                return ne__numberMap[match];
7676            });
7677        },
7678        postformat: function (string) {
7679            return string.replace(/\d/g, function (match) {
7680                return ne__symbolMap[match];
7681            });
7682        },
vendor: 53,812 bytes, lines 7683-9011
7683        meridiemParse: /राती|बिहान|दिउँसो|बेलुका|साँझ|राती/,
7684        meridiemHour : function (hour, meridiem) {
7685            if (hour === 12) {
7686                hour = 0;
7687            }
7688            if (meridiem === 'राती') {
7689                return hour < 3 ? hour : hour + 12;
7690            } else if (meridiem === 'बिहान') {
7691                return hour;
7692            } else if (meridiem === 'दिउँसो') {
7693                return hour >= 10 ? hour : hour + 12;
7694            } else if (meridiem === 'बेलुका' || meridiem === 'साँझ') {
7695                return hour + 12;
7696            }
7697        },
7698        meridiem : function (hour, minute, isLower) {
7699            if (hour < 3) {
7700                return 'राती';
7701            } else if (hour < 10) {
7702                return 'बिहान';
7703            } else if (hour < 15) {
7704                return 'दिउँसो';
7705            } else if (hour < 18) {
7706                return 'बेलुका';
7707            } else if (hour < 20) {
7708                return 'साँझ';
7709            } else {
7710                return 'राती';
7711            }
7712        },
7713        calendar : {
7714            sameDay : '[आज] LT',
7715            nextDay : '[भोली] LT',
7716            nextWeek : '[आउँदो] dddd[,] LT',
7717            lastDay : '[हिजो] LT',
7718            lastWeek : '[गएको] dddd[,] LT',
7719            sameElse : 'L'
7720        },
7721        relativeTime : {
7722            future : '%sमा',
7723            past : '%s अगाडी',
7724            s : 'केही समय',
7725            m : 'एक मिनेट',
7726            mm : '%d मिनेट',
7727            h : 'एक घण्टा',
7728            hh : '%d घण्टा',
7729            d : 'एक दिन',
7730            dd : '%d दिन',
7731            M : 'एक महिना',
7732            MM : '%d महिना',
7733            y : 'एक बर्ष',
7734            yy : '%d बर्ष'
7735        },
7736        week : {
7737            dow : 1, // Monday is the first day of the week.
7738            doy : 7  // The week that contains Jan 1st is the first week of the year.
7739        }
7740    });
7741
7742    //! moment.js locale configuration
7743    //! locale : dutch (nl)
7744    //! author : Joris Röling : https://github.com/jjupiter
7745
7746    var nl__monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),
7747        nl__monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_');
7748
7749    var nl = _moment__default.defineLocale('nl', {
7750        months : 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split('_'),
7751        monthsShort : function (m, format) {
7752            if (/-MMM-/.test(format)) {
7753                return nl__monthsShortWithoutDots[m.month()];
7754            } else {
7755                return nl__monthsShortWithDots[m.month()];
7756            }
7757        },
7758        weekdays : 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),
7759        weekdaysShort : 'zo._ma._di._wo._do._vr._za.'.split('_'),
7760        weekdaysMin : 'Zo_Ma_Di_Wo_Do_Vr_Za'.split('_'),
7761        longDateFormat : {
7762            LT : 'HH:mm',
7763            LTS : 'LT:ss',
7764            L : 'DD-MM-YYYY',
7765            LL : 'D MMMM YYYY',
7766            LLL : 'D MMMM YYYY LT',
7767            LLLL : 'dddd D MMMM YYYY LT'
7768        },
7769        calendar : {
7770            sameDay: '[vandaag om] LT',
7771            nextDay: '[morgen om] LT',
7772            nextWeek: 'dddd [om] LT',
7773            lastDay: '[gisteren om] LT',
7774            lastWeek: '[afgelopen] dddd [om] LT',
7775            sameElse: 'L'
7776        },
7777        relativeTime : {
7778            future : 'over %s',
7779            past : '%s geleden',
7780            s : 'een paar seconden',
7781            m : 'één minuut',
7782            mm : '%d minuten',
7783            h : 'één uur',
7784            hh : '%d uur',
7785            d : 'één dag',
7786            dd : '%d dagen',
7787            M : 'één maand',
7788            MM : '%d maanden',
7789            y : 'één jaar',
7790            yy : '%d jaar'
7791        },
7792        ordinalParse: /\d{1,2}(ste|de)/,
7793        ordinal : function (number) {
7794            return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');
7795        },
7796        week : {
7797            dow : 1, // Monday is the first day of the week.
7798            doy : 4  // The week that contains Jan 4th is the first week of the year.
7799        }
7800    });
7801
7802    //! moment.js locale configuration
7803    //! locale : norwegian nynorsk (nn)
7804    //! author : https://github.com/mechuwind
7805
7806    var nn = _moment__default.defineLocale('nn', {
7807        months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),
7808        monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),
7809        weekdays : 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),
7810        weekdaysShort : 'sun_mån_tys_ons_tor_fre_lau'.split('_'),
7811        weekdaysMin : 'su_må_ty_on_to_fr_lø'.split('_'),
7812        longDateFormat : {
7813            LT : 'HH:mm',
7814            LTS : 'LT:ss',
7815            L : 'DD.MM.YYYY',
7816            LL : 'D MMMM YYYY',
7817            LLL : 'D MMMM YYYY LT',
7818            LLLL : 'dddd D MMMM YYYY LT'
7819        },
7820        calendar : {
7821            sameDay: '[I dag klokka] LT',
7822            nextDay: '[I morgon klokka] LT',
7823            nextWeek: 'dddd [klokka] LT',
7824            lastDay: '[I går klokka] LT',
7825            lastWeek: '[Føregåande] dddd [klokka] LT',
7826            sameElse: 'L'
7827        },
7828        relativeTime : {
7829            future : 'om %s',
7830            past : 'for %s sidan',
7831            s : 'nokre sekund',
7832            m : 'eit minutt',
7833            mm : '%d minutt',
7834            h : 'ein time',
7835            hh : '%d timar',
7836            d : 'ein dag',
7837            dd : '%d dagar',
7838            M : 'ein månad',
7839            MM : '%d månader',
7840            y : 'eit år',
7841            yy : '%d år'
7842        },
7843        ordinalParse: /\d{1,2}\./,
7844        ordinal : '%d.',
7845        week : {
7846            dow : 1, // Monday is the first day of the week.
7847            doy : 4  // The week that contains Jan 4th is the first week of the year.
7848        }
7849    });
7850
7851    //! moment.js locale configuration
7852    //! locale : polish (pl)
7853    //! author : Rafal Hirsz : https://github.com/evoL
7854
7855    var monthsNominative = 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split('_'),
7856        monthsSubjective = 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split('_');
7857    function pl__plural(n) {
7858        return (n % 10 < 5) && (n % 10 > 1) && ((~~(n / 10) % 10) !== 1);
7859    }
7860    function pl__translate(number, withoutSuffix, key) {
7861        var result = number + ' ';
7862        switch (key) {
7863        case 'm':
7864            return withoutSuffix ? 'minuta' : 'minutę';
7865        case 'mm':
7866            return result + (pl__plural(number) ? 'minuty' : 'minut');
7867        case 'h':
7868            return withoutSuffix  ? 'godzina'  : 'godzinę';
7869        case 'hh':
7870            return result + (pl__plural(number) ? 'godziny' : 'godzin');
7871        case 'MM':
7872            return result + (pl__plural(number) ? 'miesiące' : 'miesięcy');
7873        case 'yy':
7874            return result + (pl__plural(number) ? 'lata' : 'lat');
7875        }
7876    }
7877
7878    var pl = _moment__default.defineLocale('pl', {
7879        months : function (momentToFormat, format) {
7880            if (format === '') {
7881                // Hack: if format empty we know this is used to generate
7882                // RegExp by moment. Give then back both valid forms of months
7883                // in RegExp ready format.
7884                return '(' + monthsSubjective[momentToFormat.month()] + '|' + monthsNominative[momentToFormat.month()] + ')';
7885            } else if (/D MMMM/.test(format)) {
7886                return monthsSubjective[momentToFormat.month()];
7887            } else {
7888                return monthsNominative[momentToFormat.month()];
7889            }
7890        },
7891        monthsShort : 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),
7892        weekdays : 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),
7893        weekdaysShort : 'nie_pon_wt_śr_czw_pt_sb'.split('_'),
7894        weekdaysMin : 'N_Pn_Wt_Śr_Cz_Pt_So'.split('_'),
7895        longDateFormat : {
7896            LT : 'HH:mm',
7897            LTS : 'LT:ss',
7898            L : 'DD.MM.YYYY',
7899            LL : 'D MMMM YYYY',
7900            LLL : 'D MMMM YYYY LT',
7901            LLLL : 'dddd, D MMMM YYYY LT'
7902        },
7903        calendar : {
7904            sameDay: '[Dziś o] LT',
7905            nextDay: '[Jutro o] LT',
7906            nextWeek: '[W] dddd [o] LT',
7907            lastDay: '[Wczoraj o] LT',
7908            lastWeek: function () {
7909                switch (this.day()) {
7910                case 0:
7911                    return '[W zeszłą niedzielę o] LT';
7912                case 3:
7913                    return '[W zeszłą środę o] LT';
7914                case 6:
7915                    return '[W zeszłą sobotę o] LT';
7916                default:
7917                    return '[W zeszły] dddd [o] LT';
7918                }
7919            },
7920            sameElse: 'L'
7921        },
7922        relativeTime : {
7923            future : 'za %s',
7924            past : '%s temu',
7925            s : 'kilka sekund',
7926            m : pl__translate,
7927            mm : pl__translate,
7928            h : pl__translate,
7929            hh : pl__translate,
7930            d : '1 dzień',
7931            dd : '%d dni',
7932            M : 'miesiąc',
7933            MM : pl__translate,
7934            y : 'rok',
7935            yy : pl__translate
7936        },
7937        ordinalParse: /\d{1,2}\./,
7938        ordinal : '%d.',
7939        week : {
7940            dow : 1, // Monday is the first day of the week.
7941            doy : 4  // The week that contains Jan 4th is the first week of the year.
7942        }
7943    });
7944
7945    //! moment.js locale configuration
7946    //! locale : brazilian portuguese (pt-br)
7947    //! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira
7948
7949    var pt_br = _moment__default.defineLocale('pt-br', {
7950        months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),
7951        monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),
7952        weekdays : 'Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado'.split('_'),
7953        weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),
7954        weekdaysMin : 'Dom_2ª_3ª_4ª_5ª_6ª_Sáb'.split('_'),
7955        longDateFormat : {
7956            LT : 'HH:mm',
7957            LTS : 'LT:ss',
7958            L : 'DD/MM/YYYY',
7959            LL : 'D [de] MMMM [de] YYYY',
7960            LLL : 'D [de] MMMM [de] YYYY [às] LT',
7961            LLLL : 'dddd, D [de] MMMM [de] YYYY [às] LT'
7962        },
7963        calendar : {
7964            sameDay: '[Hoje às] LT',
7965            nextDay: '[Amanhã às] LT',
7966            nextWeek: 'dddd [às] LT',
7967            lastDay: '[Ontem às] LT',
7968            lastWeek: function () {
7969                return (this.day() === 0 || this.day() === 6) ?
7970                    '[Último] dddd [às] LT' : // Saturday + Sunday
7971                    '[Última] dddd [às] LT'; // Monday - Friday
7972            },
7973            sameElse: 'L'
7974        },
7975        relativeTime : {
7976            future : 'em %s',
7977            past : '%s atrás',
7978            s : 'segundos',
7979            m : 'um minuto',
7980            mm : '%d minutos',
7981            h : 'uma hora',
7982            hh : '%d horas',
7983            d : 'um dia',
7984            dd : '%d dias',
7985            M : 'um mês',
7986            MM : '%d meses',
7987            y : 'um ano',
7988            yy : '%d anos'
7989        },
7990        ordinalParse: /\d{1,2}º/,
7991        ordinal : '%dº'
7992    });
7993
7994    //! moment.js locale configuration
7995    //! locale : portuguese (pt)
7996    //! author : Jefferson : https://github.com/jalex79
7997
7998    var pt = _moment__default.defineLocale('pt', {
7999        months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),
8000        monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),
8001        weekdays : 'Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado'.split('_'),
8002        weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),
8003        weekdaysMin : 'Dom_2ª_3ª_4ª_5ª_6ª_Sáb'.split('_'),
8004        longDateFormat : {
8005            LT : 'HH:mm',
8006            LTS : 'LT:ss',
8007            L : 'DD/MM/YYYY',
8008            LL : 'D [de] MMMM [de] YYYY',
8009            LLL : 'D [de] MMMM [de] YYYY LT',
8010            LLLL : 'dddd, D [de] MMMM [de] YYYY LT'
8011        },
8012        calendar : {
8013            sameDay: '[Hoje às] LT',
8014            nextDay: '[Amanhã às] LT',
8015            nextWeek: 'dddd [às] LT',
8016            lastDay: '[Ontem às] LT',
8017            lastWeek: function () {
8018                return (this.day() === 0 || this.day() === 6) ?
8019                    '[Último] dddd [às] LT' : // Saturday + Sunday
8020                    '[Última] dddd [às] LT'; // Monday - Friday
8021            },
8022            sameElse: 'L'
8023        },
8024        relativeTime : {
8025            future : 'em %s',
8026            past : 'há %s',
8027            s : 'segundos',
8028            m : 'um minuto',
8029            mm : '%d minutos',
8030            h : 'uma hora',
8031            hh : '%d horas',
8032            d : 'um dia',
8033            dd : '%d dias',
8034            M : 'um mês',
8035            MM : '%d meses',
8036            y : 'um ano',
8037            yy : '%d anos'
8038        },
8039        ordinalParse: /\d{1,2}º/,
8040        ordinal : '%dº',
8041        week : {
8042            dow : 1, // Monday is the first day of the week.
8043            doy : 4  // The week that contains Jan 4th is the first week of the year.
8044        }
8045    });
8046
8047    //! moment.js locale configuration
8048    //! locale : romanian (ro)
8049    //! author : Vlad Gurdiga : https://github.com/gurdiga
8050    //! author : Valentin Agachi : https://github.com/avaly
8051
8052    function ro__relativeTimeWithPlural(number, withoutSuffix, key) {
8053        var format = {
8054                'mm': 'minute',
8055                'hh': 'ore',
8056                'dd': 'zile',
8057                'MM': 'luni',
8058                'yy': 'ani'
8059            },
8060            separator = ' ';
8061        if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {
8062            separator = ' de ';
8063        }
8064        return number + separator + format[key];
8065    }
8066
8067    var ro = _moment__default.defineLocale('ro', {
8068        months : 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split('_'),
8069        monthsShort : 'ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split('_'),
8070        weekdays : 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),
8071        weekdaysShort : 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),
8072        weekdaysMin : 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),
8073        longDateFormat : {
8074            LT : 'H:mm',
8075            LTS : 'LT:ss',
8076            L : 'DD.MM.YYYY',
8077            LL : 'D MMMM YYYY',
8078            LLL : 'D MMMM YYYY H:mm',
8079            LLLL : 'dddd, D MMMM YYYY H:mm'
8080        },
8081        calendar : {
8082            sameDay: '[azi la] LT',
8083            nextDay: '[mâine la] LT',
8084            nextWeek: 'dddd [la] LT',
8085            lastDay: '[ieri la] LT',
8086            lastWeek: '[fosta] dddd [la] LT',
8087            sameElse: 'L'
8088        },
8089        relativeTime : {
8090            future : 'peste %s',
8091            past : '%s în urmă',
8092            s : 'câteva secunde',
8093            m : 'un minut',
8094            mm : ro__relativeTimeWithPlural,
8095            h : 'o oră',
8096            hh : ro__relativeTimeWithPlural,
8097            d : 'o zi',
8098            dd : ro__relativeTimeWithPlural,
8099            M : 'o lună',
8100            MM : ro__relativeTimeWithPlural,
8101            y : 'un an',
8102            yy : ro__relativeTimeWithPlural
8103        },
8104        week : {
8105            dow : 1, // Monday is the first day of the week.
8106            doy : 7  // The week that contains Jan 1st is the first week of the year.
8107        }
8108    });
8109
8110    //! moment.js locale configuration
8111    //! locale : russian (ru)
8112    //! author : Viktorminator : https://github.com/Viktorminator
8113    //! Author : Menelion Elensúle : https://github.com/Oire
8114
8115    function ru__plural(word, num) {
8116        var forms = word.split('_');
8117        return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);
8118    }
8119    function ru__relativeTimeWithPlural(number, withoutSuffix, key) {
8120        var format = {
8121            'mm': withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',
8122            'hh': 'час_часа_часов',
8123            'dd': 'день_дня_дней',
8124            'MM': 'месяц_месяца_месяцев',
8125            'yy': 'год_года_лет'
8126        };
8127        if (key === 'm') {
8128            return withoutSuffix ? 'минута' : 'минуту';
8129        }
8130        else {
8131            return number + ' ' + ru__plural(format[key], +number);
8132        }
8133    }
8134    function ru__monthsCaseReplace(m, format) {
8135        var months = {
8136            'nominative': 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_'),
8137            'accusative': 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split('_')
8138        },
8139        nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
8140            'accusative' :
8141            'nominative';
8142        return months[nounCase][m.month()];
8143    }
8144    function ru__monthsShortCaseReplace(m, format) {
8145        var monthsShort = {
8146            'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'),
8147            'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_')
8148        },
8149        nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
8150            'accusative' :
8151            'nominative';
8152        return monthsShort[nounCase][m.month()];
8153    }
8154    function ru__weekdaysCaseReplace(m, format) {
8155        var weekdays = {
8156            'nominative': 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split('_'),
8157            'accusative': 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split('_')
8158        },
8159        nounCase = (/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/).test(format) ?
8160            'accusative' :
8161            'nominative';
8162        return weekdays[nounCase][m.day()];
8163    }
8164
8165    var ru = _moment__default.defineLocale('ru', {
8166        months : ru__monthsCaseReplace,
8167        monthsShort : ru__monthsShortCaseReplace,
8168        weekdays : ru__weekdaysCaseReplace,
8169        weekdaysShort : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),
8170        weekdaysMin : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),
8171        monthsParse : [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[й|я]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i],
8172        longDateFormat : {
8173            LT : 'HH:mm',
8174            LTS : 'LT:ss',
8175            L : 'DD.MM.YYYY',
8176            LL : 'D MMMM YYYY г.',
8177            LLL : 'D MMMM YYYY г., LT',
8178            LLLL : 'dddd, D MMMM YYYY г., LT'
8179        },
8180        calendar : {
8181            sameDay: '[Сегодня в] LT',
8182            nextDay: '[Завтра в] LT',
8183            lastDay: '[Вчера в] LT',
8184            nextWeek: function () {
8185                return this.day() === 2 ? '[Во] dddd [в] LT' : '[В] dddd [в] LT';
8186            },
8187            lastWeek: function (now) {
8188                if (now.week() !== this.week()) {
8189                    switch (this.day()) {
8190                    case 0:
8191                        return '[В прошлое] dddd [в] LT';
8192                    case 1:
8193                    case 2:
8194                    case 4:
8195                        return '[В прошлый] dddd [в] LT';
8196                    case 3:
8197                    case 5:
8198                    case 6:
8199                        return '[В прошлую] dddd [в] LT';
8200                    }
8201                } else {
8202                    if (this.day() === 2) {
8203                        return '[Во] dddd [в] LT';
8204                    } else {
8205                        return '[В] dddd [в] LT';
8206                    }
8207                }
8208            },
8209            sameElse: 'L'
8210        },
8211        relativeTime : {
8212            future : 'через %s',
8213            past : '%s назад',
8214            s : 'несколько секунд',
8215            m : ru__relativeTimeWithPlural,
8216            mm : ru__relativeTimeWithPlural,
8217            h : 'час',
8218            hh : ru__relativeTimeWithPlural,
8219            d : 'день',
8220            dd : ru__relativeTimeWithPlural,
8221            M : 'месяц',
8222            MM : ru__relativeTimeWithPlural,
8223            y : 'год',
8224            yy : ru__relativeTimeWithPlural
8225        },
8226        meridiemParse: /ночи|утра|дня|вечера/i,
8227        isPM : function (input) {
8228            return /^(дня|вечера)$/.test(input);
8229        },
8230        meridiem : function (hour, minute, isLower) {
8231            if (hour < 4) {
8232                return 'ночи';
8233            } else if (hour < 12) {
8234                return 'утра';
8235            } else if (hour < 17) {
8236                return 'дня';
8237            } else {
8238                return 'вечера';
8239            }
8240        },
8241        ordinalParse: /\d{1,2}-(й|го|я)/,
8242        ordinal: function (number, period) {
8243            switch (period) {
8244            case 'M':
8245            case 'd':
8246            case 'DDD':
8247                return number + '-й';
8248            case 'D':
8249                return number + '-го';
8250            case 'w':
8251            case 'W':
8252                return number + '-я';
8253            default:
8254                return number;
8255            }
8256        },
8257        week : {
8258            dow : 1, // Monday is the first day of the week.
8259            doy : 7  // The week that contains Jan 1st is the first week of the year.
8260        }
8261    });
8262
8263    //! moment.js locale configuration
8264    //! locale : Sinhalese (si)
8265    //! author : Sampath Sitinamaluwa : https://github.com/sampathsris
8266
8267    var si = _moment__default.defineLocale('si', {
8268        months : 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split('_'),
8269        monthsShort : 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split('_'),
8270        weekdays : 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split('_'),
8271        weekdaysShort : 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),
8272        weekdaysMin : 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),
8273        longDateFormat : {
8274            LT : 'a h:mm',
8275            LTS : 'a h:mm:ss',
8276            L : 'YYYY/MM/DD',
8277            LL : 'YYYY MMMM D',
8278            LLL : 'YYYY MMMM D, LT',
8279            LLLL : 'YYYY MMMM D [වැනි] dddd, LTS'
8280        },
8281        calendar : {
8282            sameDay : '[අද] LT[ට]',
8283            nextDay : '[හෙට] LT[ට]',
8284            nextWeek : 'dddd LT[à¶§]',
8285            lastDay : '[ඊයේ] LT[ට]',
8286            lastWeek : '[පසුගිය] dddd LT[ට]',
8287            sameElse : 'L'
8288        },
8289        relativeTime : {
8290            future : '%sකින්',
8291            past : '%sකට පෙර',
8292            s : 'තත්පර කිහිපය',
8293            m : 'මිනිත්තුව',
8294            mm : 'මිනිත්තු %d',
8295            h : 'පැය',
8296            hh : 'පැය %d',
8297            d : 'දිනය',
8298            dd : 'දින %d',
8299            M : 'මාසය',
8300            MM : 'මාස %d',
8301            y : 'වසර',
8302            yy : 'වසර %d'
8303        },
8304        ordinalParse: /\d{1,2} වැනි/,
8305        ordinal : function (number) {
8306            return number + ' වැනි';
8307        },
8308        meridiem : function (hours, minutes, isLower) {
8309            if (hours > 11) {
8310                return isLower ? 'ප.ව.' : 'පස් වරු';
8311            } else {
8312                return isLower ? 'පෙ.ව.' : 'පෙර වරු';
8313            }
8314        }
8315    });
8316
8317    //! moment.js locale configuration
8318    //! locale : slovak (sk)
8319    //! author : Martin Minka : https://github.com/k2s
8320    //! based on work of petrbela : https://github.com/petrbela
8321
8322    var sk__months = 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split('_'),
8323        sk__monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');
8324    function sk__plural(n) {
8325        return (n > 1) && (n < 5);
8326    }
8327    function sk__translate(number, withoutSuffix, key, isFuture) {
8328        var result = number + ' ';
8329        switch (key) {
8330        case 's':  // a few seconds / in a few seconds / a few seconds ago
8331            return (withoutSuffix || isFuture) ? 'pár sekúnd' : 'pár sekundami';
8332        case 'm':  // a minute / in a minute / a minute ago
8333            return withoutSuffix ? 'minúta' : (isFuture ? 'minútu' : 'minútou');
8334        case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago
8335            if (withoutSuffix || isFuture) {
8336                return result + (sk__plural(number) ? 'minúty' : 'minút');
8337            } else {
8338                return result + 'minútami';
8339            }
8340            break;
8341        case 'h':  // an hour / in an hour / an hour ago
8342            return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');
8343        case 'hh': // 9 hours / in 9 hours / 9 hours ago
8344            if (withoutSuffix || isFuture) {
8345                return result + (sk__plural(number) ? 'hodiny' : 'hodín');
8346            } else {
8347                return result + 'hodinami';
8348            }
8349            break;
8350        case 'd':  // a day / in a day / a day ago
8351            return (withoutSuffix || isFuture) ? 'deň' : 'dňom';
8352        case 'dd': // 9 days / in 9 days / 9 days ago
8353            if (withoutSuffix || isFuture) {
8354                return result + (sk__plural(number) ? 'dni' : 'dní');
8355            } else {
8356                return result + 'dňami';
8357            }
8358            break;
8359        case 'M':  // a month / in a month / a month ago
8360            return (withoutSuffix || isFuture) ? 'mesiac' : 'mesiacom';
8361        case 'MM': // 9 months / in 9 months / 9 months ago
8362            if (withoutSuffix || isFuture) {
8363                return result + (sk__plural(number) ? 'mesiace' : 'mesiacov');
8364            } else {
8365                return result + 'mesiacmi';
8366            }
8367            break;
8368        case 'y':  // a year / in a year / a year ago
8369            return (withoutSuffix || isFuture) ? 'rok' : 'rokom';
8370        case 'yy': // 9 years / in 9 years / 9 years ago
8371            if (withoutSuffix || isFuture) {
8372                return result + (sk__plural(number) ? 'roky' : 'rokov');
8373            } else {
8374                return result + 'rokmi';
8375            }
8376            break;
8377        }
8378    }
8379
8380    var sk = _moment__default.defineLocale('sk', {
8381        months : sk__months,
8382        monthsShort : sk__monthsShort,
8383        monthsParse : (function (months, monthsShort) {
8384            var i, _monthsParse = [];
8385            for (i = 0; i < 12; i++) {
8386                // use custom parser to solve problem with July (červenec)
8387                _monthsParse[i] = new RegExp('^' + months[i] + '$|^' + monthsShort[i] + '$', 'i');
8388            }
8389            return _monthsParse;
8390        }(sk__months, sk__monthsShort)),
8391        weekdays : 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'),
8392        weekdaysShort : 'ne_po_ut_st_št_pi_so'.split('_'),
8393        weekdaysMin : 'ne_po_ut_st_št_pi_so'.split('_'),
8394        longDateFormat : {
8395            LT: 'H:mm',
8396            LTS : 'LT:ss',
8397            L : 'DD.MM.YYYY',
8398            LL : 'D. MMMM YYYY',
8399            LLL : 'D. MMMM YYYY LT',
8400            LLLL : 'dddd D. MMMM YYYY LT'
8401        },
8402        calendar : {
8403            sameDay: '[dnes o] LT',
8404            nextDay: '[zajtra o] LT',
8405            nextWeek: function () {
8406                switch (this.day()) {
8407                case 0:
8408                    return '[v nedeľu o] LT';
8409                case 1:
8410                case 2:
8411                    return '[v] dddd [o] LT';
8412                case 3:
8413                    return '[v stredu o] LT';
8414                case 4:
8415                    return '[vo štvrtok o] LT';
8416                case 5:
8417                    return '[v piatok o] LT';
8418                case 6:
8419                    return '[v sobotu o] LT';
8420                }
8421            },
8422            lastDay: '[včera o] LT',
8423            lastWeek: function () {
8424                switch (this.day()) {
8425                case 0:
8426                    return '[minulú nedeľu o] LT';
8427                case 1:
8428                case 2:
8429                    return '[minulý] dddd [o] LT';
8430                case 3:
8431                    return '[minulú stredu o] LT';
8432                case 4:
8433                case 5:
8434                    return '[minulý] dddd [o] LT';
8435                case 6:
8436                    return '[minulú sobotu o] LT';
8437                }
8438            },
8439            sameElse: 'L'
8440        },
8441        relativeTime : {
8442            future : 'za %s',
8443            past : 'pred %s',
8444            s : sk__translate,
8445            m : sk__translate,
8446            mm : sk__translate,
8447            h : sk__translate,
8448            hh : sk__translate,
8449            d : sk__translate,
8450            dd : sk__translate,
8451            M : sk__translate,
8452            MM : sk__translate,
8453            y : sk__translate,
8454            yy : sk__translate
8455        },
8456        ordinalParse: /\d{1,2}\./,
8457        ordinal : '%d.',
8458        week : {
8459            dow : 1, // Monday is the first day of the week.
8460            doy : 4  // The week that contains Jan 4th is the first week of the year.
8461        }
8462    });
8463
8464    //! moment.js locale configuration
8465    //! locale : slovenian (sl)
8466    //! author : Robert Sedovšek : https://github.com/sedovsek
8467
8468    function sl__processRelativeTime(number, withoutSuffix, key, isFuture) {
8469        var result = number + ' ';
8470        switch (key) {
8471        case 's':
8472            return withoutSuffix || isFuture ? 'nekaj sekund' : 'nekaj sekundami';
8473        case 'm':
8474            return withoutSuffix ? 'ena minuta' : 'eno minuto';
8475        case 'mm':
8476            if (number === 1) {
8477                result += withoutSuffix ? 'minuta' : 'minuto';
8478            } else if (number === 2) {
8479                result += withoutSuffix || isFuture ? 'minuti' : 'minutama';
8480            } else if (number < 5) {
8481                result += withoutSuffix || isFuture ? 'minute' : 'minutami';
8482            } else {
8483                result += withoutSuffix || isFuture ? 'minut' : 'minutami';
8484            }
8485            return result;
8486        case 'h':
8487            return withoutSuffix ? 'ena ura' : 'eno uro';
8488        case 'hh':
8489            if (number === 1) {
8490                result += withoutSuffix ? 'ura' : 'uro';
8491            } else if (number === 2) {
8492                result += withoutSuffix || isFuture ? 'uri' : 'urama';
8493            } else if (number < 5) {
8494                result += withoutSuffix || isFuture ? 'ure' : 'urami';
8495            } else {
8496                result += withoutSuffix || isFuture ? 'ur' : 'urami';
8497            }
8498            return result;
8499        case 'd':
8500            return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';
8501        case 'dd':
8502            if (number === 1) {
8503                result += withoutSuffix || isFuture ? 'dan' : 'dnem';
8504            } else if (number === 2) {
8505                result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';
8506            } else {
8507                result += withoutSuffix || isFuture ? 'dni' : 'dnevi';
8508            }
8509            return result;
8510        case 'M':
8511            return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';
8512        case 'MM':
8513            if (number === 1) {
8514                result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';
8515            } else if (number === 2) {
8516                result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';
8517            } else if (number < 5) {
8518                result += withoutSuffix || isFuture ? 'mesece' : 'meseci';
8519            } else {
8520                result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';
8521            }
8522            return result;
8523        case 'y':
8524            return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';
8525        case 'yy':
8526            if (number === 1) {
8527                result += withoutSuffix || isFuture ? 'leto' : 'letom';
8528            } else if (number === 2) {
8529                result += withoutSuffix || isFuture ? 'leti' : 'letoma';
8530            } else if (number < 5) {
8531                result += withoutSuffix || isFuture ? 'leta' : 'leti';
8532            } else {
8533                result += withoutSuffix || isFuture ? 'let' : 'leti';
8534            }
8535            return result;
8536        }
8537    }
8538
8539    var sl = _moment__default.defineLocale('sl', {
8540        months : 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split('_'),
8541        monthsShort : 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split('_'),
8542        weekdays : 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'),
8543        weekdaysShort : 'ned._pon._tor._sre._čet._pet._sob.'.split('_'),
8544        weekdaysMin : 'ne_po_to_sr_če_pe_so'.split('_'),
8545        longDateFormat : {
8546            LT : 'H:mm',
8547            LTS : 'LT:ss',
8548            L : 'DD. MM. YYYY',
8549            LL : 'D. MMMM YYYY',
8550            LLL : 'D. MMMM YYYY LT',
8551            LLLL : 'dddd, D. MMMM YYYY LT'
8552        },
8553        calendar : {
8554            sameDay  : '[danes ob] LT',
8555            nextDay  : '[jutri ob] LT',
8556
8557            nextWeek : function () {
8558                switch (this.day()) {
8559                case 0:
8560                    return '[v] [nedeljo] [ob] LT';
8561                case 3:
8562                    return '[v] [sredo] [ob] LT';
8563                case 6:
8564                    return '[v] [soboto] [ob] LT';
8565                case 1:
8566                case 2:
8567                case 4:
8568                case 5:
8569                    return '[v] dddd [ob] LT';
8570                }
8571            },
8572            lastDay  : '[včeraj ob] LT',
8573            lastWeek : function () {
8574                switch (this.day()) {
8575                case 0:
8576                    return '[prejšnjo] [nedeljo] [ob] LT';
8577                case 3:
8578                    return '[prejšnjo] [sredo] [ob] LT';
8579                case 6:
8580                    return '[prejšnjo] [soboto] [ob] LT';
8581                case 1:
8582                case 2:
8583                case 4:
8584                case 5:
8585                    return '[prejšnji] dddd [ob] LT';
8586                }
8587            },
8588            sameElse : 'L'
8589        },
8590        relativeTime : {
8591            future : 'čez %s',
8592            past   : 'pred %s',
8593            s      : sl__processRelativeTime,
8594            m      : sl__processRelativeTime,
8595            mm     : sl__processRelativeTime,
8596            h      : sl__processRelativeTime,
8597            hh     : sl__processRelativeTime,
8598            d      : sl__processRelativeTime,
8599            dd     : sl__processRelativeTime,
8600            M      : sl__processRelativeTime,
8601            MM     : sl__processRelativeTime,
8602            y      : sl__processRelativeTime,
8603            yy     : sl__processRelativeTime
8604        },
8605        ordinalParse: /\d{1,2}\./,
8606        ordinal : '%d.',
8607        week : {
8608            dow : 1, // Monday is the first day of the week.
8609            doy : 7  // The week that contains Jan 1st is the first week of the year.
8610        }
8611    });
8612
8613    //! moment.js locale configuration
8614    //! locale : Albanian (sq)
8615    //! author : Flakërim Ismani : https://github.com/flakerimi
8616    //! author: Menelion Elensúle: https://github.com/Oire (tests)
8617    //! author : Oerd Cukalla : https://github.com/oerd (fixes)
8618
8619    var sq = _moment__default.defineLocale('sq', {
8620        months : 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split('_'),
8621        monthsShort : 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),
8622        weekdays : 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split('_'),
8623        weekdaysShort : 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),
8624        weekdaysMin : 'D_H_Ma_Më_E_P_Sh'.split('_'),
8625        meridiemParse: /PD|MD/,
8626        isPM: function (input) {
8627            return input.charAt(0) === 'M';
8628        },
8629        meridiem : function (hours, minutes, isLower) {
8630            return hours < 12 ? 'PD' : 'MD';
8631        },
8632        longDateFormat : {
8633            LT : 'HH:mm',
8634            LTS : 'LT:ss',
8635            L : 'DD/MM/YYYY',
8636            LL : 'D MMMM YYYY',
8637            LLL : 'D MMMM YYYY LT',
8638            LLLL : 'dddd, D MMMM YYYY LT'
8639        },
8640        calendar : {
8641            sameDay : '[Sot në] LT',
8642            nextDay : '[Nesër në] LT',
8643            nextWeek : 'dddd [në] LT',
8644            lastDay : '[Dje në] LT',
8645            lastWeek : 'dddd [e kaluar në] LT',
8646            sameElse : 'L'
8647        },
8648        relativeTime : {
8649            future : 'në %s',
8650            past : '%s më parë',
8651            s : 'disa sekonda',
8652            m : 'një minutë',
8653            mm : '%d minuta',
8654            h : 'një orë',
8655            hh : '%d orë',
8656            d : 'një ditë',
8657            dd : '%d ditë',
8658            M : 'një muaj',
8659            MM : '%d muaj',
8660            y : 'një vit',
8661            yy : '%d vite'
8662        },
8663        ordinalParse: /\d{1,2}\./,
8664        ordinal : '%d.',
8665        week : {
8666            dow : 1, // Monday is the first day of the week.
8667            doy : 4  // The week that contains Jan 4th is the first week of the year.
8668        }
8669    });
8670
8671    //! moment.js locale configuration
8672    //! locale : Serbian-cyrillic (sr-cyrl)
8673    //! author : Milan Janačković<[email protected]> : https://github.com/milan-j
8674
8675    var sr_cyrl__translator = {
8676        words: { //Different grammatical cases
8677            m: ['један минут', 'једне минуте'],
8678            mm: ['минут', 'минуте', 'минута'],
8679            h: ['један сат', 'једног сата'],
8680            hh: ['сат', 'сата', 'сати'],
8681            dd: ['дан', 'дана', 'дана'],
8682            MM: ['месец', 'месеца', 'месеци'],
8683            yy: ['година', 'године', 'година']
8684        },
8685        correctGrammaticalCase: function (number, wordKey) {
8686            return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);
8687        },
8688        translate: function (number, withoutSuffix, key) {
8689            var wordKey = sr_cyrl__translator.words[key];
8690            if (key.length === 1) {
8691                return withoutSuffix ? wordKey[0] : wordKey[1];
8692            } else {
8693                return number + ' ' + sr_cyrl__translator.correctGrammaticalCase(number, wordKey);
8694            }
8695        }
8696    };
8697
8698    var sr_cyrl = _moment__default.defineLocale('sr-cyrl', {
8699        months: ['јануар', 'фебруар', 'март', 'април', 'мај', 'јун', 'јул', 'август', 'септембар', 'октобар', 'новембар', 'децембар'],
8700        monthsShort: ['јан.', 'феб.', 'мар.', 'апр.', 'мај', 'јун', 'јул', 'авг.', 'сеп.', 'окт.', 'нов.', 'дец.'],
8701        weekdays: ['недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота'],
8702        weekdaysShort: ['нед.', 'пон.', 'уто.', 'сре.', 'чет.', 'пет.', 'суб.'],
8703        weekdaysMin: ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'],
8704        longDateFormat: {
8705            LT: 'H:mm',
8706            LTS : 'LT:ss',
8707            L: 'DD. MM. YYYY',
8708            LL: 'D. MMMM YYYY',
8709            LLL: 'D. MMMM YYYY LT',
8710            LLLL: 'dddd, D. MMMM YYYY LT'
8711        },
8712        calendar: {
8713            sameDay: '[данас у] LT',
8714            nextDay: '[сутра у] LT',
8715            nextWeek: function () {
8716                switch (this.day()) {
8717                case 0:
8718                    return '[у] [недељу] [у] LT';
8719                case 3:
8720                    return '[у] [среду] [у] LT';
8721                case 6:
8722                    return '[у] [суботу] [у] LT';
8723                case 1:
8724                case 2:
8725                case 4:
8726                case 5:
8727                    return '[у] dddd [у] LT';
8728                }
8729            },
8730            lastDay  : '[јуче у] LT',
8731            lastWeek : function () {
8732                var lastWeekDays = [
8733                    '[прошле] [недеље] [у] LT',
8734                    '[прошлог] [понедељка] [у] LT',
8735                    '[прошлог] [уторка] [у] LT',
8736                    '[прошле] [среде] [у] LT',
8737                    '[прошлог] [четвртка] [у] LT',
8738                    '[прошлог] [петка] [у] LT',
8739                    '[прошле] [суботе] [у] LT'
8740                ];
8741                return lastWeekDays[this.day()];
8742            },
8743            sameElse : 'L'
8744        },
8745        relativeTime : {
8746            future : 'за %s',
8747            past   : 'пре %s',
8748            s      : 'неколико секунди',
8749            m      : sr_cyrl__translator.translate,
8750            mm     : sr_cyrl__translator.translate,
8751            h      : sr_cyrl__translator.translate,
8752            hh     : sr_cyrl__translator.translate,
8753            d      : 'дан',
8754            dd     : sr_cyrl__translator.translate,
8755            M      : 'месец',
8756            MM     : sr_cyrl__translator.translate,
8757            y      : 'годину',
8758            yy     : sr_cyrl__translator.translate
8759        },
8760        ordinalParse: /\d{1,2}\./,
8761        ordinal : '%d.',
8762        week : {
8763            dow : 1, // Monday is the first day of the week.
8764            doy : 7  // The week that contains Jan 1st is the first week of the year.
8765        }
8766    });
8767
8768    //! moment.js locale configuration
8769    //! locale : Serbian-latin (sr)
8770    //! author : Milan Janačković<[email protected]> : https://github.com/milan-j
8771
8772    var sr__translator = {
8773        words: { //Different grammatical cases
8774            m: ['jedan minut', 'jedne minute'],
8775            mm: ['minut', 'minute', 'minuta'],
8776            h: ['jedan sat', 'jednog sata'],
8777            hh: ['sat', 'sata', 'sati'],
8778            dd: ['dan', 'dana', 'dana'],
8779            MM: ['mesec', 'meseca', 'meseci'],
8780            yy: ['godina', 'godine', 'godina']
8781        },
8782        correctGrammaticalCase: function (number, wordKey) {
8783            return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);
8784        },
8785        translate: function (number, withoutSuffix, key) {
8786            var wordKey = sr__translator.words[key];
8787            if (key.length === 1) {
8788                return withoutSuffix ? wordKey[0] : wordKey[1];
8789            } else {
8790                return number + ' ' + sr__translator.correctGrammaticalCase(number, wordKey);
8791            }
8792        }
8793    };
8794
8795    var sr = _moment__default.defineLocale('sr', {
8796        months: ['januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar'],
8797        monthsShort: ['jan.', 'feb.', 'mar.', 'apr.', 'maj', 'jun', 'jul', 'avg.', 'sep.', 'okt.', 'nov.', 'dec.'],
8798        weekdays: ['nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota'],
8799        weekdaysShort: ['ned.', 'pon.', 'uto.', 'sre.', 'čet.', 'pet.', 'sub.'],
8800        weekdaysMin: ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
8801        longDateFormat: {
8802            LT: 'H:mm',
8803            LTS : 'LT:ss',
8804            L: 'DD. MM. YYYY',
8805            LL: 'D. MMMM YYYY',
8806            LLL: 'D. MMMM YYYY LT',
8807            LLLL: 'dddd, D. MMMM YYYY LT'
8808        },
8809        calendar: {
8810            sameDay: '[danas u] LT',
8811            nextDay: '[sutra u] LT',
8812            nextWeek: function () {
8813                switch (this.day()) {
8814                case 0:
8815                    return '[u] [nedelju] [u] LT';
8816                case 3:
8817                    return '[u] [sredu] [u] LT';
8818                case 6:
8819                    return '[u] [subotu] [u] LT';
8820                case 1:
8821                case 2:
8822                case 4:
8823                case 5:
8824                    return '[u] dddd [u] LT';
8825                }
8826            },
8827            lastDay  : '[juče u] LT',
8828            lastWeek : function () {
8829                var lastWeekDays = [
8830                    '[prošle] [nedelje] [u] LT',
8831                    '[prošlog] [ponedeljka] [u] LT',
8832                    '[prošlog] [utorka] [u] LT',
8833                    '[prošle] [srede] [u] LT',
8834                    '[prošlog] [četvrtka] [u] LT',
8835                    '[prošlog] [petka] [u] LT',
8836                    '[prošle] [subote] [u] LT'
8837                ];
8838                return lastWeekDays[this.day()];
8839            },
8840            sameElse : 'L'
8841        },
8842        relativeTime : {
8843            future : 'za %s',
8844            past   : 'pre %s',
8845            s      : 'nekoliko sekundi',
8846            m      : sr__translator.translate,
8847            mm     : sr__translator.translate,
8848            h      : sr__translator.translate,
8849            hh     : sr__translator.translate,
8850            d      : 'dan',
8851            dd     : sr__translator.translate,
8852            M      : 'mesec',
8853            MM     : sr__translator.translate,
8854            y      : 'godinu',
8855            yy     : sr__translator.translate
8856        },
8857        ordinalParse: /\d{1,2}\./,
8858        ordinal : '%d.',
8859        week : {
8860            dow : 1, // Monday is the first day of the week.
8861            doy : 7  // The week that contains Jan 1st is the first week of the year.
8862        }
8863    });
8864
8865    //! moment.js locale configuration
8866    //! locale : swedish (sv)
8867    //! author : Jens Alm : https://github.com/ulmus
8868
8869    var sv = _moment__default.defineLocale('sv', {
8870        months : 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split('_'),
8871        monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),
8872        weekdays : 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),
8873        weekdaysShort : 'sön_mån_tis_ons_tor_fre_lör'.split('_'),
8874        weekdaysMin : 'sö_må_ti_on_to_fr_lö'.split('_'),
8875        longDateFormat : {
8876            LT : 'HH:mm',
8877            LTS : 'LT:ss',
8878            L : 'YYYY-MM-DD',
8879            LL : 'D MMMM YYYY',
8880            LLL : 'D MMMM YYYY LT',
8881            LLLL : 'dddd D MMMM YYYY LT'
8882        },
8883        calendar : {
8884            sameDay: '[Idag] LT',
8885            nextDay: '[Imorgon] LT',
8886            lastDay: '[Igår] LT',
8887            nextWeek: '[PÃ¥] dddd LT',
8888            lastWeek: '[I] dddd[s] LT',
8889            sameElse: 'L'
8890        },
8891        relativeTime : {
8892            future : 'om %s',
8893            past : 'för %s sedan',
8894            s : 'några sekunder',
8895            m : 'en minut',
8896            mm : '%d minuter',
8897            h : 'en timme',
8898            hh : '%d timmar',
8899            d : 'en dag',
8900            dd : '%d dagar',
8901            M : 'en månad',
8902            MM : '%d månader',
8903            y : 'ett år',
8904            yy : '%d år'
8905        },
8906        ordinalParse: /\d{1,2}(e|a)/,
8907        ordinal : function (number) {
8908            var b = number % 10,
8909                output = (~~(number % 100 / 10) === 1) ? 'e' :
8910                (b === 1) ? 'a' :
8911                (b === 2) ? 'a' :
8912                (b === 3) ? 'e' : 'e';
8913            return number + output;
8914        },
8915        week : {
8916            dow : 1, // Monday is the first day of the week.
8917            doy : 4  // The week that contains Jan 4th is the first week of the year.
8918        }
8919    });
8920
8921    //! moment.js locale configuration
8922    //! locale : tamil (ta)
8923    //! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404
8924
8925    var ta = _moment__default.defineLocale('ta', {
8926        months : 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split('_'),
8927        monthsShort : 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split('_'),
8928        weekdays : 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split('_'),
8929        weekdaysShort : 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split('_'),
8930        weekdaysMin : 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'),
8931        longDateFormat : {
8932            LT : 'HH:mm',
8933            LTS : 'LT:ss',
8934            L : 'DD/MM/YYYY',
8935            LL : 'D MMMM YYYY',
8936            LLL : 'D MMMM YYYY, LT',
8937            LLLL : 'dddd, D MMMM YYYY, LT'
8938        },
8939        calendar : {
8940            sameDay : '[இன்று] LT',
8941            nextDay : '[நாளை] LT',
8942            nextWeek : 'dddd, LT',
8943            lastDay : '[நேற்று] LT',
8944            lastWeek : '[கடந்த வாரம்] dddd, LT',
8945            sameElse : 'L'
8946        },
8947        relativeTime : {
8948            future : '%s இல்',
8949            past : '%s முன்',
8950            s : 'ஒரு சில விநாடிகள்',
8951            m : 'ஒரு நிமிடம்',
8952            mm : '%d நிமிடங்கள்',
8953            h : 'ஒரு மணி நேரம்',
8954            hh : '%d மணி நேரம்',
8955            d : 'ஒரு நாள்',
8956            dd : '%d நாட்கள்',
8957            M : 'ஒரு மாதம்',
8958            MM : '%d மாதங்கள்',
8959            y : 'ஒரு வருடம்',
8960            yy : '%d ஆண்டுகள்'
8961        },
8962        ordinalParse: /\d{1,2}வது/,
8963        ordinal : function (number) {
8964            return number + 'வது';
8965        },
8966        // refer http://ta.wikipedia.org/s/1er1
8967        meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,
8968        meridiem : function (hour, minute, isLower) {
8969            if (hour < 2) {
8970                return ' யாமம்';
8971            } else if (hour < 6) {
8972                return ' வைகறை';  // வைகறை
8973            } else if (hour < 10) {
8974                return ' காலை'; // காலை
8975            } else if (hour < 14) {
8976                return ' நண்பகல்'; // நண்பகல்
8977            } else if (hour < 18) {
8978                return ' எற்பாடு'; // எற்பாடு
8979            } else if (hour < 22) {
8980                return ' மாலை'; // மாலை
8981            } else {
8982                return ' யாமம்';
8983            }
8984        },
8985        meridiemHour : function (hour, meridiem) {
8986            if (hour === 12) {
8987                hour = 0;
8988            }
8989            if (meridiem === 'யாமம்') {
8990                return hour < 2 ? hour : hour + 12;
8991            } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {
8992                return hour;
8993            } else if (meridiem === 'நண்பகல்') {
8994                return hour >= 10 ? hour : hour + 12;
8995            } else {
8996                return hour + 12;
8997            }
8998        },
8999        week : {
9000            dow : 0, // Sunday is the first day of the week.
9001            doy : 6  // The week that contains Jan 1st is the first week of the year.
9002        }
9003    });
9004
9005    //! moment.js locale configuration
9006    //! locale : thai (th)
9007    //! author : Kridsada Thanabulpong : https://github.com/sirn
9008
9009    var th = _moment__default.defineLocale('th', {
9010        months : 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split('_'),
9011        monthsShort : 'มกรา_กุมภา_มีนา_เมษา_พฤษภา_มิถุนา_กรกฎา_สิงหา_กันยา_ตุลา_พฤศจิกา_ธ
9011ันวา'.split('_'),
9012        weekdays : 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),
9013        weekdaysShort : 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference
9014        weekdaysMin : 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),
9015        longDateFormat : {
9016            LT : 'H นาฬิกา m นาที',
9017            LTS : 'LT s วินาที',
9018            L : 'YYYY/MM/DD',
9019            LL : 'D MMMM YYYY',
9020            LLL : 'D MMMM YYYY เวลา LT',
9021            LLLL : 'วันddddที่ D MMMM YYYY เวลา LT'
9022        },
9023        meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,
9024        isPM: function (input) {
9025            return input === 'หลังเที่ยง';
9026        },
9027        meridiem : function (hour, minute, isLower) {
9028            if (hour < 12) {
9029                return 'ก่อนเที่ยง';
9030            } else {
9031                return 'หลังเที่ยง';
9032            }
9033        },
9034        calendar : {
9035            sameDay : '[วันนี้ เวลา] LT',
9036            nextDay : '[พรุ่งนี้ เวลา] LT',
9037            nextWeek : 'dddd[หน้า เวลา] LT',
9038            lastDay : '[เมื่อวานนี้ เวลา] LT',
9039            lastWeek : '[วัน]dddd[ที่แล้ว เวลา] LT',
9040            sameElse : 'L'
9041        },
9042        relativeTime : {
9043            future : 'อีก %s',
9044            past : '%sที่แล้ว',
9045            s : 'ไม่กี่วินาที',
9046            m : '1 นาที',
9047            mm : '%d นาที',
9048            h : '1 ชั่วโมง',
9049            hh : '%d ชั่วโมง',
9050            d : '1 วัน',
9051            dd : '%d วัน',
9052            M : '1 เดือน',
9053            MM : '%d เดือน',
9054            y : '1 ปี',
9055            yy : '%d ปี'
9056        }
9057    });
9058
9059    //! moment.js locale configuration
9060    //! locale : Tagalog/Filipino (tl-ph)
9061    //! author : Dan Hagman
9062
9063    var tl_ph = _moment__default.defineLocale('tl-ph', {
9064        months : 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split('_'),
9065        monthsShort : 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),
9066        weekdays : 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split('_'),
9067        weekdaysShort : 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),
9068        weekdaysMin : 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),
9069        longDateFormat : {
9070            LT : 'HH:mm',
9071            LTS : 'LT:ss',
9072            L : 'MM/D/YYYY',
9073            LL : 'MMMM D, YYYY',
9074            LLL : 'MMMM D, YYYY LT',
9075            LLLL : 'dddd, MMMM DD, YYYY LT'
9076        },
9077        calendar : {
9078            sameDay: '[Ngayon sa] LT',
9079            nextDay: '[Bukas sa] LT',
9080            nextWeek: 'dddd [sa] LT',
9081            lastDay: '[Kahapon sa] LT',
9082            lastWeek: 'dddd [huling linggo] LT',
9083            sameElse: 'L'
9084        },
9085        relativeTime : {
9086            future : 'sa loob ng %s',
9087            past : '%s ang nakalipas',
9088            s : 'ilang segundo',
9089            m : 'isang minuto',
9090            mm : '%d minuto',
9091            h : 'isang oras',
9092            hh : '%d oras',
9093            d : 'isang araw',
9094            dd : '%d araw',
9095            M : 'isang buwan',
9096            MM : '%d buwan',
9097            y : 'isang taon',
9098            yy : '%d taon'
9099        },
9100        ordinalParse: /\d{1,2}/,
9101        ordinal : function (number) {
9102            return number;
9103        },
9104        week : {
9105            dow : 1, // Monday is the first day of the week.
9106            doy : 4  // The week that contains Jan 4th is the first week of the year.
9107        }
9108    });
9109
9110    //! moment.js locale configuration
9111    //! locale : turkish (tr)
9112    //! authors : Erhan Gundogan : https://github.com/erhangundogan,
9113    //!           Burak Yiğit Kaya: https://github.com/BYK
9114
9115    var tr__suffixes = {
9116        1: '\'inci',
9117        5: '\'inci',
9118        8: '\'inci',
9119        70: '\'inci',
9120        80: '\'inci',
9121        2: '\'nci',
9122        7: '\'nci',
9123        20: '\'nci',
9124        50: '\'nci',
9125        3: '\'üncü',
9126        4: '\'üncü',
9127        100: '\'üncü',
vendor: 23,814 bytes, lines 9128-9723
9128        6: '\'ncı',
9129        9: '\'uncu',
9130        10: '\'uncu',
9131        30: '\'uncu',
9132        60: '\'ıncı',
9133        90: '\'ıncı'
9134    };
9135
9136    var tr = _moment__default.defineLocale('tr', {
9137        months : 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split('_'),
9138        monthsShort : 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),
9139        weekdays : 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split('_'),
9140        weekdaysShort : 'Paz_Pts_Sal_Çar_Per_Cum_Cts'.split('_'),
9141        weekdaysMin : 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),
9142        longDateFormat : {
9143            LT : 'HH:mm',
9144            LTS : 'LT:ss',
9145            L : 'DD.MM.YYYY',
9146            LL : 'D MMMM YYYY',
9147            LLL : 'D MMMM YYYY LT',
9148            LLLL : 'dddd, D MMMM YYYY LT'
9149        },
9150        calendar : {
9151            sameDay : '[bugün saat] LT',
9152            nextDay : '[yarın saat] LT',
9153            nextWeek : '[haftaya] dddd [saat] LT',
9154            lastDay : '[dün] LT',
9155            lastWeek : '[geçen hafta] dddd [saat] LT',
9156            sameElse : 'L'
9157        },
9158        relativeTime : {
9159            future : '%s sonra',
9160            past : '%s önce',
9161            s : 'birkaç saniye',
9162            m : 'bir dakika',
9163            mm : '%d dakika',
9164            h : 'bir saat',
9165            hh : '%d saat',
9166            d : 'bir gün',
9167            dd : '%d gün',
9168            M : 'bir ay',
9169            MM : '%d ay',
9170            y : 'bir yıl',
9171            yy : '%d yıl'
9172        },
9173        ordinalParse: /\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/,
9174        ordinal : function (number) {
9175            if (number === 0) {  // special case for zero
9176                return number + '\'ıncı';
9177            }
9178            var a = number % 10,
9179                b = number % 100 - a,
9180                c = number >= 100 ? 100 : null;
9181            return number + (tr__suffixes[a] || tr__suffixes[b] || tr__suffixes[c]);
9182        },
9183        week : {
9184            dow : 1, // Monday is the first day of the week.
9185            doy : 7  // The week that contains Jan 1st is the first week of the year.
9186        }
9187    });
9188
9189    //! moment.js locale configuration
9190    //! locale : Morocco Central Atlas Tamaziɣt in Latin (tzm-latn)
9191    //! author : Abdel Said : https://github.com/abdelsaid
9192
9193    var tzm_latn = _moment__default.defineLocale('tzm-latn', {
9194        months : 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split('_'),
9195        monthsShort : 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split('_'),
9196        weekdays : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
9197        weekdaysShort : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
9198        weekdaysMin : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
9199        longDateFormat : {
9200            LT : 'HH:mm',
9201            LTS : 'LT:ss',
9202            L : 'DD/MM/YYYY',
9203            LL : 'D MMMM YYYY',
9204            LLL : 'D MMMM YYYY LT',
9205            LLLL : 'dddd D MMMM YYYY LT'
9206        },
9207        calendar : {
9208            sameDay: '[asdkh g] LT',
9209            nextDay: '[aska g] LT',
9210            nextWeek: 'dddd [g] LT',
9211            lastDay: '[assant g] LT',
9212            lastWeek: 'dddd [g] LT',
9213            sameElse: 'L'
9214        },
9215        relativeTime : {
9216            future : 'dadkh s yan %s',
9217            past : 'yan %s',
9218            s : 'imik',
9219            m : 'minuḍ',
9220            mm : '%d minuḍ',
9221            h : 'saɛa',
9222            hh : '%d tassaɛin',
9223            d : 'ass',
9224            dd : '%d ossan',
9225            M : 'ayowr',
9226            MM : '%d iyyirn',
9227            y : 'asgas',
9228            yy : '%d isgasn'
9229        },
9230        week : {
9231            dow : 6, // Saturday is the first day of the week.
9232            doy : 12  // The week that contains Jan 1st is the first week of the year.
9233        }
9234    });
9235
9236    //! moment.js locale configuration
9237    //! locale : Morocco Central Atlas Tamaziɣt (tzm)
9238    //! author : Abdel Said : https://github.com/abdelsaid
9239
9240    var tzm = _moment__default.defineLocale('tzm', {
9241        months : 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split('_'),
9242        monthsShort : 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split('_'),
9243        weekdays : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
9244        weekdaysShort : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
9245        weekdaysMin : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
9246        longDateFormat : {
9247            LT : 'HH:mm',
9248            LTS: 'LT:ss',
9249            L : 'DD/MM/YYYY',
9250            LL : 'D MMMM YYYY',
9251            LLL : 'D MMMM YYYY LT',
9252            LLLL : 'dddd D MMMM YYYY LT'
9253        },
9254        calendar : {
9255            sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',
9256            nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',
9257            nextWeek: 'dddd [â´´] LT',
9258            lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',
9259            lastWeek: 'dddd [â´´] LT',
9260            sameElse: 'L'
9261        },
9262        relativeTime : {
9263            future : 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',
9264            past : 'ⵢⴰⵏ %s',
9265            s : 'ⵉⵎⵉⴽ',
9266            m : 'ⵎⵉⵏⵓⴺ',
9267            mm : '%d ⵎⵉⵏⵓⴺ',
9268            h : 'ⵙⴰⵄⴰ',
9269            hh : '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',
9270            d : 'ⴰⵙⵙ',
9271            dd : '%d oⵙⵙⴰⵏ',
9272            M : 'ⴰⵢoⵓⵔ',
9273            MM : '%d ⵉⵢⵢⵉⵔⵏ',
9274            y : 'ⴰⵙⴳⴰⵙ',
9275            yy : '%d ⵉⵙⴳⴰⵙⵏ'
9276        },
9277        week : {
9278            dow : 6, // Saturday is the first day of the week.
9279            doy : 12  // The week that contains Jan 1st is the first week of the year.
9280        }
9281    });
9282
9283    //! moment.js locale configuration
9284    //! locale : ukrainian (uk)
9285    //! author : zemlanin : https://github.com/zemlanin
9286    //! Author : Menelion Elensúle : https://github.com/Oire
9287
9288    function uk__plural(word, num) {
9289        var forms = word.split('_');
9290        return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);
9291    }
9292    function uk__relativeTimeWithPlural(number, withoutSuffix, key) {
9293        var format = {
9294            'mm': 'хвилина_хвилини_хвилин',
9295            'hh': 'година_години_годин',
9296            'dd': 'день_дні_днів',
9297            'MM': 'місяць_місяці_місяців',
9298            'yy': 'рік_роки_років'
9299        };
9300        if (key === 'm') {
9301            return withoutSuffix ? 'хвилина' : 'хвилину';
9302        }
9303        else if (key === 'h') {
9304            return withoutSuffix ? 'година' : 'годину';
9305        }
9306        else {
9307            return number + ' ' + uk__plural(format[key], +number);
9308        }
9309    }
9310    function uk__monthsCaseReplace(m, format) {
9311        var months = {
9312            'nominative': 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split('_'),
9313            'accusative': 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split('_')
9314        },
9315        nounCase = (/D[oD]? *MMMM?/).test(format) ?
9316            'accusative' :
9317            'nominative';
9318        return months[nounCase][m.month()];
9319    }
9320    function uk__weekdaysCaseReplace(m, format) {
9321        var weekdays = {
9322            'nominative': 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split('_'),
9323            'accusative': 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split('_'),
9324            'genitive': 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split('_')
9325        },
9326        nounCase = (/(\[[ВвУу]\]) ?dddd/).test(format) ?
9327            'accusative' :
9328            ((/\[?(?:минулої|наступної)? ?\] ?dddd/).test(format) ?
9329                'genitive' :
9330                'nominative');
9331        return weekdays[nounCase][m.day()];
9332    }
9333    function processHoursFunction(str) {
9334        return function () {
9335            return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';
9336        };
9337    }
9338
9339    var uk = _moment__default.defineLocale('uk', {
9340        months : uk__monthsCaseReplace,
9341        monthsShort : 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split('_'),
9342        weekdays : uk__weekdaysCaseReplace,
9343        weekdaysShort : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
9344        weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
9345        longDateFormat : {
9346            LT : 'HH:mm',
9347            LTS : 'LT:ss',
9348            L : 'DD.MM.YYYY',
9349            LL : 'D MMMM YYYY р.',
9350            LLL : 'D MMMM YYYY р., LT',
9351            LLLL : 'dddd, D MMMM YYYY р., LT'
9352        },
9353        calendar : {
9354            sameDay: processHoursFunction('[Сьогодні '),
9355            nextDay: processHoursFunction('[Завтра '),
9356            lastDay: processHoursFunction('[Вчора '),
9357            nextWeek: processHoursFunction('[У] dddd ['),
9358            lastWeek: function () {
9359                switch (this.day()) {
9360                case 0:
9361                case 3:
9362                case 5:
9363                case 6:
9364                    return processHoursFunction('[Минулої] dddd [').call(this);
9365                case 1:
9366                case 2:
9367                case 4:
9368                    return processHoursFunction('[Минулого] dddd [').call(this);
9369                }
9370            },
9371            sameElse: 'L'
9372        },
9373        relativeTime : {
9374            future : 'за %s',
9375            past : '%s тому',
9376            s : 'декілька секунд',
9377            m : uk__relativeTimeWithPlural,
9378            mm : uk__relativeTimeWithPlural,
9379            h : 'годину',
9380            hh : uk__relativeTimeWithPlural,
9381            d : 'день',
9382            dd : uk__relativeTimeWithPlural,
9383            M : 'місяць',
9384            MM : uk__relativeTimeWithPlural,
9385            y : 'рік',
9386            yy : uk__relativeTimeWithPlural
9387        },
9388        // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason
9389        meridiemParse: /ночі|ранку|дня|вечора/,
9390        isPM: function (input) {
9391            return /^(дня|вечора)$/.test(input);
9392        },
9393        meridiem : function (hour, minute, isLower) {
9394            if (hour < 4) {
9395                return 'ночі';
9396            } else if (hour < 12) {
9397                return 'ранку';
9398            } else if (hour < 17) {
9399                return 'дня';
9400            } else {
9401                return 'вечора';
9402            }
9403        },
9404        ordinalParse: /\d{1,2}-(й|го)/,
9405        ordinal: function (number, period) {
9406            switch (period) {
9407            case 'M':
9408            case 'd':
9409            case 'DDD':
9410            case 'w':
9411            case 'W':
9412                return number + '-й';
9413            case 'D':
9414                return number + '-го';
9415            default:
9416                return number;
9417            }
9418        },
9419        week : {
9420            dow : 1, // Monday is the first day of the week.
9421            doy : 7  // The week that contains Jan 1st is the first week of the year.
9422        }
9423    });
9424
9425    //! moment.js locale configuration
9426    //! locale : uzbek (uz)
9427    //! author : Sardor Muminov : https://github.com/muminoff
9428
9429    var uz = _moment__default.defineLocale('uz', {
9430        months : 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_'),
9431        monthsShort : 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),
9432        weekdays : 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),
9433        weekdaysShort : 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),
9434        weekdaysMin : 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),
9435        longDateFormat : {
9436            LT : 'HH:mm',
9437            LTS : 'LT:ss',
9438            L : 'DD/MM/YYYY',
9439            LL : 'D MMMM YYYY',
9440            LLL : 'D MMMM YYYY LT',
9441            LLLL : 'D MMMM YYYY, dddd LT'
9442        },
9443        calendar : {
9444            sameDay : '[Бугун соат] LT [да]',
9445            nextDay : '[Эртага] LT [да]',
9446            nextWeek : 'dddd [куни соат] LT [да]',
9447            lastDay : '[Кеча соат] LT [да]',
9448            lastWeek : '[Утган] dddd [куни соат] LT [да]',
9449            sameElse : 'L'
9450        },
9451        relativeTime : {
9452            future : 'Якин %s ичида',
9453            past : 'Бир неча %s олдин',
9454            s : 'фурсат',
9455            m : 'бир дакика',
9456            mm : '%d дакика',
9457            h : 'бир соат',
9458            hh : '%d соат',
9459            d : 'бир кун',
9460            dd : '%d кун',
9461            M : 'бир ой',
9462            MM : '%d ой',
9463            y : 'бир йил',
9464            yy : '%d йил'
9465        },
9466        week : {
9467            dow : 1, // Monday is the first day of the week.
9468            doy : 7  // The week that contains Jan 4th is the first week of the year.
9469        }
9470    });
9471
9472    //! moment.js locale configuration
9473    //! locale : vietnamese (vi)
9474    //! author : Bang Nguyen : https://github.com/bangnk
9475
9476    var vi = _moment__default.defineLocale('vi', {
9477        months : 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split('_'),
9478        monthsShort : 'Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12'.split('_'),
9479        weekdays : 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split('_'),
9480        weekdaysShort : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),
9481        weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),
9482        longDateFormat : {
9483            LT : 'HH:mm',
9484            LTS : 'LT:ss',
9485            L : 'DD/MM/YYYY',
9486            LL : 'D MMMM [năm] YYYY',
9487            LLL : 'D MMMM [năm] YYYY LT',
9488            LLLL : 'dddd, D MMMM [năm] YYYY LT',
9489            l : 'DD/M/YYYY',
9490            ll : 'D MMM YYYY',
9491            lll : 'D MMM YYYY LT',
9492            llll : 'ddd, D MMM YYYY LT'
9493        },
9494        calendar : {
9495            sameDay: '[Hôm nay lúc] LT',
9496            nextDay: '[Ngày mai lúc] LT',
9497            nextWeek: 'dddd [tuần tới lúc] LT',
9498            lastDay: '[Hôm qua lúc] LT',
9499            lastWeek: 'dddd [tuần rồi lúc] LT',
9500            sameElse: 'L'
9501        },
9502        relativeTime : {
9503            future : '%s tới',
9504            past : '%s trước',
9505            s : 'vài giây',
9506            m : 'một phút',
9507            mm : '%d phút',
9508            h : 'một giờ',
9509            hh : '%d giờ',
9510            d : 'một ngày',
9511            dd : '%d ngày',
9512            M : 'một tháng',
9513            MM : '%d tháng',
9514            y : 'một năm',
9515            yy : '%d năm'
9516        },
9517        ordinalParse: /\d{1,2}/,
9518        ordinal : function (number) {
9519            return number;
9520        },
9521        week : {
9522            dow : 1, // Monday is the first day of the week.
9523            doy : 4  // The week that contains Jan 4th is the first week of the year.
9524        }
9525    });
9526
9527    //! moment.js locale configuration
9528    //! locale : chinese (zh-cn)
9529    //! author : suupic : https://github.com/suupic
9530    //! author : Zeno Zeng : https://github.com/zenozeng
9531
9532    var zh_cn = _moment__default.defineLocale('zh-cn', {
9533        months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),
9534        monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
9535        weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
9536        weekdaysShort : '周日_周一_周二_周三_周四_周五_周六'.split('_'),
9537        weekdaysMin : '日_一_二_三_四_五_六'.split('_'),
9538        longDateFormat : {
9539            LT : 'Ah点mm分',
9540            LTS : 'Ah点m分s秒',
9541            L : 'YYYY-MM-DD',
9542            LL : 'YYYY年MMMD日',
9543            LLL : 'YYYY年MMMD日LT',
9544            LLLL : 'YYYY年MMMD日ddddLT',
9545            l : 'YYYY-MM-DD',
9546            ll : 'YYYY年MMMD日',
9547            lll : 'YYYY年MMMD日LT',
9548            llll : 'YYYY年MMMD日ddddLT'
9549        },
9550        meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
9551        meridiemHour: function (hour, meridiem) {
9552            if (hour === 12) {
9553                hour = 0;
9554            }
9555            if (meridiem === '凌晨' || meridiem === '早上' ||
9556                    meridiem === '上午') {
9557                return hour;
9558            } else if (meridiem === '下午' || meridiem === '晚上') {
9559                return hour + 12;
9560            } else {
9561                // '中午'
9562                return hour >= 11 ? hour : hour + 12;
9563            }
9564        },
9565        meridiem : function (hour, minute, isLower) {
9566            var hm = hour * 100 + minute;
9567            if (hm < 600) {
9568                return '凌晨';
9569            } else if (hm < 900) {
9570                return '早上';
9571            } else if (hm < 1130) {
9572                return '上午';
9573            } else if (hm < 1230) {
9574                return '中午';
9575            } else if (hm < 1800) {
9576                return '下午';
9577            } else {
9578                return '晚上';
9579            }
9580        },
9581        calendar : {
9582            sameDay : function () {
9583                return this.minutes() === 0 ? '[今天]Ah[点整]' : '[今天]LT';
9584            },
9585            nextDay : function () {
9586                return this.minutes() === 0 ? '[明天]Ah[点整]' : '[明天]LT';
9587            },
9588            lastDay : function () {
9589                return this.minutes() === 0 ? '[昨天]Ah[点整]' : '[昨天]LT';
9590            },
9591            nextWeek : function () {
9592                var startOfWeek, prefix;
9593                startOfWeek = _moment__default().startOf('week');
9594                prefix = this.unix() - startOfWeek.unix() >= 7 * 24 * 3600 ? '[下]' : '[本]';
9595                return this.minutes() === 0 ? prefix + 'dddAh点整' : prefix + 'dddAh点mm';
9596            },
9597            lastWeek : function () {
9598                var startOfWeek, prefix;
9599                startOfWeek = _moment__default().startOf('week');
9600                prefix = this.unix() < startOfWeek.unix()  ? '[上]' : '[本]';
9601                return this.minutes() === 0 ? prefix + 'dddAh点整' : prefix + 'dddAh点mm';
9602            },
9603            sameElse : 'LL'
9604        },
9605        ordinalParse: /\d{1,2}(日|月|周)/,
9606        ordinal : function (number, period) {
9607            switch (period) {
9608            case 'd':
9609            case 'D':
9610            case 'DDD':
9611                return number + '日';
9612            case 'M':
9613                return number + '月';
9614            case 'w':
9615            case 'W':
9616                return number + '周';
9617            default:
9618                return number;
9619            }
9620        },
9621        relativeTime : {
9622            future : '%s内',
9623            past : '%s前',
9624            s : '几秒',
9625            m : '1 分钟',
9626            mm : '%d 分钟',
9627            h : '1 小时',
9628            hh : '%d 小时',
9629            d : '1 天',
9630            dd : '%d 天',
9631            M : '1 个月',
9632            MM : '%d 个月',
9633            y : '1 å¹´',
9634            yy : '%d å¹´'
9635        },
9636        week : {
9637            // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效
9638            dow : 1, // Monday is the first day of the week.
9639            doy : 4  // The week that contains Jan 4th is the first week of the year.
9640        }
9641    });
9642
9643    //! moment.js locale configuration
9644    //! locale : traditional chinese (zh-tw)
9645    //! author : Ben : https://github.com/ben-lin
9646
9647    var zh_tw = _moment__default.defineLocale('zh-tw', {
9648        months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),
9649        monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
9650        weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
9651        weekdaysShort : '週日_週一_週二_週三_週四_週五_週六'.split('_'),
9652        weekdaysMin : '日_一_二_三_四_五_六'.split('_'),
9653        longDateFormat : {
9654            LT : 'Ah點mm分',
9655            LTS : 'Ah點m分s秒',
9656            L : 'YYYY年MMMD日',
9657            LL : 'YYYY年MMMD日',
9658            LLL : 'YYYY年MMMD日LT',
9659            LLLL : 'YYYY年MMMD日ddddLT',
9660            l : 'YYYY年MMMD日',
9661            ll : 'YYYY年MMMD日',
9662            lll : 'YYYY年MMMD日LT',
9663            llll : 'YYYY年MMMD日ddddLT'
9664        },
9665        meridiemParse: /早上|上午|中午|下午|晚上/,
9666        meridiemHour : function (hour, meridiem) {
9667            if (hour === 12) {
9668                hour = 0;
9669            }
9670            if (meridiem === '早上' || meridiem === '上午') {
9671                return hour;
9672            } else if (meridiem === '中午') {
9673                return hour >= 11 ? hour : hour + 12;
9674            } else if (meridiem === '下午' || meridiem === '晚上') {
9675                return hour + 12;
9676            }
9677        },
9678        meridiem : function (hour, minute, isLower) {
9679            var hm = hour * 100 + minute;
9680            if (hm < 900) {
9681                return '早上';
9682            } else if (hm < 1130) {
9683                return '上午';
9684            } else if (hm < 1230) {
9685                return '中午';
9686            } else if (hm < 1800) {
9687                return '下午';
9688            } else {
9689                return '晚上';
9690            }
9691        },
9692        calendar : {
9693            sameDay : '[今天]LT',
9694            nextDay : '[明天]LT',
9695            nextWeek : '[下]ddddLT',
9696            lastDay : '[昨天]LT',
9697            lastWeek : '[上]ddddLT',
9698            sameElse : 'L'
9699        },
9700        ordinalParse: /\d{1,2}(日|月|週)/,
9701        ordinal : function (number, period) {
9702            switch (period) {
9703            case 'd' :
9704            case 'D' :
9705            case 'DDD' :
9706                return number + '日';
9707            case 'M' :
9708                return number + '月';
9709            case 'w' :
9710            case 'W' :
9711                return number + '週';
9712            default :
9713                return number;
9714            }
9715        },
9716        relativeTime : {
9717            future : '%s內',
9718            past : '%s前',
9719            s : '幾秒',
9720            m : '一分鐘',
9721            mm : '%d分鐘',
9722            h : '一小時',
9723            hh
9723 : '%d小時',
9724            d : '一天',
9725            dd : '%d天',
9726            M : '一個月',
9727            MM : '%d個月',
9728            y : '一年',
9729            yy : '%då¹´'
9730        }
9731    });
9732
9733    var moment_with_locales = _moment__default;
9734
9735    return moment_with_locales;
9736
9737}));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.