cf306591b8b77202a7407fda8710a6c7c0fb2ae6
[framework/web/web-ui-fw.git] / libs / js / globalize / lib / cultures / globalize.cultures.js
1 /*
2  * Globalize Cultures
3  *
4  * http://github.com/jquery/globalize
5  *
6  * Copyright Software Freedom Conservancy, Inc.
7  * Dual licensed under the MIT or GPL Version 2 licenses.
8  * http://jquery.org/license
9  *
10  * This file was generated by the Globalize Culture Generator
11  * Translation: bugs found in this file need to be fixed in the generator
12  */
13
14 (function( window, undefined ) {
15
16 var Globalize;
17
18 if ( typeof require !== "undefined"
19         && typeof exports !== "undefined"
20         && typeof module !== "undefined" ) {
21         // Assume CommonJS
22         Globalize = require( "globalize" );
23 } else {
24         // Global variable
25         Globalize = window.Globalize;
26 }
27
28 Globalize.addCultureInfo( "ar", "default", {
29         name: "ar",
30         englishName: "Arabic",
31         nativeName: "العربية",
32         language: "ar",
33         isRTL: true,
34         numberFormat: {
35                 pattern: ["n-"],
36                 NaN: "ليس برقم",
37                 negativeInfinity: "-لا نهاية",
38                 positiveInfinity: "+لا نهاية",
39                 currency: {
40                         pattern: ["$n-","$ n"],
41                         symbol: "ر.س.‏"
42                 }
43         },
44         calendars: {
45                 standard: {
46                         name: "UmAlQura",
47                         firstDay: 6,
48                         days: {
49                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
50                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
51                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
52                         },
53                         months: {
54                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
55                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
56                         },
57                         AM: ["ص","ص","ص"],
58                         PM: ["م","م","م"],
59                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
60                         twoDigitYearMax: 1451,
61                         patterns: {
62                                 d: "dd/MM/yy",
63                                 D: "dd/MMMM/yyyy",
64                                 t: "hh:mm tt",
65                                 T: "hh:mm:ss tt",
66                                 f: "dd/MMMM/yyyy hh:mm tt",
67                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
68                                 M: "dd MMMM"
69                         },
70                         convert: {
71                     _yearInfo: [
72                         // MonthLengthFlags, Gregorian Date
73                         [746, -2198707200000],
74                         [1769, -2168121600000],
75                         [3794, -2137449600000],
76                         [3748, -2106777600000],
77                         [3402, -2076192000000],
78                         [2710, -2045606400000],
79                         [1334, -2015020800000],
80                         [2741, -1984435200000],
81                         [3498, -1953763200000],
82                         [2980, -1923091200000],
83                         [2889, -1892505600000],
84                         [2707, -1861920000000],
85                         [1323, -1831334400000],
86                         [2647, -1800748800000],
87                         [1206, -1770076800000],
88                         [2741, -1739491200000],
89                         [1450, -1708819200000],
90                         [3413, -1678233600000],
91                         [3370, -1647561600000],
92                         [2646, -1616976000000],
93                         [1198, -1586390400000],
94                         [2397, -1555804800000],
95                         [748, -1525132800000],
96                         [1749, -1494547200000],
97                         [1706, -1463875200000],
98                         [1365, -1433289600000],
99                         [1195, -1402704000000],
100                         [2395, -1372118400000],
101                         [698, -1341446400000],
102                         [1397, -1310860800000],
103                         [2994, -1280188800000],
104                         [1892, -1249516800000],
105                         [1865, -1218931200000],
106                         [1621, -1188345600000],
107                         [683, -1157760000000],
108                         [1371, -1127174400000],
109                         [2778, -1096502400000],
110                         [1748, -1065830400000],
111                         [3785, -1035244800000],
112                         [3474, -1004572800000],
113                         [3365, -973987200000],
114                         [2637, -943401600000],
115                         [685, -912816000000],
116                         [1389, -882230400000],
117                         [2922, -851558400000],
118                         [2898, -820886400000],
119                         [2725, -790300800000],
120                         [2635, -759715200000],
121                         [1175, -729129600000],
122                         [2359, -698544000000],
123                         [694, -667872000000],
124                         [1397, -637286400000],
125                         [3434, -606614400000],
126                         [3410, -575942400000],
127                         [2710, -545356800000],
128                         [2349, -514771200000],
129                         [605, -484185600000],
130                         [1245, -453600000000],
131                         [2778, -422928000000],
132                         [1492, -392256000000],
133                         [3497, -361670400000],
134                         [3410, -330998400000],
135                         [2730, -300412800000],
136                         [1238, -269827200000],
137                         [2486, -239241600000],
138                         [884, -208569600000],
139                         [1897, -177984000000],
140                         [1874, -147312000000],
141                         [1701, -116726400000],
142                         [1355, -86140800000],
143                         [2731, -55555200000],
144                         [1370, -24883200000],
145                         [2773, 5702400000],
146                         [3538, 36374400000],
147                         [3492, 67046400000],
148                         [3401, 97632000000],
149                         [2709, 128217600000],
150                         [1325, 158803200000],
151                         [2653, 189388800000],
152                         [1370, 220060800000],
153                         [2773, 250646400000],
154                         [1706, 281318400000],
155                         [1685, 311904000000],
156                         [1323, 342489600000],
157                         [2647, 373075200000],
158                         [1198, 403747200000],
159                         [2422, 434332800000],
160                         [1388, 465004800000],
161                         [2901, 495590400000],
162                         [2730, 526262400000],
163                         [2645, 556848000000],
164                         [1197, 587433600000],
165                         [2397, 618019200000],
166                         [730, 648691200000],
167                         [1497, 679276800000],
168                         [3506, 709948800000],
169                         [2980, 740620800000],
170                         [2890, 771206400000],
171                         [2645, 801792000000],
172                         [693, 832377600000],
173                         [1397, 862963200000],
174                         [2922, 893635200000],
175                         [3026, 924307200000],
176                         [3012, 954979200000],
177                         [2953, 985564800000],
178                         [2709, 1016150400000],
179                         [1325, 1046736000000],
180                         [1453, 1077321600000],
181                         [2922, 1107993600000],
182                         [1748, 1138665600000],
183                         [3529, 1169251200000],
184                         [3474, 1199923200000],
185                         [2726, 1230508800000],
186                         [2390, 1261094400000],
187                         [686, 1291680000000],
188                         [1389, 1322265600000],
189                         [874, 1352937600000],
190                         [2901, 1383523200000],
191                         [2730, 1414195200000],
192                         [2381, 1444780800000],
193                         [1181, 1475366400000],
194                         [2397, 1505952000000],
195                         [698, 1536624000000],
196                         [1461, 1567209600000],
197                         [1450, 1597881600000],
198                         [3413, 1628467200000],
199                         [2714, 1659139200000],
200                         [2350, 1689724800000],
201                         [622, 1720310400000],
202                         [1373, 1750896000000],
203                         [2778, 1781568000000],
204                         [1748, 1812240000000],
205                         [1701, 1842825600000],
206                         [0, 1873411200000]
207                     ],
208                     minDate: -2198707200000,
209                     maxDate: 1873411199999,
210                     toGregorian: function(hyear, hmonth, hday) {
211                         var days = hday - 1,
212                             gyear = hyear - 1318;
213                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
214                         var info = this._yearInfo[gyear],
215                             gdate = new Date(info[1]),
216                             monthLength = info[0];
217                         // Date's ticks in javascript are always from the GMT time,
218                         // but we are interested in the gregorian date in the same timezone,
219                         // not what the gregorian date was at GMT time, so we adjust for the offset.
220                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
221                         for (var i = 0; i < hmonth; i++) {
222                             days += 29 + (monthLength & 1);
223                             monthLength = monthLength >> 1;
224                         }
225                         gdate.setDate(gdate.getDate() + days);
226                         return gdate;
227                     },
228                     fromGregorian: function(gdate) {
229                         // Date's ticks in javascript are always from the GMT time,
230                         // but we are interested in the hijri date in the same timezone,
231                         // not what the hijri date was at GMT time, so we adjust for the offset.
232                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
233                         if (ticks < this.minDate || ticks > this.maxDate) return null;
234                         var hyear = 0,
235                             hmonth = 1;
236                         // find the earliest gregorian date in the array that is greater than or equal to the given date
237                         while (ticks > this._yearInfo[++hyear][1]) { }
238                         if (ticks !== this._yearInfo[hyear][1]) {
239                             hyear--;
240                         }
241                         var info = this._yearInfo[hyear],
242                             // how many days has it been since the date we found in the array?
243                             // 86400000 = ticks per day
244                             days = Math.floor((ticks - info[1]) / 86400000),
245                             monthLength = info[0];
246                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
247                         // now increment day/month based on the total days, considering
248                         // how many days are in each month. We cannot run past the year
249                         // mark since we would have found a different array entry in that case.
250                         var daysInMonth = 29 + (monthLength & 1);
251                         while (days >= daysInMonth) {
252                             days -= daysInMonth;
253                             monthLength = monthLength >> 1;
254                             daysInMonth = 29 + (monthLength & 1);
255                             hmonth++;
256                         }
257                         // remaining days is less than is in one month, thus is the day of the month we landed on
258                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
259                         return [hyear, hmonth - 1, days + 1];
260                     }
261                         }
262                 },
263                 Hijri: {
264                         name: "Hijri",
265                         firstDay: 6,
266                         days: {
267                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
268                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
269                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
270                         },
271                         months: {
272                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
273                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
274                         },
275                         AM: ["ص","ص","ص"],
276                         PM: ["م","م","م"],
277                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
278                         twoDigitYearMax: 1451,
279                         patterns: {
280                                 d: "dd/MM/yy",
281                                 D: "dd/MM/yyyy",
282                                 t: "hh:mm tt",
283                                 T: "hh:mm:ss tt",
284                                 f: "dd/MM/yyyy hh:mm tt",
285                                 F: "dd/MM/yyyy hh:mm:ss tt",
286                                 M: "dd MMMM"
287                         },
288                         convert: {
289                     // Adapted to Script from System.Globalization.HijriCalendar
290                     ticks1970: 62135596800000,
291                     // number of days leading up to each month
292                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
293                     minDate: -42521673600000,
294                     maxDate: 253402300799999,
295                     // The number of days to add or subtract from the calendar to accommodate the variances
296                     // in the start and the end of Ramadan and to accommodate the date difference between
297                     // countries/regions. May be dynamically adjusted based on user preference, but should
298                     // remain in the range of -2 to 2, inclusive.
299                     hijriAdjustment: 0,
300                     toGregorian: function(hyear, hmonth, hday) {
301                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
302                         // 86400000 = ticks per day
303                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
304                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
305                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
306                         // date in the current timezone.
307                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
308                         return gdate;
309                     },
310                     fromGregorian: function(gdate) {
311                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
312                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
313                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
314                         // very particular formula determined by someone smart, adapted from the server-side implementation.
315                         // it approximates the hijri year.
316                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
317                             absDays = this.daysToYear(hyear),
318                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
319                         // hyear is just approximate, it may need adjustment up or down by 1.
320                         if (daysSinceJan0101 < absDays) {
321                             hyear--;
322                             absDays -= daysInYear;
323                         }
324                         else if (daysSinceJan0101 === absDays) {
325                             hyear--;
326                             absDays = this.daysToYear(hyear);
327                         }
328                         else {
329                             if (daysSinceJan0101 > (absDays + daysInYear)) {
330                                 absDays += daysInYear;
331                                 hyear++;
332                             }
333                         }
334                         // determine month by looking at how many days into the hyear we are
335                         // monthDays contains the number of days up to each month.
336                         hmonth = 0;
337                         var daysIntoYear = daysSinceJan0101 - absDays;
338                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
339                             hmonth++;
340                         }
341                         hmonth--;
342                         hday = daysIntoYear - this.monthDays[hmonth];
343                         return [hyear, hmonth, hday];
344                     },
345                     daysToYear: function(year) {
346                         // calculates how many days since Jan 1, 0001
347                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
348                             yearsInto30 = year - yearsToYear30 - 1,
349                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
350                         while (yearsInto30 > 0) {
351                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
352                             yearsInto30--;
353                         }
354                         return days;
355                     },
356                     isLeapYear: function(year) {
357                         return ((((year * 11) + 14) % 30) < 11);
358                     }
359                         }
360                 },
361                 Gregorian_MiddleEastFrench: {
362                         name: "Gregorian_MiddleEastFrench",
363                         firstDay: 6,
364                         days: {
365                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
366                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
367                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
368                         },
369                         months: {
370                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
371                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
372                         },
373                         AM: ["ص","ص","ص"],
374                         PM: ["م","م","م"],
375                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
376                         patterns: {
377                                 d: "MM/dd/yyyy",
378                                 t: "hh:mm tt",
379                                 T: "hh:mm:ss tt",
380                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
381                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
382                                 M: "dd MMMM"
383                         }
384                 },
385                 Gregorian_Arabic: {
386                         name: "Gregorian_Arabic",
387                         firstDay: 6,
388                         days: {
389                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
390                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
391                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
392                         },
393                         months: {
394                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
395                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
396                         },
397                         AM: ["ص","ص","ص"],
398                         PM: ["م","م","م"],
399                         eras: [{"name":"م","start":null,"offset":0}],
400                         patterns: {
401                                 d: "MM/dd/yyyy",
402                                 t: "hh:mm tt",
403                                 T: "hh:mm:ss tt",
404                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
405                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
406                         }
407                 },
408                 Gregorian_Localized: {
409                         firstDay: 6,
410                         days: {
411                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
412                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
413                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
414                         },
415                         months: {
416                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
417                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
418                         },
419                         AM: ["ص","ص","ص"],
420                         PM: ["م","م","م"],
421                         patterns: {
422                                 d: "dd/MM/yyyy",
423                                 D: "dd MMMM, yyyy",
424                                 t: "hh:mm tt",
425                                 T: "hh:mm:ss tt",
426                                 f: "dd MMMM, yyyy hh:mm tt",
427                                 F: "dd MMMM, yyyy hh:mm:ss tt",
428                                 M: "dd MMMM"
429                         }
430                 },
431                 Gregorian_TransliteratedFrench: {
432                         name: "Gregorian_TransliteratedFrench",
433                         firstDay: 6,
434                         days: {
435                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
436                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
437                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
438                         },
439                         months: {
440                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
441                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
442                         },
443                         AM: ["ص","ص","ص"],
444                         PM: ["م","م","م"],
445                         eras: [{"name":"م","start":null,"offset":0}],
446                         patterns: {
447                                 d: "MM/dd/yyyy",
448                                 t: "hh:mm tt",
449                                 T: "hh:mm:ss tt",
450                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
451                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
452                         }
453                 }
454         }
455 });
456
457 Globalize.addCultureInfo( "bg", "default", {
458         name: "bg",
459         englishName: "Bulgarian",
460         nativeName: "български",
461         language: "bg",
462         numberFormat: {
463                 ",": " ",
464                 ".": ",",
465                 negativeInfinity: "- безкрайност",
466                 positiveInfinity: "+ безкрайност",
467                 percent: {
468                         ",": " ",
469                         ".": ","
470                 },
471                 currency: {
472                         pattern: ["-n $","n $"],
473                         ",": " ",
474                         ".": ",",
475                         symbol: "лв."
476                 }
477         },
478         calendars: {
479                 standard: {
480                         "/": ".",
481                         firstDay: 1,
482                         days: {
483                                 names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"],
484                                 namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"],
485                                 namesShort: ["н","п","в","с","ч","п","с"]
486                         },
487                         months: {
488                                 names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""],
489                                 namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""]
490                         },
491                         AM: null,
492                         PM: null,
493                         eras: [{"name":"след новата ера","start":null,"offset":0}],
494                         patterns: {
495                                 d: "d.M.yyyy 'г.'",
496                                 D: "dd MMMM yyyy 'г.'",
497                                 t: "HH:mm 'ч.'",
498                                 T: "HH:mm:ss 'ч.'",
499                                 f: "dd MMMM yyyy 'г.' HH:mm 'ч.'",
500                                 F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'",
501                                 M: "dd MMMM",
502                                 Y: "MMMM yyyy 'г.'"
503                         }
504                 }
505         }
506 });
507
508 Globalize.addCultureInfo( "ca", "default", {
509         name: "ca",
510         englishName: "Catalan",
511         nativeName: "català",
512         language: "ca",
513         numberFormat: {
514                 ",": ".",
515                 ".": ",",
516                 NaN: "NeuN",
517                 negativeInfinity: "-Infinit",
518                 positiveInfinity: "Infinit",
519                 percent: {
520                         ",": ".",
521                         ".": ","
522                 },
523                 currency: {
524                         pattern: ["-n $","n $"],
525                         ",": ".",
526                         ".": ",",
527                         symbol: "€"
528                 }
529         },
530         calendars: {
531                 standard: {
532                         firstDay: 1,
533                         days: {
534                                 names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],
535                                 namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."],
536                                 namesShort: ["dg","dl","dt","dc","dj","dv","ds"]
537                         },
538                         months: {
539                                 names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""],
540                                 namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""]
541                         },
542                         AM: null,
543                         PM: null,
544                         eras: [{"name":"d.C.","start":null,"offset":0}],
545                         patterns: {
546                                 d: "dd/MM/yyyy",
547                                 D: "dddd, d' / 'MMMM' / 'yyyy",
548                                 t: "HH:mm",
549                                 T: "HH:mm:ss",
550                                 f: "dddd, d' / 'MMMM' / 'yyyy HH:mm",
551                                 F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss",
552                                 M: "dd MMMM",
553                                 Y: "MMMM' / 'yyyy"
554                         }
555                 }
556         }
557 });
558
559 Globalize.addCultureInfo( "zh-Hans", "default", {
560         name: "zh-Hans",
561         englishName: "Chinese (Simplified)",
562         nativeName: "中文(简体)",
563         language: "zh-Hans",
564         numberFormat: {
565                 NaN: "非数字",
566                 negativeInfinity: "负无穷大",
567                 positiveInfinity: "正无穷大",
568                 percent: {
569                         pattern: ["-n%","n%"]
570                 },
571                 currency: {
572                         pattern: ["$-n","$n"],
573                         symbol: "¥"
574                 }
575         },
576         calendars: {
577                 standard: {
578                         days: {
579                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
580                                 namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"],
581                                 namesShort: ["日","一","二","三","四","五","六"]
582                         },
583                         months: {
584                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
585                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
586                         },
587                         AM: ["上午","上午","上午"],
588                         PM: ["下午","下午","下午"],
589                         eras: [{"name":"公元","start":null,"offset":0}],
590                         patterns: {
591                                 d: "yyyy/M/d",
592                                 D: "yyyy'年'M'月'd'日'",
593                                 t: "H:mm",
594                                 T: "H:mm:ss",
595                                 f: "yyyy'年'M'月'd'日' H:mm",
596                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
597                                 M: "M'月'd'日'",
598                                 Y: "yyyy'年'M'月'"
599                         }
600                 }
601         }
602 });
603
604 Globalize.addCultureInfo( "cs", "default", {
605         name: "cs",
606         englishName: "Czech",
607         nativeName: "čeština",
608         language: "cs",
609         numberFormat: {
610                 ",": " ",
611                 ".": ",",
612                 NaN: "Není číslo",
613                 negativeInfinity: "-nekonečno",
614                 positiveInfinity: "+nekonečno",
615                 percent: {
616                         pattern: ["-n%","n%"],
617                         ",": " ",
618                         ".": ","
619                 },
620                 currency: {
621                         pattern: ["-n $","n $"],
622                         ",": " ",
623                         ".": ",",
624                         symbol: "Kč"
625                 }
626         },
627         calendars: {
628                 standard: {
629                         "/": ".",
630                         firstDay: 1,
631                         days: {
632                                 names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],
633                                 namesAbbr: ["ne","po","út","st","čt","pá","so"],
634                                 namesShort: ["ne","po","út","st","čt","pá","so"]
635                         },
636                         months: {
637                                 names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""],
638                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
639                         },
640                         monthsGenitive: {
641                                 names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""],
642                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
643                         },
644                         AM: ["dop.","dop.","DOP."],
645                         PM: ["odp.","odp.","ODP."],
646                         eras: [{"name":"n. l.","start":null,"offset":0}],
647                         patterns: {
648                                 d: "d.M.yyyy",
649                                 D: "d. MMMM yyyy",
650                                 t: "H:mm",
651                                 T: "H:mm:ss",
652                                 f: "d. MMMM yyyy H:mm",
653                                 F: "d. MMMM yyyy H:mm:ss",
654                                 M: "dd MMMM",
655                                 Y: "MMMM yyyy"
656                         }
657                 }
658         }
659 });
660
661 Globalize.addCultureInfo( "da", "default", {
662         name: "da",
663         englishName: "Danish",
664         nativeName: "dansk",
665         language: "da",
666         numberFormat: {
667                 ",": ".",
668                 ".": ",",
669                 negativeInfinity: "-INF",
670                 positiveInfinity: "INF",
671                 percent: {
672                         ",": ".",
673                         ".": ","
674                 },
675                 currency: {
676                         pattern: ["$ -n","$ n"],
677                         ",": ".",
678                         ".": ",",
679                         symbol: "kr."
680                 }
681         },
682         calendars: {
683                 standard: {
684                         "/": "-",
685                         firstDay: 1,
686                         days: {
687                                 names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],
688                                 namesAbbr: ["sø","ma","ti","on","to","fr","lø"],
689                                 namesShort: ["sø","ma","ti","on","to","fr","lø"]
690                         },
691                         months: {
692                                 names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""],
693                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""]
694                         },
695                         AM: null,
696                         PM: null,
697                         patterns: {
698                                 d: "dd-MM-yyyy",
699                                 D: "d. MMMM yyyy",
700                                 t: "HH:mm",
701                                 T: "HH:mm:ss",
702                                 f: "d. MMMM yyyy HH:mm",
703                                 F: "d. MMMM yyyy HH:mm:ss",
704                                 M: "d. MMMM",
705                                 Y: "MMMM yyyy"
706                         }
707                 }
708         }
709 });
710
711 Globalize.addCultureInfo( "de", "default", {
712         name: "de",
713         englishName: "German",
714         nativeName: "Deutsch",
715         language: "de",
716         numberFormat: {
717                 ",": ".",
718                 ".": ",",
719                 NaN: "n. def.",
720                 negativeInfinity: "-unendlich",
721                 positiveInfinity: "+unendlich",
722                 percent: {
723                         pattern: ["-n%","n%"],
724                         ",": ".",
725                         ".": ","
726                 },
727                 currency: {
728                         pattern: ["-n $","n $"],
729                         ",": ".",
730                         ".": ",",
731                         symbol: "€"
732                 }
733         },
734         calendars: {
735                 standard: {
736                         "/": ".",
737                         firstDay: 1,
738                         days: {
739                                 names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],
740                                 namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"],
741                                 namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"]
742                         },
743                         months: {
744                                 names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],
745                                 namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
746                         },
747                         AM: null,
748                         PM: null,
749                         eras: [{"name":"n. Chr.","start":null,"offset":0}],
750                         patterns: {
751                                 d: "dd.MM.yyyy",
752                                 D: "dddd, d. MMMM yyyy",
753                                 t: "HH:mm",
754                                 T: "HH:mm:ss",
755                                 f: "dddd, d. MMMM yyyy HH:mm",
756                                 F: "dddd, d. MMMM yyyy HH:mm:ss",
757                                 M: "dd MMMM",
758                                 Y: "MMMM yyyy"
759                         }
760                 }
761         }
762 });
763
764 Globalize.addCultureInfo( "el", "default", {
765         name: "el",
766         englishName: "Greek",
767         nativeName: "Ελληνικά",
768         language: "el",
769         numberFormat: {
770                 ",": ".",
771                 ".": ",",
772                 NaN: "μη αριθμός",
773                 negativeInfinity: "-Άπειρο",
774                 positiveInfinity: "Άπειρο",
775                 percent: {
776                         pattern: ["-n%","n%"],
777                         ",": ".",
778                         ".": ","
779                 },
780                 currency: {
781                         pattern: ["-n $","n $"],
782                         ",": ".",
783                         ".": ",",
784                         symbol: "€"
785                 }
786         },
787         calendars: {
788                 standard: {
789                         firstDay: 1,
790                         days: {
791                                 names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],
792                                 namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"],
793                                 namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"]
794                         },
795                         months: {
796                                 names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""],
797                                 namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""]
798                         },
799                         monthsGenitive: {
800                                 names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""],
801                                 namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""]
802                         },
803                         AM: ["πμ","πμ","ΠΜ"],
804                         PM: ["μμ","μμ","ΜΜ"],
805                         eras: [{"name":"μ.Χ.","start":null,"offset":0}],
806                         patterns: {
807                                 d: "d/M/yyyy",
808                                 D: "dddd, d MMMM yyyy",
809                                 f: "dddd, d MMMM yyyy h:mm tt",
810                                 F: "dddd, d MMMM yyyy h:mm:ss tt",
811                                 M: "dd MMMM",
812                                 Y: "MMMM yyyy"
813                         }
814                 }
815         }
816 });
817
818 Globalize.addCultureInfo( "es", "default", {
819         name: "es",
820         englishName: "Spanish",
821         nativeName: "español",
822         language: "es",
823         numberFormat: {
824                 ",": ".",
825                 ".": ",",
826                 NaN: "NeuN",
827                 negativeInfinity: "-Infinito",
828                 positiveInfinity: "Infinito",
829                 percent: {
830                         ",": ".",
831                         ".": ","
832                 },
833                 currency: {
834                         pattern: ["-n $","n $"],
835                         ",": ".",
836                         ".": ",",
837                         symbol: "€"
838                 }
839         },
840         calendars: {
841                 standard: {
842                         firstDay: 1,
843                         days: {
844                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
845                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
846                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
847                         },
848                         months: {
849                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
850                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
851                         },
852                         AM: null,
853                         PM: null,
854                         eras: [{"name":"d.C.","start":null,"offset":0}],
855                         patterns: {
856                                 d: "dd/MM/yyyy",
857                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
858                                 t: "H:mm",
859                                 T: "H:mm:ss",
860                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
861                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
862                                 M: "dd MMMM",
863                                 Y: "MMMM' de 'yyyy"
864                         }
865                 }
866         }
867 });
868
869 Globalize.addCultureInfo( "fi", "default", {
870         name: "fi",
871         englishName: "Finnish",
872         nativeName: "suomi",
873         language: "fi",
874         numberFormat: {
875                 ",": " ",
876                 ".": ",",
877                 negativeInfinity: "-INF",
878                 positiveInfinity: "INF",
879                 percent: {
880                         ",": " ",
881                         ".": ","
882                 },
883                 currency: {
884                         pattern: ["-n $","n $"],
885                         ",": " ",
886                         ".": ",",
887                         symbol: "€"
888                 }
889         },
890         calendars: {
891                 standard: {
892                         "/": ".",
893                         firstDay: 1,
894                         days: {
895                                 names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"],
896                                 namesAbbr: ["su","ma","ti","ke","to","pe","la"],
897                                 namesShort: ["su","ma","ti","ke","to","pe","la"]
898                         },
899                         months: {
900                                 names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""],
901                                 namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""]
902                         },
903                         AM: null,
904                         PM: null,
905                         patterns: {
906                                 d: "d.M.yyyy",
907                                 D: "d. MMMM'ta 'yyyy",
908                                 t: "H:mm",
909                                 T: "H:mm:ss",
910                                 f: "d. MMMM'ta 'yyyy H:mm",
911                                 F: "d. MMMM'ta 'yyyy H:mm:ss",
912                                 M: "d. MMMM'ta'",
913                                 Y: "MMMM yyyy"
914                         }
915                 }
916         }
917 });
918
919 Globalize.addCultureInfo( "fr", "default", {
920         name: "fr",
921         englishName: "French",
922         nativeName: "français",
923         language: "fr",
924         numberFormat: {
925                 ",": " ",
926                 ".": ",",
927                 NaN: "Non Numérique",
928                 negativeInfinity: "-Infini",
929                 positiveInfinity: "+Infini",
930                 percent: {
931                         ",": " ",
932                         ".": ","
933                 },
934                 currency: {
935                         pattern: ["-n $","n $"],
936                         ",": " ",
937                         ".": ",",
938                         symbol: "€"
939                 }
940         },
941         calendars: {
942                 standard: {
943                         firstDay: 1,
944                         days: {
945                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
946                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
947                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
948                         },
949                         months: {
950                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
951                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
952                         },
953                         AM: null,
954                         PM: null,
955                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
956                         patterns: {
957                                 d: "dd/MM/yyyy",
958                                 D: "dddd d MMMM yyyy",
959                                 t: "HH:mm",
960                                 T: "HH:mm:ss",
961                                 f: "dddd d MMMM yyyy HH:mm",
962                                 F: "dddd d MMMM yyyy HH:mm:ss",
963                                 M: "d MMMM",
964                                 Y: "MMMM yyyy"
965                         }
966                 }
967         }
968 });
969
970 Globalize.addCultureInfo( "he", "default", {
971         name: "he",
972         englishName: "Hebrew",
973         nativeName: "עברית",
974         language: "he",
975         isRTL: true,
976         numberFormat: {
977                 NaN: "לא מספר",
978                 negativeInfinity: "אינסוף שלילי",
979                 positiveInfinity: "אינסוף חיובי",
980                 percent: {
981                         pattern: ["-n%","n%"]
982                 },
983                 currency: {
984                         pattern: ["$-n","$ n"],
985                         symbol: "₪"
986                 }
987         },
988         calendars: {
989                 standard: {
990                         days: {
991                                 names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"],
992                                 namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"],
993                                 namesShort: ["א","ב","ג","ד","ה","ו","ש"]
994                         },
995                         months: {
996                                 names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""],
997                                 namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""]
998                         },
999                         eras: [{"name":"לספירה","start":null,"offset":0}],
1000                         patterns: {
1001                                 d: "dd/MM/yyyy",
1002                                 D: "dddd dd MMMM yyyy",
1003                                 t: "HH:mm",
1004                                 T: "HH:mm:ss",
1005                                 f: "dddd dd MMMM yyyy HH:mm",
1006                                 F: "dddd dd MMMM yyyy HH:mm:ss",
1007                                 M: "dd MMMM",
1008                                 Y: "MMMM yyyy"
1009                         }
1010                 },
1011                 Hebrew: {
1012                         name: "Hebrew",
1013                         "/": " ",
1014                         days: {
1015                                 names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"],
1016                                 namesAbbr: ["א","ב","ג","ד","ה","ו","ש"],
1017                                 namesShort: ["א","ב","ג","ד","ה","ו","ש"]
1018                         },
1019                         months: {
1020                                 names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"],
1021                                 namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"]
1022                         },
1023                         eras: [{"name":"C.E.","start":null,"offset":0}],
1024                         twoDigitYearMax: 5790,
1025                         patterns: {
1026                                 d: "dd MMMM yyyy",
1027                                 D: "dddd dd MMMM yyyy",
1028                                 t: "HH:mm",
1029                                 T: "HH:mm:ss",
1030                                 f: "dddd dd MMMM yyyy HH:mm",
1031                                 F: "dddd dd MMMM yyyy HH:mm:ss",
1032                                 M: "dd MMMM",
1033                                 Y: "MMMM yyyy"
1034                         }
1035                 }
1036         }
1037 });
1038
1039 Globalize.addCultureInfo( "hu", "default", {
1040         name: "hu",
1041         englishName: "Hungarian",
1042         nativeName: "magyar",
1043         language: "hu",
1044         numberFormat: {
1045                 ",": " ",
1046                 ".": ",",
1047                 NaN: "nem szám",
1048                 negativeInfinity: "negatív végtelen",
1049                 positiveInfinity: "végtelen",
1050                 percent: {
1051                         ",": " ",
1052                         ".": ","
1053                 },
1054                 currency: {
1055                         pattern: ["-n $","n $"],
1056                         ",": " ",
1057                         ".": ",",
1058                         symbol: "Ft"
1059                 }
1060         },
1061         calendars: {
1062                 standard: {
1063                         "/": ".",
1064                         firstDay: 1,
1065                         days: {
1066                                 names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],
1067                                 namesAbbr: ["V","H","K","Sze","Cs","P","Szo"],
1068                                 namesShort: ["V","H","K","Sze","Cs","P","Szo"]
1069                         },
1070                         months: {
1071                                 names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""],
1072                                 namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""]
1073                         },
1074                         AM: ["de.","de.","DE."],
1075                         PM: ["du.","du.","DU."],
1076                         eras: [{"name":"i.sz.","start":null,"offset":0}],
1077                         patterns: {
1078                                 d: "yyyy.MM.dd.",
1079                                 D: "yyyy. MMMM d.",
1080                                 t: "H:mm",
1081                                 T: "H:mm:ss",
1082                                 f: "yyyy. MMMM d. H:mm",
1083                                 F: "yyyy. MMMM d. H:mm:ss",
1084                                 M: "MMMM d.",
1085                                 Y: "yyyy. MMMM"
1086                         }
1087                 }
1088         }
1089 });
1090
1091 Globalize.addCultureInfo( "is", "default", {
1092         name: "is",
1093         englishName: "Icelandic",
1094         nativeName: "íslenska",
1095         language: "is",
1096         numberFormat: {
1097                 ",": ".",
1098                 ".": ",",
1099                 negativeInfinity: "-INF",
1100                 positiveInfinity: "INF",
1101                 percent: {
1102                         pattern: ["-n%","n%"],
1103                         ",": ".",
1104                         ".": ","
1105                 },
1106                 currency: {
1107                         pattern: ["-n $","n $"],
1108                         decimals: 0,
1109                         ",": ".",
1110                         ".": ",",
1111                         symbol: "kr."
1112                 }
1113         },
1114         calendars: {
1115                 standard: {
1116                         "/": ".",
1117                         firstDay: 1,
1118                         days: {
1119                                 names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"],
1120                                 namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."],
1121                                 namesShort: ["su","má","þr","mi","fi","fö","la"]
1122                         },
1123                         months: {
1124                                 names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""],
1125                                 namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""]
1126                         },
1127                         AM: null,
1128                         PM: null,
1129                         patterns: {
1130                                 d: "d.M.yyyy",
1131                                 D: "d. MMMM yyyy",
1132                                 t: "HH:mm",
1133                                 T: "HH:mm:ss",
1134                                 f: "d. MMMM yyyy HH:mm",
1135                                 F: "d. MMMM yyyy HH:mm:ss",
1136                                 M: "d. MMMM",
1137                                 Y: "MMMM yyyy"
1138                         }
1139                 }
1140         }
1141 });
1142
1143 Globalize.addCultureInfo( "it", "default", {
1144         name: "it",
1145         englishName: "Italian",
1146         nativeName: "italiano",
1147         language: "it",
1148         numberFormat: {
1149                 ",": ".",
1150                 ".": ",",
1151                 NaN: "Non un numero reale",
1152                 negativeInfinity: "-Infinito",
1153                 positiveInfinity: "+Infinito",
1154                 percent: {
1155                         pattern: ["-n%","n%"],
1156                         ",": ".",
1157                         ".": ","
1158                 },
1159                 currency: {
1160                         pattern: ["-$ n","$ n"],
1161                         ",": ".",
1162                         ".": ",",
1163                         symbol: "€"
1164                 }
1165         },
1166         calendars: {
1167                 standard: {
1168                         firstDay: 1,
1169                         days: {
1170                                 names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],
1171                                 namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"],
1172                                 namesShort: ["do","lu","ma","me","gi","ve","sa"]
1173                         },
1174                         months: {
1175                                 names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""],
1176                                 namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""]
1177                         },
1178                         AM: null,
1179                         PM: null,
1180                         eras: [{"name":"d.C.","start":null,"offset":0}],
1181                         patterns: {
1182                                 d: "dd/MM/yyyy",
1183                                 D: "dddd d MMMM yyyy",
1184                                 t: "HH:mm",
1185                                 T: "HH:mm:ss",
1186                                 f: "dddd d MMMM yyyy HH:mm",
1187                                 F: "dddd d MMMM yyyy HH:mm:ss",
1188                                 M: "dd MMMM",
1189                                 Y: "MMMM yyyy"
1190                         }
1191                 }
1192         }
1193 });
1194
1195 Globalize.addCultureInfo( "ja", "default", {
1196         name: "ja",
1197         englishName: "Japanese",
1198         nativeName: "日本語",
1199         language: "ja",
1200         numberFormat: {
1201                 NaN: "NaN (非数値)",
1202                 negativeInfinity: "-∞",
1203                 positiveInfinity: "+∞",
1204                 percent: {
1205                         pattern: ["-n%","n%"]
1206                 },
1207                 currency: {
1208                         pattern: ["-$n","$n"],
1209                         decimals: 0,
1210                         symbol: "¥"
1211                 }
1212         },
1213         calendars: {
1214                 standard: {
1215                         days: {
1216                                 names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],
1217                                 namesAbbr: ["日","月","火","水","木","金","土"],
1218                                 namesShort: ["日","月","火","水","木","金","土"]
1219                         },
1220                         months: {
1221                                 names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""],
1222                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
1223                         },
1224                         AM: ["午前","午前","午前"],
1225                         PM: ["午後","午後","午後"],
1226                         eras: [{"name":"西暦","start":null,"offset":0}],
1227                         patterns: {
1228                                 d: "yyyy/MM/dd",
1229                                 D: "yyyy'年'M'月'd'日'",
1230                                 t: "H:mm",
1231                                 T: "H:mm:ss",
1232                                 f: "yyyy'年'M'月'd'日' H:mm",
1233                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
1234                                 M: "M'月'd'日'",
1235                                 Y: "yyyy'年'M'月'"
1236                         }
1237                 },
1238                 Japanese: {
1239                         name: "Japanese",
1240                         days: {
1241                                 names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],
1242                                 namesAbbr: ["日","月","火","水","木","金","土"],
1243                                 namesShort: ["日","月","火","水","木","金","土"]
1244                         },
1245                         months: {
1246                                 names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""],
1247                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
1248                         },
1249                         AM: ["午前","午前","午前"],
1250                         PM: ["午後","午後","午後"],
1251                         eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}],
1252                         twoDigitYearMax: 99,
1253                         patterns: {
1254                                 d: "gg y/M/d",
1255                                 D: "gg y'年'M'月'd'日'",
1256                                 t: "H:mm",
1257                                 T: "H:mm:ss",
1258                                 f: "gg y'年'M'月'd'日' H:mm",
1259                                 F: "gg y'年'M'月'd'日' H:mm:ss",
1260                                 M: "M'月'd'日'",
1261                                 Y: "gg y'年'M'月'"
1262                         }
1263                 }
1264         }
1265 });
1266
1267 Globalize.addCultureInfo( "ko", "default", {
1268         name: "ko",
1269         englishName: "Korean",
1270         nativeName: "한국어",
1271         language: "ko",
1272         numberFormat: {
1273                 currency: {
1274                         pattern: ["-$n","$n"],
1275                         decimals: 0,
1276                         symbol: "₩"
1277                 }
1278         },
1279         calendars: {
1280                 standard: {
1281                         "/": "-",
1282                         days: {
1283                                 names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],
1284                                 namesAbbr: ["일","월","화","수","목","금","토"],
1285                                 namesShort: ["일","월","화","수","목","금","토"]
1286                         },
1287                         months: {
1288                                 names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""],
1289                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
1290                         },
1291                         AM: ["오전","오전","오전"],
1292                         PM: ["오후","오후","오후"],
1293                         eras: [{"name":"서기","start":null,"offset":0}],
1294                         patterns: {
1295                                 d: "yyyy-MM-dd",
1296                                 D: "yyyy'년' M'월' d'일' dddd",
1297                                 t: "tt h:mm",
1298                                 T: "tt h:mm:ss",
1299                                 f: "yyyy'년' M'월' d'일' dddd tt h:mm",
1300                                 F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss",
1301                                 M: "M'월' d'일'",
1302                                 Y: "yyyy'년' M'월'"
1303                         }
1304                 },
1305                 Korean: {
1306                         name: "Korean",
1307                         "/": "-",
1308                         days: {
1309                                 names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],
1310                                 namesAbbr: ["일","월","화","수","목","금","토"],
1311                                 namesShort: ["일","월","화","수","목","금","토"]
1312                         },
1313                         months: {
1314                                 names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""],
1315                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
1316                         },
1317                         AM: ["오전","오전","오전"],
1318                         PM: ["오후","오후","오후"],
1319                         eras: [{"name":"단기","start":null,"offset":-2333}],
1320                         twoDigitYearMax: 4362,
1321                         patterns: {
1322                                 d: "gg yyyy-MM-dd",
1323                                 D: "gg yyyy'년' M'월' d'일' dddd",
1324                                 t: "tt h:mm",
1325                                 T: "tt h:mm:ss",
1326                                 f: "gg yyyy'년' M'월' d'일' dddd tt h:mm",
1327                                 F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss",
1328                                 M: "M'월' d'일'",
1329                                 Y: "gg yyyy'년' M'월'"
1330                         }
1331                 }
1332         }
1333 });
1334
1335 Globalize.addCultureInfo( "nl", "default", {
1336         name: "nl",
1337         englishName: "Dutch",
1338         nativeName: "Nederlands",
1339         language: "nl",
1340         numberFormat: {
1341                 ",": ".",
1342                 ".": ",",
1343                 percent: {
1344                         ",": ".",
1345                         ".": ","
1346                 },
1347                 currency: {
1348                         pattern: ["$ -n","$ n"],
1349                         ",": ".",
1350                         ".": ",",
1351                         symbol: "€"
1352                 }
1353         },
1354         calendars: {
1355                 standard: {
1356                         "/": "-",
1357                         firstDay: 1,
1358                         days: {
1359                                 names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],
1360                                 namesAbbr: ["zo","ma","di","wo","do","vr","za"],
1361                                 namesShort: ["zo","ma","di","wo","do","vr","za"]
1362                         },
1363                         months: {
1364                                 names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""],
1365                                 namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""]
1366                         },
1367                         AM: null,
1368                         PM: null,
1369                         patterns: {
1370                                 d: "d-M-yyyy",
1371                                 D: "dddd d MMMM yyyy",
1372                                 t: "H:mm",
1373                                 T: "H:mm:ss",
1374                                 f: "dddd d MMMM yyyy H:mm",
1375                                 F: "dddd d MMMM yyyy H:mm:ss",
1376                                 M: "dd MMMM",
1377                                 Y: "MMMM yyyy"
1378                         }
1379                 }
1380         }
1381 });
1382
1383 Globalize.addCultureInfo( "no", "default", {
1384         name: "no",
1385         englishName: "Norwegian",
1386         nativeName: "norsk",
1387         language: "no",
1388         numberFormat: {
1389                 ",": " ",
1390                 ".": ",",
1391                 negativeInfinity: "-INF",
1392                 positiveInfinity: "INF",
1393                 percent: {
1394                         ",": " ",
1395                         ".": ","
1396                 },
1397                 currency: {
1398                         pattern: ["$ -n","$ n"],
1399                         ",": " ",
1400                         ".": ",",
1401                         symbol: "kr"
1402                 }
1403         },
1404         calendars: {
1405                 standard: {
1406                         "/": ".",
1407                         firstDay: 1,
1408                         days: {
1409                                 names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],
1410                                 namesAbbr: ["sø","ma","ti","on","to","fr","lø"],
1411                                 namesShort: ["sø","ma","ti","on","to","fr","lø"]
1412                         },
1413                         months: {
1414                                 names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""],
1415                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""]
1416                         },
1417                         AM: null,
1418                         PM: null,
1419                         patterns: {
1420                                 d: "dd.MM.yyyy",
1421                                 D: "d. MMMM yyyy",
1422                                 t: "HH:mm",
1423                                 T: "HH:mm:ss",
1424                                 f: "d. MMMM yyyy HH:mm",
1425                                 F: "d. MMMM yyyy HH:mm:ss",
1426                                 M: "d. MMMM",
1427                                 Y: "MMMM yyyy"
1428                         }
1429                 }
1430         }
1431 });
1432
1433 Globalize.addCultureInfo( "pl", "default", {
1434         name: "pl",
1435         englishName: "Polish",
1436         nativeName: "polski",
1437         language: "pl",
1438         numberFormat: {
1439                 ",": " ",
1440                 ".": ",",
1441                 NaN: "nie jest liczbą",
1442                 negativeInfinity: "-nieskończoność",
1443                 positiveInfinity: "+nieskończoność",
1444                 percent: {
1445                         pattern: ["-n%","n%"],
1446                         ",": " ",
1447                         ".": ","
1448                 },
1449                 currency: {
1450                         pattern: ["-n $","n $"],
1451                         ",": " ",
1452                         ".": ",",
1453                         symbol: "zł"
1454                 }
1455         },
1456         calendars: {
1457                 standard: {
1458                         "/": "-",
1459                         firstDay: 1,
1460                         days: {
1461                                 names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"],
1462                                 namesAbbr: ["N","Pn","Wt","Śr","Cz","Pt","So"],
1463                                 namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"]
1464                         },
1465                         months: {
1466                                 names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""],
1467                                 namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""]
1468                         },
1469                         monthsGenitive: {
1470                                 names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""],
1471                                 namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""]
1472                         },
1473                         AM: null,
1474                         PM: null,
1475                         patterns: {
1476                                 d: "yyyy-MM-dd",
1477                                 D: "d MMMM yyyy",
1478                                 t: "HH:mm",
1479                                 T: "HH:mm:ss",
1480                                 f: "d MMMM yyyy HH:mm",
1481                                 F: "d MMMM yyyy HH:mm:ss",
1482                                 M: "d MMMM",
1483                                 Y: "MMMM yyyy"
1484                         }
1485                 }
1486         }
1487 });
1488
1489 Globalize.addCultureInfo( "pt", "default", {
1490         name: "pt",
1491         englishName: "Portuguese",
1492         nativeName: "Português",
1493         language: "pt",
1494         numberFormat: {
1495                 ",": ".",
1496                 ".": ",",
1497                 NaN: "NaN (Não é um número)",
1498                 negativeInfinity: "-Infinito",
1499                 positiveInfinity: "+Infinito",
1500                 percent: {
1501                         pattern: ["-n%","n%"],
1502                         ",": ".",
1503                         ".": ","
1504                 },
1505                 currency: {
1506                         pattern: ["-$ n","$ n"],
1507                         ",": ".",
1508                         ".": ",",
1509                         symbol: "R$"
1510                 }
1511         },
1512         calendars: {
1513                 standard: {
1514                         days: {
1515                                 names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"],
1516                                 namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"],
1517                                 namesShort: ["D","S","T","Q","Q","S","S"]
1518                         },
1519                         months: {
1520                                 names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""],
1521                                 namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""]
1522                         },
1523                         AM: null,
1524                         PM: null,
1525                         eras: [{"name":"d.C.","start":null,"offset":0}],
1526                         patterns: {
1527                                 d: "dd/MM/yyyy",
1528                                 D: "dddd, d' de 'MMMM' de 'yyyy",
1529                                 t: "HH:mm",
1530                                 T: "HH:mm:ss",
1531                                 f: "dddd, d' de 'MMMM' de 'yyyy HH:mm",
1532                                 F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss",
1533                                 M: "dd' de 'MMMM",
1534                                 Y: "MMMM' de 'yyyy"
1535                         }
1536                 }
1537         }
1538 });
1539
1540 Globalize.addCultureInfo( "rm", "default", {
1541         name: "rm",
1542         englishName: "Romansh",
1543         nativeName: "Rumantsch",
1544         language: "rm",
1545         numberFormat: {
1546                 ",": "'",
1547                 NaN: "betg def.",
1548                 negativeInfinity: "-infinit",
1549                 positiveInfinity: "+infinit",
1550                 percent: {
1551                         pattern: ["-n%","n%"],
1552                         ",": "'"
1553                 },
1554                 currency: {
1555                         pattern: ["$-n","$ n"],
1556                         ",": "'",
1557                         symbol: "fr."
1558                 }
1559         },
1560         calendars: {
1561                 standard: {
1562                         firstDay: 1,
1563                         days: {
1564                                 names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"],
1565                                 namesAbbr: ["du","gli","ma","me","gie","ve","so"],
1566                                 namesShort: ["du","gli","ma","me","gie","ve","so"]
1567                         },
1568                         months: {
1569                                 names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""],
1570                                 namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""]
1571                         },
1572                         AM: null,
1573                         PM: null,
1574                         eras: [{"name":"s. Cr.","start":null,"offset":0}],
1575                         patterns: {
1576                                 d: "dd/MM/yyyy",
1577                                 D: "dddd, d MMMM yyyy",
1578                                 t: "HH:mm",
1579                                 T: "HH:mm:ss",
1580                                 f: "dddd, d MMMM yyyy HH:mm",
1581                                 F: "dddd, d MMMM yyyy HH:mm:ss",
1582                                 M: "dd MMMM",
1583                                 Y: "MMMM yyyy"
1584                         }
1585                 }
1586         }
1587 });
1588
1589 Globalize.addCultureInfo( "ro", "default", {
1590         name: "ro",
1591         englishName: "Romanian",
1592         nativeName: "română",
1593         language: "ro",
1594         numberFormat: {
1595                 ",": ".",
1596                 ".": ",",
1597                 percent: {
1598                         pattern: ["-n%","n%"],
1599                         ",": ".",
1600                         ".": ","
1601                 },
1602                 currency: {
1603                         pattern: ["-n $","n $"],
1604                         ",": ".",
1605                         ".": ",",
1606                         symbol: "lei"
1607                 }
1608         },
1609         calendars: {
1610                 standard: {
1611                         "/": ".",
1612                         firstDay: 1,
1613                         days: {
1614                                 names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"],
1615                                 namesAbbr: ["D","L","Ma","Mi","J","V","S"],
1616                                 namesShort: ["D","L","Ma","Mi","J","V","S"]
1617                         },
1618                         months: {
1619                                 names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""],
1620                                 namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""]
1621                         },
1622                         AM: null,
1623                         PM: null,
1624                         patterns: {
1625                                 d: "dd.MM.yyyy",
1626                                 D: "d MMMM yyyy",
1627                                 t: "HH:mm",
1628                                 T: "HH:mm:ss",
1629                                 f: "d MMMM yyyy HH:mm",
1630                                 F: "d MMMM yyyy HH:mm:ss",
1631                                 M: "d MMMM",
1632                                 Y: "MMMM yyyy"
1633                         }
1634                 }
1635         }
1636 });
1637
1638 Globalize.addCultureInfo( "ru", "default", {
1639         name: "ru",
1640         englishName: "Russian",
1641         nativeName: "русский",
1642         language: "ru",
1643         numberFormat: {
1644                 ",": " ",
1645                 ".": ",",
1646                 negativeInfinity: "-бесконечность",
1647                 positiveInfinity: "бесконечность",
1648                 percent: {
1649                         pattern: ["-n%","n%"],
1650                         ",": " ",
1651                         ".": ","
1652                 },
1653                 currency: {
1654                         pattern: ["-n$","n$"],
1655                         ",": " ",
1656                         ".": ",",
1657                         symbol: "р."
1658                 }
1659         },
1660         calendars: {
1661                 standard: {
1662                         "/": ".",
1663                         firstDay: 1,
1664                         days: {
1665                                 names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],
1666                                 namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],
1667                                 namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"]
1668                         },
1669                         months: {
1670                                 names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],
1671                                 namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""]
1672                         },
1673                         monthsGenitive: {
1674                                 names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""],
1675                                 namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""]
1676                         },
1677                         AM: null,
1678                         PM: null,
1679                         patterns: {
1680                                 d: "dd.MM.yyyy",
1681                                 D: "d MMMM yyyy 'г.'",
1682                                 t: "H:mm",
1683                                 T: "H:mm:ss",
1684                                 f: "d MMMM yyyy 'г.' H:mm",
1685                                 F: "d MMMM yyyy 'г.' H:mm:ss",
1686                                 Y: "MMMM yyyy"
1687                         }
1688                 }
1689         }
1690 });
1691
1692 Globalize.addCultureInfo( "hr", "default", {
1693         name: "hr",
1694         englishName: "Croatian",
1695         nativeName: "hrvatski",
1696         language: "hr",
1697         numberFormat: {
1698                 pattern: ["- n"],
1699                 ",": ".",
1700                 ".": ",",
1701                 percent: {
1702                         pattern: ["-n%","n%"],
1703                         ",": ".",
1704                         ".": ","
1705                 },
1706                 currency: {
1707                         pattern: ["-n $","n $"],
1708                         ",": ".",
1709                         ".": ",",
1710                         symbol: "kn"
1711                 }
1712         },
1713         calendars: {
1714                 standard: {
1715                         "/": ".",
1716                         firstDay: 1,
1717                         days: {
1718                                 names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],
1719                                 namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"],
1720                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
1721                         },
1722                         months: {
1723                                 names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""],
1724                                 namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""]
1725                         },
1726                         monthsGenitive: {
1727                                 names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""],
1728                                 namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""]
1729                         },
1730                         AM: null,
1731                         PM: null,
1732                         patterns: {
1733                                 d: "d.M.yyyy.",
1734                                 D: "d. MMMM yyyy.",
1735                                 t: "H:mm",
1736                                 T: "H:mm:ss",
1737                                 f: "d. MMMM yyyy. H:mm",
1738                                 F: "d. MMMM yyyy. H:mm:ss",
1739                                 M: "d. MMMM"
1740                         }
1741                 }
1742         }
1743 });
1744
1745 Globalize.addCultureInfo( "sk", "default", {
1746         name: "sk",
1747         englishName: "Slovak",
1748         nativeName: "slovenčina",
1749         language: "sk",
1750         numberFormat: {
1751                 ",": " ",
1752                 ".": ",",
1753                 NaN: "Nie je číslo",
1754                 negativeInfinity: "-nekonečno",
1755                 positiveInfinity: "+nekonečno",
1756                 percent: {
1757                         pattern: ["-n%","n%"],
1758                         ",": " ",
1759                         ".": ","
1760                 },
1761                 currency: {
1762                         pattern: ["-n $","n $"],
1763                         ",": " ",
1764                         ".": ",",
1765                         symbol: "€"
1766                 }
1767         },
1768         calendars: {
1769                 standard: {
1770                         "/": ". ",
1771                         firstDay: 1,
1772                         days: {
1773                                 names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"],
1774                                 namesAbbr: ["ne","po","ut","st","št","pi","so"],
1775                                 namesShort: ["ne","po","ut","st","št","pi","so"]
1776                         },
1777                         months: {
1778                                 names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""],
1779                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
1780                         },
1781                         monthsGenitive: {
1782                                 names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""],
1783                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
1784                         },
1785                         AM: null,
1786                         PM: null,
1787                         eras: [{"name":"n. l.","start":null,"offset":0}],
1788                         patterns: {
1789                                 d: "d. M. yyyy",
1790                                 D: "d. MMMM yyyy",
1791                                 t: "H:mm",
1792                                 T: "H:mm:ss",
1793                                 f: "d. MMMM yyyy H:mm",
1794                                 F: "d. MMMM yyyy H:mm:ss",
1795                                 M: "dd MMMM",
1796                                 Y: "MMMM yyyy"
1797                         }
1798                 }
1799         }
1800 });
1801
1802 Globalize.addCultureInfo( "sq", "default", {
1803         name: "sq",
1804         englishName: "Albanian",
1805         nativeName: "shqipe",
1806         language: "sq",
1807         numberFormat: {
1808                 ",": ".",
1809                 ".": ",",
1810                 negativeInfinity: "-infinit",
1811                 positiveInfinity: "infinit",
1812                 percent: {
1813                         ",": ".",
1814                         ".": ","
1815                 },
1816                 currency: {
1817                         pattern: ["-n$","n$"],
1818                         ",": ".",
1819                         ".": ",",
1820                         symbol: "Lek"
1821                 }
1822         },
1823         calendars: {
1824                 standard: {
1825                         "/": "-",
1826                         firstDay: 1,
1827                         days: {
1828                                 names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"],
1829                                 namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"],
1830                                 namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"]
1831                         },
1832                         months: {
1833                                 names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""],
1834                                 namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""]
1835                         },
1836                         AM: ["PD","pd","PD"],
1837                         PM: ["MD","md","MD"],
1838                         patterns: {
1839                                 d: "yyyy-MM-dd",
1840                                 D: "yyyy-MM-dd",
1841                                 t: "h:mm.tt",
1842                                 T: "h:mm:ss.tt",
1843                                 f: "yyyy-MM-dd h:mm.tt",
1844                                 F: "yyyy-MM-dd h:mm:ss.tt",
1845                                 Y: "yyyy-MM"
1846                         }
1847                 }
1848         }
1849 });
1850
1851 Globalize.addCultureInfo( "sv", "default", {
1852         name: "sv",
1853         englishName: "Swedish",
1854         nativeName: "svenska",
1855         language: "sv",
1856         numberFormat: {
1857                 ",": " ",
1858                 ".": ",",
1859                 negativeInfinity: "-INF",
1860                 positiveInfinity: "INF",
1861                 percent: {
1862                         ",": " ",
1863                         ".": ","
1864                 },
1865                 currency: {
1866                         pattern: ["-n $","n $"],
1867                         ",": ".",
1868                         ".": ",",
1869                         symbol: "kr"
1870                 }
1871         },
1872         calendars: {
1873                 standard: {
1874                         "/": "-",
1875                         firstDay: 1,
1876                         days: {
1877                                 names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],
1878                                 namesAbbr: ["sö","må","ti","on","to","fr","lö"],
1879                                 namesShort: ["sö","må","ti","on","to","fr","lö"]
1880                         },
1881                         months: {
1882                                 names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""],
1883                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""]
1884                         },
1885                         AM: null,
1886                         PM: null,
1887                         patterns: {
1888                                 d: "yyyy-MM-dd",
1889                                 D: "'den 'd MMMM yyyy",
1890                                 t: "HH:mm",
1891                                 T: "HH:mm:ss",
1892                                 f: "'den 'd MMMM yyyy HH:mm",
1893                                 F: "'den 'd MMMM yyyy HH:mm:ss",
1894                                 M: "'den 'd MMMM",
1895                                 Y: "MMMM yyyy"
1896                         }
1897                 }
1898         }
1899 });
1900
1901 Globalize.addCultureInfo( "th", "default", {
1902         name: "th",
1903         englishName: "Thai",
1904         nativeName: "ไทย",
1905         language: "th",
1906         numberFormat: {
1907                 currency: {
1908                         pattern: ["-$n","$n"],
1909                         symbol: "฿"
1910                 }
1911         },
1912         calendars: {
1913                 standard: {
1914                         name: "ThaiBuddhist",
1915                         firstDay: 1,
1916                         days: {
1917                                 names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"],
1918                                 namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],
1919                                 namesShort: ["อ","จ","อ","พ","พ","ศ","ส"]
1920                         },
1921                         months: {
1922                                 names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""],
1923                                 namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""]
1924                         },
1925                         eras: [{"name":"พ.ศ.","start":null,"offset":-543}],
1926                         twoDigitYearMax: 2572,
1927                         patterns: {
1928                                 d: "d/M/yyyy",
1929                                 D: "d MMMM yyyy",
1930                                 t: "H:mm",
1931                                 T: "H:mm:ss",
1932                                 f: "d MMMM yyyy H:mm",
1933                                 F: "d MMMM yyyy H:mm:ss",
1934                                 M: "dd MMMM",
1935                                 Y: "MMMM yyyy"
1936                         }
1937                 },
1938                 Gregorian_Localized: {
1939                         firstDay: 1,
1940                         days: {
1941                                 names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"],
1942                                 namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],
1943                                 namesShort: ["อ","จ","อ","พ","พ","ศ","ส"]
1944                         },
1945                         months: {
1946                                 names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""],
1947                                 namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""]
1948                         },
1949                         patterns: {
1950                                 d: "d/M/yyyy",
1951                                 D: "'วัน'dddd'ที่' d MMMM yyyy",
1952                                 t: "H:mm",
1953                                 T: "H:mm:ss",
1954                                 f: "'วัน'dddd'ที่' d MMMM yyyy H:mm",
1955                                 F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss",
1956                                 M: "dd MMMM",
1957                                 Y: "MMMM yyyy"
1958                         }
1959                 }
1960         }
1961 });
1962
1963 Globalize.addCultureInfo( "tr", "default", {
1964         name: "tr",
1965         englishName: "Turkish",
1966         nativeName: "Türkçe",
1967         language: "tr",
1968         numberFormat: {
1969                 ",": ".",
1970                 ".": ",",
1971                 percent: {
1972                         pattern: ["-%n","%n"],
1973                         ",": ".",
1974                         ".": ","
1975                 },
1976                 currency: {
1977                         pattern: ["-n $","n $"],
1978                         ",": ".",
1979                         ".": ",",
1980                         symbol: "TL"
1981                 }
1982         },
1983         calendars: {
1984                 standard: {
1985                         "/": ".",
1986                         firstDay: 1,
1987                         days: {
1988                                 names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],
1989                                 namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"],
1990                                 namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"]
1991                         },
1992                         months: {
1993                                 names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""],
1994                                 namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""]
1995                         },
1996                         AM: null,
1997                         PM: null,
1998                         patterns: {
1999                                 d: "dd.MM.yyyy",
2000                                 D: "dd MMMM yyyy dddd",
2001                                 t: "HH:mm",
2002                                 T: "HH:mm:ss",
2003                                 f: "dd MMMM yyyy dddd HH:mm",
2004                                 F: "dd MMMM yyyy dddd HH:mm:ss",
2005                                 M: "dd MMMM",
2006                                 Y: "MMMM yyyy"
2007                         }
2008                 }
2009         }
2010 });
2011
2012 Globalize.addCultureInfo( "ur", "default", {
2013         name: "ur",
2014         englishName: "Urdu",
2015         nativeName: "اُردو",
2016         language: "ur",
2017         isRTL: true,
2018         numberFormat: {
2019                 currency: {
2020                         pattern: ["$n-","$n"],
2021                         symbol: "Rs"
2022                 }
2023         },
2024         calendars: {
2025                 standard: {
2026                         firstDay: 1,
2027                         days: {
2028                                 names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"],
2029                                 namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"],
2030                                 namesShort: ["ا","پ","م","ب","ج","ج","ه"]
2031                         },
2032                         months: {
2033                                 names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""],
2034                                 namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""]
2035                         },
2036                         patterns: {
2037                                 d: "dd/MM/yyyy",
2038                                 D: "dd MMMM, yyyy",
2039                                 f: "dd MMMM, yyyy h:mm tt",
2040                                 F: "dd MMMM, yyyy h:mm:ss tt",
2041                                 M: "dd MMMM"
2042                         }
2043                 },
2044                 Hijri: {
2045                         name: "Hijri",
2046                         firstDay: 1,
2047                         days: {
2048                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
2049                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
2050                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
2051                         },
2052                         months: {
2053                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
2054                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
2055                         },
2056                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
2057                         twoDigitYearMax: 1451,
2058                         patterns: {
2059                                 d: "dd/MM/yy",
2060                                 D: "dd/MM/yyyy",
2061                                 f: "dd/MM/yyyy h:mm tt",
2062                                 F: "dd/MM/yyyy h:mm:ss tt",
2063                                 M: "dd MMMM"
2064                         },
2065                         convert: {
2066                     // Adapted to Script from System.Globalization.HijriCalendar
2067                     ticks1970: 62135596800000,
2068                     // number of days leading up to each month
2069                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
2070                     minDate: -42521673600000,
2071                     maxDate: 253402300799999,
2072                     // The number of days to add or subtract from the calendar to accommodate the variances
2073                     // in the start and the end of Ramadan and to accommodate the date difference between
2074                     // countries/regions. May be dynamically adjusted based on user preference, but should
2075                     // remain in the range of -2 to 2, inclusive.
2076                     hijriAdjustment: 0,
2077                     toGregorian: function(hyear, hmonth, hday) {
2078                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
2079                         // 86400000 = ticks per day
2080                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
2081                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
2082                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
2083                         // date in the current timezone.
2084                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
2085                         return gdate;
2086                     },
2087                     fromGregorian: function(gdate) {
2088                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
2089                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
2090                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
2091                         // very particular formula determined by someone smart, adapted from the server-side implementation.
2092                         // it approximates the hijri year.
2093                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
2094                             absDays = this.daysToYear(hyear),
2095                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
2096                         // hyear is just approximate, it may need adjustment up or down by 1.
2097                         if (daysSinceJan0101 < absDays) {
2098                             hyear--;
2099                             absDays -= daysInYear;
2100                         }
2101                         else if (daysSinceJan0101 === absDays) {
2102                             hyear--;
2103                             absDays = this.daysToYear(hyear);
2104                         }
2105                         else {
2106                             if (daysSinceJan0101 > (absDays + daysInYear)) {
2107                                 absDays += daysInYear;
2108                                 hyear++;
2109                             }
2110                         }
2111                         // determine month by looking at how many days into the hyear we are
2112                         // monthDays contains the number of days up to each month.
2113                         hmonth = 0;
2114                         var daysIntoYear = daysSinceJan0101 - absDays;
2115                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
2116                             hmonth++;
2117                         }
2118                         hmonth--;
2119                         hday = daysIntoYear - this.monthDays[hmonth];
2120                         return [hyear, hmonth, hday];
2121                     },
2122                     daysToYear: function(year) {
2123                         // calculates how many days since Jan 1, 0001
2124                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
2125                             yearsInto30 = year - yearsToYear30 - 1,
2126                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
2127                         while (yearsInto30 > 0) {
2128                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
2129                             yearsInto30--;
2130                         }
2131                         return days;
2132                     },
2133                     isLeapYear: function(year) {
2134                         return ((((year * 11) + 14) % 30) < 11);
2135                     }
2136                         }
2137                 }
2138         }
2139 });
2140
2141 Globalize.addCultureInfo( "id", "default", {
2142         name: "id",
2143         englishName: "Indonesian",
2144         nativeName: "Bahasa Indonesia",
2145         language: "id",
2146         numberFormat: {
2147                 ",": ".",
2148                 ".": ",",
2149                 percent: {
2150                         ",": ".",
2151                         ".": ","
2152                 },
2153                 currency: {
2154                         decimals: 0,
2155                         ",": ".",
2156                         ".": ",",
2157                         symbol: "Rp"
2158                 }
2159         },
2160         calendars: {
2161                 standard: {
2162                         firstDay: 1,
2163                         days: {
2164                                 names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],
2165                                 namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"],
2166                                 namesShort: ["M","S","S","R","K","J","S"]
2167                         },
2168                         months: {
2169                                 names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""],
2170                                 namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""]
2171                         },
2172                         AM: null,
2173                         PM: null,
2174                         patterns: {
2175                                 d: "dd/MM/yyyy",
2176                                 D: "dd MMMM yyyy",
2177                                 t: "H:mm",
2178                                 T: "H:mm:ss",
2179                                 f: "dd MMMM yyyy H:mm",
2180                                 F: "dd MMMM yyyy H:mm:ss",
2181                                 M: "dd MMMM",
2182                                 Y: "MMMM yyyy"
2183                         }
2184                 }
2185         }
2186 });
2187
2188 Globalize.addCultureInfo( "uk", "default", {
2189         name: "uk",
2190         englishName: "Ukrainian",
2191         nativeName: "українська",
2192         language: "uk",
2193         numberFormat: {
2194                 ",": " ",
2195                 ".": ",",
2196                 negativeInfinity: "-безмежність",
2197                 positiveInfinity: "безмежність",
2198                 percent: {
2199                         pattern: ["-n%","n%"],
2200                         ",": " ",
2201                         ".": ","
2202                 },
2203                 currency: {
2204                         pattern: ["-n$","n$"],
2205                         ",": " ",
2206                         ".": ",",
2207                         symbol: "₴"
2208                 }
2209         },
2210         calendars: {
2211                 standard: {
2212                         "/": ".",
2213                         firstDay: 1,
2214                         days: {
2215                                 names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"],
2216                                 namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"],
2217                                 namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"]
2218                         },
2219                         months: {
2220                                 names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""],
2221                                 namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""]
2222                         },
2223                         monthsGenitive: {
2224                                 names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""],
2225                                 namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""]
2226                         },
2227                         AM: null,
2228                         PM: null,
2229                         patterns: {
2230                                 d: "dd.MM.yyyy",
2231                                 D: "d MMMM yyyy' р.'",
2232                                 t: "H:mm",
2233                                 T: "H:mm:ss",
2234                                 f: "d MMMM yyyy' р.' H:mm",
2235                                 F: "d MMMM yyyy' р.' H:mm:ss",
2236                                 M: "d MMMM",
2237                                 Y: "MMMM yyyy' р.'"
2238                         }
2239                 }
2240         }
2241 });
2242
2243 Globalize.addCultureInfo( "be", "default", {
2244         name: "be",
2245         englishName: "Belarusian",
2246         nativeName: "Беларускі",
2247         language: "be",
2248         numberFormat: {
2249                 ",": " ",
2250                 ".": ",",
2251                 percent: {
2252                         ",": " ",
2253                         ".": ","
2254                 },
2255                 currency: {
2256                         pattern: ["-n $","n $"],
2257                         ",": " ",
2258                         ".": ",",
2259                         symbol: "р."
2260                 }
2261         },
2262         calendars: {
2263                 standard: {
2264                         "/": ".",
2265                         firstDay: 1,
2266                         days: {
2267                                 names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"],
2268                                 namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"],
2269                                 namesShort: ["нд","пн","аў","ср","чц","пт","сб"]
2270                         },
2271                         months: {
2272                                 names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""],
2273                                 namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""]
2274                         },
2275                         monthsGenitive: {
2276                                 names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""],
2277                                 namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""]
2278                         },
2279                         AM: null,
2280                         PM: null,
2281                         patterns: {
2282                                 d: "dd.MM.yyyy",
2283                                 D: "d MMMM yyyy",
2284                                 t: "H:mm",
2285                                 T: "H:mm:ss",
2286                                 f: "d MMMM yyyy H:mm",
2287                                 F: "d MMMM yyyy H:mm:ss",
2288                                 M: "d MMMM",
2289                                 Y: "MMMM yyyy"
2290                         }
2291                 }
2292         }
2293 });
2294
2295 Globalize.addCultureInfo( "sl", "default", {
2296         name: "sl",
2297         englishName: "Slovenian",
2298         nativeName: "slovenski",
2299         language: "sl",
2300         numberFormat: {
2301                 ",": ".",
2302                 ".": ",",
2303                 negativeInfinity: "-neskončnost",
2304                 positiveInfinity: "neskončnost",
2305                 percent: {
2306                         pattern: ["-n%","n%"],
2307                         ",": ".",
2308                         ".": ","
2309                 },
2310                 currency: {
2311                         pattern: ["-n $","n $"],
2312                         ",": ".",
2313                         ".": ",",
2314                         symbol: "€"
2315                 }
2316         },
2317         calendars: {
2318                 standard: {
2319                         "/": ".",
2320                         firstDay: 1,
2321                         days: {
2322                                 names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"],
2323                                 namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"],
2324                                 namesShort: ["ne","po","to","sr","če","pe","so"]
2325                         },
2326                         months: {
2327                                 names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""],
2328                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
2329                         },
2330                         AM: null,
2331                         PM: null,
2332                         patterns: {
2333                                 d: "d.M.yyyy",
2334                                 D: "d. MMMM yyyy",
2335                                 t: "H:mm",
2336                                 T: "H:mm:ss",
2337                                 f: "d. MMMM yyyy H:mm",
2338                                 F: "d. MMMM yyyy H:mm:ss",
2339                                 M: "d. MMMM",
2340                                 Y: "MMMM yyyy"
2341                         }
2342                 }
2343         }
2344 });
2345
2346 Globalize.addCultureInfo( "et", "default", {
2347         name: "et",
2348         englishName: "Estonian",
2349         nativeName: "eesti",
2350         language: "et",
2351         numberFormat: {
2352                 ",": " ",
2353                 ".": ",",
2354                 NaN: "avaldamatu",
2355                 negativeInfinity: "miinuslõpmatus",
2356                 positiveInfinity: "plusslõpmatus",
2357                 percent: {
2358                         pattern: ["-n%","n%"],
2359                         ",": " ",
2360                         ".": ","
2361                 },
2362                 currency: {
2363                         pattern: ["-n $","n $"],
2364                         ",": " ",
2365                         symbol: "kr"
2366                 }
2367         },
2368         calendars: {
2369                 standard: {
2370                         "/": ".",
2371                         firstDay: 1,
2372                         days: {
2373                                 names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"],
2374                                 namesAbbr: ["P","E","T","K","N","R","L"],
2375                                 namesShort: ["P","E","T","K","N","R","L"]
2376                         },
2377                         months: {
2378                                 names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""],
2379                                 namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""]
2380                         },
2381                         AM: ["EL","el","EL"],
2382                         PM: ["PL","pl","PL"],
2383                         patterns: {
2384                                 d: "d.MM.yyyy",
2385                                 D: "d. MMMM yyyy'. a.'",
2386                                 t: "H:mm",
2387                                 T: "H:mm:ss",
2388                                 f: "d. MMMM yyyy'. a.' H:mm",
2389                                 F: "d. MMMM yyyy'. a.' H:mm:ss",
2390                                 M: "d. MMMM",
2391                                 Y: "MMMM yyyy'. a.'"
2392                         }
2393                 }
2394         }
2395 });
2396
2397 Globalize.addCultureInfo( "lv", "default", {
2398         name: "lv",
2399         englishName: "Latvian",
2400         nativeName: "latviešu",
2401         language: "lv",
2402         numberFormat: {
2403                 ",": " ",
2404                 ".": ",",
2405                 negativeInfinity: "-bezgalība",
2406                 positiveInfinity: "bezgalība",
2407                 percent: {
2408                         pattern: ["-n%","n%"],
2409                         ",": " ",
2410                         ".": ","
2411                 },
2412                 currency: {
2413                         pattern: ["-$ n","$ n"],
2414                         ",": " ",
2415                         ".": ",",
2416                         symbol: "Ls"
2417                 }
2418         },
2419         calendars: {
2420                 standard: {
2421                         "/": ".",
2422                         firstDay: 1,
2423                         days: {
2424                                 names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"],
2425                                 namesAbbr: ["sv","pr","ot","tr","ce","pk","se"],
2426                                 namesShort: ["sv","pr","ot","tr","ce","pk","se"]
2427                         },
2428                         months: {
2429                                 names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""],
2430                                 namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""]
2431                         },
2432                         monthsGenitive: {
2433                                 names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""],
2434                                 namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""]
2435                         },
2436                         AM: null,
2437                         PM: null,
2438                         patterns: {
2439                                 d: "yyyy.MM.dd.",
2440                                 D: "dddd, yyyy'. gada 'd. MMMM",
2441                                 t: "H:mm",
2442                                 T: "H:mm:ss",
2443                                 f: "dddd, yyyy'. gada 'd. MMMM H:mm",
2444                                 F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss",
2445                                 M: "d. MMMM",
2446                                 Y: "yyyy. MMMM"
2447                         }
2448                 }
2449         }
2450 });
2451
2452 Globalize.addCultureInfo( "lt", "default", {
2453         name: "lt",
2454         englishName: "Lithuanian",
2455         nativeName: "lietuvių",
2456         language: "lt",
2457         numberFormat: {
2458                 ",": ".",
2459                 ".": ",",
2460                 negativeInfinity: "-begalybė",
2461                 positiveInfinity: "begalybė",
2462                 percent: {
2463                         pattern: ["-n%","n%"],
2464                         ",": ".",
2465                         ".": ","
2466                 },
2467                 currency: {
2468                         pattern: ["-n $","n $"],
2469                         ",": ".",
2470                         ".": ",",
2471                         symbol: "Lt"
2472                 }
2473         },
2474         calendars: {
2475                 standard: {
2476                         "/": ".",
2477                         firstDay: 1,
2478                         days: {
2479                                 names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"],
2480                                 namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"],
2481                                 namesShort: ["S","P","A","T","K","Pn","Š"]
2482                         },
2483                         months: {
2484                                 names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""],
2485                                 namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""]
2486                         },
2487                         monthsGenitive: {
2488                                 names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""],
2489                                 namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""]
2490                         },
2491                         AM: null,
2492                         PM: null,
2493                         patterns: {
2494                                 d: "yyyy.MM.dd",
2495                                 D: "yyyy 'm.' MMMM d 'd.'",
2496                                 t: "HH:mm",
2497                                 T: "HH:mm:ss",
2498                                 f: "yyyy 'm.' MMMM d 'd.' HH:mm",
2499                                 F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss",
2500                                 M: "MMMM d 'd.'",
2501                                 Y: "yyyy 'm.' MMMM"
2502                         }
2503                 }
2504         }
2505 });
2506
2507 Globalize.addCultureInfo( "tg", "default", {
2508         name: "tg",
2509         englishName: "Tajik",
2510         nativeName: "Тоҷикӣ",
2511         language: "tg",
2512         numberFormat: {
2513                 ",": " ",
2514                 ".": ",",
2515                 groupSizes: [3,0],
2516                 negativeInfinity: "-бесконечность",
2517                 positiveInfinity: "бесконечность",
2518                 percent: {
2519                         pattern: ["-n%","n%"],
2520                         groupSizes: [3,0],
2521                         ",": " ",
2522                         ".": ","
2523                 },
2524                 currency: {
2525                         pattern: ["-n $","n $"],
2526                         groupSizes: [3,0],
2527                         ",": " ",
2528                         ".": ";",
2529                         symbol: "т.р."
2530                 }
2531         },
2532         calendars: {
2533                 standard: {
2534                         "/": ".",
2535                         days: {
2536                                 names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"],
2537                                 namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"],
2538                                 namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"]
2539                         },
2540                         months: {
2541                                 names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""],
2542                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
2543                         },
2544                         monthsGenitive: {
2545                                 names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""],
2546                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
2547                         },
2548                         AM: null,
2549                         PM: null,
2550                         patterns: {
2551                                 d: "dd.MM.yy",
2552                                 D: "d MMMM yyyy",
2553                                 t: "H:mm",
2554                                 T: "H:mm:ss",
2555                                 f: "d MMMM yyyy H:mm",
2556                                 F: "d MMMM yyyy H:mm:ss",
2557                                 Y: "MMMM yyyy"
2558                         }
2559                 }
2560         }
2561 });
2562
2563 Globalize.addCultureInfo( "fa", "default", {
2564         name: "fa",
2565         englishName: "Persian",
2566         nativeName: "فارسى",
2567         language: "fa",
2568         isRTL: true,
2569         numberFormat: {
2570                 pattern: ["n-"],
2571                 currency: {
2572                         pattern: ["$n-","$ n"],
2573                         ".": "/",
2574                         symbol: "ريال"
2575                 }
2576         },
2577         calendars: {
2578                 standard: {
2579                         name: "Gregorian_TransliteratedFrench",
2580                         firstDay: 6,
2581                         days: {
2582                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
2583                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
2584                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
2585                         },
2586                         months: {
2587                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
2588                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
2589                         },
2590                         AM: ["ق.ظ","ق.ظ","ق.ظ"],
2591                         PM: ["ب.ظ","ب.ظ","ب.ظ"],
2592                         eras: [{"name":"م","start":null,"offset":0}],
2593                         patterns: {
2594                                 d: "MM/dd/yyyy",
2595                                 t: "hh:mm tt",
2596                                 T: "hh:mm:ss tt",
2597                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
2598                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
2599                         }
2600                 },
2601                 Gregorian_Localized: {
2602                         firstDay: 6,
2603                         days: {
2604                                 names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],
2605                                 namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],
2606                                 namesShort: ["ی","د","س","چ","پ","ج","ش"]
2607                         },
2608                         months: {
2609                                 names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""],
2610                                 namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""]
2611                         },
2612                         AM: ["ق.ظ","ق.ظ","ق.ظ"],
2613                         PM: ["ب.ظ","ب.ظ","ب.ظ"],
2614                         patterns: {
2615                                 d: "yyyy/MM/dd",
2616                                 D: "yyyy/MM/dd",
2617                                 t: "hh:mm tt",
2618                                 T: "hh:mm:ss tt",
2619                                 f: "yyyy/MM/dd hh:mm tt",
2620                                 F: "yyyy/MM/dd hh:mm:ss tt",
2621                                 M: "dd MMMM"
2622                         }
2623                 },
2624                 Hijri: {
2625                         name: "Hijri",
2626                         firstDay: 6,
2627                         days: {
2628                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
2629                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
2630                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
2631                         },
2632                         months: {
2633                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
2634                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
2635                         },
2636                         AM: ["ق.ظ","ق.ظ","ق.ظ"],
2637                         PM: ["ب.ظ","ب.ظ","ب.ظ"],
2638                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
2639                         twoDigitYearMax: 1451,
2640                         patterns: {
2641                                 d: "dd/MM/yy",
2642                                 D: "dd/MM/yyyy",
2643                                 t: "hh:mm tt",
2644                                 T: "hh:mm:ss tt",
2645                                 f: "dd/MM/yyyy hh:mm tt",
2646                                 F: "dd/MM/yyyy hh:mm:ss tt",
2647                                 M: "dd MMMM"
2648                         },
2649                         convert: {
2650                     // Adapted to Script from System.Globalization.HijriCalendar
2651                     ticks1970: 62135596800000,
2652                     // number of days leading up to each month
2653                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
2654                     minDate: -42521673600000,
2655                     maxDate: 253402300799999,
2656                     // The number of days to add or subtract from the calendar to accommodate the variances
2657                     // in the start and the end of Ramadan and to accommodate the date difference between
2658                     // countries/regions. May be dynamically adjusted based on user preference, but should
2659                     // remain in the range of -2 to 2, inclusive.
2660                     hijriAdjustment: 0,
2661                     toGregorian: function(hyear, hmonth, hday) {
2662                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
2663                         // 86400000 = ticks per day
2664                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
2665                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
2666                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
2667                         // date in the current timezone.
2668                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
2669                         return gdate;
2670                     },
2671                     fromGregorian: function(gdate) {
2672                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
2673                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
2674                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
2675                         // very particular formula determined by someone smart, adapted from the server-side implementation.
2676                         // it approximates the hijri year.
2677                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
2678                             absDays = this.daysToYear(hyear),
2679                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
2680                         // hyear is just approximate, it may need adjustment up or down by 1.
2681                         if (daysSinceJan0101 < absDays) {
2682                             hyear--;
2683                             absDays -= daysInYear;
2684                         }
2685                         else if (daysSinceJan0101 === absDays) {
2686                             hyear--;
2687                             absDays = this.daysToYear(hyear);
2688                         }
2689                         else {
2690                             if (daysSinceJan0101 > (absDays + daysInYear)) {
2691                                 absDays += daysInYear;
2692                                 hyear++;
2693                             }
2694                         }
2695                         // determine month by looking at how many days into the hyear we are
2696                         // monthDays contains the number of days up to each month.
2697                         hmonth = 0;
2698                         var daysIntoYear = daysSinceJan0101 - absDays;
2699                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
2700                             hmonth++;
2701                         }
2702                         hmonth--;
2703                         hday = daysIntoYear - this.monthDays[hmonth];
2704                         return [hyear, hmonth, hday];
2705                     },
2706                     daysToYear: function(year) {
2707                         // calculates how many days since Jan 1, 0001
2708                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
2709                             yearsInto30 = year - yearsToYear30 - 1,
2710                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
2711                         while (yearsInto30 > 0) {
2712                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
2713                             yearsInto30--;
2714                         }
2715                         return days;
2716                     },
2717                     isLeapYear: function(year) {
2718                         return ((((year * 11) + 14) % 30) < 11);
2719                     }
2720                         }
2721                 },
2722                 Gregorian_TransliteratedEnglish: {
2723                         name: "Gregorian_TransliteratedEnglish",
2724                         firstDay: 6,
2725                         days: {
2726                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
2727                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
2728                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
2729                         },
2730                         months: {
2731                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
2732                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
2733                         },
2734                         AM: ["ق.ظ","ق.ظ","ق.ظ"],
2735                         PM: ["ب.ظ","ب.ظ","ب.ظ"],
2736                         eras: [{"name":"م","start":null,"offset":0}],
2737                         patterns: {
2738                                 d: "MM/dd/yyyy",
2739                                 t: "hh:mm tt",
2740                                 T: "hh:mm:ss tt",
2741                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
2742                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
2743                         }
2744                 }
2745         }
2746 });
2747
2748 Globalize.addCultureInfo( "vi", "default", {
2749         name: "vi",
2750         englishName: "Vietnamese",
2751         nativeName: "Tiếng Việt",
2752         language: "vi",
2753         numberFormat: {
2754                 ",": ".",
2755                 ".": ",",
2756                 percent: {
2757                         ",": ".",
2758                         ".": ","
2759                 },
2760                 currency: {
2761                         pattern: ["-n $","n $"],
2762                         ",": ".",
2763                         ".": ",",
2764                         symbol: "₫"
2765                 }
2766         },
2767         calendars: {
2768                 standard: {
2769                         firstDay: 1,
2770                         days: {
2771                                 names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"],
2772                                 namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"],
2773                                 namesShort: ["C","H","B","T","N","S","B"]
2774                         },
2775                         months: {
2776                                 names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""],
2777                                 namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""]
2778                         },
2779                         AM: ["SA","sa","SA"],
2780                         PM: ["CH","ch","CH"],
2781                         patterns: {
2782                                 d: "dd/MM/yyyy",
2783                                 D: "dd MMMM yyyy",
2784                                 f: "dd MMMM yyyy h:mm tt",
2785                                 F: "dd MMMM yyyy h:mm:ss tt",
2786                                 M: "dd MMMM",
2787                                 Y: "MMMM yyyy"
2788                         }
2789                 }
2790         }
2791 });
2792
2793 Globalize.addCultureInfo( "hy", "default", {
2794         name: "hy",
2795         englishName: "Armenian",
2796         nativeName: "Հայերեն",
2797         language: "hy",
2798         numberFormat: {
2799                 currency: {
2800                         pattern: ["-n $","n $"],
2801                         symbol: "դր."
2802                 }
2803         },
2804         calendars: {
2805                 standard: {
2806                         "/": ".",
2807                         firstDay: 1,
2808                         days: {
2809                                 names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"],
2810                                 namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"],
2811                                 namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"]
2812                         },
2813                         months: {
2814                                 names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""],
2815                                 namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""]
2816                         },
2817                         AM: null,
2818                         PM: null,
2819                         patterns: {
2820                                 d: "dd.MM.yyyy",
2821                                 D: "d MMMM, yyyy",
2822                                 t: "H:mm",
2823                                 T: "H:mm:ss",
2824                                 f: "d MMMM, yyyy H:mm",
2825                                 F: "d MMMM, yyyy H:mm:ss",
2826                                 M: "d MMMM"
2827                         }
2828                 }
2829         }
2830 });
2831
2832 Globalize.addCultureInfo( "az", "default", {
2833         name: "az",
2834         englishName: "Azeri",
2835         nativeName: "Azərbaycan­ılı",
2836         language: "az",
2837         numberFormat: {
2838                 ",": " ",
2839                 ".": ",",
2840                 percent: {
2841                         pattern: ["-n%","n%"],
2842                         ",": " ",
2843                         ".": ","
2844                 },
2845                 currency: {
2846                         pattern: ["-n $","n $"],
2847                         ",": " ",
2848                         ".": ",",
2849                         symbol: "man."
2850                 }
2851         },
2852         calendars: {
2853                 standard: {
2854                         "/": ".",
2855                         firstDay: 1,
2856                         days: {
2857                                 names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"],
2858                                 namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"],
2859                                 namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"]
2860                         },
2861                         months: {
2862                                 names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""],
2863                                 namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""]
2864                         },
2865                         monthsGenitive: {
2866                                 names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],
2867                                 namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""]
2868                         },
2869                         AM: null,
2870                         PM: null,
2871                         patterns: {
2872                                 d: "dd.MM.yyyy",
2873                                 D: "d MMMM yyyy",
2874                                 t: "H:mm",
2875                                 T: "H:mm:ss",
2876                                 f: "d MMMM yyyy H:mm",
2877                                 F: "d MMMM yyyy H:mm:ss",
2878                                 M: "d MMMM",
2879                                 Y: "MMMM yyyy"
2880                         }
2881                 }
2882         }
2883 });
2884
2885 Globalize.addCultureInfo( "eu", "default", {
2886         name: "eu",
2887         englishName: "Basque",
2888         nativeName: "euskara",
2889         language: "eu",
2890         numberFormat: {
2891                 ",": ".",
2892                 ".": ",",
2893                 NaN: "EdZ",
2894                 negativeInfinity: "-Infinitu",
2895                 positiveInfinity: "Infinitu",
2896                 percent: {
2897                         ",": ".",
2898                         ".": ","
2899                 },
2900                 currency: {
2901                         pattern: ["-n $","n $"],
2902                         ",": ".",
2903                         ".": ",",
2904                         symbol: "€"
2905                 }
2906         },
2907         calendars: {
2908                 standard: {
2909                         firstDay: 1,
2910                         days: {
2911                                 names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"],
2912                                 namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."],
2913                                 namesShort: ["ig","al","as","az","og","or","lr"]
2914                         },
2915                         months: {
2916                                 names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""],
2917                                 namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""]
2918                         },
2919                         AM: null,
2920                         PM: null,
2921                         eras: [{"name":"d.C.","start":null,"offset":0}],
2922                         patterns: {
2923                                 d: "yyyy/MM/dd",
2924                                 D: "dddd, yyyy.'eko' MMMM'k 'd",
2925                                 t: "HH:mm",
2926                                 T: "H:mm:ss",
2927                                 f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm",
2928                                 F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss",
2929                                 Y: "yyyy.'eko' MMMM"
2930                         }
2931                 }
2932         }
2933 });
2934
2935 Globalize.addCultureInfo( "hsb", "default", {
2936         name: "hsb",
2937         englishName: "Upper Sorbian",
2938         nativeName: "hornjoserbšćina",
2939         language: "hsb",
2940         numberFormat: {
2941                 ",": ".",
2942                 ".": ",",
2943                 NaN: "njedefinowane",
2944                 negativeInfinity: "-njekónčne",
2945                 positiveInfinity: "+njekónčne",
2946                 percent: {
2947                         ",": ".",
2948                         ".": ","
2949                 },
2950                 currency: {
2951                         pattern: ["-n $","n $"],
2952                         ",": ".",
2953                         ".": ",",
2954                         symbol: "€"
2955                 }
2956         },
2957         calendars: {
2958                 standard: {
2959                         "/": ". ",
2960                         firstDay: 1,
2961                         days: {
2962                                 names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"],
2963                                 namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"],
2964                                 namesShort: ["n","p","w","s","š","p","s"]
2965                         },
2966                         months: {
2967                                 names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""],
2968                                 namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""]
2969                         },
2970                         monthsGenitive: {
2971                                 names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""],
2972                                 namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""]
2973                         },
2974                         AM: null,
2975                         PM: null,
2976                         eras: [{"name":"po Chr.","start":null,"offset":0}],
2977                         patterns: {
2978                                 d: "d. M. yyyy",
2979                                 D: "dddd, 'dnja' d. MMMM yyyy",
2980                                 t: "H.mm 'hodź.'",
2981                                 T: "H:mm:ss",
2982                                 f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'",
2983                                 F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss",
2984                                 M: "d. MMMM",
2985                                 Y: "MMMM yyyy"
2986                         }
2987                 }
2988         }
2989 });
2990
2991 Globalize.addCultureInfo( "mk", "default", {
2992         name: "mk",
2993         englishName: "Macedonian (FYROM)",
2994         nativeName: "македонски јазик",
2995         language: "mk",
2996         numberFormat: {
2997                 ",": ".",
2998                 ".": ",",
2999                 percent: {
3000                         ",": ".",
3001                         ".": ","
3002                 },
3003                 currency: {
3004                         pattern: ["-n $","n $"],
3005                         ",": ".",
3006                         ".": ",",
3007                         symbol: "ден."
3008                 }
3009         },
3010         calendars: {
3011                 standard: {
3012                         "/": ".",
3013                         firstDay: 1,
3014                         days: {
3015                                 names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"],
3016                                 namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"],
3017                                 namesShort: ["не","по","вт","ср","че","пе","са"]
3018                         },
3019                         months: {
3020                                 names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""],
3021                                 namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""]
3022                         },
3023                         AM: null,
3024                         PM: null,
3025                         patterns: {
3026                                 d: "dd.MM.yyyy",
3027                                 D: "dddd, dd MMMM yyyy",
3028                                 t: "HH:mm",
3029                                 T: "HH:mm:ss",
3030                                 f: "dddd, dd MMMM yyyy HH:mm",
3031                                 F: "dddd, dd MMMM yyyy HH:mm:ss",
3032                                 M: "dd MMMM",
3033                                 Y: "MMMM yyyy"
3034                         }
3035                 }
3036         }
3037 });
3038
3039 Globalize.addCultureInfo( "tn", "default", {
3040         name: "tn",
3041         englishName: "Setswana",
3042         nativeName: "Setswana",
3043         language: "tn",
3044         numberFormat: {
3045                 percent: {
3046                         pattern: ["-%n","%n"]
3047                 },
3048                 currency: {
3049                         pattern: ["$-n","$ n"],
3050                         symbol: "R"
3051                 }
3052         },
3053         calendars: {
3054                 standard: {
3055                         days: {
3056                                 names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"],
3057                                 namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."],
3058                                 namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"]
3059                         },
3060                         months: {
3061                                 names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""],
3062                                 namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""]
3063                         },
3064                         patterns: {
3065                                 d: "yyyy/MM/dd",
3066                                 D: "dd MMMM yyyy",
3067                                 t: "hh:mm tt",
3068                                 T: "hh:mm:ss tt",
3069                                 f: "dd MMMM yyyy hh:mm tt",
3070                                 F: "dd MMMM yyyy hh:mm:ss tt",
3071                                 M: "dd MMMM",
3072                                 Y: "MMMM yyyy"
3073                         }
3074                 }
3075         }
3076 });
3077
3078 Globalize.addCultureInfo( "xh", "default", {
3079         name: "xh",
3080         englishName: "isiXhosa",
3081         nativeName: "isiXhosa",
3082         language: "xh",
3083         numberFormat: {
3084                 percent: {
3085                         pattern: ["-%n","%n"]
3086                 },
3087                 currency: {
3088                         pattern: ["$-n","$ n"],
3089                         symbol: "R"
3090                 }
3091         },
3092         calendars: {
3093                 standard: {
3094                         days: {
3095                                 names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"],
3096                                 namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"]
3097                         },
3098                         months: {
3099                                 names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""]
3100                         },
3101                         patterns: {
3102                                 d: "yyyy/MM/dd",
3103                                 D: "dd MMMM yyyy",
3104                                 t: "hh:mm tt",
3105                                 T: "hh:mm:ss tt",
3106                                 f: "dd MMMM yyyy hh:mm tt",
3107                                 F: "dd MMMM yyyy hh:mm:ss tt",
3108                                 M: "dd MMMM",
3109                                 Y: "MMMM yyyy"
3110                         }
3111                 }
3112         }
3113 });
3114
3115 Globalize.addCultureInfo( "zu", "default", {
3116         name: "zu",
3117         englishName: "isiZulu",
3118         nativeName: "isiZulu",
3119         language: "zu",
3120         numberFormat: {
3121                 percent: {
3122                         pattern: ["-%n","%n"]
3123                 },
3124                 currency: {
3125                         pattern: ["$-n","$ n"],
3126                         symbol: "R"
3127                 }
3128         },
3129         calendars: {
3130                 standard: {
3131                         days: {
3132                                 names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"],
3133                                 namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."]
3134                         },
3135                         months: {
3136                                 names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""],
3137                                 namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""]
3138                         },
3139                         patterns: {
3140                                 d: "yyyy/MM/dd",
3141                                 D: "dd MMMM yyyy",
3142                                 t: "hh:mm tt",
3143                                 T: "hh:mm:ss tt",
3144                                 f: "dd MMMM yyyy hh:mm tt",
3145                                 F: "dd MMMM yyyy hh:mm:ss tt",
3146                                 M: "dd MMMM",
3147                                 Y: "MMMM yyyy"
3148                         }
3149                 }
3150         }
3151 });
3152
3153 Globalize.addCultureInfo( "af", "default", {
3154         name: "af",
3155         englishName: "Afrikaans",
3156         nativeName: "Afrikaans",
3157         language: "af",
3158         numberFormat: {
3159                 percent: {
3160                         pattern: ["-n%","n%"]
3161                 },
3162                 currency: {
3163                         pattern: ["$-n","$ n"],
3164                         symbol: "R"
3165                 }
3166         },
3167         calendars: {
3168                 standard: {
3169                         days: {
3170                                 names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"],
3171                                 namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"],
3172                                 namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"]
3173                         },
3174                         months: {
3175                                 names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""],
3176                                 namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""]
3177                         },
3178                         patterns: {
3179                                 d: "yyyy/MM/dd",
3180                                 D: "dd MMMM yyyy",
3181                                 t: "hh:mm tt",
3182                                 T: "hh:mm:ss tt",
3183                                 f: "dd MMMM yyyy hh:mm tt",
3184                                 F: "dd MMMM yyyy hh:mm:ss tt",
3185                                 M: "dd MMMM",
3186                                 Y: "MMMM yyyy"
3187                         }
3188                 }
3189         }
3190 });
3191
3192 Globalize.addCultureInfo( "ka", "default", {
3193         name: "ka",
3194         englishName: "Georgian",
3195         nativeName: "ქართული",
3196         language: "ka",
3197         numberFormat: {
3198                 ",": " ",
3199                 ".": ",",
3200                 percent: {
3201                         ",": " ",
3202                         ".": ","
3203                 },
3204                 currency: {
3205                         pattern: ["-n $","n $"],
3206                         ",": " ",
3207                         ".": ",",
3208                         symbol: "Lari"
3209                 }
3210         },
3211         calendars: {
3212                 standard: {
3213                         "/": ".",
3214                         firstDay: 1,
3215                         days: {
3216                                 names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"],
3217                                 namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"],
3218                                 namesShort: ["კ","ო","ს","ო","ხ","პ","შ"]
3219                         },
3220                         months: {
3221                                 names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""],
3222                                 namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""]
3223                         },
3224                         AM: null,
3225                         PM: null,
3226                         patterns: {
3227                                 d: "dd.MM.yyyy",
3228                                 D: "yyyy 'წლის' dd MM, dddd",
3229                                 t: "H:mm",
3230                                 T: "H:mm:ss",
3231                                 f: "yyyy 'წლის' dd MM, dddd H:mm",
3232                                 F: "yyyy 'წლის' dd MM, dddd H:mm:ss",
3233                                 M: "dd MM",
3234                                 Y: "MMMM yyyy"
3235                         }
3236                 }
3237         }
3238 });
3239
3240 Globalize.addCultureInfo( "fo", "default", {
3241         name: "fo",
3242         englishName: "Faroese",
3243         nativeName: "føroyskt",
3244         language: "fo",
3245         numberFormat: {
3246                 ",": ".",
3247                 ".": ",",
3248                 negativeInfinity: "-INF",
3249                 positiveInfinity: "INF",
3250                 percent: {
3251                         pattern: ["-n%","n%"],
3252                         ",": ".",
3253                         ".": ","
3254                 },
3255                 currency: {
3256                         pattern: ["$ -n","$ n"],
3257                         ",": ".",
3258                         ".": ",",
3259                         symbol: "kr."
3260                 }
3261         },
3262         calendars: {
3263                 standard: {
3264                         "/": "-",
3265                         firstDay: 1,
3266                         days: {
3267                                 names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"],
3268                                 namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"],
3269                                 namesShort: ["su","má","tý","mi","hó","fr","ley"]
3270                         },
3271                         months: {
3272                                 names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""],
3273                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""]
3274                         },
3275                         AM: null,
3276                         PM: null,
3277                         patterns: {
3278                                 d: "dd-MM-yyyy",
3279                                 D: "d. MMMM yyyy",
3280                                 t: "HH:mm",
3281                                 T: "HH:mm:ss",
3282                                 f: "d. MMMM yyyy HH:mm",
3283                                 F: "d. MMMM yyyy HH:mm:ss",
3284                                 M: "d. MMMM",
3285                                 Y: "MMMM yyyy"
3286                         }
3287                 }
3288         }
3289 });
3290
3291 Globalize.addCultureInfo( "hi", "default", {
3292         name: "hi",
3293         englishName: "Hindi",
3294         nativeName: "हिंदी",
3295         language: "hi",
3296         numberFormat: {
3297                 groupSizes: [3,2],
3298                 percent: {
3299                         groupSizes: [3,2]
3300                 },
3301                 currency: {
3302                         pattern: ["$ -n","$ n"],
3303                         groupSizes: [3,2],
3304                         symbol: "रु"
3305                 }
3306         },
3307         calendars: {
3308                 standard: {
3309                         "/": "-",
3310                         firstDay: 1,
3311                         days: {
3312                                 names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"],
3313                                 namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."],
3314                                 namesShort: ["र","स","म","ब","ग","श","श"]
3315                         },
3316                         months: {
3317                                 names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],
3318                                 namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""]
3319                         },
3320                         AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"],
3321                         PM: ["अपराह्न","अपराह्न","अपराह्न"],
3322                         patterns: {
3323                                 d: "dd-MM-yyyy",
3324                                 D: "dd MMMM yyyy",
3325                                 t: "HH:mm",
3326                                 T: "HH:mm:ss",
3327                                 f: "dd MMMM yyyy HH:mm",
3328                                 F: "dd MMMM yyyy HH:mm:ss",
3329                                 M: "dd MMMM"
3330                         }
3331                 }
3332         }
3333 });
3334
3335 Globalize.addCultureInfo( "mt", "default", {
3336         name: "mt",
3337         englishName: "Maltese",
3338         nativeName: "Malti",
3339         language: "mt",
3340         numberFormat: {
3341                 percent: {
3342                         pattern: ["-%n","%n"]
3343                 },
3344                 currency: {
3345                         pattern: ["-$n","$n"],
3346                         symbol: "€"
3347                 }
3348         },
3349         calendars: {
3350                 standard: {
3351                         firstDay: 1,
3352                         days: {
3353                                 names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"],
3354                                 namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"],
3355                                 namesShort: ["I","I","I","L","I","I","I"]
3356                         },
3357                         months: {
3358                                 names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""],
3359                                 namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""]
3360                         },
3361                         patterns: {
3362                                 d: "dd/MM/yyyy",
3363                                 D: "dddd, d' ta\\' 'MMMM yyyy",
3364                                 t: "HH:mm",
3365                                 T: "HH:mm:ss",
3366                                 f: "dddd, d' ta\\' 'MMMM yyyy HH:mm",
3367                                 F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss",
3368                                 M: "d' ta\\' 'MMMM",
3369                                 Y: "MMMM yyyy"
3370                         }
3371                 }
3372         }
3373 });
3374
3375 Globalize.addCultureInfo( "se", "default", {
3376         name: "se",
3377         englishName: "Sami (Northern)",
3378         nativeName: "davvisámegiella",
3379         language: "se",
3380         numberFormat: {
3381                 ",": " ",
3382                 ".": ",",
3383                 percent: {
3384                         pattern: ["-%n","%n"],
3385                         ",": " ",
3386                         ".": ","
3387                 },
3388                 currency: {
3389                         pattern: ["$ -n","$ n"],
3390                         ",": " ",
3391                         ".": ",",
3392                         symbol: "kr"
3393                 }
3394         },
3395         calendars: {
3396                 standard: {
3397                         "/": ".",
3398                         firstDay: 1,
3399                         days: {
3400                                 names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"],
3401                                 namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"],
3402                                 namesShort: ["s","m","d","g","d","b","l"]
3403                         },
3404                         months: {
3405                                 names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""],
3406                                 namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""]
3407                         },
3408                         monthsGenitive: {
3409                                 names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""],
3410                                 namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""]
3411                         },
3412                         AM: null,
3413                         PM: null,
3414                         patterns: {
3415                                 d: "dd.MM.yyyy",
3416                                 D: "MMMM d'. b. 'yyyy",
3417                                 t: "HH:mm",
3418                                 T: "HH:mm:ss",
3419                                 f: "MMMM d'. b. 'yyyy HH:mm",
3420                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
3421                                 M: "MMMM d'. b. '",
3422                                 Y: "MMMM yyyy"
3423                         }
3424                 }
3425         }
3426 });
3427
3428 Globalize.addCultureInfo( "ga", "default", {
3429         name: "ga",
3430         englishName: "Irish",
3431         nativeName: "Gaeilge",
3432         language: "ga",
3433         numberFormat: {
3434                 currency: {
3435                         pattern: ["-$n","$n"],
3436                         symbol: "€"
3437                 }
3438         },
3439         calendars: {
3440                 standard: {
3441                         firstDay: 1,
3442                         days: {
3443                                 names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"],
3444                                 namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"],
3445                                 namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"]
3446                         },
3447                         months: {
3448                                 names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""],
3449                                 namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""]
3450                         },
3451                         AM: ["r.n.","r.n.","R.N."],
3452                         PM: ["i.n.","i.n.","I.N."],
3453                         patterns: {
3454                                 d: "dd/MM/yyyy",
3455                                 D: "d MMMM yyyy",
3456                                 t: "HH:mm",
3457                                 T: "HH:mm:ss",
3458                                 f: "d MMMM yyyy HH:mm",
3459                                 F: "d MMMM yyyy HH:mm:ss",
3460                                 M: "dd MMMM",
3461                                 Y: "MMMM yyyy"
3462                         }
3463                 }
3464         }
3465 });
3466
3467 Globalize.addCultureInfo( "ms", "default", {
3468         name: "ms",
3469         englishName: "Malay",
3470         nativeName: "Bahasa Melayu",
3471         language: "ms",
3472         numberFormat: {
3473                 currency: {
3474                         decimals: 0,
3475                         symbol: "RM"
3476                 }
3477         },
3478         calendars: {
3479                 standard: {
3480                         firstDay: 1,
3481                         days: {
3482                                 names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],
3483                                 namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"],
3484                                 namesShort: ["A","I","S","R","K","J","S"]
3485                         },
3486                         months: {
3487                                 names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""],
3488                                 namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""]
3489                         },
3490                         AM: null,
3491                         PM: null,
3492                         patterns: {
3493                                 d: "dd/MM/yyyy",
3494                                 D: "dd MMMM yyyy",
3495                                 t: "H:mm",
3496                                 T: "H:mm:ss",
3497                                 f: "dd MMMM yyyy H:mm",
3498                                 F: "dd MMMM yyyy H:mm:ss",
3499                                 M: "dd MMMM",
3500                                 Y: "MMMM yyyy"
3501                         }
3502                 }
3503         }
3504 });
3505
3506 Globalize.addCultureInfo( "kk", "default", {
3507         name: "kk",
3508         englishName: "Kazakh",
3509         nativeName: "Қазақ",
3510         language: "kk",
3511         numberFormat: {
3512                 ",": " ",
3513                 ".": ",",
3514                 percent: {
3515                         pattern: ["-n%","n%"],
3516                         ",": " ",
3517                         ".": ","
3518                 },
3519                 currency: {
3520                         pattern: ["-$n","$n"],
3521                         ",": " ",
3522                         ".": "-",
3523                         symbol: "Т"
3524                 }
3525         },
3526         calendars: {
3527                 standard: {
3528                         "/": ".",
3529                         firstDay: 1,
3530                         days: {
3531                                 names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"],
3532                                 namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"],
3533                                 namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"]
3534                         },
3535                         months: {
3536                                 names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""],
3537                                 namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""]
3538                         },
3539                         AM: null,
3540                         PM: null,
3541                         patterns: {
3542                                 d: "dd.MM.yyyy",
3543                                 D: "d MMMM yyyy 'ж.'",
3544                                 t: "H:mm",
3545                                 T: "H:mm:ss",
3546                                 f: "d MMMM yyyy 'ж.' H:mm",
3547                                 F: "d MMMM yyyy 'ж.' H:mm:ss",
3548                                 M: "d MMMM",
3549                                 Y: "MMMM yyyy"
3550                         }
3551                 }
3552         }
3553 });
3554
3555 Globalize.addCultureInfo( "ky", "default", {
3556         name: "ky",
3557         englishName: "Kyrgyz",
3558         nativeName: "Кыргыз",
3559         language: "ky",
3560         numberFormat: {
3561                 ",": " ",
3562                 ".": ",",
3563                 percent: {
3564                         pattern: ["-n%","n%"],
3565                         ",": " ",
3566                         ".": ","
3567                 },
3568                 currency: {
3569                         pattern: ["-n $","n $"],
3570                         ",": " ",
3571                         ".": "-",
3572                         symbol: "сом"
3573                 }
3574         },
3575         calendars: {
3576                 standard: {
3577                         "/": ".",
3578                         firstDay: 1,
3579                         days: {
3580                                 names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"],
3581                                 namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"],
3582                                 namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"]
3583                         },
3584                         months: {
3585                                 names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],
3586                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
3587                         },
3588                         AM: null,
3589                         PM: null,
3590                         patterns: {
3591                                 d: "dd.MM.yy",
3592                                 D: "d'-'MMMM yyyy'-ж.'",
3593                                 t: "H:mm",
3594                                 T: "H:mm:ss",
3595                                 f: "d'-'MMMM yyyy'-ж.' H:mm",
3596                                 F: "d'-'MMMM yyyy'-ж.' H:mm:ss",
3597                                 M: "d MMMM",
3598                                 Y: "MMMM yyyy'-ж.'"
3599                         }
3600                 }
3601         }
3602 });
3603
3604 Globalize.addCultureInfo( "sw", "default", {
3605         name: "sw",
3606         englishName: "Kiswahili",
3607         nativeName: "Kiswahili",
3608         language: "sw",
3609         numberFormat: {
3610                 currency: {
3611                         symbol: "S"
3612                 }
3613         },
3614         calendars: {
3615                 standard: {
3616                         days: {
3617                                 names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"],
3618                                 namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."],
3619                                 namesShort: ["P","T","N","T","A","I","M"]
3620                         },
3621                         months: {
3622                                 names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""],
3623                                 namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""]
3624                         }
3625                 }
3626         }
3627 });
3628
3629 Globalize.addCultureInfo( "tk", "default", {
3630         name: "tk",
3631         englishName: "Turkmen",
3632         nativeName: "türkmençe",
3633         language: "tk",
3634         numberFormat: {
3635                 ",": " ",
3636                 ".": ",",
3637                 negativeInfinity: "-üznüksizlik",
3638                 positiveInfinity: "üznüksizlik",
3639                 percent: {
3640                         pattern: ["-n%","n%"],
3641                         ",": " ",
3642                         ".": ","
3643                 },
3644                 currency: {
3645                         pattern: ["-n$","n$"],
3646                         ",": " ",
3647                         ".": ",",
3648                         symbol: "m."
3649                 }
3650         },
3651         calendars: {
3652                 standard: {
3653                         "/": ".",
3654                         firstDay: 1,
3655                         days: {
3656                                 names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"],
3657                                 namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"],
3658                                 namesShort: ["D","S","Ç","P","A","Ş","Ý"]
3659                         },
3660                         months: {
3661                                 names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""],
3662                                 namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""]
3663                         },
3664                         AM: null,
3665                         PM: null,
3666                         patterns: {
3667                                 d: "dd.MM.yy",
3668                                 D: "yyyy 'ý.' MMMM d",
3669                                 t: "H:mm",
3670                                 T: "H:mm:ss",
3671                                 f: "yyyy 'ý.' MMMM d H:mm",
3672                                 F: "yyyy 'ý.' MMMM d H:mm:ss",
3673                                 Y: "yyyy 'ý.' MMMM"
3674                         }
3675                 }
3676         }
3677 });
3678
3679 Globalize.addCultureInfo( "uz", "default", {
3680         name: "uz",
3681         englishName: "Uzbek",
3682         nativeName: "U'zbek",
3683         language: "uz",
3684         numberFormat: {
3685                 ",": " ",
3686                 ".": ",",
3687                 percent: {
3688                         pattern: ["-n%","n%"],
3689                         ",": " ",
3690                         ".": ","
3691                 },
3692                 currency: {
3693                         pattern: ["-n $","n $"],
3694                         decimals: 0,
3695                         ",": " ",
3696                         ".": ",",
3697                         symbol: "so'm"
3698                 }
3699         },
3700         calendars: {
3701                 standard: {
3702                         firstDay: 1,
3703                         days: {
3704                                 names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"],
3705                                 namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."],
3706                                 namesShort: ["ya","d","s","ch","p","j","sh"]
3707                         },
3708                         months: {
3709                                 names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],
3710                                 namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""]
3711                         },
3712                         AM: null,
3713                         PM: null,
3714                         patterns: {
3715                                 d: "dd/MM yyyy",
3716                                 D: "yyyy 'yil' d-MMMM",
3717                                 t: "HH:mm",
3718                                 T: "HH:mm:ss",
3719                                 f: "yyyy 'yil' d-MMMM HH:mm",
3720                                 F: "yyyy 'yil' d-MMMM HH:mm:ss",
3721                                 M: "d-MMMM",
3722                                 Y: "MMMM yyyy"
3723                         }
3724                 }
3725         }
3726 });
3727
3728 Globalize.addCultureInfo( "tt", "default", {
3729         name: "tt",
3730         englishName: "Tatar",
3731         nativeName: "Татар",
3732         language: "tt",
3733         numberFormat: {
3734                 ",": " ",
3735                 ".": ",",
3736                 percent: {
3737                         pattern: ["-n%","n%"],
3738                         ",": " ",
3739                         ".": ","
3740                 },
3741                 currency: {
3742                         pattern: ["-n $","n $"],
3743                         ",": " ",
3744                         ".": ",",
3745                         symbol: "р."
3746                 }
3747         },
3748         calendars: {
3749                 standard: {
3750                         "/": ".",
3751                         firstDay: 1,
3752                         days: {
3753                                 names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"],
3754                                 namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"],
3755                                 namesShort: ["Я","Д","С","Ч","П","Җ","Ш"]
3756                         },
3757                         months: {
3758                                 names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],
3759                                 namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""]
3760                         },
3761                         monthsGenitive: {
3762                                 names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""],
3763                                 namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""]
3764                         },
3765                         AM: null,
3766                         PM: null,
3767                         patterns: {
3768                                 d: "dd.MM.yyyy",
3769                                 D: "d MMMM yyyy",
3770                                 t: "H:mm",
3771                                 T: "H:mm:ss",
3772                                 f: "d MMMM yyyy H:mm",
3773                                 F: "d MMMM yyyy H:mm:ss",
3774                                 M: "d MMMM",
3775                                 Y: "MMMM yyyy"
3776                         }
3777                 }
3778         }
3779 });
3780
3781 Globalize.addCultureInfo( "bn", "default", {
3782         name: "bn",
3783         englishName: "Bengali",
3784         nativeName: "বাংলা",
3785         language: "bn",
3786         numberFormat: {
3787                 groupSizes: [3,2],
3788                 percent: {
3789                         pattern: ["-%n","%n"],
3790                         groupSizes: [3,2]
3791                 },
3792                 currency: {
3793                         pattern: ["$ -n","$ n"],
3794                         groupSizes: [3,2],
3795                         symbol: "টা"
3796                 }
3797         },
3798         calendars: {
3799                 standard: {
3800                         "/": "-",
3801                         ":": ".",
3802                         firstDay: 1,
3803                         days: {
3804                                 names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"],
3805                                 namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."],
3806                                 namesShort: ["র","স","ম","ব","ব","শ","শ"]
3807                         },
3808                         months: {
3809                                 names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""],
3810                                 namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""]
3811                         },
3812                         AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"],
3813                         PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"],
3814                         patterns: {
3815                                 d: "dd-MM-yy",
3816                                 D: "dd MMMM yyyy",
3817                                 t: "HH.mm",
3818                                 T: "HH.mm.ss",
3819                                 f: "dd MMMM yyyy HH.mm",
3820                                 F: "dd MMMM yyyy HH.mm.ss",
3821                                 M: "dd MMMM"
3822                         }
3823                 }
3824         }
3825 });
3826
3827 Globalize.addCultureInfo( "pa", "default", {
3828         name: "pa",
3829         englishName: "Punjabi",
3830         nativeName: "ਪੰਜਾਬੀ",
3831         language: "pa",
3832         numberFormat: {
3833                 groupSizes: [3,2],
3834                 percent: {
3835                         groupSizes: [3,2]
3836                 },
3837                 currency: {
3838                         pattern: ["$ -n","$ n"],
3839                         groupSizes: [3,2],
3840                         symbol: "ਰੁ"
3841                 }
3842         },
3843         calendars: {
3844                 standard: {
3845                         "/": "-",
3846                         firstDay: 1,
3847                         days: {
3848                                 names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"],
3849                                 namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."],
3850                                 namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"]
3851                         },
3852                         months: {
3853                                 names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""],
3854                                 namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""]
3855                         },
3856                         AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"],
3857                         PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"],
3858                         patterns: {
3859                                 d: "dd-MM-yy",
3860                                 D: "dd MMMM yyyy dddd",
3861                                 t: "tt hh:mm",
3862                                 T: "tt hh:mm:ss",
3863                                 f: "dd MMMM yyyy dddd tt hh:mm",
3864                                 F: "dd MMMM yyyy dddd tt hh:mm:ss",
3865                                 M: "dd MMMM"
3866                         }
3867                 }
3868         }
3869 });
3870
3871 Globalize.addCultureInfo( "gu", "default", {
3872         name: "gu",
3873         englishName: "Gujarati",
3874         nativeName: "ગુજરાતી",
3875         language: "gu",
3876         numberFormat: {
3877                 groupSizes: [3,2],
3878                 percent: {
3879                         groupSizes: [3,2]
3880                 },
3881                 currency: {
3882                         pattern: ["$ -n","$ n"],
3883                         groupSizes: [3,2],
3884                         symbol: "રૂ"
3885                 }
3886         },
3887         calendars: {
3888                 standard: {
3889                         "/": "-",
3890                         firstDay: 1,
3891                         days: {
3892                                 names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"],
3893                                 namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"],
3894                                 namesShort: ["ર","સ","મ","બ","ગ","શ","શ"]
3895                         },
3896                         months: {
3897                                 names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""],
3898                                 namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""]
3899                         },
3900                         AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"],
3901                         PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"],
3902                         patterns: {
3903                                 d: "dd-MM-yy",
3904                                 D: "dd MMMM yyyy",
3905                                 t: "HH:mm",
3906                                 T: "HH:mm:ss",
3907                                 f: "dd MMMM yyyy HH:mm",
3908                                 F: "dd MMMM yyyy HH:mm:ss",
3909                                 M: "dd MMMM"
3910                         }
3911                 }
3912         }
3913 });
3914
3915 Globalize.addCultureInfo( "or", "default", {
3916         name: "or",
3917         englishName: "Oriya",
3918         nativeName: "ଓଡ଼ିଆ",
3919         language: "or",
3920         numberFormat: {
3921                 groupSizes: [3,2],
3922                 percent: {
3923                         groupSizes: [3,2]
3924                 },
3925                 currency: {
3926                         pattern: ["$ -n","$ n"],
3927                         groupSizes: [3,2],
3928                         symbol: "ଟ"
3929                 }
3930         },
3931         calendars: {
3932                 standard: {
3933                         "/": "-",
3934                         days: {
3935                                 names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"],
3936                                 namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."],
3937                                 namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"]
3938                         },
3939                         months: {
3940                                 names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍‌","ମେ","ଜୁନ୍‌","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""],
3941                                 namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍‌","ମେ","ଜୁନ୍‌","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""]
3942                         },
3943                         eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}],
3944                         patterns: {
3945                                 d: "dd-MM-yy",
3946                                 D: "dd MMMM yyyy",
3947                                 t: "HH:mm",
3948                                 T: "HH:mm:ss",
3949                                 f: "dd MMMM yyyy HH:mm",
3950                                 F: "dd MMMM yyyy HH:mm:ss",
3951                                 M: "dd MMMM"
3952                         }
3953                 }
3954         }
3955 });
3956
3957 Globalize.addCultureInfo( "ta", "default", {
3958         name: "ta",
3959         englishName: "Tamil",
3960         nativeName: "தமிழ்",
3961         language: "ta",
3962         numberFormat: {
3963                 groupSizes: [3,2],
3964                 percent: {
3965                         groupSizes: [3,2]
3966                 },
3967                 currency: {
3968                         pattern: ["$ -n","$ n"],
3969                         groupSizes: [3,2],
3970                         symbol: "ரூ"
3971                 }
3972         },
3973         calendars: {
3974                 standard: {
3975                         "/": "-",
3976                         firstDay: 1,
3977                         days: {
3978                                 names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"],
3979                                 namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"],
3980                                 namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"]
3981                         },
3982                         months: {
3983                                 names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""],
3984                                 namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""]
3985                         },
3986                         AM: ["காலை","காலை","காலை"],
3987                         PM: ["மாலை","மாலை","மாலை"],
3988                         patterns: {
3989                                 d: "dd-MM-yyyy",
3990                                 D: "dd MMMM yyyy",
3991                                 t: "HH:mm",
3992                                 T: "HH:mm:ss",
3993                                 f: "dd MMMM yyyy HH:mm",
3994                                 F: "dd MMMM yyyy HH:mm:ss",
3995                                 M: "dd MMMM",
3996                                 Y: "MMMM yyyy"
3997                         }
3998                 }
3999         }
4000 });
4001
4002 Globalize.addCultureInfo( "te", "default", {
4003         name: "te",
4004         englishName: "Telugu",
4005         nativeName: "తెలుగు",
4006         language: "te",
4007         numberFormat: {
4008                 groupSizes: [3,2],
4009                 percent: {
4010                         groupSizes: [3,2]
4011                 },
4012                 currency: {
4013                         pattern: ["$ -n","$ n"],
4014                         groupSizes: [3,2],
4015                         symbol: "రూ"
4016                 }
4017         },
4018         calendars: {
4019                 standard: {
4020                         "/": "-",
4021                         firstDay: 1,
4022                         days: {
4023                                 names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"],
4024                                 namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."],
4025                                 namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"]
4026                         },
4027                         months: {
4028                                 names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""],
4029                                 namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""]
4030                         },
4031                         AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"],
4032                         PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"],
4033                         patterns: {
4034                                 d: "dd-MM-yy",
4035                                 D: "dd MMMM yyyy",
4036                                 t: "HH:mm",
4037                                 T: "HH:mm:ss",
4038                                 f: "dd MMMM yyyy HH:mm",
4039                                 F: "dd MMMM yyyy HH:mm:ss",
4040                                 M: "dd MMMM"
4041                         }
4042                 }
4043         }
4044 });
4045
4046 Globalize.addCultureInfo( "kn", "default", {
4047         name: "kn",
4048         englishName: "Kannada",
4049         nativeName: "ಕನ್ನಡ",
4050         language: "kn",
4051         numberFormat: {
4052                 groupSizes: [3,2],
4053                 percent: {
4054                         groupSizes: [3,2]
4055                 },
4056                 currency: {
4057                         pattern: ["$ -n","$ n"],
4058                         groupSizes: [3,2],
4059                         symbol: "ರೂ"
4060                 }
4061         },
4062         calendars: {
4063                 standard: {
4064                         "/": "-",
4065                         firstDay: 1,
4066                         days: {
4067                                 names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"],
4068                                 namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."],
4069                                 namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"]
4070                         },
4071                         months: {
4072                                 names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""],
4073                                 namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""]
4074                         },
4075                         AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"],
4076                         PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"],
4077                         patterns: {
4078                                 d: "dd-MM-yy",
4079                                 D: "dd MMMM yyyy",
4080                                 t: "HH:mm",
4081                                 T: "HH:mm:ss",
4082                                 f: "dd MMMM yyyy HH:mm",
4083                                 F: "dd MMMM yyyy HH:mm:ss",
4084                                 M: "dd MMMM"
4085                         }
4086                 }
4087         }
4088 });
4089
4090 Globalize.addCultureInfo( "ml", "default", {
4091         name: "ml",
4092         englishName: "Malayalam",
4093         nativeName: "മലയാളം",
4094         language: "ml",
4095         numberFormat: {
4096                 groupSizes: [3,2],
4097                 percent: {
4098                         pattern: ["-%n","%n"],
4099                         groupSizes: [3,2]
4100                 },
4101                 currency: {
4102                         pattern: ["$ -n","$ n"],
4103                         groupSizes: [3,2],
4104                         symbol: "ക"
4105                 }
4106         },
4107         calendars: {
4108                 standard: {
4109                         "/": "-",
4110                         ":": ".",
4111                         firstDay: 1,
4112                         days: {
4113                                 names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"],
4114                                 namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."],
4115                                 namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"]
4116                         },
4117                         months: {
4118                                 names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""],
4119                                 namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""]
4120                         },
4121                         patterns: {
4122                                 d: "dd-MM-yy",
4123                                 D: "dd MMMM yyyy",
4124                                 t: "HH.mm",
4125                                 T: "HH.mm.ss",
4126                                 f: "dd MMMM yyyy HH.mm",
4127                                 F: "dd MMMM yyyy HH.mm.ss",
4128                                 M: "dd MMMM"
4129                         }
4130                 }
4131         }
4132 });
4133
4134 Globalize.addCultureInfo( "as", "default", {
4135         name: "as",
4136         englishName: "Assamese",
4137         nativeName: "অসমীয়া",
4138         language: "as",
4139         numberFormat: {
4140                 groupSizes: [3,2],
4141                 NaN: "nan",
4142                 negativeInfinity: "-infinity",
4143                 positiveInfinity: "infinity",
4144                 percent: {
4145                         pattern: ["-n%","n%"],
4146                         groupSizes: [3,2]
4147                 },
4148                 currency: {
4149                         pattern: ["$ -n","n$"],
4150                         groupSizes: [3,2],
4151                         symbol: "ট"
4152                 }
4153         },
4154         calendars: {
4155                 standard: {
4156                         "/": "-",
4157                         firstDay: 1,
4158                         days: {
4159                                 names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"],
4160                                 namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."],
4161                                 namesShort: ["সো","ম","বু","বৃ","শু","শ","র"]
4162                         },
4163                         months: {
4164                                 names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""],
4165                                 namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""]
4166                         },
4167                         AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"],
4168                         PM: ["আবেলি","আবেলি","আবেলি"],
4169                         eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}],
4170                         patterns: {
4171                                 d: "dd-MM-yyyy",
4172                                 D: "yyyy,MMMM dd, dddd",
4173                                 t: "tt h:mm",
4174                                 T: "tt h:mm:ss",
4175                                 f: "yyyy,MMMM dd, dddd tt h:mm",
4176                                 F: "yyyy,MMMM dd, dddd tt h:mm:ss",
4177                                 M: "dd MMMM",
4178                                 Y: "MMMM,yy"
4179                         }
4180                 }
4181         }
4182 });
4183
4184 Globalize.addCultureInfo( "mr", "default", {
4185         name: "mr",
4186         englishName: "Marathi",
4187         nativeName: "मराठी",
4188         language: "mr",
4189         numberFormat: {
4190                 groupSizes: [3,2],
4191                 percent: {
4192                         groupSizes: [3,2]
4193                 },
4194                 currency: {
4195                         pattern: ["$ -n","$ n"],
4196                         groupSizes: [3,2],
4197                         symbol: "रु"
4198                 }
4199         },
4200         calendars: {
4201                 standard: {
4202                         "/": "-",
4203                         firstDay: 1,
4204                         days: {
4205                                 names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"],
4206                                 namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."],
4207                                 namesShort: ["र","स","म","ब","ग","श","श"]
4208                         },
4209                         months: {
4210                                 names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""],
4211                                 namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""]
4212                         },
4213                         AM: ["म.पू.","म.पू.","म.पू."],
4214                         PM: ["म.नं.","म.नं.","म.नं."],
4215                         patterns: {
4216                                 d: "dd-MM-yyyy",
4217                                 D: "dd MMMM yyyy",
4218                                 t: "HH:mm",
4219                                 T: "HH:mm:ss",
4220                                 f: "dd MMMM yyyy HH:mm",
4221                                 F: "dd MMMM yyyy HH:mm:ss",
4222                                 M: "dd MMMM"
4223                         }
4224                 }
4225         }
4226 });
4227
4228 Globalize.addCultureInfo( "sa", "default", {
4229         name: "sa",
4230         englishName: "Sanskrit",
4231         nativeName: "संस्कृत",
4232         language: "sa",
4233         numberFormat: {
4234                 groupSizes: [3,2],
4235                 percent: {
4236                         groupSizes: [3,2]
4237                 },
4238                 currency: {
4239                         pattern: ["$ -n","$ n"],
4240                         groupSizes: [3,2],
4241                         symbol: "रु"
4242                 }
4243         },
4244         calendars: {
4245                 standard: {
4246                         "/": "-",
4247                         days: {
4248                                 names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"],
4249                                 namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"],
4250                                 namesShort: ["र","स","म","ब","ग","श","श"]
4251                         },
4252                         months: {
4253                                 names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],
4254                                 namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""]
4255                         },
4256                         AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"],
4257                         PM: ["अपराह्न","अपराह्न","अपराह्न"],
4258                         patterns: {
4259                                 d: "dd-MM-yyyy",
4260                                 D: "dd MMMM yyyy dddd",
4261                                 t: "HH:mm",
4262                                 T: "HH:mm:ss",
4263                                 f: "dd MMMM yyyy dddd HH:mm",
4264                                 F: "dd MMMM yyyy dddd HH:mm:ss",
4265                                 M: "dd MMMM"
4266                         }
4267                 }
4268         }
4269 });
4270
4271 Globalize.addCultureInfo( "mn", "default", {
4272         name: "mn",
4273         englishName: "Mongolian",
4274         nativeName: "Монгол хэл",
4275         language: "mn",
4276         numberFormat: {
4277                 ",": " ",
4278                 ".": ",",
4279                 percent: {
4280                         ",": " ",
4281                         ".": ","
4282                 },
4283                 currency: {
4284                         pattern: ["-n$","n$"],
4285                         ",": " ",
4286                         ".": ",",
4287                         symbol: "₮"
4288                 }
4289         },
4290         calendars: {
4291                 standard: {
4292                         "/": ".",
4293                         firstDay: 1,
4294                         days: {
4295                                 names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"],
4296                                 namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"],
4297                                 namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"]
4298                         },
4299                         months: {
4300                                 names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""],
4301                                 namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""]
4302                         },
4303                         monthsGenitive: {
4304                                 names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""],
4305                                 namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""]
4306                         },
4307                         AM: null,
4308                         PM: null,
4309                         patterns: {
4310                                 d: "yy.MM.dd",
4311                                 D: "yyyy 'оны' MMMM d",
4312                                 t: "H:mm",
4313                                 T: "H:mm:ss",
4314                                 f: "yyyy 'оны' MMMM d H:mm",
4315                                 F: "yyyy 'оны' MMMM d H:mm:ss",
4316                                 M: "d MMMM",
4317                                 Y: "yyyy 'он' MMMM"
4318                         }
4319                 }
4320         }
4321 });
4322
4323 Globalize.addCultureInfo( "bo", "default", {
4324         name: "bo",
4325         englishName: "Tibetan",
4326         nativeName: "བོད་ཡིག",
4327         language: "bo",
4328         numberFormat: {
4329                 groupSizes: [3,0],
4330                 NaN: "ཨང་ཀི་མིན་པ།",
4331                 negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།",
4332                 positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།",
4333                 percent: {
4334                         pattern: ["-n%","n%"],
4335                         groupSizes: [3,0]
4336                 },
4337                 currency: {
4338                         pattern: ["$-n","$n"],
4339                         groupSizes: [3,0],
4340                         symbol: "¥"
4341                 }
4342         },
4343         calendars: {
4344                 standard: {
4345                         firstDay: 1,
4346                         days: {
4347                                 names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"],
4348                                 namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"],
4349                                 namesShort: ["༧","༡","༢","༣","༤","༥","༦"]
4350                         },
4351                         months: {
4352                                 names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""],
4353                                 namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""]
4354                         },
4355                         AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"],
4356                         PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"],
4357                         eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}],
4358                         patterns: {
4359                                 d: "yyyy/M/d",
4360                                 D: "yyyy'ལོའི་ཟླ' M'ཚེས' d",
4361                                 t: "HH:mm",
4362                                 T: "HH:mm:ss",
4363                                 f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm",
4364                                 F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss",
4365                                 M: "'ཟླ་' M'ཚེས'd",
4366                                 Y: "yyyy.M"
4367                         }
4368                 }
4369         }
4370 });
4371
4372 Globalize.addCultureInfo( "cy", "default", {
4373         name: "cy",
4374         englishName: "Welsh",
4375         nativeName: "Cymraeg",
4376         language: "cy",
4377         numberFormat: {
4378                 percent: {
4379                         pattern: ["-%n","%n"]
4380                 },
4381                 currency: {
4382                         pattern: ["-$n","$n"],
4383                         symbol: "£"
4384                 }
4385         },
4386         calendars: {
4387                 standard: {
4388                         firstDay: 1,
4389                         days: {
4390                                 names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"],
4391                                 namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"],
4392                                 namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"]
4393                         },
4394                         months: {
4395                                 names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""],
4396                                 namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""]
4397                         },
4398                         AM: ["a.m.","a.m.","A.M."],
4399                         PM: ["p.m.","p.m.","P.M."],
4400                         patterns: {
4401                                 d: "dd/MM/yyyy",
4402                                 D: "dd MMMM yyyy",
4403                                 t: "HH:mm",
4404                                 T: "HH:mm:ss",
4405                                 f: "dd MMMM yyyy HH:mm",
4406                                 F: "dd MMMM yyyy HH:mm:ss",
4407                                 M: "dd MMMM",
4408                                 Y: "MMMM yyyy"
4409                         }
4410                 }
4411         }
4412 });
4413
4414 Globalize.addCultureInfo( "km", "default", {
4415         name: "km",
4416         englishName: "Khmer",
4417         nativeName: "ខ្មែរ",
4418         language: "km",
4419         numberFormat: {
4420                 pattern: ["- n"],
4421                 groupSizes: [3,0],
4422                 NaN: "NAN",
4423                 negativeInfinity: "-- អនន្ត",
4424                 positiveInfinity: "អនន្ត",
4425                 percent: {
4426                         pattern: ["-n%","n%"],
4427                         groupSizes: [3,0]
4428                 },
4429                 currency: {
4430                         pattern: ["-n$","n$"],
4431                         symbol: "៛"
4432                 }
4433         },
4434         calendars: {
4435                 standard: {
4436                         "/": "-",
4437                         days: {
4438                                 names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"],
4439                                 namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."],
4440                                 namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"]
4441                         },
4442                         months: {
4443                                 names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""],
4444                                 namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""]
4445                         },
4446                         AM: ["ព្រឹក","ព្រឹក","ព្រឹក"],
4447                         PM: ["ល្ងាច","ល្ងាច","ល្ងាច"],
4448                         eras: [{"name":"មុនគ.ស.","start":null,"offset":0}],
4449                         patterns: {
4450                                 d: "yyyy-MM-dd",
4451                                 D: "d MMMM yyyy",
4452                                 t: "H:mm tt",
4453                                 T: "HH:mm:ss",
4454                                 f: "d MMMM yyyy H:mm tt",
4455                                 F: "d MMMM yyyy HH:mm:ss",
4456                                 M: "'ថ្ងៃទី' dd 'ខែ' MM",
4457                                 Y: "'ខែ' MM 'ឆ្នាំ' yyyy"
4458                         }
4459                 },
4460                 Gregorian_TransliteratedEnglish: {
4461                         name: "Gregorian_TransliteratedEnglish",
4462                         days: {
4463                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
4464                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
4465                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
4466                         },
4467                         months: {
4468                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
4469                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
4470                         },
4471                         AM: ["ព្រឹក","ព្រឹក","ព្រឹក"],
4472                         PM: ["ល្ងាច","ល្ងាច","ល្ងាច"],
4473                         eras: [{"name":"م","start":null,"offset":0}],
4474                         patterns: {
4475                                 d: "MM/dd/yyyy",
4476                                 t: "H:mm tt",
4477                                 T: "HH:mm:ss",
4478                                 f: "dddd, MMMM dd, yyyy H:mm tt",
4479                                 F: "dddd, MMMM dd, yyyy HH:mm:ss"
4480                         }
4481                 }
4482         }
4483 });
4484
4485 Globalize.addCultureInfo( "lo", "default", {
4486         name: "lo",
4487         englishName: "Lao",
4488         nativeName: "ລາວ",
4489         language: "lo",
4490         numberFormat: {
4491                 pattern: ["(n)"],
4492                 groupSizes: [3,0],
4493                 percent: {
4494                         groupSizes: [3,0]
4495                 },
4496                 currency: {
4497                         pattern: ["(n$)","n$"],
4498                         groupSizes: [3,0],
4499                         symbol: "₭"
4500                 }
4501         },
4502         calendars: {
4503                 standard: {
4504                         days: {
4505                                 names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"],
4506                                 namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"],
4507                                 namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"]
4508                         },
4509                         months: {
4510                                 names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""],
4511                                 namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""]
4512                         },
4513                         AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"],
4514                         PM: ["ແລງ","ແລງ","ແລງ"],
4515                         patterns: {
4516                                 d: "dd/MM/yyyy",
4517                                 D: "dd MMMM yyyy",
4518                                 t: "H:mm tt",
4519                                 T: "HH:mm:ss",
4520                                 f: "dd MMMM yyyy H:mm tt",
4521                                 F: "dd MMMM yyyy HH:mm:ss",
4522                                 M: "dd MMMM",
4523                                 Y: "MMMM yyyy"
4524                         }
4525                 }
4526         }
4527 });
4528
4529 Globalize.addCultureInfo( "gl", "default", {
4530         name: "gl",
4531         englishName: "Galician",
4532         nativeName: "galego",
4533         language: "gl",
4534         numberFormat: {
4535                 ",": ".",
4536                 ".": ",",
4537                 NaN: "NeuN",
4538                 negativeInfinity: "-Infinito",
4539                 positiveInfinity: "Infinito",
4540                 percent: {
4541                         ",": ".",
4542                         ".": ","
4543                 },
4544                 currency: {
4545                         pattern: ["-n $","n $"],
4546                         ",": ".",
4547                         ".": ",",
4548                         symbol: "€"
4549                 }
4550         },
4551         calendars: {
4552                 standard: {
4553                         firstDay: 1,
4554                         days: {
4555                                 names: ["domingo","luns","martes","mércores","xoves","venres","sábado"],
4556                                 namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"],
4557                                 namesShort: ["do","lu","ma","mé","xo","ve","sá"]
4558                         },
4559                         months: {
4560                                 names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""],
4561                                 namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""]
4562                         },
4563                         AM: ["a.m.","a.m.","A.M."],
4564                         PM: ["p.m.","p.m.","P.M."],
4565                         eras: [{"name":"d.C.","start":null,"offset":0}],
4566                         patterns: {
4567                                 d: "dd/MM/yyyy",
4568                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
4569                                 t: "H:mm",
4570                                 T: "H:mm:ss",
4571                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
4572                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
4573                                 M: "dd MMMM",
4574                                 Y: "MMMM' de 'yyyy"
4575                         }
4576                 }
4577         }
4578 });
4579
4580 Globalize.addCultureInfo( "kok", "default", {
4581         name: "kok",
4582         englishName: "Konkani",
4583         nativeName: "कोंकणी",
4584         language: "kok",
4585         numberFormat: {
4586                 groupSizes: [3,2],
4587                 percent: {
4588                         groupSizes: [3,2]
4589                 },
4590                 currency: {
4591                         pattern: ["$ -n","$ n"],
4592                         groupSizes: [3,2],
4593                         symbol: "रु"
4594                 }
4595         },
4596         calendars: {
4597                 standard: {
4598                         "/": "-",
4599                         firstDay: 1,
4600                         days: {
4601                                 names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"],
4602                                 namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."],
4603                                 namesShort: ["आ","स","म","ब","ब","स","श"]
4604                         },
4605                         months: {
4606                                 names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""],
4607                                 namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""]
4608                         },
4609                         AM: ["म.पू.","म.पू.","म.पू."],
4610                         PM: ["म.नं.","म.नं.","म.नं."],
4611                         patterns: {
4612                                 d: "dd-MM-yyyy",
4613                                 D: "dd MMMM yyyy",
4614                                 t: "HH:mm",
4615                                 T: "HH:mm:ss",
4616                                 f: "dd MMMM yyyy HH:mm",
4617                                 F: "dd MMMM yyyy HH:mm:ss",
4618                                 M: "dd MMMM"
4619                         }
4620                 }
4621         }
4622 });
4623
4624 Globalize.addCultureInfo( "syr", "default", {
4625         name: "syr",
4626         englishName: "Syriac",
4627         nativeName: "ܣܘܪܝܝܐ",
4628         language: "syr",
4629         isRTL: true,
4630         numberFormat: {
4631                 currency: {
4632                         pattern: ["$n-","$ n"],
4633                         symbol: "ل.س.‏"
4634                 }
4635         },
4636         calendars: {
4637                 standard: {
4638                         firstDay: 6,
4639                         days: {
4640                                 names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"],
4641                                 namesAbbr: ["܏ܐ ܏ܒܫ","܏ܒ ܏ܒܫ","܏ܓ ܏ܒܫ","܏ܕ ܏ܒܫ","܏ܗ ܏ܒܫ","܏ܥܪܘܒ","܏ܫܒ"],
4642                                 namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"]
4643                         },
4644                         months: {
4645                                 names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""],
4646                                 namesAbbr: ["܏ܟܢ ܏ܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","܏ܬܫ ܏ܐ","܏ܬܫ ܏ܒ","܏ܟܢ ܏ܐ",""]
4647                         },
4648                         AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"],
4649                         PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"],
4650                         patterns: {
4651                                 d: "dd/MM/yyyy",
4652                                 D: "dd MMMM, yyyy",
4653                                 t: "hh:mm tt",
4654                                 T: "hh:mm:ss tt",
4655                                 f: "dd MMMM, yyyy hh:mm tt",
4656                                 F: "dd MMMM, yyyy hh:mm:ss tt",
4657                                 M: "dd MMMM"
4658                         }
4659                 }
4660         }
4661 });
4662
4663 Globalize.addCultureInfo( "si", "default", {
4664         name: "si",
4665         englishName: "Sinhala",
4666         nativeName: "සිංහල",
4667         language: "si",
4668         numberFormat: {
4669                 groupSizes: [3,2],
4670                 negativeInfinity: "-අනන්තය",
4671                 positiveInfinity: "අනන්තය",
4672                 percent: {
4673                         groupSizes: [3,2]
4674                 },
4675                 currency: {
4676                         pattern: ["($ n)","$ n"],
4677                         symbol: "රු."
4678                 }
4679         },
4680         calendars: {
4681                 standard: {
4682                         "/": "-",
4683                         firstDay: 1,
4684                         days: {
4685                                 names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්‍රහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"],
4686                                 namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"],
4687                                 namesShort: ["ඉ","ස","අ","බ","බ්‍ර","සි","සෙ"]
4688                         },
4689                         months: {
4690                                 names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ‌ප්‍රේල්","මැයි","ජූනි","ජූලි","අ‌ගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""],
4691                                 namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්‍රේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""]
4692                         },
4693                         AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."],
4694                         PM: ["ප.ව.","ප.ව.","ප.ව."],
4695                         eras: [{"name":"ක්‍රි.ව.","start":null,"offset":0}],
4696                         patterns: {
4697                                 d: "yyyy-MM-dd",
4698                                 D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd",
4699                                 f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt",
4700                                 F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt",
4701                                 Y: "yyyy MMMM"
4702                         }
4703                 }
4704         }
4705 });
4706
4707 Globalize.addCultureInfo( "iu", "default", {
4708         name: "iu",
4709         englishName: "Inuktitut",
4710         nativeName: "Inuktitut",
4711         language: "iu",
4712         numberFormat: {
4713                 groupSizes: [3,0],
4714                 percent: {
4715                         groupSizes: [3,0]
4716                 }
4717         },
4718         calendars: {
4719                 standard: {
4720                         days: {
4721                                 names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"],
4722                                 namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"],
4723                                 namesShort: ["N","N","A","P","S","T","S"]
4724                         },
4725                         months: {
4726                                 names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""],
4727                                 namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""]
4728                         },
4729                         patterns: {
4730                                 d: "d/MM/yyyy",
4731                                 D: "ddd, MMMM dd,yyyy",
4732                                 f: "ddd, MMMM dd,yyyy h:mm tt",
4733                                 F: "ddd, MMMM dd,yyyy h:mm:ss tt"
4734                         }
4735                 }
4736         }
4737 });
4738
4739 Globalize.addCultureInfo( "am", "default", {
4740         name: "am",
4741         englishName: "Amharic",
4742         nativeName: "አማርኛ",
4743         language: "am",
4744         numberFormat: {
4745                 decimals: 1,
4746                 groupSizes: [3,0],
4747                 NaN: "NAN",
4748                 percent: {
4749                         pattern: ["-n%","n%"],
4750                         decimals: 1,
4751                         groupSizes: [3,0]
4752                 },
4753                 currency: {
4754                         pattern: ["-$n","$n"],
4755                         groupSizes: [3,0],
4756                         symbol: "ETB"
4757                 }
4758         },
4759         calendars: {
4760                 standard: {
4761                         days: {
4762                                 names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"],
4763                                 namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"],
4764                                 namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"]
4765                         },
4766                         months: {
4767                                 names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""],
4768                                 namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""]
4769                         },
4770                         AM: ["ጡዋት","ጡዋት","ጡዋት"],
4771                         PM: ["ከሰዓት","ከሰዓት","ከሰዓት"],
4772                         eras: [{"name":"ዓመተ  ምሕረት","start":null,"offset":0}],
4773                         patterns: {
4774                                 d: "d/M/yyyy",
4775                                 D: "dddd '፣' MMMM d 'ቀን' yyyy",
4776                                 f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt",
4777                                 F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt",
4778                                 M: "MMMM d ቀን",
4779                                 Y: "MMMM yyyy"
4780                         }
4781                 }
4782         }
4783 });
4784
4785 Globalize.addCultureInfo( "tzm", "default", {
4786         name: "tzm",
4787         englishName: "Tamazight",
4788         nativeName: "Tamazight",
4789         language: "tzm",
4790         numberFormat: {
4791                 pattern: ["n-"],
4792                 ",": ".",
4793                 ".": ",",
4794                 NaN: "Non Numérique",
4795                 negativeInfinity: "-Infini",
4796                 positiveInfinity: "+Infini",
4797                 percent: {
4798                         ",": ".",
4799                         ".": ","
4800                 },
4801                 currency: {
4802                         pattern: ["-n $","n $"],
4803                         symbol: "DZD"
4804                 }
4805         },
4806         calendars: {
4807                 standard: {
4808                         "/": "-",
4809                         firstDay: 6,
4810                         days: {
4811                                 names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"],
4812                                 namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"],
4813                                 namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"]
4814                         },
4815                         months: {
4816                                 names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""],
4817                                 namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""]
4818                         },
4819                         AM: null,
4820                         PM: null,
4821                         patterns: {
4822                                 d: "dd-MM-yyyy",
4823                                 D: "dd MMMM, yyyy",
4824                                 t: "H:mm",
4825                                 T: "H:mm:ss",
4826                                 f: "dd MMMM, yyyy H:mm",
4827                                 F: "dd MMMM, yyyy H:mm:ss",
4828                                 M: "dd MMMM"
4829                         }
4830                 }
4831         }
4832 });
4833
4834 Globalize.addCultureInfo( "ne", "default", {
4835         name: "ne",
4836         englishName: "Nepali",
4837         nativeName: "नेपाली",
4838         language: "ne",
4839         numberFormat: {
4840                 groupSizes: [3,2],
4841                 NaN: "nan",
4842                 negativeInfinity: "-infinity",
4843                 positiveInfinity: "infinity",
4844                 percent: {
4845                         pattern: ["-n%","n%"],
4846                         groupSizes: [3,2]
4847                 },
4848                 currency: {
4849                         pattern: ["-$n","$n"],
4850                         symbol: "रु"
4851                 }
4852         },
4853         calendars: {
4854                 standard: {
4855                         days: {
4856                                 names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"],
4857                                 namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"],
4858                                 namesShort: ["आ","सो","म","बु","बि","शु","श"]
4859                         },
4860                         months: {
4861                                 names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""],
4862                                 namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""]
4863                         },
4864                         AM: ["विहानी","विहानी","विहानी"],
4865                         PM: ["बेलुकी","बेलुकी","बेलुकी"],
4866                         eras: [{"name":"a.d.","start":null,"offset":0}],
4867                         patterns: {
4868                                 Y: "MMMM,yyyy"
4869                         }
4870                 }
4871         }
4872 });
4873
4874 Globalize.addCultureInfo( "fy", "default", {
4875         name: "fy",
4876         englishName: "Frisian",
4877         nativeName: "Frysk",
4878         language: "fy",
4879         numberFormat: {
4880                 ",": ".",
4881                 ".": ",",
4882                 percent: {
4883                         ",": ".",
4884                         ".": ","
4885                 },
4886                 currency: {
4887                         pattern: ["$ -n","$ n"],
4888                         ",": ".",
4889                         ".": ",",
4890                         symbol: "€"
4891                 }
4892         },
4893         calendars: {
4894                 standard: {
4895                         "/": "-",
4896                         firstDay: 1,
4897                         days: {
4898                                 names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"],
4899                                 namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"],
4900                                 namesShort: ["S","M","T","W","T","F","S"]
4901                         },
4902                         months: {
4903                                 names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""],
4904                                 namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""]
4905                         },
4906                         AM: null,
4907                         PM: null,
4908                         patterns: {
4909                                 d: "d-M-yyyy",
4910                                 D: "dddd d MMMM yyyy",
4911                                 t: "H:mm",
4912                                 T: "H:mm:ss",
4913                                 f: "dddd d MMMM yyyy H:mm",
4914                                 F: "dddd d MMMM yyyy H:mm:ss",
4915                                 M: "dd MMMM",
4916                                 Y: "MMMM yyyy"
4917                         }
4918                 }
4919         }
4920 });
4921
4922 Globalize.addCultureInfo( "ps", "default", {
4923         name: "ps",
4924         englishName: "Pashto",
4925         nativeName: "پښتو",
4926         language: "ps",
4927         isRTL: true,
4928         numberFormat: {
4929                 pattern: ["n-"],
4930                 ",": "،",
4931                 ".": ",",
4932                 NaN: "غ ع",
4933                 negativeInfinity: "-∞",
4934                 positiveInfinity: "∞",
4935                 percent: {
4936                         pattern: ["%n-","%n"],
4937                         ",": "،",
4938                         ".": ","
4939                 },
4940                 currency: {
4941                         pattern: ["$n-","$n"],
4942                         ",": "٬",
4943                         ".": "٫",
4944                         symbol: "؋"
4945                 }
4946         },
4947         calendars: {
4948                 standard: {
4949                         name: "Hijri",
4950                         firstDay: 6,
4951                         days: {
4952                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
4953                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
4954                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
4955                         },
4956                         months: {
4957                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
4958                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
4959                         },
4960                         AM: ["غ.م","غ.م","غ.م"],
4961                         PM: ["غ.و","غ.و","غ.و"],
4962                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
4963                         twoDigitYearMax: 1451,
4964                         patterns: {
4965                                 d: "dd/MM/yy",
4966                                 D: "dd/MM/yyyy",
4967                                 f: "dd/MM/yyyy h:mm tt",
4968                                 F: "dd/MM/yyyy h:mm:ss tt",
4969                                 M: "dd MMMM"
4970                         },
4971                         convert: {
4972                     // Adapted to Script from System.Globalization.HijriCalendar
4973                     ticks1970: 62135596800000,
4974                     // number of days leading up to each month
4975                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
4976                     minDate: -42521673600000,
4977                     maxDate: 253402300799999,
4978                     // The number of days to add or subtract from the calendar to accommodate the variances
4979                     // in the start and the end of Ramadan and to accommodate the date difference between
4980                     // countries/regions. May be dynamically adjusted based on user preference, but should
4981                     // remain in the range of -2 to 2, inclusive.
4982                     hijriAdjustment: 0,
4983                     toGregorian: function(hyear, hmonth, hday) {
4984                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
4985                         // 86400000 = ticks per day
4986                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
4987                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
4988                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
4989                         // date in the current timezone.
4990                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
4991                         return gdate;
4992                     },
4993                     fromGregorian: function(gdate) {
4994                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
4995                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
4996                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
4997                         // very particular formula determined by someone smart, adapted from the server-side implementation.
4998                         // it approximates the hijri year.
4999                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
5000                             absDays = this.daysToYear(hyear),
5001                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
5002                         // hyear is just approximate, it may need adjustment up or down by 1.
5003                         if (daysSinceJan0101 < absDays) {
5004                             hyear--;
5005                             absDays -= daysInYear;
5006                         }
5007                         else if (daysSinceJan0101 === absDays) {
5008                             hyear--;
5009                             absDays = this.daysToYear(hyear);
5010                         }
5011                         else {
5012                             if (daysSinceJan0101 > (absDays + daysInYear)) {
5013                                 absDays += daysInYear;
5014                                 hyear++;
5015                             }
5016                         }
5017                         // determine month by looking at how many days into the hyear we are
5018                         // monthDays contains the number of days up to each month.
5019                         hmonth = 0;
5020                         var daysIntoYear = daysSinceJan0101 - absDays;
5021                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
5022                             hmonth++;
5023                         }
5024                         hmonth--;
5025                         hday = daysIntoYear - this.monthDays[hmonth];
5026                         return [hyear, hmonth, hday];
5027                     },
5028                     daysToYear: function(year) {
5029                         // calculates how many days since Jan 1, 0001
5030                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
5031                             yearsInto30 = year - yearsToYear30 - 1,
5032                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
5033                         while (yearsInto30 > 0) {
5034                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
5035                             yearsInto30--;
5036                         }
5037                         return days;
5038                     },
5039                     isLeapYear: function(year) {
5040                         return ((((year * 11) + 14) % 30) < 11);
5041                     }
5042                         }
5043                 },
5044                 Gregorian_Localized: {
5045                         firstDay: 6,
5046                         days: {
5047                                 names: ["یکشنبه","دوشنبه","سه‌شنبه","چارشنبه","پنجشنبه","جمعه","شنبه"],
5048                                 namesAbbr: ["یکشنبه","دوشنبه","سه‌شنبه","چارشنبه","پنجشنبه","جمعه","شنبه"],
5049                                 namesShort: ["ی","د","س","چ","پ","ج","ش"]
5050                         },
5051                         months: {
5052                                 names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""],
5053                                 namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""]
5054                         },
5055                         AM: ["غ.م","غ.م","غ.م"],
5056                         PM: ["غ.و","غ.و","غ.و"],
5057                         eras: [{"name":"ل.ه","start":null,"offset":0}],
5058                         patterns: {
5059                                 d: "yyyy/M/d",
5060                                 D: "yyyy, dd, MMMM, dddd",
5061                                 f: "yyyy, dd, MMMM, dddd h:mm tt",
5062                                 F: "yyyy, dd, MMMM, dddd h:mm:ss tt",
5063                                 M: "d MMMM",
5064                                 Y: "MMMM yyyy"
5065                         }
5066                 }
5067         }
5068 });
5069
5070 Globalize.addCultureInfo( "fil", "default", {
5071         name: "fil",
5072         englishName: "Filipino",
5073         nativeName: "Filipino",
5074         language: "fil",
5075         numberFormat: {
5076                 currency: {
5077                         symbol: "PhP"
5078                 }
5079         },
5080         calendars: {
5081                 standard: {
5082                         days: {
5083                                 names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"],
5084                                 namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"],
5085                                 namesShort: ["L","L","M","M","H","B","S"]
5086                         },
5087                         months: {
5088                                 names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""],
5089                                 namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""]
5090                         },
5091                         eras: [{"name":"Anno Domini","start":null,"offset":0}]
5092                 }
5093         }
5094 });
5095
5096 Globalize.addCultureInfo( "dv", "default", {
5097         name: "dv",
5098         englishName: "Divehi",
5099         nativeName: "ދިވެހިބަސް",
5100         language: "dv",
5101         isRTL: true,
5102         numberFormat: {
5103                 currency: {
5104                         pattern: ["n $-","n $"],
5105                         symbol: "ރ."
5106                 }
5107         },
5108         calendars: {
5109                 standard: {
5110                         name: "Hijri",
5111                         days: {
5112                                 names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],
5113                                 namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],
5114                                 namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"]
5115                         },
5116                         months: {
5117                                 names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""],
5118                                 namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""]
5119                         },
5120                         AM: ["މކ","މކ","މކ"],
5121                         PM: ["މފ","މފ","މފ"],
5122                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
5123                         twoDigitYearMax: 1451,
5124                         patterns: {
5125                                 d: "dd/MM/yy",
5126                                 D: "dd/MM/yyyy",
5127                                 t: "HH:mm",
5128                                 T: "HH:mm:ss",
5129                                 f: "dd/MM/yyyy HH:mm",
5130                                 F: "dd/MM/yyyy HH:mm:ss",
5131                                 M: "dd MMMM"
5132                         },
5133                         convert: {
5134                     // Adapted to Script from System.Globalization.HijriCalendar
5135                     ticks1970: 62135596800000,
5136                     // number of days leading up to each month
5137                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
5138                     minDate: -42521673600000,
5139                     maxDate: 253402300799999,
5140                     // The number of days to add or subtract from the calendar to accommodate the variances
5141                     // in the start and the end of Ramadan and to accommodate the date difference between
5142                     // countries/regions. May be dynamically adjusted based on user preference, but should
5143                     // remain in the range of -2 to 2, inclusive.
5144                     hijriAdjustment: 0,
5145                     toGregorian: function(hyear, hmonth, hday) {
5146                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
5147                         // 86400000 = ticks per day
5148                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
5149                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
5150                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
5151                         // date in the current timezone.
5152                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
5153                         return gdate;
5154                     },
5155                     fromGregorian: function(gdate) {
5156                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
5157                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
5158                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
5159                         // very particular formula determined by someone smart, adapted from the server-side implementation.
5160                         // it approximates the hijri year.
5161                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
5162                             absDays = this.daysToYear(hyear),
5163                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
5164                         // hyear is just approximate, it may need adjustment up or down by 1.
5165                         if (daysSinceJan0101 < absDays) {
5166                             hyear--;
5167                             absDays -= daysInYear;
5168                         }
5169                         else if (daysSinceJan0101 === absDays) {
5170                             hyear--;
5171                             absDays = this.daysToYear(hyear);
5172                         }
5173                         else {
5174                             if (daysSinceJan0101 > (absDays + daysInYear)) {
5175                                 absDays += daysInYear;
5176                                 hyear++;
5177                             }
5178                         }
5179                         // determine month by looking at how many days into the hyear we are
5180                         // monthDays contains the number of days up to each month.
5181                         hmonth = 0;
5182                         var daysIntoYear = daysSinceJan0101 - absDays;
5183                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
5184                             hmonth++;
5185                         }
5186                         hmonth--;
5187                         hday = daysIntoYear - this.monthDays[hmonth];
5188                         return [hyear, hmonth, hday];
5189                     },
5190                     daysToYear: function(year) {
5191                         // calculates how many days since Jan 1, 0001
5192                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
5193                             yearsInto30 = year - yearsToYear30 - 1,
5194                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
5195                         while (yearsInto30 > 0) {
5196                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
5197                             yearsInto30--;
5198                         }
5199                         return days;
5200                     },
5201                     isLeapYear: function(year) {
5202                         return ((((year * 11) + 14) % 30) < 11);
5203                     }
5204                         }
5205                 },
5206                 Gregorian_Localized: {
5207                         days: {
5208                                 names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],
5209                                 namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],
5210                                 namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"]
5211                         },
5212                         months: {
5213                                 names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""],
5214                                 namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""]
5215                         },
5216                         AM: ["މކ","މކ","މކ"],
5217                         PM: ["މފ","މފ","މފ"],
5218                         eras: [{"name":"މީލާދީ","start":null,"offset":0}],
5219                         patterns: {
5220                                 d: "dd/MM/yy",
5221                                 D: "ddd, yyyy MMMM dd",
5222                                 t: "HH:mm",
5223                                 T: "HH:mm:ss",
5224                                 f: "ddd, yyyy MMMM dd HH:mm",
5225                                 F: "ddd, yyyy MMMM dd HH:mm:ss",
5226                                 Y: "yyyy, MMMM"
5227                         }
5228                 }
5229         }
5230 });
5231
5232 Globalize.addCultureInfo( "ha", "default", {
5233         name: "ha",
5234         englishName: "Hausa",
5235         nativeName: "Hausa",
5236         language: "ha",
5237         numberFormat: {
5238                 currency: {
5239                         pattern: ["$-n","$ n"],
5240                         symbol: "N"
5241                 }
5242         },
5243         calendars: {
5244                 standard: {
5245                         days: {
5246                                 names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"],
5247                                 namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"],
5248                                 namesShort: ["L","L","T","L","A","J","A"]
5249                         },
5250                         months: {
5251                                 names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""],
5252                                 namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""]
5253                         },
5254                         AM: ["Safe","safe","SAFE"],
5255                         PM: ["Yamma","yamma","YAMMA"],
5256                         eras: [{"name":"AD","start":null,"offset":0}],
5257                         patterns: {
5258                                 d: "d/M/yyyy"
5259                         }
5260                 }
5261         }
5262 });
5263
5264 Globalize.addCultureInfo( "yo", "default", {
5265         name: "yo",
5266         englishName: "Yoruba",
5267         nativeName: "Yoruba",
5268         language: "yo",
5269         numberFormat: {
5270                 currency: {
5271                         pattern: ["$-n","$ n"],
5272                         symbol: "N"
5273                 }
5274         },
5275         calendars: {
5276                 standard: {
5277                         days: {
5278                                 names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"],
5279                                 namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"],
5280                                 namesShort: ["A","A","I","O","O","E","A"]
5281                         },
5282                         months: {
5283                                 names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""],
5284                                 namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""]
5285                         },
5286                         AM: ["Owuro","owuro","OWURO"],
5287                         PM: ["Ale","ale","ALE"],
5288                         eras: [{"name":"AD","start":null,"offset":0}],
5289                         patterns: {
5290                                 d: "d/M/yyyy"
5291                         }
5292                 }
5293         }
5294 });
5295
5296 Globalize.addCultureInfo( "quz", "default", {
5297         name: "quz",
5298         englishName: "Quechua",
5299         nativeName: "runasimi",
5300         language: "quz",
5301         numberFormat: {
5302                 ",": ".",
5303                 ".": ",",
5304                 percent: {
5305                         pattern: ["-%n","%n"],
5306                         ",": ".",
5307                         ".": ","
5308                 },
5309                 currency: {
5310                         pattern: ["($ n)","$ n"],
5311                         ",": ".",
5312                         ".": ",",
5313                         symbol: "$b"
5314                 }
5315         },
5316         calendars: {
5317                 standard: {
5318                         days: {
5319                                 names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"],
5320                                 namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"],
5321                                 namesShort: ["d","k","a","m","h","b","k"]
5322                         },
5323                         months: {
5324                                 names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""],
5325                                 namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""]
5326                         },
5327                         AM: ["a.m.","a.m.","A.M."],
5328                         PM: ["p.m.","p.m.","P.M."],
5329                         patterns: {
5330                                 d: "dd/MM/yyyy",
5331                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
5332                                 t: "hh:mm tt",
5333                                 T: "hh:mm:ss tt",
5334                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
5335                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
5336                                 Y: "MMMM' de 'yyyy"
5337                         }
5338                 }
5339         }
5340 });
5341
5342 Globalize.addCultureInfo( "nso", "default", {
5343         name: "nso",
5344         englishName: "Sesotho sa Leboa",
5345         nativeName: "Sesotho sa Leboa",
5346         language: "nso",
5347         numberFormat: {
5348                 percent: {
5349                         pattern: ["-%n","%n"]
5350                 },
5351                 currency: {
5352                         pattern: ["$-n","$ n"],
5353                         symbol: "R"
5354                 }
5355         },
5356         calendars: {
5357                 standard: {
5358                         days: {
5359                                 names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"],
5360                                 namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"],
5361                                 namesShort: ["L","M","L","L","L","L","M"]
5362                         },
5363                         months: {
5364                                 names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""],
5365                                 namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""]
5366                         },
5367                         patterns: {
5368                                 d: "yyyy/MM/dd",
5369                                 D: "dd MMMM yyyy",
5370                                 t: "hh:mm tt",
5371                                 T: "hh:mm:ss tt",
5372                                 f: "dd MMMM yyyy hh:mm tt",
5373                                 F: "dd MMMM yyyy hh:mm:ss tt",
5374                                 M: "dd MMMM",
5375                                 Y: "MMMM yyyy"
5376                         }
5377                 }
5378         }
5379 });
5380
5381 Globalize.addCultureInfo( "ba", "default", {
5382         name: "ba",
5383         englishName: "Bashkir",
5384         nativeName: "Башҡорт",
5385         language: "ba",
5386         numberFormat: {
5387                 ",": " ",
5388                 ".": ",",
5389                 groupSizes: [3,0],
5390                 negativeInfinity: "-бесконечность",
5391                 positiveInfinity: "бесконечность",
5392                 percent: {
5393                         pattern: ["-n%","n%"],
5394                         groupSizes: [3,0],
5395                         ",": " ",
5396                         ".": ","
5397                 },
5398                 currency: {
5399                         pattern: ["-n $","n $"],
5400                         groupSizes: [3,0],
5401                         ",": " ",
5402                         ".": ",",
5403                         symbol: "һ."
5404                 }
5405         },
5406         calendars: {
5407                 standard: {
5408                         "/": ".",
5409                         firstDay: 1,
5410                         days: {
5411                                 names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"],
5412                                 namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"],
5413                                 namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"]
5414                         },
5415                         months: {
5416                                 names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""],
5417                                 namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""]
5418                         },
5419                         AM: null,
5420                         PM: null,
5421                         patterns: {
5422                                 d: "dd.MM.yy",
5423                                 D: "d MMMM yyyy 'й'",
5424                                 t: "H:mm",
5425                                 T: "H:mm:ss",
5426                                 f: "d MMMM yyyy 'й' H:mm",
5427                                 F: "d MMMM yyyy 'й' H:mm:ss",
5428                                 Y: "MMMM yyyy"
5429                         }
5430                 }
5431         }
5432 });
5433
5434 Globalize.addCultureInfo( "lb", "default", {
5435         name: "lb",
5436         englishName: "Luxembourgish",
5437         nativeName: "Lëtzebuergesch",
5438         language: "lb",
5439         numberFormat: {
5440                 ",": " ",
5441                 ".": ",",
5442                 NaN: "n. num.",
5443                 negativeInfinity: "-onendlech",
5444                 positiveInfinity: "+onendlech",
5445                 percent: {
5446                         ",": " ",
5447                         ".": ","
5448                 },
5449                 currency: {
5450                         pattern: ["-n $","n $"],
5451                         ",": " ",
5452                         ".": ",",
5453                         symbol: "€"
5454                 }
5455         },
5456         calendars: {
5457                 standard: {
5458                         firstDay: 1,
5459                         days: {
5460                                 names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"],
5461                                 namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"],
5462                                 namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"]
5463                         },
5464                         months: {
5465                                 names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""],
5466                                 namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
5467                         },
5468                         AM: null,
5469                         PM: null,
5470                         eras: [{"name":"n. Chr","start":null,"offset":0}],
5471                         patterns: {
5472                                 d: "dd/MM/yyyy",
5473                                 D: "dddd d MMMM yyyy",
5474                                 t: "HH:mm",
5475                                 T: "HH:mm:ss",
5476                                 f: "dddd d MMMM yyyy HH:mm",
5477                                 F: "dddd d MMMM yyyy HH:mm:ss",
5478                                 M: "d MMMM",
5479                                 Y: "MMMM yyyy"
5480                         }
5481                 }
5482         }
5483 });
5484
5485 Globalize.addCultureInfo( "kl", "default", {
5486         name: "kl",
5487         englishName: "Greenlandic",
5488         nativeName: "kalaallisut",
5489         language: "kl",
5490         numberFormat: {
5491                 ",": ".",
5492                 ".": ",",
5493                 groupSizes: [3,0],
5494                 negativeInfinity: "-INF",
5495                 positiveInfinity: "INF",
5496                 percent: {
5497                         groupSizes: [3,0],
5498                         ",": ".",
5499                         ".": ","
5500                 },
5501                 currency: {
5502                         pattern: ["$ -n","$ n"],
5503                         groupSizes: [3,0],
5504                         ",": ".",
5505                         ".": ",",
5506                         symbol: "kr."
5507                 }
5508         },
5509         calendars: {
5510                 standard: {
5511                         "/": "-",
5512                         firstDay: 1,
5513                         days: {
5514                                 names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"],
5515                                 namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"],
5516                                 namesShort: ["sa","at","ma","pi","si","ta","ar"]
5517                         },
5518                         months: {
5519                                 names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""],
5520                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""]
5521                         },
5522                         AM: null,
5523                         PM: null,
5524                         patterns: {
5525                                 d: "dd-MM-yyyy",
5526                                 D: "d. MMMM yyyy",
5527                                 t: "HH:mm",
5528                                 T: "HH:mm:ss",
5529                                 f: "d. MMMM yyyy HH:mm",
5530                                 F: "d. MMMM yyyy HH:mm:ss",
5531                                 M: "d. MMMM",
5532                                 Y: "MMMM yyyy"
5533                         }
5534                 }
5535         }
5536 });
5537
5538 Globalize.addCultureInfo( "ig", "default", {
5539         name: "ig",
5540         englishName: "Igbo",
5541         nativeName: "Igbo",
5542         language: "ig",
5543         numberFormat: {
5544                 currency: {
5545                         pattern: ["$-n","$ n"],
5546                         symbol: "N"
5547                 }
5548         },
5549         calendars: {
5550                 standard: {
5551                         days: {
5552                                 names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"],
5553                                 namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"],
5554                                 namesShort: ["A","A","I","O","O","E","A"]
5555                         },
5556                         months: {
5557                                 names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""],
5558                                 namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""]
5559                         },
5560                         AM: ["Ututu","ututu","UTUTU"],
5561                         PM: ["Efifie","efifie","EFIFIE"],
5562                         eras: [{"name":"AD","start":null,"offset":0}],
5563                         patterns: {
5564                                 d: "d/M/yyyy"
5565                         }
5566                 }
5567         }
5568 });
5569
5570 Globalize.addCultureInfo( "ii", "default", {
5571         name: "ii",
5572         englishName: "Yi",
5573         nativeName: "ꆈꌠꁱꂷ",
5574         language: "ii",
5575         numberFormat: {
5576                 groupSizes: [3,0],
5577                 NaN: "ꌗꂷꀋꉬ",
5578                 negativeInfinity: "ꀄꊭꌐꀋꉆ",
5579                 positiveInfinity: "ꈤꇁꑖꀋꉬ",
5580                 percent: {
5581                         pattern: ["-n%","n%"],
5582                         groupSizes: [3,0]
5583                 },
5584                 currency: {
5585                         pattern: ["$-n","$n"],
5586                         symbol: "¥"
5587                 }
5588         },
5589         calendars: {
5590                 standard: {
5591                         firstDay: 1,
5592                         days: {
5593                                 names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"],
5594                                 namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"],
5595                                 namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"]
5596                         },
5597                         months: {
5598                                 names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""],
5599                                 namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""]
5600                         },
5601                         AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"],
5602                         PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"],
5603                         eras: [{"name":"ꇬꑼ","start":null,"offset":0}],
5604                         patterns: {
5605                                 d: "yyyy/M/d",
5606                                 D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'",
5607                                 t: "tt h:mm",
5608                                 T: "H:mm:ss",
5609                                 f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm",
5610                                 F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss",
5611                                 M: "M'ꆪ' d'ꑍ'",
5612                                 Y: "yyyy'ꈎ' M'ꆪ'"
5613                         }
5614                 }
5615         }
5616 });
5617
5618 Globalize.addCultureInfo( "arn", "default", {
5619         name: "arn",
5620         englishName: "Mapudungun",
5621         nativeName: "Mapudungun",
5622         language: "arn",
5623         numberFormat: {
5624                 ",": ".",
5625                 ".": ",",
5626                 NaN: "NeuN",
5627                 negativeInfinity: "-Infinito",
5628                 positiveInfinity: "Infinito",
5629                 percent: {
5630                         ",": ".",
5631                         ".": ","
5632                 },
5633                 currency: {
5634                         pattern: ["-$ n","$ n"],
5635                         ",": ".",
5636                         ".": ","
5637                 }
5638         },
5639         calendars: {
5640                 standard: {
5641                         "/": "-",
5642                         days: {
5643                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
5644                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
5645                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
5646                         },
5647                         months: {
5648                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
5649                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
5650                         },
5651                         AM: null,
5652                         PM: null,
5653                         eras: [{"name":"d.C.","start":null,"offset":0}],
5654                         patterns: {
5655                                 d: "dd-MM-yyyy",
5656                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
5657                                 t: "H:mm",
5658                                 T: "H:mm:ss",
5659                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
5660                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
5661                                 M: "dd MMMM",
5662                                 Y: "MMMM' de 'yyyy"
5663                         }
5664                 }
5665         }
5666 });
5667
5668 Globalize.addCultureInfo( "moh", "default", {
5669         name: "moh",
5670         englishName: "Mohawk",
5671         nativeName: "Kanien'kéha",
5672         language: "moh",
5673         numberFormat: {
5674                 groupSizes: [3,0],
5675                 percent: {
5676                         groupSizes: [3,0]
5677                 }
5678         },
5679         calendars: {
5680                 standard: {
5681                         days: {
5682                                 names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"],
5683                                 namesShort: ["S","M","T","W","T","F","S"]
5684                         },
5685                         months: {
5686                                 names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""]
5687                         }
5688                 }
5689         }
5690 });
5691
5692 Globalize.addCultureInfo( "br", "default", {
5693         name: "br",
5694         englishName: "Breton",
5695         nativeName: "brezhoneg",
5696         language: "br",
5697         numberFormat: {
5698                 ",": " ",
5699                 ".": ",",
5700                 NaN: "NkN",
5701                 negativeInfinity: "-Anfin",
5702                 positiveInfinity: "+Anfin",
5703                 percent: {
5704                         ",": " ",
5705                         ".": ","
5706                 },
5707                 currency: {
5708                         pattern: ["-n $","n $"],
5709                         ",": " ",
5710                         ".": ",",
5711                         symbol: "€"
5712                 }
5713         },
5714         calendars: {
5715                 standard: {
5716                         firstDay: 1,
5717                         days: {
5718                                 names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"],
5719                                 namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."],
5720                                 namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"]
5721                         },
5722                         months: {
5723                                 names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""],
5724                                 namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""]
5725                         },
5726                         AM: null,
5727                         PM: null,
5728                         eras: [{"name":"g. J.-K.","start":null,"offset":0}],
5729                         patterns: {
5730                                 d: "dd/MM/yyyy",
5731                                 D: "dddd d MMMM yyyy",
5732                                 t: "HH:mm",
5733                                 T: "HH:mm:ss",
5734                                 f: "dddd d MMMM yyyy HH:mm",
5735                                 F: "dddd d MMMM yyyy HH:mm:ss",
5736                                 M: "d MMMM",
5737                                 Y: "MMMM yyyy"
5738                         }
5739                 }
5740         }
5741 });
5742
5743 Globalize.addCultureInfo( "ug", "default", {
5744         name: "ug",
5745         englishName: "Uyghur",
5746         nativeName: "ئۇيغۇرچە",
5747         language: "ug",
5748         isRTL: true,
5749         numberFormat: {
5750                 NaN: "سان ئەمەس",
5751                 negativeInfinity: "مەنپىي چەكسىزلىك",
5752                 positiveInfinity: "مۇسبەت چەكسىزلىك",
5753                 percent: {
5754                         pattern: ["-n%","n%"]
5755                 },
5756                 currency: {
5757                         pattern: ["$-n","$n"],
5758                         symbol: "¥"
5759                 }
5760         },
5761         calendars: {
5762                 standard: {
5763                         "/": "-",
5764                         days: {
5765                                 names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"],
5766                                 namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"],
5767                                 namesShort: ["ي","د","س","چ","پ","ج","ش"]
5768                         },
5769                         months: {
5770                                 names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""],
5771                                 namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""]
5772                         },
5773                         AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"],
5774                         PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"],
5775                         eras: [{"name":"مىلادى","start":null,"offset":0}],
5776                         patterns: {
5777                                 d: "yyyy-M-d",
5778                                 D: "yyyy-'يىلى' MMMM d-'كۈنى،'",
5779                                 t: "H:mm",
5780                                 T: "H:mm:ss",
5781                                 f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm",
5782                                 F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss",
5783                                 M: "MMMM d'-كۈنى'",
5784                                 Y: "yyyy-'يىلى' MMMM"
5785                         }
5786                 }
5787         }
5788 });
5789
5790 Globalize.addCultureInfo( "mi", "default", {
5791         name: "mi",
5792         englishName: "Maori",
5793         nativeName: "Reo Māori",
5794         language: "mi",
5795         numberFormat: {
5796                 percent: {
5797                         pattern: ["-%n","%n"]
5798                 },
5799                 currency: {
5800                         pattern: ["-$n","$n"]
5801                 }
5802         },
5803         calendars: {
5804                 standard: {
5805                         firstDay: 1,
5806                         days: {
5807                                 names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"],
5808                                 namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"],
5809                                 namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"]
5810                         },
5811                         months: {
5812                                 names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""],
5813                                 namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""]
5814                         },
5815                         AM: ["a.m.","a.m.","A.M."],
5816                         PM: ["p.m.","p.m.","P.M."],
5817                         patterns: {
5818                                 d: "dd/MM/yyyy",
5819                                 D: "dddd, dd MMMM, yyyy",
5820                                 f: "dddd, dd MMMM, yyyy h:mm tt",
5821                                 F: "dddd, dd MMMM, yyyy h:mm:ss tt",
5822                                 M: "dd MMMM",
5823                                 Y: "MMMM, yy"
5824                         }
5825                 }
5826         }
5827 });
5828
5829 Globalize.addCultureInfo( "oc", "default", {
5830         name: "oc",
5831         englishName: "Occitan",
5832         nativeName: "Occitan",
5833         language: "oc",
5834         numberFormat: {
5835                 ",": " ",
5836                 ".": ",",
5837                 NaN: "Non Numeric",
5838                 negativeInfinity: "-Infinit",
5839                 positiveInfinity: "+Infinit",
5840                 percent: {
5841                         ",": " ",
5842                         ".": ","
5843                 },
5844                 currency: {
5845                         pattern: ["-n $","n $"],
5846                         ",": " ",
5847                         ".": ",",
5848                         symbol: "€"
5849                 }
5850         },
5851         calendars: {
5852                 standard: {
5853                         firstDay: 1,
5854                         days: {
5855                                 names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"],
5856                                 namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."],
5857                                 namesShort: ["di","lu","ma","mè","jò","ve","sa"]
5858                         },
5859                         months: {
5860                                 names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""],
5861                                 namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""]
5862                         },
5863                         monthsGenitive: {
5864                                 names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""],
5865                                 namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""]
5866                         },
5867                         AM: null,
5868                         PM: null,
5869                         eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}],
5870                         patterns: {
5871                                 d: "dd/MM/yyyy",
5872                                 D: "dddd,' lo 'd MMMM' de 'yyyy",
5873                                 t: "HH:mm",
5874                                 T: "HH:mm:ss",
5875                                 f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm",
5876                                 F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss",
5877                                 M: "d MMMM",
5878                                 Y: "MMMM yyyy"
5879                         }
5880                 }
5881         }
5882 });
5883
5884 Globalize.addCultureInfo( "co", "default", {
5885         name: "co",
5886         englishName: "Corsican",
5887         nativeName: "Corsu",
5888         language: "co",
5889         numberFormat: {
5890                 ",": " ",
5891                 ".": ",",
5892                 NaN: "Mica numericu",
5893                 negativeInfinity: "-Infinitu",
5894                 positiveInfinity: "+Infinitu",
5895                 percent: {
5896                         ",": " ",
5897                         ".": ","
5898                 },
5899                 currency: {
5900                         pattern: ["-n $","n $"],
5901                         ",": " ",
5902                         ".": ",",
5903                         symbol: "€"
5904                 }
5905         },
5906         calendars: {
5907                 standard: {
5908                         firstDay: 1,
5909                         days: {
5910                                 names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"],
5911                                 namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."],
5912                                 namesShort: ["du","lu","ma","me","gh","ve","sa"]
5913                         },
5914                         months: {
5915                                 names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""],
5916                                 namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""]
5917                         },
5918                         AM: null,
5919                         PM: null,
5920                         eras: [{"name":"dopu J-C","start":null,"offset":0}],
5921                         patterns: {
5922                                 d: "dd/MM/yyyy",
5923                                 D: "dddd d MMMM yyyy",
5924                                 t: "HH:mm",
5925                                 T: "HH:mm:ss",
5926                                 f: "dddd d MMMM yyyy HH:mm",
5927                                 F: "dddd d MMMM yyyy HH:mm:ss",
5928                                 M: "d MMMM",
5929                                 Y: "MMMM yyyy"
5930                         }
5931                 }
5932         }
5933 });
5934
5935 Globalize.addCultureInfo( "gsw", "default", {
5936         name: "gsw",
5937         englishName: "Alsatian",
5938         nativeName: "Elsässisch",
5939         language: "gsw",
5940         numberFormat: {
5941                 ",": " ",
5942                 ".": ",",
5943                 NaN: "Ohne Nummer",
5944                 negativeInfinity: "-Unendlich",
5945                 positiveInfinity: "+Unendlich",
5946                 percent: {
5947                         ",": " ",
5948                         ".": ","
5949                 },
5950                 currency: {
5951                         pattern: ["-n $","n $"],
5952                         ",": " ",
5953                         ".": ",",
5954                         symbol: "€"
5955                 }
5956         },
5957         calendars: {
5958                 standard: {
5959                         firstDay: 1,
5960                         days: {
5961                                 names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"],
5962                                 namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."],
5963                                 namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"]
5964                         },
5965                         months: {
5966                                 names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""],
5967                                 namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""]
5968                         },
5969                         AM: null,
5970                         PM: null,
5971                         eras: [{"name":"Vor J.-C.","start":null,"offset":0}],
5972                         patterns: {
5973                                 d: "dd/MM/yyyy",
5974                                 D: "dddd d MMMM yyyy",
5975                                 t: "HH:mm",
5976                                 T: "HH:mm:ss",
5977                                 f: "dddd d MMMM yyyy HH:mm",
5978                                 F: "dddd d MMMM yyyy HH:mm:ss",
5979                                 M: "d MMMM",
5980                                 Y: "MMMM yyyy"
5981                         }
5982                 }
5983         }
5984 });
5985
5986 Globalize.addCultureInfo( "sah", "default", {
5987         name: "sah",
5988         englishName: "Yakut",
5989         nativeName: "саха",
5990         language: "sah",
5991         numberFormat: {
5992                 ",": " ",
5993                 ".": ",",
5994                 NaN: "NAN",
5995                 negativeInfinity: "-бесконечность",
5996                 positiveInfinity: "бесконечность",
5997                 percent: {
5998                         pattern: ["-n%","n%"],
5999                         ",": " ",
6000                         ".": ","
6001                 },
6002                 currency: {
6003                         pattern: ["-n$","n$"],
6004                         ",": " ",
6005                         ".": ",",
6006                         symbol: "с."
6007                 }
6008         },
6009         calendars: {
6010                 standard: {
6011                         "/": ".",
6012                         firstDay: 1,
6013                         days: {
6014                                 names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"],
6015                                 namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"],
6016                                 namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"]
6017                         },
6018                         months: {
6019                                 names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""],
6020                                 namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""]
6021                         },
6022                         monthsGenitive: {
6023                                 names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""],
6024                                 namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""]
6025                         },
6026                         AM: null,
6027                         PM: null,
6028                         patterns: {
6029                                 d: "MM.dd.yyyy",
6030                                 D: "MMMM d yyyy 'с.'",
6031                                 t: "H:mm",
6032                                 T: "H:mm:ss",
6033                                 f: "MMMM d yyyy 'с.' H:mm",
6034                                 F: "MMMM d yyyy 'с.' H:mm:ss",
6035                                 Y: "MMMM yyyy 'с.'"
6036                         }
6037                 }
6038         }
6039 });
6040
6041 Globalize.addCultureInfo( "qut", "default", {
6042         name: "qut",
6043         englishName: "K'iche",
6044         nativeName: "K'iche",
6045         language: "qut",
6046         numberFormat: {
6047                 NaN: "NeuN",
6048                 negativeInfinity: "-Infinito",
6049                 positiveInfinity: "Infinito",
6050                 currency: {
6051                         symbol: "Q"
6052                 }
6053         },
6054         calendars: {
6055                 standard: {
6056                         days: {
6057                                 names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"],
6058                                 namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"],
6059                                 namesShort: ["ju","ka","ox","ka","jo","wa","wu"]
6060                         },
6061                         months: {
6062                                 names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""],
6063                                 namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""]
6064                         },
6065                         AM: ["a.m.","a.m.","A.M."],
6066                         PM: ["p.m.","p.m.","P.M."],
6067                         eras: [{"name":"d.C.","start":null,"offset":0}],
6068                         patterns: {
6069                                 d: "dd/MM/yyyy",
6070                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
6071                                 t: "hh:mm tt",
6072                                 T: "hh:mm:ss tt",
6073                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
6074                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
6075                                 M: "dd MMMM",
6076                                 Y: "MMMM' de 'yyyy"
6077                         }
6078                 }
6079         }
6080 });
6081
6082 Globalize.addCultureInfo( "rw", "default", {
6083         name: "rw",
6084         englishName: "Kinyarwanda",
6085         nativeName: "Kinyarwanda",
6086         language: "rw",
6087         numberFormat: {
6088                 ",": " ",
6089                 ".": ",",
6090                 percent: {
6091                         ",": " ",
6092                         ".": ","
6093                 },
6094                 currency: {
6095                         pattern: ["$-n","$ n"],
6096                         ",": " ",
6097                         ".": ",",
6098                         symbol: "RWF"
6099                 }
6100         },
6101         calendars: {
6102                 standard: {
6103                         days: {
6104                                 names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"],
6105                                 namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."],
6106                                 namesShort: ["mb","ka","ga","ka","ga","ga","cy"]
6107                         },
6108                         months: {
6109                                 names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""],
6110                                 namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""]
6111                         },
6112                         AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."],
6113                         PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."],
6114                         eras: [{"name":"AD","start":null,"offset":0}]
6115                 }
6116         }
6117 });
6118
6119 Globalize.addCultureInfo( "wo", "default", {
6120         name: "wo",
6121         englishName: "Wolof",
6122         nativeName: "Wolof",
6123         language: "wo",
6124         numberFormat: {
6125                 ",": " ",
6126                 ".": ",",
6127                 NaN: "Non Numérique",
6128                 negativeInfinity: "-Infini",
6129                 positiveInfinity: "+Infini",
6130                 percent: {
6131                         ",": " ",
6132                         ".": ","
6133                 },
6134                 currency: {
6135                         pattern: ["-n $","n $"],
6136                         ",": " ",
6137                         ".": ",",
6138                         symbol: "XOF"
6139                 }
6140         },
6141         calendars: {
6142                 standard: {
6143                         firstDay: 1,
6144                         days: {
6145                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
6146                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
6147                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
6148                         },
6149                         months: {
6150                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
6151                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
6152                         },
6153                         AM: null,
6154                         PM: null,
6155                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
6156                         patterns: {
6157                                 d: "dd/MM/yyyy",
6158                                 D: "dddd d MMMM yyyy",
6159                                 t: "HH:mm",
6160                                 T: "HH:mm:ss",
6161                                 f: "dddd d MMMM yyyy HH:mm",
6162                                 F: "dddd d MMMM yyyy HH:mm:ss",
6163                                 M: "d MMMM",
6164                                 Y: "MMMM yyyy"
6165                         }
6166                 }
6167         }
6168 });
6169
6170 Globalize.addCultureInfo( "prs", "default", {
6171         name: "prs",
6172         englishName: "Dari",
6173         nativeName: "درى",
6174         language: "prs",
6175         isRTL: true,
6176         numberFormat: {
6177                 pattern: ["n-"],
6178                 ",": ".",
6179                 ".": ",",
6180                 NaN: "غ ع",
6181                 negativeInfinity: "-∞",
6182                 positiveInfinity: "∞",
6183                 percent: {
6184                         pattern: ["%n-","%n"],
6185                         ",": ".",
6186                         ".": ","
6187                 },
6188                 currency: {
6189                         pattern: ["$n-","$n"],
6190                         symbol: "؋"
6191                 }
6192         },
6193         calendars: {
6194                 standard: {
6195                         name: "Hijri",
6196                         firstDay: 5,
6197                         days: {
6198                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6199                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6200                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
6201                         },
6202                         months: {
6203                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
6204                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
6205                         },
6206                         AM: ["غ.م","غ.م","غ.م"],
6207                         PM: ["غ.و","غ.و","غ.و"],
6208                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
6209                         twoDigitYearMax: 1451,
6210                         patterns: {
6211                                 d: "dd/MM/yy",
6212                                 D: "dd/MM/yyyy",
6213                                 f: "dd/MM/yyyy h:mm tt",
6214                                 F: "dd/MM/yyyy h:mm:ss tt",
6215                                 M: "dd MMMM"
6216                         },
6217                         convert: {
6218                     // Adapted to Script from System.Globalization.HijriCalendar
6219                     ticks1970: 62135596800000,
6220                     // number of days leading up to each month
6221                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
6222                     minDate: -42521673600000,
6223                     maxDate: 253402300799999,
6224                     // The number of days to add or subtract from the calendar to accommodate the variances
6225                     // in the start and the end of Ramadan and to accommodate the date difference between
6226                     // countries/regions. May be dynamically adjusted based on user preference, but should
6227                     // remain in the range of -2 to 2, inclusive.
6228                     hijriAdjustment: 0,
6229                     toGregorian: function(hyear, hmonth, hday) {
6230                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
6231                         // 86400000 = ticks per day
6232                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
6233                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
6234                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
6235                         // date in the current timezone.
6236                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
6237                         return gdate;
6238                     },
6239                     fromGregorian: function(gdate) {
6240                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
6241                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
6242                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
6243                         // very particular formula determined by someone smart, adapted from the server-side implementation.
6244                         // it approximates the hijri year.
6245                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
6246                             absDays = this.daysToYear(hyear),
6247                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
6248                         // hyear is just approximate, it may need adjustment up or down by 1.
6249                         if (daysSinceJan0101 < absDays) {
6250                             hyear--;
6251                             absDays -= daysInYear;
6252                         }
6253                         else if (daysSinceJan0101 === absDays) {
6254                             hyear--;
6255                             absDays = this.daysToYear(hyear);
6256                         }
6257                         else {
6258                             if (daysSinceJan0101 > (absDays + daysInYear)) {
6259                                 absDays += daysInYear;
6260                                 hyear++;
6261                             }
6262                         }
6263                         // determine month by looking at how many days into the hyear we are
6264                         // monthDays contains the number of days up to each month.
6265                         hmonth = 0;
6266                         var daysIntoYear = daysSinceJan0101 - absDays;
6267                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
6268                             hmonth++;
6269                         }
6270                         hmonth--;
6271                         hday = daysIntoYear - this.monthDays[hmonth];
6272                         return [hyear, hmonth, hday];
6273                     },
6274                     daysToYear: function(year) {
6275                         // calculates how many days since Jan 1, 0001
6276                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
6277                             yearsInto30 = year - yearsToYear30 - 1,
6278                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
6279                         while (yearsInto30 > 0) {
6280                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
6281                             yearsInto30--;
6282                         }
6283                         return days;
6284                     },
6285                     isLeapYear: function(year) {
6286                         return ((((year * 11) + 14) % 30) < 11);
6287                     }
6288                         }
6289                 },
6290                 Gregorian_Localized: {
6291                         firstDay: 5,
6292                         days: {
6293                                 names: ["یکشنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],
6294                                 namesAbbr: ["یکشنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],
6295                                 namesShort: ["ی","د","س","چ","پ","ج","ش"]
6296                         },
6297                         months: {
6298                                 names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""],
6299                                 namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""]
6300                         },
6301                         AM: ["غ.م","غ.م","غ.م"],
6302                         PM: ["غ.و","غ.و","غ.و"],
6303                         eras: [{"name":"ل.ه","start":null,"offset":0}],
6304                         patterns: {
6305                                 d: "yyyy/M/d",
6306                                 D: "yyyy, dd, MMMM, dddd",
6307                                 f: "yyyy, dd, MMMM, dddd h:mm tt",
6308                                 F: "yyyy, dd, MMMM, dddd h:mm:ss tt",
6309                                 M: "d MMMM",
6310                                 Y: "MMMM yyyy"
6311                         }
6312                 }
6313         }
6314 });
6315
6316 Globalize.addCultureInfo( "gd", "default", {
6317         name: "gd",
6318         englishName: "Scottish Gaelic",
6319         nativeName: "Gàidhlig",
6320         language: "gd",
6321         numberFormat: {
6322                 negativeInfinity: "-Neo-chrìochnachd",
6323                 positiveInfinity: "Neo-chrìochnachd",
6324                 currency: {
6325                         pattern: ["-$n","$n"],
6326                         symbol: "£"
6327                 }
6328         },
6329         calendars: {
6330                 standard: {
6331                         firstDay: 1,
6332                         days: {
6333                                 names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],
6334                                 namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"],
6335                                 namesShort: ["D","L","M","C","A","H","S"]
6336                         },
6337                         months: {
6338                                 names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""],
6339                                 namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""]
6340                         },
6341                         AM: ["m","m","M"],
6342                         PM: ["f","f","F"],
6343                         patterns: {
6344                                 d: "dd/MM/yyyy",
6345                                 D: "dd MMMM yyyy",
6346                                 t: "HH:mm",
6347                                 T: "HH:mm:ss",
6348                                 f: "dd MMMM yyyy HH:mm",
6349                                 F: "dd MMMM yyyy HH:mm:ss",
6350                                 M: "dd MMMM",
6351                                 Y: "MMMM yyyy"
6352                         }
6353                 }
6354         }
6355 });
6356
6357 Globalize.addCultureInfo( "ar-SA", "default", {
6358         name: "ar-SA",
6359         englishName: "Arabic (Saudi Arabia)",
6360         nativeName: "العربية (المملكة العربية السعودية)",
6361         language: "ar",
6362         isRTL: true,
6363         numberFormat: {
6364                 pattern: ["n-"],
6365                 NaN: "ليس برقم",
6366                 negativeInfinity: "-لا نهاية",
6367                 positiveInfinity: "+لا نهاية",
6368                 currency: {
6369                         pattern: ["$n-","$ n"],
6370                         symbol: "ر.س.‏"
6371                 }
6372         },
6373         calendars: {
6374                 standard: {
6375                         name: "UmAlQura",
6376                         firstDay: 6,
6377                         days: {
6378                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6379                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6380                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
6381                         },
6382                         months: {
6383                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
6384                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
6385                         },
6386                         AM: ["ص","ص","ص"],
6387                         PM: ["م","م","م"],
6388                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
6389                         twoDigitYearMax: 1451,
6390                         patterns: {
6391                                 d: "dd/MM/yy",
6392                                 D: "dd/MMMM/yyyy",
6393                                 t: "hh:mm tt",
6394                                 T: "hh:mm:ss tt",
6395                                 f: "dd/MMMM/yyyy hh:mm tt",
6396                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
6397                                 M: "dd MMMM"
6398                         },
6399                         convert: {
6400                     _yearInfo: [
6401                         // MonthLengthFlags, Gregorian Date
6402                         [746, -2198707200000],
6403                         [1769, -2168121600000],
6404                         [3794, -2137449600000],
6405                         [3748, -2106777600000],
6406                         [3402, -2076192000000],
6407                         [2710, -2045606400000],
6408                         [1334, -2015020800000],
6409                         [2741, -1984435200000],
6410                         [3498, -1953763200000],
6411                         [2980, -1923091200000],
6412                         [2889, -1892505600000],
6413                         [2707, -1861920000000],
6414                         [1323, -1831334400000],
6415                         [2647, -1800748800000],
6416                         [1206, -1770076800000],
6417                         [2741, -1739491200000],
6418                         [1450, -1708819200000],
6419                         [3413, -1678233600000],
6420                         [3370, -1647561600000],
6421                         [2646, -1616976000000],
6422                         [1198, -1586390400000],
6423                         [2397, -1555804800000],
6424                         [748, -1525132800000],
6425                         [1749, -1494547200000],
6426                         [1706, -1463875200000],
6427                         [1365, -1433289600000],
6428                         [1195, -1402704000000],
6429                         [2395, -1372118400000],
6430                         [698, -1341446400000],
6431                         [1397, -1310860800000],
6432                         [2994, -1280188800000],
6433                         [1892, -1249516800000],
6434                         [1865, -1218931200000],
6435                         [1621, -1188345600000],
6436                         [683, -1157760000000],
6437                         [1371, -1127174400000],
6438                         [2778, -1096502400000],
6439                         [1748, -1065830400000],
6440                         [3785, -1035244800000],
6441                         [3474, -1004572800000],
6442                         [3365, -973987200000],
6443                         [2637, -943401600000],
6444                         [685, -912816000000],
6445                         [1389, -882230400000],
6446                         [2922, -851558400000],
6447                         [2898, -820886400000],
6448                         [2725, -790300800000],
6449                         [2635, -759715200000],
6450                         [1175, -729129600000],
6451                         [2359, -698544000000],
6452                         [694, -667872000000],
6453                         [1397, -637286400000],
6454                         [3434, -606614400000],
6455                         [3410, -575942400000],
6456                         [2710, -545356800000],
6457                         [2349, -514771200000],
6458                         [605, -484185600000],
6459                         [1245, -453600000000],
6460                         [2778, -422928000000],
6461                         [1492, -392256000000],
6462                         [3497, -361670400000],
6463                         [3410, -330998400000],
6464                         [2730, -300412800000],
6465                         [1238, -269827200000],
6466                         [2486, -239241600000],
6467                         [884, -208569600000],
6468                         [1897, -177984000000],
6469                         [1874, -147312000000],
6470                         [1701, -116726400000],
6471                         [1355, -86140800000],
6472                         [2731, -55555200000],
6473                         [1370, -24883200000],
6474                         [2773, 5702400000],
6475                         [3538, 36374400000],
6476                         [3492, 67046400000],
6477                         [3401, 97632000000],
6478                         [2709, 128217600000],
6479                         [1325, 158803200000],
6480                         [2653, 189388800000],
6481                         [1370, 220060800000],
6482                         [2773, 250646400000],
6483                         [1706, 281318400000],
6484                         [1685, 311904000000],
6485                         [1323, 342489600000],
6486                         [2647, 373075200000],
6487                         [1198, 403747200000],
6488                         [2422, 434332800000],
6489                         [1388, 465004800000],
6490                         [2901, 495590400000],
6491                         [2730, 526262400000],
6492                         [2645, 556848000000],
6493                         [1197, 587433600000],
6494                         [2397, 618019200000],
6495                         [730, 648691200000],
6496                         [1497, 679276800000],
6497                         [3506, 709948800000],
6498                         [2980, 740620800000],
6499                         [2890, 771206400000],
6500                         [2645, 801792000000],
6501                         [693, 832377600000],
6502                         [1397, 862963200000],
6503                         [2922, 893635200000],
6504                         [3026, 924307200000],
6505                         [3012, 954979200000],
6506                         [2953, 985564800000],
6507                         [2709, 1016150400000],
6508                         [1325, 1046736000000],
6509                         [1453, 1077321600000],
6510                         [2922, 1107993600000],
6511                         [1748, 1138665600000],
6512                         [3529, 1169251200000],
6513                         [3474, 1199923200000],
6514                         [2726, 1230508800000],
6515                         [2390, 1261094400000],
6516                         [686, 1291680000000],
6517                         [1389, 1322265600000],
6518                         [874, 1352937600000],
6519                         [2901, 1383523200000],
6520                         [2730, 1414195200000],
6521                         [2381, 1444780800000],
6522                         [1181, 1475366400000],
6523                         [2397, 1505952000000],
6524                         [698, 1536624000000],
6525                         [1461, 1567209600000],
6526                         [1450, 1597881600000],
6527                         [3413, 1628467200000],
6528                         [2714, 1659139200000],
6529                         [2350, 1689724800000],
6530                         [622, 1720310400000],
6531                         [1373, 1750896000000],
6532                         [2778, 1781568000000],
6533                         [1748, 1812240000000],
6534                         [1701, 1842825600000],
6535                         [0, 1873411200000]
6536                     ],
6537                     minDate: -2198707200000,
6538                     maxDate: 1873411199999,
6539                     toGregorian: function(hyear, hmonth, hday) {
6540                         var days = hday - 1,
6541                             gyear = hyear - 1318;
6542                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
6543                         var info = this._yearInfo[gyear],
6544                             gdate = new Date(info[1]),
6545                             monthLength = info[0];
6546                         // Date's ticks in javascript are always from the GMT time,
6547                         // but we are interested in the gregorian date in the same timezone,
6548                         // not what the gregorian date was at GMT time, so we adjust for the offset.
6549                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
6550                         for (var i = 0; i < hmonth; i++) {
6551                             days += 29 + (monthLength & 1);
6552                             monthLength = monthLength >> 1;
6553                         }
6554                         gdate.setDate(gdate.getDate() + days);
6555                         return gdate;
6556                     },
6557                     fromGregorian: function(gdate) {
6558                         // Date's ticks in javascript are always from the GMT time,
6559                         // but we are interested in the hijri date in the same timezone,
6560                         // not what the hijri date was at GMT time, so we adjust for the offset.
6561                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
6562                         if (ticks < this.minDate || ticks > this.maxDate) return null;
6563                         var hyear = 0,
6564                             hmonth = 1;
6565                         // find the earliest gregorian date in the array that is greater than or equal to the given date
6566                         while (ticks > this._yearInfo[++hyear][1]) { }
6567                         if (ticks !== this._yearInfo[hyear][1]) {
6568                             hyear--;
6569                         }
6570                         var info = this._yearInfo[hyear],
6571                             // how many days has it been since the date we found in the array?
6572                             // 86400000 = ticks per day
6573                             days = Math.floor((ticks - info[1]) / 86400000),
6574                             monthLength = info[0];
6575                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
6576                         // now increment day/month based on the total days, considering
6577                         // how many days are in each month. We cannot run past the year
6578                         // mark since we would have found a different array entry in that case.
6579                         var daysInMonth = 29 + (monthLength & 1);
6580                         while (days >= daysInMonth) {
6581                             days -= daysInMonth;
6582                             monthLength = monthLength >> 1;
6583                             daysInMonth = 29 + (monthLength & 1);
6584                             hmonth++;
6585                         }
6586                         // remaining days is less than is in one month, thus is the day of the month we landed on
6587                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
6588                         return [hyear, hmonth - 1, days + 1];
6589                     }
6590                         }
6591                 },
6592                 Hijri: {
6593                         name: "Hijri",
6594                         firstDay: 6,
6595                         days: {
6596                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6597                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6598                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
6599                         },
6600                         months: {
6601                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
6602                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
6603                         },
6604                         AM: ["ص","ص","ص"],
6605                         PM: ["م","م","م"],
6606                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
6607                         twoDigitYearMax: 1451,
6608                         patterns: {
6609                                 d: "dd/MM/yy",
6610                                 D: "dd/MM/yyyy",
6611                                 t: "hh:mm tt",
6612                                 T: "hh:mm:ss tt",
6613                                 f: "dd/MM/yyyy hh:mm tt",
6614                                 F: "dd/MM/yyyy hh:mm:ss tt",
6615                                 M: "dd MMMM"
6616                         },
6617                         convert: {
6618                     // Adapted to Script from System.Globalization.HijriCalendar
6619                     ticks1970: 62135596800000,
6620                     // number of days leading up to each month
6621                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
6622                     minDate: -42521673600000,
6623                     maxDate: 253402300799999,
6624                     // The number of days to add or subtract from the calendar to accommodate the variances
6625                     // in the start and the end of Ramadan and to accommodate the date difference between
6626                     // countries/regions. May be dynamically adjusted based on user preference, but should
6627                     // remain in the range of -2 to 2, inclusive.
6628                     hijriAdjustment: 0,
6629                     toGregorian: function(hyear, hmonth, hday) {
6630                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
6631                         // 86400000 = ticks per day
6632                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
6633                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
6634                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
6635                         // date in the current timezone.
6636                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
6637                         return gdate;
6638                     },
6639                     fromGregorian: function(gdate) {
6640                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
6641                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
6642                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
6643                         // very particular formula determined by someone smart, adapted from the server-side implementation.
6644                         // it approximates the hijri year.
6645                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
6646                             absDays = this.daysToYear(hyear),
6647                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
6648                         // hyear is just approximate, it may need adjustment up or down by 1.
6649                         if (daysSinceJan0101 < absDays) {
6650                             hyear--;
6651                             absDays -= daysInYear;
6652                         }
6653                         else if (daysSinceJan0101 === absDays) {
6654                             hyear--;
6655                             absDays = this.daysToYear(hyear);
6656                         }
6657                         else {
6658                             if (daysSinceJan0101 > (absDays + daysInYear)) {
6659                                 absDays += daysInYear;
6660                                 hyear++;
6661                             }
6662                         }
6663                         // determine month by looking at how many days into the hyear we are
6664                         // monthDays contains the number of days up to each month.
6665                         hmonth = 0;
6666                         var daysIntoYear = daysSinceJan0101 - absDays;
6667                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
6668                             hmonth++;
6669                         }
6670                         hmonth--;
6671                         hday = daysIntoYear - this.monthDays[hmonth];
6672                         return [hyear, hmonth, hday];
6673                     },
6674                     daysToYear: function(year) {
6675                         // calculates how many days since Jan 1, 0001
6676                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
6677                             yearsInto30 = year - yearsToYear30 - 1,
6678                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
6679                         while (yearsInto30 > 0) {
6680                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
6681                             yearsInto30--;
6682                         }
6683                         return days;
6684                     },
6685                     isLeapYear: function(year) {
6686                         return ((((year * 11) + 14) % 30) < 11);
6687                     }
6688                         }
6689                 },
6690                 Gregorian_MiddleEastFrench: {
6691                         name: "Gregorian_MiddleEastFrench",
6692                         firstDay: 6,
6693                         days: {
6694                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
6695                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
6696                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
6697                         },
6698                         months: {
6699                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
6700                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
6701                         },
6702                         AM: ["ص","ص","ص"],
6703                         PM: ["م","م","م"],
6704                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
6705                         patterns: {
6706                                 d: "MM/dd/yyyy",
6707                                 t: "hh:mm tt",
6708                                 T: "hh:mm:ss tt",
6709                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
6710                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
6711                                 M: "dd MMMM"
6712                         }
6713                 },
6714                 Gregorian_Arabic: {
6715                         name: "Gregorian_Arabic",
6716                         firstDay: 6,
6717                         days: {
6718                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6719                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6720                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
6721                         },
6722                         months: {
6723                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
6724                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
6725                         },
6726                         AM: ["ص","ص","ص"],
6727                         PM: ["م","م","م"],
6728                         eras: [{"name":"م","start":null,"offset":0}],
6729                         patterns: {
6730                                 d: "MM/dd/yyyy",
6731                                 t: "hh:mm tt",
6732                                 T: "hh:mm:ss tt",
6733                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
6734                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
6735                         }
6736                 },
6737                 Gregorian_Localized: {
6738                         firstDay: 6,
6739                         days: {
6740                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6741                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6742                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
6743                         },
6744                         months: {
6745                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
6746                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
6747                         },
6748                         AM: ["ص","ص","ص"],
6749                         PM: ["م","م","م"],
6750                         patterns: {
6751                                 d: "dd/MM/yyyy",
6752                                 D: "dd MMMM, yyyy",
6753                                 t: "hh:mm tt",
6754                                 T: "hh:mm:ss tt",
6755                                 f: "dd MMMM, yyyy hh:mm tt",
6756                                 F: "dd MMMM, yyyy hh:mm:ss tt",
6757                                 M: "dd MMMM"
6758                         }
6759                 },
6760                 Gregorian_TransliteratedFrench: {
6761                         name: "Gregorian_TransliteratedFrench",
6762                         firstDay: 6,
6763                         days: {
6764                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6765                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
6766                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
6767                         },
6768                         months: {
6769                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
6770                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
6771                         },
6772                         AM: ["ص","ص","ص"],
6773                         PM: ["م","م","م"],
6774                         eras: [{"name":"م","start":null,"offset":0}],
6775                         patterns: {
6776                                 d: "MM/dd/yyyy",
6777                                 t: "hh:mm tt",
6778                                 T: "hh:mm:ss tt",
6779                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
6780                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
6781                         }
6782                 }
6783         }
6784 });
6785
6786 Globalize.addCultureInfo( "bg-BG", "default", {
6787         name: "bg-BG",
6788         englishName: "Bulgarian (Bulgaria)",
6789         nativeName: "български (България)",
6790         language: "bg",
6791         numberFormat: {
6792                 ",": " ",
6793                 ".": ",",
6794                 negativeInfinity: "- безкрайност",
6795                 positiveInfinity: "+ безкрайност",
6796                 percent: {
6797                         ",": " ",
6798                         ".": ","
6799                 },
6800                 currency: {
6801                         pattern: ["-n $","n $"],
6802                         ",": " ",
6803                         ".": ",",
6804                         symbol: "лв."
6805                 }
6806         },
6807         calendars: {
6808                 standard: {
6809                         "/": ".",
6810                         firstDay: 1,
6811                         days: {
6812                                 names: ["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"],
6813                                 namesAbbr: ["нед","пон","вт","ср","четв","пет","съб"],
6814                                 namesShort: ["н","п","в","с","ч","п","с"]
6815                         },
6816                         months: {
6817                                 names: ["януари","февруари","март","април","май","юни","юли","август","септември","октомври","ноември","декември",""],
6818                                 namesAbbr: ["ян","февр","март","апр","май","юни","юли","авг","септ","окт","ноември","дек",""]
6819                         },
6820                         AM: null,
6821                         PM: null,
6822                         eras: [{"name":"след новата ера","start":null,"offset":0}],
6823                         patterns: {
6824                                 d: "d.M.yyyy 'г.'",
6825                                 D: "dd MMMM yyyy 'г.'",
6826                                 t: "HH:mm 'ч.'",
6827                                 T: "HH:mm:ss 'ч.'",
6828                                 f: "dd MMMM yyyy 'г.' HH:mm 'ч.'",
6829                                 F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'",
6830                                 M: "dd MMMM",
6831                                 Y: "MMMM yyyy 'г.'"
6832                         }
6833                 }
6834         }
6835 });
6836
6837 Globalize.addCultureInfo( "ca-ES", "default", {
6838         name: "ca-ES",
6839         englishName: "Catalan (Catalan)",
6840         nativeName: "català (català)",
6841         language: "ca",
6842         numberFormat: {
6843                 ",": ".",
6844                 ".": ",",
6845                 NaN: "NeuN",
6846                 negativeInfinity: "-Infinit",
6847                 positiveInfinity: "Infinit",
6848                 percent: {
6849                         ",": ".",
6850                         ".": ","
6851                 },
6852                 currency: {
6853                         pattern: ["-n $","n $"],
6854                         ",": ".",
6855                         ".": ",",
6856                         symbol: "€"
6857                 }
6858         },
6859         calendars: {
6860                 standard: {
6861                         firstDay: 1,
6862                         days: {
6863                                 names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],
6864                                 namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."],
6865                                 namesShort: ["dg","dl","dt","dc","dj","dv","ds"]
6866                         },
6867                         months: {
6868                                 names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""],
6869                                 namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""]
6870                         },
6871                         AM: null,
6872                         PM: null,
6873                         eras: [{"name":"d.C.","start":null,"offset":0}],
6874                         patterns: {
6875                                 d: "dd/MM/yyyy",
6876                                 D: "dddd, d' / 'MMMM' / 'yyyy",
6877                                 t: "HH:mm",
6878                                 T: "HH:mm:ss",
6879                                 f: "dddd, d' / 'MMMM' / 'yyyy HH:mm",
6880                                 F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss",
6881                                 M: "dd MMMM",
6882                                 Y: "MMMM' / 'yyyy"
6883                         }
6884                 }
6885         }
6886 });
6887
6888 Globalize.addCultureInfo( "zh-TW", "default", {
6889         name: "zh-TW",
6890         englishName: "Chinese (Traditional, Taiwan)",
6891         nativeName: "中文(台灣)",
6892         language: "zh-CHT",
6893         numberFormat: {
6894                 NaN: "不是一個數字",
6895                 negativeInfinity: "負無窮大",
6896                 positiveInfinity: "正無窮大",
6897                 percent: {
6898                         pattern: ["-n%","n%"]
6899                 },
6900                 currency: {
6901                         pattern: ["-$n","$n"],
6902                         symbol: "NT$"
6903                 }
6904         },
6905         calendars: {
6906                 standard: {
6907                         days: {
6908                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
6909                                 namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"],
6910                                 namesShort: ["日","一","二","三","四","五","六"]
6911                         },
6912                         months: {
6913                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
6914                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
6915                         },
6916                         AM: ["上午","上午","上午"],
6917                         PM: ["下午","下午","下午"],
6918                         eras: [{"name":"西元","start":null,"offset":0}],
6919                         patterns: {
6920                                 d: "yyyy/M/d",
6921                                 D: "yyyy'年'M'月'd'日'",
6922                                 t: "tt hh:mm",
6923                                 T: "tt hh:mm:ss",
6924                                 f: "yyyy'年'M'月'd'日' tt hh:mm",
6925                                 F: "yyyy'年'M'月'd'日' tt hh:mm:ss",
6926                                 M: "M'月'd'日'",
6927                                 Y: "yyyy'年'M'月'"
6928                         }
6929                 },
6930                 Taiwan: {
6931                         name: "Taiwan",
6932                         days: {
6933                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
6934                                 namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"],
6935                                 namesShort: ["日","一","二","三","四","五","六"]
6936                         },
6937                         months: {
6938                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
6939                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
6940                         },
6941                         AM: ["上午","上午","上午"],
6942                         PM: ["下午","下午","下午"],
6943                         eras: [{"name":"","start":null,"offset":1911}],
6944                         twoDigitYearMax: 99,
6945                         patterns: {
6946                                 d: "yyyy/M/d",
6947                                 D: "yyyy'年'M'月'd'日'",
6948                                 t: "tt hh:mm",
6949                                 T: "tt hh:mm:ss",
6950                                 f: "yyyy'年'M'月'd'日' tt hh:mm",
6951                                 F: "yyyy'年'M'月'd'日' tt hh:mm:ss",
6952                                 M: "M'月'd'日'",
6953                                 Y: "yyyy'年'M'月'"
6954                         }
6955                 }
6956         }
6957 });
6958
6959 Globalize.addCultureInfo( "cs-CZ", "default", {
6960         name: "cs-CZ",
6961         englishName: "Czech (Czech Republic)",
6962         nativeName: "čeština (Česká republika)",
6963         language: "cs",
6964         numberFormat: {
6965                 ",": " ",
6966                 ".": ",",
6967                 NaN: "Není číslo",
6968                 negativeInfinity: "-nekonečno",
6969                 positiveInfinity: "+nekonečno",
6970                 percent: {
6971                         pattern: ["-n%","n%"],
6972                         ",": " ",
6973                         ".": ","
6974                 },
6975                 currency: {
6976                         pattern: ["-n $","n $"],
6977                         ",": " ",
6978                         ".": ",",
6979                         symbol: "Kč"
6980                 }
6981         },
6982         calendars: {
6983                 standard: {
6984                         "/": ".",
6985                         firstDay: 1,
6986                         days: {
6987                                 names: ["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],
6988                                 namesAbbr: ["ne","po","út","st","čt","pá","so"],
6989                                 namesShort: ["ne","po","út","st","čt","pá","so"]
6990                         },
6991                         months: {
6992                                 names: ["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""],
6993                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
6994                         },
6995                         monthsGenitive: {
6996                                 names: ["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""],
6997                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
6998                         },
6999                         AM: ["dop.","dop.","DOP."],
7000                         PM: ["odp.","odp.","ODP."],
7001                         eras: [{"name":"n. l.","start":null,"offset":0}],
7002                         patterns: {
7003                                 d: "d.M.yyyy",
7004                                 D: "d. MMMM yyyy",
7005                                 t: "H:mm",
7006                                 T: "H:mm:ss",
7007                                 f: "d. MMMM yyyy H:mm",
7008                                 F: "d. MMMM yyyy H:mm:ss",
7009                                 M: "dd MMMM",
7010                                 Y: "MMMM yyyy"
7011                         }
7012                 }
7013         }
7014 });
7015
7016 Globalize.addCultureInfo( "da-DK", "default", {
7017         name: "da-DK",
7018         englishName: "Danish (Denmark)",
7019         nativeName: "dansk (Danmark)",
7020         language: "da",
7021         numberFormat: {
7022                 ",": ".",
7023                 ".": ",",
7024                 negativeInfinity: "-INF",
7025                 positiveInfinity: "INF",
7026                 percent: {
7027                         ",": ".",
7028                         ".": ","
7029                 },
7030                 currency: {
7031                         pattern: ["$ -n","$ n"],
7032                         ",": ".",
7033                         ".": ",",
7034                         symbol: "kr."
7035                 }
7036         },
7037         calendars: {
7038                 standard: {
7039                         "/": "-",
7040                         firstDay: 1,
7041                         days: {
7042                                 names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],
7043                                 namesAbbr: ["sø","ma","ti","on","to","fr","lø"],
7044                                 namesShort: ["sø","ma","ti","on","to","fr","lø"]
7045                         },
7046                         months: {
7047                                 names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""],
7048                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""]
7049                         },
7050                         AM: null,
7051                         PM: null,
7052                         patterns: {
7053                                 d: "dd-MM-yyyy",
7054                                 D: "d. MMMM yyyy",
7055                                 t: "HH:mm",
7056                                 T: "HH:mm:ss",
7057                                 f: "d. MMMM yyyy HH:mm",
7058                                 F: "d. MMMM yyyy HH:mm:ss",
7059                                 M: "d. MMMM",
7060                                 Y: "MMMM yyyy"
7061                         }
7062                 }
7063         }
7064 });
7065
7066 Globalize.addCultureInfo( "de-DE", "default", {
7067         name: "de-DE",
7068         englishName: "German (Germany)",
7069         nativeName: "Deutsch (Deutschland)",
7070         language: "de",
7071         numberFormat: {
7072                 ",": ".",
7073                 ".": ",",
7074                 NaN: "n. def.",
7075                 negativeInfinity: "-unendlich",
7076                 positiveInfinity: "+unendlich",
7077                 percent: {
7078                         pattern: ["-n%","n%"],
7079                         ",": ".",
7080                         ".": ","
7081                 },
7082                 currency: {
7083                         pattern: ["-n $","n $"],
7084                         ",": ".",
7085                         ".": ",",
7086                         symbol: "€"
7087                 }
7088         },
7089         calendars: {
7090                 standard: {
7091                         "/": ".",
7092                         firstDay: 1,
7093                         days: {
7094                                 names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],
7095                                 namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"],
7096                                 namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"]
7097                         },
7098                         months: {
7099                                 names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],
7100                                 namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
7101                         },
7102                         AM: null,
7103                         PM: null,
7104                         eras: [{"name":"n. Chr.","start":null,"offset":0}],
7105                         patterns: {
7106                                 d: "dd.MM.yyyy",
7107                                 D: "dddd, d. MMMM yyyy",
7108                                 t: "HH:mm",
7109                                 T: "HH:mm:ss",
7110                                 f: "dddd, d. MMMM yyyy HH:mm",
7111                                 F: "dddd, d. MMMM yyyy HH:mm:ss",
7112                                 M: "dd MMMM",
7113                                 Y: "MMMM yyyy"
7114                         }
7115                 }
7116         }
7117 });
7118
7119 Globalize.addCultureInfo( "el-GR", "default", {
7120         name: "el-GR",
7121         englishName: "Greek (Greece)",
7122         nativeName: "Ελληνικά (Ελλάδα)",
7123         language: "el",
7124         numberFormat: {
7125                 ",": ".",
7126                 ".": ",",
7127                 NaN: "μη αριθμός",
7128                 negativeInfinity: "-Άπειρο",
7129                 positiveInfinity: "Άπειρο",
7130                 percent: {
7131                         pattern: ["-n%","n%"],
7132                         ",": ".",
7133                         ".": ","
7134                 },
7135                 currency: {
7136                         pattern: ["-n $","n $"],
7137                         ",": ".",
7138                         ".": ",",
7139                         symbol: "€"
7140                 }
7141         },
7142         calendars: {
7143                 standard: {
7144                         firstDay: 1,
7145                         days: {
7146                                 names: ["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],
7147                                 namesAbbr: ["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"],
7148                                 namesShort: ["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"]
7149                         },
7150                         months: {
7151                                 names: ["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""],
7152                                 namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""]
7153                         },
7154                         monthsGenitive: {
7155                                 names: ["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""],
7156                                 namesAbbr: ["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""]
7157                         },
7158                         AM: ["πμ","πμ","ΠΜ"],
7159                         PM: ["μμ","μμ","ΜΜ"],
7160                         eras: [{"name":"μ.Χ.","start":null,"offset":0}],
7161                         patterns: {
7162                                 d: "d/M/yyyy",
7163                                 D: "dddd, d MMMM yyyy",
7164                                 f: "dddd, d MMMM yyyy h:mm tt",
7165                                 F: "dddd, d MMMM yyyy h:mm:ss tt",
7166                                 M: "dd MMMM",
7167                                 Y: "MMMM yyyy"
7168                         }
7169                 }
7170         }
7171 });
7172
7173 Globalize.addCultureInfo( "en-US", "default", {
7174         name: "en-US",
7175         englishName: "English (United States)"
7176 });
7177
7178 Globalize.addCultureInfo( "fi-FI", "default", {
7179         name: "fi-FI",
7180         englishName: "Finnish (Finland)",
7181         nativeName: "suomi (Suomi)",
7182         language: "fi",
7183         numberFormat: {
7184                 ",": " ",
7185                 ".": ",",
7186                 negativeInfinity: "-INF",
7187                 positiveInfinity: "INF",
7188                 percent: {
7189                         ",": " ",
7190                         ".": ","
7191                 },
7192                 currency: {
7193                         pattern: ["-n $","n $"],
7194                         ",": " ",
7195                         ".": ",",
7196                         symbol: "€"
7197                 }
7198         },
7199         calendars: {
7200                 standard: {
7201                         "/": ".",
7202                         firstDay: 1,
7203                         days: {
7204                                 names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"],
7205                                 namesAbbr: ["su","ma","ti","ke","to","pe","la"],
7206                                 namesShort: ["su","ma","ti","ke","to","pe","la"]
7207                         },
7208                         months: {
7209                                 names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""],
7210                                 namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""]
7211                         },
7212                         AM: null,
7213                         PM: null,
7214                         patterns: {
7215                                 d: "d.M.yyyy",
7216                                 D: "d. MMMM'ta 'yyyy",
7217                                 t: "H:mm",
7218                                 T: "H:mm:ss",
7219                                 f: "d. MMMM'ta 'yyyy H:mm",
7220                                 F: "d. MMMM'ta 'yyyy H:mm:ss",
7221                                 M: "d. MMMM'ta'",
7222                                 Y: "MMMM yyyy"
7223                         }
7224                 }
7225         }
7226 });
7227
7228 Globalize.addCultureInfo( "fr-FR", "default", {
7229         name: "fr-FR",
7230         englishName: "French (France)",
7231         nativeName: "français (France)",
7232         language: "fr",
7233         numberFormat: {
7234                 ",": " ",
7235                 ".": ",",
7236                 NaN: "Non Numérique",
7237                 negativeInfinity: "-Infini",
7238                 positiveInfinity: "+Infini",
7239                 percent: {
7240                         ",": " ",
7241                         ".": ","
7242                 },
7243                 currency: {
7244                         pattern: ["-n $","n $"],
7245                         ",": " ",
7246                         ".": ",",
7247                         symbol: "€"
7248                 }
7249         },
7250         calendars: {
7251                 standard: {
7252                         firstDay: 1,
7253                         days: {
7254                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
7255                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
7256                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
7257                         },
7258                         months: {
7259                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
7260                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
7261                         },
7262                         AM: null,
7263                         PM: null,
7264                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
7265                         patterns: {
7266                                 d: "dd/MM/yyyy",
7267                                 D: "dddd d MMMM yyyy",
7268                                 t: "HH:mm",
7269                                 T: "HH:mm:ss",
7270                                 f: "dddd d MMMM yyyy HH:mm",
7271                                 F: "dddd d MMMM yyyy HH:mm:ss",
7272                                 M: "d MMMM",
7273                                 Y: "MMMM yyyy"
7274                         }
7275                 }
7276         }
7277 });
7278
7279 Globalize.addCultureInfo( "he-IL", "default", {
7280         name: "he-IL",
7281         englishName: "Hebrew (Israel)",
7282         nativeName: "עברית (ישראל)",
7283         language: "he",
7284         isRTL: true,
7285         numberFormat: {
7286                 NaN: "לא מספר",
7287                 negativeInfinity: "אינסוף שלילי",
7288                 positiveInfinity: "אינסוף חיובי",
7289                 percent: {
7290                         pattern: ["-n%","n%"]
7291                 },
7292                 currency: {
7293                         pattern: ["$-n","$ n"],
7294                         symbol: "₪"
7295                 }
7296         },
7297         calendars: {
7298                 standard: {
7299                         days: {
7300                                 names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"],
7301                                 namesAbbr: ["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"],
7302                                 namesShort: ["א","ב","ג","ד","ה","ו","ש"]
7303                         },
7304                         months: {
7305                                 names: ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""],
7306                                 namesAbbr: ["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""]
7307                         },
7308                         eras: [{"name":"לספירה","start":null,"offset":0}],
7309                         patterns: {
7310                                 d: "dd/MM/yyyy",
7311                                 D: "dddd dd MMMM yyyy",
7312                                 t: "HH:mm",
7313                                 T: "HH:mm:ss",
7314                                 f: "dddd dd MMMM yyyy HH:mm",
7315                                 F: "dddd dd MMMM yyyy HH:mm:ss",
7316                                 M: "dd MMMM",
7317                                 Y: "MMMM yyyy"
7318                         }
7319                 },
7320                 Hebrew: {
7321                         name: "Hebrew",
7322                         "/": " ",
7323                         days: {
7324                                 names: ["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"],
7325                                 namesAbbr: ["א","ב","ג","ד","ה","ו","ש"],
7326                                 namesShort: ["א","ב","ג","ד","ה","ו","ש"]
7327                         },
7328                         months: {
7329                                 names: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"],
7330                                 namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","אדר","אדר ב","ניסן","אייר","סיון","תמוז","אב","אלול"]
7331                         },
7332                         eras: [{"name":"C.E.","start":null,"offset":0}],
7333                         twoDigitYearMax: 5790,
7334                         patterns: {
7335                                 d: "dd MMMM yyyy",
7336                                 D: "dddd dd MMMM yyyy",
7337                                 t: "HH:mm",
7338                                 T: "HH:mm:ss",
7339                                 f: "dddd dd MMMM yyyy HH:mm",
7340                                 F: "dddd dd MMMM yyyy HH:mm:ss",
7341                                 M: "dd MMMM",
7342                                 Y: "MMMM yyyy"
7343                         }
7344                 }
7345         }
7346 });
7347
7348 Globalize.addCultureInfo( "hu-HU", "default", {
7349         name: "hu-HU",
7350         englishName: "Hungarian (Hungary)",
7351         nativeName: "magyar (Magyarország)",
7352         language: "hu",
7353         numberFormat: {
7354                 ",": " ",
7355                 ".": ",",
7356                 NaN: "nem szám",
7357                 negativeInfinity: "negatív végtelen",
7358                 positiveInfinity: "végtelen",
7359                 percent: {
7360                         ",": " ",
7361                         ".": ","
7362                 },
7363                 currency: {
7364                         pattern: ["-n $","n $"],
7365                         ",": " ",
7366                         ".": ",",
7367                         symbol: "Ft"
7368                 }
7369         },
7370         calendars: {
7371                 standard: {
7372                         "/": ".",
7373                         firstDay: 1,
7374                         days: {
7375                                 names: ["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],
7376                                 namesAbbr: ["V","H","K","Sze","Cs","P","Szo"],
7377                                 namesShort: ["V","H","K","Sze","Cs","P","Szo"]
7378                         },
7379                         months: {
7380                                 names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""],
7381                                 namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""]
7382                         },
7383                         AM: ["de.","de.","DE."],
7384                         PM: ["du.","du.","DU."],
7385                         eras: [{"name":"i.sz.","start":null,"offset":0}],
7386                         patterns: {
7387                                 d: "yyyy.MM.dd.",
7388                                 D: "yyyy. MMMM d.",
7389                                 t: "H:mm",
7390                                 T: "H:mm:ss",
7391                                 f: "yyyy. MMMM d. H:mm",
7392                                 F: "yyyy. MMMM d. H:mm:ss",
7393                                 M: "MMMM d.",
7394                                 Y: "yyyy. MMMM"
7395                         }
7396                 }
7397         }
7398 });
7399
7400 Globalize.addCultureInfo( "is-IS", "default", {
7401         name: "is-IS",
7402         englishName: "Icelandic (Iceland)",
7403         nativeName: "íslenska (Ísland)",
7404         language: "is",
7405         numberFormat: {
7406                 ",": ".",
7407                 ".": ",",
7408                 negativeInfinity: "-INF",
7409                 positiveInfinity: "INF",
7410                 percent: {
7411                         pattern: ["-n%","n%"],
7412                         ",": ".",
7413                         ".": ","
7414                 },
7415                 currency: {
7416                         pattern: ["-n $","n $"],
7417                         decimals: 0,
7418                         ",": ".",
7419                         ".": ",",
7420                         symbol: "kr."
7421                 }
7422         },
7423         calendars: {
7424                 standard: {
7425                         "/": ".",
7426                         firstDay: 1,
7427                         days: {
7428                                 names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"],
7429                                 namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."],
7430                                 namesShort: ["su","má","þr","mi","fi","fö","la"]
7431                         },
7432                         months: {
7433                                 names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""],
7434                                 namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""]
7435                         },
7436                         AM: null,
7437                         PM: null,
7438                         patterns: {
7439                                 d: "d.M.yyyy",
7440                                 D: "d. MMMM yyyy",
7441                                 t: "HH:mm",
7442                                 T: "HH:mm:ss",
7443                                 f: "d. MMMM yyyy HH:mm",
7444                                 F: "d. MMMM yyyy HH:mm:ss",
7445                                 M: "d. MMMM",
7446                                 Y: "MMMM yyyy"
7447                         }
7448                 }
7449         }
7450 });
7451
7452 Globalize.addCultureInfo( "it-IT", "default", {
7453         name: "it-IT",
7454         englishName: "Italian (Italy)",
7455         nativeName: "italiano (Italia)",
7456         language: "it",
7457         numberFormat: {
7458                 ",": ".",
7459                 ".": ",",
7460                 NaN: "Non un numero reale",
7461                 negativeInfinity: "-Infinito",
7462                 positiveInfinity: "+Infinito",
7463                 percent: {
7464                         pattern: ["-n%","n%"],
7465                         ",": ".",
7466                         ".": ","
7467                 },
7468                 currency: {
7469                         pattern: ["-$ n","$ n"],
7470                         ",": ".",
7471                         ".": ",",
7472                         symbol: "€"
7473                 }
7474         },
7475         calendars: {
7476                 standard: {
7477                         firstDay: 1,
7478                         days: {
7479                                 names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],
7480                                 namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"],
7481                                 namesShort: ["do","lu","ma","me","gi","ve","sa"]
7482                         },
7483                         months: {
7484                                 names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""],
7485                                 namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""]
7486                         },
7487                         AM: null,
7488                         PM: null,
7489                         eras: [{"name":"d.C.","start":null,"offset":0}],
7490                         patterns: {
7491                                 d: "dd/MM/yyyy",
7492                                 D: "dddd d MMMM yyyy",
7493                                 t: "HH:mm",
7494                                 T: "HH:mm:ss",
7495                                 f: "dddd d MMMM yyyy HH:mm",
7496                                 F: "dddd d MMMM yyyy HH:mm:ss",
7497                                 M: "dd MMMM",
7498                                 Y: "MMMM yyyy"
7499                         }
7500                 }
7501         }
7502 });
7503
7504 Globalize.addCultureInfo( "ja-JP", "default", {
7505         name: "ja-JP",
7506         englishName: "Japanese (Japan)",
7507         nativeName: "日本語 (日本)",
7508         language: "ja",
7509         numberFormat: {
7510                 NaN: "NaN (非数値)",
7511                 negativeInfinity: "-∞",
7512                 positiveInfinity: "+∞",
7513                 percent: {
7514                         pattern: ["-n%","n%"]
7515                 },
7516                 currency: {
7517                         pattern: ["-$n","$n"],
7518                         decimals: 0,
7519                         symbol: "¥"
7520                 }
7521         },
7522         calendars: {
7523                 standard: {
7524                         days: {
7525                                 names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],
7526                                 namesAbbr: ["日","月","火","水","木","金","土"],
7527                                 namesShort: ["日","月","火","水","木","金","土"]
7528                         },
7529                         months: {
7530                                 names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""],
7531                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
7532                         },
7533                         AM: ["午前","午前","午前"],
7534                         PM: ["午後","午後","午後"],
7535                         eras: [{"name":"西暦","start":null,"offset":0}],
7536                         patterns: {
7537                                 d: "yyyy/MM/dd",
7538                                 D: "yyyy'年'M'月'd'日'",
7539                                 t: "H:mm",
7540                                 T: "H:mm:ss",
7541                                 f: "yyyy'年'M'月'd'日' H:mm",
7542                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
7543                                 M: "M'月'd'日'",
7544                                 Y: "yyyy'年'M'月'"
7545                         }
7546                 },
7547                 Japanese: {
7548                         name: "Japanese",
7549                         days: {
7550                                 names: ["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],
7551                                 namesAbbr: ["日","月","火","水","木","金","土"],
7552                                 namesShort: ["日","月","火","水","木","金","土"]
7553                         },
7554                         months: {
7555                                 names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""],
7556                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
7557                         },
7558                         AM: ["午前","午前","午前"],
7559                         PM: ["午後","午後","午後"],
7560                         eras: [{"name":"平成","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}],
7561                         twoDigitYearMax: 99,
7562                         patterns: {
7563                                 d: "gg y/M/d",
7564                                 D: "gg y'年'M'月'd'日'",
7565                                 t: "H:mm",
7566                                 T: "H:mm:ss",
7567                                 f: "gg y'年'M'月'd'日' H:mm",
7568                                 F: "gg y'年'M'月'd'日' H:mm:ss",
7569                                 M: "M'月'd'日'",
7570                                 Y: "gg y'年'M'月'"
7571                         }
7572                 }
7573         }
7574 });
7575
7576 Globalize.addCultureInfo( "ko-KR", "default", {
7577         name: "ko-KR",
7578         englishName: "Korean (Korea)",
7579         nativeName: "한국어 (대한민국)",
7580         language: "ko",
7581         numberFormat: {
7582                 currency: {
7583                         pattern: ["-$n","$n"],
7584                         decimals: 0,
7585                         symbol: "₩"
7586                 }
7587         },
7588         calendars: {
7589                 standard: {
7590                         "/": "-",
7591                         days: {
7592                                 names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],
7593                                 namesAbbr: ["일","월","화","수","목","금","토"],
7594                                 namesShort: ["일","월","화","수","목","금","토"]
7595                         },
7596                         months: {
7597                                 names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""],
7598                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
7599                         },
7600                         AM: ["오전","오전","오전"],
7601                         PM: ["오후","오후","오후"],
7602                         eras: [{"name":"서기","start":null,"offset":0}],
7603                         patterns: {
7604                                 d: "yyyy-MM-dd",
7605                                 D: "yyyy'년' M'월' d'일' dddd",
7606                                 t: "tt h:mm",
7607                                 T: "tt h:mm:ss",
7608                                 f: "yyyy'년' M'월' d'일' dddd tt h:mm",
7609                                 F: "yyyy'년' M'월' d'일' dddd tt h:mm:ss",
7610                                 M: "M'월' d'일'",
7611                                 Y: "yyyy'년' M'월'"
7612                         }
7613                 },
7614                 Korean: {
7615                         name: "Korean",
7616                         "/": "-",
7617                         days: {
7618                                 names: ["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],
7619                                 namesAbbr: ["일","월","화","수","목","금","토"],
7620                                 namesShort: ["일","월","화","수","목","금","토"]
7621                         },
7622                         months: {
7623                                 names: ["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""],
7624                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
7625                         },
7626                         AM: ["오전","오전","오전"],
7627                         PM: ["오후","오후","오후"],
7628                         eras: [{"name":"단기","start":null,"offset":-2333}],
7629                         twoDigitYearMax: 4362,
7630                         patterns: {
7631                                 d: "gg yyyy-MM-dd",
7632                                 D: "gg yyyy'년' M'월' d'일' dddd",
7633                                 t: "tt h:mm",
7634                                 T: "tt h:mm:ss",
7635                                 f: "gg yyyy'년' M'월' d'일' dddd tt h:mm",
7636                                 F: "gg yyyy'년' M'월' d'일' dddd tt h:mm:ss",
7637                                 M: "M'월' d'일'",
7638                                 Y: "gg yyyy'년' M'월'"
7639                         }
7640                 }
7641         }
7642 });
7643
7644 Globalize.addCultureInfo( "nl-NL", "default", {
7645         name: "nl-NL",
7646         englishName: "Dutch (Netherlands)",
7647         nativeName: "Nederlands (Nederland)",
7648         language: "nl",
7649         numberFormat: {
7650                 ",": ".",
7651                 ".": ",",
7652                 percent: {
7653                         ",": ".",
7654                         ".": ","
7655                 },
7656                 currency: {
7657                         pattern: ["$ -n","$ n"],
7658                         ",": ".",
7659                         ".": ",",
7660                         symbol: "€"
7661                 }
7662         },
7663         calendars: {
7664                 standard: {
7665                         "/": "-",
7666                         firstDay: 1,
7667                         days: {
7668                                 names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],
7669                                 namesAbbr: ["zo","ma","di","wo","do","vr","za"],
7670                                 namesShort: ["zo","ma","di","wo","do","vr","za"]
7671                         },
7672                         months: {
7673                                 names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""],
7674                                 namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""]
7675                         },
7676                         AM: null,
7677                         PM: null,
7678                         patterns: {
7679                                 d: "d-M-yyyy",
7680                                 D: "dddd d MMMM yyyy",
7681                                 t: "H:mm",
7682                                 T: "H:mm:ss",
7683                                 f: "dddd d MMMM yyyy H:mm",
7684                                 F: "dddd d MMMM yyyy H:mm:ss",
7685                                 M: "dd MMMM",
7686                                 Y: "MMMM yyyy"
7687                         }
7688                 }
7689         }
7690 });
7691
7692 Globalize.addCultureInfo( "nb-NO", "default", {
7693         name: "nb-NO",
7694         englishName: "Norwegian, Bokmål (Norway)",
7695         nativeName: "norsk, bokmål (Norge)",
7696         language: "nb",
7697         numberFormat: {
7698                 ",": " ",
7699                 ".": ",",
7700                 negativeInfinity: "-INF",
7701                 positiveInfinity: "INF",
7702                 percent: {
7703                         ",": " ",
7704                         ".": ","
7705                 },
7706                 currency: {
7707                         pattern: ["$ -n","$ n"],
7708                         ",": " ",
7709                         ".": ",",
7710                         symbol: "kr"
7711                 }
7712         },
7713         calendars: {
7714                 standard: {
7715                         "/": ".",
7716                         firstDay: 1,
7717                         days: {
7718                                 names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],
7719                                 namesAbbr: ["sø","ma","ti","on","to","fr","lø"],
7720                                 namesShort: ["sø","ma","ti","on","to","fr","lø"]
7721                         },
7722                         months: {
7723                                 names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""],
7724                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""]
7725                         },
7726                         AM: null,
7727                         PM: null,
7728                         patterns: {
7729                                 d: "dd.MM.yyyy",
7730                                 D: "d. MMMM yyyy",
7731                                 t: "HH:mm",
7732                                 T: "HH:mm:ss",
7733                                 f: "d. MMMM yyyy HH:mm",
7734                                 F: "d. MMMM yyyy HH:mm:ss",
7735                                 M: "d. MMMM",
7736                                 Y: "MMMM yyyy"
7737                         }
7738                 }
7739         }
7740 });
7741
7742 Globalize.addCultureInfo( "pl-PL", "default", {
7743         name: "pl-PL",
7744         englishName: "Polish (Poland)",
7745         nativeName: "polski (Polska)",
7746         language: "pl",
7747         numberFormat: {
7748                 ",": " ",
7749                 ".": ",",
7750                 NaN: "nie jest liczbą",
7751                 negativeInfinity: "-nieskończoność",
7752                 positiveInfinity: "+nieskończoność",
7753                 percent: {
7754                         pattern: ["-n%","n%"],
7755                         ",": " ",
7756                         ".": ","
7757                 },
7758                 currency: {
7759                         pattern: ["-n $","n $"],
7760                         ",": " ",
7761                         ".": ",",
7762                         symbol: "zł"
7763                 }
7764         },
7765         calendars: {
7766                 standard: {
7767                         "/": "-",
7768                         firstDay: 1,
7769                         days: {
7770                                 names: ["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"],
7771                                 namesAbbr: ["N","Pn","Wt","Śr","Cz","Pt","So"],
7772                                 namesShort: ["N","Pn","Wt","Śr","Cz","Pt","So"]
7773                         },
7774                         months: {
7775                                 names: ["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""],
7776                                 namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""]
7777                         },
7778                         monthsGenitive: {
7779                                 names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""],
7780                                 namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""]
7781                         },
7782                         AM: null,
7783                         PM: null,
7784                         patterns: {
7785                                 d: "yyyy-MM-dd",
7786                                 D: "d MMMM yyyy",
7787                                 t: "HH:mm",
7788                                 T: "HH:mm:ss",
7789                                 f: "d MMMM yyyy HH:mm",
7790                                 F: "d MMMM yyyy HH:mm:ss",
7791                                 M: "d MMMM",
7792                                 Y: "MMMM yyyy"
7793                         }
7794                 }
7795         }
7796 });
7797
7798 Globalize.addCultureInfo( "pt-BR", "default", {
7799         name: "pt-BR",
7800         englishName: "Portuguese (Brazil)",
7801         nativeName: "Português (Brasil)",
7802         language: "pt",
7803         numberFormat: {
7804                 ",": ".",
7805                 ".": ",",
7806                 NaN: "NaN (Não é um número)",
7807                 negativeInfinity: "-Infinito",
7808                 positiveInfinity: "+Infinito",
7809                 percent: {
7810                         pattern: ["-n%","n%"],
7811                         ",": ".",
7812                         ".": ","
7813                 },
7814                 currency: {
7815                         pattern: ["-$ n","$ n"],
7816                         ",": ".",
7817                         ".": ",",
7818                         symbol: "R$"
7819                 }
7820         },
7821         calendars: {
7822                 standard: {
7823                         days: {
7824                                 names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"],
7825                                 namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"],
7826                                 namesShort: ["D","S","T","Q","Q","S","S"]
7827                         },
7828                         months: {
7829                                 names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""],
7830                                 namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""]
7831                         },
7832                         AM: null,
7833                         PM: null,
7834                         eras: [{"name":"d.C.","start":null,"offset":0}],
7835                         patterns: {
7836                                 d: "dd/MM/yyyy",
7837                                 D: "dddd, d' de 'MMMM' de 'yyyy",
7838                                 t: "HH:mm",
7839                                 T: "HH:mm:ss",
7840                                 f: "dddd, d' de 'MMMM' de 'yyyy HH:mm",
7841                                 F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss",
7842                                 M: "dd' de 'MMMM",
7843                                 Y: "MMMM' de 'yyyy"
7844                         }
7845                 }
7846         }
7847 });
7848
7849 Globalize.addCultureInfo( "rm-CH", "default", {
7850         name: "rm-CH",
7851         englishName: "Romansh (Switzerland)",
7852         nativeName: "Rumantsch (Svizra)",
7853         language: "rm",
7854         numberFormat: {
7855                 ",": "'",
7856                 NaN: "betg def.",
7857                 negativeInfinity: "-infinit",
7858                 positiveInfinity: "+infinit",
7859                 percent: {
7860                         pattern: ["-n%","n%"],
7861                         ",": "'"
7862                 },
7863                 currency: {
7864                         pattern: ["$-n","$ n"],
7865                         ",": "'",
7866                         symbol: "fr."
7867                 }
7868         },
7869         calendars: {
7870                 standard: {
7871                         firstDay: 1,
7872                         days: {
7873                                 names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"],
7874                                 namesAbbr: ["du","gli","ma","me","gie","ve","so"],
7875                                 namesShort: ["du","gli","ma","me","gie","ve","so"]
7876                         },
7877                         months: {
7878                                 names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""],
7879                                 namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""]
7880                         },
7881                         AM: null,
7882                         PM: null,
7883                         eras: [{"name":"s. Cr.","start":null,"offset":0}],
7884                         patterns: {
7885                                 d: "dd/MM/yyyy",
7886                                 D: "dddd, d MMMM yyyy",
7887                                 t: "HH:mm",
7888                                 T: "HH:mm:ss",
7889                                 f: "dddd, d MMMM yyyy HH:mm",
7890                                 F: "dddd, d MMMM yyyy HH:mm:ss",
7891                                 M: "dd MMMM",
7892                                 Y: "MMMM yyyy"
7893                         }
7894                 }
7895         }
7896 });
7897
7898 Globalize.addCultureInfo( "ro-RO", "default", {
7899         name: "ro-RO",
7900         englishName: "Romanian (Romania)",
7901         nativeName: "română (România)",
7902         language: "ro",
7903         numberFormat: {
7904                 ",": ".",
7905                 ".": ",",
7906                 percent: {
7907                         pattern: ["-n%","n%"],
7908                         ",": ".",
7909                         ".": ","
7910                 },
7911                 currency: {
7912                         pattern: ["-n $","n $"],
7913                         ",": ".",
7914                         ".": ",",
7915                         symbol: "lei"
7916                 }
7917         },
7918         calendars: {
7919                 standard: {
7920                         "/": ".",
7921                         firstDay: 1,
7922                         days: {
7923                                 names: ["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"],
7924                                 namesAbbr: ["D","L","Ma","Mi","J","V","S"],
7925                                 namesShort: ["D","L","Ma","Mi","J","V","S"]
7926                         },
7927                         months: {
7928                                 names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""],
7929                                 namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""]
7930                         },
7931                         AM: null,
7932                         PM: null,
7933                         patterns: {
7934                                 d: "dd.MM.yyyy",
7935                                 D: "d MMMM yyyy",
7936                                 t: "HH:mm",
7937                                 T: "HH:mm:ss",
7938                                 f: "d MMMM yyyy HH:mm",
7939                                 F: "d MMMM yyyy HH:mm:ss",
7940                                 M: "d MMMM",
7941                                 Y: "MMMM yyyy"
7942                         }
7943                 }
7944         }
7945 });
7946
7947 Globalize.addCultureInfo( "ru-RU", "default", {
7948         name: "ru-RU",
7949         englishName: "Russian (Russia)",
7950         nativeName: "русский (Россия)",
7951         language: "ru",
7952         numberFormat: {
7953                 ",": " ",
7954                 ".": ",",
7955                 negativeInfinity: "-бесконечность",
7956                 positiveInfinity: "бесконечность",
7957                 percent: {
7958                         pattern: ["-n%","n%"],
7959                         ",": " ",
7960                         ".": ","
7961                 },
7962                 currency: {
7963                         pattern: ["-n$","n$"],
7964                         ",": " ",
7965                         ".": ",",
7966                         symbol: "р."
7967                 }
7968         },
7969         calendars: {
7970                 standard: {
7971                         "/": ".",
7972                         firstDay: 1,
7973                         days: {
7974                                 names: ["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],
7975                                 namesAbbr: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],
7976                                 namesShort: ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"]
7977                         },
7978                         months: {
7979                                 names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],
7980                                 namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""]
7981                         },
7982                         monthsGenitive: {
7983                                 names: ["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""],
7984                                 namesAbbr: ["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""]
7985                         },
7986                         AM: null,
7987                         PM: null,
7988                         patterns: {
7989                                 d: "dd.MM.yyyy",
7990                                 D: "d MMMM yyyy 'г.'",
7991                                 t: "H:mm",
7992                                 T: "H:mm:ss",
7993                                 f: "d MMMM yyyy 'г.' H:mm",
7994                                 F: "d MMMM yyyy 'г.' H:mm:ss",
7995                                 Y: "MMMM yyyy"
7996                         }
7997                 }
7998         }
7999 });
8000
8001 Globalize.addCultureInfo( "hr-HR", "default", {
8002         name: "hr-HR",
8003         englishName: "Croatian (Croatia)",
8004         nativeName: "hrvatski (Hrvatska)",
8005         language: "hr",
8006         numberFormat: {
8007                 pattern: ["- n"],
8008                 ",": ".",
8009                 ".": ",",
8010                 percent: {
8011                         pattern: ["-n%","n%"],
8012                         ",": ".",
8013                         ".": ","
8014                 },
8015                 currency: {
8016                         pattern: ["-n $","n $"],
8017                         ",": ".",
8018                         ".": ",",
8019                         symbol: "kn"
8020                 }
8021         },
8022         calendars: {
8023                 standard: {
8024                         "/": ".",
8025                         firstDay: 1,
8026                         days: {
8027                                 names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],
8028                                 namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"],
8029                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
8030                         },
8031                         months: {
8032                                 names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""],
8033                                 namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""]
8034                         },
8035                         monthsGenitive: {
8036                                 names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""],
8037                                 namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""]
8038                         },
8039                         AM: null,
8040                         PM: null,
8041                         patterns: {
8042                                 d: "d.M.yyyy.",
8043                                 D: "d. MMMM yyyy.",
8044                                 t: "H:mm",
8045                                 T: "H:mm:ss",
8046                                 f: "d. MMMM yyyy. H:mm",
8047                                 F: "d. MMMM yyyy. H:mm:ss",
8048                                 M: "d. MMMM"
8049                         }
8050                 }
8051         }
8052 });
8053
8054 Globalize.addCultureInfo( "sk-SK", "default", {
8055         name: "sk-SK",
8056         englishName: "Slovak (Slovakia)",
8057         nativeName: "slovenčina (Slovenská republika)",
8058         language: "sk",
8059         numberFormat: {
8060                 ",": " ",
8061                 ".": ",",
8062                 NaN: "Nie je číslo",
8063                 negativeInfinity: "-nekonečno",
8064                 positiveInfinity: "+nekonečno",
8065                 percent: {
8066                         pattern: ["-n%","n%"],
8067                         ",": " ",
8068                         ".": ","
8069                 },
8070                 currency: {
8071                         pattern: ["-n $","n $"],
8072                         ",": " ",
8073                         ".": ",",
8074                         symbol: "€"
8075                 }
8076         },
8077         calendars: {
8078                 standard: {
8079                         "/": ". ",
8080                         firstDay: 1,
8081                         days: {
8082                                 names: ["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"],
8083                                 namesAbbr: ["ne","po","ut","st","št","pi","so"],
8084                                 namesShort: ["ne","po","ut","st","št","pi","so"]
8085                         },
8086                         months: {
8087                                 names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""],
8088                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
8089                         },
8090                         monthsGenitive: {
8091                                 names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""],
8092                                 namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""]
8093                         },
8094                         AM: null,
8095                         PM: null,
8096                         eras: [{"name":"n. l.","start":null,"offset":0}],
8097                         patterns: {
8098                                 d: "d. M. yyyy",
8099                                 D: "d. MMMM yyyy",
8100                                 t: "H:mm",
8101                                 T: "H:mm:ss",
8102                                 f: "d. MMMM yyyy H:mm",
8103                                 F: "d. MMMM yyyy H:mm:ss",
8104                                 M: "dd MMMM",
8105                                 Y: "MMMM yyyy"
8106                         }
8107                 }
8108         }
8109 });
8110
8111 Globalize.addCultureInfo( "sq-AL", "default", {
8112         name: "sq-AL",
8113         englishName: "Albanian (Albania)",
8114         nativeName: "shqipe (Shqipëria)",
8115         language: "sq",
8116         numberFormat: {
8117                 ",": ".",
8118                 ".": ",",
8119                 negativeInfinity: "-infinit",
8120                 positiveInfinity: "infinit",
8121                 percent: {
8122                         ",": ".",
8123                         ".": ","
8124                 },
8125                 currency: {
8126                         pattern: ["-n$","n$"],
8127                         ",": ".",
8128                         ".": ",",
8129                         symbol: "Lek"
8130                 }
8131         },
8132         calendars: {
8133                 standard: {
8134                         "/": "-",
8135                         firstDay: 1,
8136                         days: {
8137                                 names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"],
8138                                 namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"],
8139                                 namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"]
8140                         },
8141                         months: {
8142                                 names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""],
8143                                 namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""]
8144                         },
8145                         AM: ["PD","pd","PD"],
8146                         PM: ["MD","md","MD"],
8147                         patterns: {
8148                                 d: "yyyy-MM-dd",
8149                                 D: "yyyy-MM-dd",
8150                                 t: "h:mm.tt",
8151                                 T: "h:mm:ss.tt",
8152                                 f: "yyyy-MM-dd h:mm.tt",
8153                                 F: "yyyy-MM-dd h:mm:ss.tt",
8154                                 Y: "yyyy-MM"
8155                         }
8156                 }
8157         }
8158 });
8159
8160 Globalize.addCultureInfo( "sv-SE", "default", {
8161         name: "sv-SE",
8162         englishName: "Swedish (Sweden)",
8163         nativeName: "svenska (Sverige)",
8164         language: "sv",
8165         numberFormat: {
8166                 ",": " ",
8167                 ".": ",",
8168                 negativeInfinity: "-INF",
8169                 positiveInfinity: "INF",
8170                 percent: {
8171                         ",": " ",
8172                         ".": ","
8173                 },
8174                 currency: {
8175                         pattern: ["-n $","n $"],
8176                         ",": ".",
8177                         ".": ",",
8178                         symbol: "kr"
8179                 }
8180         },
8181         calendars: {
8182                 standard: {
8183                         "/": "-",
8184                         firstDay: 1,
8185                         days: {
8186                                 names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],
8187                                 namesAbbr: ["sö","må","ti","on","to","fr","lö"],
8188                                 namesShort: ["sö","må","ti","on","to","fr","lö"]
8189                         },
8190                         months: {
8191                                 names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""],
8192                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""]
8193                         },
8194                         AM: null,
8195                         PM: null,
8196                         patterns: {
8197                                 d: "yyyy-MM-dd",
8198                                 D: "'den 'd MMMM yyyy",
8199                                 t: "HH:mm",
8200                                 T: "HH:mm:ss",
8201                                 f: "'den 'd MMMM yyyy HH:mm",
8202                                 F: "'den 'd MMMM yyyy HH:mm:ss",
8203                                 M: "'den 'd MMMM",
8204                                 Y: "MMMM yyyy"
8205                         }
8206                 }
8207         }
8208 });
8209
8210 Globalize.addCultureInfo( "th-TH", "default", {
8211         name: "th-TH",
8212         englishName: "Thai (Thailand)",
8213         nativeName: "ไทย (ไทย)",
8214         language: "th",
8215         numberFormat: {
8216                 currency: {
8217                         pattern: ["-$n","$n"],
8218                         symbol: "฿"
8219                 }
8220         },
8221         calendars: {
8222                 standard: {
8223                         name: "ThaiBuddhist",
8224                         firstDay: 1,
8225                         days: {
8226                                 names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"],
8227                                 namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],
8228                                 namesShort: ["อ","จ","อ","พ","พ","ศ","ส"]
8229                         },
8230                         months: {
8231                                 names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""],
8232                                 namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""]
8233                         },
8234                         eras: [{"name":"พ.ศ.","start":null,"offset":-543}],
8235                         twoDigitYearMax: 2572,
8236                         patterns: {
8237                                 d: "d/M/yyyy",
8238                                 D: "d MMMM yyyy",
8239                                 t: "H:mm",
8240                                 T: "H:mm:ss",
8241                                 f: "d MMMM yyyy H:mm",
8242                                 F: "d MMMM yyyy H:mm:ss",
8243                                 M: "dd MMMM",
8244                                 Y: "MMMM yyyy"
8245                         }
8246                 },
8247                 Gregorian_Localized: {
8248                         firstDay: 1,
8249                         days: {
8250                                 names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"],
8251                                 namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],
8252                                 namesShort: ["อ","จ","อ","พ","พ","ศ","ส"]
8253                         },
8254                         months: {
8255                                 names: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""],
8256                                 namesAbbr: ["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""]
8257                         },
8258                         patterns: {
8259                                 d: "d/M/yyyy",
8260                                 D: "'วัน'dddd'ที่' d MMMM yyyy",
8261                                 t: "H:mm",
8262                                 T: "H:mm:ss",
8263                                 f: "'วัน'dddd'ที่' d MMMM yyyy H:mm",
8264                                 F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss",
8265                                 M: "dd MMMM",
8266                                 Y: "MMMM yyyy"
8267                         }
8268                 }
8269         }
8270 });
8271
8272 Globalize.addCultureInfo( "tr-TR", "default", {
8273         name: "tr-TR",
8274         englishName: "Turkish (Turkey)",
8275         nativeName: "Türkçe (Türkiye)",
8276         language: "tr",
8277         numberFormat: {
8278                 ",": ".",
8279                 ".": ",",
8280                 percent: {
8281                         pattern: ["-%n","%n"],
8282                         ",": ".",
8283                         ".": ","
8284                 },
8285                 currency: {
8286                         pattern: ["-n $","n $"],
8287                         ",": ".",
8288                         ".": ",",
8289                         symbol: "TL"
8290                 }
8291         },
8292         calendars: {
8293                 standard: {
8294                         "/": ".",
8295                         firstDay: 1,
8296                         days: {
8297                                 names: ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],
8298                                 namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"],
8299                                 namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"]
8300                         },
8301                         months: {
8302                                 names: ["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""],
8303                                 namesAbbr: ["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""]
8304                         },
8305                         AM: null,
8306                         PM: null,
8307                         patterns: {
8308                                 d: "dd.MM.yyyy",
8309                                 D: "dd MMMM yyyy dddd",
8310                                 t: "HH:mm",
8311                                 T: "HH:mm:ss",
8312                                 f: "dd MMMM yyyy dddd HH:mm",
8313                                 F: "dd MMMM yyyy dddd HH:mm:ss",
8314                                 M: "dd MMMM",
8315                                 Y: "MMMM yyyy"
8316                         }
8317                 }
8318         }
8319 });
8320
8321 Globalize.addCultureInfo( "ur-PK", "default", {
8322         name: "ur-PK",
8323         englishName: "Urdu (Islamic Republic of Pakistan)",
8324         nativeName: "اُردو (پاکستان)",
8325         language: "ur",
8326         isRTL: true,
8327         numberFormat: {
8328                 currency: {
8329                         pattern: ["$n-","$n"],
8330                         symbol: "Rs"
8331                 }
8332         },
8333         calendars: {
8334                 standard: {
8335                         firstDay: 1,
8336                         days: {
8337                                 names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"],
8338                                 namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"],
8339                                 namesShort: ["ا","پ","م","ب","ج","ج","ه"]
8340                         },
8341                         months: {
8342                                 names: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""],
8343                                 namesAbbr: ["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""]
8344                         },
8345                         patterns: {
8346                                 d: "dd/MM/yyyy",
8347                                 D: "dd MMMM, yyyy",
8348                                 f: "dd MMMM, yyyy h:mm tt",
8349                                 F: "dd MMMM, yyyy h:mm:ss tt",
8350                                 M: "dd MMMM"
8351                         }
8352                 },
8353                 Hijri: {
8354                         name: "Hijri",
8355                         firstDay: 1,
8356                         days: {
8357                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
8358                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
8359                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
8360                         },
8361                         months: {
8362                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
8363                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
8364                         },
8365                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
8366                         twoDigitYearMax: 1451,
8367                         patterns: {
8368                                 d: "dd/MM/yy",
8369                                 D: "dd/MM/yyyy",
8370                                 f: "dd/MM/yyyy h:mm tt",
8371                                 F: "dd/MM/yyyy h:mm:ss tt",
8372                                 M: "dd MMMM"
8373                         },
8374                         convert: {
8375                     // Adapted to Script from System.Globalization.HijriCalendar
8376                     ticks1970: 62135596800000,
8377                     // number of days leading up to each month
8378                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
8379                     minDate: -42521673600000,
8380                     maxDate: 253402300799999,
8381                     // The number of days to add or subtract from the calendar to accommodate the variances
8382                     // in the start and the end of Ramadan and to accommodate the date difference between
8383                     // countries/regions. May be dynamically adjusted based on user preference, but should
8384                     // remain in the range of -2 to 2, inclusive.
8385                     hijriAdjustment: 0,
8386                     toGregorian: function(hyear, hmonth, hday) {
8387                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
8388                         // 86400000 = ticks per day
8389                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
8390                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
8391                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
8392                         // date in the current timezone.
8393                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
8394                         return gdate;
8395                     },
8396                     fromGregorian: function(gdate) {
8397                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
8398                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
8399                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
8400                         // very particular formula determined by someone smart, adapted from the server-side implementation.
8401                         // it approximates the hijri year.
8402                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
8403                             absDays = this.daysToYear(hyear),
8404                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
8405                         // hyear is just approximate, it may need adjustment up or down by 1.
8406                         if (daysSinceJan0101 < absDays) {
8407                             hyear--;
8408                             absDays -= daysInYear;
8409                         }
8410                         else if (daysSinceJan0101 === absDays) {
8411                             hyear--;
8412                             absDays = this.daysToYear(hyear);
8413                         }
8414                         else {
8415                             if (daysSinceJan0101 > (absDays + daysInYear)) {
8416                                 absDays += daysInYear;
8417                                 hyear++;
8418                             }
8419                         }
8420                         // determine month by looking at how many days into the hyear we are
8421                         // monthDays contains the number of days up to each month.
8422                         hmonth = 0;
8423                         var daysIntoYear = daysSinceJan0101 - absDays;
8424                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
8425                             hmonth++;
8426                         }
8427                         hmonth--;
8428                         hday = daysIntoYear - this.monthDays[hmonth];
8429                         return [hyear, hmonth, hday];
8430                     },
8431                     daysToYear: function(year) {
8432                         // calculates how many days since Jan 1, 0001
8433                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
8434                             yearsInto30 = year - yearsToYear30 - 1,
8435                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
8436                         while (yearsInto30 > 0) {
8437                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
8438                             yearsInto30--;
8439                         }
8440                         return days;
8441                     },
8442                     isLeapYear: function(year) {
8443                         return ((((year * 11) + 14) % 30) < 11);
8444                     }
8445                         }
8446                 }
8447         }
8448 });
8449
8450 Globalize.addCultureInfo( "id-ID", "default", {
8451         name: "id-ID",
8452         englishName: "Indonesian (Indonesia)",
8453         nativeName: "Bahasa Indonesia (Indonesia)",
8454         language: "id",
8455         numberFormat: {
8456                 ",": ".",
8457                 ".": ",",
8458                 percent: {
8459                         ",": ".",
8460                         ".": ","
8461                 },
8462                 currency: {
8463                         decimals: 0,
8464                         ",": ".",
8465                         ".": ",",
8466                         symbol: "Rp"
8467                 }
8468         },
8469         calendars: {
8470                 standard: {
8471                         firstDay: 1,
8472                         days: {
8473                                 names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],
8474                                 namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"],
8475                                 namesShort: ["M","S","S","R","K","J","S"]
8476                         },
8477                         months: {
8478                                 names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""],
8479                                 namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""]
8480                         },
8481                         AM: null,
8482                         PM: null,
8483                         patterns: {
8484                                 d: "dd/MM/yyyy",
8485                                 D: "dd MMMM yyyy",
8486                                 t: "H:mm",
8487                                 T: "H:mm:ss",
8488                                 f: "dd MMMM yyyy H:mm",
8489                                 F: "dd MMMM yyyy H:mm:ss",
8490                                 M: "dd MMMM",
8491                                 Y: "MMMM yyyy"
8492                         }
8493                 }
8494         }
8495 });
8496
8497 Globalize.addCultureInfo( "uk-UA", "default", {
8498         name: "uk-UA",
8499         englishName: "Ukrainian (Ukraine)",
8500         nativeName: "українська (Україна)",
8501         language: "uk",
8502         numberFormat: {
8503                 ",": " ",
8504                 ".": ",",
8505                 negativeInfinity: "-безмежність",
8506                 positiveInfinity: "безмежність",
8507                 percent: {
8508                         pattern: ["-n%","n%"],
8509                         ",": " ",
8510                         ".": ","
8511                 },
8512                 currency: {
8513                         pattern: ["-n$","n$"],
8514                         ",": " ",
8515                         ".": ",",
8516                         symbol: "₴"
8517                 }
8518         },
8519         calendars: {
8520                 standard: {
8521                         "/": ".",
8522                         firstDay: 1,
8523                         days: {
8524                                 names: ["неділя","понеділок","вівторок","середа","четвер","п'ятниця","субота"],
8525                                 namesAbbr: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"],
8526                                 namesShort: ["Нд","Пн","Вт","Ср","Чт","Пт","Сб"]
8527                         },
8528                         months: {
8529                                 names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""],
8530                                 namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""]
8531                         },
8532                         monthsGenitive: {
8533                                 names: ["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""],
8534                                 namesAbbr: ["січ","лют","бер","кві","тра","чер","лип","сер","вер","жов","лис","гру",""]
8535                         },
8536                         AM: null,
8537                         PM: null,
8538                         patterns: {
8539                                 d: "dd.MM.yyyy",
8540                                 D: "d MMMM yyyy' р.'",
8541                                 t: "H:mm",
8542                                 T: "H:mm:ss",
8543                                 f: "d MMMM yyyy' р.' H:mm",
8544                                 F: "d MMMM yyyy' р.' H:mm:ss",
8545                                 M: "d MMMM",
8546                                 Y: "MMMM yyyy' р.'"
8547                         }
8548                 }
8549         }
8550 });
8551
8552 Globalize.addCultureInfo( "be-BY", "default", {
8553         name: "be-BY",
8554         englishName: "Belarusian (Belarus)",
8555         nativeName: "Беларускі (Беларусь)",
8556         language: "be",
8557         numberFormat: {
8558                 ",": " ",
8559                 ".": ",",
8560                 percent: {
8561                         ",": " ",
8562                         ".": ","
8563                 },
8564                 currency: {
8565                         pattern: ["-n $","n $"],
8566                         ",": " ",
8567                         ".": ",",
8568                         symbol: "р."
8569                 }
8570         },
8571         calendars: {
8572                 standard: {
8573                         "/": ".",
8574                         firstDay: 1,
8575                         days: {
8576                                 names: ["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"],
8577                                 namesAbbr: ["нд","пн","аў","ср","чц","пт","сб"],
8578                                 namesShort: ["нд","пн","аў","ср","чц","пт","сб"]
8579                         },
8580                         months: {
8581                                 names: ["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""],
8582                                 namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""]
8583                         },
8584                         monthsGenitive: {
8585                                 names: ["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""],
8586                                 namesAbbr: ["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""]
8587                         },
8588                         AM: null,
8589                         PM: null,
8590                         patterns: {
8591                                 d: "dd.MM.yyyy",
8592                                 D: "d MMMM yyyy",
8593                                 t: "H:mm",
8594                                 T: "H:mm:ss",
8595                                 f: "d MMMM yyyy H:mm",
8596                                 F: "d MMMM yyyy H:mm:ss",
8597                                 M: "d MMMM",
8598                                 Y: "MMMM yyyy"
8599                         }
8600                 }
8601         }
8602 });
8603
8604 Globalize.addCultureInfo( "sl-SI", "default", {
8605         name: "sl-SI",
8606         englishName: "Slovenian (Slovenia)",
8607         nativeName: "slovenski (Slovenija)",
8608         language: "sl",
8609         numberFormat: {
8610                 ",": ".",
8611                 ".": ",",
8612                 negativeInfinity: "-neskončnost",
8613                 positiveInfinity: "neskončnost",
8614                 percent: {
8615                         pattern: ["-n%","n%"],
8616                         ",": ".",
8617                         ".": ","
8618                 },
8619                 currency: {
8620                         pattern: ["-n $","n $"],
8621                         ",": ".",
8622                         ".": ",",
8623                         symbol: "€"
8624                 }
8625         },
8626         calendars: {
8627                 standard: {
8628                         "/": ".",
8629                         firstDay: 1,
8630                         days: {
8631                                 names: ["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"],
8632                                 namesAbbr: ["ned","pon","tor","sre","čet","pet","sob"],
8633                                 namesShort: ["ne","po","to","sr","če","pe","so"]
8634                         },
8635                         months: {
8636                                 names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""],
8637                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
8638                         },
8639                         AM: null,
8640                         PM: null,
8641                         patterns: {
8642                                 d: "d.M.yyyy",
8643                                 D: "d. MMMM yyyy",
8644                                 t: "H:mm",
8645                                 T: "H:mm:ss",
8646                                 f: "d. MMMM yyyy H:mm",
8647                                 F: "d. MMMM yyyy H:mm:ss",
8648                                 M: "d. MMMM",
8649                                 Y: "MMMM yyyy"
8650                         }
8651                 }
8652         }
8653 });
8654
8655 Globalize.addCultureInfo( "et-EE", "default", {
8656         name: "et-EE",
8657         englishName: "Estonian (Estonia)",
8658         nativeName: "eesti (Eesti)",
8659         language: "et",
8660         numberFormat: {
8661                 ",": " ",
8662                 ".": ",",
8663                 NaN: "avaldamatu",
8664                 negativeInfinity: "miinuslõpmatus",
8665                 positiveInfinity: "plusslõpmatus",
8666                 percent: {
8667                         pattern: ["-n%","n%"],
8668                         ",": " ",
8669                         ".": ","
8670                 },
8671                 currency: {
8672                         pattern: ["-n $","n $"],
8673                         ",": " ",
8674                         symbol: "kr"
8675                 }
8676         },
8677         calendars: {
8678                 standard: {
8679                         "/": ".",
8680                         firstDay: 1,
8681                         days: {
8682                                 names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"],
8683                                 namesAbbr: ["P","E","T","K","N","R","L"],
8684                                 namesShort: ["P","E","T","K","N","R","L"]
8685                         },
8686                         months: {
8687                                 names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""],
8688                                 namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""]
8689                         },
8690                         AM: ["EL","el","EL"],
8691                         PM: ["PL","pl","PL"],
8692                         patterns: {
8693                                 d: "d.MM.yyyy",
8694                                 D: "d. MMMM yyyy'. a.'",
8695                                 t: "H:mm",
8696                                 T: "H:mm:ss",
8697                                 f: "d. MMMM yyyy'. a.' H:mm",
8698                                 F: "d. MMMM yyyy'. a.' H:mm:ss",
8699                                 M: "d. MMMM",
8700                                 Y: "MMMM yyyy'. a.'"
8701                         }
8702                 }
8703         }
8704 });
8705
8706 Globalize.addCultureInfo( "lv-LV", "default", {
8707         name: "lv-LV",
8708         englishName: "Latvian (Latvia)",
8709         nativeName: "latviešu (Latvija)",
8710         language: "lv",
8711         numberFormat: {
8712                 ",": " ",
8713                 ".": ",",
8714                 negativeInfinity: "-bezgalība",
8715                 positiveInfinity: "bezgalība",
8716                 percent: {
8717                         pattern: ["-n%","n%"],
8718                         ",": " ",
8719                         ".": ","
8720                 },
8721                 currency: {
8722                         pattern: ["-$ n","$ n"],
8723                         ",": " ",
8724                         ".": ",",
8725                         symbol: "Ls"
8726                 }
8727         },
8728         calendars: {
8729                 standard: {
8730                         "/": ".",
8731                         firstDay: 1,
8732                         days: {
8733                                 names: ["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"],
8734                                 namesAbbr: ["sv","pr","ot","tr","ce","pk","se"],
8735                                 namesShort: ["sv","pr","ot","tr","ce","pk","se"]
8736                         },
8737                         months: {
8738                                 names: ["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""],
8739                                 namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""]
8740                         },
8741                         monthsGenitive: {
8742                                 names: ["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""],
8743                                 namesAbbr: ["jan","feb","mar","apr","mai","jūn","jūl","aug","sep","okt","nov","dec",""]
8744                         },
8745                         AM: null,
8746                         PM: null,
8747                         patterns: {
8748                                 d: "yyyy.MM.dd.",
8749                                 D: "dddd, yyyy'. gada 'd. MMMM",
8750                                 t: "H:mm",
8751                                 T: "H:mm:ss",
8752                                 f: "dddd, yyyy'. gada 'd. MMMM H:mm",
8753                                 F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss",
8754                                 M: "d. MMMM",
8755                                 Y: "yyyy. MMMM"
8756                         }
8757                 }
8758         }
8759 });
8760
8761 Globalize.addCultureInfo( "lt-LT", "default", {
8762         name: "lt-LT",
8763         englishName: "Lithuanian (Lithuania)",
8764         nativeName: "lietuvių (Lietuva)",
8765         language: "lt",
8766         numberFormat: {
8767                 ",": ".",
8768                 ".": ",",
8769                 negativeInfinity: "-begalybė",
8770                 positiveInfinity: "begalybė",
8771                 percent: {
8772                         pattern: ["-n%","n%"],
8773                         ",": ".",
8774                         ".": ","
8775                 },
8776                 currency: {
8777                         pattern: ["-n $","n $"],
8778                         ",": ".",
8779                         ".": ",",
8780                         symbol: "Lt"
8781                 }
8782         },
8783         calendars: {
8784                 standard: {
8785                         "/": ".",
8786                         firstDay: 1,
8787                         days: {
8788                                 names: ["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"],
8789                                 namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Št"],
8790                                 namesShort: ["S","P","A","T","K","Pn","Š"]
8791                         },
8792                         months: {
8793                                 names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""],
8794                                 namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""]
8795                         },
8796                         monthsGenitive: {
8797                                 names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""],
8798                                 namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""]
8799                         },
8800                         AM: null,
8801                         PM: null,
8802                         patterns: {
8803                                 d: "yyyy.MM.dd",
8804                                 D: "yyyy 'm.' MMMM d 'd.'",
8805                                 t: "HH:mm",
8806                                 T: "HH:mm:ss",
8807                                 f: "yyyy 'm.' MMMM d 'd.' HH:mm",
8808                                 F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss",
8809                                 M: "MMMM d 'd.'",
8810                                 Y: "yyyy 'm.' MMMM"
8811                         }
8812                 }
8813         }
8814 });
8815
8816 Globalize.addCultureInfo( "tg-Cyrl-TJ", "default", {
8817         name: "tg-Cyrl-TJ",
8818         englishName: "Tajik (Cyrillic, Tajikistan)",
8819         nativeName: "Тоҷикӣ (Тоҷикистон)",
8820         language: "tg-Cyrl",
8821         numberFormat: {
8822                 ",": " ",
8823                 ".": ",",
8824                 groupSizes: [3,0],
8825                 negativeInfinity: "-бесконечность",
8826                 positiveInfinity: "бесконечность",
8827                 percent: {
8828                         pattern: ["-n%","n%"],
8829                         groupSizes: [3,0],
8830                         ",": " ",
8831                         ".": ","
8832                 },
8833                 currency: {
8834                         pattern: ["-n $","n $"],
8835                         groupSizes: [3,0],
8836                         ",": " ",
8837                         ".": ";",
8838                         symbol: "т.р."
8839                 }
8840         },
8841         calendars: {
8842                 standard: {
8843                         "/": ".",
8844                         days: {
8845                                 names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"],
8846                                 namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"],
8847                                 namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"]
8848                         },
8849                         months: {
8850                                 names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""],
8851                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
8852                         },
8853                         monthsGenitive: {
8854                                 names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""],
8855                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
8856                         },
8857                         AM: null,
8858                         PM: null,
8859                         patterns: {
8860                                 d: "dd.MM.yy",
8861                                 D: "d MMMM yyyy",
8862                                 t: "H:mm",
8863                                 T: "H:mm:ss",
8864                                 f: "d MMMM yyyy H:mm",
8865                                 F: "d MMMM yyyy H:mm:ss",
8866                                 Y: "MMMM yyyy"
8867                         }
8868                 }
8869         }
8870 });
8871
8872 Globalize.addCultureInfo( "fa-IR", "default", {
8873         name: "fa-IR",
8874         englishName: "Persian",
8875         nativeName: "فارسى (ایران)",
8876         language: "fa",
8877         isRTL: true,
8878         numberFormat: {
8879                 pattern: ["n-"],
8880                 currency: {
8881                         pattern: ["$n-","$ n"],
8882                         ".": "/",
8883                         symbol: "ريال"
8884                 }
8885         },
8886         calendars: {
8887                 standard: {
8888                         name: "Gregorian_TransliteratedFrench",
8889                         firstDay: 6,
8890                         days: {
8891                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
8892                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
8893                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
8894                         },
8895                         months: {
8896                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
8897                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
8898                         },
8899                         AM: ["ق.ظ","ق.ظ","ق.ظ"],
8900                         PM: ["ب.ظ","ب.ظ","ب.ظ"],
8901                         eras: [{"name":"م","start":null,"offset":0}],
8902                         patterns: {
8903                                 d: "MM/dd/yyyy",
8904                                 t: "hh:mm tt",
8905                                 T: "hh:mm:ss tt",
8906                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
8907                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
8908                         }
8909                 },
8910                 Gregorian_Localized: {
8911                         firstDay: 6,
8912                         days: {
8913                                 names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],
8914                                 namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],
8915                                 namesShort: ["ی","د","س","چ","پ","ج","ش"]
8916                         },
8917                         months: {
8918                                 names: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""],
8919                                 namesAbbr: ["ژانويه","فوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اُكتبر","نوامبر","دسامبر",""]
8920                         },
8921                         AM: ["ق.ظ","ق.ظ","ق.ظ"],
8922                         PM: ["ب.ظ","ب.ظ","ب.ظ"],
8923                         patterns: {
8924                                 d: "yyyy/MM/dd",
8925                                 D: "yyyy/MM/dd",
8926                                 t: "hh:mm tt",
8927                                 T: "hh:mm:ss tt",
8928                                 f: "yyyy/MM/dd hh:mm tt",
8929                                 F: "yyyy/MM/dd hh:mm:ss tt",
8930                                 M: "dd MMMM"
8931                         }
8932                 },
8933                 Hijri: {
8934                         name: "Hijri",
8935                         firstDay: 6,
8936                         days: {
8937                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
8938                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
8939                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
8940                         },
8941                         months: {
8942                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
8943                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
8944                         },
8945                         AM: ["ق.ظ","ق.ظ","ق.ظ"],
8946                         PM: ["ب.ظ","ب.ظ","ب.ظ"],
8947                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
8948                         twoDigitYearMax: 1451,
8949                         patterns: {
8950                                 d: "dd/MM/yy",
8951                                 D: "dd/MM/yyyy",
8952                                 t: "hh:mm tt",
8953                                 T: "hh:mm:ss tt",
8954                                 f: "dd/MM/yyyy hh:mm tt",
8955                                 F: "dd/MM/yyyy hh:mm:ss tt",
8956                                 M: "dd MMMM"
8957                         },
8958                         convert: {
8959                     // Adapted to Script from System.Globalization.HijriCalendar
8960                     ticks1970: 62135596800000,
8961                     // number of days leading up to each month
8962                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
8963                     minDate: -42521673600000,
8964                     maxDate: 253402300799999,
8965                     // The number of days to add or subtract from the calendar to accommodate the variances
8966                     // in the start and the end of Ramadan and to accommodate the date difference between
8967                     // countries/regions. May be dynamically adjusted based on user preference, but should
8968                     // remain in the range of -2 to 2, inclusive.
8969                     hijriAdjustment: 0,
8970                     toGregorian: function(hyear, hmonth, hday) {
8971                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
8972                         // 86400000 = ticks per day
8973                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
8974                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
8975                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
8976                         // date in the current timezone.
8977                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
8978                         return gdate;
8979                     },
8980                     fromGregorian: function(gdate) {
8981                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
8982                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
8983                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
8984                         // very particular formula determined by someone smart, adapted from the server-side implementation.
8985                         // it approximates the hijri year.
8986                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
8987                             absDays = this.daysToYear(hyear),
8988                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
8989                         // hyear is just approximate, it may need adjustment up or down by 1.
8990                         if (daysSinceJan0101 < absDays) {
8991                             hyear--;
8992                             absDays -= daysInYear;
8993                         }
8994                         else if (daysSinceJan0101 === absDays) {
8995                             hyear--;
8996                             absDays = this.daysToYear(hyear);
8997                         }
8998                         else {
8999                             if (daysSinceJan0101 > (absDays + daysInYear)) {
9000                                 absDays += daysInYear;
9001                                 hyear++;
9002                             }
9003                         }
9004                         // determine month by looking at how many days into the hyear we are
9005                         // monthDays contains the number of days up to each month.
9006                         hmonth = 0;
9007                         var daysIntoYear = daysSinceJan0101 - absDays;
9008                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
9009                             hmonth++;
9010                         }
9011                         hmonth--;
9012                         hday = daysIntoYear - this.monthDays[hmonth];
9013                         return [hyear, hmonth, hday];
9014                     },
9015                     daysToYear: function(year) {
9016                         // calculates how many days since Jan 1, 0001
9017                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
9018                             yearsInto30 = year - yearsToYear30 - 1,
9019                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
9020                         while (yearsInto30 > 0) {
9021                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
9022                             yearsInto30--;
9023                         }
9024                         return days;
9025                     },
9026                     isLeapYear: function(year) {
9027                         return ((((year * 11) + 14) % 30) < 11);
9028                     }
9029                         }
9030                 },
9031                 Gregorian_TransliteratedEnglish: {
9032                         name: "Gregorian_TransliteratedEnglish",
9033                         firstDay: 6,
9034                         days: {
9035                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
9036                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
9037                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
9038                         },
9039                         months: {
9040                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
9041                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
9042                         },
9043                         AM: ["ق.ظ","ق.ظ","ق.ظ"],
9044                         PM: ["ب.ظ","ب.ظ","ب.ظ"],
9045                         eras: [{"name":"م","start":null,"offset":0}],
9046                         patterns: {
9047                                 d: "MM/dd/yyyy",
9048                                 t: "hh:mm tt",
9049                                 T: "hh:mm:ss tt",
9050                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
9051                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
9052                         }
9053                 }
9054         }
9055 });
9056
9057 Globalize.addCultureInfo( "vi-VN", "default", {
9058         name: "vi-VN",
9059         englishName: "Vietnamese (Vietnam)",
9060         nativeName: "Tiếng Việt (Việt Nam)",
9061         language: "vi",
9062         numberFormat: {
9063                 ",": ".",
9064                 ".": ",",
9065                 percent: {
9066                         ",": ".",
9067                         ".": ","
9068                 },
9069                 currency: {
9070                         pattern: ["-n $","n $"],
9071                         ",": ".",
9072                         ".": ",",
9073                         symbol: "₫"
9074                 }
9075         },
9076         calendars: {
9077                 standard: {
9078                         firstDay: 1,
9079                         days: {
9080                                 names: ["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"],
9081                                 namesAbbr: ["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"],
9082                                 namesShort: ["C","H","B","T","N","S","B"]
9083                         },
9084                         months: {
9085                                 names: ["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""],
9086                                 namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""]
9087                         },
9088                         AM: ["SA","sa","SA"],
9089                         PM: ["CH","ch","CH"],
9090                         patterns: {
9091                                 d: "dd/MM/yyyy",
9092                                 D: "dd MMMM yyyy",
9093                                 f: "dd MMMM yyyy h:mm tt",
9094                                 F: "dd MMMM yyyy h:mm:ss tt",
9095                                 M: "dd MMMM",
9096                                 Y: "MMMM yyyy"
9097                         }
9098                 }
9099         }
9100 });
9101
9102 Globalize.addCultureInfo( "hy-AM", "default", {
9103         name: "hy-AM",
9104         englishName: "Armenian (Armenia)",
9105         nativeName: "Հայերեն (Հայաստան)",
9106         language: "hy",
9107         numberFormat: {
9108                 currency: {
9109                         pattern: ["-n $","n $"],
9110                         symbol: "դր."
9111                 }
9112         },
9113         calendars: {
9114                 standard: {
9115                         "/": ".",
9116                         firstDay: 1,
9117                         days: {
9118                                 names: ["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"],
9119                                 namesAbbr: ["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"],
9120                                 namesShort: ["Կ","Ե","Ե","Չ","Հ","Ո","Շ"]
9121                         },
9122                         months: {
9123                                 names: ["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""],
9124                                 namesAbbr: ["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""]
9125                         },
9126                         AM: null,
9127                         PM: null,
9128                         patterns: {
9129                                 d: "dd.MM.yyyy",
9130                                 D: "d MMMM, yyyy",
9131                                 t: "H:mm",
9132                                 T: "H:mm:ss",
9133                                 f: "d MMMM, yyyy H:mm",
9134                                 F: "d MMMM, yyyy H:mm:ss",
9135                                 M: "d MMMM"
9136                         }
9137                 }
9138         }
9139 });
9140
9141 Globalize.addCultureInfo( "az-Latn-AZ", "default", {
9142         name: "az-Latn-AZ",
9143         englishName: "Azeri (Latin, Azerbaijan)",
9144         nativeName: "Azərbaycan­ılı (Azərbaycan)",
9145         language: "az-Latn",
9146         numberFormat: {
9147                 ",": " ",
9148                 ".": ",",
9149                 percent: {
9150                         pattern: ["-n%","n%"],
9151                         ",": " ",
9152                         ".": ","
9153                 },
9154                 currency: {
9155                         pattern: ["-n $","n $"],
9156                         ",": " ",
9157                         ".": ",",
9158                         symbol: "man."
9159                 }
9160         },
9161         calendars: {
9162                 standard: {
9163                         "/": ".",
9164                         firstDay: 1,
9165                         days: {
9166                                 names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"],
9167                                 namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"],
9168                                 namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"]
9169                         },
9170                         months: {
9171                                 names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""],
9172                                 namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""]
9173                         },
9174                         monthsGenitive: {
9175                                 names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],
9176                                 namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""]
9177                         },
9178                         AM: null,
9179                         PM: null,
9180                         patterns: {
9181                                 d: "dd.MM.yyyy",
9182                                 D: "d MMMM yyyy",
9183                                 t: "H:mm",
9184                                 T: "H:mm:ss",
9185                                 f: "d MMMM yyyy H:mm",
9186                                 F: "d MMMM yyyy H:mm:ss",
9187                                 M: "d MMMM",
9188                                 Y: "MMMM yyyy"
9189                         }
9190                 }
9191         }
9192 });
9193
9194 Globalize.addCultureInfo( "eu-ES", "default", {
9195         name: "eu-ES",
9196         englishName: "Basque (Basque)",
9197         nativeName: "euskara (euskara)",
9198         language: "eu",
9199         numberFormat: {
9200                 ",": ".",
9201                 ".": ",",
9202                 NaN: "EdZ",
9203                 negativeInfinity: "-Infinitu",
9204                 positiveInfinity: "Infinitu",
9205                 percent: {
9206                         ",": ".",
9207                         ".": ","
9208                 },
9209                 currency: {
9210                         pattern: ["-n $","n $"],
9211                         ",": ".",
9212                         ".": ",",
9213                         symbol: "€"
9214                 }
9215         },
9216         calendars: {
9217                 standard: {
9218                         firstDay: 1,
9219                         days: {
9220                                 names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"],
9221                                 namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."],
9222                                 namesShort: ["ig","al","as","az","og","or","lr"]
9223                         },
9224                         months: {
9225                                 names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""],
9226                                 namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""]
9227                         },
9228                         AM: null,
9229                         PM: null,
9230                         eras: [{"name":"d.C.","start":null,"offset":0}],
9231                         patterns: {
9232                                 d: "yyyy/MM/dd",
9233                                 D: "dddd, yyyy.'eko' MMMM'k 'd",
9234                                 t: "HH:mm",
9235                                 T: "H:mm:ss",
9236                                 f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm",
9237                                 F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss",
9238                                 Y: "yyyy.'eko' MMMM"
9239                         }
9240                 }
9241         }
9242 });
9243
9244 Globalize.addCultureInfo( "hsb-DE", "default", {
9245         name: "hsb-DE",
9246         englishName: "Upper Sorbian (Germany)",
9247         nativeName: "hornjoserbšćina (Němska)",
9248         language: "hsb",
9249         numberFormat: {
9250                 ",": ".",
9251                 ".": ",",
9252                 NaN: "njedefinowane",
9253                 negativeInfinity: "-njekónčne",
9254                 positiveInfinity: "+njekónčne",
9255                 percent: {
9256                         ",": ".",
9257                         ".": ","
9258                 },
9259                 currency: {
9260                         pattern: ["-n $","n $"],
9261                         ",": ".",
9262                         ".": ",",
9263                         symbol: "€"
9264                 }
9265         },
9266         calendars: {
9267                 standard: {
9268                         "/": ". ",
9269                         firstDay: 1,
9270                         days: {
9271                                 names: ["njedźela","póndźela","wutora","srjeda","štwórtk","pjatk","sobota"],
9272                                 namesAbbr: ["nje","pón","wut","srj","štw","pja","sob"],
9273                                 namesShort: ["n","p","w","s","š","p","s"]
9274                         },
9275                         months: {
9276                                 names: ["januar","februar","měrc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""],
9277                                 namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""]
9278                         },
9279                         monthsGenitive: {
9280                                 names: ["januara","februara","měrca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""],
9281                                 namesAbbr: ["jan","feb","měr","apr","mej","jun","jul","awg","sep","okt","now","dec",""]
9282                         },
9283                         AM: null,
9284                         PM: null,
9285                         eras: [{"name":"po Chr.","start":null,"offset":0}],
9286                         patterns: {
9287                                 d: "d. M. yyyy",
9288                                 D: "dddd, 'dnja' d. MMMM yyyy",
9289                                 t: "H.mm 'hodź.'",
9290                                 T: "H:mm:ss",
9291                                 f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'",
9292                                 F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss",
9293                                 M: "d. MMMM",
9294                                 Y: "MMMM yyyy"
9295                         }
9296                 }
9297         }
9298 });
9299
9300 Globalize.addCultureInfo( "mk-MK", "default", {
9301         name: "mk-MK",
9302         englishName: "Macedonian (Former Yugoslav Republic of Macedonia)",
9303         nativeName: "македонски јазик (Македонија)",
9304         language: "mk",
9305         numberFormat: {
9306                 ",": ".",
9307                 ".": ",",
9308                 percent: {
9309                         ",": ".",
9310                         ".": ","
9311                 },
9312                 currency: {
9313                         pattern: ["-n $","n $"],
9314                         ",": ".",
9315                         ".": ",",
9316                         symbol: "ден."
9317                 }
9318         },
9319         calendars: {
9320                 standard: {
9321                         "/": ".",
9322                         firstDay: 1,
9323                         days: {
9324                                 names: ["недела","понеделник","вторник","среда","четврток","петок","сабота"],
9325                                 namesAbbr: ["нед","пон","втр","срд","чет","пет","саб"],
9326                                 namesShort: ["не","по","вт","ср","че","пе","са"]
9327                         },
9328                         months: {
9329                                 names: ["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""],
9330                                 namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""]
9331                         },
9332                         AM: null,
9333                         PM: null,
9334                         patterns: {
9335                                 d: "dd.MM.yyyy",
9336                                 D: "dddd, dd MMMM yyyy",
9337                                 t: "HH:mm",
9338                                 T: "HH:mm:ss",
9339                                 f: "dddd, dd MMMM yyyy HH:mm",
9340                                 F: "dddd, dd MMMM yyyy HH:mm:ss",
9341                                 M: "dd MMMM",
9342                                 Y: "MMMM yyyy"
9343                         }
9344                 }
9345         }
9346 });
9347
9348 Globalize.addCultureInfo( "tn-ZA", "default", {
9349         name: "tn-ZA",
9350         englishName: "Setswana (South Africa)",
9351         nativeName: "Setswana (Aforika Borwa)",
9352         language: "tn",
9353         numberFormat: {
9354                 percent: {
9355                         pattern: ["-%n","%n"]
9356                 },
9357                 currency: {
9358                         pattern: ["$-n","$ n"],
9359                         symbol: "R"
9360                 }
9361         },
9362         calendars: {
9363                 standard: {
9364                         days: {
9365                                 names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"],
9366                                 namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."],
9367                                 namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"]
9368                         },
9369                         months: {
9370                                 names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""],
9371                                 namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""]
9372                         },
9373                         patterns: {
9374                                 d: "yyyy/MM/dd",
9375                                 D: "dd MMMM yyyy",
9376                                 t: "hh:mm tt",
9377                                 T: "hh:mm:ss tt",
9378                                 f: "dd MMMM yyyy hh:mm tt",
9379                                 F: "dd MMMM yyyy hh:mm:ss tt",
9380                                 M: "dd MMMM",
9381                                 Y: "MMMM yyyy"
9382                         }
9383                 }
9384         }
9385 });
9386
9387 Globalize.addCultureInfo( "xh-ZA", "default", {
9388         name: "xh-ZA",
9389         englishName: "isiXhosa (South Africa)",
9390         nativeName: "isiXhosa (uMzantsi Afrika)",
9391         language: "xh",
9392         numberFormat: {
9393                 percent: {
9394                         pattern: ["-%n","%n"]
9395                 },
9396                 currency: {
9397                         pattern: ["$-n","$ n"],
9398                         symbol: "R"
9399                 }
9400         },
9401         calendars: {
9402                 standard: {
9403                         days: {
9404                                 names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"],
9405                                 namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"]
9406                         },
9407                         months: {
9408                                 names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""]
9409                         },
9410                         patterns: {
9411                                 d: "yyyy/MM/dd",
9412                                 D: "dd MMMM yyyy",
9413                                 t: "hh:mm tt",
9414                                 T: "hh:mm:ss tt",
9415                                 f: "dd MMMM yyyy hh:mm tt",
9416                                 F: "dd MMMM yyyy hh:mm:ss tt",
9417                                 M: "dd MMMM",
9418                                 Y: "MMMM yyyy"
9419                         }
9420                 }
9421         }
9422 });
9423
9424 Globalize.addCultureInfo( "zu-ZA", "default", {
9425         name: "zu-ZA",
9426         englishName: "isiZulu (South Africa)",
9427         nativeName: "isiZulu (iNingizimu Afrika)",
9428         language: "zu",
9429         numberFormat: {
9430                 percent: {
9431                         pattern: ["-%n","%n"]
9432                 },
9433                 currency: {
9434                         pattern: ["$-n","$ n"],
9435                         symbol: "R"
9436                 }
9437         },
9438         calendars: {
9439                 standard: {
9440                         days: {
9441                                 names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"],
9442                                 namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."]
9443                         },
9444                         months: {
9445                                 names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""],
9446                                 namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""]
9447                         },
9448                         patterns: {
9449                                 d: "yyyy/MM/dd",
9450                                 D: "dd MMMM yyyy",
9451                                 t: "hh:mm tt",
9452                                 T: "hh:mm:ss tt",
9453                                 f: "dd MMMM yyyy hh:mm tt",
9454                                 F: "dd MMMM yyyy hh:mm:ss tt",
9455                                 M: "dd MMMM",
9456                                 Y: "MMMM yyyy"
9457                         }
9458                 }
9459         }
9460 });
9461
9462 Globalize.addCultureInfo( "af-ZA", "default", {
9463         name: "af-ZA",
9464         englishName: "Afrikaans (South Africa)",
9465         nativeName: "Afrikaans (Suid Afrika)",
9466         language: "af",
9467         numberFormat: {
9468                 percent: {
9469                         pattern: ["-n%","n%"]
9470                 },
9471                 currency: {
9472                         pattern: ["$-n","$ n"],
9473                         symbol: "R"
9474                 }
9475         },
9476         calendars: {
9477                 standard: {
9478                         days: {
9479                                 names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"],
9480                                 namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"],
9481                                 namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"]
9482                         },
9483                         months: {
9484                                 names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""],
9485                                 namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""]
9486                         },
9487                         patterns: {
9488                                 d: "yyyy/MM/dd",
9489                                 D: "dd MMMM yyyy",
9490                                 t: "hh:mm tt",
9491                                 T: "hh:mm:ss tt",
9492                                 f: "dd MMMM yyyy hh:mm tt",
9493                                 F: "dd MMMM yyyy hh:mm:ss tt",
9494                                 M: "dd MMMM",
9495                                 Y: "MMMM yyyy"
9496                         }
9497                 }
9498         }
9499 });
9500
9501 Globalize.addCultureInfo( "ka-GE", "default", {
9502         name: "ka-GE",
9503         englishName: "Georgian (Georgia)",
9504         nativeName: "ქართული (საქართველო)",
9505         language: "ka",
9506         numberFormat: {
9507                 ",": " ",
9508                 ".": ",",
9509                 percent: {
9510                         ",": " ",
9511                         ".": ","
9512                 },
9513                 currency: {
9514                         pattern: ["-n $","n $"],
9515                         ",": " ",
9516                         ".": ",",
9517                         symbol: "Lari"
9518                 }
9519         },
9520         calendars: {
9521                 standard: {
9522                         "/": ".",
9523                         firstDay: 1,
9524                         days: {
9525                                 names: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"],
9526                                 namesAbbr: ["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"],
9527                                 namesShort: ["კ","ო","ს","ო","ხ","პ","შ"]
9528                         },
9529                         months: {
9530                                 names: ["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""],
9531                                 namesAbbr: ["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""]
9532                         },
9533                         AM: null,
9534                         PM: null,
9535                         patterns: {
9536                                 d: "dd.MM.yyyy",
9537                                 D: "yyyy 'წლის' dd MM, dddd",
9538                                 t: "H:mm",
9539                                 T: "H:mm:ss",
9540                                 f: "yyyy 'წლის' dd MM, dddd H:mm",
9541                                 F: "yyyy 'წლის' dd MM, dddd H:mm:ss",
9542                                 M: "dd MM",
9543                                 Y: "MMMM yyyy"
9544                         }
9545                 }
9546         }
9547 });
9548
9549 Globalize.addCultureInfo( "fo-FO", "default", {
9550         name: "fo-FO",
9551         englishName: "Faroese (Faroe Islands)",
9552         nativeName: "føroyskt (Føroyar)",
9553         language: "fo",
9554         numberFormat: {
9555                 ",": ".",
9556                 ".": ",",
9557                 negativeInfinity: "-INF",
9558                 positiveInfinity: "INF",
9559                 percent: {
9560                         pattern: ["-n%","n%"],
9561                         ",": ".",
9562                         ".": ","
9563                 },
9564                 currency: {
9565                         pattern: ["$ -n","$ n"],
9566                         ",": ".",
9567                         ".": ",",
9568                         symbol: "kr."
9569                 }
9570         },
9571         calendars: {
9572                 standard: {
9573                         "/": "-",
9574                         firstDay: 1,
9575                         days: {
9576                                 names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"],
9577                                 namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"],
9578                                 namesShort: ["su","má","tý","mi","hó","fr","ley"]
9579                         },
9580                         months: {
9581                                 names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""],
9582                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""]
9583                         },
9584                         AM: null,
9585                         PM: null,
9586                         patterns: {
9587                                 d: "dd-MM-yyyy",
9588                                 D: "d. MMMM yyyy",
9589                                 t: "HH:mm",
9590                                 T: "HH:mm:ss",
9591                                 f: "d. MMMM yyyy HH:mm",
9592                                 F: "d. MMMM yyyy HH:mm:ss",
9593                                 M: "d. MMMM",
9594                                 Y: "MMMM yyyy"
9595                         }
9596                 }
9597         }
9598 });
9599
9600 Globalize.addCultureInfo( "hi-IN", "default", {
9601         name: "hi-IN",
9602         englishName: "Hindi (India)",
9603         nativeName: "हिंदी (भारत)",
9604         language: "hi",
9605         numberFormat: {
9606                 groupSizes: [3,2],
9607                 percent: {
9608                         groupSizes: [3,2]
9609                 },
9610                 currency: {
9611                         pattern: ["$ -n","$ n"],
9612                         groupSizes: [3,2],
9613                         symbol: "रु"
9614                 }
9615         },
9616         calendars: {
9617                 standard: {
9618                         "/": "-",
9619                         firstDay: 1,
9620                         days: {
9621                                 names: ["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"],
9622                                 namesAbbr: ["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."],
9623                                 namesShort: ["र","स","म","ब","ग","श","श"]
9624                         },
9625                         months: {
9626                                 names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],
9627                                 namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""]
9628                         },
9629                         AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"],
9630                         PM: ["अपराह्न","अपराह्न","अपराह्न"],
9631                         patterns: {
9632                                 d: "dd-MM-yyyy",
9633                                 D: "dd MMMM yyyy",
9634                                 t: "HH:mm",
9635                                 T: "HH:mm:ss",
9636                                 f: "dd MMMM yyyy HH:mm",
9637                                 F: "dd MMMM yyyy HH:mm:ss",
9638                                 M: "dd MMMM"
9639                         }
9640                 }
9641         }
9642 });
9643
9644 Globalize.addCultureInfo( "mt-MT", "default", {
9645         name: "mt-MT",
9646         englishName: "Maltese (Malta)",
9647         nativeName: "Malti (Malta)",
9648         language: "mt",
9649         numberFormat: {
9650                 percent: {
9651                         pattern: ["-%n","%n"]
9652                 },
9653                 currency: {
9654                         pattern: ["-$n","$n"],
9655                         symbol: "€"
9656                 }
9657         },
9658         calendars: {
9659                 standard: {
9660                         firstDay: 1,
9661                         days: {
9662                                 names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ġimgħa","Is-Sibt"],
9663                                 namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ġim","Sib"],
9664                                 namesShort: ["I","I","I","L","I","I","I"]
9665                         },
9666                         months: {
9667                                 names: ["Jannar","Frar","Marzu","April","Mejju","Ġunju","Lulju","Awissu","Settembru","Ottubru","Novembru","Diċembru",""],
9668                                 namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ġun","Lul","Awi","Set","Ott","Nov","Diċ",""]
9669                         },
9670                         patterns: {
9671                                 d: "dd/MM/yyyy",
9672                                 D: "dddd, d' ta\\' 'MMMM yyyy",
9673                                 t: "HH:mm",
9674                                 T: "HH:mm:ss",
9675                                 f: "dddd, d' ta\\' 'MMMM yyyy HH:mm",
9676                                 F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss",
9677                                 M: "d' ta\\' 'MMMM",
9678                                 Y: "MMMM yyyy"
9679                         }
9680                 }
9681         }
9682 });
9683
9684 Globalize.addCultureInfo( "se-NO", "default", {
9685         name: "se-NO",
9686         englishName: "Sami, Northern (Norway)",
9687         nativeName: "davvisámegiella (Norga)",
9688         language: "se",
9689         numberFormat: {
9690                 ",": " ",
9691                 ".": ",",
9692                 percent: {
9693                         pattern: ["-%n","%n"],
9694                         ",": " ",
9695                         ".": ","
9696                 },
9697                 currency: {
9698                         pattern: ["$ -n","$ n"],
9699                         ",": " ",
9700                         ".": ",",
9701                         symbol: "kr"
9702                 }
9703         },
9704         calendars: {
9705                 standard: {
9706                         "/": ".",
9707                         firstDay: 1,
9708                         days: {
9709                                 names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"],
9710                                 namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"],
9711                                 namesShort: ["s","m","d","g","d","b","l"]
9712                         },
9713                         months: {
9714                                 names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""],
9715                                 namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""]
9716                         },
9717                         monthsGenitive: {
9718                                 names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""],
9719                                 namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""]
9720                         },
9721                         AM: null,
9722                         PM: null,
9723                         patterns: {
9724                                 d: "dd.MM.yyyy",
9725                                 D: "MMMM d'. b. 'yyyy",
9726                                 t: "HH:mm",
9727                                 T: "HH:mm:ss",
9728                                 f: "MMMM d'. b. 'yyyy HH:mm",
9729                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
9730                                 M: "MMMM d'. b. '",
9731                                 Y: "MMMM yyyy"
9732                         }
9733                 }
9734         }
9735 });
9736
9737 Globalize.addCultureInfo( "ms-MY", "default", {
9738         name: "ms-MY",
9739         englishName: "Malay (Malaysia)",
9740         nativeName: "Bahasa Melayu (Malaysia)",
9741         language: "ms",
9742         numberFormat: {
9743                 currency: {
9744                         decimals: 0,
9745                         symbol: "RM"
9746                 }
9747         },
9748         calendars: {
9749                 standard: {
9750                         firstDay: 1,
9751                         days: {
9752                                 names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],
9753                                 namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"],
9754                                 namesShort: ["A","I","S","R","K","J","S"]
9755                         },
9756                         months: {
9757                                 names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""],
9758                                 namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""]
9759                         },
9760                         AM: null,
9761                         PM: null,
9762                         patterns: {
9763                                 d: "dd/MM/yyyy",
9764                                 D: "dd MMMM yyyy",
9765                                 t: "H:mm",
9766                                 T: "H:mm:ss",
9767                                 f: "dd MMMM yyyy H:mm",
9768                                 F: "dd MMMM yyyy H:mm:ss",
9769                                 M: "dd MMMM",
9770                                 Y: "MMMM yyyy"
9771                         }
9772                 }
9773         }
9774 });
9775
9776 Globalize.addCultureInfo( "kk-KZ", "default", {
9777         name: "kk-KZ",
9778         englishName: "Kazakh (Kazakhstan)",
9779         nativeName: "Қазақ (Қазақстан)",
9780         language: "kk",
9781         numberFormat: {
9782                 ",": " ",
9783                 ".": ",",
9784                 percent: {
9785                         pattern: ["-n%","n%"],
9786                         ",": " ",
9787                         ".": ","
9788                 },
9789                 currency: {
9790                         pattern: ["-$n","$n"],
9791                         ",": " ",
9792                         ".": "-",
9793                         symbol: "Т"
9794                 }
9795         },
9796         calendars: {
9797                 standard: {
9798                         "/": ".",
9799                         firstDay: 1,
9800                         days: {
9801                                 names: ["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"],
9802                                 namesAbbr: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"],
9803                                 namesShort: ["Жк","Дс","Сс","Ср","Бс","Жм","Сн"]
9804                         },
9805                         months: {
9806                                 names: ["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""],
9807                                 namesAbbr: ["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""]
9808                         },
9809                         AM: null,
9810                         PM: null,
9811                         patterns: {
9812                                 d: "dd.MM.yyyy",
9813                                 D: "d MMMM yyyy 'ж.'",
9814                                 t: "H:mm",
9815                                 T: "H:mm:ss",
9816                                 f: "d MMMM yyyy 'ж.' H:mm",
9817                                 F: "d MMMM yyyy 'ж.' H:mm:ss",
9818                                 M: "d MMMM",
9819                                 Y: "MMMM yyyy"
9820                         }
9821                 }
9822         }
9823 });
9824
9825 Globalize.addCultureInfo( "ky-KG", "default", {
9826         name: "ky-KG",
9827         englishName: "Kyrgyz (Kyrgyzstan)",
9828         nativeName: "Кыргыз (Кыргызстан)",
9829         language: "ky",
9830         numberFormat: {
9831                 ",": " ",
9832                 ".": ",",
9833                 percent: {
9834                         pattern: ["-n%","n%"],
9835                         ",": " ",
9836                         ".": ","
9837                 },
9838                 currency: {
9839                         pattern: ["-n $","n $"],
9840                         ",": " ",
9841                         ".": "-",
9842                         symbol: "сом"
9843                 }
9844         },
9845         calendars: {
9846                 standard: {
9847                         "/": ".",
9848                         firstDay: 1,
9849                         days: {
9850                                 names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"],
9851                                 namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"],
9852                                 namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"]
9853                         },
9854                         months: {
9855                                 names: ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],
9856                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
9857                         },
9858                         AM: null,
9859                         PM: null,
9860                         patterns: {
9861                                 d: "dd.MM.yy",
9862                                 D: "d'-'MMMM yyyy'-ж.'",
9863                                 t: "H:mm",
9864                                 T: "H:mm:ss",
9865                                 f: "d'-'MMMM yyyy'-ж.' H:mm",
9866                                 F: "d'-'MMMM yyyy'-ж.' H:mm:ss",
9867                                 M: "d MMMM",
9868                                 Y: "MMMM yyyy'-ж.'"
9869                         }
9870                 }
9871         }
9872 });
9873
9874 Globalize.addCultureInfo( "sw-KE", "default", {
9875         name: "sw-KE",
9876         englishName: "Kiswahili (Kenya)",
9877         nativeName: "Kiswahili (Kenya)",
9878         language: "sw",
9879         numberFormat: {
9880                 currency: {
9881                         symbol: "S"
9882                 }
9883         },
9884         calendars: {
9885                 standard: {
9886                         days: {
9887                                 names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"],
9888                                 namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."],
9889                                 namesShort: ["P","T","N","T","A","I","M"]
9890                         },
9891                         months: {
9892                                 names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""],
9893                                 namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""]
9894                         }
9895                 }
9896         }
9897 });
9898
9899 Globalize.addCultureInfo( "tk-TM", "default", {
9900         name: "tk-TM",
9901         englishName: "Turkmen (Turkmenistan)",
9902         nativeName: "türkmençe (Türkmenistan)",
9903         language: "tk",
9904         numberFormat: {
9905                 ",": " ",
9906                 ".": ",",
9907                 negativeInfinity: "-üznüksizlik",
9908                 positiveInfinity: "üznüksizlik",
9909                 percent: {
9910                         pattern: ["-n%","n%"],
9911                         ",": " ",
9912                         ".": ","
9913                 },
9914                 currency: {
9915                         pattern: ["-n$","n$"],
9916                         ",": " ",
9917                         ".": ",",
9918                         symbol: "m."
9919                 }
9920         },
9921         calendars: {
9922                 standard: {
9923                         "/": ".",
9924                         firstDay: 1,
9925                         days: {
9926                                 names: ["Duşenbe","Sişenbe","Çarşenbe","Penşenbe","Anna","Şenbe","Ýekşenbe"],
9927                                 namesAbbr: ["Db","Sb","Çb","Pb","An","Şb","Ýb"],
9928                                 namesShort: ["D","S","Ç","P","A","Ş","Ý"]
9929                         },
9930                         months: {
9931                                 names: ["Ýanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""],
9932                                 namesAbbr: ["Ýan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""]
9933                         },
9934                         AM: null,
9935                         PM: null,
9936                         patterns: {
9937                                 d: "dd.MM.yy",
9938                                 D: "yyyy 'ý.' MMMM d",
9939                                 t: "H:mm",
9940                                 T: "H:mm:ss",
9941                                 f: "yyyy 'ý.' MMMM d H:mm",
9942                                 F: "yyyy 'ý.' MMMM d H:mm:ss",
9943                                 Y: "yyyy 'ý.' MMMM"
9944                         }
9945                 }
9946         }
9947 });
9948
9949 Globalize.addCultureInfo( "uz-Latn-UZ", "default", {
9950         name: "uz-Latn-UZ",
9951         englishName: "Uzbek (Latin, Uzbekistan)",
9952         nativeName: "U'zbek (U'zbekiston Respublikasi)",
9953         language: "uz-Latn",
9954         numberFormat: {
9955                 ",": " ",
9956                 ".": ",",
9957                 percent: {
9958                         pattern: ["-n%","n%"],
9959                         ",": " ",
9960                         ".": ","
9961                 },
9962                 currency: {
9963                         pattern: ["-n $","n $"],
9964                         decimals: 0,
9965                         ",": " ",
9966                         ".": ",",
9967                         symbol: "so'm"
9968                 }
9969         },
9970         calendars: {
9971                 standard: {
9972                         firstDay: 1,
9973                         days: {
9974                                 names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"],
9975                                 namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."],
9976                                 namesShort: ["ya","d","s","ch","p","j","sh"]
9977                         },
9978                         months: {
9979                                 names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],
9980                                 namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""]
9981                         },
9982                         AM: null,
9983                         PM: null,
9984                         patterns: {
9985                                 d: "dd/MM yyyy",
9986                                 D: "yyyy 'yil' d-MMMM",
9987                                 t: "HH:mm",
9988                                 T: "HH:mm:ss",
9989                                 f: "yyyy 'yil' d-MMMM HH:mm",
9990                                 F: "yyyy 'yil' d-MMMM HH:mm:ss",
9991                                 M: "d-MMMM",
9992                                 Y: "MMMM yyyy"
9993                         }
9994                 }
9995         }
9996 });
9997
9998 Globalize.addCultureInfo( "tt-RU", "default", {
9999         name: "tt-RU",
10000         englishName: "Tatar (Russia)",
10001         nativeName: "Татар (Россия)",
10002         language: "tt",
10003         numberFormat: {
10004                 ",": " ",
10005                 ".": ",",
10006                 percent: {
10007                         pattern: ["-n%","n%"],
10008                         ",": " ",
10009                         ".": ","
10010                 },
10011                 currency: {
10012                         pattern: ["-n $","n $"],
10013                         ",": " ",
10014                         ".": ",",
10015                         symbol: "р."
10016                 }
10017         },
10018         calendars: {
10019                 standard: {
10020                         "/": ".",
10021                         firstDay: 1,
10022                         days: {
10023                                 names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"],
10024                                 namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"],
10025                                 namesShort: ["Я","Д","С","Ч","П","Җ","Ш"]
10026                         },
10027                         months: {
10028                                 names: ["Гыйнвар","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],
10029                                 namesAbbr: ["Гыйн.","Фев.","Мар.","Апр.","Май","Июнь","Июль","Авг.","Сен.","Окт.","Нояб.","Дек.",""]
10030                         },
10031                         monthsGenitive: {
10032                                 names: ["Гыйнварның","Февральнең","Мартның","Апрельнең","Майның","Июньнең","Июльнең","Августның","Сентябрьның","Октябрьның","Ноябрьның","Декабрьның",""],
10033                                 namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Апр.-нең","Майның","Июньнең","Июльнең","Авг.-ның","Сен.-ның","Окт.-ның","Нояб.-ның","Дек.-ның",""]
10034                         },
10035                         AM: null,
10036                         PM: null,
10037                         patterns: {
10038                                 d: "dd.MM.yyyy",
10039                                 D: "d MMMM yyyy",
10040                                 t: "H:mm",
10041                                 T: "H:mm:ss",
10042                                 f: "d MMMM yyyy H:mm",
10043                                 F: "d MMMM yyyy H:mm:ss",
10044                                 M: "d MMMM",
10045                                 Y: "MMMM yyyy"
10046                         }
10047                 }
10048         }
10049 });
10050
10051 Globalize.addCultureInfo( "bn-IN", "default", {
10052         name: "bn-IN",
10053         englishName: "Bengali (India)",
10054         nativeName: "বাংলা (ভারত)",
10055         language: "bn",
10056         numberFormat: {
10057                 groupSizes: [3,2],
10058                 percent: {
10059                         pattern: ["-%n","%n"],
10060                         groupSizes: [3,2]
10061                 },
10062                 currency: {
10063                         pattern: ["$ -n","$ n"],
10064                         groupSizes: [3,2],
10065                         symbol: "টা"
10066                 }
10067         },
10068         calendars: {
10069                 standard: {
10070                         "/": "-",
10071                         ":": ".",
10072                         firstDay: 1,
10073                         days: {
10074                                 names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"],
10075                                 namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."],
10076                                 namesShort: ["র","স","ম","ব","ব","শ","শ"]
10077                         },
10078                         months: {
10079                                 names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""],
10080                                 namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""]
10081                         },
10082                         AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"],
10083                         PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"],
10084                         patterns: {
10085                                 d: "dd-MM-yy",
10086                                 D: "dd MMMM yyyy",
10087                                 t: "HH.mm",
10088                                 T: "HH.mm.ss",
10089                                 f: "dd MMMM yyyy HH.mm",
10090                                 F: "dd MMMM yyyy HH.mm.ss",
10091                                 M: "dd MMMM"
10092                         }
10093                 }
10094         }
10095 });
10096
10097 Globalize.addCultureInfo( "pa-IN", "default", {
10098         name: "pa-IN",
10099         englishName: "Punjabi (India)",
10100         nativeName: "ਪੰਜਾਬੀ (ਭਾਰਤ)",
10101         language: "pa",
10102         numberFormat: {
10103                 groupSizes: [3,2],
10104                 percent: {
10105                         groupSizes: [3,2]
10106                 },
10107                 currency: {
10108                         pattern: ["$ -n","$ n"],
10109                         groupSizes: [3,2],
10110                         symbol: "ਰੁ"
10111                 }
10112         },
10113         calendars: {
10114                 standard: {
10115                         "/": "-",
10116                         firstDay: 1,
10117                         days: {
10118                                 names: ["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁੱਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨਿੱਚਰਵਾਰ"],
10119                                 namesAbbr: ["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁੱਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨਿੱਚਰ."],
10120                                 namesShort: ["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"]
10121                         },
10122                         months: {
10123                                 names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""],
10124                                 namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""]
10125                         },
10126                         AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"],
10127                         PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"],
10128                         patterns: {
10129                                 d: "dd-MM-yy",
10130                                 D: "dd MMMM yyyy dddd",
10131                                 t: "tt hh:mm",
10132                                 T: "tt hh:mm:ss",
10133                                 f: "dd MMMM yyyy dddd tt hh:mm",
10134                                 F: "dd MMMM yyyy dddd tt hh:mm:ss",
10135                                 M: "dd MMMM"
10136                         }
10137                 }
10138         }
10139 });
10140
10141 Globalize.addCultureInfo( "gu-IN", "default", {
10142         name: "gu-IN",
10143         englishName: "Gujarati (India)",
10144         nativeName: "ગુજરાતી (ભારત)",
10145         language: "gu",
10146         numberFormat: {
10147                 groupSizes: [3,2],
10148                 percent: {
10149                         groupSizes: [3,2]
10150                 },
10151                 currency: {
10152                         pattern: ["$ -n","$ n"],
10153                         groupSizes: [3,2],
10154                         symbol: "રૂ"
10155                 }
10156         },
10157         calendars: {
10158                 standard: {
10159                         "/": "-",
10160                         firstDay: 1,
10161                         days: {
10162                                 names: ["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"],
10163                                 namesAbbr: ["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"],
10164                                 namesShort: ["ર","સ","મ","બ","ગ","શ","શ"]
10165                         },
10166                         months: {
10167                                 names: ["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""],
10168                                 namesAbbr: ["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""]
10169                         },
10170                         AM: ["પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન","પૂર્વ મધ્યાહ્ન"],
10171                         PM: ["ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન","ઉત્તર મધ્યાહ્ન"],
10172                         patterns: {
10173                                 d: "dd-MM-yy",
10174                                 D: "dd MMMM yyyy",
10175                                 t: "HH:mm",
10176                                 T: "HH:mm:ss",
10177                                 f: "dd MMMM yyyy HH:mm",
10178                                 F: "dd MMMM yyyy HH:mm:ss",
10179                                 M: "dd MMMM"
10180                         }
10181                 }
10182         }
10183 });
10184
10185 Globalize.addCultureInfo( "or-IN", "default", {
10186         name: "or-IN",
10187         englishName: "Oriya (India)",
10188         nativeName: "ଓଡ଼ିଆ (ଭାରତ)",
10189         language: "or",
10190         numberFormat: {
10191                 groupSizes: [3,2],
10192                 percent: {
10193                         groupSizes: [3,2]
10194                 },
10195                 currency: {
10196                         pattern: ["$ -n","$ n"],
10197                         groupSizes: [3,2],
10198                         symbol: "ଟ"
10199                 }
10200         },
10201         calendars: {
10202                 standard: {
10203                         "/": "-",
10204                         days: {
10205                                 names: ["ରବିବାର","ସୋମବାର","ମଙ୍ଗଳବାର","ବୁଧବାର","ଗୁରୁବାର","ଶୁକ୍ରବାର","ଶନିବାର"],
10206                                 namesAbbr: ["ରବି.","ସୋମ.","ମଙ୍ଗଳ.","ବୁଧ.","ଗୁରୁ.","ଶୁକ୍ର.","ଶନି."],
10207                                 namesShort: ["ର","ସୋ","ମ","ବୁ","ଗୁ","ଶୁ","ଶ"]
10208                         },
10209                         months: {
10210                                 names: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍‌","ମେ","ଜୁନ୍‌","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""],
10211                                 namesAbbr: ["ଜାନୁୟାରୀ","ଫ୍ରେବୃୟାରୀ","ମାର୍ଚ୍ଚ","ଏପ୍ରିଲ୍‌","ମେ","ଜୁନ୍‌","ଜୁଲାଇ","ଅଗଷ୍ଟ","ସେପ୍ଟେମ୍ବର","ଅକ୍ଟୋବର","ନଭେମ୍ବର","(ଡିସେମ୍ବର",""]
10212                         },
10213                         eras: [{"name":"ଖ୍ରୀଷ୍ଟାବ୍ଦ","start":null,"offset":0}],
10214                         patterns: {
10215                                 d: "dd-MM-yy",
10216                                 D: "dd MMMM yyyy",
10217                                 t: "HH:mm",
10218                                 T: "HH:mm:ss",
10219                                 f: "dd MMMM yyyy HH:mm",
10220                                 F: "dd MMMM yyyy HH:mm:ss",
10221                                 M: "dd MMMM"
10222                         }
10223                 }
10224         }
10225 });
10226
10227 Globalize.addCultureInfo( "ta-IN", "default", {
10228         name: "ta-IN",
10229         englishName: "Tamil (India)",
10230         nativeName: "தமிழ் (இந்தியா)",
10231         language: "ta",
10232         numberFormat: {
10233                 groupSizes: [3,2],
10234                 percent: {
10235                         groupSizes: [3,2]
10236                 },
10237                 currency: {
10238                         pattern: ["$ -n","$ n"],
10239                         groupSizes: [3,2],
10240                         symbol: "ரூ"
10241                 }
10242         },
10243         calendars: {
10244                 standard: {
10245                         "/": "-",
10246                         firstDay: 1,
10247                         days: {
10248                                 names: ["ஞாயிற்றுக்கிழமை","திங்கள்கிழமை","செவ்வாய்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"],
10249                                 namesAbbr: ["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"],
10250                                 namesShort: ["ஞா","தி","செ","பு","வி","வெ","ச"]
10251                         },
10252                         months: {
10253                                 names: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""],
10254                                 namesAbbr: ["ஜனவரி","பிப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""]
10255                         },
10256                         AM: ["காலை","காலை","காலை"],
10257                         PM: ["மாலை","மாலை","மாலை"],
10258                         patterns: {
10259                                 d: "dd-MM-yyyy",
10260                                 D: "dd MMMM yyyy",
10261                                 t: "HH:mm",
10262                                 T: "HH:mm:ss",
10263                                 f: "dd MMMM yyyy HH:mm",
10264                                 F: "dd MMMM yyyy HH:mm:ss",
10265                                 M: "dd MMMM",
10266                                 Y: "MMMM yyyy"
10267                         }
10268                 }
10269         }
10270 });
10271
10272 Globalize.addCultureInfo( "te-IN", "default", {
10273         name: "te-IN",
10274         englishName: "Telugu (India)",
10275         nativeName: "తెలుగు (భారత దేశం)",
10276         language: "te",
10277         numberFormat: {
10278                 groupSizes: [3,2],
10279                 percent: {
10280                         groupSizes: [3,2]
10281                 },
10282                 currency: {
10283                         pattern: ["$ -n","$ n"],
10284                         groupSizes: [3,2],
10285                         symbol: "రూ"
10286                 }
10287         },
10288         calendars: {
10289                 standard: {
10290                         "/": "-",
10291                         firstDay: 1,
10292                         days: {
10293                                 names: ["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"],
10294                                 namesAbbr: ["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."],
10295                                 namesShort: ["ఆ","సో","మం","బు","గు","శు","శ"]
10296                         },
10297                         months: {
10298                                 names: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""],
10299                                 namesAbbr: ["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""]
10300                         },
10301                         AM: ["పూర్వాహ్న","పూర్వాహ్న","పూర్వాహ్న"],
10302                         PM: ["అపరాహ్న","అపరాహ్న","అపరాహ్న"],
10303                         patterns: {
10304                                 d: "dd-MM-yy",
10305                                 D: "dd MMMM yyyy",
10306                                 t: "HH:mm",
10307                                 T: "HH:mm:ss",
10308                                 f: "dd MMMM yyyy HH:mm",
10309                                 F: "dd MMMM yyyy HH:mm:ss",
10310                                 M: "dd MMMM"
10311                         }
10312                 }
10313         }
10314 });
10315
10316 Globalize.addCultureInfo( "kn-IN", "default", {
10317         name: "kn-IN",
10318         englishName: "Kannada (India)",
10319         nativeName: "ಕನ್ನಡ (ಭಾರತ)",
10320         language: "kn",
10321         numberFormat: {
10322                 groupSizes: [3,2],
10323                 percent: {
10324                         groupSizes: [3,2]
10325                 },
10326                 currency: {
10327                         pattern: ["$ -n","$ n"],
10328                         groupSizes: [3,2],
10329                         symbol: "ರೂ"
10330                 }
10331         },
10332         calendars: {
10333                 standard: {
10334                         "/": "-",
10335                         firstDay: 1,
10336                         days: {
10337                                 names: ["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"],
10338                                 namesAbbr: ["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."],
10339                                 namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"]
10340                         },
10341                         months: {
10342                                 names: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""],
10343                                 namesAbbr: ["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""]
10344                         },
10345                         AM: ["ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ","ಪೂರ್ವಾಹ್ನ"],
10346                         PM: ["ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ","ಅಪರಾಹ್ನ"],
10347                         patterns: {
10348                                 d: "dd-MM-yy",
10349                                 D: "dd MMMM yyyy",
10350                                 t: "HH:mm",
10351                                 T: "HH:mm:ss",
10352                                 f: "dd MMMM yyyy HH:mm",
10353                                 F: "dd MMMM yyyy HH:mm:ss",
10354                                 M: "dd MMMM"
10355                         }
10356                 }
10357         }
10358 });
10359
10360 Globalize.addCultureInfo( "ml-IN", "default", {
10361         name: "ml-IN",
10362         englishName: "Malayalam (India)",
10363         nativeName: "മലയാളം (ഭാരതം)",
10364         language: "ml",
10365         numberFormat: {
10366                 groupSizes: [3,2],
10367                 percent: {
10368                         pattern: ["-%n","%n"],
10369                         groupSizes: [3,2]
10370                 },
10371                 currency: {
10372                         pattern: ["$ -n","$ n"],
10373                         groupSizes: [3,2],
10374                         symbol: "ക"
10375                 }
10376         },
10377         calendars: {
10378                 standard: {
10379                         "/": "-",
10380                         ":": ".",
10381                         firstDay: 1,
10382                         days: {
10383                                 names: ["ഞായറാഴ്ച","തിങ്കളാഴ്ച","ചൊവ്വാഴ്ച","ബുധനാഴ്ച","വ്യാഴാഴ്ച","വെള്ളിയാഴ്ച","ശനിയാഴ്ച"],
10384                                 namesAbbr: ["ഞായർ.","തിങ്കൾ.","ചൊവ്വ.","ബുധൻ.","വ്യാഴം.","വെള്ളി.","ശനി."],
10385                                 namesShort: ["ഞ","ത","ച","ബ","വ","വെ","ശ"]
10386                         },
10387                         months: {
10388                                 names: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""],
10389                                 namesAbbr: ["ജനുവരി","ഫെബ്റുവരി","മാറ്ച്ച്","ഏപ്റില്","മെയ്","ജൂണ്","ജൂലൈ","ഓഗസ്ററ്","സെപ്ററംബറ്","ഒക്ടോബറ്","നവംബറ്","ഡിസംബറ്",""]
10390                         },
10391                         patterns: {
10392                                 d: "dd-MM-yy",
10393                                 D: "dd MMMM yyyy",
10394                                 t: "HH.mm",
10395                                 T: "HH.mm.ss",
10396                                 f: "dd MMMM yyyy HH.mm",
10397                                 F: "dd MMMM yyyy HH.mm.ss",
10398                                 M: "dd MMMM"
10399                         }
10400                 }
10401         }
10402 });
10403
10404 Globalize.addCultureInfo( "as-IN", "default", {
10405         name: "as-IN",
10406         englishName: "Assamese (India)",
10407         nativeName: "অসমীয়া (ভাৰত)",
10408         language: "as",
10409         numberFormat: {
10410                 groupSizes: [3,2],
10411                 NaN: "nan",
10412                 negativeInfinity: "-infinity",
10413                 positiveInfinity: "infinity",
10414                 percent: {
10415                         pattern: ["-n%","n%"],
10416                         groupSizes: [3,2]
10417                 },
10418                 currency: {
10419                         pattern: ["$ -n","n$"],
10420                         groupSizes: [3,2],
10421                         symbol: "ট"
10422                 }
10423         },
10424         calendars: {
10425                 standard: {
10426                         "/": "-",
10427                         firstDay: 1,
10428                         days: {
10429                                 names: ["সোমবাৰ","মঙ্গলবাৰ","বুধবাৰ","বৃহস্পতিবাৰ","শুক্রবাৰ","শনিবাৰ","ৰবিবাৰ"],
10430                                 namesAbbr: ["সোম.","মঙ্গল.","বুধ.","বৃহ.","শুক্র.","শনি.","ৰবি."],
10431                                 namesShort: ["সো","ম","বু","বৃ","শু","শ","র"]
10432                         },
10433                         months: {
10434                                 names: ["জানুৱাৰী","ফেব্রুৱাৰী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টেম্বর","অক্টোবর","নবেম্বর","ডিচেম্বর",""],
10435                                 namesAbbr: ["জানু","ফেব্রু","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগষ্ট","চেপ্টে","অক্টো","নবে","ডিচে",""]
10436                         },
10437                         AM: ["ৰাতিপু","ৰাতিপু","ৰাতিপু"],
10438                         PM: ["আবেলি","আবেলি","আবেলি"],
10439                         eras: [{"name":"খ্রীষ্টাব্দ","start":null,"offset":0}],
10440                         patterns: {
10441                                 d: "dd-MM-yyyy",
10442                                 D: "yyyy,MMMM dd, dddd",
10443                                 t: "tt h:mm",
10444                                 T: "tt h:mm:ss",
10445                                 f: "yyyy,MMMM dd, dddd tt h:mm",
10446                                 F: "yyyy,MMMM dd, dddd tt h:mm:ss",
10447                                 M: "dd MMMM",
10448                                 Y: "MMMM,yy"
10449                         }
10450                 }
10451         }
10452 });
10453
10454 Globalize.addCultureInfo( "mr-IN", "default", {
10455         name: "mr-IN",
10456         englishName: "Marathi (India)",
10457         nativeName: "मराठी (भारत)",
10458         language: "mr",
10459         numberFormat: {
10460                 groupSizes: [3,2],
10461                 percent: {
10462                         groupSizes: [3,2]
10463                 },
10464                 currency: {
10465                         pattern: ["$ -n","$ n"],
10466                         groupSizes: [3,2],
10467                         symbol: "रु"
10468                 }
10469         },
10470         calendars: {
10471                 standard: {
10472                         "/": "-",
10473                         firstDay: 1,
10474                         days: {
10475                                 names: ["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"],
10476                                 namesAbbr: ["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."],
10477                                 namesShort: ["र","स","म","ब","ग","श","श"]
10478                         },
10479                         months: {
10480                                 names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""],
10481                                 namesAbbr: ["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""]
10482                         },
10483                         AM: ["म.पू.","म.पू.","म.पू."],
10484                         PM: ["म.नं.","म.नं.","म.नं."],
10485                         patterns: {
10486                                 d: "dd-MM-yyyy",
10487                                 D: "dd MMMM yyyy",
10488                                 t: "HH:mm",
10489                                 T: "HH:mm:ss",
10490                                 f: "dd MMMM yyyy HH:mm",
10491                                 F: "dd MMMM yyyy HH:mm:ss",
10492                                 M: "dd MMMM"
10493                         }
10494                 }
10495         }
10496 });
10497
10498 Globalize.addCultureInfo( "sa-IN", "default", {
10499         name: "sa-IN",
10500         englishName: "Sanskrit (India)",
10501         nativeName: "संस्कृत (भारतम्)",
10502         language: "sa",
10503         numberFormat: {
10504                 groupSizes: [3,2],
10505                 percent: {
10506                         groupSizes: [3,2]
10507                 },
10508                 currency: {
10509                         pattern: ["$ -n","$ n"],
10510                         groupSizes: [3,2],
10511                         symbol: "रु"
10512                 }
10513         },
10514         calendars: {
10515                 standard: {
10516                         "/": "-",
10517                         days: {
10518                                 names: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"],
10519                                 namesAbbr: ["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"],
10520                                 namesShort: ["र","स","म","ब","ग","श","श"]
10521                         },
10522                         months: {
10523                                 names: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],
10524                                 namesAbbr: ["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""]
10525                         },
10526                         AM: ["पूर्वाह्न","पूर्वाह्न","पूर्वाह्न"],
10527                         PM: ["अपराह्न","अपराह्न","अपराह्न"],
10528                         patterns: {
10529                                 d: "dd-MM-yyyy",
10530                                 D: "dd MMMM yyyy dddd",
10531                                 t: "HH:mm",
10532                                 T: "HH:mm:ss",
10533                                 f: "dd MMMM yyyy dddd HH:mm",
10534                                 F: "dd MMMM yyyy dddd HH:mm:ss",
10535                                 M: "dd MMMM"
10536                         }
10537                 }
10538         }
10539 });
10540
10541 Globalize.addCultureInfo( "mn-MN", "default", {
10542         name: "mn-MN",
10543         englishName: "Mongolian (Cyrillic, Mongolia)",
10544         nativeName: "Монгол хэл (Монгол улс)",
10545         language: "mn-Cyrl",
10546         numberFormat: {
10547                 ",": " ",
10548                 ".": ",",
10549                 percent: {
10550                         ",": " ",
10551                         ".": ","
10552                 },
10553                 currency: {
10554                         pattern: ["-n$","n$"],
10555                         ",": " ",
10556                         ".": ",",
10557                         symbol: "₮"
10558                 }
10559         },
10560         calendars: {
10561                 standard: {
10562                         "/": ".",
10563                         firstDay: 1,
10564                         days: {
10565                                 names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"],
10566                                 namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"],
10567                                 namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"]
10568                         },
10569                         months: {
10570                                 names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""],
10571                                 namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""]
10572                         },
10573                         monthsGenitive: {
10574                                 names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""],
10575                                 namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""]
10576                         },
10577                         AM: null,
10578                         PM: null,
10579                         patterns: {
10580                                 d: "yy.MM.dd",
10581                                 D: "yyyy 'оны' MMMM d",
10582                                 t: "H:mm",
10583                                 T: "H:mm:ss",
10584                                 f: "yyyy 'оны' MMMM d H:mm",
10585                                 F: "yyyy 'оны' MMMM d H:mm:ss",
10586                                 M: "d MMMM",
10587                                 Y: "yyyy 'он' MMMM"
10588                         }
10589                 }
10590         }
10591 });
10592
10593 Globalize.addCultureInfo( "bo-CN", "default", {
10594         name: "bo-CN",
10595         englishName: "Tibetan (PRC)",
10596         nativeName: "བོད་ཡིག (ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མཐུན་རྒྱལ་ཁབ།)",
10597         language: "bo",
10598         numberFormat: {
10599                 groupSizes: [3,0],
10600                 NaN: "ཨང་ཀི་མིན་པ།",
10601                 negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བ།",
10602                 positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བ།",
10603                 percent: {
10604                         pattern: ["-n%","n%"],
10605                         groupSizes: [3,0]
10606                 },
10607                 currency: {
10608                         pattern: ["$-n","$n"],
10609                         groupSizes: [3,0],
10610                         symbol: "¥"
10611                 }
10612         },
10613         calendars: {
10614                 standard: {
10615                         firstDay: 1,
10616                         days: {
10617                                 names: ["གཟའ་ཉི་མ།","གཟའ་ཟླ་བ།","གཟའ་མིག་དམར།","གཟའ་ལྷག་པ།","གཟའ་ཕུར་བུ།","གཟའ་པ་སངས།","གཟའ་སྤེན་པ།"],
10618                                 namesAbbr: ["ཉི་མ།","ཟླ་བ།","མིག་དམར།","ལྷག་པ།","ཕུར་བུ།","པ་སངས།","སྤེན་པ།"],
10619                                 namesShort: ["༧","༡","༢","༣","༤","༥","༦"]
10620                         },
10621                         months: {
10622                                 names: ["སྤྱི་ཟླ་དང་པོ།","སྤྱི་ཟླ་གཉིས་པ།","སྤྱི་ཟླ་གསུམ་པ།","སྤྱི་ཟླ་བཞི་པ།","སྤྱི་ཟླ་ལྔ་པ།","སྤྱི་ཟླ་དྲུག་པ།","སྤྱི་ཟླ་བདུན་པ།","སྤྱི་ཟླ་བརྒྱད་པ།","སྤྱི་ཟླ་དགུ་པ།","སྤྱི་ཟླ་བཅུ་པོ།","སྤྱི་ཟླ་བཅུ་གཅིག་པ།","སྤྱི་ཟླ་བཅུ་གཉིས་པ།",""],
10623                                 namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""]
10624                         },
10625                         AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"],
10626                         PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"],
10627                         eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}],
10628                         patterns: {
10629                                 d: "yyyy/M/d",
10630                                 D: "yyyy'ལོའི་ཟླ' M'ཚེས' d",
10631                                 t: "HH:mm",
10632                                 T: "HH:mm:ss",
10633                                 f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm",
10634                                 F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss",
10635                                 M: "'ཟླ་' M'ཚེས'd",
10636                                 Y: "yyyy.M"
10637                         }
10638                 }
10639         }
10640 });
10641
10642 Globalize.addCultureInfo( "cy-GB", "default", {
10643         name: "cy-GB",
10644         englishName: "Welsh (United Kingdom)",
10645         nativeName: "Cymraeg (y Deyrnas Unedig)",
10646         language: "cy",
10647         numberFormat: {
10648                 percent: {
10649                         pattern: ["-%n","%n"]
10650                 },
10651                 currency: {
10652                         pattern: ["-$n","$n"],
10653                         symbol: "£"
10654                 }
10655         },
10656         calendars: {
10657                 standard: {
10658                         firstDay: 1,
10659                         days: {
10660                                 names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"],
10661                                 namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"],
10662                                 namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"]
10663                         },
10664                         months: {
10665                                 names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""],
10666                                 namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""]
10667                         },
10668                         AM: ["a.m.","a.m.","A.M."],
10669                         PM: ["p.m.","p.m.","P.M."],
10670                         patterns: {
10671                                 d: "dd/MM/yyyy",
10672                                 D: "dd MMMM yyyy",
10673                                 t: "HH:mm",
10674                                 T: "HH:mm:ss",
10675                                 f: "dd MMMM yyyy HH:mm",
10676                                 F: "dd MMMM yyyy HH:mm:ss",
10677                                 M: "dd MMMM",
10678                                 Y: "MMMM yyyy"
10679                         }
10680                 }
10681         }
10682 });
10683
10684 Globalize.addCultureInfo( "km-KH", "default", {
10685         name: "km-KH",
10686         englishName: "Khmer (Cambodia)",
10687         nativeName: "ខ្មែរ (កម្ពុជា)",
10688         language: "km",
10689         numberFormat: {
10690                 pattern: ["- n"],
10691                 groupSizes: [3,0],
10692                 NaN: "NAN",
10693                 negativeInfinity: "-- អនន្ត",
10694                 positiveInfinity: "អនន្ត",
10695                 percent: {
10696                         pattern: ["-n%","n%"],
10697                         groupSizes: [3,0]
10698                 },
10699                 currency: {
10700                         pattern: ["-n$","n$"],
10701                         symbol: "៛"
10702                 }
10703         },
10704         calendars: {
10705                 standard: {
10706                         "/": "-",
10707                         days: {
10708                                 names: ["ថ្ងៃអាទិត្យ","ថ្ងៃច័ន្ទ","ថ្ងៃអង្គារ","ថ្ងៃពុធ","ថ្ងៃព្រហស្បតិ៍","ថ្ងៃសុក្រ","ថ្ងៃសៅរ៍"],
10709                                 namesAbbr: ["អាទិ.","ច.","អ.","ពុ","ព្រហ.","សុ.","ស."],
10710                                 namesShort: ["អា","ច","អ","ពុ","ព្","សុ","ស"]
10711                         },
10712                         months: {
10713                                 names: ["មករា","កុម្ភៈ","មិនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ",""],
10714                                 namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""]
10715                         },
10716                         AM: ["ព្រឹក","ព្រឹក","ព្រឹក"],
10717                         PM: ["ល្ងាច","ល្ងាច","ល្ងាច"],
10718                         eras: [{"name":"មុនគ.ស.","start":null,"offset":0}],
10719                         patterns: {
10720                                 d: "yyyy-MM-dd",
10721                                 D: "d MMMM yyyy",
10722                                 t: "H:mm tt",
10723                                 T: "HH:mm:ss",
10724                                 f: "d MMMM yyyy H:mm tt",
10725                                 F: "d MMMM yyyy HH:mm:ss",
10726                                 M: "'ថ្ងៃទី' dd 'ខែ' MM",
10727                                 Y: "'ខែ' MM 'ឆ្នាំ' yyyy"
10728                         }
10729                 },
10730                 Gregorian_TransliteratedEnglish: {
10731                         name: "Gregorian_TransliteratedEnglish",
10732                         days: {
10733                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
10734                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
10735                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
10736                         },
10737                         months: {
10738                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
10739                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
10740                         },
10741                         AM: ["ព្រឹក","ព្រឹក","ព្រឹក"],
10742                         PM: ["ល្ងាច","ល្ងាច","ល្ងាច"],
10743                         eras: [{"name":"م","start":null,"offset":0}],
10744                         patterns: {
10745                                 d: "MM/dd/yyyy",
10746                                 t: "H:mm tt",
10747                                 T: "HH:mm:ss",
10748                                 f: "dddd, MMMM dd, yyyy H:mm tt",
10749                                 F: "dddd, MMMM dd, yyyy HH:mm:ss"
10750                         }
10751                 }
10752         }
10753 });
10754
10755 Globalize.addCultureInfo( "lo-LA", "default", {
10756         name: "lo-LA",
10757         englishName: "Lao (Lao P.D.R.)",
10758         nativeName: "ລາວ (ສ.ປ.ປ. ລາວ)",
10759         language: "lo",
10760         numberFormat: {
10761                 pattern: ["(n)"],
10762                 groupSizes: [3,0],
10763                 percent: {
10764                         groupSizes: [3,0]
10765                 },
10766                 currency: {
10767                         pattern: ["(n$)","n$"],
10768                         groupSizes: [3,0],
10769                         symbol: "₭"
10770                 }
10771         },
10772         calendars: {
10773                 standard: {
10774                         days: {
10775                                 names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸກ","ວັນເສົາ"],
10776                                 namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸກ","ເສົາ"],
10777                                 namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"]
10778                         },
10779                         months: {
10780                                 names: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""],
10781                                 namesAbbr: ["ມັງກອນ","ກຸມພາ","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","ກໍລະກົດ","ສິງຫາ","ກັນຍາ","ຕຸລາ","ພະຈິກ","ທັນວາ",""]
10782                         },
10783                         AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"],
10784                         PM: ["ແລງ","ແລງ","ແລງ"],
10785                         patterns: {
10786                                 d: "dd/MM/yyyy",
10787                                 D: "dd MMMM yyyy",
10788                                 t: "H:mm tt",
10789                                 T: "HH:mm:ss",
10790                                 f: "dd MMMM yyyy H:mm tt",
10791                                 F: "dd MMMM yyyy HH:mm:ss",
10792                                 M: "dd MMMM",
10793                                 Y: "MMMM yyyy"
10794                         }
10795                 }
10796         }
10797 });
10798
10799 Globalize.addCultureInfo( "gl-ES", "default", {
10800         name: "gl-ES",
10801         englishName: "Galician (Galician)",
10802         nativeName: "galego (galego)",
10803         language: "gl",
10804         numberFormat: {
10805                 ",": ".",
10806                 ".": ",",
10807                 NaN: "NeuN",
10808                 negativeInfinity: "-Infinito",
10809                 positiveInfinity: "Infinito",
10810                 percent: {
10811                         ",": ".",
10812                         ".": ","
10813                 },
10814                 currency: {
10815                         pattern: ["-n $","n $"],
10816                         ",": ".",
10817                         ".": ",",
10818                         symbol: "€"
10819                 }
10820         },
10821         calendars: {
10822                 standard: {
10823                         firstDay: 1,
10824                         days: {
10825                                 names: ["domingo","luns","martes","mércores","xoves","venres","sábado"],
10826                                 namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"],
10827                                 namesShort: ["do","lu","ma","mé","xo","ve","sá"]
10828                         },
10829                         months: {
10830                                 names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""],
10831                                 namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""]
10832                         },
10833                         AM: ["a.m.","a.m.","A.M."],
10834                         PM: ["p.m.","p.m.","P.M."],
10835                         eras: [{"name":"d.C.","start":null,"offset":0}],
10836                         patterns: {
10837                                 d: "dd/MM/yyyy",
10838                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
10839                                 t: "H:mm",
10840                                 T: "H:mm:ss",
10841                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
10842                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
10843                                 M: "dd MMMM",
10844                                 Y: "MMMM' de 'yyyy"
10845                         }
10846                 }
10847         }
10848 });
10849
10850 Globalize.addCultureInfo( "kok-IN", "default", {
10851         name: "kok-IN",
10852         englishName: "Konkani (India)",
10853         nativeName: "कोंकणी (भारत)",
10854         language: "kok",
10855         numberFormat: {
10856                 groupSizes: [3,2],
10857                 percent: {
10858                         groupSizes: [3,2]
10859                 },
10860                 currency: {
10861                         pattern: ["$ -n","$ n"],
10862                         groupSizes: [3,2],
10863                         symbol: "रु"
10864                 }
10865         },
10866         calendars: {
10867                 standard: {
10868                         "/": "-",
10869                         firstDay: 1,
10870                         days: {
10871                                 names: ["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"],
10872                                 namesAbbr: ["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."],
10873                                 namesShort: ["आ","स","म","ब","ब","स","श"]
10874                         },
10875                         months: {
10876                                 names: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""],
10877                                 namesAbbr: ["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""]
10878                         },
10879                         AM: ["म.पू.","म.पू.","म.पू."],
10880                         PM: ["म.नं.","म.नं.","म.नं."],
10881                         patterns: {
10882                                 d: "dd-MM-yyyy",
10883                                 D: "dd MMMM yyyy",
10884                                 t: "HH:mm",
10885                                 T: "HH:mm:ss",
10886                                 f: "dd MMMM yyyy HH:mm",
10887                                 F: "dd MMMM yyyy HH:mm:ss",
10888                                 M: "dd MMMM"
10889                         }
10890                 }
10891         }
10892 });
10893
10894 Globalize.addCultureInfo( "syr-SY", "default", {
10895         name: "syr-SY",
10896         englishName: "Syriac (Syria)",
10897         nativeName: "ܣܘܪܝܝܐ (سوريا)",
10898         language: "syr",
10899         isRTL: true,
10900         numberFormat: {
10901                 currency: {
10902                         pattern: ["$n-","$ n"],
10903                         symbol: "ل.س.‏"
10904                 }
10905         },
10906         calendars: {
10907                 standard: {
10908                         firstDay: 6,
10909                         days: {
10910                                 names: ["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"],
10911                                 namesAbbr: ["܏ܐ ܏ܒܫ","܏ܒ ܏ܒܫ","܏ܓ ܏ܒܫ","܏ܕ ܏ܒܫ","܏ܗ ܏ܒܫ","܏ܥܪܘܒ","܏ܫܒ"],
10912                                 namesShort: ["ܐ","ܒ","ܓ","ܕ","ܗ","ܥ","ܫ"]
10913                         },
10914                         months: {
10915                                 names: ["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""],
10916                                 namesAbbr: ["܏ܟܢ ܏ܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","܏ܬܫ ܏ܐ","܏ܬܫ ܏ܒ","܏ܟܢ ܏ܐ",""]
10917                         },
10918                         AM: ["ܩ.ܛ","ܩ.ܛ","ܩ.ܛ"],
10919                         PM: ["ܒ.ܛ","ܒ.ܛ","ܒ.ܛ"],
10920                         patterns: {
10921                                 d: "dd/MM/yyyy",
10922                                 D: "dd MMMM, yyyy",
10923                                 t: "hh:mm tt",
10924                                 T: "hh:mm:ss tt",
10925                                 f: "dd MMMM, yyyy hh:mm tt",
10926                                 F: "dd MMMM, yyyy hh:mm:ss tt",
10927                                 M: "dd MMMM"
10928                         }
10929                 }
10930         }
10931 });
10932
10933 Globalize.addCultureInfo( "si-LK", "default", {
10934         name: "si-LK",
10935         englishName: "Sinhala (Sri Lanka)",
10936         nativeName: "සිංහල (ශ්‍රී ලංකා)",
10937         language: "si",
10938         numberFormat: {
10939                 groupSizes: [3,2],
10940                 negativeInfinity: "-අනන්තය",
10941                 positiveInfinity: "අනන්තය",
10942                 percent: {
10943                         groupSizes: [3,2]
10944                 },
10945                 currency: {
10946                         pattern: ["($ n)","$ n"],
10947                         symbol: "රු."
10948                 }
10949         },
10950         calendars: {
10951                 standard: {
10952                         "/": "-",
10953                         firstDay: 1,
10954                         days: {
10955                                 names: ["ඉරිදා","සඳුදා","අඟහරුවාදා","බදාදා","බ්‍රහස්පතින්දා","සිකුරාදා","සෙනසුරාදා"],
10956                                 namesAbbr: ["ඉරිදා","සඳුදා","කුජදා","බුදදා","ගුරුදා","කිවිදා","ශනිදා"],
10957                                 namesShort: ["ඉ","ස","අ","බ","බ්‍ර","සි","සෙ"]
10958                         },
10959                         months: {
10960                                 names: ["ජනවාරි","පෙබරවාරි","මාර්තු","අ‌ප්‍රේල්","මැයි","ජූනි","ජූලි","අ‌ගෝස්තු","සැප්තැම්බර්","ඔක්තෝබර්","නොවැම්බර්","දෙසැම්බර්",""],
10961                                 namesAbbr: ["ජන.","පෙබ.","මාර්තු.","අප්‍රේල්.","මැයි.","ජූනි.","ජූලි.","අගෝ.","සැප්.","ඔක්.","නොවැ.","දෙසැ.",""]
10962                         },
10963                         AM: ["පෙ.ව.","පෙ.ව.","පෙ.ව."],
10964                         PM: ["ප.ව.","ප.ව.","ප.ව."],
10965                         eras: [{"name":"ක්‍රි.ව.","start":null,"offset":0}],
10966                         patterns: {
10967                                 d: "yyyy-MM-dd",
10968                                 D: "yyyy MMMM' මස 'dd' වැනිදා 'dddd",
10969                                 f: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm tt",
10970                                 F: "yyyy MMMM' මස 'dd' වැනිදා 'dddd h:mm:ss tt",
10971                                 Y: "yyyy MMMM"
10972                         }
10973                 }
10974         }
10975 });
10976
10977 Globalize.addCultureInfo( "iu-Cans-CA", "default", {
10978         name: "iu-Cans-CA",
10979         englishName: "Inuktitut (Syllabics, Canada)",
10980         nativeName: "ᐃᓄᒃᑎᑐᑦ (ᑲᓇᑕᒥ)",
10981         language: "iu-Cans",
10982         numberFormat: {
10983                 groupSizes: [3,0],
10984                 percent: {
10985                         pattern: ["-n%","n%"],
10986                         groupSizes: [3,0]
10987                 },
10988                 currency: {
10989                         groupSizes: [3,0]
10990                 }
10991         },
10992         calendars: {
10993                 standard: {
10994                         days: {
10995                                 names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"],
10996                                 namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"],
10997                                 namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"]
10998                         },
10999                         months: {
11000                                 names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""],
11001                                 namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""]
11002                         },
11003                         patterns: {
11004                                 d: "d/M/yyyy",
11005                                 D: "dddd,MMMM dd,yyyy",
11006                                 f: "dddd,MMMM dd,yyyy h:mm tt",
11007                                 F: "dddd,MMMM dd,yyyy h:mm:ss tt",
11008                                 Y: "MMMM,yyyy"
11009                         }
11010                 }
11011         }
11012 });
11013
11014 Globalize.addCultureInfo( "am-ET", "default", {
11015         name: "am-ET",
11016         englishName: "Amharic (Ethiopia)",
11017         nativeName: "አማርኛ (ኢትዮጵያ)",
11018         language: "am",
11019         numberFormat: {
11020                 decimals: 1,
11021                 groupSizes: [3,0],
11022                 NaN: "NAN",
11023                 percent: {
11024                         pattern: ["-n%","n%"],
11025                         decimals: 1,
11026                         groupSizes: [3,0]
11027                 },
11028                 currency: {
11029                         pattern: ["-$n","$n"],
11030                         groupSizes: [3,0],
11031                         symbol: "ETB"
11032                 }
11033         },
11034         calendars: {
11035                 standard: {
11036                         days: {
11037                                 names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"],
11038                                 namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","ሐሙስ","ዓርብ","ቅዳሜ"],
11039                                 namesShort: ["እ","ሰ","ማ","ረ","ሐ","ዓ","ቅ"]
11040                         },
11041                         months: {
11042                                 names: ["ጃንዩወሪ","ፌብሩወሪ","ማርች","ኤፕረል","ሜይ","ጁን","ጁላይ","ኦገስት","ሴፕቴምበር","ኦክተውበር","ኖቬምበር","ዲሴምበር",""],
11043                                 namesAbbr: ["ጃንዩ","ፌብሩ","ማርች","ኤፕረ","ሜይ","ጁን","ጁላይ","ኦገስ","ሴፕቴ","ኦክተ","ኖቬም","ዲሴም",""]
11044                         },
11045                         AM: ["ጡዋት","ጡዋት","ጡዋት"],
11046                         PM: ["ከሰዓት","ከሰዓት","ከሰዓት"],
11047                         eras: [{"name":"ዓመተ  ምሕረት","start":null,"offset":0}],
11048                         patterns: {
11049                                 d: "d/M/yyyy",
11050                                 D: "dddd '፣' MMMM d 'ቀን' yyyy",
11051                                 f: "dddd '፣' MMMM d 'ቀን' yyyy h:mm tt",
11052                                 F: "dddd '፣' MMMM d 'ቀን' yyyy h:mm:ss tt",
11053                                 M: "MMMM d ቀን",
11054                                 Y: "MMMM yyyy"
11055                         }
11056                 }
11057         }
11058 });
11059
11060 Globalize.addCultureInfo( "ne-NP", "default", {
11061         name: "ne-NP",
11062         englishName: "Nepali (Nepal)",
11063         nativeName: "नेपाली (नेपाल)",
11064         language: "ne",
11065         numberFormat: {
11066                 groupSizes: [3,2],
11067                 NaN: "nan",
11068                 negativeInfinity: "-infinity",
11069                 positiveInfinity: "infinity",
11070                 percent: {
11071                         pattern: ["-n%","n%"],
11072                         groupSizes: [3,2]
11073                 },
11074                 currency: {
11075                         pattern: ["-$n","$n"],
11076                         symbol: "रु"
11077                 }
11078         },
11079         calendars: {
11080                 standard: {
11081                         days: {
11082                                 names: ["आइतवार","सोमवार","मङ्गलवार","बुधवार","बिहीवार","शुक्रवार","शनिवार"],
11083                                 namesAbbr: ["आइत","सोम","मङ्गल","बुध","बिही","शुक्र","शनि"],
11084                                 namesShort: ["आ","सो","म","बु","बि","शु","श"]
11085                         },
11086                         months: {
11087                                 names: ["जनवरी","फेब्रुअरी","मार्च","अप्रिल","मे","जून","जुलाई","अगस्त","सेप्टेम्बर","अक्टोबर","नोभेम्बर","डिसेम्बर",""],
11088                                 namesAbbr: ["जन","फेब","मार्च","अप्रिल","मे","जून","जुलाई","अग","सेप्ट","अक्ट","नोभ","डिस",""]
11089                         },
11090                         AM: ["विहानी","विहानी","विहानी"],
11091                         PM: ["बेलुकी","बेलुकी","बेलुकी"],
11092                         eras: [{"name":"a.d.","start":null,"offset":0}],
11093                         patterns: {
11094                                 Y: "MMMM,yyyy"
11095                         }
11096                 }
11097         }
11098 });
11099
11100 Globalize.addCultureInfo( "fy-NL", "default", {
11101         name: "fy-NL",
11102         englishName: "Frisian (Netherlands)",
11103         nativeName: "Frysk (Nederlân)",
11104         language: "fy",
11105         numberFormat: {
11106                 ",": ".",
11107                 ".": ",",
11108                 percent: {
11109                         ",": ".",
11110                         ".": ","
11111                 },
11112                 currency: {
11113                         pattern: ["$ -n","$ n"],
11114                         ",": ".",
11115                         ".": ",",
11116                         symbol: "€"
11117                 }
11118         },
11119         calendars: {
11120                 standard: {
11121                         "/": "-",
11122                         firstDay: 1,
11123                         days: {
11124                                 names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"],
11125                                 namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"],
11126                                 namesShort: ["S","M","T","W","T","F","S"]
11127                         },
11128                         months: {
11129                                 names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""],
11130                                 namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""]
11131                         },
11132                         AM: null,
11133                         PM: null,
11134                         patterns: {
11135                                 d: "d-M-yyyy",
11136                                 D: "dddd d MMMM yyyy",
11137                                 t: "H:mm",
11138                                 T: "H:mm:ss",
11139                                 f: "dddd d MMMM yyyy H:mm",
11140                                 F: "dddd d MMMM yyyy H:mm:ss",
11141                                 M: "dd MMMM",
11142                                 Y: "MMMM yyyy"
11143                         }
11144                 }
11145         }
11146 });
11147
11148 Globalize.addCultureInfo( "ps-AF", "default", {
11149         name: "ps-AF",
11150         englishName: "Pashto (Afghanistan)",
11151         nativeName: "پښتو (افغانستان)",
11152         language: "ps",
11153         isRTL: true,
11154         numberFormat: {
11155                 pattern: ["n-"],
11156                 ",": "،",
11157                 ".": ",",
11158                 NaN: "غ ع",
11159                 negativeInfinity: "-∞",
11160                 positiveInfinity: "∞",
11161                 percent: {
11162                         pattern: ["%n-","%n"],
11163                         ",": "،",
11164                         ".": ","
11165                 },
11166                 currency: {
11167                         pattern: ["$n-","$n"],
11168                         ",": "٬",
11169                         ".": "٫",
11170                         symbol: "؋"
11171                 }
11172         },
11173         calendars: {
11174                 standard: {
11175                         name: "Hijri",
11176                         firstDay: 6,
11177                         days: {
11178                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
11179                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
11180                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
11181                         },
11182                         months: {
11183                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
11184                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
11185                         },
11186                         AM: ["غ.م","غ.م","غ.م"],
11187                         PM: ["غ.و","غ.و","غ.و"],
11188                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
11189                         twoDigitYearMax: 1451,
11190                         patterns: {
11191                                 d: "dd/MM/yy",
11192                                 D: "dd/MM/yyyy",
11193                                 f: "dd/MM/yyyy h:mm tt",
11194                                 F: "dd/MM/yyyy h:mm:ss tt",
11195                                 M: "dd MMMM"
11196                         },
11197                         convert: {
11198                     // Adapted to Script from System.Globalization.HijriCalendar
11199                     ticks1970: 62135596800000,
11200                     // number of days leading up to each month
11201                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
11202                     minDate: -42521673600000,
11203                     maxDate: 253402300799999,
11204                     // The number of days to add or subtract from the calendar to accommodate the variances
11205                     // in the start and the end of Ramadan and to accommodate the date difference between
11206                     // countries/regions. May be dynamically adjusted based on user preference, but should
11207                     // remain in the range of -2 to 2, inclusive.
11208                     hijriAdjustment: 0,
11209                     toGregorian: function(hyear, hmonth, hday) {
11210                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
11211                         // 86400000 = ticks per day
11212                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
11213                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
11214                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
11215                         // date in the current timezone.
11216                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
11217                         return gdate;
11218                     },
11219                     fromGregorian: function(gdate) {
11220                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
11221                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
11222                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
11223                         // very particular formula determined by someone smart, adapted from the server-side implementation.
11224                         // it approximates the hijri year.
11225                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
11226                             absDays = this.daysToYear(hyear),
11227                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
11228                         // hyear is just approximate, it may need adjustment up or down by 1.
11229                         if (daysSinceJan0101 < absDays) {
11230                             hyear--;
11231                             absDays -= daysInYear;
11232                         }
11233                         else if (daysSinceJan0101 === absDays) {
11234                             hyear--;
11235                             absDays = this.daysToYear(hyear);
11236                         }
11237                         else {
11238                             if (daysSinceJan0101 > (absDays + daysInYear)) {
11239                                 absDays += daysInYear;
11240                                 hyear++;
11241                             }
11242                         }
11243                         // determine month by looking at how many days into the hyear we are
11244                         // monthDays contains the number of days up to each month.
11245                         hmonth = 0;
11246                         var daysIntoYear = daysSinceJan0101 - absDays;
11247                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
11248                             hmonth++;
11249                         }
11250                         hmonth--;
11251                         hday = daysIntoYear - this.monthDays[hmonth];
11252                         return [hyear, hmonth, hday];
11253                     },
11254                     daysToYear: function(year) {
11255                         // calculates how many days since Jan 1, 0001
11256                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
11257                             yearsInto30 = year - yearsToYear30 - 1,
11258                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
11259                         while (yearsInto30 > 0) {
11260                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
11261                             yearsInto30--;
11262                         }
11263                         return days;
11264                     },
11265                     isLeapYear: function(year) {
11266                         return ((((year * 11) + 14) % 30) < 11);
11267                     }
11268                         }
11269                 },
11270                 Gregorian_Localized: {
11271                         firstDay: 6,
11272                         days: {
11273                                 names: ["یکشنبه","دوشنبه","سه‌شنبه","چارشنبه","پنجشنبه","جمعه","شنبه"],
11274                                 namesAbbr: ["یکشنبه","دوشنبه","سه‌شنبه","چارشنبه","پنجشنبه","جمعه","شنبه"],
11275                                 namesShort: ["ی","د","س","چ","پ","ج","ش"]
11276                         },
11277                         months: {
11278                                 names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""],
11279                                 namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښ","زمرى","وږى","تله","لړم","لنڈ ۍ","مرغومى",""]
11280                         },
11281                         AM: ["غ.م","غ.م","غ.م"],
11282                         PM: ["غ.و","غ.و","غ.و"],
11283                         eras: [{"name":"ل.ه","start":null,"offset":0}],
11284                         patterns: {
11285                                 d: "yyyy/M/d",
11286                                 D: "yyyy, dd, MMMM, dddd",
11287                                 f: "yyyy, dd, MMMM, dddd h:mm tt",
11288                                 F: "yyyy, dd, MMMM, dddd h:mm:ss tt",
11289                                 M: "d MMMM",
11290                                 Y: "MMMM yyyy"
11291                         }
11292                 }
11293         }
11294 });
11295
11296 Globalize.addCultureInfo( "fil-PH", "default", {
11297         name: "fil-PH",
11298         englishName: "Filipino (Philippines)",
11299         nativeName: "Filipino (Pilipinas)",
11300         language: "fil",
11301         numberFormat: {
11302                 currency: {
11303                         symbol: "PhP"
11304                 }
11305         },
11306         calendars: {
11307                 standard: {
11308                         days: {
11309                                 names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"],
11310                                 namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"],
11311                                 namesShort: ["L","L","M","M","H","B","S"]
11312                         },
11313                         months: {
11314                                 names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""],
11315                                 namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""]
11316                         },
11317                         eras: [{"name":"Anno Domini","start":null,"offset":0}]
11318                 }
11319         }
11320 });
11321
11322 Globalize.addCultureInfo( "dv-MV", "default", {
11323         name: "dv-MV",
11324         englishName: "Divehi (Maldives)",
11325         nativeName: "ދިވެހިބަސް (ދިވެހި ރާއްޖެ)",
11326         language: "dv",
11327         isRTL: true,
11328         numberFormat: {
11329                 currency: {
11330                         pattern: ["n $-","n $"],
11331                         symbol: "ރ."
11332                 }
11333         },
11334         calendars: {
11335                 standard: {
11336                         name: "Hijri",
11337                         days: {
11338                                 names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],
11339                                 namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],
11340                                 namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"]
11341                         },
11342                         months: {
11343                                 names: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""],
11344                                 namesAbbr: ["މުޙައްރަމް","ޞަފަރު","ރަބީޢުލްއައްވަލް","ރަބީޢުލްއާޚިރު","ޖުމާދަލްއޫލާ","ޖުމާދަލްއާޚިރާ","ރަޖަބް","ޝަޢްބާން","ރަމަޟާން","ޝައްވާލް","ޛުލްޤަޢިދާ","ޛުލްޙިއްޖާ",""]
11345                         },
11346                         AM: ["މކ","މކ","މކ"],
11347                         PM: ["މފ","މފ","މފ"],
11348                         eras: [{"name":"ހިޖްރީ","start":null,"offset":0}],
11349                         twoDigitYearMax: 1451,
11350                         patterns: {
11351                                 d: "dd/MM/yy",
11352                                 D: "dd/MM/yyyy",
11353                                 t: "HH:mm",
11354                                 T: "HH:mm:ss",
11355                                 f: "dd/MM/yyyy HH:mm",
11356                                 F: "dd/MM/yyyy HH:mm:ss",
11357                                 M: "dd MMMM"
11358                         },
11359                         convert: {
11360                     // Adapted to Script from System.Globalization.HijriCalendar
11361                     ticks1970: 62135596800000,
11362                     // number of days leading up to each month
11363                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
11364                     minDate: -42521673600000,
11365                     maxDate: 253402300799999,
11366                     // The number of days to add or subtract from the calendar to accommodate the variances
11367                     // in the start and the end of Ramadan and to accommodate the date difference between
11368                     // countries/regions. May be dynamically adjusted based on user preference, but should
11369                     // remain in the range of -2 to 2, inclusive.
11370                     hijriAdjustment: 0,
11371                     toGregorian: function(hyear, hmonth, hday) {
11372                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
11373                         // 86400000 = ticks per day
11374                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
11375                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
11376                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
11377                         // date in the current timezone.
11378                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
11379                         return gdate;
11380                     },
11381                     fromGregorian: function(gdate) {
11382                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
11383                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
11384                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
11385                         // very particular formula determined by someone smart, adapted from the server-side implementation.
11386                         // it approximates the hijri year.
11387                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
11388                             absDays = this.daysToYear(hyear),
11389                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
11390                         // hyear is just approximate, it may need adjustment up or down by 1.
11391                         if (daysSinceJan0101 < absDays) {
11392                             hyear--;
11393                             absDays -= daysInYear;
11394                         }
11395                         else if (daysSinceJan0101 === absDays) {
11396                             hyear--;
11397                             absDays = this.daysToYear(hyear);
11398                         }
11399                         else {
11400                             if (daysSinceJan0101 > (absDays + daysInYear)) {
11401                                 absDays += daysInYear;
11402                                 hyear++;
11403                             }
11404                         }
11405                         // determine month by looking at how many days into the hyear we are
11406                         // monthDays contains the number of days up to each month.
11407                         hmonth = 0;
11408                         var daysIntoYear = daysSinceJan0101 - absDays;
11409                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
11410                             hmonth++;
11411                         }
11412                         hmonth--;
11413                         hday = daysIntoYear - this.monthDays[hmonth];
11414                         return [hyear, hmonth, hday];
11415                     },
11416                     daysToYear: function(year) {
11417                         // calculates how many days since Jan 1, 0001
11418                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
11419                             yearsInto30 = year - yearsToYear30 - 1,
11420                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
11421                         while (yearsInto30 > 0) {
11422                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
11423                             yearsInto30--;
11424                         }
11425                         return days;
11426                     },
11427                     isLeapYear: function(year) {
11428                         return ((((year * 11) + 14) % 30) < 11);
11429                     }
11430                         }
11431                 },
11432                 Gregorian_Localized: {
11433                         days: {
11434                                 names: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],
11435                                 namesAbbr: ["އާދީއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],
11436                                 namesShort: ["އާ","ހޯ","އަ","ބު","ބު","ހު","ހޮ"]
11437                         },
11438                         months: {
11439                                 names: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""],
11440                                 namesAbbr: ["ޖަނަވަރީ","ފެބްރުއަރީ","މާޗް","އޭޕްރިލް","މެއި","ޖޫން","ޖުލައި","އޯގަސްޓް","ސެޕްޓެމްބަރ","އޮކްޓޯބަރ","ނޮވެމްބަރ","ޑިސެމްބަރ",""]
11441                         },
11442                         AM: ["މކ","މކ","މކ"],
11443                         PM: ["މފ","މފ","މފ"],
11444                         eras: [{"name":"މީލާދީ","start":null,"offset":0}],
11445                         patterns: {
11446                                 d: "dd/MM/yy",
11447                                 D: "ddd, yyyy MMMM dd",
11448                                 t: "HH:mm",
11449                                 T: "HH:mm:ss",
11450                                 f: "ddd, yyyy MMMM dd HH:mm",
11451                                 F: "ddd, yyyy MMMM dd HH:mm:ss",
11452                                 Y: "yyyy, MMMM"
11453                         }
11454                 }
11455         }
11456 });
11457
11458 Globalize.addCultureInfo( "ha-Latn-NG", "default", {
11459         name: "ha-Latn-NG",
11460         englishName: "Hausa (Latin, Nigeria)",
11461         nativeName: "Hausa (Nigeria)",
11462         language: "ha-Latn",
11463         numberFormat: {
11464                 currency: {
11465                         pattern: ["$-n","$ n"],
11466                         symbol: "N"
11467                 }
11468         },
11469         calendars: {
11470                 standard: {
11471                         days: {
11472                                 names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"],
11473                                 namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"],
11474                                 namesShort: ["L","L","T","L","A","J","A"]
11475                         },
11476                         months: {
11477                                 names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""],
11478                                 namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""]
11479                         },
11480                         AM: ["Safe","safe","SAFE"],
11481                         PM: ["Yamma","yamma","YAMMA"],
11482                         eras: [{"name":"AD","start":null,"offset":0}],
11483                         patterns: {
11484                                 d: "d/M/yyyy"
11485                         }
11486                 }
11487         }
11488 });
11489
11490 Globalize.addCultureInfo( "yo-NG", "default", {
11491         name: "yo-NG",
11492         englishName: "Yoruba (Nigeria)",
11493         nativeName: "Yoruba (Nigeria)",
11494         language: "yo",
11495         numberFormat: {
11496                 currency: {
11497                         pattern: ["$-n","$ n"],
11498                         symbol: "N"
11499                 }
11500         },
11501         calendars: {
11502                 standard: {
11503                         days: {
11504                                 names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"],
11505                                 namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"],
11506                                 namesShort: ["A","A","I","O","O","E","A"]
11507                         },
11508                         months: {
11509                                 names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""],
11510                                 namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""]
11511                         },
11512                         AM: ["Owuro","owuro","OWURO"],
11513                         PM: ["Ale","ale","ALE"],
11514                         eras: [{"name":"AD","start":null,"offset":0}],
11515                         patterns: {
11516                                 d: "d/M/yyyy"
11517                         }
11518                 }
11519         }
11520 });
11521
11522 Globalize.addCultureInfo( "quz-BO", "default", {
11523         name: "quz-BO",
11524         englishName: "Quechua (Bolivia)",
11525         nativeName: "runasimi (Qullasuyu)",
11526         language: "quz",
11527         numberFormat: {
11528                 ",": ".",
11529                 ".": ",",
11530                 percent: {
11531                         pattern: ["-%n","%n"],
11532                         ",": ".",
11533                         ".": ","
11534                 },
11535                 currency: {
11536                         pattern: ["($ n)","$ n"],
11537                         ",": ".",
11538                         ".": ",",
11539                         symbol: "$b"
11540                 }
11541         },
11542         calendars: {
11543                 standard: {
11544                         days: {
11545                                 names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"],
11546                                 namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"],
11547                                 namesShort: ["d","k","a","m","h","b","k"]
11548                         },
11549                         months: {
11550                                 names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""],
11551                                 namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""]
11552                         },
11553                         AM: ["a.m.","a.m.","A.M."],
11554                         PM: ["p.m.","p.m.","P.M."],
11555                         patterns: {
11556                                 d: "dd/MM/yyyy",
11557                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
11558                                 t: "hh:mm tt",
11559                                 T: "hh:mm:ss tt",
11560                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
11561                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
11562                                 Y: "MMMM' de 'yyyy"
11563                         }
11564                 }
11565         }
11566 });
11567
11568 Globalize.addCultureInfo( "nso-ZA", "default", {
11569         name: "nso-ZA",
11570         englishName: "Sesotho sa Leboa (South Africa)",
11571         nativeName: "Sesotho sa Leboa (Afrika Borwa)",
11572         language: "nso",
11573         numberFormat: {
11574                 percent: {
11575                         pattern: ["-%n","%n"]
11576                 },
11577                 currency: {
11578                         pattern: ["$-n","$ n"],
11579                         symbol: "R"
11580                 }
11581         },
11582         calendars: {
11583                 standard: {
11584                         days: {
11585                                 names: ["Lamorena","Mošupologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"],
11586                                 namesAbbr: ["Lam","Moš","Lbb","Lbr","Lbn","Lbh","Mok"],
11587                                 namesShort: ["L","M","L","L","L","L","M"]
11588                         },
11589                         months: {
11590                                 names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","Ngoatobošego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""],
11591                                 namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""]
11592                         },
11593                         patterns: {
11594                                 d: "yyyy/MM/dd",
11595                                 D: "dd MMMM yyyy",
11596                                 t: "hh:mm tt",
11597                                 T: "hh:mm:ss tt",
11598                                 f: "dd MMMM yyyy hh:mm tt",
11599                                 F: "dd MMMM yyyy hh:mm:ss tt",
11600                                 M: "dd MMMM",
11601                                 Y: "MMMM yyyy"
11602                         }
11603                 }
11604         }
11605 });
11606
11607 Globalize.addCultureInfo( "ba-RU", "default", {
11608         name: "ba-RU",
11609         englishName: "Bashkir (Russia)",
11610         nativeName: "Башҡорт (Россия)",
11611         language: "ba",
11612         numberFormat: {
11613                 ",": " ",
11614                 ".": ",",
11615                 groupSizes: [3,0],
11616                 negativeInfinity: "-бесконечность",
11617                 positiveInfinity: "бесконечность",
11618                 percent: {
11619                         pattern: ["-n%","n%"],
11620                         groupSizes: [3,0],
11621                         ",": " ",
11622                         ".": ","
11623                 },
11624                 currency: {
11625                         pattern: ["-n $","n $"],
11626                         groupSizes: [3,0],
11627                         ",": " ",
11628                         ".": ",",
11629                         symbol: "һ."
11630                 }
11631         },
11632         calendars: {
11633                 standard: {
11634                         "/": ".",
11635                         firstDay: 1,
11636                         days: {
11637                                 names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","Кесаҙна","Йома","Шәмбе"],
11638                                 namesAbbr: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"],
11639                                 namesShort: ["Йш","Дш","Шш","Шр","Кс","Йм","Шб"]
11640                         },
11641                         months: {
11642                                 names: ["ғинуар","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""],
11643                                 namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""]
11644                         },
11645                         AM: null,
11646                         PM: null,
11647                         patterns: {
11648                                 d: "dd.MM.yy",
11649                                 D: "d MMMM yyyy 'й'",
11650                                 t: "H:mm",
11651                                 T: "H:mm:ss",
11652                                 f: "d MMMM yyyy 'й' H:mm",
11653                                 F: "d MMMM yyyy 'й' H:mm:ss",
11654                                 Y: "MMMM yyyy"
11655                         }
11656                 }
11657         }
11658 });
11659
11660 Globalize.addCultureInfo( "lb-LU", "default", {
11661         name: "lb-LU",
11662         englishName: "Luxembourgish (Luxembourg)",
11663         nativeName: "Lëtzebuergesch (Luxembourg)",
11664         language: "lb",
11665         numberFormat: {
11666                 ",": " ",
11667                 ".": ",",
11668                 NaN: "n. num.",
11669                 negativeInfinity: "-onendlech",
11670                 positiveInfinity: "+onendlech",
11671                 percent: {
11672                         ",": " ",
11673                         ".": ","
11674                 },
11675                 currency: {
11676                         pattern: ["-n $","n $"],
11677                         ",": " ",
11678                         ".": ",",
11679                         symbol: "€"
11680                 }
11681         },
11682         calendars: {
11683                 standard: {
11684                         firstDay: 1,
11685                         days: {
11686                                 names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"],
11687                                 namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"],
11688                                 namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"]
11689                         },
11690                         months: {
11691                                 names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""],
11692                                 namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
11693                         },
11694                         AM: null,
11695                         PM: null,
11696                         eras: [{"name":"n. Chr","start":null,"offset":0}],
11697                         patterns: {
11698                                 d: "dd/MM/yyyy",
11699                                 D: "dddd d MMMM yyyy",
11700                                 t: "HH:mm",
11701                                 T: "HH:mm:ss",
11702                                 f: "dddd d MMMM yyyy HH:mm",
11703                                 F: "dddd d MMMM yyyy HH:mm:ss",
11704                                 M: "d MMMM",
11705                                 Y: "MMMM yyyy"
11706                         }
11707                 }
11708         }
11709 });
11710
11711 Globalize.addCultureInfo( "kl-GL", "default", {
11712         name: "kl-GL",
11713         englishName: "Greenlandic (Greenland)",
11714         nativeName: "kalaallisut (Kalaallit Nunaat)",
11715         language: "kl",
11716         numberFormat: {
11717                 ",": ".",
11718                 ".": ",",
11719                 groupSizes: [3,0],
11720                 negativeInfinity: "-INF",
11721                 positiveInfinity: "INF",
11722                 percent: {
11723                         groupSizes: [3,0],
11724                         ",": ".",
11725                         ".": ","
11726                 },
11727                 currency: {
11728                         pattern: ["$ -n","$ n"],
11729                         groupSizes: [3,0],
11730                         ",": ".",
11731                         ".": ",",
11732                         symbol: "kr."
11733                 }
11734         },
11735         calendars: {
11736                 standard: {
11737                         "/": "-",
11738                         firstDay: 1,
11739                         days: {
11740                                 names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"],
11741                                 namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"],
11742                                 namesShort: ["sa","at","ma","pi","si","ta","ar"]
11743                         },
11744                         months: {
11745                                 names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""],
11746                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""]
11747                         },
11748                         AM: null,
11749                         PM: null,
11750                         patterns: {
11751                                 d: "dd-MM-yyyy",
11752                                 D: "d. MMMM yyyy",
11753                                 t: "HH:mm",
11754                                 T: "HH:mm:ss",
11755                                 f: "d. MMMM yyyy HH:mm",
11756                                 F: "d. MMMM yyyy HH:mm:ss",
11757                                 M: "d. MMMM",
11758                                 Y: "MMMM yyyy"
11759                         }
11760                 }
11761         }
11762 });
11763
11764 Globalize.addCultureInfo( "ig-NG", "default", {
11765         name: "ig-NG",
11766         englishName: "Igbo (Nigeria)",
11767         nativeName: "Igbo (Nigeria)",
11768         language: "ig",
11769         numberFormat: {
11770                 currency: {
11771                         pattern: ["$-n","$ n"],
11772                         symbol: "N"
11773                 }
11774         },
11775         calendars: {
11776                 standard: {
11777                         days: {
11778                                 names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"],
11779                                 namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"],
11780                                 namesShort: ["A","A","I","O","O","E","A"]
11781                         },
11782                         months: {
11783                                 names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""],
11784                                 namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""]
11785                         },
11786                         AM: ["Ututu","ututu","UTUTU"],
11787                         PM: ["Efifie","efifie","EFIFIE"],
11788                         eras: [{"name":"AD","start":null,"offset":0}],
11789                         patterns: {
11790                                 d: "d/M/yyyy"
11791                         }
11792                 }
11793         }
11794 });
11795
11796 Globalize.addCultureInfo( "ii-CN", "default", {
11797         name: "ii-CN",
11798         englishName: "Yi (PRC)",
11799         nativeName: "ꆈꌠꁱꂷ (ꍏꉸꏓꂱꇭꉼꇩ)",
11800         language: "ii",
11801         numberFormat: {
11802                 groupSizes: [3,0],
11803                 NaN: "ꌗꂷꀋꉬ",
11804                 negativeInfinity: "ꀄꊭꌐꀋꉆ",
11805                 positiveInfinity: "ꈤꇁꑖꀋꉬ",
11806                 percent: {
11807                         pattern: ["-n%","n%"],
11808                         groupSizes: [3,0]
11809                 },
11810                 currency: {
11811                         pattern: ["$-n","$n"],
11812                         symbol: "¥"
11813                 }
11814         },
11815         calendars: {
11816                 standard: {
11817                         firstDay: 1,
11818                         days: {
11819                                 names: ["ꑭꆏꑍ","ꆏꊂ꒔","ꆏꊂꑍ","ꆏꊂꌕ","ꆏꊂꇖ","ꆏꊂꉬ","ꆏꊂꃘ"],
11820                                 namesAbbr: ["ꑭꆏ","ꆏ꒔","ꆏꑍ","ꆏꌕ","ꆏꇖ","ꆏꉬ","ꆏꃘ"],
11821                                 namesShort: ["ꆏ","꒔","ꑍ","ꌕ","ꇖ","ꉬ","ꃘ"]
11822                         },
11823                         months: {
11824                                 names: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""],
11825                                 namesAbbr: ["ꋍꆪ","ꑍꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","ꏃꆪ","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""]
11826                         },
11827                         AM: ["ꂵꆪꈌꈐ","ꂵꆪꈌꈐ","ꂵꆪꈌꈐ"],
11828                         PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"],
11829                         eras: [{"name":"ꇬꑼ","start":null,"offset":0}],
11830                         patterns: {
11831                                 d: "yyyy/M/d",
11832                                 D: "yyyy'ꈎ' M'ꆪ' d'ꑍ'",
11833                                 t: "tt h:mm",
11834                                 T: "H:mm:ss",
11835                                 f: "yyyy'ꈎ' M'ꆪ' d'ꑍ' tt h:mm",
11836                                 F: "yyyy'ꈎ' M'ꆪ' d'ꑍ' H:mm:ss",
11837                                 M: "M'ꆪ' d'ꑍ'",
11838                                 Y: "yyyy'ꈎ' M'ꆪ'"
11839                         }
11840                 }
11841         }
11842 });
11843
11844 Globalize.addCultureInfo( "arn-CL", "default", {
11845         name: "arn-CL",
11846         englishName: "Mapudungun (Chile)",
11847         nativeName: "Mapudungun (Chile)",
11848         language: "arn",
11849         numberFormat: {
11850                 ",": ".",
11851                 ".": ",",
11852                 NaN: "NeuN",
11853                 negativeInfinity: "-Infinito",
11854                 positiveInfinity: "Infinito",
11855                 percent: {
11856                         ",": ".",
11857                         ".": ","
11858                 },
11859                 currency: {
11860                         pattern: ["-$ n","$ n"],
11861                         ",": ".",
11862                         ".": ","
11863                 }
11864         },
11865         calendars: {
11866                 standard: {
11867                         "/": "-",
11868                         days: {
11869                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
11870                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
11871                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
11872                         },
11873                         months: {
11874                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
11875                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
11876                         },
11877                         AM: null,
11878                         PM: null,
11879                         eras: [{"name":"d.C.","start":null,"offset":0}],
11880                         patterns: {
11881                                 d: "dd-MM-yyyy",
11882                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
11883                                 t: "H:mm",
11884                                 T: "H:mm:ss",
11885                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
11886                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
11887                                 M: "dd MMMM",
11888                                 Y: "MMMM' de 'yyyy"
11889                         }
11890                 }
11891         }
11892 });
11893
11894 Globalize.addCultureInfo( "moh-CA", "default", {
11895         name: "moh-CA",
11896         englishName: "Mohawk (Mohawk)",
11897         nativeName: "Kanien'kéha",
11898         language: "moh",
11899         numberFormat: {
11900                 groupSizes: [3,0],
11901                 percent: {
11902                         groupSizes: [3,0]
11903                 }
11904         },
11905         calendars: {
11906                 standard: {
11907                         days: {
11908                                 names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"],
11909                                 namesShort: ["S","M","T","W","T","F","S"]
11910                         },
11911                         months: {
11912                                 names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""]
11913                         }
11914                 }
11915         }
11916 });
11917
11918 Globalize.addCultureInfo( "br-FR", "default", {
11919         name: "br-FR",
11920         englishName: "Breton (France)",
11921         nativeName: "brezhoneg (Frañs)",
11922         language: "br",
11923         numberFormat: {
11924                 ",": " ",
11925                 ".": ",",
11926                 NaN: "NkN",
11927                 negativeInfinity: "-Anfin",
11928                 positiveInfinity: "+Anfin",
11929                 percent: {
11930                         ",": " ",
11931                         ".": ","
11932                 },
11933                 currency: {
11934                         pattern: ["-n $","n $"],
11935                         ",": " ",
11936                         ".": ",",
11937                         symbol: "€"
11938                 }
11939         },
11940         calendars: {
11941                 standard: {
11942                         firstDay: 1,
11943                         days: {
11944                                 names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"],
11945                                 namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."],
11946                                 namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"]
11947                         },
11948                         months: {
11949                                 names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""],
11950                                 namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""]
11951                         },
11952                         AM: null,
11953                         PM: null,
11954                         eras: [{"name":"g. J.-K.","start":null,"offset":0}],
11955                         patterns: {
11956                                 d: "dd/MM/yyyy",
11957                                 D: "dddd d MMMM yyyy",
11958                                 t: "HH:mm",
11959                                 T: "HH:mm:ss",
11960                                 f: "dddd d MMMM yyyy HH:mm",
11961                                 F: "dddd d MMMM yyyy HH:mm:ss",
11962                                 M: "d MMMM",
11963                                 Y: "MMMM yyyy"
11964                         }
11965                 }
11966         }
11967 });
11968
11969 Globalize.addCultureInfo( "ug-CN", "default", {
11970         name: "ug-CN",
11971         englishName: "Uyghur (PRC)",
11972         nativeName: "ئۇيغۇرچە (جۇڭخۇا خەلق جۇمھۇرىيىتى)",
11973         language: "ug",
11974         isRTL: true,
11975         numberFormat: {
11976                 NaN: "سان ئەمەس",
11977                 negativeInfinity: "مەنپىي چەكسىزلىك",
11978                 positiveInfinity: "مۇسبەت چەكسىزلىك",
11979                 percent: {
11980                         pattern: ["-n%","n%"]
11981                 },
11982                 currency: {
11983                         pattern: ["$-n","$n"],
11984                         symbol: "¥"
11985                 }
11986         },
11987         calendars: {
11988                 standard: {
11989                         "/": "-",
11990                         days: {
11991                                 names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"],
11992                                 namesAbbr: ["يە","دۈ","سە","چا","پە","جۈ","شە"],
11993                                 namesShort: ["ي","د","س","چ","پ","ج","ش"]
11994                         },
11995                         months: {
11996                                 names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""],
11997                                 namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""]
11998                         },
11999                         AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"],
12000                         PM: ["چۈشتىن كېيىن","چۈشتىن كېيىن","چۈشتىن كېيىن"],
12001                         eras: [{"name":"مىلادى","start":null,"offset":0}],
12002                         patterns: {
12003                                 d: "yyyy-M-d",
12004                                 D: "yyyy-'يىلى' MMMM d-'كۈنى،'",
12005                                 t: "H:mm",
12006                                 T: "H:mm:ss",
12007                                 f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm",
12008                                 F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss",
12009                                 M: "MMMM d'-كۈنى'",
12010                                 Y: "yyyy-'يىلى' MMMM"
12011                         }
12012                 }
12013         }
12014 });
12015
12016 Globalize.addCultureInfo( "mi-NZ", "default", {
12017         name: "mi-NZ",
12018         englishName: "Maori (New Zealand)",
12019         nativeName: "Reo Māori (Aotearoa)",
12020         language: "mi",
12021         numberFormat: {
12022                 percent: {
12023                         pattern: ["-%n","%n"]
12024                 },
12025                 currency: {
12026                         pattern: ["-$n","$n"]
12027                 }
12028         },
12029         calendars: {
12030                 standard: {
12031                         firstDay: 1,
12032                         days: {
12033                                 names: ["Rātapu","Rāhina","Rātū","Rāapa","Rāpare","Rāmere","Rāhoroi"],
12034                                 namesAbbr: ["Ta","Hi","Tū","Apa","Pa","Me","Ho"],
12035                                 namesShort: ["Ta","Hi","Tū","Aa","Pa","Me","Ho"]
12036                         },
12037                         months: {
12038                                 names: ["Kohi-tātea","Hui-tanguru","Poutū-te-rangi","Paenga-whāwhā","Haratua","Pipiri","Hōngongoi","Here-turi-kōkā","Mahuru","Whiringa-ā-nuku","Whiringa-ā-rangi","Hakihea",""],
12039                                 namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","Hōngo","Here","Mahu","Nuku","Rangi","Haki",""]
12040                         },
12041                         AM: ["a.m.","a.m.","A.M."],
12042                         PM: ["p.m.","p.m.","P.M."],
12043                         patterns: {
12044                                 d: "dd/MM/yyyy",
12045                                 D: "dddd, dd MMMM, yyyy",
12046                                 f: "dddd, dd MMMM, yyyy h:mm tt",
12047                                 F: "dddd, dd MMMM, yyyy h:mm:ss tt",
12048                                 M: "dd MMMM",
12049                                 Y: "MMMM, yy"
12050                         }
12051                 }
12052         }
12053 });
12054
12055 Globalize.addCultureInfo( "oc-FR", "default", {
12056         name: "oc-FR",
12057         englishName: "Occitan (France)",
12058         nativeName: "Occitan (França)",
12059         language: "oc",
12060         numberFormat: {
12061                 ",": " ",
12062                 ".": ",",
12063                 NaN: "Non Numeric",
12064                 negativeInfinity: "-Infinit",
12065                 positiveInfinity: "+Infinit",
12066                 percent: {
12067                         ",": " ",
12068                         ".": ","
12069                 },
12070                 currency: {
12071                         pattern: ["-n $","n $"],
12072                         ",": " ",
12073                         ".": ",",
12074                         symbol: "€"
12075                 }
12076         },
12077         calendars: {
12078                 standard: {
12079                         firstDay: 1,
12080                         days: {
12081                                 names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"],
12082                                 namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."],
12083                                 namesShort: ["di","lu","ma","mè","jò","ve","sa"]
12084                         },
12085                         months: {
12086                                 names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""],
12087                                 namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""]
12088                         },
12089                         monthsGenitive: {
12090                                 names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""],
12091                                 namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""]
12092                         },
12093                         AM: null,
12094                         PM: null,
12095                         eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}],
12096                         patterns: {
12097                                 d: "dd/MM/yyyy",
12098                                 D: "dddd,' lo 'd MMMM' de 'yyyy",
12099                                 t: "HH:mm",
12100                                 T: "HH:mm:ss",
12101                                 f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm",
12102                                 F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss",
12103                                 M: "d MMMM",
12104                                 Y: "MMMM yyyy"
12105                         }
12106                 }
12107         }
12108 });
12109
12110 Globalize.addCultureInfo( "co-FR", "default", {
12111         name: "co-FR",
12112         englishName: "Corsican (France)",
12113         nativeName: "Corsu (France)",
12114         language: "co",
12115         numberFormat: {
12116                 ",": " ",
12117                 ".": ",",
12118                 NaN: "Mica numericu",
12119                 negativeInfinity: "-Infinitu",
12120                 positiveInfinity: "+Infinitu",
12121                 percent: {
12122                         ",": " ",
12123                         ".": ","
12124                 },
12125                 currency: {
12126                         pattern: ["-n $","n $"],
12127                         ",": " ",
12128                         ".": ",",
12129                         symbol: "€"
12130                 }
12131         },
12132         calendars: {
12133                 standard: {
12134                         firstDay: 1,
12135                         days: {
12136                                 names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"],
12137                                 namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."],
12138                                 namesShort: ["du","lu","ma","me","gh","ve","sa"]
12139                         },
12140                         months: {
12141                                 names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""],
12142                                 namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""]
12143                         },
12144                         AM: null,
12145                         PM: null,
12146                         eras: [{"name":"dopu J-C","start":null,"offset":0}],
12147                         patterns: {
12148                                 d: "dd/MM/yyyy",
12149                                 D: "dddd d MMMM yyyy",
12150                                 t: "HH:mm",
12151                                 T: "HH:mm:ss",
12152                                 f: "dddd d MMMM yyyy HH:mm",
12153                                 F: "dddd d MMMM yyyy HH:mm:ss",
12154                                 M: "d MMMM",
12155                                 Y: "MMMM yyyy"
12156                         }
12157                 }
12158         }
12159 });
12160
12161 Globalize.addCultureInfo( "gsw-FR", "default", {
12162         name: "gsw-FR",
12163         englishName: "Alsatian (France)",
12164         nativeName: "Elsässisch (Frànkrisch)",
12165         language: "gsw",
12166         numberFormat: {
12167                 ",": " ",
12168                 ".": ",",
12169                 NaN: "Ohne Nummer",
12170                 negativeInfinity: "-Unendlich",
12171                 positiveInfinity: "+Unendlich",
12172                 percent: {
12173                         ",": " ",
12174                         ".": ","
12175                 },
12176                 currency: {
12177                         pattern: ["-n $","n $"],
12178                         ",": " ",
12179                         ".": ",",
12180                         symbol: "€"
12181                 }
12182         },
12183         calendars: {
12184                 standard: {
12185                         firstDay: 1,
12186                         days: {
12187                                 names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"],
12188                                 namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."],
12189                                 namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"]
12190                         },
12191                         months: {
12192                                 names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""],
12193                                 namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""]
12194                         },
12195                         AM: null,
12196                         PM: null,
12197                         eras: [{"name":"Vor J.-C.","start":null,"offset":0}],
12198                         patterns: {
12199                                 d: "dd/MM/yyyy",
12200                                 D: "dddd d MMMM yyyy",
12201                                 t: "HH:mm",
12202                                 T: "HH:mm:ss",
12203                                 f: "dddd d MMMM yyyy HH:mm",
12204                                 F: "dddd d MMMM yyyy HH:mm:ss",
12205                                 M: "d MMMM",
12206                                 Y: "MMMM yyyy"
12207                         }
12208                 }
12209         }
12210 });
12211
12212 Globalize.addCultureInfo( "sah-RU", "default", {
12213         name: "sah-RU",
12214         englishName: "Yakut (Russia)",
12215         nativeName: "саха (Россия)",
12216         language: "sah",
12217         numberFormat: {
12218                 ",": " ",
12219                 ".": ",",
12220                 NaN: "NAN",
12221                 negativeInfinity: "-бесконечность",
12222                 positiveInfinity: "бесконечность",
12223                 percent: {
12224                         pattern: ["-n%","n%"],
12225                         ",": " ",
12226                         ".": ","
12227                 },
12228                 currency: {
12229                         pattern: ["-n$","n$"],
12230                         ",": " ",
12231                         ".": ",",
12232                         symbol: "с."
12233                 }
12234         },
12235         calendars: {
12236                 standard: {
12237                         "/": ".",
12238                         firstDay: 1,
12239                         days: {
12240                                 names: ["баскыһыанньа","бэнидиэнньик","оптуорунньук","сэрэдэ","чэппиэр","бээтинсэ","субуота"],
12241                                 namesAbbr: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"],
12242                                 namesShort: ["Бс","Бн","Оп","Ср","Чп","Бт","Сб"]
12243                         },
12244                         months: {
12245                                 names: ["Тохсунньу","Олунньу","Кулун тутар","Муус устар","Ыам ыйа","Бэс ыйа","От ыйа","Атырдьах ыйа","Балаҕан ыйа","Алтынньы","Сэтинньи","Ахсынньы",""],
12246                                 namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""]
12247                         },
12248                         monthsGenitive: {
12249                                 names: ["тохсунньу","олунньу","кулун тутар","муус устар","ыам ыйын","бэс ыйын","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","сэтинньи","ахсынньы",""],
12250                                 namesAbbr: ["тхс","олн","кул","мст","ыам","бэс","отй","атр","блҕ","алт","стн","ахс",""]
12251                         },
12252                         AM: null,
12253                         PM: null,
12254                         patterns: {
12255                                 d: "MM.dd.yyyy",
12256                                 D: "MMMM d yyyy 'с.'",
12257                                 t: "H:mm",
12258                                 T: "H:mm:ss",
12259                                 f: "MMMM d yyyy 'с.' H:mm",
12260                                 F: "MMMM d yyyy 'с.' H:mm:ss",
12261                                 Y: "MMMM yyyy 'с.'"
12262                         }
12263                 }
12264         }
12265 });
12266
12267 Globalize.addCultureInfo( "qut-GT", "default", {
12268         name: "qut-GT",
12269         englishName: "K'iche (Guatemala)",
12270         nativeName: "K'iche (Guatemala)",
12271         language: "qut",
12272         numberFormat: {
12273                 NaN: "NeuN",
12274                 negativeInfinity: "-Infinito",
12275                 positiveInfinity: "Infinito",
12276                 currency: {
12277                         symbol: "Q"
12278                 }
12279         },
12280         calendars: {
12281                 standard: {
12282                         days: {
12283                                 names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"],
12284                                 namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"],
12285                                 namesShort: ["ju","ka","ox","ka","jo","wa","wu"]
12286                         },
12287                         months: {
12288                                 names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""],
12289                                 namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""]
12290                         },
12291                         AM: ["a.m.","a.m.","A.M."],
12292                         PM: ["p.m.","p.m.","P.M."],
12293                         eras: [{"name":"d.C.","start":null,"offset":0}],
12294                         patterns: {
12295                                 d: "dd/MM/yyyy",
12296                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
12297                                 t: "hh:mm tt",
12298                                 T: "hh:mm:ss tt",
12299                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
12300                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
12301                                 M: "dd MMMM",
12302                                 Y: "MMMM' de 'yyyy"
12303                         }
12304                 }
12305         }
12306 });
12307
12308 Globalize.addCultureInfo( "rw-RW", "default", {
12309         name: "rw-RW",
12310         englishName: "Kinyarwanda (Rwanda)",
12311         nativeName: "Kinyarwanda (Rwanda)",
12312         language: "rw",
12313         numberFormat: {
12314                 ",": " ",
12315                 ".": ",",
12316                 percent: {
12317                         ",": " ",
12318                         ".": ","
12319                 },
12320                 currency: {
12321                         pattern: ["$-n","$ n"],
12322                         ",": " ",
12323                         ".": ",",
12324                         symbol: "RWF"
12325                 }
12326         },
12327         calendars: {
12328                 standard: {
12329                         days: {
12330                                 names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"],
12331                                 namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."],
12332                                 namesShort: ["mb","ka","ga","ka","ga","ga","cy"]
12333                         },
12334                         months: {
12335                                 names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""],
12336                                 namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""]
12337                         },
12338                         AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."],
12339                         PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."],
12340                         eras: [{"name":"AD","start":null,"offset":0}]
12341                 }
12342         }
12343 });
12344
12345 Globalize.addCultureInfo( "wo-SN", "default", {
12346         name: "wo-SN",
12347         englishName: "Wolof (Senegal)",
12348         nativeName: "Wolof (Sénégal)",
12349         language: "wo",
12350         numberFormat: {
12351                 ",": " ",
12352                 ".": ",",
12353                 NaN: "Non Numérique",
12354                 negativeInfinity: "-Infini",
12355                 positiveInfinity: "+Infini",
12356                 percent: {
12357                         ",": " ",
12358                         ".": ","
12359                 },
12360                 currency: {
12361                         pattern: ["-n $","n $"],
12362                         ",": " ",
12363                         ".": ",",
12364                         symbol: "XOF"
12365                 }
12366         },
12367         calendars: {
12368                 standard: {
12369                         firstDay: 1,
12370                         days: {
12371                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
12372                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
12373                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
12374                         },
12375                         months: {
12376                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
12377                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
12378                         },
12379                         AM: null,
12380                         PM: null,
12381                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
12382                         patterns: {
12383                                 d: "dd/MM/yyyy",
12384                                 D: "dddd d MMMM yyyy",
12385                                 t: "HH:mm",
12386                                 T: "HH:mm:ss",
12387                                 f: "dddd d MMMM yyyy HH:mm",
12388                                 F: "dddd d MMMM yyyy HH:mm:ss",
12389                                 M: "d MMMM",
12390                                 Y: "MMMM yyyy"
12391                         }
12392                 }
12393         }
12394 });
12395
12396 Globalize.addCultureInfo( "prs-AF", "default", {
12397         name: "prs-AF",
12398         englishName: "Dari (Afghanistan)",
12399         nativeName: "درى (افغانستان)",
12400         language: "prs",
12401         isRTL: true,
12402         numberFormat: {
12403                 pattern: ["n-"],
12404                 ",": ".",
12405                 ".": ",",
12406                 NaN: "غ ع",
12407                 negativeInfinity: "-∞",
12408                 positiveInfinity: "∞",
12409                 percent: {
12410                         pattern: ["%n-","%n"],
12411                         ",": ".",
12412                         ".": ","
12413                 },
12414                 currency: {
12415                         pattern: ["$n-","$n"],
12416                         symbol: "؋"
12417                 }
12418         },
12419         calendars: {
12420                 standard: {
12421                         name: "Hijri",
12422                         firstDay: 5,
12423                         days: {
12424                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12425                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12426                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
12427                         },
12428                         months: {
12429                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
12430                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
12431                         },
12432                         AM: ["غ.م","غ.م","غ.م"],
12433                         PM: ["غ.و","غ.و","غ.و"],
12434                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
12435                         twoDigitYearMax: 1451,
12436                         patterns: {
12437                                 d: "dd/MM/yy",
12438                                 D: "dd/MM/yyyy",
12439                                 f: "dd/MM/yyyy h:mm tt",
12440                                 F: "dd/MM/yyyy h:mm:ss tt",
12441                                 M: "dd MMMM"
12442                         },
12443                         convert: {
12444                     // Adapted to Script from System.Globalization.HijriCalendar
12445                     ticks1970: 62135596800000,
12446                     // number of days leading up to each month
12447                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
12448                     minDate: -42521673600000,
12449                     maxDate: 253402300799999,
12450                     // The number of days to add or subtract from the calendar to accommodate the variances
12451                     // in the start and the end of Ramadan and to accommodate the date difference between
12452                     // countries/regions. May be dynamically adjusted based on user preference, but should
12453                     // remain in the range of -2 to 2, inclusive.
12454                     hijriAdjustment: 0,
12455                     toGregorian: function(hyear, hmonth, hday) {
12456                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
12457                         // 86400000 = ticks per day
12458                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
12459                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
12460                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
12461                         // date in the current timezone.
12462                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
12463                         return gdate;
12464                     },
12465                     fromGregorian: function(gdate) {
12466                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
12467                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
12468                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
12469                         // very particular formula determined by someone smart, adapted from the server-side implementation.
12470                         // it approximates the hijri year.
12471                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
12472                             absDays = this.daysToYear(hyear),
12473                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
12474                         // hyear is just approximate, it may need adjustment up or down by 1.
12475                         if (daysSinceJan0101 < absDays) {
12476                             hyear--;
12477                             absDays -= daysInYear;
12478                         }
12479                         else if (daysSinceJan0101 === absDays) {
12480                             hyear--;
12481                             absDays = this.daysToYear(hyear);
12482                         }
12483                         else {
12484                             if (daysSinceJan0101 > (absDays + daysInYear)) {
12485                                 absDays += daysInYear;
12486                                 hyear++;
12487                             }
12488                         }
12489                         // determine month by looking at how many days into the hyear we are
12490                         // monthDays contains the number of days up to each month.
12491                         hmonth = 0;
12492                         var daysIntoYear = daysSinceJan0101 - absDays;
12493                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
12494                             hmonth++;
12495                         }
12496                         hmonth--;
12497                         hday = daysIntoYear - this.monthDays[hmonth];
12498                         return [hyear, hmonth, hday];
12499                     },
12500                     daysToYear: function(year) {
12501                         // calculates how many days since Jan 1, 0001
12502                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
12503                             yearsInto30 = year - yearsToYear30 - 1,
12504                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
12505                         while (yearsInto30 > 0) {
12506                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
12507                             yearsInto30--;
12508                         }
12509                         return days;
12510                     },
12511                     isLeapYear: function(year) {
12512                         return ((((year * 11) + 14) % 30) < 11);
12513                     }
12514                         }
12515                 },
12516                 Gregorian_Localized: {
12517                         firstDay: 5,
12518                         days: {
12519                                 names: ["یکشنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],
12520                                 namesAbbr: ["یکشنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],
12521                                 namesShort: ["ی","د","س","چ","پ","ج","ش"]
12522                         },
12523                         months: {
12524                                 names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""],
12525                                 namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","وږى","تله","لړم","ليندۍ","مرغومى",""]
12526                         },
12527                         AM: ["غ.م","غ.م","غ.م"],
12528                         PM: ["غ.و","غ.و","غ.و"],
12529                         eras: [{"name":"ل.ه","start":null,"offset":0}],
12530                         patterns: {
12531                                 d: "yyyy/M/d",
12532                                 D: "yyyy, dd, MMMM, dddd",
12533                                 f: "yyyy, dd, MMMM, dddd h:mm tt",
12534                                 F: "yyyy, dd, MMMM, dddd h:mm:ss tt",
12535                                 M: "d MMMM",
12536                                 Y: "MMMM yyyy"
12537                         }
12538                 }
12539         }
12540 });
12541
12542 Globalize.addCultureInfo( "gd-GB", "default", {
12543         name: "gd-GB",
12544         englishName: "Scottish Gaelic (United Kingdom)",
12545         nativeName: "Gàidhlig (An Rìoghachd Aonaichte)",
12546         language: "gd",
12547         numberFormat: {
12548                 negativeInfinity: "-Neo-chrìochnachd",
12549                 positiveInfinity: "Neo-chrìochnachd",
12550                 currency: {
12551                         pattern: ["-$n","$n"],
12552                         symbol: "£"
12553                 }
12554         },
12555         calendars: {
12556                 standard: {
12557                         firstDay: 1,
12558                         days: {
12559                                 names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],
12560                                 namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"],
12561                                 namesShort: ["D","L","M","C","A","H","S"]
12562                         },
12563                         months: {
12564                                 names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""],
12565                                 namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ògm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""]
12566                         },
12567                         AM: ["m","m","M"],
12568                         PM: ["f","f","F"],
12569                         patterns: {
12570                                 d: "dd/MM/yyyy",
12571                                 D: "dd MMMM yyyy",
12572                                 t: "HH:mm",
12573                                 T: "HH:mm:ss",
12574                                 f: "dd MMMM yyyy HH:mm",
12575                                 F: "dd MMMM yyyy HH:mm:ss",
12576                                 M: "dd MMMM",
12577                                 Y: "MMMM yyyy"
12578                         }
12579                 }
12580         }
12581 });
12582
12583 Globalize.addCultureInfo( "ar-IQ", "default", {
12584         name: "ar-IQ",
12585         englishName: "Arabic (Iraq)",
12586         nativeName: "العربية (العراق)",
12587         language: "ar",
12588         isRTL: true,
12589         numberFormat: {
12590                 pattern: ["n-"],
12591                 NaN: "ليس برقم",
12592                 negativeInfinity: "-لا نهاية",
12593                 positiveInfinity: "+لا نهاية",
12594                 currency: {
12595                         pattern: ["$n-","$ n"],
12596                         symbol: "د.ع.‏"
12597                 }
12598         },
12599         calendars: {
12600                 standard: {
12601                         firstDay: 6,
12602                         days: {
12603                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12604                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12605                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
12606                         },
12607                         months: {
12608                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
12609                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
12610                         },
12611                         AM: ["ص","ص","ص"],
12612                         PM: ["م","م","م"],
12613                         patterns: {
12614                                 d: "dd/MM/yyyy",
12615                                 D: "dd MMMM, yyyy",
12616                                 t: "hh:mm tt",
12617                                 T: "hh:mm:ss tt",
12618                                 f: "dd MMMM, yyyy hh:mm tt",
12619                                 F: "dd MMMM, yyyy hh:mm:ss tt",
12620                                 M: "dd MMMM"
12621                         }
12622                 },
12623                 UmAlQura: {
12624                         name: "UmAlQura",
12625                         firstDay: 6,
12626                         days: {
12627                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12628                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12629                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
12630                         },
12631                         months: {
12632                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
12633                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
12634                         },
12635                         AM: ["ص","ص","ص"],
12636                         PM: ["م","م","م"],
12637                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
12638                         twoDigitYearMax: 1451,
12639                         patterns: {
12640                                 d: "dd/MM/yy",
12641                                 D: "dd/MMMM/yyyy",
12642                                 t: "hh:mm tt",
12643                                 T: "hh:mm:ss tt",
12644                                 f: "dd/MMMM/yyyy hh:mm tt",
12645                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
12646                                 M: "dd MMMM"
12647                         },
12648                         convert: {
12649                     _yearInfo: [
12650                         // MonthLengthFlags, Gregorian Date
12651                         [746, -2198707200000],
12652                         [1769, -2168121600000],
12653                         [3794, -2137449600000],
12654                         [3748, -2106777600000],
12655                         [3402, -2076192000000],
12656                         [2710, -2045606400000],
12657                         [1334, -2015020800000],
12658                         [2741, -1984435200000],
12659                         [3498, -1953763200000],
12660                         [2980, -1923091200000],
12661                         [2889, -1892505600000],
12662                         [2707, -1861920000000],
12663                         [1323, -1831334400000],
12664                         [2647, -1800748800000],
12665                         [1206, -1770076800000],
12666                         [2741, -1739491200000],
12667                         [1450, -1708819200000],
12668                         [3413, -1678233600000],
12669                         [3370, -1647561600000],
12670                         [2646, -1616976000000],
12671                         [1198, -1586390400000],
12672                         [2397, -1555804800000],
12673                         [748, -1525132800000],
12674                         [1749, -1494547200000],
12675                         [1706, -1463875200000],
12676                         [1365, -1433289600000],
12677                         [1195, -1402704000000],
12678                         [2395, -1372118400000],
12679                         [698, -1341446400000],
12680                         [1397, -1310860800000],
12681                         [2994, -1280188800000],
12682                         [1892, -1249516800000],
12683                         [1865, -1218931200000],
12684                         [1621, -1188345600000],
12685                         [683, -1157760000000],
12686                         [1371, -1127174400000],
12687                         [2778, -1096502400000],
12688                         [1748, -1065830400000],
12689                         [3785, -1035244800000],
12690                         [3474, -1004572800000],
12691                         [3365, -973987200000],
12692                         [2637, -943401600000],
12693                         [685, -912816000000],
12694                         [1389, -882230400000],
12695                         [2922, -851558400000],
12696                         [2898, -820886400000],
12697                         [2725, -790300800000],
12698                         [2635, -759715200000],
12699                         [1175, -729129600000],
12700                         [2359, -698544000000],
12701                         [694, -667872000000],
12702                         [1397, -637286400000],
12703                         [3434, -606614400000],
12704                         [3410, -575942400000],
12705                         [2710, -545356800000],
12706                         [2349, -514771200000],
12707                         [605, -484185600000],
12708                         [1245, -453600000000],
12709                         [2778, -422928000000],
12710                         [1492, -392256000000],
12711                         [3497, -361670400000],
12712                         [3410, -330998400000],
12713                         [2730, -300412800000],
12714                         [1238, -269827200000],
12715                         [2486, -239241600000],
12716                         [884, -208569600000],
12717                         [1897, -177984000000],
12718                         [1874, -147312000000],
12719                         [1701, -116726400000],
12720                         [1355, -86140800000],
12721                         [2731, -55555200000],
12722                         [1370, -24883200000],
12723                         [2773, 5702400000],
12724                         [3538, 36374400000],
12725                         [3492, 67046400000],
12726                         [3401, 97632000000],
12727                         [2709, 128217600000],
12728                         [1325, 158803200000],
12729                         [2653, 189388800000],
12730                         [1370, 220060800000],
12731                         [2773, 250646400000],
12732                         [1706, 281318400000],
12733                         [1685, 311904000000],
12734                         [1323, 342489600000],
12735                         [2647, 373075200000],
12736                         [1198, 403747200000],
12737                         [2422, 434332800000],
12738                         [1388, 465004800000],
12739                         [2901, 495590400000],
12740                         [2730, 526262400000],
12741                         [2645, 556848000000],
12742                         [1197, 587433600000],
12743                         [2397, 618019200000],
12744                         [730, 648691200000],
12745                         [1497, 679276800000],
12746                         [3506, 709948800000],
12747                         [2980, 740620800000],
12748                         [2890, 771206400000],
12749                         [2645, 801792000000],
12750                         [693, 832377600000],
12751                         [1397, 862963200000],
12752                         [2922, 893635200000],
12753                         [3026, 924307200000],
12754                         [3012, 954979200000],
12755                         [2953, 985564800000],
12756                         [2709, 1016150400000],
12757                         [1325, 1046736000000],
12758                         [1453, 1077321600000],
12759                         [2922, 1107993600000],
12760                         [1748, 1138665600000],
12761                         [3529, 1169251200000],
12762                         [3474, 1199923200000],
12763                         [2726, 1230508800000],
12764                         [2390, 1261094400000],
12765                         [686, 1291680000000],
12766                         [1389, 1322265600000],
12767                         [874, 1352937600000],
12768                         [2901, 1383523200000],
12769                         [2730, 1414195200000],
12770                         [2381, 1444780800000],
12771                         [1181, 1475366400000],
12772                         [2397, 1505952000000],
12773                         [698, 1536624000000],
12774                         [1461, 1567209600000],
12775                         [1450, 1597881600000],
12776                         [3413, 1628467200000],
12777                         [2714, 1659139200000],
12778                         [2350, 1689724800000],
12779                         [622, 1720310400000],
12780                         [1373, 1750896000000],
12781                         [2778, 1781568000000],
12782                         [1748, 1812240000000],
12783                         [1701, 1842825600000],
12784                         [0, 1873411200000]
12785                     ],
12786                     minDate: -2198707200000,
12787                     maxDate: 1873411199999,
12788                     toGregorian: function(hyear, hmonth, hday) {
12789                         var days = hday - 1,
12790                             gyear = hyear - 1318;
12791                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
12792                         var info = this._yearInfo[gyear],
12793                             gdate = new Date(info[1]),
12794                             monthLength = info[0];
12795                         // Date's ticks in javascript are always from the GMT time,
12796                         // but we are interested in the gregorian date in the same timezone,
12797                         // not what the gregorian date was at GMT time, so we adjust for the offset.
12798                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
12799                         for (var i = 0; i < hmonth; i++) {
12800                             days += 29 + (monthLength & 1);
12801                             monthLength = monthLength >> 1;
12802                         }
12803                         gdate.setDate(gdate.getDate() + days);
12804                         return gdate;
12805                     },
12806                     fromGregorian: function(gdate) {
12807                         // Date's ticks in javascript are always from the GMT time,
12808                         // but we are interested in the hijri date in the same timezone,
12809                         // not what the hijri date was at GMT time, so we adjust for the offset.
12810                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
12811                         if (ticks < this.minDate || ticks > this.maxDate) return null;
12812                         var hyear = 0,
12813                             hmonth = 1;
12814                         // find the earliest gregorian date in the array that is greater than or equal to the given date
12815                         while (ticks > this._yearInfo[++hyear][1]) { }
12816                         if (ticks !== this._yearInfo[hyear][1]) {
12817                             hyear--;
12818                         }
12819                         var info = this._yearInfo[hyear],
12820                             // how many days has it been since the date we found in the array?
12821                             // 86400000 = ticks per day
12822                             days = Math.floor((ticks - info[1]) / 86400000),
12823                             monthLength = info[0];
12824                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
12825                         // now increment day/month based on the total days, considering
12826                         // how many days are in each month. We cannot run past the year
12827                         // mark since we would have found a different array entry in that case.
12828                         var daysInMonth = 29 + (monthLength & 1);
12829                         while (days >= daysInMonth) {
12830                             days -= daysInMonth;
12831                             monthLength = monthLength >> 1;
12832                             daysInMonth = 29 + (monthLength & 1);
12833                             hmonth++;
12834                         }
12835                         // remaining days is less than is in one month, thus is the day of the month we landed on
12836                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
12837                         return [hyear, hmonth - 1, days + 1];
12838                     }
12839                         }
12840                 },
12841                 Hijri: {
12842                         name: "Hijri",
12843                         firstDay: 6,
12844                         days: {
12845                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12846                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12847                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
12848                         },
12849                         months: {
12850                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
12851                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
12852                         },
12853                         AM: ["ص","ص","ص"],
12854                         PM: ["م","م","م"],
12855                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
12856                         twoDigitYearMax: 1451,
12857                         patterns: {
12858                                 d: "dd/MM/yy",
12859                                 D: "dd/MM/yyyy",
12860                                 t: "hh:mm tt",
12861                                 T: "hh:mm:ss tt",
12862                                 f: "dd/MM/yyyy hh:mm tt",
12863                                 F: "dd/MM/yyyy hh:mm:ss tt",
12864                                 M: "dd MMMM"
12865                         },
12866                         convert: {
12867                     // Adapted to Script from System.Globalization.HijriCalendar
12868                     ticks1970: 62135596800000,
12869                     // number of days leading up to each month
12870                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
12871                     minDate: -42521673600000,
12872                     maxDate: 253402300799999,
12873                     // The number of days to add or subtract from the calendar to accommodate the variances
12874                     // in the start and the end of Ramadan and to accommodate the date difference between
12875                     // countries/regions. May be dynamically adjusted based on user preference, but should
12876                     // remain in the range of -2 to 2, inclusive.
12877                     hijriAdjustment: 0,
12878                     toGregorian: function(hyear, hmonth, hday) {
12879                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
12880                         // 86400000 = ticks per day
12881                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
12882                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
12883                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
12884                         // date in the current timezone.
12885                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
12886                         return gdate;
12887                     },
12888                     fromGregorian: function(gdate) {
12889                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
12890                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
12891                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
12892                         // very particular formula determined by someone smart, adapted from the server-side implementation.
12893                         // it approximates the hijri year.
12894                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
12895                             absDays = this.daysToYear(hyear),
12896                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
12897                         // hyear is just approximate, it may need adjustment up or down by 1.
12898                         if (daysSinceJan0101 < absDays) {
12899                             hyear--;
12900                             absDays -= daysInYear;
12901                         }
12902                         else if (daysSinceJan0101 === absDays) {
12903                             hyear--;
12904                             absDays = this.daysToYear(hyear);
12905                         }
12906                         else {
12907                             if (daysSinceJan0101 > (absDays + daysInYear)) {
12908                                 absDays += daysInYear;
12909                                 hyear++;
12910                             }
12911                         }
12912                         // determine month by looking at how many days into the hyear we are
12913                         // monthDays contains the number of days up to each month.
12914                         hmonth = 0;
12915                         var daysIntoYear = daysSinceJan0101 - absDays;
12916                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
12917                             hmonth++;
12918                         }
12919                         hmonth--;
12920                         hday = daysIntoYear - this.monthDays[hmonth];
12921                         return [hyear, hmonth, hday];
12922                     },
12923                     daysToYear: function(year) {
12924                         // calculates how many days since Jan 1, 0001
12925                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
12926                             yearsInto30 = year - yearsToYear30 - 1,
12927                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
12928                         while (yearsInto30 > 0) {
12929                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
12930                             yearsInto30--;
12931                         }
12932                         return days;
12933                     },
12934                     isLeapYear: function(year) {
12935                         return ((((year * 11) + 14) % 30) < 11);
12936                     }
12937                         }
12938                 },
12939                 Gregorian_MiddleEastFrench: {
12940                         name: "Gregorian_MiddleEastFrench",
12941                         firstDay: 6,
12942                         days: {
12943                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
12944                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
12945                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
12946                         },
12947                         months: {
12948                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
12949                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
12950                         },
12951                         AM: ["ص","ص","ص"],
12952                         PM: ["م","م","م"],
12953                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
12954                         patterns: {
12955                                 d: "MM/dd/yyyy",
12956                                 t: "hh:mm tt",
12957                                 T: "hh:mm:ss tt",
12958                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
12959                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
12960                                 M: "dd MMMM"
12961                         }
12962                 },
12963                 Gregorian_TransliteratedEnglish: {
12964                         name: "Gregorian_TransliteratedEnglish",
12965                         firstDay: 6,
12966                         days: {
12967                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12968                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12969                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
12970                         },
12971                         months: {
12972                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
12973                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
12974                         },
12975                         AM: ["ص","ص","ص"],
12976                         PM: ["م","م","م"],
12977                         eras: [{"name":"م","start":null,"offset":0}],
12978                         patterns: {
12979                                 d: "MM/dd/yyyy",
12980                                 t: "hh:mm tt",
12981                                 T: "hh:mm:ss tt",
12982                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
12983                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
12984                         }
12985                 },
12986                 Gregorian_TransliteratedFrench: {
12987                         name: "Gregorian_TransliteratedFrench",
12988                         firstDay: 6,
12989                         days: {
12990                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12991                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
12992                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
12993                         },
12994                         months: {
12995                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
12996                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
12997                         },
12998                         AM: ["ص","ص","ص"],
12999                         PM: ["م","م","م"],
13000                         eras: [{"name":"م","start":null,"offset":0}],
13001                         patterns: {
13002                                 d: "MM/dd/yyyy",
13003                                 t: "hh:mm tt",
13004                                 T: "hh:mm:ss tt",
13005                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
13006                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
13007                         }
13008                 }
13009         }
13010 });
13011
13012 Globalize.addCultureInfo( "zh-CN", "default", {
13013         name: "zh-CN",
13014         englishName: "Chinese (Simplified, PRC)",
13015         nativeName: "中文(中华人民共和国)",
13016         language: "zh-CHS",
13017         numberFormat: {
13018                 NaN: "非数字",
13019                 negativeInfinity: "负无穷大",
13020                 positiveInfinity: "正无穷大",
13021                 percent: {
13022                         pattern: ["-n%","n%"]
13023                 },
13024                 currency: {
13025                         pattern: ["$-n","$n"],
13026                         symbol: "¥"
13027                 }
13028         },
13029         calendars: {
13030                 standard: {
13031                         days: {
13032                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
13033                                 namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"],
13034                                 namesShort: ["日","一","二","三","四","五","六"]
13035                         },
13036                         months: {
13037                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
13038                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
13039                         },
13040                         AM: ["上午","上午","上午"],
13041                         PM: ["下午","下午","下午"],
13042                         eras: [{"name":"公元","start":null,"offset":0}],
13043                         patterns: {
13044                                 d: "yyyy/M/d",
13045                                 D: "yyyy'年'M'月'd'日'",
13046                                 t: "H:mm",
13047                                 T: "H:mm:ss",
13048                                 f: "yyyy'年'M'月'd'日' H:mm",
13049                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
13050                                 M: "M'月'd'日'",
13051                                 Y: "yyyy'年'M'月'"
13052                         }
13053                 }
13054         }
13055 });
13056
13057 Globalize.addCultureInfo( "de-CH", "default", {
13058         name: "de-CH",
13059         englishName: "German (Switzerland)",
13060         nativeName: "Deutsch (Schweiz)",
13061         language: "de",
13062         numberFormat: {
13063                 ",": "'",
13064                 NaN: "n. def.",
13065                 negativeInfinity: "-unendlich",
13066                 positiveInfinity: "+unendlich",
13067                 percent: {
13068                         pattern: ["-n%","n%"],
13069                         ",": "'"
13070                 },
13071                 currency: {
13072                         pattern: ["$-n","$ n"],
13073                         ",": "'",
13074                         symbol: "Fr."
13075                 }
13076         },
13077         calendars: {
13078                 standard: {
13079                         "/": ".",
13080                         firstDay: 1,
13081                         days: {
13082                                 names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],
13083                                 namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"],
13084                                 namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"]
13085                         },
13086                         months: {
13087                                 names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],
13088                                 namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
13089                         },
13090                         AM: null,
13091                         PM: null,
13092                         eras: [{"name":"n. Chr.","start":null,"offset":0}],
13093                         patterns: {
13094                                 d: "dd.MM.yyyy",
13095                                 D: "dddd, d. MMMM yyyy",
13096                                 t: "HH:mm",
13097                                 T: "HH:mm:ss",
13098                                 f: "dddd, d. MMMM yyyy HH:mm",
13099                                 F: "dddd, d. MMMM yyyy HH:mm:ss",
13100                                 M: "dd MMMM",
13101                                 Y: "MMMM yyyy"
13102                         }
13103                 }
13104         }
13105 });
13106
13107 Globalize.addCultureInfo( "en-GB", "default", {
13108         name: "en-GB",
13109         englishName: "English (United Kingdom)",
13110         nativeName: "English (United Kingdom)",
13111         numberFormat: {
13112                 currency: {
13113                         pattern: ["-$n","$n"],
13114                         symbol: "£"
13115                 }
13116         },
13117         calendars: {
13118                 standard: {
13119                         firstDay: 1,
13120                         patterns: {
13121                                 d: "dd/MM/yyyy",
13122                                 D: "dd MMMM yyyy",
13123                                 t: "HH:mm",
13124                                 T: "HH:mm:ss",
13125                                 f: "dd MMMM yyyy HH:mm",
13126                                 F: "dd MMMM yyyy HH:mm:ss",
13127                                 M: "dd MMMM",
13128                                 Y: "MMMM yyyy"
13129                         }
13130                 }
13131         }
13132 });
13133
13134 Globalize.addCultureInfo( "es-MX", "default", {
13135         name: "es-MX",
13136         englishName: "Spanish (Mexico)",
13137         nativeName: "Español (México)",
13138         language: "es",
13139         numberFormat: {
13140                 NaN: "NeuN",
13141                 negativeInfinity: "-Infinito",
13142                 positiveInfinity: "Infinito",
13143                 currency: {
13144                         pattern: ["-$n","$n"]
13145                 }
13146         },
13147         calendars: {
13148                 standard: {
13149                         days: {
13150                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
13151                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
13152                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
13153                         },
13154                         months: {
13155                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
13156                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
13157                         },
13158                         AM: ["a.m.","a.m.","A.M."],
13159                         PM: ["p.m.","p.m.","P.M."],
13160                         eras: [{"name":"d.C.","start":null,"offset":0}],
13161                         patterns: {
13162                                 d: "dd/MM/yyyy",
13163                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
13164                                 t: "hh:mm tt",
13165                                 T: "hh:mm:ss tt",
13166                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
13167                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
13168                                 M: "dd MMMM",
13169                                 Y: "MMMM' de 'yyyy"
13170                         }
13171                 }
13172         }
13173 });
13174
13175 Globalize.addCultureInfo( "fr-BE", "default", {
13176         name: "fr-BE",
13177         englishName: "French (Belgium)",
13178         nativeName: "français (Belgique)",
13179         language: "fr",
13180         numberFormat: {
13181                 ",": ".",
13182                 ".": ",",
13183                 NaN: "Non Numérique",
13184                 negativeInfinity: "-Infini",
13185                 positiveInfinity: "+Infini",
13186                 percent: {
13187                         ",": ".",
13188                         ".": ","
13189                 },
13190                 currency: {
13191                         pattern: ["$ -n","$ n"],
13192                         ",": ".",
13193                         ".": ",",
13194                         symbol: "€"
13195                 }
13196         },
13197         calendars: {
13198                 standard: {
13199                         firstDay: 1,
13200                         days: {
13201                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
13202                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
13203                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
13204                         },
13205                         months: {
13206                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
13207                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
13208                         },
13209                         AM: null,
13210                         PM: null,
13211                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
13212                         patterns: {
13213                                 d: "d/MM/yyyy",
13214                                 D: "dddd d MMMM yyyy",
13215                                 t: "HH:mm",
13216                                 T: "HH:mm:ss",
13217                                 f: "dddd d MMMM yyyy HH:mm",
13218                                 F: "dddd d MMMM yyyy HH:mm:ss",
13219                                 M: "d MMMM",
13220                                 Y: "MMMM yyyy"
13221                         }
13222                 }
13223         }
13224 });
13225
13226 Globalize.addCultureInfo( "it-CH", "default", {
13227         name: "it-CH",
13228         englishName: "Italian (Switzerland)",
13229         nativeName: "italiano (Svizzera)",
13230         language: "it",
13231         numberFormat: {
13232                 ",": "'",
13233                 NaN: "Non un numero reale",
13234                 negativeInfinity: "-Infinito",
13235                 positiveInfinity: "+Infinito",
13236                 percent: {
13237                         pattern: ["-n%","n%"],
13238                         ",": "'"
13239                 },
13240                 currency: {
13241                         pattern: ["$-n","$ n"],
13242                         ",": "'",
13243                         symbol: "fr."
13244                 }
13245         },
13246         calendars: {
13247                 standard: {
13248                         "/": ".",
13249                         firstDay: 1,
13250                         days: {
13251                                 names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],
13252                                 namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"],
13253                                 namesShort: ["do","lu","ma","me","gi","ve","sa"]
13254                         },
13255                         months: {
13256                                 names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""],
13257                                 namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""]
13258                         },
13259                         AM: null,
13260                         PM: null,
13261                         eras: [{"name":"d.C.","start":null,"offset":0}],
13262                         patterns: {
13263                                 d: "dd.MM.yyyy",
13264                                 D: "dddd, d. MMMM yyyy",
13265                                 t: "HH:mm",
13266                                 T: "HH:mm:ss",
13267                                 f: "dddd, d. MMMM yyyy HH:mm",
13268                                 F: "dddd, d. MMMM yyyy HH:mm:ss",
13269                                 M: "d. MMMM",
13270                                 Y: "MMMM yyyy"
13271                         }
13272                 }
13273         }
13274 });
13275
13276 Globalize.addCultureInfo( "nl-BE", "default", {
13277         name: "nl-BE",
13278         englishName: "Dutch (Belgium)",
13279         nativeName: "Nederlands (België)",
13280         language: "nl",
13281         numberFormat: {
13282                 ",": ".",
13283                 ".": ",",
13284                 NaN: "NaN (Niet-een-getal)",
13285                 negativeInfinity: "-oneindig",
13286                 positiveInfinity: "oneindig",
13287                 percent: {
13288                         pattern: ["-n%","n%"],
13289                         ",": ".",
13290                         ".": ","
13291                 },
13292                 currency: {
13293                         pattern: ["$ -n","$ n"],
13294                         ",": ".",
13295                         ".": ",",
13296                         symbol: "€"
13297                 }
13298         },
13299         calendars: {
13300                 standard: {
13301                         firstDay: 1,
13302                         days: {
13303                                 names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],
13304                                 namesAbbr: ["zo","ma","di","wo","do","vr","za"],
13305                                 namesShort: ["zo","ma","di","wo","do","vr","za"]
13306                         },
13307                         months: {
13308                                 names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""],
13309                                 namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""]
13310                         },
13311                         AM: null,
13312                         PM: null,
13313                         patterns: {
13314                                 d: "d/MM/yyyy",
13315                                 D: "dddd d MMMM yyyy",
13316                                 t: "H:mm",
13317                                 T: "H:mm:ss",
13318                                 f: "dddd d MMMM yyyy H:mm",
13319                                 F: "dddd d MMMM yyyy H:mm:ss",
13320                                 M: "dd MMMM",
13321                                 Y: "MMMM yyyy"
13322                         }
13323                 }
13324         }
13325 });
13326
13327 Globalize.addCultureInfo( "nn-NO", "default", {
13328         name: "nn-NO",
13329         englishName: "Norwegian, Nynorsk (Norway)",
13330         nativeName: "norsk, nynorsk (Noreg)",
13331         language: "nn",
13332         numberFormat: {
13333                 ",": " ",
13334                 ".": ",",
13335                 negativeInfinity: "-INF",
13336                 positiveInfinity: "INF",
13337                 percent: {
13338                         ",": " ",
13339                         ".": ","
13340                 },
13341                 currency: {
13342                         pattern: ["$ -n","$ n"],
13343                         ",": " ",
13344                         ".": ",",
13345                         symbol: "kr"
13346                 }
13347         },
13348         calendars: {
13349                 standard: {
13350                         "/": ".",
13351                         firstDay: 1,
13352                         days: {
13353                                 names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"],
13354                                 namesAbbr: ["sø","må","ty","on","to","fr","la"],
13355                                 namesShort: ["sø","må","ty","on","to","fr","la"]
13356                         },
13357                         months: {
13358                                 names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""],
13359                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""]
13360                         },
13361                         AM: null,
13362                         PM: null,
13363                         patterns: {
13364                                 d: "dd.MM.yyyy",
13365                                 D: "d. MMMM yyyy",
13366                                 t: "HH:mm",
13367                                 T: "HH:mm:ss",
13368                                 f: "d. MMMM yyyy HH:mm",
13369                                 F: "d. MMMM yyyy HH:mm:ss",
13370                                 M: "d. MMMM",
13371                                 Y: "MMMM yyyy"
13372                         }
13373                 }
13374         }
13375 });
13376
13377 Globalize.addCultureInfo( "pt-PT", "default", {
13378         name: "pt-PT",
13379         englishName: "Portuguese (Portugal)",
13380         nativeName: "português (Portugal)",
13381         language: "pt",
13382         numberFormat: {
13383                 ",": ".",
13384                 ".": ",",
13385                 NaN: "NaN (Não é um número)",
13386                 negativeInfinity: "-Infinito",
13387                 positiveInfinity: "+Infinito",
13388                 percent: {
13389                         pattern: ["-n%","n%"],
13390                         ",": ".",
13391                         ".": ","
13392                 },
13393                 currency: {
13394                         pattern: ["-n $","n $"],
13395                         ",": ".",
13396                         ".": ",",
13397                         symbol: "€"
13398                 }
13399         },
13400         calendars: {
13401                 standard: {
13402                         "/": "-",
13403                         firstDay: 1,
13404                         days: {
13405                                 names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"],
13406                                 namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"],
13407                                 namesShort: ["D","S","T","Q","Q","S","S"]
13408                         },
13409                         months: {
13410                                 names: ["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""],
13411                                 namesAbbr: ["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""]
13412                         },
13413                         AM: null,
13414                         PM: null,
13415                         eras: [{"name":"d.C.","start":null,"offset":0}],
13416                         patterns: {
13417                                 d: "dd-MM-yyyy",
13418                                 D: "dddd, d' de 'MMMM' de 'yyyy",
13419                                 t: "HH:mm",
13420                                 T: "HH:mm:ss",
13421                                 f: "dddd, d' de 'MMMM' de 'yyyy HH:mm",
13422                                 F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss",
13423                                 M: "d/M",
13424                                 Y: "MMMM' de 'yyyy"
13425                         }
13426                 }
13427         }
13428 });
13429
13430 Globalize.addCultureInfo( "sr-Latn-CS", "default", {
13431         name: "sr-Latn-CS",
13432         englishName: "Serbian (Latin, Serbia and Montenegro (Former))",
13433         nativeName: "srpski (Srbija i Crna Gora (Prethodno))",
13434         language: "sr-Latn",
13435         numberFormat: {
13436                 ",": ".",
13437                 ".": ",",
13438                 negativeInfinity: "-beskonačnost",
13439                 positiveInfinity: "+beskonačnost",
13440                 percent: {
13441                         pattern: ["-n%","n%"],
13442                         ",": ".",
13443                         ".": ","
13444                 },
13445                 currency: {
13446                         pattern: ["-n $","n $"],
13447                         ",": ".",
13448                         ".": ",",
13449                         symbol: "Din."
13450                 }
13451         },
13452         calendars: {
13453                 standard: {
13454                         "/": ".",
13455                         firstDay: 1,
13456                         days: {
13457                                 names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],
13458                                 namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"],
13459                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
13460                         },
13461                         months: {
13462                                 names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""],
13463                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
13464                         },
13465                         AM: null,
13466                         PM: null,
13467                         eras: [{"name":"n.e.","start":null,"offset":0}],
13468                         patterns: {
13469                                 d: "d.M.yyyy",
13470                                 D: "d. MMMM yyyy",
13471                                 t: "H:mm",
13472                                 T: "H:mm:ss",
13473                                 f: "d. MMMM yyyy H:mm",
13474                                 F: "d. MMMM yyyy H:mm:ss",
13475                                 M: "d. MMMM",
13476                                 Y: "MMMM yyyy"
13477                         }
13478                 }
13479         }
13480 });
13481
13482 Globalize.addCultureInfo( "sv-FI", "default", {
13483         name: "sv-FI",
13484         englishName: "Swedish (Finland)",
13485         nativeName: "svenska (Finland)",
13486         language: "sv",
13487         numberFormat: {
13488                 ",": " ",
13489                 ".": ",",
13490                 negativeInfinity: "-INF",
13491                 positiveInfinity: "INF",
13492                 percent: {
13493                         ",": " ",
13494                         ".": ","
13495                 },
13496                 currency: {
13497                         pattern: ["-n $","n $"],
13498                         ",": " ",
13499                         ".": ",",
13500                         symbol: "€"
13501                 }
13502         },
13503         calendars: {
13504                 standard: {
13505                         "/": ".",
13506                         firstDay: 1,
13507                         days: {
13508                                 names: ["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],
13509                                 namesAbbr: ["sö","må","ti","on","to","fr","lö"],
13510                                 namesShort: ["sö","må","ti","on","to","fr","lö"]
13511                         },
13512                         months: {
13513                                 names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""],
13514                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""]
13515                         },
13516                         AM: null,
13517                         PM: null,
13518                         patterns: {
13519                                 d: "d.M.yyyy",
13520                                 D: "'den 'd MMMM yyyy",
13521                                 t: "HH:mm",
13522                                 T: "HH:mm:ss",
13523                                 f: "'den 'd MMMM yyyy HH:mm",
13524                                 F: "'den 'd MMMM yyyy HH:mm:ss",
13525                                 M: "'den 'd MMMM",
13526                                 Y: "MMMM yyyy"
13527                         }
13528                 }
13529         }
13530 });
13531
13532 Globalize.addCultureInfo( "az-Cyrl-AZ", "default", {
13533         name: "az-Cyrl-AZ",
13534         englishName: "Azeri (Cyrillic, Azerbaijan)",
13535         nativeName: "Азәрбајҹан (Азәрбајҹан)",
13536         language: "az-Cyrl",
13537         numberFormat: {
13538                 ",": " ",
13539                 ".": ",",
13540                 percent: {
13541                         pattern: ["-n%","n%"],
13542                         ",": " ",
13543                         ".": ","
13544                 },
13545                 currency: {
13546                         pattern: ["-n $","n $"],
13547                         ",": " ",
13548                         ".": ",",
13549                         symbol: "ман."
13550                 }
13551         },
13552         calendars: {
13553                 standard: {
13554                         "/": ".",
13555                         firstDay: 1,
13556                         days: {
13557                                 names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"],
13558                                 namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"],
13559                                 namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"]
13560                         },
13561                         months: {
13562                                 names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""],
13563                                 namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""]
13564                         },
13565                         monthsGenitive: {
13566                                 names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""],
13567                                 namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""]
13568                         },
13569                         AM: null,
13570                         PM: null,
13571                         patterns: {
13572                                 d: "dd.MM.yyyy",
13573                                 D: "d MMMM yyyy",
13574                                 t: "H:mm",
13575                                 T: "H:mm:ss",
13576                                 f: "d MMMM yyyy H:mm",
13577                                 F: "d MMMM yyyy H:mm:ss",
13578                                 M: "d MMMM",
13579                                 Y: "MMMM yyyy"
13580                         }
13581                 }
13582         }
13583 });
13584
13585 Globalize.addCultureInfo( "dsb-DE", "default", {
13586         name: "dsb-DE",
13587         englishName: "Lower Sorbian (Germany)",
13588         nativeName: "dolnoserbšćina (Nimska)",
13589         language: "dsb",
13590         numberFormat: {
13591                 ",": ".",
13592                 ".": ",",
13593                 NaN: "njedefinowane",
13594                 negativeInfinity: "-njekońcne",
13595                 positiveInfinity: "+njekońcne",
13596                 percent: {
13597                         ",": ".",
13598                         ".": ","
13599                 },
13600                 currency: {
13601                         pattern: ["-n $","n $"],
13602                         ",": ".",
13603                         ".": ",",
13604                         symbol: "€"
13605                 }
13606         },
13607         calendars: {
13608                 standard: {
13609                         "/": ". ",
13610                         firstDay: 1,
13611                         days: {
13612                                 names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"],
13613                                 namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"],
13614                                 namesShort: ["n","p","w","s","s","p","s"]
13615                         },
13616                         months: {
13617                                 names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""],
13618                                 namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""]
13619                         },
13620                         monthsGenitive: {
13621                                 names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""],
13622                                 namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""]
13623                         },
13624                         AM: null,
13625                         PM: null,
13626                         eras: [{"name":"po Chr.","start":null,"offset":0}],
13627                         patterns: {
13628                                 d: "d. M. yyyy",
13629                                 D: "dddd, 'dnja' d. MMMM yyyy",
13630                                 t: "H.mm 'goź.'",
13631                                 T: "H:mm:ss",
13632                                 f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'",
13633                                 F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss",
13634                                 M: "d. MMMM",
13635                                 Y: "MMMM yyyy"
13636                         }
13637                 }
13638         }
13639 });
13640
13641 Globalize.addCultureInfo( "se-SE", "default", {
13642         name: "se-SE",
13643         englishName: "Sami, Northern (Sweden)",
13644         nativeName: "davvisámegiella (Ruoŧŧa)",
13645         language: "se",
13646         numberFormat: {
13647                 ",": " ",
13648                 ".": ",",
13649                 percent: {
13650                         ",": " ",
13651                         ".": ","
13652                 },
13653                 currency: {
13654                         pattern: ["-n $","n $"],
13655                         ",": ".",
13656                         ".": ",",
13657                         symbol: "kr"
13658                 }
13659         },
13660         calendars: {
13661                 standard: {
13662                         "/": "-",
13663                         firstDay: 1,
13664                         days: {
13665                                 names: ["sotnabeaivi","mánnodat","disdat","gaskavahkku","duorastat","bearjadat","lávvardat"],
13666                                 namesAbbr: ["sotn","mán","dis","gask","duor","bear","láv"],
13667                                 namesShort: ["s","m","d","g","d","b","l"]
13668                         },
13669                         months: {
13670                                 names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""],
13671                                 namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""]
13672                         },
13673                         monthsGenitive: {
13674                                 names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""],
13675                                 namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""]
13676                         },
13677                         AM: null,
13678                         PM: null,
13679                         patterns: {
13680                                 d: "yyyy-MM-dd",
13681                                 D: "MMMM d'. b. 'yyyy",
13682                                 t: "HH:mm",
13683                                 T: "HH:mm:ss",
13684                                 f: "MMMM d'. b. 'yyyy HH:mm",
13685                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
13686                                 M: "MMMM d'. b. '",
13687                                 Y: "MMMM yyyy"
13688                         }
13689                 }
13690         }
13691 });
13692
13693 Globalize.addCultureInfo( "ga-IE", "default", {
13694         name: "ga-IE",
13695         englishName: "Irish (Ireland)",
13696         nativeName: "Gaeilge (Éire)",
13697         language: "ga",
13698         numberFormat: {
13699                 currency: {
13700                         pattern: ["-$n","$n"],
13701                         symbol: "€"
13702                 }
13703         },
13704         calendars: {
13705                 standard: {
13706                         firstDay: 1,
13707                         days: {
13708                                 names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"],
13709                                 namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"],
13710                                 namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"]
13711                         },
13712                         months: {
13713                                 names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""],
13714                                 namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""]
13715                         },
13716                         AM: ["r.n.","r.n.","R.N."],
13717                         PM: ["i.n.","i.n.","I.N."],
13718                         patterns: {
13719                                 d: "dd/MM/yyyy",
13720                                 D: "d MMMM yyyy",
13721                                 t: "HH:mm",
13722                                 T: "HH:mm:ss",
13723                                 f: "d MMMM yyyy HH:mm",
13724                                 F: "d MMMM yyyy HH:mm:ss",
13725                                 M: "dd MMMM",
13726                                 Y: "MMMM yyyy"
13727                         }
13728                 }
13729         }
13730 });
13731
13732 Globalize.addCultureInfo( "ms-BN", "default", {
13733         name: "ms-BN",
13734         englishName: "Malay (Brunei Darussalam)",
13735         nativeName: "Bahasa Melayu (Brunei Darussalam)",
13736         language: "ms",
13737         numberFormat: {
13738                 ",": ".",
13739                 ".": ",",
13740                 percent: {
13741                         ",": ".",
13742                         ".": ","
13743                 },
13744                 currency: {
13745                         decimals: 0,
13746                         ",": ".",
13747                         ".": ","
13748                 }
13749         },
13750         calendars: {
13751                 standard: {
13752                         firstDay: 1,
13753                         days: {
13754                                 names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],
13755                                 namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"],
13756                                 namesShort: ["A","I","S","R","K","J","S"]
13757                         },
13758                         months: {
13759                                 names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""],
13760                                 namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""]
13761                         },
13762                         AM: null,
13763                         PM: null,
13764                         patterns: {
13765                                 d: "dd/MM/yyyy",
13766                                 D: "dd MMMM yyyy",
13767                                 t: "H:mm",
13768                                 T: "H:mm:ss",
13769                                 f: "dd MMMM yyyy H:mm",
13770                                 F: "dd MMMM yyyy H:mm:ss",
13771                                 M: "dd MMMM",
13772                                 Y: "MMMM yyyy"
13773                         }
13774                 }
13775         }
13776 });
13777
13778 Globalize.addCultureInfo( "uz-Cyrl-UZ", "default", {
13779         name: "uz-Cyrl-UZ",
13780         englishName: "Uzbek (Cyrillic, Uzbekistan)",
13781         nativeName: "Ўзбек (Ўзбекистон)",
13782         language: "uz-Cyrl",
13783         numberFormat: {
13784                 ",": " ",
13785                 ".": ",",
13786                 percent: {
13787                         pattern: ["-n%","n%"],
13788                         ",": " ",
13789                         ".": ","
13790                 },
13791                 currency: {
13792                         pattern: ["-n $","n $"],
13793                         ",": " ",
13794                         ".": ",",
13795                         symbol: "сўм"
13796                 }
13797         },
13798         calendars: {
13799                 standard: {
13800                         "/": ".",
13801                         firstDay: 1,
13802                         days: {
13803                                 names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"],
13804                                 namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"],
13805                                 namesShort: ["я","д","с","ч","п","ж","ш"]
13806                         },
13807                         months: {
13808                                 names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""],
13809                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
13810                         },
13811                         monthsGenitive: {
13812                                 names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""],
13813                                 namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
13814                         },
13815                         AM: null,
13816                         PM: null,
13817                         patterns: {
13818                                 d: "dd.MM.yyyy",
13819                                 D: "yyyy 'йил' d-MMMM",
13820                                 t: "HH:mm",
13821                                 T: "HH:mm:ss",
13822                                 f: "yyyy 'йил' d-MMMM HH:mm",
13823                                 F: "yyyy 'йил' d-MMMM HH:mm:ss",
13824                                 M: "d-MMMM",
13825                                 Y: "MMMM yyyy"
13826                         }
13827                 }
13828         }
13829 });
13830
13831 Globalize.addCultureInfo( "bn-BD", "default", {
13832         name: "bn-BD",
13833         englishName: "Bengali (Bangladesh)",
13834         nativeName: "বাংলা (বাংলাদেশ)",
13835         language: "bn",
13836         numberFormat: {
13837                 groupSizes: [3,2],
13838                 percent: {
13839                         pattern: ["-%n","%n"],
13840                         groupSizes: [3,2]
13841                 },
13842                 currency: {
13843                         pattern: ["$ -n","$ n"],
13844                         groupSizes: [3,2],
13845                         symbol: "৳"
13846                 }
13847         },
13848         calendars: {
13849                 standard: {
13850                         "/": "-",
13851                         ":": ".",
13852                         firstDay: 1,
13853                         days: {
13854                                 names: ["রবিবার","সোমবার","মঙ্গলবার","বুধবার","বৃহস্পতিবার","শুক্রবার","শনিবার"],
13855                                 namesAbbr: ["রবি.","সোম.","মঙ্গল.","বুধ.","বৃহস্পতি.","শুক্র.","শনি."],
13856                                 namesShort: ["র","স","ম","ব","ব","শ","শ"]
13857                         },
13858                         months: {
13859                                 names: ["জানুয়ারী","ফেব্রুয়ারী","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর",""],
13860                                 namesAbbr: ["জানু.","ফেব্রু.","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগ.","সেপ্টে.","অক্টো.","নভে.","ডিসে.",""]
13861                         },
13862                         AM: ["পুর্বাহ্ন","পুর্বাহ্ন","পুর্বাহ্ন"],
13863                         PM: ["অপরাহ্ন","অপরাহ্ন","অপরাহ্ন"],
13864                         patterns: {
13865                                 d: "dd-MM-yy",
13866                                 D: "dd MMMM yyyy",
13867                                 t: "HH.mm",
13868                                 T: "HH.mm.ss",
13869                                 f: "dd MMMM yyyy HH.mm",
13870                                 F: "dd MMMM yyyy HH.mm.ss",
13871                                 M: "dd MMMM"
13872                         }
13873                 }
13874         }
13875 });
13876
13877 Globalize.addCultureInfo( "mn-Mong-CN", "default", {
13878         name: "mn-Mong-CN",
13879         englishName: "Mongolian (Traditional Mongolian, PRC)",
13880         nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ (ᠪᠦᠭᠦᠳᠡ ᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤ ᠳᠤᠮᠳᠠᠳᠤ ᠠᠷᠠᠳ ᠣᠯᠣᠰ)",
13881         language: "mn-Mong",
13882         numberFormat: {
13883                 groupSizes: [3,0],
13884                 NaN: "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ",
13885                 negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ",
13886                 positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ",
13887                 percent: {
13888                         pattern: ["-n%","n%"],
13889                         groupSizes: [3,0]
13890                 },
13891                 currency: {
13892                         pattern: ["$-n","$n"],
13893                         groupSizes: [3,0],
13894                         symbol: "¥"
13895                 }
13896         },
13897         calendars: {
13898                 standard: {
13899                         firstDay: 1,
13900                         days: {
13901                                 names: ["ᠭᠠᠷᠠᠭ ᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"],
13902                                 namesAbbr: ["ᠭᠠᠷᠠᠭ ᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"],
13903                                 namesShort: ["ᠡ‍","ᠨᠢ‍","ᠬᠣ‍","ᠭᠤ‍","ᠳᠥ‍","ᠲᠠ‍","ᠵᠢ‍"]
13904                         },
13905                         months: {
13906                                 names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""],
13907                                 namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""]
13908                         },
13909                         AM: null,
13910                         PM: null,
13911                         eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}],
13912                         patterns: {
13913                                 d: "yyyy/M/d",
13914                                 D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ  ᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'",
13915                                 t: "H:mm",
13916                                 T: "H:mm:ss",
13917                                 f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ  ᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm",
13918                                 F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ  ᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss",
13919                                 M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'",
13920                                 Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'"
13921                         }
13922                 }
13923         }
13924 });
13925
13926 Globalize.addCultureInfo( "iu-Latn-CA", "default", {
13927         name: "iu-Latn-CA",
13928         englishName: "Inuktitut (Latin, Canada)",
13929         nativeName: "Inuktitut (Kanatami)",
13930         language: "iu-Latn",
13931         numberFormat: {
13932                 groupSizes: [3,0],
13933                 percent: {
13934                         groupSizes: [3,0]
13935                 }
13936         },
13937         calendars: {
13938                 standard: {
13939                         days: {
13940                                 names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"],
13941                                 namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"],
13942                                 namesShort: ["N","N","A","P","S","T","S"]
13943                         },
13944                         months: {
13945                                 names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""],
13946                                 namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""]
13947                         },
13948                         patterns: {
13949                                 d: "d/MM/yyyy",
13950                                 D: "ddd, MMMM dd,yyyy",
13951                                 f: "ddd, MMMM dd,yyyy h:mm tt",
13952                                 F: "ddd, MMMM dd,yyyy h:mm:ss tt"
13953                         }
13954                 }
13955         }
13956 });
13957
13958 Globalize.addCultureInfo( "tzm-Latn-DZ", "default", {
13959         name: "tzm-Latn-DZ",
13960         englishName: "Tamazight (Latin, Algeria)",
13961         nativeName: "Tamazight (Djazaïr)",
13962         language: "tzm-Latn",
13963         numberFormat: {
13964                 pattern: ["n-"],
13965                 ",": ".",
13966                 ".": ",",
13967                 NaN: "Non Numérique",
13968                 negativeInfinity: "-Infini",
13969                 positiveInfinity: "+Infini",
13970                 percent: {
13971                         ",": ".",
13972                         ".": ","
13973                 },
13974                 currency: {
13975                         pattern: ["-n $","n $"],
13976                         symbol: "DZD"
13977                 }
13978         },
13979         calendars: {
13980                 standard: {
13981                         "/": "-",
13982                         firstDay: 6,
13983                         days: {
13984                                 names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"],
13985                                 namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"],
13986                                 namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"]
13987                         },
13988                         months: {
13989                                 names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""],
13990                                 namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""]
13991                         },
13992                         AM: null,
13993                         PM: null,
13994                         patterns: {
13995                                 d: "dd-MM-yyyy",
13996                                 D: "dd MMMM, yyyy",
13997                                 t: "H:mm",
13998                                 T: "H:mm:ss",
13999                                 f: "dd MMMM, yyyy H:mm",
14000                                 F: "dd MMMM, yyyy H:mm:ss",
14001                                 M: "dd MMMM"
14002                         }
14003                 }
14004         }
14005 });
14006
14007 Globalize.addCultureInfo( "quz-EC", "default", {
14008         name: "quz-EC",
14009         englishName: "Quechua (Ecuador)",
14010         nativeName: "runasimi (Ecuador)",
14011         language: "quz",
14012         numberFormat: {
14013                 ",": ".",
14014                 ".": ",",
14015                 percent: {
14016                         pattern: ["-%n","%n"],
14017                         ",": ".",
14018                         ".": ","
14019                 },
14020                 currency: {
14021                         pattern: ["($ n)","$ n"],
14022                         ",": ".",
14023                         ".": ","
14024                 }
14025         },
14026         calendars: {
14027                 standard: {
14028                         days: {
14029                                 names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"],
14030                                 namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"],
14031                                 namesShort: ["d","k","a","m","h","b","k"]
14032                         },
14033                         months: {
14034                                 names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""],
14035                                 namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""]
14036                         },
14037                         AM: null,
14038                         PM: null,
14039                         patterns: {
14040                                 d: "dd/MM/yyyy",
14041                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
14042                                 t: "H:mm",
14043                                 T: "H:mm:ss",
14044                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
14045                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
14046                                 Y: "MMMM' de 'yyyy"
14047                         }
14048                 }
14049         }
14050 });
14051
14052 Globalize.addCultureInfo( "ar-EG", "default", {
14053         name: "ar-EG",
14054         englishName: "Arabic (Egypt)",
14055         nativeName: "العربية (مصر)",
14056         language: "ar",
14057         isRTL: true,
14058         numberFormat: {
14059                 pattern: ["n-"],
14060                 decimals: 3,
14061                 NaN: "ليس برقم",
14062                 negativeInfinity: "-لا نهاية",
14063                 positiveInfinity: "+لا نهاية",
14064                 percent: {
14065                         decimals: 3
14066                 },
14067                 currency: {
14068                         pattern: ["$n-","$ n"],
14069                         symbol: "ج.م.‏"
14070                 }
14071         },
14072         calendars: {
14073                 standard: {
14074                         firstDay: 6,
14075                         days: {
14076                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14077                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14078                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
14079                         },
14080                         months: {
14081                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
14082                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
14083                         },
14084                         AM: ["ص","ص","ص"],
14085                         PM: ["م","م","م"],
14086                         patterns: {
14087                                 d: "dd/MM/yyyy",
14088                                 D: "dd MMMM, yyyy",
14089                                 t: "hh:mm tt",
14090                                 T: "hh:mm:ss tt",
14091                                 f: "dd MMMM, yyyy hh:mm tt",
14092                                 F: "dd MMMM, yyyy hh:mm:ss tt",
14093                                 M: "dd MMMM"
14094                         }
14095                 },
14096                 UmAlQura: {
14097                         name: "UmAlQura",
14098                         firstDay: 6,
14099                         days: {
14100                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14101                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14102                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
14103                         },
14104                         months: {
14105                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
14106                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
14107                         },
14108                         AM: ["ص","ص","ص"],
14109                         PM: ["م","م","م"],
14110                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
14111                         twoDigitYearMax: 1451,
14112                         patterns: {
14113                                 d: "dd/MM/yy",
14114                                 D: "dd/MMMM/yyyy",
14115                                 t: "hh:mm tt",
14116                                 T: "hh:mm:ss tt",
14117                                 f: "dd/MMMM/yyyy hh:mm tt",
14118                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
14119                                 M: "dd MMMM"
14120                         },
14121                         convert: {
14122                     _yearInfo: [
14123                         // MonthLengthFlags, Gregorian Date
14124                         [746, -2198707200000],
14125                         [1769, -2168121600000],
14126                         [3794, -2137449600000],
14127                         [3748, -2106777600000],
14128                         [3402, -2076192000000],
14129                         [2710, -2045606400000],
14130                         [1334, -2015020800000],
14131                         [2741, -1984435200000],
14132                         [3498, -1953763200000],
14133                         [2980, -1923091200000],
14134                         [2889, -1892505600000],
14135                         [2707, -1861920000000],
14136                         [1323, -1831334400000],
14137                         [2647, -1800748800000],
14138                         [1206, -1770076800000],
14139                         [2741, -1739491200000],
14140                         [1450, -1708819200000],
14141                         [3413, -1678233600000],
14142                         [3370, -1647561600000],
14143                         [2646, -1616976000000],
14144                         [1198, -1586390400000],
14145                         [2397, -1555804800000],
14146                         [748, -1525132800000],
14147                         [1749, -1494547200000],
14148                         [1706, -1463875200000],
14149                         [1365, -1433289600000],
14150                         [1195, -1402704000000],
14151                         [2395, -1372118400000],
14152                         [698, -1341446400000],
14153                         [1397, -1310860800000],
14154                         [2994, -1280188800000],
14155                         [1892, -1249516800000],
14156                         [1865, -1218931200000],
14157                         [1621, -1188345600000],
14158                         [683, -1157760000000],
14159                         [1371, -1127174400000],
14160                         [2778, -1096502400000],
14161                         [1748, -1065830400000],
14162                         [3785, -1035244800000],
14163                         [3474, -1004572800000],
14164                         [3365, -973987200000],
14165                         [2637, -943401600000],
14166                         [685, -912816000000],
14167                         [1389, -882230400000],
14168                         [2922, -851558400000],
14169                         [2898, -820886400000],
14170                         [2725, -790300800000],
14171                         [2635, -759715200000],
14172                         [1175, -729129600000],
14173                         [2359, -698544000000],
14174                         [694, -667872000000],
14175                         [1397, -637286400000],
14176                         [3434, -606614400000],
14177                         [3410, -575942400000],
14178                         [2710, -545356800000],
14179                         [2349, -514771200000],
14180                         [605, -484185600000],
14181                         [1245, -453600000000],
14182                         [2778, -422928000000],
14183                         [1492, -392256000000],
14184                         [3497, -361670400000],
14185                         [3410, -330998400000],
14186                         [2730, -300412800000],
14187                         [1238, -269827200000],
14188                         [2486, -239241600000],
14189                         [884, -208569600000],
14190                         [1897, -177984000000],
14191                         [1874, -147312000000],
14192                         [1701, -116726400000],
14193                         [1355, -86140800000],
14194                         [2731, -55555200000],
14195                         [1370, -24883200000],
14196                         [2773, 5702400000],
14197                         [3538, 36374400000],
14198                         [3492, 67046400000],
14199                         [3401, 97632000000],
14200                         [2709, 128217600000],
14201                         [1325, 158803200000],
14202                         [2653, 189388800000],
14203                         [1370, 220060800000],
14204                         [2773, 250646400000],
14205                         [1706, 281318400000],
14206                         [1685, 311904000000],
14207                         [1323, 342489600000],
14208                         [2647, 373075200000],
14209                         [1198, 403747200000],
14210                         [2422, 434332800000],
14211                         [1388, 465004800000],
14212                         [2901, 495590400000],
14213                         [2730, 526262400000],
14214                         [2645, 556848000000],
14215                         [1197, 587433600000],
14216                         [2397, 618019200000],
14217                         [730, 648691200000],
14218                         [1497, 679276800000],
14219                         [3506, 709948800000],
14220                         [2980, 740620800000],
14221                         [2890, 771206400000],
14222                         [2645, 801792000000],
14223                         [693, 832377600000],
14224                         [1397, 862963200000],
14225                         [2922, 893635200000],
14226                         [3026, 924307200000],
14227                         [3012, 954979200000],
14228                         [2953, 985564800000],
14229                         [2709, 1016150400000],
14230                         [1325, 1046736000000],
14231                         [1453, 1077321600000],
14232                         [2922, 1107993600000],
14233                         [1748, 1138665600000],
14234                         [3529, 1169251200000],
14235                         [3474, 1199923200000],
14236                         [2726, 1230508800000],
14237                         [2390, 1261094400000],
14238                         [686, 1291680000000],
14239                         [1389, 1322265600000],
14240                         [874, 1352937600000],
14241                         [2901, 1383523200000],
14242                         [2730, 1414195200000],
14243                         [2381, 1444780800000],
14244                         [1181, 1475366400000],
14245                         [2397, 1505952000000],
14246                         [698, 1536624000000],
14247                         [1461, 1567209600000],
14248                         [1450, 1597881600000],
14249                         [3413, 1628467200000],
14250                         [2714, 1659139200000],
14251                         [2350, 1689724800000],
14252                         [622, 1720310400000],
14253                         [1373, 1750896000000],
14254                         [2778, 1781568000000],
14255                         [1748, 1812240000000],
14256                         [1701, 1842825600000],
14257                         [0, 1873411200000]
14258                     ],
14259                     minDate: -2198707200000,
14260                     maxDate: 1873411199999,
14261                     toGregorian: function(hyear, hmonth, hday) {
14262                         var days = hday - 1,
14263                             gyear = hyear - 1318;
14264                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
14265                         var info = this._yearInfo[gyear],
14266                             gdate = new Date(info[1]),
14267                             monthLength = info[0];
14268                         // Date's ticks in javascript are always from the GMT time,
14269                         // but we are interested in the gregorian date in the same timezone,
14270                         // not what the gregorian date was at GMT time, so we adjust for the offset.
14271                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
14272                         for (var i = 0; i < hmonth; i++) {
14273                             days += 29 + (monthLength & 1);
14274                             monthLength = monthLength >> 1;
14275                         }
14276                         gdate.setDate(gdate.getDate() + days);
14277                         return gdate;
14278                     },
14279                     fromGregorian: function(gdate) {
14280                         // Date's ticks in javascript are always from the GMT time,
14281                         // but we are interested in the hijri date in the same timezone,
14282                         // not what the hijri date was at GMT time, so we adjust for the offset.
14283                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
14284                         if (ticks < this.minDate || ticks > this.maxDate) return null;
14285                         var hyear = 0,
14286                             hmonth = 1;
14287                         // find the earliest gregorian date in the array that is greater than or equal to the given date
14288                         while (ticks > this._yearInfo[++hyear][1]) { }
14289                         if (ticks !== this._yearInfo[hyear][1]) {
14290                             hyear--;
14291                         }
14292                         var info = this._yearInfo[hyear],
14293                             // how many days has it been since the date we found in the array?
14294                             // 86400000 = ticks per day
14295                             days = Math.floor((ticks - info[1]) / 86400000),
14296                             monthLength = info[0];
14297                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
14298                         // now increment day/month based on the total days, considering
14299                         // how many days are in each month. We cannot run past the year
14300                         // mark since we would have found a different array entry in that case.
14301                         var daysInMonth = 29 + (monthLength & 1);
14302                         while (days >= daysInMonth) {
14303                             days -= daysInMonth;
14304                             monthLength = monthLength >> 1;
14305                             daysInMonth = 29 + (monthLength & 1);
14306                             hmonth++;
14307                         }
14308                         // remaining days is less than is in one month, thus is the day of the month we landed on
14309                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
14310                         return [hyear, hmonth - 1, days + 1];
14311                     }
14312                         }
14313                 },
14314                 Gregorian_TransliteratedEnglish: {
14315                         name: "Gregorian_TransliteratedEnglish",
14316                         firstDay: 6,
14317                         days: {
14318                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14319                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14320                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
14321                         },
14322                         months: {
14323                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
14324                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
14325                         },
14326                         AM: ["ص","ص","ص"],
14327                         PM: ["م","م","م"],
14328                         eras: [{"name":"م","start":null,"offset":0}],
14329                         patterns: {
14330                                 d: "MM/dd/yyyy",
14331                                 t: "hh:mm tt",
14332                                 T: "hh:mm:ss tt",
14333                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
14334                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
14335                         }
14336                 },
14337                 Hijri: {
14338                         name: "Hijri",
14339                         firstDay: 6,
14340                         days: {
14341                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14342                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14343                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
14344                         },
14345                         months: {
14346                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
14347                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
14348                         },
14349                         AM: ["ص","ص","ص"],
14350                         PM: ["م","م","م"],
14351                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
14352                         twoDigitYearMax: 1451,
14353                         patterns: {
14354                                 d: "dd/MM/yy",
14355                                 D: "dd/MM/yyyy",
14356                                 t: "hh:mm tt",
14357                                 T: "hh:mm:ss tt",
14358                                 f: "dd/MM/yyyy hh:mm tt",
14359                                 F: "dd/MM/yyyy hh:mm:ss tt",
14360                                 M: "dd MMMM"
14361                         },
14362                         convert: {
14363                     // Adapted to Script from System.Globalization.HijriCalendar
14364                     ticks1970: 62135596800000,
14365                     // number of days leading up to each month
14366                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
14367                     minDate: -42521673600000,
14368                     maxDate: 253402300799999,
14369                     // The number of days to add or subtract from the calendar to accommodate the variances
14370                     // in the start and the end of Ramadan and to accommodate the date difference between
14371                     // countries/regions. May be dynamically adjusted based on user preference, but should
14372                     // remain in the range of -2 to 2, inclusive.
14373                     hijriAdjustment: 0,
14374                     toGregorian: function(hyear, hmonth, hday) {
14375                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
14376                         // 86400000 = ticks per day
14377                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
14378                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
14379                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
14380                         // date in the current timezone.
14381                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
14382                         return gdate;
14383                     },
14384                     fromGregorian: function(gdate) {
14385                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
14386                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
14387                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
14388                         // very particular formula determined by someone smart, adapted from the server-side implementation.
14389                         // it approximates the hijri year.
14390                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
14391                             absDays = this.daysToYear(hyear),
14392                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
14393                         // hyear is just approximate, it may need adjustment up or down by 1.
14394                         if (daysSinceJan0101 < absDays) {
14395                             hyear--;
14396                             absDays -= daysInYear;
14397                         }
14398                         else if (daysSinceJan0101 === absDays) {
14399                             hyear--;
14400                             absDays = this.daysToYear(hyear);
14401                         }
14402                         else {
14403                             if (daysSinceJan0101 > (absDays + daysInYear)) {
14404                                 absDays += daysInYear;
14405                                 hyear++;
14406                             }
14407                         }
14408                         // determine month by looking at how many days into the hyear we are
14409                         // monthDays contains the number of days up to each month.
14410                         hmonth = 0;
14411                         var daysIntoYear = daysSinceJan0101 - absDays;
14412                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
14413                             hmonth++;
14414                         }
14415                         hmonth--;
14416                         hday = daysIntoYear - this.monthDays[hmonth];
14417                         return [hyear, hmonth, hday];
14418                     },
14419                     daysToYear: function(year) {
14420                         // calculates how many days since Jan 1, 0001
14421                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
14422                             yearsInto30 = year - yearsToYear30 - 1,
14423                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
14424                         while (yearsInto30 > 0) {
14425                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
14426                             yearsInto30--;
14427                         }
14428                         return days;
14429                     },
14430                     isLeapYear: function(year) {
14431                         return ((((year * 11) + 14) % 30) < 11);
14432                     }
14433                         }
14434                 },
14435                 Gregorian_MiddleEastFrench: {
14436                         name: "Gregorian_MiddleEastFrench",
14437                         firstDay: 6,
14438                         days: {
14439                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
14440                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
14441                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
14442                         },
14443                         months: {
14444                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
14445                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
14446                         },
14447                         AM: ["ص","ص","ص"],
14448                         PM: ["م","م","م"],
14449                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
14450                         patterns: {
14451                                 d: "MM/dd/yyyy",
14452                                 t: "hh:mm tt",
14453                                 T: "hh:mm:ss tt",
14454                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
14455                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
14456                                 M: "dd MMMM"
14457                         }
14458                 },
14459                 Gregorian_Arabic: {
14460                         name: "Gregorian_Arabic",
14461                         firstDay: 6,
14462                         days: {
14463                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14464                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14465                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
14466                         },
14467                         months: {
14468                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
14469                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
14470                         },
14471                         AM: ["ص","ص","ص"],
14472                         PM: ["م","م","م"],
14473                         eras: [{"name":"م","start":null,"offset":0}],
14474                         patterns: {
14475                                 d: "MM/dd/yyyy",
14476                                 t: "hh:mm tt",
14477                                 T: "hh:mm:ss tt",
14478                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
14479                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
14480                         }
14481                 },
14482                 Gregorian_TransliteratedFrench: {
14483                         name: "Gregorian_TransliteratedFrench",
14484                         firstDay: 6,
14485                         days: {
14486                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14487                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14488                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
14489                         },
14490                         months: {
14491                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
14492                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
14493                         },
14494                         AM: ["ص","ص","ص"],
14495                         PM: ["م","م","م"],
14496                         eras: [{"name":"م","start":null,"offset":0}],
14497                         patterns: {
14498                                 d: "MM/dd/yyyy",
14499                                 t: "hh:mm tt",
14500                                 T: "hh:mm:ss tt",
14501                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
14502                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
14503                         }
14504                 }
14505         }
14506 });
14507
14508 Globalize.addCultureInfo( "zh-HK", "default", {
14509         name: "zh-HK",
14510         englishName: "Chinese (Traditional, Hong Kong S.A.R.)",
14511         nativeName: "中文(香港特別行政區)",
14512         language: "zh-CHT",
14513         numberFormat: {
14514                 NaN: "非數字",
14515                 negativeInfinity: "負無窮大",
14516                 positiveInfinity: "正無窮大",
14517                 percent: {
14518                         pattern: ["-n%","n%"]
14519                 },
14520                 currency: {
14521                         symbol: "HK$"
14522                 }
14523         },
14524         calendars: {
14525                 standard: {
14526                         days: {
14527                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
14528                                 namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"],
14529                                 namesShort: ["日","一","二","三","四","五","六"]
14530                         },
14531                         months: {
14532                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
14533                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
14534                         },
14535                         AM: ["上午","上午","上午"],
14536                         PM: ["下午","下午","下午"],
14537                         eras: [{"name":"公元","start":null,"offset":0}],
14538                         patterns: {
14539                                 d: "d/M/yyyy",
14540                                 D: "yyyy'年'M'月'd'日'",
14541                                 t: "H:mm",
14542                                 T: "H:mm:ss",
14543                                 f: "yyyy'年'M'月'd'日' H:mm",
14544                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
14545                                 M: "M'月'd'日'",
14546                                 Y: "yyyy'年'M'月'"
14547                         }
14548                 }
14549         }
14550 });
14551
14552 Globalize.addCultureInfo( "de-AT", "default", {
14553         name: "de-AT",
14554         englishName: "German (Austria)",
14555         nativeName: "Deutsch (Österreich)",
14556         language: "de",
14557         numberFormat: {
14558                 ",": ".",
14559                 ".": ",",
14560                 NaN: "n. def.",
14561                 negativeInfinity: "-unendlich",
14562                 positiveInfinity: "+unendlich",
14563                 percent: {
14564                         pattern: ["-n%","n%"],
14565                         ",": ".",
14566                         ".": ","
14567                 },
14568                 currency: {
14569                         pattern: ["-$ n","$ n"],
14570                         ",": ".",
14571                         ".": ",",
14572                         symbol: "€"
14573                 }
14574         },
14575         calendars: {
14576                 standard: {
14577                         "/": ".",
14578                         firstDay: 1,
14579                         days: {
14580                                 names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],
14581                                 namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"],
14582                                 namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"]
14583                         },
14584                         months: {
14585                                 names: ["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],
14586                                 namesAbbr: ["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
14587                         },
14588                         AM: null,
14589                         PM: null,
14590                         eras: [{"name":"n. Chr.","start":null,"offset":0}],
14591                         patterns: {
14592                                 d: "dd.MM.yyyy",
14593                                 D: "dddd, dd. MMMM yyyy",
14594                                 t: "HH:mm",
14595                                 T: "HH:mm:ss",
14596                                 f: "dddd, dd. MMMM yyyy HH:mm",
14597                                 F: "dddd, dd. MMMM yyyy HH:mm:ss",
14598                                 M: "dd MMMM",
14599                                 Y: "MMMM yyyy"
14600                         }
14601                 }
14602         }
14603 });
14604
14605 Globalize.addCultureInfo( "en-AU", "default", {
14606         name: "en-AU",
14607         englishName: "English (Australia)",
14608         nativeName: "English (Australia)",
14609         numberFormat: {
14610                 currency: {
14611                         pattern: ["-$n","$n"]
14612                 }
14613         },
14614         calendars: {
14615                 standard: {
14616                         firstDay: 1,
14617                         patterns: {
14618                                 d: "d/MM/yyyy",
14619                                 D: "dddd, d MMMM yyyy",
14620                                 f: "dddd, d MMMM yyyy h:mm tt",
14621                                 F: "dddd, d MMMM yyyy h:mm:ss tt",
14622                                 M: "dd MMMM",
14623                                 Y: "MMMM yyyy"
14624                         }
14625                 }
14626         }
14627 });
14628
14629 Globalize.addCultureInfo( "es-ES", "default", {
14630         name: "es-ES",
14631         englishName: "Spanish (Spain, International Sort)",
14632         nativeName: "Español (España, alfabetización internacional)",
14633         language: "es",
14634         numberFormat: {
14635                 ",": ".",
14636                 ".": ",",
14637                 NaN: "NeuN",
14638                 negativeInfinity: "-Infinito",
14639                 positiveInfinity: "Infinito",
14640                 percent: {
14641                         ",": ".",
14642                         ".": ","
14643                 },
14644                 currency: {
14645                         pattern: ["-n $","n $"],
14646                         ",": ".",
14647                         ".": ",",
14648                         symbol: "€"
14649                 }
14650         },
14651         calendars: {
14652                 standard: {
14653                         firstDay: 1,
14654                         days: {
14655                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
14656                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
14657                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
14658                         },
14659                         months: {
14660                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
14661                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
14662                         },
14663                         AM: null,
14664                         PM: null,
14665                         eras: [{"name":"d.C.","start":null,"offset":0}],
14666                         patterns: {
14667                                 d: "dd/MM/yyyy",
14668                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
14669                                 t: "H:mm",
14670                                 T: "H:mm:ss",
14671                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
14672                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
14673                                 M: "dd MMMM",
14674                                 Y: "MMMM' de 'yyyy"
14675                         }
14676                 }
14677         }
14678 });
14679
14680 Globalize.addCultureInfo( "fr-CA", "default", {
14681         name: "fr-CA",
14682         englishName: "French (Canada)",
14683         nativeName: "français (Canada)",
14684         language: "fr",
14685         numberFormat: {
14686                 ",": " ",
14687                 ".": ",",
14688                 NaN: "Non Numérique",
14689                 negativeInfinity: "-Infini",
14690                 positiveInfinity: "+Infini",
14691                 percent: {
14692                         ",": " ",
14693                         ".": ","
14694                 },
14695                 currency: {
14696                         pattern: ["(n $)","n $"],
14697                         ",": " ",
14698                         ".": ","
14699                 }
14700         },
14701         calendars: {
14702                 standard: {
14703                         "/": "-",
14704                         days: {
14705                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
14706                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
14707                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
14708                         },
14709                         months: {
14710                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
14711                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
14712                         },
14713                         AM: null,
14714                         PM: null,
14715                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
14716                         patterns: {
14717                                 d: "yyyy-MM-dd",
14718                                 D: "d MMMM yyyy",
14719                                 t: "HH:mm",
14720                                 T: "HH:mm:ss",
14721                                 f: "d MMMM yyyy HH:mm",
14722                                 F: "d MMMM yyyy HH:mm:ss",
14723                                 M: "d MMMM"
14724                         }
14725                 }
14726         }
14727 });
14728
14729 Globalize.addCultureInfo( "sr-Cyrl-CS", "default", {
14730         name: "sr-Cyrl-CS",
14731         englishName: "Serbian (Cyrillic, Serbia and Montenegro (Former))",
14732         nativeName: "српски (Србија и Црна Гора (Претходно))",
14733         language: "sr-Cyrl",
14734         numberFormat: {
14735                 ",": ".",
14736                 ".": ",",
14737                 negativeInfinity: "-бесконачност",
14738                 positiveInfinity: "+бесконачност",
14739                 percent: {
14740                         pattern: ["-n%","n%"],
14741                         ",": ".",
14742                         ".": ","
14743                 },
14744                 currency: {
14745                         pattern: ["-n $","n $"],
14746                         ",": ".",
14747                         ".": ",",
14748                         symbol: "Дин."
14749                 }
14750         },
14751         calendars: {
14752                 standard: {
14753                         "/": ".",
14754                         firstDay: 1,
14755                         days: {
14756                                 names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"],
14757                                 namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"],
14758                                 namesShort: ["не","по","ут","ср","че","пе","су"]
14759                         },
14760                         months: {
14761                                 names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""],
14762                                 namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""]
14763                         },
14764                         AM: null,
14765                         PM: null,
14766                         eras: [{"name":"н.е.","start":null,"offset":0}],
14767                         patterns: {
14768                                 d: "d.M.yyyy",
14769                                 D: "d. MMMM yyyy",
14770                                 t: "H:mm",
14771                                 T: "H:mm:ss",
14772                                 f: "d. MMMM yyyy H:mm",
14773                                 F: "d. MMMM yyyy H:mm:ss",
14774                                 M: "d. MMMM",
14775                                 Y: "MMMM yyyy"
14776                         }
14777                 }
14778         }
14779 });
14780
14781 Globalize.addCultureInfo( "se-FI", "default", {
14782         name: "se-FI",
14783         englishName: "Sami, Northern (Finland)",
14784         nativeName: "davvisámegiella (Suopma)",
14785         language: "se",
14786         numberFormat: {
14787                 ",": " ",
14788                 ".": ",",
14789                 percent: {
14790                         ",": " ",
14791                         ".": ","
14792                 },
14793                 currency: {
14794                         pattern: ["-n $","n $"],
14795                         ",": " ",
14796                         ".": ",",
14797                         symbol: "€"
14798                 }
14799         },
14800         calendars: {
14801                 standard: {
14802                         "/": ".",
14803                         firstDay: 1,
14804                         days: {
14805                                 names: ["sotnabeaivi","vuossárga","maŋŋebárga","gaskavahkku","duorastat","bearjadat","lávvardat"],
14806                                 namesAbbr: ["sotn","vuos","maŋ","gask","duor","bear","láv"],
14807                                 namesShort: ["s","m","d","g","d","b","l"]
14808                         },
14809                         months: {
14810                                 names: ["ođđajagemánnu","guovvamánnu","njukčamánnu","cuoŋománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","čakčamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""],
14811                                 namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""]
14812                         },
14813                         monthsGenitive: {
14814                                 names: ["ođđajagimánu","guovvamánu","njukčamánu","cuoŋománu","miessemánu","geassemánu","suoidnemánu","borgemánu","čakčamánu","golggotmánu","skábmamánu","juovlamánu",""],
14815                                 namesAbbr: ["ođđj","guov","njuk","cuo","mies","geas","suoi","borg","čakč","golg","skáb","juov",""]
14816                         },
14817                         AM: null,
14818                         PM: null,
14819                         patterns: {
14820                                 d: "d.M.yyyy",
14821                                 D: "MMMM d'. b. 'yyyy",
14822                                 t: "H:mm",
14823                                 T: "H:mm:ss",
14824                                 f: "MMMM d'. b. 'yyyy H:mm",
14825                                 F: "MMMM d'. b. 'yyyy H:mm:ss",
14826                                 M: "MMMM d'. b. '",
14827                                 Y: "MMMM yyyy"
14828                         }
14829                 }
14830         }
14831 });
14832
14833 Globalize.addCultureInfo( "quz-PE", "default", {
14834         name: "quz-PE",
14835         englishName: "Quechua (Peru)",
14836         nativeName: "runasimi (Piruw)",
14837         language: "quz",
14838         numberFormat: {
14839                 percent: {
14840                         pattern: ["-%n","%n"]
14841                 },
14842                 currency: {
14843                         pattern: ["$ -n","$ n"],
14844                         symbol: "S/."
14845                 }
14846         },
14847         calendars: {
14848                 standard: {
14849                         days: {
14850                                 names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"],
14851                                 namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"],
14852                                 namesShort: ["d","k","a","m","h","b","k"]
14853                         },
14854                         months: {
14855                                 names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""],
14856                                 namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""]
14857                         },
14858                         AM: ["a.m.","a.m.","A.M."],
14859                         PM: ["p.m.","p.m.","P.M."],
14860                         patterns: {
14861                                 d: "dd/MM/yyyy",
14862                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
14863                                 t: "hh:mm tt",
14864                                 T: "hh:mm:ss tt",
14865                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
14866                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
14867                                 Y: "MMMM' de 'yyyy"
14868                         }
14869                 }
14870         }
14871 });
14872
14873 Globalize.addCultureInfo( "ar-LY", "default", {
14874         name: "ar-LY",
14875         englishName: "Arabic (Libya)",
14876         nativeName: "العربية (ليبيا)",
14877         language: "ar",
14878         isRTL: true,
14879         numberFormat: {
14880                 pattern: ["n-"],
14881                 decimals: 3,
14882                 NaN: "ليس برقم",
14883                 negativeInfinity: "-لا نهاية",
14884                 positiveInfinity: "+لا نهاية",
14885                 percent: {
14886                         decimals: 3
14887                 },
14888                 currency: {
14889                         pattern: ["$n-","$n"],
14890                         decimals: 3,
14891                         symbol: "د.ل.‏"
14892                 }
14893         },
14894         calendars: {
14895                 standard: {
14896                         firstDay: 6,
14897                         days: {
14898                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14899                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14900                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
14901                         },
14902                         months: {
14903                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
14904                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
14905                         },
14906                         AM: ["ص","ص","ص"],
14907                         PM: ["م","م","م"],
14908                         patterns: {
14909                                 d: "dd/MM/yyyy",
14910                                 D: "dd MMMM, yyyy",
14911                                 t: "hh:mm tt",
14912                                 T: "hh:mm:ss tt",
14913                                 f: "dd MMMM, yyyy hh:mm tt",
14914                                 F: "dd MMMM, yyyy hh:mm:ss tt",
14915                                 M: "dd MMMM"
14916                         }
14917                 },
14918                 Hijri: {
14919                         name: "Hijri",
14920                         firstDay: 6,
14921                         days: {
14922                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14923                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
14924                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
14925                         },
14926                         months: {
14927                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
14928                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
14929                         },
14930                         AM: ["ص","ص","ص"],
14931                         PM: ["م","م","م"],
14932                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
14933                         twoDigitYearMax: 1451,
14934                         patterns: {
14935                                 d: "dd/MM/yy",
14936                                 D: "dd/MM/yyyy",
14937                                 t: "hh:mm tt",
14938                                 T: "hh:mm:ss tt",
14939                                 f: "dd/MM/yyyy hh:mm tt",
14940                                 F: "dd/MM/yyyy hh:mm:ss tt",
14941                                 M: "dd MMMM"
14942                         },
14943                         convert: {
14944                     // Adapted to Script from System.Globalization.HijriCalendar
14945                     ticks1970: 62135596800000,
14946                     // number of days leading up to each month
14947                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
14948                     minDate: -42521673600000,
14949                     maxDate: 253402300799999,
14950                     // The number of days to add or subtract from the calendar to accommodate the variances
14951                     // in the start and the end of Ramadan and to accommodate the date difference between
14952                     // countries/regions. May be dynamically adjusted based on user preference, but should
14953                     // remain in the range of -2 to 2, inclusive.
14954                     hijriAdjustment: 0,
14955                     toGregorian: function(hyear, hmonth, hday) {
14956                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
14957                         // 86400000 = ticks per day
14958                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
14959                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
14960                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
14961                         // date in the current timezone.
14962                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
14963                         return gdate;
14964                     },
14965                     fromGregorian: function(gdate) {
14966                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
14967                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
14968                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
14969                         // very particular formula determined by someone smart, adapted from the server-side implementation.
14970                         // it approximates the hijri year.
14971                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
14972                             absDays = this.daysToYear(hyear),
14973                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
14974                         // hyear is just approximate, it may need adjustment up or down by 1.
14975                         if (daysSinceJan0101 < absDays) {
14976                             hyear--;
14977                             absDays -= daysInYear;
14978                         }
14979                         else if (daysSinceJan0101 === absDays) {
14980                             hyear--;
14981                             absDays = this.daysToYear(hyear);
14982                         }
14983                         else {
14984                             if (daysSinceJan0101 > (absDays + daysInYear)) {
14985                                 absDays += daysInYear;
14986                                 hyear++;
14987                             }
14988                         }
14989                         // determine month by looking at how many days into the hyear we are
14990                         // monthDays contains the number of days up to each month.
14991                         hmonth = 0;
14992                         var daysIntoYear = daysSinceJan0101 - absDays;
14993                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
14994                             hmonth++;
14995                         }
14996                         hmonth--;
14997                         hday = daysIntoYear - this.monthDays[hmonth];
14998                         return [hyear, hmonth, hday];
14999                     },
15000                     daysToYear: function(year) {
15001                         // calculates how many days since Jan 1, 0001
15002                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
15003                             yearsInto30 = year - yearsToYear30 - 1,
15004                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
15005                         while (yearsInto30 > 0) {
15006                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
15007                             yearsInto30--;
15008                         }
15009                         return days;
15010                     },
15011                     isLeapYear: function(year) {
15012                         return ((((year * 11) + 14) % 30) < 11);
15013                     }
15014                         }
15015                 },
15016                 UmAlQura: {
15017                         name: "UmAlQura",
15018                         firstDay: 6,
15019                         days: {
15020                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15021                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15022                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
15023                         },
15024                         months: {
15025                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
15026                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
15027                         },
15028                         AM: ["ص","ص","ص"],
15029                         PM: ["م","م","م"],
15030                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
15031                         twoDigitYearMax: 1451,
15032                         patterns: {
15033                                 d: "dd/MM/yy",
15034                                 D: "dd/MMMM/yyyy",
15035                                 t: "hh:mm tt",
15036                                 T: "hh:mm:ss tt",
15037                                 f: "dd/MMMM/yyyy hh:mm tt",
15038                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
15039                                 M: "dd MMMM"
15040                         },
15041                         convert: {
15042                     _yearInfo: [
15043                         // MonthLengthFlags, Gregorian Date
15044                         [746, -2198707200000],
15045                         [1769, -2168121600000],
15046                         [3794, -2137449600000],
15047                         [3748, -2106777600000],
15048                         [3402, -2076192000000],
15049                         [2710, -2045606400000],
15050                         [1334, -2015020800000],
15051                         [2741, -1984435200000],
15052                         [3498, -1953763200000],
15053                         [2980, -1923091200000],
15054                         [2889, -1892505600000],
15055                         [2707, -1861920000000],
15056                         [1323, -1831334400000],
15057                         [2647, -1800748800000],
15058                         [1206, -1770076800000],
15059                         [2741, -1739491200000],
15060                         [1450, -1708819200000],
15061                         [3413, -1678233600000],
15062                         [3370, -1647561600000],
15063                         [2646, -1616976000000],
15064                         [1198, -1586390400000],
15065                         [2397, -1555804800000],
15066                         [748, -1525132800000],
15067                         [1749, -1494547200000],
15068                         [1706, -1463875200000],
15069                         [1365, -1433289600000],
15070                         [1195, -1402704000000],
15071                         [2395, -1372118400000],
15072                         [698, -1341446400000],
15073                         [1397, -1310860800000],
15074                         [2994, -1280188800000],
15075                         [1892, -1249516800000],
15076                         [1865, -1218931200000],
15077                         [1621, -1188345600000],
15078                         [683, -1157760000000],
15079                         [1371, -1127174400000],
15080                         [2778, -1096502400000],
15081                         [1748, -1065830400000],
15082                         [3785, -1035244800000],
15083                         [3474, -1004572800000],
15084                         [3365, -973987200000],
15085                         [2637, -943401600000],
15086                         [685, -912816000000],
15087                         [1389, -882230400000],
15088                         [2922, -851558400000],
15089                         [2898, -820886400000],
15090                         [2725, -790300800000],
15091                         [2635, -759715200000],
15092                         [1175, -729129600000],
15093                         [2359, -698544000000],
15094                         [694, -667872000000],
15095                         [1397, -637286400000],
15096                         [3434, -606614400000],
15097                         [3410, -575942400000],
15098                         [2710, -545356800000],
15099                         [2349, -514771200000],
15100                         [605, -484185600000],
15101                         [1245, -453600000000],
15102                         [2778, -422928000000],
15103                         [1492, -392256000000],
15104                         [3497, -361670400000],
15105                         [3410, -330998400000],
15106                         [2730, -300412800000],
15107                         [1238, -269827200000],
15108                         [2486, -239241600000],
15109                         [884, -208569600000],
15110                         [1897, -177984000000],
15111                         [1874, -147312000000],
15112                         [1701, -116726400000],
15113                         [1355, -86140800000],
15114                         [2731, -55555200000],
15115                         [1370, -24883200000],
15116                         [2773, 5702400000],
15117                         [3538, 36374400000],
15118                         [3492, 67046400000],
15119                         [3401, 97632000000],
15120                         [2709, 128217600000],
15121                         [1325, 158803200000],
15122                         [2653, 189388800000],
15123                         [1370, 220060800000],
15124                         [2773, 250646400000],
15125                         [1706, 281318400000],
15126                         [1685, 311904000000],
15127                         [1323, 342489600000],
15128                         [2647, 373075200000],
15129                         [1198, 403747200000],
15130                         [2422, 434332800000],
15131                         [1388, 465004800000],
15132                         [2901, 495590400000],
15133                         [2730, 526262400000],
15134                         [2645, 556848000000],
15135                         [1197, 587433600000],
15136                         [2397, 618019200000],
15137                         [730, 648691200000],
15138                         [1497, 679276800000],
15139                         [3506, 709948800000],
15140                         [2980, 740620800000],
15141                         [2890, 771206400000],
15142                         [2645, 801792000000],
15143                         [693, 832377600000],
15144                         [1397, 862963200000],
15145                         [2922, 893635200000],
15146                         [3026, 924307200000],
15147                         [3012, 954979200000],
15148                         [2953, 985564800000],
15149                         [2709, 1016150400000],
15150                         [1325, 1046736000000],
15151                         [1453, 1077321600000],
15152                         [2922, 1107993600000],
15153                         [1748, 1138665600000],
15154                         [3529, 1169251200000],
15155                         [3474, 1199923200000],
15156                         [2726, 1230508800000],
15157                         [2390, 1261094400000],
15158                         [686, 1291680000000],
15159                         [1389, 1322265600000],
15160                         [874, 1352937600000],
15161                         [2901, 1383523200000],
15162                         [2730, 1414195200000],
15163                         [2381, 1444780800000],
15164                         [1181, 1475366400000],
15165                         [2397, 1505952000000],
15166                         [698, 1536624000000],
15167                         [1461, 1567209600000],
15168                         [1450, 1597881600000],
15169                         [3413, 1628467200000],
15170                         [2714, 1659139200000],
15171                         [2350, 1689724800000],
15172                         [622, 1720310400000],
15173                         [1373, 1750896000000],
15174                         [2778, 1781568000000],
15175                         [1748, 1812240000000],
15176                         [1701, 1842825600000],
15177                         [0, 1873411200000]
15178                     ],
15179                     minDate: -2198707200000,
15180                     maxDate: 1873411199999,
15181                     toGregorian: function(hyear, hmonth, hday) {
15182                         var days = hday - 1,
15183                             gyear = hyear - 1318;
15184                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
15185                         var info = this._yearInfo[gyear],
15186                             gdate = new Date(info[1]),
15187                             monthLength = info[0];
15188                         // Date's ticks in javascript are always from the GMT time,
15189                         // but we are interested in the gregorian date in the same timezone,
15190                         // not what the gregorian date was at GMT time, so we adjust for the offset.
15191                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
15192                         for (var i = 0; i < hmonth; i++) {
15193                             days += 29 + (monthLength & 1);
15194                             monthLength = monthLength >> 1;
15195                         }
15196                         gdate.setDate(gdate.getDate() + days);
15197                         return gdate;
15198                     },
15199                     fromGregorian: function(gdate) {
15200                         // Date's ticks in javascript are always from the GMT time,
15201                         // but we are interested in the hijri date in the same timezone,
15202                         // not what the hijri date was at GMT time, so we adjust for the offset.
15203                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
15204                         if (ticks < this.minDate || ticks > this.maxDate) return null;
15205                         var hyear = 0,
15206                             hmonth = 1;
15207                         // find the earliest gregorian date in the array that is greater than or equal to the given date
15208                         while (ticks > this._yearInfo[++hyear][1]) { }
15209                         if (ticks !== this._yearInfo[hyear][1]) {
15210                             hyear--;
15211                         }
15212                         var info = this._yearInfo[hyear],
15213                             // how many days has it been since the date we found in the array?
15214                             // 86400000 = ticks per day
15215                             days = Math.floor((ticks - info[1]) / 86400000),
15216                             monthLength = info[0];
15217                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
15218                         // now increment day/month based on the total days, considering
15219                         // how many days are in each month. We cannot run past the year
15220                         // mark since we would have found a different array entry in that case.
15221                         var daysInMonth = 29 + (monthLength & 1);
15222                         while (days >= daysInMonth) {
15223                             days -= daysInMonth;
15224                             monthLength = monthLength >> 1;
15225                             daysInMonth = 29 + (monthLength & 1);
15226                             hmonth++;
15227                         }
15228                         // remaining days is less than is in one month, thus is the day of the month we landed on
15229                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
15230                         return [hyear, hmonth - 1, days + 1];
15231                     }
15232                         }
15233                 },
15234                 Gregorian_MiddleEastFrench: {
15235                         name: "Gregorian_MiddleEastFrench",
15236                         firstDay: 6,
15237                         days: {
15238                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
15239                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
15240                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
15241                         },
15242                         months: {
15243                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
15244                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
15245                         },
15246                         AM: ["ص","ص","ص"],
15247                         PM: ["م","م","م"],
15248                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
15249                         patterns: {
15250                                 d: "MM/dd/yyyy",
15251                                 t: "hh:mm tt",
15252                                 T: "hh:mm:ss tt",
15253                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
15254                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
15255                                 M: "dd MMMM"
15256                         }
15257                 },
15258                 Gregorian_Arabic: {
15259                         name: "Gregorian_Arabic",
15260                         firstDay: 6,
15261                         days: {
15262                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15263                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15264                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
15265                         },
15266                         months: {
15267                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
15268                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
15269                         },
15270                         AM: ["ص","ص","ص"],
15271                         PM: ["م","م","م"],
15272                         eras: [{"name":"م","start":null,"offset":0}],
15273                         patterns: {
15274                                 d: "MM/dd/yyyy",
15275                                 t: "hh:mm tt",
15276                                 T: "hh:mm:ss tt",
15277                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
15278                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
15279                         }
15280                 },
15281                 Gregorian_TransliteratedFrench: {
15282                         name: "Gregorian_TransliteratedFrench",
15283                         firstDay: 6,
15284                         days: {
15285                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15286                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15287                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
15288                         },
15289                         months: {
15290                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
15291                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
15292                         },
15293                         AM: ["ص","ص","ص"],
15294                         PM: ["م","م","م"],
15295                         eras: [{"name":"م","start":null,"offset":0}],
15296                         patterns: {
15297                                 d: "MM/dd/yyyy",
15298                                 t: "hh:mm tt",
15299                                 T: "hh:mm:ss tt",
15300                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
15301                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
15302                         }
15303                 }
15304         }
15305 });
15306
15307 Globalize.addCultureInfo( "zh-SG", "default", {
15308         name: "zh-SG",
15309         englishName: "Chinese (Simplified, Singapore)",
15310         nativeName: "中文(新加坡)",
15311         language: "zh-CHS",
15312         numberFormat: {
15313                 percent: {
15314                         pattern: ["-n%","n%"]
15315                 }
15316         },
15317         calendars: {
15318                 standard: {
15319                         days: {
15320                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
15321                                 namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"],
15322                                 namesShort: ["日","一","二","三","四","五","六"]
15323                         },
15324                         months: {
15325                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
15326                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
15327                         },
15328                         patterns: {
15329                                 d: "d/M/yyyy",
15330                                 D: "yyyy'年'M'月'd'日'",
15331                                 t: "tt h:mm",
15332                                 T: "tt h:mm:ss",
15333                                 f: "yyyy'年'M'月'd'日' tt h:mm",
15334                                 F: "yyyy'年'M'月'd'日' tt h:mm:ss",
15335                                 M: "M'月'd'日'",
15336                                 Y: "yyyy'年'M'月'"
15337                         }
15338                 }
15339         }
15340 });
15341
15342 Globalize.addCultureInfo( "de-LU", "default", {
15343         name: "de-LU",
15344         englishName: "German (Luxembourg)",
15345         nativeName: "Deutsch (Luxemburg)",
15346         language: "de",
15347         numberFormat: {
15348                 ",": ".",
15349                 ".": ",",
15350                 NaN: "n. def.",
15351                 negativeInfinity: "-unendlich",
15352                 positiveInfinity: "+unendlich",
15353                 percent: {
15354                         pattern: ["-n%","n%"],
15355                         ",": ".",
15356                         ".": ","
15357                 },
15358                 currency: {
15359                         pattern: ["-n $","n $"],
15360                         ",": ".",
15361                         ".": ",",
15362                         symbol: "€"
15363                 }
15364         },
15365         calendars: {
15366                 standard: {
15367                         "/": ".",
15368                         firstDay: 1,
15369                         days: {
15370                                 names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],
15371                                 namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"],
15372                                 namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"]
15373                         },
15374                         months: {
15375                                 names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],
15376                                 namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
15377                         },
15378                         AM: null,
15379                         PM: null,
15380                         eras: [{"name":"n. Chr.","start":null,"offset":0}],
15381                         patterns: {
15382                                 d: "dd.MM.yyyy",
15383                                 D: "dddd, d. MMMM yyyy",
15384                                 t: "HH:mm",
15385                                 T: "HH:mm:ss",
15386                                 f: "dddd, d. MMMM yyyy HH:mm",
15387                                 F: "dddd, d. MMMM yyyy HH:mm:ss",
15388                                 M: "dd MMMM",
15389                                 Y: "MMMM yyyy"
15390                         }
15391                 }
15392         }
15393 });
15394
15395 Globalize.addCultureInfo( "en-CA", "default", {
15396         name: "en-CA",
15397         englishName: "English (Canada)",
15398         nativeName: "English (Canada)",
15399         numberFormat: {
15400                 currency: {
15401                         pattern: ["-$n","$n"]
15402                 }
15403         },
15404         calendars: {
15405                 standard: {
15406                         patterns: {
15407                                 d: "dd/MM/yyyy",
15408                                 D: "MMMM-dd-yy",
15409                                 f: "MMMM-dd-yy h:mm tt",
15410                                 F: "MMMM-dd-yy h:mm:ss tt"
15411                         }
15412                 }
15413         }
15414 });
15415
15416 Globalize.addCultureInfo( "es-GT", "default", {
15417         name: "es-GT",
15418         englishName: "Spanish (Guatemala)",
15419         nativeName: "Español (Guatemala)",
15420         language: "es",
15421         numberFormat: {
15422                 NaN: "NeuN",
15423                 negativeInfinity: "-Infinito",
15424                 positiveInfinity: "Infinito",
15425                 currency: {
15426                         symbol: "Q"
15427                 }
15428         },
15429         calendars: {
15430                 standard: {
15431                         days: {
15432                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
15433                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
15434                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
15435                         },
15436                         months: {
15437                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
15438                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
15439                         },
15440                         AM: ["a.m.","a.m.","A.M."],
15441                         PM: ["p.m.","p.m.","P.M."],
15442                         eras: [{"name":"d.C.","start":null,"offset":0}],
15443                         patterns: {
15444                                 d: "dd/MM/yyyy",
15445                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
15446                                 t: "hh:mm tt",
15447                                 T: "hh:mm:ss tt",
15448                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
15449                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
15450                                 M: "dd MMMM",
15451                                 Y: "MMMM' de 'yyyy"
15452                         }
15453                 }
15454         }
15455 });
15456
15457 Globalize.addCultureInfo( "fr-CH", "default", {
15458         name: "fr-CH",
15459         englishName: "French (Switzerland)",
15460         nativeName: "français (Suisse)",
15461         language: "fr",
15462         numberFormat: {
15463                 ",": "'",
15464                 NaN: "Non Numérique",
15465                 negativeInfinity: "-Infini",
15466                 positiveInfinity: "+Infini",
15467                 percent: {
15468                         ",": "'"
15469                 },
15470                 currency: {
15471                         pattern: ["$-n","$ n"],
15472                         ",": "'",
15473                         symbol: "fr."
15474                 }
15475         },
15476         calendars: {
15477                 standard: {
15478                         "/": ".",
15479                         firstDay: 1,
15480                         days: {
15481                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
15482                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
15483                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
15484                         },
15485                         months: {
15486                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
15487                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
15488                         },
15489                         AM: null,
15490                         PM: null,
15491                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
15492                         patterns: {
15493                                 d: "dd.MM.yyyy",
15494                                 D: "dddd d MMMM yyyy",
15495                                 t: "HH:mm",
15496                                 T: "HH:mm:ss",
15497                                 f: "dddd d MMMM yyyy HH:mm",
15498                                 F: "dddd d MMMM yyyy HH:mm:ss",
15499                                 M: "d MMMM",
15500                                 Y: "MMMM yyyy"
15501                         }
15502                 }
15503         }
15504 });
15505
15506 Globalize.addCultureInfo( "hr-BA", "default", {
15507         name: "hr-BA",
15508         englishName: "Croatian (Latin, Bosnia and Herzegovina)",
15509         nativeName: "hrvatski (Bosna i Hercegovina)",
15510         language: "hr",
15511         numberFormat: {
15512                 pattern: ["- n"],
15513                 ",": ".",
15514                 ".": ",",
15515                 percent: {
15516                         ",": ".",
15517                         ".": ","
15518                 },
15519                 currency: {
15520                         pattern: ["-n $","n $"],
15521                         ",": ".",
15522                         ".": ",",
15523                         symbol: "KM"
15524                 }
15525         },
15526         calendars: {
15527                 standard: {
15528                         "/": ".",
15529                         firstDay: 1,
15530                         days: {
15531                                 names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],
15532                                 namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"],
15533                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
15534                         },
15535                         months: {
15536                                 names: ["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""],
15537                                 namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""]
15538                         },
15539                         monthsGenitive: {
15540                                 names: ["siječnja","veljače","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""],
15541                                 namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""]
15542                         },
15543                         AM: null,
15544                         PM: null,
15545                         patterns: {
15546                                 d: "d.M.yyyy.",
15547                                 D: "d. MMMM yyyy.",
15548                                 t: "H:mm",
15549                                 T: "H:mm:ss",
15550                                 f: "d. MMMM yyyy. H:mm",
15551                                 F: "d. MMMM yyyy. H:mm:ss",
15552                                 M: "d. MMMM"
15553                         }
15554                 }
15555         }
15556 });
15557
15558 Globalize.addCultureInfo( "smj-NO", "default", {
15559         name: "smj-NO",
15560         englishName: "Sami, Lule (Norway)",
15561         nativeName: "julevusámegiella (Vuodna)",
15562         language: "smj",
15563         numberFormat: {
15564                 ",": " ",
15565                 ".": ",",
15566                 percent: {
15567                         pattern: ["-%n","%n"],
15568                         ",": " ",
15569                         ".": ","
15570                 },
15571                 currency: {
15572                         pattern: ["$ -n","$ n"],
15573                         ",": " ",
15574                         ".": ",",
15575                         symbol: "kr"
15576                 }
15577         },
15578         calendars: {
15579                 standard: {
15580                         "/": ".",
15581                         firstDay: 1,
15582                         days: {
15583                                 names: ["sådnåbiejvve","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"],
15584                                 namesAbbr: ["såd","mán","dis","gas","duor","bier","láv"],
15585                                 namesShort: ["s","m","d","g","d","b","l"]
15586                         },
15587                         months: {
15588                                 names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""],
15589                                 namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""]
15590                         },
15591                         monthsGenitive: {
15592                                 names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""],
15593                                 namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""]
15594                         },
15595                         AM: null,
15596                         PM: null,
15597                         patterns: {
15598                                 d: "dd.MM.yyyy",
15599                                 D: "MMMM d'. b. 'yyyy",
15600                                 t: "HH:mm",
15601                                 T: "HH:mm:ss",
15602                                 f: "MMMM d'. b. 'yyyy HH:mm",
15603                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
15604                                 M: "MMMM d'. b. '",
15605                                 Y: "MMMM yyyy"
15606                         }
15607                 }
15608         }
15609 });
15610
15611 Globalize.addCultureInfo( "ar-DZ", "default", {
15612         name: "ar-DZ",
15613         englishName: "Arabic (Algeria)",
15614         nativeName: "العربية (الجزائر)",
15615         language: "ar",
15616         isRTL: true,
15617         numberFormat: {
15618                 pattern: ["n-"],
15619                 NaN: "ليس برقم",
15620                 negativeInfinity: "-لا نهاية",
15621                 positiveInfinity: "+لا نهاية",
15622                 currency: {
15623                         pattern: ["$n-","$ n"],
15624                         symbol: "د.ج.‏"
15625                 }
15626         },
15627         calendars: {
15628                 standard: {
15629                         "/": "-",
15630                         firstDay: 6,
15631                         days: {
15632                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15633                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15634                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
15635                         },
15636                         months: {
15637                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
15638                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
15639                         },
15640                         AM: ["ص","ص","ص"],
15641                         PM: ["م","م","م"],
15642                         patterns: {
15643                                 d: "dd-MM-yyyy",
15644                                 D: "dd MMMM, yyyy",
15645                                 t: "H:mm",
15646                                 T: "H:mm:ss",
15647                                 f: "dd MMMM, yyyy H:mm",
15648                                 F: "dd MMMM, yyyy H:mm:ss",
15649                                 M: "dd MMMM"
15650                         }
15651                 },
15652                 Hijri: {
15653                         name: "Hijri",
15654                         firstDay: 6,
15655                         days: {
15656                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15657                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15658                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
15659                         },
15660                         months: {
15661                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
15662                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
15663                         },
15664                         AM: ["ص","ص","ص"],
15665                         PM: ["م","م","م"],
15666                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
15667                         twoDigitYearMax: 1451,
15668                         patterns: {
15669                                 d: "dd/MM/yy",
15670                                 D: "dd/MM/yyyy",
15671                                 t: "H:mm",
15672                                 T: "H:mm:ss",
15673                                 f: "dd/MM/yyyy H:mm",
15674                                 F: "dd/MM/yyyy H:mm:ss",
15675                                 M: "dd MMMM"
15676                         },
15677                         convert: {
15678                     // Adapted to Script from System.Globalization.HijriCalendar
15679                     ticks1970: 62135596800000,
15680                     // number of days leading up to each month
15681                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
15682                     minDate: -42521673600000,
15683                     maxDate: 253402300799999,
15684                     // The number of days to add or subtract from the calendar to accommodate the variances
15685                     // in the start and the end of Ramadan and to accommodate the date difference between
15686                     // countries/regions. May be dynamically adjusted based on user preference, but should
15687                     // remain in the range of -2 to 2, inclusive.
15688                     hijriAdjustment: 0,
15689                     toGregorian: function(hyear, hmonth, hday) {
15690                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
15691                         // 86400000 = ticks per day
15692                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
15693                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
15694                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
15695                         // date in the current timezone.
15696                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
15697                         return gdate;
15698                     },
15699                     fromGregorian: function(gdate) {
15700                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
15701                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
15702                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
15703                         // very particular formula determined by someone smart, adapted from the server-side implementation.
15704                         // it approximates the hijri year.
15705                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
15706                             absDays = this.daysToYear(hyear),
15707                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
15708                         // hyear is just approximate, it may need adjustment up or down by 1.
15709                         if (daysSinceJan0101 < absDays) {
15710                             hyear--;
15711                             absDays -= daysInYear;
15712                         }
15713                         else if (daysSinceJan0101 === absDays) {
15714                             hyear--;
15715                             absDays = this.daysToYear(hyear);
15716                         }
15717                         else {
15718                             if (daysSinceJan0101 > (absDays + daysInYear)) {
15719                                 absDays += daysInYear;
15720                                 hyear++;
15721                             }
15722                         }
15723                         // determine month by looking at how many days into the hyear we are
15724                         // monthDays contains the number of days up to each month.
15725                         hmonth = 0;
15726                         var daysIntoYear = daysSinceJan0101 - absDays;
15727                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
15728                             hmonth++;
15729                         }
15730                         hmonth--;
15731                         hday = daysIntoYear - this.monthDays[hmonth];
15732                         return [hyear, hmonth, hday];
15733                     },
15734                     daysToYear: function(year) {
15735                         // calculates how many days since Jan 1, 0001
15736                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
15737                             yearsInto30 = year - yearsToYear30 - 1,
15738                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
15739                         while (yearsInto30 > 0) {
15740                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
15741                             yearsInto30--;
15742                         }
15743                         return days;
15744                     },
15745                     isLeapYear: function(year) {
15746                         return ((((year * 11) + 14) % 30) < 11);
15747                     }
15748                         }
15749                 },
15750                 UmAlQura: {
15751                         name: "UmAlQura",
15752                         firstDay: 6,
15753                         days: {
15754                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15755                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15756                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
15757                         },
15758                         months: {
15759                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
15760                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
15761                         },
15762                         AM: ["ص","ص","ص"],
15763                         PM: ["م","م","م"],
15764                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
15765                         twoDigitYearMax: 1451,
15766                         patterns: {
15767                                 d: "dd/MM/yy",
15768                                 D: "dd/MMMM/yyyy",
15769                                 t: "H:mm",
15770                                 T: "H:mm:ss",
15771                                 f: "dd/MMMM/yyyy H:mm",
15772                                 F: "dd/MMMM/yyyy H:mm:ss",
15773                                 M: "dd MMMM"
15774                         },
15775                         convert: {
15776                     _yearInfo: [
15777                         // MonthLengthFlags, Gregorian Date
15778                         [746, -2198707200000],
15779                         [1769, -2168121600000],
15780                         [3794, -2137449600000],
15781                         [3748, -2106777600000],
15782                         [3402, -2076192000000],
15783                         [2710, -2045606400000],
15784                         [1334, -2015020800000],
15785                         [2741, -1984435200000],
15786                         [3498, -1953763200000],
15787                         [2980, -1923091200000],
15788                         [2889, -1892505600000],
15789                         [2707, -1861920000000],
15790                         [1323, -1831334400000],
15791                         [2647, -1800748800000],
15792                         [1206, -1770076800000],
15793                         [2741, -1739491200000],
15794                         [1450, -1708819200000],
15795                         [3413, -1678233600000],
15796                         [3370, -1647561600000],
15797                         [2646, -1616976000000],
15798                         [1198, -1586390400000],
15799                         [2397, -1555804800000],
15800                         [748, -1525132800000],
15801                         [1749, -1494547200000],
15802                         [1706, -1463875200000],
15803                         [1365, -1433289600000],
15804                         [1195, -1402704000000],
15805                         [2395, -1372118400000],
15806                         [698, -1341446400000],
15807                         [1397, -1310860800000],
15808                         [2994, -1280188800000],
15809                         [1892, -1249516800000],
15810                         [1865, -1218931200000],
15811                         [1621, -1188345600000],
15812                         [683, -1157760000000],
15813                         [1371, -1127174400000],
15814                         [2778, -1096502400000],
15815                         [1748, -1065830400000],
15816                         [3785, -1035244800000],
15817                         [3474, -1004572800000],
15818                         [3365, -973987200000],
15819                         [2637, -943401600000],
15820                         [685, -912816000000],
15821                         [1389, -882230400000],
15822                         [2922, -851558400000],
15823                         [2898, -820886400000],
15824                         [2725, -790300800000],
15825                         [2635, -759715200000],
15826                         [1175, -729129600000],
15827                         [2359, -698544000000],
15828                         [694, -667872000000],
15829                         [1397, -637286400000],
15830                         [3434, -606614400000],
15831                         [3410, -575942400000],
15832                         [2710, -545356800000],
15833                         [2349, -514771200000],
15834                         [605, -484185600000],
15835                         [1245, -453600000000],
15836                         [2778, -422928000000],
15837                         [1492, -392256000000],
15838                         [3497, -361670400000],
15839                         [3410, -330998400000],
15840                         [2730, -300412800000],
15841                         [1238, -269827200000],
15842                         [2486, -239241600000],
15843                         [884, -208569600000],
15844                         [1897, -177984000000],
15845                         [1874, -147312000000],
15846                         [1701, -116726400000],
15847                         [1355, -86140800000],
15848                         [2731, -55555200000],
15849                         [1370, -24883200000],
15850                         [2773, 5702400000],
15851                         [3538, 36374400000],
15852                         [3492, 67046400000],
15853                         [3401, 97632000000],
15854                         [2709, 128217600000],
15855                         [1325, 158803200000],
15856                         [2653, 189388800000],
15857                         [1370, 220060800000],
15858                         [2773, 250646400000],
15859                         [1706, 281318400000],
15860                         [1685, 311904000000],
15861                         [1323, 342489600000],
15862                         [2647, 373075200000],
15863                         [1198, 403747200000],
15864                         [2422, 434332800000],
15865                         [1388, 465004800000],
15866                         [2901, 495590400000],
15867                         [2730, 526262400000],
15868                         [2645, 556848000000],
15869                         [1197, 587433600000],
15870                         [2397, 618019200000],
15871                         [730, 648691200000],
15872                         [1497, 679276800000],
15873                         [3506, 709948800000],
15874                         [2980, 740620800000],
15875                         [2890, 771206400000],
15876                         [2645, 801792000000],
15877                         [693, 832377600000],
15878                         [1397, 862963200000],
15879                         [2922, 893635200000],
15880                         [3026, 924307200000],
15881                         [3012, 954979200000],
15882                         [2953, 985564800000],
15883                         [2709, 1016150400000],
15884                         [1325, 1046736000000],
15885                         [1453, 1077321600000],
15886                         [2922, 1107993600000],
15887                         [1748, 1138665600000],
15888                         [3529, 1169251200000],
15889                         [3474, 1199923200000],
15890                         [2726, 1230508800000],
15891                         [2390, 1261094400000],
15892                         [686, 1291680000000],
15893                         [1389, 1322265600000],
15894                         [874, 1352937600000],
15895                         [2901, 1383523200000],
15896                         [2730, 1414195200000],
15897                         [2381, 1444780800000],
15898                         [1181, 1475366400000],
15899                         [2397, 1505952000000],
15900                         [698, 1536624000000],
15901                         [1461, 1567209600000],
15902                         [1450, 1597881600000],
15903                         [3413, 1628467200000],
15904                         [2714, 1659139200000],
15905                         [2350, 1689724800000],
15906                         [622, 1720310400000],
15907                         [1373, 1750896000000],
15908                         [2778, 1781568000000],
15909                         [1748, 1812240000000],
15910                         [1701, 1842825600000],
15911                         [0, 1873411200000]
15912                     ],
15913                     minDate: -2198707200000,
15914                     maxDate: 1873411199999,
15915                     toGregorian: function(hyear, hmonth, hday) {
15916                         var days = hday - 1,
15917                             gyear = hyear - 1318;
15918                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
15919                         var info = this._yearInfo[gyear],
15920                             gdate = new Date(info[1]),
15921                             monthLength = info[0];
15922                         // Date's ticks in javascript are always from the GMT time,
15923                         // but we are interested in the gregorian date in the same timezone,
15924                         // not what the gregorian date was at GMT time, so we adjust for the offset.
15925                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
15926                         for (var i = 0; i < hmonth; i++) {
15927                             days += 29 + (monthLength & 1);
15928                             monthLength = monthLength >> 1;
15929                         }
15930                         gdate.setDate(gdate.getDate() + days);
15931                         return gdate;
15932                     },
15933                     fromGregorian: function(gdate) {
15934                         // Date's ticks in javascript are always from the GMT time,
15935                         // but we are interested in the hijri date in the same timezone,
15936                         // not what the hijri date was at GMT time, so we adjust for the offset.
15937                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
15938                         if (ticks < this.minDate || ticks > this.maxDate) return null;
15939                         var hyear = 0,
15940                             hmonth = 1;
15941                         // find the earliest gregorian date in the array that is greater than or equal to the given date
15942                         while (ticks > this._yearInfo[++hyear][1]) { }
15943                         if (ticks !== this._yearInfo[hyear][1]) {
15944                             hyear--;
15945                         }
15946                         var info = this._yearInfo[hyear],
15947                             // how many days has it been since the date we found in the array?
15948                             // 86400000 = ticks per day
15949                             days = Math.floor((ticks - info[1]) / 86400000),
15950                             monthLength = info[0];
15951                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
15952                         // now increment day/month based on the total days, considering
15953                         // how many days are in each month. We cannot run past the year
15954                         // mark since we would have found a different array entry in that case.
15955                         var daysInMonth = 29 + (monthLength & 1);
15956                         while (days >= daysInMonth) {
15957                             days -= daysInMonth;
15958                             monthLength = monthLength >> 1;
15959                             daysInMonth = 29 + (monthLength & 1);
15960                             hmonth++;
15961                         }
15962                         // remaining days is less than is in one month, thus is the day of the month we landed on
15963                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
15964                         return [hyear, hmonth - 1, days + 1];
15965                     }
15966                         }
15967                 },
15968                 Gregorian_MiddleEastFrench: {
15969                         name: "Gregorian_MiddleEastFrench",
15970                         firstDay: 6,
15971                         days: {
15972                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
15973                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
15974                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
15975                         },
15976                         months: {
15977                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
15978                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
15979                         },
15980                         AM: ["ص","ص","ص"],
15981                         PM: ["م","م","م"],
15982                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
15983                         patterns: {
15984                                 d: "MM/dd/yyyy",
15985                                 t: "H:mm",
15986                                 T: "H:mm:ss",
15987                                 f: "dddd, MMMM dd, yyyy H:mm",
15988                                 F: "dddd, MMMM dd, yyyy H:mm:ss",
15989                                 M: "dd MMMM"
15990                         }
15991                 },
15992                 Gregorian_Arabic: {
15993                         name: "Gregorian_Arabic",
15994                         firstDay: 6,
15995                         days: {
15996                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15997                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
15998                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
15999                         },
16000                         months: {
16001                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
16002                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
16003                         },
16004                         AM: ["ص","ص","ص"],
16005                         PM: ["م","م","م"],
16006                         eras: [{"name":"م","start":null,"offset":0}],
16007                         patterns: {
16008                                 d: "MM/dd/yyyy",
16009                                 t: "H:mm",
16010                                 T: "H:mm:ss",
16011                                 f: "dddd, MMMM dd, yyyy H:mm",
16012                                 F: "dddd, MMMM dd, yyyy H:mm:ss"
16013                         }
16014                 },
16015                 Gregorian_TransliteratedEnglish: {
16016                         name: "Gregorian_TransliteratedEnglish",
16017                         firstDay: 6,
16018                         days: {
16019                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16020                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16021                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
16022                         },
16023                         months: {
16024                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
16025                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
16026                         },
16027                         AM: ["ص","ص","ص"],
16028                         PM: ["م","م","م"],
16029                         eras: [{"name":"م","start":null,"offset":0}],
16030                         patterns: {
16031                                 d: "MM/dd/yyyy",
16032                                 t: "H:mm",
16033                                 T: "H:mm:ss",
16034                                 f: "dddd, MMMM dd, yyyy H:mm",
16035                                 F: "dddd, MMMM dd, yyyy H:mm:ss"
16036                         }
16037                 }
16038         }
16039 });
16040
16041 Globalize.addCultureInfo( "zh-MO", "default", {
16042         name: "zh-MO",
16043         englishName: "Chinese (Traditional, Macao S.A.R.)",
16044         nativeName: "中文(澳門特別行政區)",
16045         language: "zh-CHT",
16046         numberFormat: {
16047                 NaN: "非數字",
16048                 negativeInfinity: "負無窮大",
16049                 positiveInfinity: "正無窮大",
16050                 percent: {
16051                         pattern: ["-n%","n%"]
16052                 },
16053                 currency: {
16054                         symbol: "MOP"
16055                 }
16056         },
16057         calendars: {
16058                 standard: {
16059                         days: {
16060                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
16061                                 namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"],
16062                                 namesShort: ["日","一","二","三","四","五","六"]
16063                         },
16064                         months: {
16065                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
16066                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
16067                         },
16068                         AM: ["上午","上午","上午"],
16069                         PM: ["下午","下午","下午"],
16070                         eras: [{"name":"公元","start":null,"offset":0}],
16071                         patterns: {
16072                                 d: "d/M/yyyy",
16073                                 D: "yyyy'年'M'月'd'日'",
16074                                 t: "H:mm",
16075                                 T: "H:mm:ss",
16076                                 f: "yyyy'年'M'月'd'日' H:mm",
16077                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
16078                                 M: "M'月'd'日'",
16079                                 Y: "yyyy'年'M'月'"
16080                         }
16081                 }
16082         }
16083 });
16084
16085 Globalize.addCultureInfo( "de-LI", "default", {
16086         name: "de-LI",
16087         englishName: "German (Liechtenstein)",
16088         nativeName: "Deutsch (Liechtenstein)",
16089         language: "de",
16090         numberFormat: {
16091                 ",": "'",
16092                 NaN: "n. def.",
16093                 negativeInfinity: "-unendlich",
16094                 positiveInfinity: "+unendlich",
16095                 percent: {
16096                         pattern: ["-n%","n%"],
16097                         ",": "'"
16098                 },
16099                 currency: {
16100                         pattern: ["$-n","$ n"],
16101                         ",": "'",
16102                         symbol: "CHF"
16103                 }
16104         },
16105         calendars: {
16106                 standard: {
16107                         "/": ".",
16108                         firstDay: 1,
16109                         days: {
16110                                 names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],
16111                                 namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"],
16112                                 namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"]
16113                         },
16114                         months: {
16115                                 names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],
16116                                 namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""]
16117                         },
16118                         AM: null,
16119                         PM: null,
16120                         eras: [{"name":"n. Chr.","start":null,"offset":0}],
16121                         patterns: {
16122                                 d: "dd.MM.yyyy",
16123                                 D: "dddd, d. MMMM yyyy",
16124                                 t: "HH:mm",
16125                                 T: "HH:mm:ss",
16126                                 f: "dddd, d. MMMM yyyy HH:mm",
16127                                 F: "dddd, d. MMMM yyyy HH:mm:ss",
16128                                 M: "dd MMMM",
16129                                 Y: "MMMM yyyy"
16130                         }
16131                 }
16132         }
16133 });
16134
16135 Globalize.addCultureInfo( "en-NZ", "default", {
16136         name: "en-NZ",
16137         englishName: "English (New Zealand)",
16138         nativeName: "English (New Zealand)",
16139         numberFormat: {
16140                 currency: {
16141                         pattern: ["-$n","$n"]
16142                 }
16143         },
16144         calendars: {
16145                 standard: {
16146                         firstDay: 1,
16147                         AM: ["a.m.","a.m.","A.M."],
16148                         PM: ["p.m.","p.m.","P.M."],
16149                         patterns: {
16150                                 d: "d/MM/yyyy",
16151                                 D: "dddd, d MMMM yyyy",
16152                                 f: "dddd, d MMMM yyyy h:mm tt",
16153                                 F: "dddd, d MMMM yyyy h:mm:ss tt",
16154                                 M: "dd MMMM",
16155                                 Y: "MMMM yyyy"
16156                         }
16157                 }
16158         }
16159 });
16160
16161 Globalize.addCultureInfo( "es-CR", "default", {
16162         name: "es-CR",
16163         englishName: "Spanish (Costa Rica)",
16164         nativeName: "Español (Costa Rica)",
16165         language: "es",
16166         numberFormat: {
16167                 ",": ".",
16168                 ".": ",",
16169                 NaN: "NeuN",
16170                 negativeInfinity: "-Infinito",
16171                 positiveInfinity: "Infinito",
16172                 percent: {
16173                         ",": ".",
16174                         ".": ","
16175                 },
16176                 currency: {
16177                         ",": ".",
16178                         ".": ",",
16179                         symbol: "₡"
16180                 }
16181         },
16182         calendars: {
16183                 standard: {
16184                         days: {
16185                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
16186                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
16187                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
16188                         },
16189                         months: {
16190                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
16191                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
16192                         },
16193                         AM: ["a.m.","a.m.","A.M."],
16194                         PM: ["p.m.","p.m.","P.M."],
16195                         eras: [{"name":"d.C.","start":null,"offset":0}],
16196                         patterns: {
16197                                 d: "dd/MM/yyyy",
16198                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
16199                                 t: "hh:mm tt",
16200                                 T: "hh:mm:ss tt",
16201                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
16202                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
16203                                 M: "dd MMMM",
16204                                 Y: "MMMM' de 'yyyy"
16205                         }
16206                 }
16207         }
16208 });
16209
16210 Globalize.addCultureInfo( "fr-LU", "default", {
16211         name: "fr-LU",
16212         englishName: "French (Luxembourg)",
16213         nativeName: "français (Luxembourg)",
16214         language: "fr",
16215         numberFormat: {
16216                 ",": " ",
16217                 ".": ",",
16218                 NaN: "Non Numérique",
16219                 negativeInfinity: "-Infini",
16220                 positiveInfinity: "+Infini",
16221                 percent: {
16222                         ",": " ",
16223                         ".": ","
16224                 },
16225                 currency: {
16226                         pattern: ["-n $","n $"],
16227                         ",": " ",
16228                         ".": ",",
16229                         symbol: "€"
16230                 }
16231         },
16232         calendars: {
16233                 standard: {
16234                         firstDay: 1,
16235                         days: {
16236                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
16237                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
16238                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
16239                         },
16240                         months: {
16241                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
16242                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
16243                         },
16244                         AM: null,
16245                         PM: null,
16246                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
16247                         patterns: {
16248                                 d: "dd/MM/yyyy",
16249                                 D: "dddd d MMMM yyyy",
16250                                 t: "HH:mm",
16251                                 T: "HH:mm:ss",
16252                                 f: "dddd d MMMM yyyy HH:mm",
16253                                 F: "dddd d MMMM yyyy HH:mm:ss",
16254                                 M: "d MMMM",
16255                                 Y: "MMMM yyyy"
16256                         }
16257                 }
16258         }
16259 });
16260
16261 Globalize.addCultureInfo( "bs-Latn-BA", "default", {
16262         name: "bs-Latn-BA",
16263         englishName: "Bosnian (Latin, Bosnia and Herzegovina)",
16264         nativeName: "bosanski (Bosna i Hercegovina)",
16265         language: "bs-Latn",
16266         numberFormat: {
16267                 ",": ".",
16268                 ".": ",",
16269                 percent: {
16270                         ",": ".",
16271                         ".": ","
16272                 },
16273                 currency: {
16274                         pattern: ["-n $","n $"],
16275                         ",": ".",
16276                         ".": ",",
16277                         symbol: "KM"
16278                 }
16279         },
16280         calendars: {
16281                 standard: {
16282                         "/": ".",
16283                         firstDay: 1,
16284                         days: {
16285                                 names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],
16286                                 namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"],
16287                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
16288                         },
16289                         months: {
16290                                 names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""],
16291                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
16292                         },
16293                         AM: null,
16294                         PM: null,
16295                         patterns: {
16296                                 d: "d.M.yyyy",
16297                                 D: "d. MMMM yyyy",
16298                                 t: "H:mm",
16299                                 T: "H:mm:ss",
16300                                 f: "d. MMMM yyyy H:mm",
16301                                 F: "d. MMMM yyyy H:mm:ss",
16302                                 M: "d. MMMM",
16303                                 Y: "MMMM yyyy"
16304                         }
16305                 }
16306         }
16307 });
16308
16309 Globalize.addCultureInfo( "smj-SE", "default", {
16310         name: "smj-SE",
16311         englishName: "Sami, Lule (Sweden)",
16312         nativeName: "julevusámegiella (Svierik)",
16313         language: "smj",
16314         numberFormat: {
16315                 ",": " ",
16316                 ".": ",",
16317                 percent: {
16318                         ",": " ",
16319                         ".": ","
16320                 },
16321                 currency: {
16322                         pattern: ["-n $","n $"],
16323                         ",": ".",
16324                         ".": ",",
16325                         symbol: "kr"
16326                 }
16327         },
16328         calendars: {
16329                 standard: {
16330                         "/": "-",
16331                         firstDay: 1,
16332                         days: {
16333                                 names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"],
16334                                 namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"],
16335                                 namesShort: ["á","m","d","g","d","b","l"]
16336                         },
16337                         months: {
16338                                 names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""],
16339                                 namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""]
16340                         },
16341                         monthsGenitive: {
16342                                 names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""],
16343                                 namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""]
16344                         },
16345                         AM: null,
16346                         PM: null,
16347                         patterns: {
16348                                 d: "yyyy-MM-dd",
16349                                 D: "MMMM d'. b. 'yyyy",
16350                                 t: "HH:mm",
16351                                 T: "HH:mm:ss",
16352                                 f: "MMMM d'. b. 'yyyy HH:mm",
16353                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
16354                                 M: "MMMM d'. b. '",
16355                                 Y: "MMMM yyyy"
16356                         }
16357                 }
16358         }
16359 });
16360
16361 Globalize.addCultureInfo( "ar-MA", "default", {
16362         name: "ar-MA",
16363         englishName: "Arabic (Morocco)",
16364         nativeName: "العربية (المملكة المغربية)",
16365         language: "ar",
16366         isRTL: true,
16367         numberFormat: {
16368                 pattern: ["n-"],
16369                 NaN: "ليس برقم",
16370                 negativeInfinity: "-لا نهاية",
16371                 positiveInfinity: "+لا نهاية",
16372                 currency: {
16373                         pattern: ["$n-","$ n"],
16374                         symbol: "د.م.‏"
16375                 }
16376         },
16377         calendars: {
16378                 standard: {
16379                         "/": "-",
16380                         firstDay: 1,
16381                         days: {
16382                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16383                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16384                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
16385                         },
16386                         months: {
16387                                 names: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""],
16388                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""]
16389                         },
16390                         AM: ["ص","ص","ص"],
16391                         PM: ["م","م","م"],
16392                         patterns: {
16393                                 d: "dd-MM-yyyy",
16394                                 D: "dd MMMM, yyyy",
16395                                 t: "H:mm",
16396                                 T: "H:mm:ss",
16397                                 f: "dd MMMM, yyyy H:mm",
16398                                 F: "dd MMMM, yyyy H:mm:ss",
16399                                 M: "dd MMMM"
16400                         }
16401                 },
16402                 Hijri: {
16403                         name: "Hijri",
16404                         firstDay: 1,
16405                         days: {
16406                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16407                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16408                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
16409                         },
16410                         months: {
16411                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
16412                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
16413                         },
16414                         AM: ["ص","ص","ص"],
16415                         PM: ["م","م","م"],
16416                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
16417                         twoDigitYearMax: 1451,
16418                         patterns: {
16419                                 d: "dd/MM/yy",
16420                                 D: "dd/MM/yyyy",
16421                                 t: "H:mm",
16422                                 T: "H:mm:ss",
16423                                 f: "dd/MM/yyyy H:mm",
16424                                 F: "dd/MM/yyyy H:mm:ss",
16425                                 M: "dd MMMM"
16426                         },
16427                         convert: {
16428                     // Adapted to Script from System.Globalization.HijriCalendar
16429                     ticks1970: 62135596800000,
16430                     // number of days leading up to each month
16431                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
16432                     minDate: -42521673600000,
16433                     maxDate: 253402300799999,
16434                     // The number of days to add or subtract from the calendar to accommodate the variances
16435                     // in the start and the end of Ramadan and to accommodate the date difference between
16436                     // countries/regions. May be dynamically adjusted based on user preference, but should
16437                     // remain in the range of -2 to 2, inclusive.
16438                     hijriAdjustment: 0,
16439                     toGregorian: function(hyear, hmonth, hday) {
16440                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
16441                         // 86400000 = ticks per day
16442                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
16443                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
16444                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
16445                         // date in the current timezone.
16446                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
16447                         return gdate;
16448                     },
16449                     fromGregorian: function(gdate) {
16450                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
16451                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
16452                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
16453                         // very particular formula determined by someone smart, adapted from the server-side implementation.
16454                         // it approximates the hijri year.
16455                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
16456                             absDays = this.daysToYear(hyear),
16457                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
16458                         // hyear is just approximate, it may need adjustment up or down by 1.
16459                         if (daysSinceJan0101 < absDays) {
16460                             hyear--;
16461                             absDays -= daysInYear;
16462                         }
16463                         else if (daysSinceJan0101 === absDays) {
16464                             hyear--;
16465                             absDays = this.daysToYear(hyear);
16466                         }
16467                         else {
16468                             if (daysSinceJan0101 > (absDays + daysInYear)) {
16469                                 absDays += daysInYear;
16470                                 hyear++;
16471                             }
16472                         }
16473                         // determine month by looking at how many days into the hyear we are
16474                         // monthDays contains the number of days up to each month.
16475                         hmonth = 0;
16476                         var daysIntoYear = daysSinceJan0101 - absDays;
16477                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
16478                             hmonth++;
16479                         }
16480                         hmonth--;
16481                         hday = daysIntoYear - this.monthDays[hmonth];
16482                         return [hyear, hmonth, hday];
16483                     },
16484                     daysToYear: function(year) {
16485                         // calculates how many days since Jan 1, 0001
16486                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
16487                             yearsInto30 = year - yearsToYear30 - 1,
16488                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
16489                         while (yearsInto30 > 0) {
16490                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
16491                             yearsInto30--;
16492                         }
16493                         return days;
16494                     },
16495                     isLeapYear: function(year) {
16496                         return ((((year * 11) + 14) % 30) < 11);
16497                     }
16498                         }
16499                 },
16500                 UmAlQura: {
16501                         name: "UmAlQura",
16502                         firstDay: 1,
16503                         days: {
16504                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16505                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16506                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
16507                         },
16508                         months: {
16509                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
16510                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
16511                         },
16512                         AM: ["ص","ص","ص"],
16513                         PM: ["م","م","م"],
16514                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
16515                         twoDigitYearMax: 1451,
16516                         patterns: {
16517                                 d: "dd/MM/yy",
16518                                 D: "dd/MMMM/yyyy",
16519                                 t: "H:mm",
16520                                 T: "H:mm:ss",
16521                                 f: "dd/MMMM/yyyy H:mm",
16522                                 F: "dd/MMMM/yyyy H:mm:ss",
16523                                 M: "dd MMMM"
16524                         },
16525                         convert: {
16526                     _yearInfo: [
16527                         // MonthLengthFlags, Gregorian Date
16528                         [746, -2198707200000],
16529                         [1769, -2168121600000],
16530                         [3794, -2137449600000],
16531                         [3748, -2106777600000],
16532                         [3402, -2076192000000],
16533                         [2710, -2045606400000],
16534                         [1334, -2015020800000],
16535                         [2741, -1984435200000],
16536                         [3498, -1953763200000],
16537                         [2980, -1923091200000],
16538                         [2889, -1892505600000],
16539                         [2707, -1861920000000],
16540                         [1323, -1831334400000],
16541                         [2647, -1800748800000],
16542                         [1206, -1770076800000],
16543                         [2741, -1739491200000],
16544                         [1450, -1708819200000],
16545                         [3413, -1678233600000],
16546                         [3370, -1647561600000],
16547                         [2646, -1616976000000],
16548                         [1198, -1586390400000],
16549                         [2397, -1555804800000],
16550                         [748, -1525132800000],
16551                         [1749, -1494547200000],
16552                         [1706, -1463875200000],
16553                         [1365, -1433289600000],
16554                         [1195, -1402704000000],
16555                         [2395, -1372118400000],
16556                         [698, -1341446400000],
16557                         [1397, -1310860800000],
16558                         [2994, -1280188800000],
16559                         [1892, -1249516800000],
16560                         [1865, -1218931200000],
16561                         [1621, -1188345600000],
16562                         [683, -1157760000000],
16563                         [1371, -1127174400000],
16564                         [2778, -1096502400000],
16565                         [1748, -1065830400000],
16566                         [3785, -1035244800000],
16567                         [3474, -1004572800000],
16568                         [3365, -973987200000],
16569                         [2637, -943401600000],
16570                         [685, -912816000000],
16571                         [1389, -882230400000],
16572                         [2922, -851558400000],
16573                         [2898, -820886400000],
16574                         [2725, -790300800000],
16575                         [2635, -759715200000],
16576                         [1175, -729129600000],
16577                         [2359, -698544000000],
16578                         [694, -667872000000],
16579                         [1397, -637286400000],
16580                         [3434, -606614400000],
16581                         [3410, -575942400000],
16582                         [2710, -545356800000],
16583                         [2349, -514771200000],
16584                         [605, -484185600000],
16585                         [1245, -453600000000],
16586                         [2778, -422928000000],
16587                         [1492, -392256000000],
16588                         [3497, -361670400000],
16589                         [3410, -330998400000],
16590                         [2730, -300412800000],
16591                         [1238, -269827200000],
16592                         [2486, -239241600000],
16593                         [884, -208569600000],
16594                         [1897, -177984000000],
16595                         [1874, -147312000000],
16596                         [1701, -116726400000],
16597                         [1355, -86140800000],
16598                         [2731, -55555200000],
16599                         [1370, -24883200000],
16600                         [2773, 5702400000],
16601                         [3538, 36374400000],
16602                         [3492, 67046400000],
16603                         [3401, 97632000000],
16604                         [2709, 128217600000],
16605                         [1325, 158803200000],
16606                         [2653, 189388800000],
16607                         [1370, 220060800000],
16608                         [2773, 250646400000],
16609                         [1706, 281318400000],
16610                         [1685, 311904000000],
16611                         [1323, 342489600000],
16612                         [2647, 373075200000],
16613                         [1198, 403747200000],
16614                         [2422, 434332800000],
16615                         [1388, 465004800000],
16616                         [2901, 495590400000],
16617                         [2730, 526262400000],
16618                         [2645, 556848000000],
16619                         [1197, 587433600000],
16620                         [2397, 618019200000],
16621                         [730, 648691200000],
16622                         [1497, 679276800000],
16623                         [3506, 709948800000],
16624                         [2980, 740620800000],
16625                         [2890, 771206400000],
16626                         [2645, 801792000000],
16627                         [693, 832377600000],
16628                         [1397, 862963200000],
16629                         [2922, 893635200000],
16630                         [3026, 924307200000],
16631                         [3012, 954979200000],
16632                         [2953, 985564800000],
16633                         [2709, 1016150400000],
16634                         [1325, 1046736000000],
16635                         [1453, 1077321600000],
16636                         [2922, 1107993600000],
16637                         [1748, 1138665600000],
16638                         [3529, 1169251200000],
16639                         [3474, 1199923200000],
16640                         [2726, 1230508800000],
16641                         [2390, 1261094400000],
16642                         [686, 1291680000000],
16643                         [1389, 1322265600000],
16644                         [874, 1352937600000],
16645                         [2901, 1383523200000],
16646                         [2730, 1414195200000],
16647                         [2381, 1444780800000],
16648                         [1181, 1475366400000],
16649                         [2397, 1505952000000],
16650                         [698, 1536624000000],
16651                         [1461, 1567209600000],
16652                         [1450, 1597881600000],
16653                         [3413, 1628467200000],
16654                         [2714, 1659139200000],
16655                         [2350, 1689724800000],
16656                         [622, 1720310400000],
16657                         [1373, 1750896000000],
16658                         [2778, 1781568000000],
16659                         [1748, 1812240000000],
16660                         [1701, 1842825600000],
16661                         [0, 1873411200000]
16662                     ],
16663                     minDate: -2198707200000,
16664                     maxDate: 1873411199999,
16665                     toGregorian: function(hyear, hmonth, hday) {
16666                         var days = hday - 1,
16667                             gyear = hyear - 1318;
16668                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
16669                         var info = this._yearInfo[gyear],
16670                             gdate = new Date(info[1]),
16671                             monthLength = info[0];
16672                         // Date's ticks in javascript are always from the GMT time,
16673                         // but we are interested in the gregorian date in the same timezone,
16674                         // not what the gregorian date was at GMT time, so we adjust for the offset.
16675                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
16676                         for (var i = 0; i < hmonth; i++) {
16677                             days += 29 + (monthLength & 1);
16678                             monthLength = monthLength >> 1;
16679                         }
16680                         gdate.setDate(gdate.getDate() + days);
16681                         return gdate;
16682                     },
16683                     fromGregorian: function(gdate) {
16684                         // Date's ticks in javascript are always from the GMT time,
16685                         // but we are interested in the hijri date in the same timezone,
16686                         // not what the hijri date was at GMT time, so we adjust for the offset.
16687                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
16688                         if (ticks < this.minDate || ticks > this.maxDate) return null;
16689                         var hyear = 0,
16690                             hmonth = 1;
16691                         // find the earliest gregorian date in the array that is greater than or equal to the given date
16692                         while (ticks > this._yearInfo[++hyear][1]) { }
16693                         if (ticks !== this._yearInfo[hyear][1]) {
16694                             hyear--;
16695                         }
16696                         var info = this._yearInfo[hyear],
16697                             // how many days has it been since the date we found in the array?
16698                             // 86400000 = ticks per day
16699                             days = Math.floor((ticks - info[1]) / 86400000),
16700                             monthLength = info[0];
16701                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
16702                         // now increment day/month based on the total days, considering
16703                         // how many days are in each month. We cannot run past the year
16704                         // mark since we would have found a different array entry in that case.
16705                         var daysInMonth = 29 + (monthLength & 1);
16706                         while (days >= daysInMonth) {
16707                             days -= daysInMonth;
16708                             monthLength = monthLength >> 1;
16709                             daysInMonth = 29 + (monthLength & 1);
16710                             hmonth++;
16711                         }
16712                         // remaining days is less than is in one month, thus is the day of the month we landed on
16713                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
16714                         return [hyear, hmonth - 1, days + 1];
16715                     }
16716                         }
16717                 },
16718                 Gregorian_MiddleEastFrench: {
16719                         name: "Gregorian_MiddleEastFrench",
16720                         firstDay: 1,
16721                         days: {
16722                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
16723                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
16724                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
16725                         },
16726                         months: {
16727                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
16728                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
16729                         },
16730                         AM: ["ص","ص","ص"],
16731                         PM: ["م","م","م"],
16732                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
16733                         patterns: {
16734                                 d: "MM/dd/yyyy",
16735                                 t: "H:mm",
16736                                 T: "H:mm:ss",
16737                                 f: "dddd, MMMM dd, yyyy H:mm",
16738                                 F: "dddd, MMMM dd, yyyy H:mm:ss",
16739                                 M: "dd MMMM"
16740                         }
16741                 },
16742                 Gregorian_Arabic: {
16743                         name: "Gregorian_Arabic",
16744                         firstDay: 1,
16745                         days: {
16746                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16747                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16748                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
16749                         },
16750                         months: {
16751                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
16752                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
16753                         },
16754                         AM: ["ص","ص","ص"],
16755                         PM: ["م","م","م"],
16756                         eras: [{"name":"م","start":null,"offset":0}],
16757                         patterns: {
16758                                 d: "MM/dd/yyyy",
16759                                 t: "H:mm",
16760                                 T: "H:mm:ss",
16761                                 f: "dddd, MMMM dd, yyyy H:mm",
16762                                 F: "dddd, MMMM dd, yyyy H:mm:ss"
16763                         }
16764                 },
16765                 Gregorian_TransliteratedEnglish: {
16766                         name: "Gregorian_TransliteratedEnglish",
16767                         firstDay: 1,
16768                         days: {
16769                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16770                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
16771                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
16772                         },
16773                         months: {
16774                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
16775                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
16776                         },
16777                         AM: ["ص","ص","ص"],
16778                         PM: ["م","م","م"],
16779                         eras: [{"name":"م","start":null,"offset":0}],
16780                         patterns: {
16781                                 d: "MM/dd/yyyy",
16782                                 t: "H:mm",
16783                                 T: "H:mm:ss",
16784                                 f: "dddd, MMMM dd, yyyy H:mm",
16785                                 F: "dddd, MMMM dd, yyyy H:mm:ss"
16786                         }
16787                 }
16788         }
16789 });
16790
16791 Globalize.addCultureInfo( "en-IE", "default", {
16792         name: "en-IE",
16793         englishName: "English (Ireland)",
16794         nativeName: "English (Ireland)",
16795         numberFormat: {
16796                 currency: {
16797                         pattern: ["-$n","$n"],
16798                         symbol: "€"
16799                 }
16800         },
16801         calendars: {
16802                 standard: {
16803                         firstDay: 1,
16804                         AM: null,
16805                         PM: null,
16806                         patterns: {
16807                                 d: "dd/MM/yyyy",
16808                                 D: "dd MMMM yyyy",
16809                                 t: "HH:mm",
16810                                 T: "HH:mm:ss",
16811                                 f: "dd MMMM yyyy HH:mm",
16812                                 F: "dd MMMM yyyy HH:mm:ss",
16813                                 M: "dd MMMM",
16814                                 Y: "MMMM yyyy"
16815                         }
16816                 }
16817         }
16818 });
16819
16820 Globalize.addCultureInfo( "es-PA", "default", {
16821         name: "es-PA",
16822         englishName: "Spanish (Panama)",
16823         nativeName: "Español (Panamá)",
16824         language: "es",
16825         numberFormat: {
16826                 NaN: "NeuN",
16827                 negativeInfinity: "-Infinito",
16828                 positiveInfinity: "Infinito",
16829                 currency: {
16830                         pattern: ["($ n)","$ n"],
16831                         symbol: "B/."
16832                 }
16833         },
16834         calendars: {
16835                 standard: {
16836                         days: {
16837                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
16838                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
16839                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
16840                         },
16841                         months: {
16842                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
16843                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
16844                         },
16845                         AM: ["a.m.","a.m.","A.M."],
16846                         PM: ["p.m.","p.m.","P.M."],
16847                         eras: [{"name":"d.C.","start":null,"offset":0}],
16848                         patterns: {
16849                                 d: "MM/dd/yyyy",
16850                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
16851                                 t: "hh:mm tt",
16852                                 T: "hh:mm:ss tt",
16853                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
16854                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
16855                                 M: "dd MMMM",
16856                                 Y: "MMMM' de 'yyyy"
16857                         }
16858                 }
16859         }
16860 });
16861
16862 Globalize.addCultureInfo( "fr-MC", "default", {
16863         name: "fr-MC",
16864         englishName: "French (Monaco)",
16865         nativeName: "français (Principauté de Monaco)",
16866         language: "fr",
16867         numberFormat: {
16868                 ",": " ",
16869                 ".": ",",
16870                 NaN: "Non Numérique",
16871                 negativeInfinity: "-Infini",
16872                 positiveInfinity: "+Infini",
16873                 percent: {
16874                         ",": " ",
16875                         ".": ","
16876                 },
16877                 currency: {
16878                         pattern: ["-n $","n $"],
16879                         ",": " ",
16880                         ".": ",",
16881                         symbol: "€"
16882                 }
16883         },
16884         calendars: {
16885                 standard: {
16886                         firstDay: 1,
16887                         days: {
16888                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
16889                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
16890                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
16891                         },
16892                         months: {
16893                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
16894                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
16895                         },
16896                         AM: null,
16897                         PM: null,
16898                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
16899                         patterns: {
16900                                 d: "dd/MM/yyyy",
16901                                 D: "dddd d MMMM yyyy",
16902                                 t: "HH:mm",
16903                                 T: "HH:mm:ss",
16904                                 f: "dddd d MMMM yyyy HH:mm",
16905                                 F: "dddd d MMMM yyyy HH:mm:ss",
16906                                 M: "d MMMM",
16907                                 Y: "MMMM yyyy"
16908                         }
16909                 }
16910         }
16911 });
16912
16913 Globalize.addCultureInfo( "sr-Latn-BA", "default", {
16914         name: "sr-Latn-BA",
16915         englishName: "Serbian (Latin, Bosnia and Herzegovina)",
16916         nativeName: "srpski (Bosna i Hercegovina)",
16917         language: "sr-Latn",
16918         numberFormat: {
16919                 ",": ".",
16920                 ".": ",",
16921                 negativeInfinity: "-beskonačnost",
16922                 positiveInfinity: "+beskonačnost",
16923                 percent: {
16924                         ",": ".",
16925                         ".": ","
16926                 },
16927                 currency: {
16928                         pattern: ["-n $","n $"],
16929                         ",": ".",
16930                         ".": ",",
16931                         symbol: "KM"
16932                 }
16933         },
16934         calendars: {
16935                 standard: {
16936                         "/": ".",
16937                         firstDay: 1,
16938                         days: {
16939                                 names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],
16940                                 namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"],
16941                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
16942                         },
16943                         months: {
16944                                 names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""],
16945                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
16946                         },
16947                         AM: null,
16948                         PM: null,
16949                         eras: [{"name":"n.e.","start":null,"offset":0}],
16950                         patterns: {
16951                                 d: "d.M.yyyy",
16952                                 D: "d. MMMM yyyy",
16953                                 t: "H:mm",
16954                                 T: "H:mm:ss",
16955                                 f: "d. MMMM yyyy H:mm",
16956                                 F: "d. MMMM yyyy H:mm:ss",
16957                                 M: "d. MMMM",
16958                                 Y: "MMMM yyyy"
16959                         }
16960                 }
16961         }
16962 });
16963
16964 Globalize.addCultureInfo( "sma-NO", "default", {
16965         name: "sma-NO",
16966         englishName: "Sami, Southern (Norway)",
16967         nativeName: "åarjelsaemiengiele (Nöörje)",
16968         language: "sma",
16969         numberFormat: {
16970                 ",": " ",
16971                 ".": ",",
16972                 percent: {
16973                         pattern: ["-%n","%n"],
16974                         ",": " ",
16975                         ".": ","
16976                 },
16977                 currency: {
16978                         pattern: ["$ -n","$ n"],
16979                         ",": " ",
16980                         ".": ",",
16981                         symbol: "kr"
16982                 }
16983         },
16984         calendars: {
16985                 standard: {
16986                         "/": ".",
16987                         firstDay: 1,
16988                         days: {
16989                                 names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"],
16990                                 namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"],
16991                                 namesShort: ["a","m","d","g","d","b","l"]
16992                         },
16993                         months: {
16994                                 names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""],
16995                                 namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""]
16996                         },
16997                         monthsGenitive: {
16998                                 names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""],
16999                                 namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""]
17000                         },
17001                         AM: null,
17002                         PM: null,
17003                         patterns: {
17004                                 d: "dd.MM.yyyy",
17005                                 D: "MMMM d'. b. 'yyyy",
17006                                 t: "HH:mm",
17007                                 T: "HH:mm:ss",
17008                                 f: "MMMM d'. b. 'yyyy HH:mm",
17009                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
17010                                 M: "MMMM d'. b. '",
17011                                 Y: "MMMM yyyy"
17012                         }
17013                 }
17014         }
17015 });
17016
17017 Globalize.addCultureInfo( "ar-TN", "default", {
17018         name: "ar-TN",
17019         englishName: "Arabic (Tunisia)",
17020         nativeName: "العربية (تونس)",
17021         language: "ar",
17022         isRTL: true,
17023         numberFormat: {
17024                 pattern: ["n-"],
17025                 decimals: 3,
17026                 NaN: "ليس برقم",
17027                 negativeInfinity: "-لا نهاية",
17028                 positiveInfinity: "+لا نهاية",
17029                 percent: {
17030                         decimals: 3
17031                 },
17032                 currency: {
17033                         pattern: ["$n-","$ n"],
17034                         decimals: 3,
17035                         symbol: "د.ت.‏"
17036                 }
17037         },
17038         calendars: {
17039                 standard: {
17040                         "/": "-",
17041                         firstDay: 1,
17042                         days: {
17043                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17044                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17045                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
17046                         },
17047                         months: {
17048                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
17049                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
17050                         },
17051                         AM: ["ص","ص","ص"],
17052                         PM: ["م","م","م"],
17053                         patterns: {
17054                                 d: "dd-MM-yyyy",
17055                                 D: "dd MMMM, yyyy",
17056                                 t: "H:mm",
17057                                 T: "H:mm:ss",
17058                                 f: "dd MMMM, yyyy H:mm",
17059                                 F: "dd MMMM, yyyy H:mm:ss",
17060                                 M: "dd MMMM"
17061                         }
17062                 },
17063                 Hijri: {
17064                         name: "Hijri",
17065                         firstDay: 1,
17066                         days: {
17067                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17068                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17069                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
17070                         },
17071                         months: {
17072                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
17073                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
17074                         },
17075                         AM: ["ص","ص","ص"],
17076                         PM: ["م","م","م"],
17077                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
17078                         twoDigitYearMax: 1451,
17079                         patterns: {
17080                                 d: "dd/MM/yy",
17081                                 D: "dd/MM/yyyy",
17082                                 t: "H:mm",
17083                                 T: "H:mm:ss",
17084                                 f: "dd/MM/yyyy H:mm",
17085                                 F: "dd/MM/yyyy H:mm:ss",
17086                                 M: "dd MMMM"
17087                         },
17088                         convert: {
17089                     // Adapted to Script from System.Globalization.HijriCalendar
17090                     ticks1970: 62135596800000,
17091                     // number of days leading up to each month
17092                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
17093                     minDate: -42521673600000,
17094                     maxDate: 253402300799999,
17095                     // The number of days to add or subtract from the calendar to accommodate the variances
17096                     // in the start and the end of Ramadan and to accommodate the date difference between
17097                     // countries/regions. May be dynamically adjusted based on user preference, but should
17098                     // remain in the range of -2 to 2, inclusive.
17099                     hijriAdjustment: 0,
17100                     toGregorian: function(hyear, hmonth, hday) {
17101                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
17102                         // 86400000 = ticks per day
17103                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
17104                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
17105                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
17106                         // date in the current timezone.
17107                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
17108                         return gdate;
17109                     },
17110                     fromGregorian: function(gdate) {
17111                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
17112                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
17113                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
17114                         // very particular formula determined by someone smart, adapted from the server-side implementation.
17115                         // it approximates the hijri year.
17116                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
17117                             absDays = this.daysToYear(hyear),
17118                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
17119                         // hyear is just approximate, it may need adjustment up or down by 1.
17120                         if (daysSinceJan0101 < absDays) {
17121                             hyear--;
17122                             absDays -= daysInYear;
17123                         }
17124                         else if (daysSinceJan0101 === absDays) {
17125                             hyear--;
17126                             absDays = this.daysToYear(hyear);
17127                         }
17128                         else {
17129                             if (daysSinceJan0101 > (absDays + daysInYear)) {
17130                                 absDays += daysInYear;
17131                                 hyear++;
17132                             }
17133                         }
17134                         // determine month by looking at how many days into the hyear we are
17135                         // monthDays contains the number of days up to each month.
17136                         hmonth = 0;
17137                         var daysIntoYear = daysSinceJan0101 - absDays;
17138                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
17139                             hmonth++;
17140                         }
17141                         hmonth--;
17142                         hday = daysIntoYear - this.monthDays[hmonth];
17143                         return [hyear, hmonth, hday];
17144                     },
17145                     daysToYear: function(year) {
17146                         // calculates how many days since Jan 1, 0001
17147                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
17148                             yearsInto30 = year - yearsToYear30 - 1,
17149                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
17150                         while (yearsInto30 > 0) {
17151                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
17152                             yearsInto30--;
17153                         }
17154                         return days;
17155                     },
17156                     isLeapYear: function(year) {
17157                         return ((((year * 11) + 14) % 30) < 11);
17158                     }
17159                         }
17160                 },
17161                 UmAlQura: {
17162                         name: "UmAlQura",
17163                         firstDay: 1,
17164                         days: {
17165                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17166                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17167                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
17168                         },
17169                         months: {
17170                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
17171                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
17172                         },
17173                         AM: ["ص","ص","ص"],
17174                         PM: ["م","م","م"],
17175                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
17176                         twoDigitYearMax: 1451,
17177                         patterns: {
17178                                 d: "dd/MM/yy",
17179                                 D: "dd/MMMM/yyyy",
17180                                 t: "H:mm",
17181                                 T: "H:mm:ss",
17182                                 f: "dd/MMMM/yyyy H:mm",
17183                                 F: "dd/MMMM/yyyy H:mm:ss",
17184                                 M: "dd MMMM"
17185                         },
17186                         convert: {
17187                     _yearInfo: [
17188                         // MonthLengthFlags, Gregorian Date
17189                         [746, -2198707200000],
17190                         [1769, -2168121600000],
17191                         [3794, -2137449600000],
17192                         [3748, -2106777600000],
17193                         [3402, -2076192000000],
17194                         [2710, -2045606400000],
17195                         [1334, -2015020800000],
17196                         [2741, -1984435200000],
17197                         [3498, -1953763200000],
17198                         [2980, -1923091200000],
17199                         [2889, -1892505600000],
17200                         [2707, -1861920000000],
17201                         [1323, -1831334400000],
17202                         [2647, -1800748800000],
17203                         [1206, -1770076800000],
17204                         [2741, -1739491200000],
17205                         [1450, -1708819200000],
17206                         [3413, -1678233600000],
17207                         [3370, -1647561600000],
17208                         [2646, -1616976000000],
17209                         [1198, -1586390400000],
17210                         [2397, -1555804800000],
17211                         [748, -1525132800000],
17212                         [1749, -1494547200000],
17213                         [1706, -1463875200000],
17214                         [1365, -1433289600000],
17215                         [1195, -1402704000000],
17216                         [2395, -1372118400000],
17217                         [698, -1341446400000],
17218                         [1397, -1310860800000],
17219                         [2994, -1280188800000],
17220                         [1892, -1249516800000],
17221                         [1865, -1218931200000],
17222                         [1621, -1188345600000],
17223                         [683, -1157760000000],
17224                         [1371, -1127174400000],
17225                         [2778, -1096502400000],
17226                         [1748, -1065830400000],
17227                         [3785, -1035244800000],
17228                         [3474, -1004572800000],
17229                         [3365, -973987200000],
17230                         [2637, -943401600000],
17231                         [685, -912816000000],
17232                         [1389, -882230400000],
17233                         [2922, -851558400000],
17234                         [2898, -820886400000],
17235                         [2725, -790300800000],
17236                         [2635, -759715200000],
17237                         [1175, -729129600000],
17238                         [2359, -698544000000],
17239                         [694, -667872000000],
17240                         [1397, -637286400000],
17241                         [3434, -606614400000],
17242                         [3410, -575942400000],
17243                         [2710, -545356800000],
17244                         [2349, -514771200000],
17245                         [605, -484185600000],
17246                         [1245, -453600000000],
17247                         [2778, -422928000000],
17248                         [1492, -392256000000],
17249                         [3497, -361670400000],
17250                         [3410, -330998400000],
17251                         [2730, -300412800000],
17252                         [1238, -269827200000],
17253                         [2486, -239241600000],
17254                         [884, -208569600000],
17255                         [1897, -177984000000],
17256                         [1874, -147312000000],
17257                         [1701, -116726400000],
17258                         [1355, -86140800000],
17259                         [2731, -55555200000],
17260                         [1370, -24883200000],
17261                         [2773, 5702400000],
17262                         [3538, 36374400000],
17263                         [3492, 67046400000],
17264                         [3401, 97632000000],
17265                         [2709, 128217600000],
17266                         [1325, 158803200000],
17267                         [2653, 189388800000],
17268                         [1370, 220060800000],
17269                         [2773, 250646400000],
17270                         [1706, 281318400000],
17271                         [1685, 311904000000],
17272                         [1323, 342489600000],
17273                         [2647, 373075200000],
17274                         [1198, 403747200000],
17275                         [2422, 434332800000],
17276                         [1388, 465004800000],
17277                         [2901, 495590400000],
17278                         [2730, 526262400000],
17279                         [2645, 556848000000],
17280                         [1197, 587433600000],
17281                         [2397, 618019200000],
17282                         [730, 648691200000],
17283                         [1497, 679276800000],
17284                         [3506, 709948800000],
17285                         [2980, 740620800000],
17286                         [2890, 771206400000],
17287                         [2645, 801792000000],
17288                         [693, 832377600000],
17289                         [1397, 862963200000],
17290                         [2922, 893635200000],
17291                         [3026, 924307200000],
17292                         [3012, 954979200000],
17293                         [2953, 985564800000],
17294                         [2709, 1016150400000],
17295                         [1325, 1046736000000],
17296                         [1453, 1077321600000],
17297                         [2922, 1107993600000],
17298                         [1748, 1138665600000],
17299                         [3529, 1169251200000],
17300                         [3474, 1199923200000],
17301                         [2726, 1230508800000],
17302                         [2390, 1261094400000],
17303                         [686, 1291680000000],
17304                         [1389, 1322265600000],
17305                         [874, 1352937600000],
17306                         [2901, 1383523200000],
17307                         [2730, 1414195200000],
17308                         [2381, 1444780800000],
17309                         [1181, 1475366400000],
17310                         [2397, 1505952000000],
17311                         [698, 1536624000000],
17312                         [1461, 1567209600000],
17313                         [1450, 1597881600000],
17314                         [3413, 1628467200000],
17315                         [2714, 1659139200000],
17316                         [2350, 1689724800000],
17317                         [622, 1720310400000],
17318                         [1373, 1750896000000],
17319                         [2778, 1781568000000],
17320                         [1748, 1812240000000],
17321                         [1701, 1842825600000],
17322                         [0, 1873411200000]
17323                     ],
17324                     minDate: -2198707200000,
17325                     maxDate: 1873411199999,
17326                     toGregorian: function(hyear, hmonth, hday) {
17327                         var days = hday - 1,
17328                             gyear = hyear - 1318;
17329                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
17330                         var info = this._yearInfo[gyear],
17331                             gdate = new Date(info[1]),
17332                             monthLength = info[0];
17333                         // Date's ticks in javascript are always from the GMT time,
17334                         // but we are interested in the gregorian date in the same timezone,
17335                         // not what the gregorian date was at GMT time, so we adjust for the offset.
17336                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
17337                         for (var i = 0; i < hmonth; i++) {
17338                             days += 29 + (monthLength & 1);
17339                             monthLength = monthLength >> 1;
17340                         }
17341                         gdate.setDate(gdate.getDate() + days);
17342                         return gdate;
17343                     },
17344                     fromGregorian: function(gdate) {
17345                         // Date's ticks in javascript are always from the GMT time,
17346                         // but we are interested in the hijri date in the same timezone,
17347                         // not what the hijri date was at GMT time, so we adjust for the offset.
17348                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
17349                         if (ticks < this.minDate || ticks > this.maxDate) return null;
17350                         var hyear = 0,
17351                             hmonth = 1;
17352                         // find the earliest gregorian date in the array that is greater than or equal to the given date
17353                         while (ticks > this._yearInfo[++hyear][1]) { }
17354                         if (ticks !== this._yearInfo[hyear][1]) {
17355                             hyear--;
17356                         }
17357                         var info = this._yearInfo[hyear],
17358                             // how many days has it been since the date we found in the array?
17359                             // 86400000 = ticks per day
17360                             days = Math.floor((ticks - info[1]) / 86400000),
17361                             monthLength = info[0];
17362                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
17363                         // now increment day/month based on the total days, considering
17364                         // how many days are in each month. We cannot run past the year
17365                         // mark since we would have found a different array entry in that case.
17366                         var daysInMonth = 29 + (monthLength & 1);
17367                         while (days >= daysInMonth) {
17368                             days -= daysInMonth;
17369                             monthLength = monthLength >> 1;
17370                             daysInMonth = 29 + (monthLength & 1);
17371                             hmonth++;
17372                         }
17373                         // remaining days is less than is in one month, thus is the day of the month we landed on
17374                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
17375                         return [hyear, hmonth - 1, days + 1];
17376                     }
17377                         }
17378                 },
17379                 Gregorian_MiddleEastFrench: {
17380                         name: "Gregorian_MiddleEastFrench",
17381                         firstDay: 1,
17382                         days: {
17383                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
17384                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
17385                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
17386                         },
17387                         months: {
17388                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
17389                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
17390                         },
17391                         AM: ["ص","ص","ص"],
17392                         PM: ["م","م","م"],
17393                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
17394                         patterns: {
17395                                 d: "MM/dd/yyyy",
17396                                 t: "H:mm",
17397                                 T: "H:mm:ss",
17398                                 f: "dddd, MMMM dd, yyyy H:mm",
17399                                 F: "dddd, MMMM dd, yyyy H:mm:ss",
17400                                 M: "dd MMMM"
17401                         }
17402                 },
17403                 Gregorian_Arabic: {
17404                         name: "Gregorian_Arabic",
17405                         firstDay: 1,
17406                         days: {
17407                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17408                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17409                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
17410                         },
17411                         months: {
17412                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
17413                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
17414                         },
17415                         AM: ["ص","ص","ص"],
17416                         PM: ["م","م","م"],
17417                         eras: [{"name":"م","start":null,"offset":0}],
17418                         patterns: {
17419                                 d: "MM/dd/yyyy",
17420                                 t: "H:mm",
17421                                 T: "H:mm:ss",
17422                                 f: "dddd, MMMM dd, yyyy H:mm",
17423                                 F: "dddd, MMMM dd, yyyy H:mm:ss"
17424                         }
17425                 },
17426                 Gregorian_TransliteratedEnglish: {
17427                         name: "Gregorian_TransliteratedEnglish",
17428                         firstDay: 1,
17429                         days: {
17430                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17431                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17432                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
17433                         },
17434                         months: {
17435                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
17436                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
17437                         },
17438                         AM: ["ص","ص","ص"],
17439                         PM: ["م","م","م"],
17440                         eras: [{"name":"م","start":null,"offset":0}],
17441                         patterns: {
17442                                 d: "MM/dd/yyyy",
17443                                 t: "H:mm",
17444                                 T: "H:mm:ss",
17445                                 f: "dddd, MMMM dd, yyyy H:mm",
17446                                 F: "dddd, MMMM dd, yyyy H:mm:ss"
17447                         }
17448                 }
17449         }
17450 });
17451
17452 Globalize.addCultureInfo( "en-ZA", "default", {
17453         name: "en-ZA",
17454         englishName: "English (South Africa)",
17455         nativeName: "English (South Africa)",
17456         numberFormat: {
17457                 ",": " ",
17458                 percent: {
17459                         pattern: ["-n%","n%"],
17460                         ",": " "
17461                 },
17462                 currency: {
17463                         pattern: ["$-n","$ n"],
17464                         ",": " ",
17465                         ".": ",",
17466                         symbol: "R"
17467                 }
17468         },
17469         calendars: {
17470                 standard: {
17471                         patterns: {
17472                                 d: "yyyy/MM/dd",
17473                                 D: "dd MMMM yyyy",
17474                                 t: "hh:mm tt",
17475                                 T: "hh:mm:ss tt",
17476                                 f: "dd MMMM yyyy hh:mm tt",
17477                                 F: "dd MMMM yyyy hh:mm:ss tt",
17478                                 M: "dd MMMM",
17479                                 Y: "MMMM yyyy"
17480                         }
17481                 }
17482         }
17483 });
17484
17485 Globalize.addCultureInfo( "es-DO", "default", {
17486         name: "es-DO",
17487         englishName: "Spanish (Dominican Republic)",
17488         nativeName: "Español (República Dominicana)",
17489         language: "es",
17490         numberFormat: {
17491                 NaN: "NeuN",
17492                 negativeInfinity: "-Infinito",
17493                 positiveInfinity: "Infinito",
17494                 currency: {
17495                         symbol: "RD$"
17496                 }
17497         },
17498         calendars: {
17499                 standard: {
17500                         days: {
17501                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
17502                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
17503                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
17504                         },
17505                         months: {
17506                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
17507                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
17508                         },
17509                         AM: ["a.m.","a.m.","A.M."],
17510                         PM: ["p.m.","p.m.","P.M."],
17511                         eras: [{"name":"d.C.","start":null,"offset":0}],
17512                         patterns: {
17513                                 d: "dd/MM/yyyy",
17514                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
17515                                 t: "hh:mm tt",
17516                                 T: "hh:mm:ss tt",
17517                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
17518                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
17519                                 M: "dd MMMM",
17520                                 Y: "MMMM' de 'yyyy"
17521                         }
17522                 }
17523         }
17524 });
17525
17526 Globalize.addCultureInfo( "sr-Cyrl-BA", "default", {
17527         name: "sr-Cyrl-BA",
17528         englishName: "Serbian (Cyrillic, Bosnia and Herzegovina)",
17529         nativeName: "српски (Босна и Херцеговина)",
17530         language: "sr-Cyrl",
17531         numberFormat: {
17532                 ",": ".",
17533                 ".": ",",
17534                 negativeInfinity: "-бесконачност",
17535                 positiveInfinity: "+бесконачност",
17536                 percent: {
17537                         ",": ".",
17538                         ".": ","
17539                 },
17540                 currency: {
17541                         pattern: ["-n $","n $"],
17542                         ",": ".",
17543                         ".": ",",
17544                         symbol: "КМ"
17545                 }
17546         },
17547         calendars: {
17548                 standard: {
17549                         "/": ".",
17550                         firstDay: 1,
17551                         days: {
17552                                 names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"],
17553                                 namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"],
17554                                 namesShort: ["н","п","у","с","ч","п","с"]
17555                         },
17556                         months: {
17557                                 names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""],
17558                                 namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""]
17559                         },
17560                         AM: null,
17561                         PM: null,
17562                         eras: [{"name":"н.е.","start":null,"offset":0}],
17563                         patterns: {
17564                                 d: "d.M.yyyy",
17565                                 D: "d. MMMM yyyy",
17566                                 t: "H:mm",
17567                                 T: "H:mm:ss",
17568                                 f: "d. MMMM yyyy H:mm",
17569                                 F: "d. MMMM yyyy H:mm:ss",
17570                                 M: "d. MMMM"
17571                         }
17572                 }
17573         }
17574 });
17575
17576 Globalize.addCultureInfo( "sma-SE", "default", {
17577         name: "sma-SE",
17578         englishName: "Sami, Southern (Sweden)",
17579         nativeName: "åarjelsaemiengiele (Sveerje)",
17580         language: "sma",
17581         numberFormat: {
17582                 ",": " ",
17583                 ".": ",",
17584                 percent: {
17585                         ",": " ",
17586                         ".": ","
17587                 },
17588                 currency: {
17589                         pattern: ["-n $","n $"],
17590                         ",": ".",
17591                         ".": ",",
17592                         symbol: "kr"
17593                 }
17594         },
17595         calendars: {
17596                 standard: {
17597                         "/": "-",
17598                         firstDay: 1,
17599                         days: {
17600                                 names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"],
17601                                 namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"],
17602                                 namesShort: ["a","m","d","g","d","b","l"]
17603                         },
17604                         months: {
17605                                 names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""],
17606                                 namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""]
17607                         },
17608                         monthsGenitive: {
17609                                 names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""],
17610                                 namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""]
17611                         },
17612                         AM: null,
17613                         PM: null,
17614                         patterns: {
17615                                 d: "yyyy-MM-dd",
17616                                 D: "MMMM d'. b. 'yyyy",
17617                                 t: "HH:mm",
17618                                 T: "HH:mm:ss",
17619                                 f: "MMMM d'. b. 'yyyy HH:mm",
17620                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
17621                                 M: "MMMM d'. b. '",
17622                                 Y: "MMMM yyyy"
17623                         }
17624                 }
17625         }
17626 });
17627
17628 Globalize.addCultureInfo( "ar-OM", "default", {
17629         name: "ar-OM",
17630         englishName: "Arabic (Oman)",
17631         nativeName: "العربية (عمان)",
17632         language: "ar",
17633         isRTL: true,
17634         numberFormat: {
17635                 pattern: ["n-"],
17636                 NaN: "ليس برقم",
17637                 negativeInfinity: "-لا نهاية",
17638                 positiveInfinity: "+لا نهاية",
17639                 currency: {
17640                         pattern: ["$n-","$ n"],
17641                         decimals: 3,
17642                         symbol: "ر.ع.‏"
17643                 }
17644         },
17645         calendars: {
17646                 standard: {
17647                         firstDay: 6,
17648                         days: {
17649                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17650                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17651                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
17652                         },
17653                         months: {
17654                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
17655                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
17656                         },
17657                         AM: ["ص","ص","ص"],
17658                         PM: ["م","م","م"],
17659                         patterns: {
17660                                 d: "dd/MM/yyyy",
17661                                 D: "dd MMMM, yyyy",
17662                                 t: "hh:mm tt",
17663                                 T: "hh:mm:ss tt",
17664                                 f: "dd MMMM, yyyy hh:mm tt",
17665                                 F: "dd MMMM, yyyy hh:mm:ss tt",
17666                                 M: "dd MMMM"
17667                         }
17668                 },
17669                 Hijri: {
17670                         name: "Hijri",
17671                         firstDay: 6,
17672                         days: {
17673                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17674                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17675                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
17676                         },
17677                         months: {
17678                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
17679                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
17680                         },
17681                         AM: ["ص","ص","ص"],
17682                         PM: ["م","م","م"],
17683                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
17684                         twoDigitYearMax: 1451,
17685                         patterns: {
17686                                 d: "dd/MM/yy",
17687                                 D: "dd/MM/yyyy",
17688                                 t: "hh:mm tt",
17689                                 T: "hh:mm:ss tt",
17690                                 f: "dd/MM/yyyy hh:mm tt",
17691                                 F: "dd/MM/yyyy hh:mm:ss tt",
17692                                 M: "dd MMMM"
17693                         },
17694                         convert: {
17695                     // Adapted to Script from System.Globalization.HijriCalendar
17696                     ticks1970: 62135596800000,
17697                     // number of days leading up to each month
17698                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
17699                     minDate: -42521673600000,
17700                     maxDate: 253402300799999,
17701                     // The number of days to add or subtract from the calendar to accommodate the variances
17702                     // in the start and the end of Ramadan and to accommodate the date difference between
17703                     // countries/regions. May be dynamically adjusted based on user preference, but should
17704                     // remain in the range of -2 to 2, inclusive.
17705                     hijriAdjustment: 0,
17706                     toGregorian: function(hyear, hmonth, hday) {
17707                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
17708                         // 86400000 = ticks per day
17709                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
17710                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
17711                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
17712                         // date in the current timezone.
17713                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
17714                         return gdate;
17715                     },
17716                     fromGregorian: function(gdate) {
17717                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
17718                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
17719                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
17720                         // very particular formula determined by someone smart, adapted from the server-side implementation.
17721                         // it approximates the hijri year.
17722                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
17723                             absDays = this.daysToYear(hyear),
17724                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
17725                         // hyear is just approximate, it may need adjustment up or down by 1.
17726                         if (daysSinceJan0101 < absDays) {
17727                             hyear--;
17728                             absDays -= daysInYear;
17729                         }
17730                         else if (daysSinceJan0101 === absDays) {
17731                             hyear--;
17732                             absDays = this.daysToYear(hyear);
17733                         }
17734                         else {
17735                             if (daysSinceJan0101 > (absDays + daysInYear)) {
17736                                 absDays += daysInYear;
17737                                 hyear++;
17738                             }
17739                         }
17740                         // determine month by looking at how many days into the hyear we are
17741                         // monthDays contains the number of days up to each month.
17742                         hmonth = 0;
17743                         var daysIntoYear = daysSinceJan0101 - absDays;
17744                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
17745                             hmonth++;
17746                         }
17747                         hmonth--;
17748                         hday = daysIntoYear - this.monthDays[hmonth];
17749                         return [hyear, hmonth, hday];
17750                     },
17751                     daysToYear: function(year) {
17752                         // calculates how many days since Jan 1, 0001
17753                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
17754                             yearsInto30 = year - yearsToYear30 - 1,
17755                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
17756                         while (yearsInto30 > 0) {
17757                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
17758                             yearsInto30--;
17759                         }
17760                         return days;
17761                     },
17762                     isLeapYear: function(year) {
17763                         return ((((year * 11) + 14) % 30) < 11);
17764                     }
17765                         }
17766                 },
17767                 UmAlQura: {
17768                         name: "UmAlQura",
17769                         firstDay: 6,
17770                         days: {
17771                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17772                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
17773                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
17774                         },
17775                         months: {
17776                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
17777                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
17778                         },
17779                         AM: ["ص","ص","ص"],
17780                         PM: ["م","م","م"],
17781                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
17782                         twoDigitYearMax: 1451,
17783                         patterns: {
17784                                 d: "dd/MM/yy",
17785                                 D: "dd/MMMM/yyyy",
17786                                 t: "hh:mm tt",
17787                                 T: "hh:mm:ss tt",
17788                                 f: "dd/MMMM/yyyy hh:mm tt",
17789                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
17790                                 M: "dd MMMM"
17791                         },
17792                         convert: {
17793                     _yearInfo: [
17794                         // MonthLengthFlags, Gregorian Date
17795                         [746, -2198707200000],
17796                         [1769, -2168121600000],
17797                         [3794, -2137449600000],
17798                         [3748, -2106777600000],
17799                         [3402, -2076192000000],
17800                         [2710, -2045606400000],
17801                         [1334, -2015020800000],
17802                         [2741, -1984435200000],
17803                         [3498, -1953763200000],
17804                         [2980, -1923091200000],
17805                         [2889, -1892505600000],
17806                         [2707, -1861920000000],
17807                         [1323, -1831334400000],
17808                         [2647, -1800748800000],
17809                         [1206, -1770076800000],
17810                         [2741, -1739491200000],
17811                         [1450, -1708819200000],
17812                         [3413, -1678233600000],
17813                         [3370, -1647561600000],
17814                         [2646, -1616976000000],
17815                         [1198, -1586390400000],
17816                         [2397, -1555804800000],
17817                         [748, -1525132800000],
17818                         [1749, -1494547200000],
17819                         [1706, -1463875200000],
17820                         [1365, -1433289600000],
17821                         [1195, -1402704000000],
17822                         [2395, -1372118400000],
17823                         [698, -1341446400000],
17824                         [1397, -1310860800000],
17825                         [2994, -1280188800000],
17826                         [1892, -1249516800000],
17827                         [1865, -1218931200000],
17828                         [1621, -1188345600000],
17829                         [683, -1157760000000],
17830                         [1371, -1127174400000],
17831                         [2778, -1096502400000],
17832                         [1748, -1065830400000],
17833                         [3785, -1035244800000],
17834                         [3474, -1004572800000],
17835                         [3365, -973987200000],
17836                         [2637, -943401600000],
17837                         [685, -912816000000],
17838                         [1389, -882230400000],
17839                         [2922, -851558400000],
17840                         [2898, -820886400000],
17841                         [2725, -790300800000],
17842                         [2635, -759715200000],
17843                         [1175, -729129600000],
17844                         [2359, -698544000000],
17845                         [694, -667872000000],
17846                         [1397, -637286400000],
17847                         [3434, -606614400000],
17848                         [3410, -575942400000],
17849                         [2710, -545356800000],
17850                         [2349, -514771200000],
17851                         [605, -484185600000],
17852                         [1245, -453600000000],
17853                         [2778, -422928000000],
17854                         [1492, -392256000000],
17855                         [3497, -361670400000],
17856                         [3410, -330998400000],
17857                         [2730, -300412800000],
17858                         [1238, -269827200000],
17859                         [2486, -239241600000],
17860                         [884, -208569600000],
17861                         [1897, -177984000000],
17862                         [1874, -147312000000],
17863                         [1701, -116726400000],
17864                         [1355, -86140800000],
17865                         [2731, -55555200000],
17866                         [1370, -24883200000],
17867                         [2773, 5702400000],
17868                         [3538, 36374400000],
17869                         [3492, 67046400000],
17870                         [3401, 97632000000],
17871                         [2709, 128217600000],
17872                         [1325, 158803200000],
17873                         [2653, 189388800000],
17874                         [1370, 220060800000],
17875                         [2773, 250646400000],
17876                         [1706, 281318400000],
17877                         [1685, 311904000000],
17878                         [1323, 342489600000],
17879                         [2647, 373075200000],
17880                         [1198, 403747200000],
17881                         [2422, 434332800000],
17882                         [1388, 465004800000],
17883                         [2901, 495590400000],
17884                         [2730, 526262400000],
17885                         [2645, 556848000000],
17886                         [1197, 587433600000],
17887                         [2397, 618019200000],
17888                         [730, 648691200000],
17889                         [1497, 679276800000],
17890                         [3506, 709948800000],
17891                         [2980, 740620800000],
17892                         [2890, 771206400000],
17893                         [2645, 801792000000],
17894                         [693, 832377600000],
17895                         [1397, 862963200000],
17896                         [2922, 893635200000],
17897                         [3026, 924307200000],
17898                         [3012, 954979200000],
17899                         [2953, 985564800000],
17900                         [2709, 1016150400000],
17901                         [1325, 1046736000000],
17902                         [1453, 1077321600000],
17903                         [2922, 1107993600000],
17904                         [1748, 1138665600000],
17905                         [3529, 1169251200000],
17906                         [3474, 1199923200000],
17907                         [2726, 1230508800000],
17908                         [2390, 1261094400000],
17909                         [686, 1291680000000],
17910                         [1389, 1322265600000],
17911                         [874, 1352937600000],
17912                         [2901, 1383523200000],
17913                         [2730, 1414195200000],
17914                         [2381, 1444780800000],
17915                         [1181, 1475366400000],
17916                         [2397, 1505952000000],
17917                         [698, 1536624000000],
17918                         [1461, 1567209600000],
17919                         [1450, 1597881600000],
17920                         [3413, 1628467200000],
17921                         [2714, 1659139200000],
17922                         [2350, 1689724800000],
17923                         [622, 1720310400000],
17924                         [1373, 1750896000000],
17925                         [2778, 1781568000000],
17926                         [1748, 1812240000000],
17927                         [1701, 1842825600000],
17928                         [0, 1873411200000]
17929                     ],
17930                     minDate: -2198707200000,
17931                     maxDate: 1873411199999,
17932                     toGregorian: function(hyear, hmonth, hday) {
17933                         var days = hday - 1,
17934                             gyear = hyear - 1318;
17935                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
17936                         var info = this._yearInfo[gyear],
17937                             gdate = new Date(info[1]),
17938                             monthLength = info[0];
17939                         // Date's ticks in javascript are always from the GMT time,
17940                         // but we are interested in the gregorian date in the same timezone,
17941                         // not what the gregorian date was at GMT time, so we adjust for the offset.
17942                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
17943                         for (var i = 0; i < hmonth; i++) {
17944                             days += 29 + (monthLength & 1);
17945                             monthLength = monthLength >> 1;
17946                         }
17947                         gdate.setDate(gdate.getDate() + days);
17948                         return gdate;
17949                     },
17950                     fromGregorian: function(gdate) {
17951                         // Date's ticks in javascript are always from the GMT time,
17952                         // but we are interested in the hijri date in the same timezone,
17953                         // not what the hijri date was at GMT time, so we adjust for the offset.
17954                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
17955                         if (ticks < this.minDate || ticks > this.maxDate) return null;
17956                         var hyear = 0,
17957                             hmonth = 1;
17958                         // find the earliest gregorian date in the array that is greater than or equal to the given date
17959                         while (ticks > this._yearInfo[++hyear][1]) { }
17960                         if (ticks !== this._yearInfo[hyear][1]) {
17961                             hyear--;
17962                         }
17963                         var info = this._yearInfo[hyear],
17964                             // how many days has it been since the date we found in the array?
17965                             // 86400000 = ticks per day
17966                             days = Math.floor((ticks - info[1]) / 86400000),
17967                             monthLength = info[0];
17968                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
17969                         // now increment day/month based on the total days, considering
17970                         // how many days are in each month. We cannot run past the year
17971                         // mark since we would have found a different array entry in that case.
17972                         var daysInMonth = 29 + (monthLength & 1);
17973                         while (days >= daysInMonth) {
17974                             days -= daysInMonth;
17975                             monthLength = monthLength >> 1;
17976                             daysInMonth = 29 + (monthLength & 1);
17977                             hmonth++;
17978                         }
17979                         // remaining days is less than is in one month, thus is the day of the month we landed on
17980                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
17981                         return [hyear, hmonth - 1, days + 1];
17982                     }
17983                         }
17984                 },
17985                 Gregorian_MiddleEastFrench: {
17986                         name: "Gregorian_MiddleEastFrench",
17987                         firstDay: 6,
17988                         days: {
17989                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
17990                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
17991                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
17992                         },
17993                         months: {
17994                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
17995                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
17996                         },
17997                         AM: ["ص","ص","ص"],
17998                         PM: ["م","م","م"],
17999                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
18000                         patterns: {
18001                                 d: "MM/dd/yyyy",
18002                                 t: "hh:mm tt",
18003                                 T: "hh:mm:ss tt",
18004                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
18005                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
18006                                 M: "dd MMMM"
18007                         }
18008                 },
18009                 Gregorian_Arabic: {
18010                         name: "Gregorian_Arabic",
18011                         firstDay: 6,
18012                         days: {
18013                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18014                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18015                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18016                         },
18017                         months: {
18018                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
18019                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
18020                         },
18021                         AM: ["ص","ص","ص"],
18022                         PM: ["م","م","م"],
18023                         eras: [{"name":"م","start":null,"offset":0}],
18024                         patterns: {
18025                                 d: "MM/dd/yyyy",
18026                                 t: "hh:mm tt",
18027                                 T: "hh:mm:ss tt",
18028                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
18029                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
18030                         }
18031                 },
18032                 Gregorian_TransliteratedFrench: {
18033                         name: "Gregorian_TransliteratedFrench",
18034                         firstDay: 6,
18035                         days: {
18036                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18037                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18038                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18039                         },
18040                         months: {
18041                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
18042                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
18043                         },
18044                         AM: ["ص","ص","ص"],
18045                         PM: ["م","م","م"],
18046                         eras: [{"name":"م","start":null,"offset":0}],
18047                         patterns: {
18048                                 d: "MM/dd/yyyy",
18049                                 t: "hh:mm tt",
18050                                 T: "hh:mm:ss tt",
18051                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
18052                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
18053                         }
18054                 }
18055         }
18056 });
18057
18058 Globalize.addCultureInfo( "en-JM", "default", {
18059         name: "en-JM",
18060         englishName: "English (Jamaica)",
18061         nativeName: "English (Jamaica)",
18062         numberFormat: {
18063                 currency: {
18064                         pattern: ["-$n","$n"],
18065                         symbol: "J$"
18066                 }
18067         },
18068         calendars: {
18069                 standard: {
18070                         patterns: {
18071                                 d: "dd/MM/yyyy",
18072                                 t: "hh:mm tt",
18073                                 T: "hh:mm:ss tt",
18074                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
18075                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
18076                         }
18077                 }
18078         }
18079 });
18080
18081 Globalize.addCultureInfo( "es-VE", "default", {
18082         name: "es-VE",
18083         englishName: "Spanish (Bolivarian Republic of Venezuela)",
18084         nativeName: "Español (Republica Bolivariana de Venezuela)",
18085         language: "es",
18086         numberFormat: {
18087                 ",": ".",
18088                 ".": ",",
18089                 NaN: "NeuN",
18090                 negativeInfinity: "-Infinito",
18091                 positiveInfinity: "Infinito",
18092                 percent: {
18093                         ",": ".",
18094                         ".": ","
18095                 },
18096                 currency: {
18097                         pattern: ["$ -n","$ n"],
18098                         ",": ".",
18099                         ".": ",",
18100                         symbol: "Bs. F."
18101                 }
18102         },
18103         calendars: {
18104                 standard: {
18105                         days: {
18106                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
18107                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
18108                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
18109                         },
18110                         months: {
18111                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
18112                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
18113                         },
18114                         AM: ["a.m.","a.m.","A.M."],
18115                         PM: ["p.m.","p.m.","P.M."],
18116                         eras: [{"name":"d.C.","start":null,"offset":0}],
18117                         patterns: {
18118                                 d: "dd/MM/yyyy",
18119                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
18120                                 t: "hh:mm tt",
18121                                 T: "hh:mm:ss tt",
18122                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
18123                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
18124                                 M: "dd MMMM",
18125                                 Y: "MMMM' de 'yyyy"
18126                         }
18127                 }
18128         }
18129 });
18130
18131 Globalize.addCultureInfo( "bs-Cyrl-BA", "default", {
18132         name: "bs-Cyrl-BA",
18133         englishName: "Bosnian (Cyrillic, Bosnia and Herzegovina)",
18134         nativeName: "босански (Босна и Херцеговина)",
18135         language: "bs-Cyrl",
18136         numberFormat: {
18137                 ",": ".",
18138                 ".": ",",
18139                 negativeInfinity: "-бесконачност",
18140                 positiveInfinity: "+бесконачност",
18141                 percent: {
18142                         ",": ".",
18143                         ".": ","
18144                 },
18145                 currency: {
18146                         pattern: ["-n $","n $"],
18147                         ",": ".",
18148                         ".": ",",
18149                         symbol: "КМ"
18150                 }
18151         },
18152         calendars: {
18153                 standard: {
18154                         "/": ".",
18155                         firstDay: 1,
18156                         days: {
18157                                 names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"],
18158                                 namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"],
18159                                 namesShort: ["н","п","у","с","ч","п","с"]
18160                         },
18161                         months: {
18162                                 names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""],
18163                                 namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""]
18164                         },
18165                         AM: null,
18166                         PM: null,
18167                         eras: [{"name":"н.е.","start":null,"offset":0}],
18168                         patterns: {
18169                                 d: "d.M.yyyy",
18170                                 D: "d. MMMM yyyy",
18171                                 t: "H:mm",
18172                                 T: "H:mm:ss",
18173                                 f: "d. MMMM yyyy H:mm",
18174                                 F: "d. MMMM yyyy H:mm:ss",
18175                                 M: "d. MMMM"
18176                         }
18177                 }
18178         }
18179 });
18180
18181 Globalize.addCultureInfo( "sms-FI", "default", {
18182         name: "sms-FI",
18183         englishName: "Sami, Skolt (Finland)",
18184         nativeName: "sääm´ǩiõll (Lää´ddjânnam)",
18185         language: "sms",
18186         numberFormat: {
18187                 ",": " ",
18188                 ".": ",",
18189                 percent: {
18190                         ",": " ",
18191                         ".": ","
18192                 },
18193                 currency: {
18194                         pattern: ["-n $","n $"],
18195                         ",": " ",
18196                         ".": ",",
18197                         symbol: "€"
18198                 }
18199         },
18200         calendars: {
18201                 standard: {
18202                         "/": ".",
18203                         firstDay: 1,
18204                         days: {
18205                                 names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"],
18206                                 namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"],
18207                                 namesShort: ["p","v","m","s","n","p","s"]
18208                         },
18209                         months: {
18210                                 names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""],
18211                                 namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""]
18212                         },
18213                         monthsGenitive: {
18214                                 names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""],
18215                                 namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""]
18216                         },
18217                         AM: null,
18218                         PM: null,
18219                         patterns: {
18220                                 d: "d.M.yyyy",
18221                                 D: "MMMM d'. p. 'yyyy",
18222                                 t: "H:mm",
18223                                 T: "H:mm:ss",
18224                                 f: "MMMM d'. p. 'yyyy H:mm",
18225                                 F: "MMMM d'. p. 'yyyy H:mm:ss",
18226                                 M: "MMMM d'. p. '",
18227                                 Y: "MMMM yyyy"
18228                         }
18229                 }
18230         }
18231 });
18232
18233 Globalize.addCultureInfo( "ar-YE", "default", {
18234         name: "ar-YE",
18235         englishName: "Arabic (Yemen)",
18236         nativeName: "العربية (اليمن)",
18237         language: "ar",
18238         isRTL: true,
18239         numberFormat: {
18240                 pattern: ["n-"],
18241                 NaN: "ليس برقم",
18242                 negativeInfinity: "-لا نهاية",
18243                 positiveInfinity: "+لا نهاية",
18244                 currency: {
18245                         pattern: ["$n-","$ n"],
18246                         symbol: "ر.ي.‏"
18247                 }
18248         },
18249         calendars: {
18250                 standard: {
18251                         firstDay: 6,
18252                         days: {
18253                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18254                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18255                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18256                         },
18257                         months: {
18258                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
18259                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
18260                         },
18261                         AM: ["ص","ص","ص"],
18262                         PM: ["م","م","م"],
18263                         patterns: {
18264                                 d: "dd/MM/yyyy",
18265                                 D: "dd MMMM, yyyy",
18266                                 t: "hh:mm tt",
18267                                 T: "hh:mm:ss tt",
18268                                 f: "dd MMMM, yyyy hh:mm tt",
18269                                 F: "dd MMMM, yyyy hh:mm:ss tt",
18270                                 M: "dd MMMM"
18271                         }
18272                 },
18273                 UmAlQura: {
18274                         name: "UmAlQura",
18275                         firstDay: 6,
18276                         days: {
18277                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18278                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18279                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18280                         },
18281                         months: {
18282                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
18283                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
18284                         },
18285                         AM: ["ص","ص","ص"],
18286                         PM: ["م","م","م"],
18287                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
18288                         twoDigitYearMax: 1451,
18289                         patterns: {
18290                                 d: "dd/MM/yy",
18291                                 D: "dd/MMMM/yyyy",
18292                                 t: "hh:mm tt",
18293                                 T: "hh:mm:ss tt",
18294                                 f: "dd/MMMM/yyyy hh:mm tt",
18295                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
18296                                 M: "dd MMMM"
18297                         },
18298                         convert: {
18299                     _yearInfo: [
18300                         // MonthLengthFlags, Gregorian Date
18301                         [746, -2198707200000],
18302                         [1769, -2168121600000],
18303                         [3794, -2137449600000],
18304                         [3748, -2106777600000],
18305                         [3402, -2076192000000],
18306                         [2710, -2045606400000],
18307                         [1334, -2015020800000],
18308                         [2741, -1984435200000],
18309                         [3498, -1953763200000],
18310                         [2980, -1923091200000],
18311                         [2889, -1892505600000],
18312                         [2707, -1861920000000],
18313                         [1323, -1831334400000],
18314                         [2647, -1800748800000],
18315                         [1206, -1770076800000],
18316                         [2741, -1739491200000],
18317                         [1450, -1708819200000],
18318                         [3413, -1678233600000],
18319                         [3370, -1647561600000],
18320                         [2646, -1616976000000],
18321                         [1198, -1586390400000],
18322                         [2397, -1555804800000],
18323                         [748, -1525132800000],
18324                         [1749, -1494547200000],
18325                         [1706, -1463875200000],
18326                         [1365, -1433289600000],
18327                         [1195, -1402704000000],
18328                         [2395, -1372118400000],
18329                         [698, -1341446400000],
18330                         [1397, -1310860800000],
18331                         [2994, -1280188800000],
18332                         [1892, -1249516800000],
18333                         [1865, -1218931200000],
18334                         [1621, -1188345600000],
18335                         [683, -1157760000000],
18336                         [1371, -1127174400000],
18337                         [2778, -1096502400000],
18338                         [1748, -1065830400000],
18339                         [3785, -1035244800000],
18340                         [3474, -1004572800000],
18341                         [3365, -973987200000],
18342                         [2637, -943401600000],
18343                         [685, -912816000000],
18344                         [1389, -882230400000],
18345                         [2922, -851558400000],
18346                         [2898, -820886400000],
18347                         [2725, -790300800000],
18348                         [2635, -759715200000],
18349                         [1175, -729129600000],
18350                         [2359, -698544000000],
18351                         [694, -667872000000],
18352                         [1397, -637286400000],
18353                         [3434, -606614400000],
18354                         [3410, -575942400000],
18355                         [2710, -545356800000],
18356                         [2349, -514771200000],
18357                         [605, -484185600000],
18358                         [1245, -453600000000],
18359                         [2778, -422928000000],
18360                         [1492, -392256000000],
18361                         [3497, -361670400000],
18362                         [3410, -330998400000],
18363                         [2730, -300412800000],
18364                         [1238, -269827200000],
18365                         [2486, -239241600000],
18366                         [884, -208569600000],
18367                         [1897, -177984000000],
18368                         [1874, -147312000000],
18369                         [1701, -116726400000],
18370                         [1355, -86140800000],
18371                         [2731, -55555200000],
18372                         [1370, -24883200000],
18373                         [2773, 5702400000],
18374                         [3538, 36374400000],
18375                         [3492, 67046400000],
18376                         [3401, 97632000000],
18377                         [2709, 128217600000],
18378                         [1325, 158803200000],
18379                         [2653, 189388800000],
18380                         [1370, 220060800000],
18381                         [2773, 250646400000],
18382                         [1706, 281318400000],
18383                         [1685, 311904000000],
18384                         [1323, 342489600000],
18385                         [2647, 373075200000],
18386                         [1198, 403747200000],
18387                         [2422, 434332800000],
18388                         [1388, 465004800000],
18389                         [2901, 495590400000],
18390                         [2730, 526262400000],
18391                         [2645, 556848000000],
18392                         [1197, 587433600000],
18393                         [2397, 618019200000],
18394                         [730, 648691200000],
18395                         [1497, 679276800000],
18396                         [3506, 709948800000],
18397                         [2980, 740620800000],
18398                         [2890, 771206400000],
18399                         [2645, 801792000000],
18400                         [693, 832377600000],
18401                         [1397, 862963200000],
18402                         [2922, 893635200000],
18403                         [3026, 924307200000],
18404                         [3012, 954979200000],
18405                         [2953, 985564800000],
18406                         [2709, 1016150400000],
18407                         [1325, 1046736000000],
18408                         [1453, 1077321600000],
18409                         [2922, 1107993600000],
18410                         [1748, 1138665600000],
18411                         [3529, 1169251200000],
18412                         [3474, 1199923200000],
18413                         [2726, 1230508800000],
18414                         [2390, 1261094400000],
18415                         [686, 1291680000000],
18416                         [1389, 1322265600000],
18417                         [874, 1352937600000],
18418                         [2901, 1383523200000],
18419                         [2730, 1414195200000],
18420                         [2381, 1444780800000],
18421                         [1181, 1475366400000],
18422                         [2397, 1505952000000],
18423                         [698, 1536624000000],
18424                         [1461, 1567209600000],
18425                         [1450, 1597881600000],
18426                         [3413, 1628467200000],
18427                         [2714, 1659139200000],
18428                         [2350, 1689724800000],
18429                         [622, 1720310400000],
18430                         [1373, 1750896000000],
18431                         [2778, 1781568000000],
18432                         [1748, 1812240000000],
18433                         [1701, 1842825600000],
18434                         [0, 1873411200000]
18435                     ],
18436                     minDate: -2198707200000,
18437                     maxDate: 1873411199999,
18438                     toGregorian: function(hyear, hmonth, hday) {
18439                         var days = hday - 1,
18440                             gyear = hyear - 1318;
18441                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
18442                         var info = this._yearInfo[gyear],
18443                             gdate = new Date(info[1]),
18444                             monthLength = info[0];
18445                         // Date's ticks in javascript are always from the GMT time,
18446                         // but we are interested in the gregorian date in the same timezone,
18447                         // not what the gregorian date was at GMT time, so we adjust for the offset.
18448                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
18449                         for (var i = 0; i < hmonth; i++) {
18450                             days += 29 + (monthLength & 1);
18451                             monthLength = monthLength >> 1;
18452                         }
18453                         gdate.setDate(gdate.getDate() + days);
18454                         return gdate;
18455                     },
18456                     fromGregorian: function(gdate) {
18457                         // Date's ticks in javascript are always from the GMT time,
18458                         // but we are interested in the hijri date in the same timezone,
18459                         // not what the hijri date was at GMT time, so we adjust for the offset.
18460                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
18461                         if (ticks < this.minDate || ticks > this.maxDate) return null;
18462                         var hyear = 0,
18463                             hmonth = 1;
18464                         // find the earliest gregorian date in the array that is greater than or equal to the given date
18465                         while (ticks > this._yearInfo[++hyear][1]) { }
18466                         if (ticks !== this._yearInfo[hyear][1]) {
18467                             hyear--;
18468                         }
18469                         var info = this._yearInfo[hyear],
18470                             // how many days has it been since the date we found in the array?
18471                             // 86400000 = ticks per day
18472                             days = Math.floor((ticks - info[1]) / 86400000),
18473                             monthLength = info[0];
18474                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
18475                         // now increment day/month based on the total days, considering
18476                         // how many days are in each month. We cannot run past the year
18477                         // mark since we would have found a different array entry in that case.
18478                         var daysInMonth = 29 + (monthLength & 1);
18479                         while (days >= daysInMonth) {
18480                             days -= daysInMonth;
18481                             monthLength = monthLength >> 1;
18482                             daysInMonth = 29 + (monthLength & 1);
18483                             hmonth++;
18484                         }
18485                         // remaining days is less than is in one month, thus is the day of the month we landed on
18486                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
18487                         return [hyear, hmonth - 1, days + 1];
18488                     }
18489                         }
18490                 },
18491                 Hijri: {
18492                         name: "Hijri",
18493                         firstDay: 6,
18494                         days: {
18495                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18496                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18497                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18498                         },
18499                         months: {
18500                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
18501                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
18502                         },
18503                         AM: ["ص","ص","ص"],
18504                         PM: ["م","م","م"],
18505                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
18506                         twoDigitYearMax: 1451,
18507                         patterns: {
18508                                 d: "dd/MM/yy",
18509                                 D: "dd/MM/yyyy",
18510                                 t: "hh:mm tt",
18511                                 T: "hh:mm:ss tt",
18512                                 f: "dd/MM/yyyy hh:mm tt",
18513                                 F: "dd/MM/yyyy hh:mm:ss tt",
18514                                 M: "dd MMMM"
18515                         },
18516                         convert: {
18517                     // Adapted to Script from System.Globalization.HijriCalendar
18518                     ticks1970: 62135596800000,
18519                     // number of days leading up to each month
18520                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
18521                     minDate: -42521673600000,
18522                     maxDate: 253402300799999,
18523                     // The number of days to add or subtract from the calendar to accommodate the variances
18524                     // in the start and the end of Ramadan and to accommodate the date difference between
18525                     // countries/regions. May be dynamically adjusted based on user preference, but should
18526                     // remain in the range of -2 to 2, inclusive.
18527                     hijriAdjustment: 0,
18528                     toGregorian: function(hyear, hmonth, hday) {
18529                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
18530                         // 86400000 = ticks per day
18531                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
18532                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
18533                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
18534                         // date in the current timezone.
18535                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
18536                         return gdate;
18537                     },
18538                     fromGregorian: function(gdate) {
18539                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
18540                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
18541                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
18542                         // very particular formula determined by someone smart, adapted from the server-side implementation.
18543                         // it approximates the hijri year.
18544                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
18545                             absDays = this.daysToYear(hyear),
18546                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
18547                         // hyear is just approximate, it may need adjustment up or down by 1.
18548                         if (daysSinceJan0101 < absDays) {
18549                             hyear--;
18550                             absDays -= daysInYear;
18551                         }
18552                         else if (daysSinceJan0101 === absDays) {
18553                             hyear--;
18554                             absDays = this.daysToYear(hyear);
18555                         }
18556                         else {
18557                             if (daysSinceJan0101 > (absDays + daysInYear)) {
18558                                 absDays += daysInYear;
18559                                 hyear++;
18560                             }
18561                         }
18562                         // determine month by looking at how many days into the hyear we are
18563                         // monthDays contains the number of days up to each month.
18564                         hmonth = 0;
18565                         var daysIntoYear = daysSinceJan0101 - absDays;
18566                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
18567                             hmonth++;
18568                         }
18569                         hmonth--;
18570                         hday = daysIntoYear - this.monthDays[hmonth];
18571                         return [hyear, hmonth, hday];
18572                     },
18573                     daysToYear: function(year) {
18574                         // calculates how many days since Jan 1, 0001
18575                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
18576                             yearsInto30 = year - yearsToYear30 - 1,
18577                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
18578                         while (yearsInto30 > 0) {
18579                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
18580                             yearsInto30--;
18581                         }
18582                         return days;
18583                     },
18584                     isLeapYear: function(year) {
18585                         return ((((year * 11) + 14) % 30) < 11);
18586                     }
18587                         }
18588                 },
18589                 Gregorian_MiddleEastFrench: {
18590                         name: "Gregorian_MiddleEastFrench",
18591                         firstDay: 6,
18592                         days: {
18593                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
18594                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
18595                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
18596                         },
18597                         months: {
18598                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
18599                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
18600                         },
18601                         AM: ["ص","ص","ص"],
18602                         PM: ["م","م","م"],
18603                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
18604                         patterns: {
18605                                 d: "MM/dd/yyyy",
18606                                 t: "hh:mm tt",
18607                                 T: "hh:mm:ss tt",
18608                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
18609                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
18610                                 M: "dd MMMM"
18611                         }
18612                 },
18613                 Gregorian_Arabic: {
18614                         name: "Gregorian_Arabic",
18615                         firstDay: 6,
18616                         days: {
18617                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18618                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18619                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18620                         },
18621                         months: {
18622                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
18623                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
18624                         },
18625                         AM: ["ص","ص","ص"],
18626                         PM: ["م","م","م"],
18627                         eras: [{"name":"م","start":null,"offset":0}],
18628                         patterns: {
18629                                 d: "MM/dd/yyyy",
18630                                 t: "hh:mm tt",
18631                                 T: "hh:mm:ss tt",
18632                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
18633                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
18634                         }
18635                 },
18636                 Gregorian_TransliteratedFrench: {
18637                         name: "Gregorian_TransliteratedFrench",
18638                         firstDay: 6,
18639                         days: {
18640                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18641                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18642                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18643                         },
18644                         months: {
18645                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
18646                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
18647                         },
18648                         AM: ["ص","ص","ص"],
18649                         PM: ["م","م","م"],
18650                         eras: [{"name":"م","start":null,"offset":0}],
18651                         patterns: {
18652                                 d: "MM/dd/yyyy",
18653                                 t: "hh:mm tt",
18654                                 T: "hh:mm:ss tt",
18655                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
18656                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
18657                         }
18658                 }
18659         }
18660 });
18661
18662 Globalize.addCultureInfo( "en-029", "default", {
18663         name: "en-029",
18664         englishName: "English (Caribbean)",
18665         nativeName: "English (Caribbean)",
18666         numberFormat: {
18667                 currency: {
18668                         pattern: ["-$n","$n"]
18669                 }
18670         },
18671         calendars: {
18672                 standard: {
18673                         firstDay: 1,
18674                         patterns: {
18675                                 d: "MM/dd/yyyy"
18676                         }
18677                 }
18678         }
18679 });
18680
18681 Globalize.addCultureInfo( "es-CO", "default", {
18682         name: "es-CO",
18683         englishName: "Spanish (Colombia)",
18684         nativeName: "Español (Colombia)",
18685         language: "es",
18686         numberFormat: {
18687                 ",": ".",
18688                 ".": ",",
18689                 NaN: "NeuN",
18690                 negativeInfinity: "-Infinito",
18691                 positiveInfinity: "Infinito",
18692                 percent: {
18693                         ",": ".",
18694                         ".": ","
18695                 },
18696                 currency: {
18697                         pattern: ["($ n)","$ n"],
18698                         ",": ".",
18699                         ".": ","
18700                 }
18701         },
18702         calendars: {
18703                 standard: {
18704                         days: {
18705                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
18706                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
18707                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
18708                         },
18709                         months: {
18710                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
18711                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
18712                         },
18713                         AM: ["a.m.","a.m.","A.M."],
18714                         PM: ["p.m.","p.m.","P.M."],
18715                         eras: [{"name":"d.C.","start":null,"offset":0}],
18716                         patterns: {
18717                                 d: "dd/MM/yyyy",
18718                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
18719                                 t: "hh:mm tt",
18720                                 T: "hh:mm:ss tt",
18721                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
18722                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
18723                                 M: "dd MMMM",
18724                                 Y: "MMMM' de 'yyyy"
18725                         }
18726                 }
18727         }
18728 });
18729
18730 Globalize.addCultureInfo( "sr-Latn-RS", "default", {
18731         name: "sr-Latn-RS",
18732         englishName: "Serbian (Latin, Serbia)",
18733         nativeName: "srpski (Srbija)",
18734         language: "sr-Latn",
18735         numberFormat: {
18736                 ",": ".",
18737                 ".": ",",
18738                 negativeInfinity: "-beskonačnost",
18739                 positiveInfinity: "+beskonačnost",
18740                 percent: {
18741                         pattern: ["-n%","n%"],
18742                         ",": ".",
18743                         ".": ","
18744                 },
18745                 currency: {
18746                         pattern: ["-n $","n $"],
18747                         ",": ".",
18748                         ".": ",",
18749                         symbol: "Din."
18750                 }
18751         },
18752         calendars: {
18753                 standard: {
18754                         "/": ".",
18755                         firstDay: 1,
18756                         days: {
18757                                 names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],
18758                                 namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"],
18759                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
18760                         },
18761                         months: {
18762                                 names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""],
18763                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
18764                         },
18765                         AM: null,
18766                         PM: null,
18767                         eras: [{"name":"n.e.","start":null,"offset":0}],
18768                         patterns: {
18769                                 d: "d.M.yyyy",
18770                                 D: "d. MMMM yyyy",
18771                                 t: "H:mm",
18772                                 T: "H:mm:ss",
18773                                 f: "d. MMMM yyyy H:mm",
18774                                 F: "d. MMMM yyyy H:mm:ss",
18775                                 M: "d. MMMM",
18776                                 Y: "MMMM yyyy"
18777                         }
18778                 }
18779         }
18780 });
18781
18782 Globalize.addCultureInfo( "smn-FI", "default", {
18783         name: "smn-FI",
18784         englishName: "Sami, Inari (Finland)",
18785         nativeName: "sämikielâ (Suomâ)",
18786         language: "smn",
18787         numberFormat: {
18788                 ",": " ",
18789                 ".": ",",
18790                 percent: {
18791                         ",": " ",
18792                         ".": ","
18793                 },
18794                 currency: {
18795                         pattern: ["-n $","n $"],
18796                         ",": " ",
18797                         ".": ",",
18798                         symbol: "€"
18799                 }
18800         },
18801         calendars: {
18802                 standard: {
18803                         "/": ".",
18804                         firstDay: 1,
18805                         days: {
18806                                 names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"],
18807                                 namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"],
18808                                 namesShort: ["p","v","m","k","t","v","l"]
18809                         },
18810                         months: {
18811                                 names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""],
18812                                 namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""]
18813                         },
18814                         AM: null,
18815                         PM: null,
18816                         patterns: {
18817                                 d: "d.M.yyyy",
18818                                 D: "MMMM d'. p. 'yyyy",
18819                                 t: "H:mm",
18820                                 T: "H:mm:ss",
18821                                 f: "MMMM d'. p. 'yyyy H:mm",
18822                                 F: "MMMM d'. p. 'yyyy H:mm:ss",
18823                                 M: "MMMM d'. p. '",
18824                                 Y: "MMMM yyyy"
18825                         }
18826                 }
18827         }
18828 });
18829
18830 Globalize.addCultureInfo( "ar-SY", "default", {
18831         name: "ar-SY",
18832         englishName: "Arabic (Syria)",
18833         nativeName: "العربية (سوريا)",
18834         language: "ar",
18835         isRTL: true,
18836         numberFormat: {
18837                 pattern: ["n-"],
18838                 NaN: "ليس برقم",
18839                 negativeInfinity: "-لا نهاية",
18840                 positiveInfinity: "+لا نهاية",
18841                 currency: {
18842                         pattern: ["$n-","$ n"],
18843                         symbol: "ل.س.‏"
18844                 }
18845         },
18846         calendars: {
18847                 standard: {
18848                         firstDay: 6,
18849                         days: {
18850                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18851                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18852                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18853                         },
18854                         months: {
18855                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
18856                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
18857                         },
18858                         AM: ["ص","ص","ص"],
18859                         PM: ["م","م","م"],
18860                         patterns: {
18861                                 d: "dd/MM/yyyy",
18862                                 D: "dd MMMM, yyyy",
18863                                 t: "hh:mm tt",
18864                                 T: "hh:mm:ss tt",
18865                                 f: "dd MMMM, yyyy hh:mm tt",
18866                                 F: "dd MMMM, yyyy hh:mm:ss tt",
18867                                 M: "dd MMMM"
18868                         }
18869                 },
18870                 UmAlQura: {
18871                         name: "UmAlQura",
18872                         firstDay: 6,
18873                         days: {
18874                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18875                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
18876                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
18877                         },
18878                         months: {
18879                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
18880                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
18881                         },
18882                         AM: ["ص","ص","ص"],
18883                         PM: ["م","م","م"],
18884                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
18885                         twoDigitYearMax: 1451,
18886                         patterns: {
18887                                 d: "dd/MM/yy",
18888                                 D: "dd/MMMM/yyyy",
18889                                 t: "hh:mm tt",
18890                                 T: "hh:mm:ss tt",
18891                                 f: "dd/MMMM/yyyy hh:mm tt",
18892                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
18893                                 M: "dd MMMM"
18894                         },
18895                         convert: {
18896                     _yearInfo: [
18897                         // MonthLengthFlags, Gregorian Date
18898                         [746, -2198707200000],
18899                         [1769, -2168121600000],
18900                         [3794, -2137449600000],
18901                         [3748, -2106777600000],
18902                         [3402, -2076192000000],
18903                         [2710, -2045606400000],
18904                         [1334, -2015020800000],
18905                         [2741, -1984435200000],
18906                         [3498, -1953763200000],
18907                         [2980, -1923091200000],
18908                         [2889, -1892505600000],
18909                         [2707, -1861920000000],
18910                         [1323, -1831334400000],
18911                         [2647, -1800748800000],
18912                         [1206, -1770076800000],
18913                         [2741, -1739491200000],
18914                         [1450, -1708819200000],
18915                         [3413, -1678233600000],
18916                         [3370, -1647561600000],
18917                         [2646, -1616976000000],
18918                         [1198, -1586390400000],
18919                         [2397, -1555804800000],
18920                         [748, -1525132800000],
18921                         [1749, -1494547200000],
18922                         [1706, -1463875200000],
18923                         [1365, -1433289600000],
18924                         [1195, -1402704000000],
18925                         [2395, -1372118400000],
18926                         [698, -1341446400000],
18927                         [1397, -1310860800000],
18928                         [2994, -1280188800000],
18929                         [1892, -1249516800000],
18930                         [1865, -1218931200000],
18931                         [1621, -1188345600000],
18932                         [683, -1157760000000],
18933                         [1371, -1127174400000],
18934                         [2778, -1096502400000],
18935                         [1748, -1065830400000],
18936                         [3785, -1035244800000],
18937                         [3474, -1004572800000],
18938                         [3365, -973987200000],
18939                         [2637, -943401600000],
18940                         [685, -912816000000],
18941                         [1389, -882230400000],
18942                         [2922, -851558400000],
18943                         [2898, -820886400000],
18944                         [2725, -790300800000],
18945                         [2635, -759715200000],
18946                         [1175, -729129600000],
18947                         [2359, -698544000000],
18948                         [694, -667872000000],
18949                         [1397, -637286400000],
18950                         [3434, -606614400000],
18951                         [3410, -575942400000],
18952                         [2710, -545356800000],
18953                         [2349, -514771200000],
18954                         [605, -484185600000],
18955                         [1245, -453600000000],
18956                         [2778, -422928000000],
18957                         [1492, -392256000000],
18958                         [3497, -361670400000],
18959                         [3410, -330998400000],
18960                         [2730, -300412800000],
18961                         [1238, -269827200000],
18962                         [2486, -239241600000],
18963                         [884, -208569600000],
18964                         [1897, -177984000000],
18965                         [1874, -147312000000],
18966                         [1701, -116726400000],
18967                         [1355, -86140800000],
18968                         [2731, -55555200000],
18969                         [1370, -24883200000],
18970                         [2773, 5702400000],
18971                         [3538, 36374400000],
18972                         [3492, 67046400000],
18973                         [3401, 97632000000],
18974                         [2709, 128217600000],
18975                         [1325, 158803200000],
18976                         [2653, 189388800000],
18977                         [1370, 220060800000],
18978                         [2773, 250646400000],
18979                         [1706, 281318400000],
18980                         [1685, 311904000000],
18981                         [1323, 342489600000],
18982                         [2647, 373075200000],
18983                         [1198, 403747200000],
18984                         [2422, 434332800000],
18985                         [1388, 465004800000],
18986                         [2901, 495590400000],
18987                         [2730, 526262400000],
18988                         [2645, 556848000000],
18989                         [1197, 587433600000],
18990                         [2397, 618019200000],
18991                         [730, 648691200000],
18992                         [1497, 679276800000],
18993                         [3506, 709948800000],
18994                         [2980, 740620800000],
18995                         [2890, 771206400000],
18996                         [2645, 801792000000],
18997                         [693, 832377600000],
18998                         [1397, 862963200000],
18999                         [2922, 893635200000],
19000                         [3026, 924307200000],
19001                         [3012, 954979200000],
19002                         [2953, 985564800000],
19003                         [2709, 1016150400000],
19004                         [1325, 1046736000000],
19005                         [1453, 1077321600000],
19006                         [2922, 1107993600000],
19007                         [1748, 1138665600000],
19008                         [3529, 1169251200000],
19009                         [3474, 1199923200000],
19010                         [2726, 1230508800000],
19011                         [2390, 1261094400000],
19012                         [686, 1291680000000],
19013                         [1389, 1322265600000],
19014                         [874, 1352937600000],
19015                         [2901, 1383523200000],
19016                         [2730, 1414195200000],
19017                         [2381, 1444780800000],
19018                         [1181, 1475366400000],
19019                         [2397, 1505952000000],
19020                         [698, 1536624000000],
19021                         [1461, 1567209600000],
19022                         [1450, 1597881600000],
19023                         [3413, 1628467200000],
19024                         [2714, 1659139200000],
19025                         [2350, 1689724800000],
19026                         [622, 1720310400000],
19027                         [1373, 1750896000000],
19028                         [2778, 1781568000000],
19029                         [1748, 1812240000000],
19030                         [1701, 1842825600000],
19031                         [0, 1873411200000]
19032                     ],
19033                     minDate: -2198707200000,
19034                     maxDate: 1873411199999,
19035                     toGregorian: function(hyear, hmonth, hday) {
19036                         var days = hday - 1,
19037                             gyear = hyear - 1318;
19038                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
19039                         var info = this._yearInfo[gyear],
19040                             gdate = new Date(info[1]),
19041                             monthLength = info[0];
19042                         // Date's ticks in javascript are always from the GMT time,
19043                         // but we are interested in the gregorian date in the same timezone,
19044                         // not what the gregorian date was at GMT time, so we adjust for the offset.
19045                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
19046                         for (var i = 0; i < hmonth; i++) {
19047                             days += 29 + (monthLength & 1);
19048                             monthLength = monthLength >> 1;
19049                         }
19050                         gdate.setDate(gdate.getDate() + days);
19051                         return gdate;
19052                     },
19053                     fromGregorian: function(gdate) {
19054                         // Date's ticks in javascript are always from the GMT time,
19055                         // but we are interested in the hijri date in the same timezone,
19056                         // not what the hijri date was at GMT time, so we adjust for the offset.
19057                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
19058                         if (ticks < this.minDate || ticks > this.maxDate) return null;
19059                         var hyear = 0,
19060                             hmonth = 1;
19061                         // find the earliest gregorian date in the array that is greater than or equal to the given date
19062                         while (ticks > this._yearInfo[++hyear][1]) { }
19063                         if (ticks !== this._yearInfo[hyear][1]) {
19064                             hyear--;
19065                         }
19066                         var info = this._yearInfo[hyear],
19067                             // how many days has it been since the date we found in the array?
19068                             // 86400000 = ticks per day
19069                             days = Math.floor((ticks - info[1]) / 86400000),
19070                             monthLength = info[0];
19071                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
19072                         // now increment day/month based on the total days, considering
19073                         // how many days are in each month. We cannot run past the year
19074                         // mark since we would have found a different array entry in that case.
19075                         var daysInMonth = 29 + (monthLength & 1);
19076                         while (days >= daysInMonth) {
19077                             days -= daysInMonth;
19078                             monthLength = monthLength >> 1;
19079                             daysInMonth = 29 + (monthLength & 1);
19080                             hmonth++;
19081                         }
19082                         // remaining days is less than is in one month, thus is the day of the month we landed on
19083                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
19084                         return [hyear, hmonth - 1, days + 1];
19085                     }
19086                         }
19087                 },
19088                 Hijri: {
19089                         name: "Hijri",
19090                         firstDay: 6,
19091                         days: {
19092                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19093                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19094                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
19095                         },
19096                         months: {
19097                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
19098                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
19099                         },
19100                         AM: ["ص","ص","ص"],
19101                         PM: ["م","م","م"],
19102                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
19103                         twoDigitYearMax: 1451,
19104                         patterns: {
19105                                 d: "dd/MM/yy",
19106                                 D: "dd/MM/yyyy",
19107                                 t: "hh:mm tt",
19108                                 T: "hh:mm:ss tt",
19109                                 f: "dd/MM/yyyy hh:mm tt",
19110                                 F: "dd/MM/yyyy hh:mm:ss tt",
19111                                 M: "dd MMMM"
19112                         },
19113                         convert: {
19114                     // Adapted to Script from System.Globalization.HijriCalendar
19115                     ticks1970: 62135596800000,
19116                     // number of days leading up to each month
19117                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
19118                     minDate: -42521673600000,
19119                     maxDate: 253402300799999,
19120                     // The number of days to add or subtract from the calendar to accommodate the variances
19121                     // in the start and the end of Ramadan and to accommodate the date difference between
19122                     // countries/regions. May be dynamically adjusted based on user preference, but should
19123                     // remain in the range of -2 to 2, inclusive.
19124                     hijriAdjustment: 0,
19125                     toGregorian: function(hyear, hmonth, hday) {
19126                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
19127                         // 86400000 = ticks per day
19128                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
19129                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
19130                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
19131                         // date in the current timezone.
19132                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
19133                         return gdate;
19134                     },
19135                     fromGregorian: function(gdate) {
19136                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
19137                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
19138                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
19139                         // very particular formula determined by someone smart, adapted from the server-side implementation.
19140                         // it approximates the hijri year.
19141                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
19142                             absDays = this.daysToYear(hyear),
19143                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
19144                         // hyear is just approximate, it may need adjustment up or down by 1.
19145                         if (daysSinceJan0101 < absDays) {
19146                             hyear--;
19147                             absDays -= daysInYear;
19148                         }
19149                         else if (daysSinceJan0101 === absDays) {
19150                             hyear--;
19151                             absDays = this.daysToYear(hyear);
19152                         }
19153                         else {
19154                             if (daysSinceJan0101 > (absDays + daysInYear)) {
19155                                 absDays += daysInYear;
19156                                 hyear++;
19157                             }
19158                         }
19159                         // determine month by looking at how many days into the hyear we are
19160                         // monthDays contains the number of days up to each month.
19161                         hmonth = 0;
19162                         var daysIntoYear = daysSinceJan0101 - absDays;
19163                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
19164                             hmonth++;
19165                         }
19166                         hmonth--;
19167                         hday = daysIntoYear - this.monthDays[hmonth];
19168                         return [hyear, hmonth, hday];
19169                     },
19170                     daysToYear: function(year) {
19171                         // calculates how many days since Jan 1, 0001
19172                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
19173                             yearsInto30 = year - yearsToYear30 - 1,
19174                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
19175                         while (yearsInto30 > 0) {
19176                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
19177                             yearsInto30--;
19178                         }
19179                         return days;
19180                     },
19181                     isLeapYear: function(year) {
19182                         return ((((year * 11) + 14) % 30) < 11);
19183                     }
19184                         }
19185                 },
19186                 Gregorian_MiddleEastFrench: {
19187                         name: "Gregorian_MiddleEastFrench",
19188                         firstDay: 6,
19189                         days: {
19190                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
19191                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
19192                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
19193                         },
19194                         months: {
19195                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
19196                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
19197                         },
19198                         AM: ["ص","ص","ص"],
19199                         PM: ["م","م","م"],
19200                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
19201                         patterns: {
19202                                 d: "MM/dd/yyyy",
19203                                 t: "hh:mm tt",
19204                                 T: "hh:mm:ss tt",
19205                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
19206                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
19207                                 M: "dd MMMM"
19208                         }
19209                 },
19210                 Gregorian_TransliteratedEnglish: {
19211                         name: "Gregorian_TransliteratedEnglish",
19212                         firstDay: 6,
19213                         days: {
19214                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19215                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19216                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
19217                         },
19218                         months: {
19219                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
19220                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
19221                         },
19222                         AM: ["ص","ص","ص"],
19223                         PM: ["م","م","م"],
19224                         eras: [{"name":"م","start":null,"offset":0}],
19225                         patterns: {
19226                                 d: "MM/dd/yyyy",
19227                                 t: "hh:mm tt",
19228                                 T: "hh:mm:ss tt",
19229                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
19230                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
19231                         }
19232                 },
19233                 Gregorian_TransliteratedFrench: {
19234                         name: "Gregorian_TransliteratedFrench",
19235                         firstDay: 6,
19236                         days: {
19237                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19238                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19239                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
19240                         },
19241                         months: {
19242                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
19243                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
19244                         },
19245                         AM: ["ص","ص","ص"],
19246                         PM: ["م","م","م"],
19247                         eras: [{"name":"م","start":null,"offset":0}],
19248                         patterns: {
19249                                 d: "MM/dd/yyyy",
19250                                 t: "hh:mm tt",
19251                                 T: "hh:mm:ss tt",
19252                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
19253                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
19254                         }
19255                 }
19256         }
19257 });
19258
19259 Globalize.addCultureInfo( "en-BZ", "default", {
19260         name: "en-BZ",
19261         englishName: "English (Belize)",
19262         nativeName: "English (Belize)",
19263         numberFormat: {
19264                 currency: {
19265                         groupSizes: [3,0],
19266                         symbol: "BZ$"
19267                 }
19268         },
19269         calendars: {
19270                 standard: {
19271                         patterns: {
19272                                 d: "dd/MM/yyyy",
19273                                 D: "dddd, dd MMMM yyyy",
19274                                 t: "hh:mm tt",
19275                                 T: "hh:mm:ss tt",
19276                                 f: "dddd, dd MMMM yyyy hh:mm tt",
19277                                 F: "dddd, dd MMMM yyyy hh:mm:ss tt",
19278                                 M: "dd MMMM",
19279                                 Y: "MMMM yyyy"
19280                         }
19281                 }
19282         }
19283 });
19284
19285 Globalize.addCultureInfo( "es-PE", "default", {
19286         name: "es-PE",
19287         englishName: "Spanish (Peru)",
19288         nativeName: "Español (Perú)",
19289         language: "es",
19290         numberFormat: {
19291                 NaN: "NeuN",
19292                 negativeInfinity: "-Infinito",
19293                 positiveInfinity: "Infinito",
19294                 currency: {
19295                         pattern: ["$ -n","$ n"],
19296                         symbol: "S/."
19297                 }
19298         },
19299         calendars: {
19300                 standard: {
19301                         days: {
19302                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
19303                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
19304                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
19305                         },
19306                         months: {
19307                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
19308                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
19309                         },
19310                         AM: ["a.m.","a.m.","A.M."],
19311                         PM: ["p.m.","p.m.","P.M."],
19312                         eras: [{"name":"d.C.","start":null,"offset":0}],
19313                         patterns: {
19314                                 d: "dd/MM/yyyy",
19315                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
19316                                 t: "hh:mm tt",
19317                                 T: "hh:mm:ss tt",
19318                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
19319                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
19320                                 M: "dd MMMM",
19321                                 Y: "MMMM' de 'yyyy"
19322                         }
19323                 }
19324         }
19325 });
19326
19327 Globalize.addCultureInfo( "sr-Cyrl-RS", "default", {
19328         name: "sr-Cyrl-RS",
19329         englishName: "Serbian (Cyrillic, Serbia)",
19330         nativeName: "српски (Србија)",
19331         language: "sr-Cyrl",
19332         numberFormat: {
19333                 ",": ".",
19334                 ".": ",",
19335                 negativeInfinity: "-бесконачност",
19336                 positiveInfinity: "+бесконачност",
19337                 percent: {
19338                         pattern: ["-n%","n%"],
19339                         ",": ".",
19340                         ".": ","
19341                 },
19342                 currency: {
19343                         pattern: ["-n $","n $"],
19344                         ",": ".",
19345                         ".": ",",
19346                         symbol: "Дин."
19347                 }
19348         },
19349         calendars: {
19350                 standard: {
19351                         "/": ".",
19352                         firstDay: 1,
19353                         days: {
19354                                 names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"],
19355                                 namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"],
19356                                 namesShort: ["не","по","ут","ср","че","пе","су"]
19357                         },
19358                         months: {
19359                                 names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""],
19360                                 namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""]
19361                         },
19362                         AM: null,
19363                         PM: null,
19364                         eras: [{"name":"н.е.","start":null,"offset":0}],
19365                         patterns: {
19366                                 d: "d.M.yyyy",
19367                                 D: "d. MMMM yyyy",
19368                                 t: "H:mm",
19369                                 T: "H:mm:ss",
19370                                 f: "d. MMMM yyyy H:mm",
19371                                 F: "d. MMMM yyyy H:mm:ss",
19372                                 M: "d. MMMM",
19373                                 Y: "MMMM yyyy"
19374                         }
19375                 }
19376         }
19377 });
19378
19379 Globalize.addCultureInfo( "ar-JO", "default", {
19380         name: "ar-JO",
19381         englishName: "Arabic (Jordan)",
19382         nativeName: "العربية (الأردن)",
19383         language: "ar",
19384         isRTL: true,
19385         numberFormat: {
19386                 pattern: ["n-"],
19387                 decimals: 3,
19388                 NaN: "ليس برقم",
19389                 negativeInfinity: "-لا نهاية",
19390                 positiveInfinity: "+لا نهاية",
19391                 percent: {
19392                         decimals: 3
19393                 },
19394                 currency: {
19395                         pattern: ["$n-","$ n"],
19396                         decimals: 3,
19397                         symbol: "د.ا.‏"
19398                 }
19399         },
19400         calendars: {
19401                 standard: {
19402                         firstDay: 6,
19403                         days: {
19404                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19405                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19406                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
19407                         },
19408                         months: {
19409                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
19410                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
19411                         },
19412                         AM: ["ص","ص","ص"],
19413                         PM: ["م","م","م"],
19414                         patterns: {
19415                                 d: "dd/MM/yyyy",
19416                                 D: "dd MMMM, yyyy",
19417                                 t: "hh:mm tt",
19418                                 T: "hh:mm:ss tt",
19419                                 f: "dd MMMM, yyyy hh:mm tt",
19420                                 F: "dd MMMM, yyyy hh:mm:ss tt",
19421                                 M: "dd MMMM"
19422                         }
19423                 },
19424                 UmAlQura: {
19425                         name: "UmAlQura",
19426                         firstDay: 6,
19427                         days: {
19428                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19429                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19430                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
19431                         },
19432                         months: {
19433                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
19434                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
19435                         },
19436                         AM: ["ص","ص","ص"],
19437                         PM: ["م","م","م"],
19438                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
19439                         twoDigitYearMax: 1451,
19440                         patterns: {
19441                                 d: "dd/MM/yy",
19442                                 D: "dd/MMMM/yyyy",
19443                                 t: "hh:mm tt",
19444                                 T: "hh:mm:ss tt",
19445                                 f: "dd/MMMM/yyyy hh:mm tt",
19446                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
19447                                 M: "dd MMMM"
19448                         },
19449                         convert: {
19450                     _yearInfo: [
19451                         // MonthLengthFlags, Gregorian Date
19452                         [746, -2198707200000],
19453                         [1769, -2168121600000],
19454                         [3794, -2137449600000],
19455                         [3748, -2106777600000],
19456                         [3402, -2076192000000],
19457                         [2710, -2045606400000],
19458                         [1334, -2015020800000],
19459                         [2741, -1984435200000],
19460                         [3498, -1953763200000],
19461                         [2980, -1923091200000],
19462                         [2889, -1892505600000],
19463                         [2707, -1861920000000],
19464                         [1323, -1831334400000],
19465                         [2647, -1800748800000],
19466                         [1206, -1770076800000],
19467                         [2741, -1739491200000],
19468                         [1450, -1708819200000],
19469                         [3413, -1678233600000],
19470                         [3370, -1647561600000],
19471                         [2646, -1616976000000],
19472                         [1198, -1586390400000],
19473                         [2397, -1555804800000],
19474                         [748, -1525132800000],
19475                         [1749, -1494547200000],
19476                         [1706, -1463875200000],
19477                         [1365, -1433289600000],
19478                         [1195, -1402704000000],
19479                         [2395, -1372118400000],
19480                         [698, -1341446400000],
19481                         [1397, -1310860800000],
19482                         [2994, -1280188800000],
19483                         [1892, -1249516800000],
19484                         [1865, -1218931200000],
19485                         [1621, -1188345600000],
19486                         [683, -1157760000000],
19487                         [1371, -1127174400000],
19488                         [2778, -1096502400000],
19489                         [1748, -1065830400000],
19490                         [3785, -1035244800000],
19491                         [3474, -1004572800000],
19492                         [3365, -973987200000],
19493                         [2637, -943401600000],
19494                         [685, -912816000000],
19495                         [1389, -882230400000],
19496                         [2922, -851558400000],
19497                         [2898, -820886400000],
19498                         [2725, -790300800000],
19499                         [2635, -759715200000],
19500                         [1175, -729129600000],
19501                         [2359, -698544000000],
19502                         [694, -667872000000],
19503                         [1397, -637286400000],
19504                         [3434, -606614400000],
19505                         [3410, -575942400000],
19506                         [2710, -545356800000],
19507                         [2349, -514771200000],
19508                         [605, -484185600000],
19509                         [1245, -453600000000],
19510                         [2778, -422928000000],
19511                         [1492, -392256000000],
19512                         [3497, -361670400000],
19513                         [3410, -330998400000],
19514                         [2730, -300412800000],
19515                         [1238, -269827200000],
19516                         [2486, -239241600000],
19517                         [884, -208569600000],
19518                         [1897, -177984000000],
19519                         [1874, -147312000000],
19520                         [1701, -116726400000],
19521                         [1355, -86140800000],
19522                         [2731, -55555200000],
19523                         [1370, -24883200000],
19524                         [2773, 5702400000],
19525                         [3538, 36374400000],
19526                         [3492, 67046400000],
19527                         [3401, 97632000000],
19528                         [2709, 128217600000],
19529                         [1325, 158803200000],
19530                         [2653, 189388800000],
19531                         [1370, 220060800000],
19532                         [2773, 250646400000],
19533                         [1706, 281318400000],
19534                         [1685, 311904000000],
19535                         [1323, 342489600000],
19536                         [2647, 373075200000],
19537                         [1198, 403747200000],
19538                         [2422, 434332800000],
19539                         [1388, 465004800000],
19540                         [2901, 495590400000],
19541                         [2730, 526262400000],
19542                         [2645, 556848000000],
19543                         [1197, 587433600000],
19544                         [2397, 618019200000],
19545                         [730, 648691200000],
19546                         [1497, 679276800000],
19547                         [3506, 709948800000],
19548                         [2980, 740620800000],
19549                         [2890, 771206400000],
19550                         [2645, 801792000000],
19551                         [693, 832377600000],
19552                         [1397, 862963200000],
19553                         [2922, 893635200000],
19554                         [3026, 924307200000],
19555                         [3012, 954979200000],
19556                         [2953, 985564800000],
19557                         [2709, 1016150400000],
19558                         [1325, 1046736000000],
19559                         [1453, 1077321600000],
19560                         [2922, 1107993600000],
19561                         [1748, 1138665600000],
19562                         [3529, 1169251200000],
19563                         [3474, 1199923200000],
19564                         [2726, 1230508800000],
19565                         [2390, 1261094400000],
19566                         [686, 1291680000000],
19567                         [1389, 1322265600000],
19568                         [874, 1352937600000],
19569                         [2901, 1383523200000],
19570                         [2730, 1414195200000],
19571                         [2381, 1444780800000],
19572                         [1181, 1475366400000],
19573                         [2397, 1505952000000],
19574                         [698, 1536624000000],
19575                         [1461, 1567209600000],
19576                         [1450, 1597881600000],
19577                         [3413, 1628467200000],
19578                         [2714, 1659139200000],
19579                         [2350, 1689724800000],
19580                         [622, 1720310400000],
19581                         [1373, 1750896000000],
19582                         [2778, 1781568000000],
19583                         [1748, 1812240000000],
19584                         [1701, 1842825600000],
19585                         [0, 1873411200000]
19586                     ],
19587                     minDate: -2198707200000,
19588                     maxDate: 1873411199999,
19589                     toGregorian: function(hyear, hmonth, hday) {
19590                         var days = hday - 1,
19591                             gyear = hyear - 1318;
19592                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
19593                         var info = this._yearInfo[gyear],
19594                             gdate = new Date(info[1]),
19595                             monthLength = info[0];
19596                         // Date's ticks in javascript are always from the GMT time,
19597                         // but we are interested in the gregorian date in the same timezone,
19598                         // not what the gregorian date was at GMT time, so we adjust for the offset.
19599                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
19600                         for (var i = 0; i < hmonth; i++) {
19601                             days += 29 + (monthLength & 1);
19602                             monthLength = monthLength >> 1;
19603                         }
19604                         gdate.setDate(gdate.getDate() + days);
19605                         return gdate;
19606                     },
19607                     fromGregorian: function(gdate) {
19608                         // Date's ticks in javascript are always from the GMT time,
19609                         // but we are interested in the hijri date in the same timezone,
19610                         // not what the hijri date was at GMT time, so we adjust for the offset.
19611                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
19612                         if (ticks < this.minDate || ticks > this.maxDate) return null;
19613                         var hyear = 0,
19614                             hmonth = 1;
19615                         // find the earliest gregorian date in the array that is greater than or equal to the given date
19616                         while (ticks > this._yearInfo[++hyear][1]) { }
19617                         if (ticks !== this._yearInfo[hyear][1]) {
19618                             hyear--;
19619                         }
19620                         var info = this._yearInfo[hyear],
19621                             // how many days has it been since the date we found in the array?
19622                             // 86400000 = ticks per day
19623                             days = Math.floor((ticks - info[1]) / 86400000),
19624                             monthLength = info[0];
19625                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
19626                         // now increment day/month based on the total days, considering
19627                         // how many days are in each month. We cannot run past the year
19628                         // mark since we would have found a different array entry in that case.
19629                         var daysInMonth = 29 + (monthLength & 1);
19630                         while (days >= daysInMonth) {
19631                             days -= daysInMonth;
19632                             monthLength = monthLength >> 1;
19633                             daysInMonth = 29 + (monthLength & 1);
19634                             hmonth++;
19635                         }
19636                         // remaining days is less than is in one month, thus is the day of the month we landed on
19637                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
19638                         return [hyear, hmonth - 1, days + 1];
19639                     }
19640                         }
19641                 },
19642                 Hijri: {
19643                         name: "Hijri",
19644                         firstDay: 6,
19645                         days: {
19646                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19647                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19648                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
19649                         },
19650                         months: {
19651                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
19652                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
19653                         },
19654                         AM: ["ص","ص","ص"],
19655                         PM: ["م","م","م"],
19656                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
19657                         twoDigitYearMax: 1451,
19658                         patterns: {
19659                                 d: "dd/MM/yy",
19660                                 D: "dd/MM/yyyy",
19661                                 t: "hh:mm tt",
19662                                 T: "hh:mm:ss tt",
19663                                 f: "dd/MM/yyyy hh:mm tt",
19664                                 F: "dd/MM/yyyy hh:mm:ss tt",
19665                                 M: "dd MMMM"
19666                         },
19667                         convert: {
19668                     // Adapted to Script from System.Globalization.HijriCalendar
19669                     ticks1970: 62135596800000,
19670                     // number of days leading up to each month
19671                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
19672                     minDate: -42521673600000,
19673                     maxDate: 253402300799999,
19674                     // The number of days to add or subtract from the calendar to accommodate the variances
19675                     // in the start and the end of Ramadan and to accommodate the date difference between
19676                     // countries/regions. May be dynamically adjusted based on user preference, but should
19677                     // remain in the range of -2 to 2, inclusive.
19678                     hijriAdjustment: 0,
19679                     toGregorian: function(hyear, hmonth, hday) {
19680                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
19681                         // 86400000 = ticks per day
19682                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
19683                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
19684                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
19685                         // date in the current timezone.
19686                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
19687                         return gdate;
19688                     },
19689                     fromGregorian: function(gdate) {
19690                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
19691                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
19692                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
19693                         // very particular formula determined by someone smart, adapted from the server-side implementation.
19694                         // it approximates the hijri year.
19695                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
19696                             absDays = this.daysToYear(hyear),
19697                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
19698                         // hyear is just approximate, it may need adjustment up or down by 1.
19699                         if (daysSinceJan0101 < absDays) {
19700                             hyear--;
19701                             absDays -= daysInYear;
19702                         }
19703                         else if (daysSinceJan0101 === absDays) {
19704                             hyear--;
19705                             absDays = this.daysToYear(hyear);
19706                         }
19707                         else {
19708                             if (daysSinceJan0101 > (absDays + daysInYear)) {
19709                                 absDays += daysInYear;
19710                                 hyear++;
19711                             }
19712                         }
19713                         // determine month by looking at how many days into the hyear we are
19714                         // monthDays contains the number of days up to each month.
19715                         hmonth = 0;
19716                         var daysIntoYear = daysSinceJan0101 - absDays;
19717                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
19718                             hmonth++;
19719                         }
19720                         hmonth--;
19721                         hday = daysIntoYear - this.monthDays[hmonth];
19722                         return [hyear, hmonth, hday];
19723                     },
19724                     daysToYear: function(year) {
19725                         // calculates how many days since Jan 1, 0001
19726                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
19727                             yearsInto30 = year - yearsToYear30 - 1,
19728                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
19729                         while (yearsInto30 > 0) {
19730                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
19731                             yearsInto30--;
19732                         }
19733                         return days;
19734                     },
19735                     isLeapYear: function(year) {
19736                         return ((((year * 11) + 14) % 30) < 11);
19737                     }
19738                         }
19739                 },
19740                 Gregorian_MiddleEastFrench: {
19741                         name: "Gregorian_MiddleEastFrench",
19742                         firstDay: 6,
19743                         days: {
19744                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
19745                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
19746                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
19747                         },
19748                         months: {
19749                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
19750                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
19751                         },
19752                         AM: ["ص","ص","ص"],
19753                         PM: ["م","م","م"],
19754                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
19755                         patterns: {
19756                                 d: "MM/dd/yyyy",
19757                                 t: "hh:mm tt",
19758                                 T: "hh:mm:ss tt",
19759                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
19760                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
19761                                 M: "dd MMMM"
19762                         }
19763                 },
19764                 Gregorian_TransliteratedEnglish: {
19765                         name: "Gregorian_TransliteratedEnglish",
19766                         firstDay: 6,
19767                         days: {
19768                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19769                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19770                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
19771                         },
19772                         months: {
19773                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
19774                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
19775                         },
19776                         AM: ["ص","ص","ص"],
19777                         PM: ["م","م","م"],
19778                         eras: [{"name":"م","start":null,"offset":0}],
19779                         patterns: {
19780                                 d: "MM/dd/yyyy",
19781                                 t: "hh:mm tt",
19782                                 T: "hh:mm:ss tt",
19783                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
19784                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
19785                         }
19786                 },
19787                 Gregorian_TransliteratedFrench: {
19788                         name: "Gregorian_TransliteratedFrench",
19789                         firstDay: 6,
19790                         days: {
19791                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19792                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19793                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
19794                         },
19795                         months: {
19796                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
19797                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
19798                         },
19799                         AM: ["ص","ص","ص"],
19800                         PM: ["م","م","م"],
19801                         eras: [{"name":"م","start":null,"offset":0}],
19802                         patterns: {
19803                                 d: "MM/dd/yyyy",
19804                                 t: "hh:mm tt",
19805                                 T: "hh:mm:ss tt",
19806                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
19807                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
19808                         }
19809                 }
19810         }
19811 });
19812
19813 Globalize.addCultureInfo( "en-TT", "default", {
19814         name: "en-TT",
19815         englishName: "English (Trinidad and Tobago)",
19816         nativeName: "English (Trinidad y Tobago)",
19817         numberFormat: {
19818                 currency: {
19819                         groupSizes: [3,0],
19820                         symbol: "TT$"
19821                 }
19822         },
19823         calendars: {
19824                 standard: {
19825                         patterns: {
19826                                 d: "dd/MM/yyyy",
19827                                 D: "dddd, dd MMMM yyyy",
19828                                 t: "hh:mm tt",
19829                                 T: "hh:mm:ss tt",
19830                                 f: "dddd, dd MMMM yyyy hh:mm tt",
19831                                 F: "dddd, dd MMMM yyyy hh:mm:ss tt",
19832                                 M: "dd MMMM",
19833                                 Y: "MMMM yyyy"
19834                         }
19835                 }
19836         }
19837 });
19838
19839 Globalize.addCultureInfo( "es-AR", "default", {
19840         name: "es-AR",
19841         englishName: "Spanish (Argentina)",
19842         nativeName: "Español (Argentina)",
19843         language: "es",
19844         numberFormat: {
19845                 ",": ".",
19846                 ".": ",",
19847                 NaN: "NeuN",
19848                 negativeInfinity: "-Infinito",
19849                 positiveInfinity: "Infinito",
19850                 percent: {
19851                         ",": ".",
19852                         ".": ","
19853                 },
19854                 currency: {
19855                         pattern: ["$-n","$ n"],
19856                         ",": ".",
19857                         ".": ","
19858                 }
19859         },
19860         calendars: {
19861                 standard: {
19862                         days: {
19863                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
19864                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
19865                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
19866                         },
19867                         months: {
19868                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
19869                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
19870                         },
19871                         AM: ["a.m.","a.m.","A.M."],
19872                         PM: ["p.m.","p.m.","P.M."],
19873                         eras: [{"name":"d.C.","start":null,"offset":0}],
19874                         patterns: {
19875                                 d: "dd/MM/yyyy",
19876                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
19877                                 t: "hh:mm tt",
19878                                 T: "hh:mm:ss tt",
19879                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
19880                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
19881                                 M: "dd MMMM",
19882                                 Y: "MMMM' de 'yyyy"
19883                         }
19884                 }
19885         }
19886 });
19887
19888 Globalize.addCultureInfo( "sr-Latn-ME", "default", {
19889         name: "sr-Latn-ME",
19890         englishName: "Serbian (Latin, Montenegro)",
19891         nativeName: "srpski (Crna Gora)",
19892         language: "sr-Latn",
19893         numberFormat: {
19894                 ",": ".",
19895                 ".": ",",
19896                 negativeInfinity: "-beskonačnost",
19897                 positiveInfinity: "+beskonačnost",
19898                 percent: {
19899                         pattern: ["-n%","n%"],
19900                         ",": ".",
19901                         ".": ","
19902                 },
19903                 currency: {
19904                         pattern: ["-n $","n $"],
19905                         ",": ".",
19906                         ".": ",",
19907                         symbol: "€"
19908                 }
19909         },
19910         calendars: {
19911                 standard: {
19912                         "/": ".",
19913                         firstDay: 1,
19914                         days: {
19915                                 names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],
19916                                 namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"],
19917                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
19918                         },
19919                         months: {
19920                                 names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""],
19921                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
19922                         },
19923                         AM: null,
19924                         PM: null,
19925                         eras: [{"name":"n.e.","start":null,"offset":0}],
19926                         patterns: {
19927                                 d: "d.M.yyyy",
19928                                 D: "d. MMMM yyyy",
19929                                 t: "H:mm",
19930                                 T: "H:mm:ss",
19931                                 f: "d. MMMM yyyy H:mm",
19932                                 F: "d. MMMM yyyy H:mm:ss",
19933                                 M: "d. MMMM",
19934                                 Y: "MMMM yyyy"
19935                         }
19936                 }
19937         }
19938 });
19939
19940 Globalize.addCultureInfo( "ar-LB", "default", {
19941         name: "ar-LB",
19942         englishName: "Arabic (Lebanon)",
19943         nativeName: "العربية (لبنان)",
19944         language: "ar",
19945         isRTL: true,
19946         numberFormat: {
19947                 pattern: ["n-"],
19948                 NaN: "ليس برقم",
19949                 negativeInfinity: "-لا نهاية",
19950                 positiveInfinity: "+لا نهاية",
19951                 currency: {
19952                         pattern: ["$n-","$ n"],
19953                         symbol: "ل.ل.‏"
19954                 }
19955         },
19956         calendars: {
19957                 standard: {
19958                         firstDay: 1,
19959                         days: {
19960                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19961                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19962                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
19963                         },
19964                         months: {
19965                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
19966                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
19967                         },
19968                         AM: ["ص","ص","ص"],
19969                         PM: ["م","م","م"],
19970                         patterns: {
19971                                 d: "dd/MM/yyyy",
19972                                 D: "dd MMMM, yyyy",
19973                                 t: "hh:mm tt",
19974                                 T: "hh:mm:ss tt",
19975                                 f: "dd MMMM, yyyy hh:mm tt",
19976                                 F: "dd MMMM, yyyy hh:mm:ss tt",
19977                                 M: "dd MMMM"
19978                         }
19979                 },
19980                 UmAlQura: {
19981                         name: "UmAlQura",
19982                         firstDay: 1,
19983                         days: {
19984                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19985                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
19986                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
19987                         },
19988                         months: {
19989                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
19990                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
19991                         },
19992                         AM: ["ص","ص","ص"],
19993                         PM: ["م","م","م"],
19994                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
19995                         twoDigitYearMax: 1451,
19996                         patterns: {
19997                                 d: "dd/MM/yy",
19998                                 D: "dd/MMMM/yyyy",
19999                                 t: "hh:mm tt",
20000                                 T: "hh:mm:ss tt",
20001                                 f: "dd/MMMM/yyyy hh:mm tt",
20002                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
20003                                 M: "dd MMMM"
20004                         },
20005                         convert: {
20006                     _yearInfo: [
20007                         // MonthLengthFlags, Gregorian Date
20008                         [746, -2198707200000],
20009                         [1769, -2168121600000],
20010                         [3794, -2137449600000],
20011                         [3748, -2106777600000],
20012                         [3402, -2076192000000],
20013                         [2710, -2045606400000],
20014                         [1334, -2015020800000],
20015                         [2741, -1984435200000],
20016                         [3498, -1953763200000],
20017                         [2980, -1923091200000],
20018                         [2889, -1892505600000],
20019                         [2707, -1861920000000],
20020                         [1323, -1831334400000],
20021                         [2647, -1800748800000],
20022                         [1206, -1770076800000],
20023                         [2741, -1739491200000],
20024                         [1450, -1708819200000],
20025                         [3413, -1678233600000],
20026                         [3370, -1647561600000],
20027                         [2646, -1616976000000],
20028                         [1198, -1586390400000],
20029                         [2397, -1555804800000],
20030                         [748, -1525132800000],
20031                         [1749, -1494547200000],
20032                         [1706, -1463875200000],
20033                         [1365, -1433289600000],
20034                         [1195, -1402704000000],
20035                         [2395, -1372118400000],
20036                         [698, -1341446400000],
20037                         [1397, -1310860800000],
20038                         [2994, -1280188800000],
20039                         [1892, -1249516800000],
20040                         [1865, -1218931200000],
20041                         [1621, -1188345600000],
20042                         [683, -1157760000000],
20043                         [1371, -1127174400000],
20044                         [2778, -1096502400000],
20045                         [1748, -1065830400000],
20046                         [3785, -1035244800000],
20047                         [3474, -1004572800000],
20048                         [3365, -973987200000],
20049                         [2637, -943401600000],
20050                         [685, -912816000000],
20051                         [1389, -882230400000],
20052                         [2922, -851558400000],
20053                         [2898, -820886400000],
20054                         [2725, -790300800000],
20055                         [2635, -759715200000],
20056                         [1175, -729129600000],
20057                         [2359, -698544000000],
20058                         [694, -667872000000],
20059                         [1397, -637286400000],
20060                         [3434, -606614400000],
20061                         [3410, -575942400000],
20062                         [2710, -545356800000],
20063                         [2349, -514771200000],
20064                         [605, -484185600000],
20065                         [1245, -453600000000],
20066                         [2778, -422928000000],
20067                         [1492, -392256000000],
20068                         [3497, -361670400000],
20069                         [3410, -330998400000],
20070                         [2730, -300412800000],
20071                         [1238, -269827200000],
20072                         [2486, -239241600000],
20073                         [884, -208569600000],
20074                         [1897, -177984000000],
20075                         [1874, -147312000000],
20076                         [1701, -116726400000],
20077                         [1355, -86140800000],
20078                         [2731, -55555200000],
20079                         [1370, -24883200000],
20080                         [2773, 5702400000],
20081                         [3538, 36374400000],
20082                         [3492, 67046400000],
20083                         [3401, 97632000000],
20084                         [2709, 128217600000],
20085                         [1325, 158803200000],
20086                         [2653, 189388800000],
20087                         [1370, 220060800000],
20088                         [2773, 250646400000],
20089                         [1706, 281318400000],
20090                         [1685, 311904000000],
20091                         [1323, 342489600000],
20092                         [2647, 373075200000],
20093                         [1198, 403747200000],
20094                         [2422, 434332800000],
20095                         [1388, 465004800000],
20096                         [2901, 495590400000],
20097                         [2730, 526262400000],
20098                         [2645, 556848000000],
20099                         [1197, 587433600000],
20100                         [2397, 618019200000],
20101                         [730, 648691200000],
20102                         [1497, 679276800000],
20103                         [3506, 709948800000],
20104                         [2980, 740620800000],
20105                         [2890, 771206400000],
20106                         [2645, 801792000000],
20107                         [693, 832377600000],
20108                         [1397, 862963200000],
20109                         [2922, 893635200000],
20110                         [3026, 924307200000],
20111                         [3012, 954979200000],
20112                         [2953, 985564800000],
20113                         [2709, 1016150400000],
20114                         [1325, 1046736000000],
20115                         [1453, 1077321600000],
20116                         [2922, 1107993600000],
20117                         [1748, 1138665600000],
20118                         [3529, 1169251200000],
20119                         [3474, 1199923200000],
20120                         [2726, 1230508800000],
20121                         [2390, 1261094400000],
20122                         [686, 1291680000000],
20123                         [1389, 1322265600000],
20124                         [874, 1352937600000],
20125                         [2901, 1383523200000],
20126                         [2730, 1414195200000],
20127                         [2381, 1444780800000],
20128                         [1181, 1475366400000],
20129                         [2397, 1505952000000],
20130                         [698, 1536624000000],
20131                         [1461, 1567209600000],
20132                         [1450, 1597881600000],
20133                         [3413, 1628467200000],
20134                         [2714, 1659139200000],
20135                         [2350, 1689724800000],
20136                         [622, 1720310400000],
20137                         [1373, 1750896000000],
20138                         [2778, 1781568000000],
20139                         [1748, 1812240000000],
20140                         [1701, 1842825600000],
20141                         [0, 1873411200000]
20142                     ],
20143                     minDate: -2198707200000,
20144                     maxDate: 1873411199999,
20145                     toGregorian: function(hyear, hmonth, hday) {
20146                         var days = hday - 1,
20147                             gyear = hyear - 1318;
20148                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
20149                         var info = this._yearInfo[gyear],
20150                             gdate = new Date(info[1]),
20151                             monthLength = info[0];
20152                         // Date's ticks in javascript are always from the GMT time,
20153                         // but we are interested in the gregorian date in the same timezone,
20154                         // not what the gregorian date was at GMT time, so we adjust for the offset.
20155                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
20156                         for (var i = 0; i < hmonth; i++) {
20157                             days += 29 + (monthLength & 1);
20158                             monthLength = monthLength >> 1;
20159                         }
20160                         gdate.setDate(gdate.getDate() + days);
20161                         return gdate;
20162                     },
20163                     fromGregorian: function(gdate) {
20164                         // Date's ticks in javascript are always from the GMT time,
20165                         // but we are interested in the hijri date in the same timezone,
20166                         // not what the hijri date was at GMT time, so we adjust for the offset.
20167                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
20168                         if (ticks < this.minDate || ticks > this.maxDate) return null;
20169                         var hyear = 0,
20170                             hmonth = 1;
20171                         // find the earliest gregorian date in the array that is greater than or equal to the given date
20172                         while (ticks > this._yearInfo[++hyear][1]) { }
20173                         if (ticks !== this._yearInfo[hyear][1]) {
20174                             hyear--;
20175                         }
20176                         var info = this._yearInfo[hyear],
20177                             // how many days has it been since the date we found in the array?
20178                             // 86400000 = ticks per day
20179                             days = Math.floor((ticks - info[1]) / 86400000),
20180                             monthLength = info[0];
20181                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
20182                         // now increment day/month based on the total days, considering
20183                         // how many days are in each month. We cannot run past the year
20184                         // mark since we would have found a different array entry in that case.
20185                         var daysInMonth = 29 + (monthLength & 1);
20186                         while (days >= daysInMonth) {
20187                             days -= daysInMonth;
20188                             monthLength = monthLength >> 1;
20189                             daysInMonth = 29 + (monthLength & 1);
20190                             hmonth++;
20191                         }
20192                         // remaining days is less than is in one month, thus is the day of the month we landed on
20193                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
20194                         return [hyear, hmonth - 1, days + 1];
20195                     }
20196                         }
20197                 },
20198                 Hijri: {
20199                         name: "Hijri",
20200                         firstDay: 1,
20201                         days: {
20202                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20203                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20204                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
20205                         },
20206                         months: {
20207                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
20208                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
20209                         },
20210                         AM: ["ص","ص","ص"],
20211                         PM: ["م","م","م"],
20212                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
20213                         twoDigitYearMax: 1451,
20214                         patterns: {
20215                                 d: "dd/MM/yy",
20216                                 D: "dd/MM/yyyy",
20217                                 t: "hh:mm tt",
20218                                 T: "hh:mm:ss tt",
20219                                 f: "dd/MM/yyyy hh:mm tt",
20220                                 F: "dd/MM/yyyy hh:mm:ss tt",
20221                                 M: "dd MMMM"
20222                         },
20223                         convert: {
20224                     // Adapted to Script from System.Globalization.HijriCalendar
20225                     ticks1970: 62135596800000,
20226                     // number of days leading up to each month
20227                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
20228                     minDate: -42521673600000,
20229                     maxDate: 253402300799999,
20230                     // The number of days to add or subtract from the calendar to accommodate the variances
20231                     // in the start and the end of Ramadan and to accommodate the date difference between
20232                     // countries/regions. May be dynamically adjusted based on user preference, but should
20233                     // remain in the range of -2 to 2, inclusive.
20234                     hijriAdjustment: 0,
20235                     toGregorian: function(hyear, hmonth, hday) {
20236                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
20237                         // 86400000 = ticks per day
20238                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
20239                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
20240                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
20241                         // date in the current timezone.
20242                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
20243                         return gdate;
20244                     },
20245                     fromGregorian: function(gdate) {
20246                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
20247                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
20248                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
20249                         // very particular formula determined by someone smart, adapted from the server-side implementation.
20250                         // it approximates the hijri year.
20251                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
20252                             absDays = this.daysToYear(hyear),
20253                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
20254                         // hyear is just approximate, it may need adjustment up or down by 1.
20255                         if (daysSinceJan0101 < absDays) {
20256                             hyear--;
20257                             absDays -= daysInYear;
20258                         }
20259                         else if (daysSinceJan0101 === absDays) {
20260                             hyear--;
20261                             absDays = this.daysToYear(hyear);
20262                         }
20263                         else {
20264                             if (daysSinceJan0101 > (absDays + daysInYear)) {
20265                                 absDays += daysInYear;
20266                                 hyear++;
20267                             }
20268                         }
20269                         // determine month by looking at how many days into the hyear we are
20270                         // monthDays contains the number of days up to each month.
20271                         hmonth = 0;
20272                         var daysIntoYear = daysSinceJan0101 - absDays;
20273                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
20274                             hmonth++;
20275                         }
20276                         hmonth--;
20277                         hday = daysIntoYear - this.monthDays[hmonth];
20278                         return [hyear, hmonth, hday];
20279                     },
20280                     daysToYear: function(year) {
20281                         // calculates how many days since Jan 1, 0001
20282                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
20283                             yearsInto30 = year - yearsToYear30 - 1,
20284                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
20285                         while (yearsInto30 > 0) {
20286                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
20287                             yearsInto30--;
20288                         }
20289                         return days;
20290                     },
20291                     isLeapYear: function(year) {
20292                         return ((((year * 11) + 14) % 30) < 11);
20293                     }
20294                         }
20295                 },
20296                 Gregorian_MiddleEastFrench: {
20297                         name: "Gregorian_MiddleEastFrench",
20298                         firstDay: 1,
20299                         days: {
20300                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
20301                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
20302                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
20303                         },
20304                         months: {
20305                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
20306                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
20307                         },
20308                         AM: ["ص","ص","ص"],
20309                         PM: ["م","م","م"],
20310                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
20311                         patterns: {
20312                                 d: "MM/dd/yyyy",
20313                                 t: "hh:mm tt",
20314                                 T: "hh:mm:ss tt",
20315                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
20316                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
20317                                 M: "dd MMMM"
20318                         }
20319                 },
20320                 Gregorian_TransliteratedEnglish: {
20321                         name: "Gregorian_TransliteratedEnglish",
20322                         firstDay: 1,
20323                         days: {
20324                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20325                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20326                                 namesShort: ["أ","ا","ث","أ","خ","ج","س"]
20327                         },
20328                         months: {
20329                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
20330                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
20331                         },
20332                         AM: ["ص","ص","ص"],
20333                         PM: ["م","م","م"],
20334                         eras: [{"name":"م","start":null,"offset":0}],
20335                         patterns: {
20336                                 d: "MM/dd/yyyy",
20337                                 t: "hh:mm tt",
20338                                 T: "hh:mm:ss tt",
20339                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
20340                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
20341                         }
20342                 },
20343                 Gregorian_TransliteratedFrench: {
20344                         name: "Gregorian_TransliteratedFrench",
20345                         firstDay: 1,
20346                         days: {
20347                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20348                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20349                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
20350                         },
20351                         months: {
20352                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
20353                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
20354                         },
20355                         AM: ["ص","ص","ص"],
20356                         PM: ["م","م","م"],
20357                         eras: [{"name":"م","start":null,"offset":0}],
20358                         patterns: {
20359                                 d: "MM/dd/yyyy",
20360                                 t: "hh:mm tt",
20361                                 T: "hh:mm:ss tt",
20362                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
20363                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
20364                         }
20365                 }
20366         }
20367 });
20368
20369 Globalize.addCultureInfo( "en-ZW", "default", {
20370         name: "en-ZW",
20371         englishName: "English (Zimbabwe)",
20372         nativeName: "English (Zimbabwe)",
20373         numberFormat: {
20374                 currency: {
20375                         symbol: "Z$"
20376                 }
20377         }
20378 });
20379
20380 Globalize.addCultureInfo( "es-EC", "default", {
20381         name: "es-EC",
20382         englishName: "Spanish (Ecuador)",
20383         nativeName: "Español (Ecuador)",
20384         language: "es",
20385         numberFormat: {
20386                 ",": ".",
20387                 ".": ",",
20388                 NaN: "NeuN",
20389                 negativeInfinity: "-Infinito",
20390                 positiveInfinity: "Infinito",
20391                 percent: {
20392                         ",": ".",
20393                         ".": ","
20394                 },
20395                 currency: {
20396                         pattern: ["($ n)","$ n"],
20397                         ",": ".",
20398                         ".": ","
20399                 }
20400         },
20401         calendars: {
20402                 standard: {
20403                         days: {
20404                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
20405                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
20406                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
20407                         },
20408                         months: {
20409                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
20410                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
20411                         },
20412                         AM: null,
20413                         PM: null,
20414                         eras: [{"name":"d.C.","start":null,"offset":0}],
20415                         patterns: {
20416                                 d: "dd/MM/yyyy",
20417                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
20418                                 t: "H:mm",
20419                                 T: "H:mm:ss",
20420                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
20421                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
20422                                 M: "dd MMMM",
20423                                 Y: "MMMM' de 'yyyy"
20424                         }
20425                 }
20426         }
20427 });
20428
20429 Globalize.addCultureInfo( "sr-Cyrl-ME", "default", {
20430         name: "sr-Cyrl-ME",
20431         englishName: "Serbian (Cyrillic, Montenegro)",
20432         nativeName: "српски (Црна Гора)",
20433         language: "sr-Cyrl",
20434         numberFormat: {
20435                 ",": ".",
20436                 ".": ",",
20437                 negativeInfinity: "-бесконачност",
20438                 positiveInfinity: "+бесконачност",
20439                 percent: {
20440                         pattern: ["-n%","n%"],
20441                         ",": ".",
20442                         ".": ","
20443                 },
20444                 currency: {
20445                         pattern: ["-n $","n $"],
20446                         ",": ".",
20447                         ".": ",",
20448                         symbol: "€"
20449                 }
20450         },
20451         calendars: {
20452                 standard: {
20453                         "/": ".",
20454                         firstDay: 1,
20455                         days: {
20456                                 names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"],
20457                                 namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"],
20458                                 namesShort: ["не","по","ут","ср","че","пе","су"]
20459                         },
20460                         months: {
20461                                 names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""],
20462                                 namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""]
20463                         },
20464                         AM: null,
20465                         PM: null,
20466                         eras: [{"name":"н.е.","start":null,"offset":0}],
20467                         patterns: {
20468                                 d: "d.M.yyyy",
20469                                 D: "d. MMMM yyyy",
20470                                 t: "H:mm",
20471                                 T: "H:mm:ss",
20472                                 f: "d. MMMM yyyy H:mm",
20473                                 F: "d. MMMM yyyy H:mm:ss",
20474                                 M: "d. MMMM",
20475                                 Y: "MMMM yyyy"
20476                         }
20477                 }
20478         }
20479 });
20480
20481 Globalize.addCultureInfo( "ar-KW", "default", {
20482         name: "ar-KW",
20483         englishName: "Arabic (Kuwait)",
20484         nativeName: "العربية (الكويت)",
20485         language: "ar",
20486         isRTL: true,
20487         numberFormat: {
20488                 pattern: ["n-"],
20489                 decimals: 3,
20490                 NaN: "ليس برقم",
20491                 negativeInfinity: "-لا نهاية",
20492                 positiveInfinity: "+لا نهاية",
20493                 percent: {
20494                         decimals: 3
20495                 },
20496                 currency: {
20497                         pattern: ["$n-","$ n"],
20498                         decimals: 3,
20499                         symbol: "د.ك.‏"
20500                 }
20501         },
20502         calendars: {
20503                 standard: {
20504                         firstDay: 6,
20505                         days: {
20506                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20507                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20508                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
20509                         },
20510                         months: {
20511                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
20512                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
20513                         },
20514                         AM: ["ص","ص","ص"],
20515                         PM: ["م","م","م"],
20516                         patterns: {
20517                                 d: "dd/MM/yyyy",
20518                                 D: "dd MMMM, yyyy",
20519                                 t: "hh:mm tt",
20520                                 T: "hh:mm:ss tt",
20521                                 f: "dd MMMM, yyyy hh:mm tt",
20522                                 F: "dd MMMM, yyyy hh:mm:ss tt",
20523                                 M: "dd MMMM"
20524                         }
20525                 },
20526                 Hijri: {
20527                         name: "Hijri",
20528                         firstDay: 6,
20529                         days: {
20530                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20531                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20532                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
20533                         },
20534                         months: {
20535                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
20536                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
20537                         },
20538                         AM: ["ص","ص","ص"],
20539                         PM: ["م","م","م"],
20540                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
20541                         twoDigitYearMax: 1451,
20542                         patterns: {
20543                                 d: "dd/MM/yy",
20544                                 D: "dd/MM/yyyy",
20545                                 t: "hh:mm tt",
20546                                 T: "hh:mm:ss tt",
20547                                 f: "dd/MM/yyyy hh:mm tt",
20548                                 F: "dd/MM/yyyy hh:mm:ss tt",
20549                                 M: "dd MMMM"
20550                         },
20551                         convert: {
20552                     // Adapted to Script from System.Globalization.HijriCalendar
20553                     ticks1970: 62135596800000,
20554                     // number of days leading up to each month
20555                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
20556                     minDate: -42521673600000,
20557                     maxDate: 253402300799999,
20558                     // The number of days to add or subtract from the calendar to accommodate the variances
20559                     // in the start and the end of Ramadan and to accommodate the date difference between
20560                     // countries/regions. May be dynamically adjusted based on user preference, but should
20561                     // remain in the range of -2 to 2, inclusive.
20562                     hijriAdjustment: 0,
20563                     toGregorian: function(hyear, hmonth, hday) {
20564                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
20565                         // 86400000 = ticks per day
20566                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
20567                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
20568                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
20569                         // date in the current timezone.
20570                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
20571                         return gdate;
20572                     },
20573                     fromGregorian: function(gdate) {
20574                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
20575                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
20576                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
20577                         // very particular formula determined by someone smart, adapted from the server-side implementation.
20578                         // it approximates the hijri year.
20579                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
20580                             absDays = this.daysToYear(hyear),
20581                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
20582                         // hyear is just approximate, it may need adjustment up or down by 1.
20583                         if (daysSinceJan0101 < absDays) {
20584                             hyear--;
20585                             absDays -= daysInYear;
20586                         }
20587                         else if (daysSinceJan0101 === absDays) {
20588                             hyear--;
20589                             absDays = this.daysToYear(hyear);
20590                         }
20591                         else {
20592                             if (daysSinceJan0101 > (absDays + daysInYear)) {
20593                                 absDays += daysInYear;
20594                                 hyear++;
20595                             }
20596                         }
20597                         // determine month by looking at how many days into the hyear we are
20598                         // monthDays contains the number of days up to each month.
20599                         hmonth = 0;
20600                         var daysIntoYear = daysSinceJan0101 - absDays;
20601                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
20602                             hmonth++;
20603                         }
20604                         hmonth--;
20605                         hday = daysIntoYear - this.monthDays[hmonth];
20606                         return [hyear, hmonth, hday];
20607                     },
20608                     daysToYear: function(year) {
20609                         // calculates how many days since Jan 1, 0001
20610                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
20611                             yearsInto30 = year - yearsToYear30 - 1,
20612                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
20613                         while (yearsInto30 > 0) {
20614                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
20615                             yearsInto30--;
20616                         }
20617                         return days;
20618                     },
20619                     isLeapYear: function(year) {
20620                         return ((((year * 11) + 14) % 30) < 11);
20621                     }
20622                         }
20623                 },
20624                 UmAlQura: {
20625                         name: "UmAlQura",
20626                         firstDay: 6,
20627                         days: {
20628                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20629                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20630                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
20631                         },
20632                         months: {
20633                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
20634                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
20635                         },
20636                         AM: ["ص","ص","ص"],
20637                         PM: ["م","م","م"],
20638                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
20639                         twoDigitYearMax: 1451,
20640                         patterns: {
20641                                 d: "dd/MM/yy",
20642                                 D: "dd/MMMM/yyyy",
20643                                 t: "hh:mm tt",
20644                                 T: "hh:mm:ss tt",
20645                                 f: "dd/MMMM/yyyy hh:mm tt",
20646                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
20647                                 M: "dd MMMM"
20648                         },
20649                         convert: {
20650                     _yearInfo: [
20651                         // MonthLengthFlags, Gregorian Date
20652                         [746, -2198707200000],
20653                         [1769, -2168121600000],
20654                         [3794, -2137449600000],
20655                         [3748, -2106777600000],
20656                         [3402, -2076192000000],
20657                         [2710, -2045606400000],
20658                         [1334, -2015020800000],
20659                         [2741, -1984435200000],
20660                         [3498, -1953763200000],
20661                         [2980, -1923091200000],
20662                         [2889, -1892505600000],
20663                         [2707, -1861920000000],
20664                         [1323, -1831334400000],
20665                         [2647, -1800748800000],
20666                         [1206, -1770076800000],
20667                         [2741, -1739491200000],
20668                         [1450, -1708819200000],
20669                         [3413, -1678233600000],
20670                         [3370, -1647561600000],
20671                         [2646, -1616976000000],
20672                         [1198, -1586390400000],
20673                         [2397, -1555804800000],
20674                         [748, -1525132800000],
20675                         [1749, -1494547200000],
20676                         [1706, -1463875200000],
20677                         [1365, -1433289600000],
20678                         [1195, -1402704000000],
20679                         [2395, -1372118400000],
20680                         [698, -1341446400000],
20681                         [1397, -1310860800000],
20682                         [2994, -1280188800000],
20683                         [1892, -1249516800000],
20684                         [1865, -1218931200000],
20685                         [1621, -1188345600000],
20686                         [683, -1157760000000],
20687                         [1371, -1127174400000],
20688                         [2778, -1096502400000],
20689                         [1748, -1065830400000],
20690                         [3785, -1035244800000],
20691                         [3474, -1004572800000],
20692                         [3365, -973987200000],
20693                         [2637, -943401600000],
20694                         [685, -912816000000],
20695                         [1389, -882230400000],
20696                         [2922, -851558400000],
20697                         [2898, -820886400000],
20698                         [2725, -790300800000],
20699                         [2635, -759715200000],
20700                         [1175, -729129600000],
20701                         [2359, -698544000000],
20702                         [694, -667872000000],
20703                         [1397, -637286400000],
20704                         [3434, -606614400000],
20705                         [3410, -575942400000],
20706                         [2710, -545356800000],
20707                         [2349, -514771200000],
20708                         [605, -484185600000],
20709                         [1245, -453600000000],
20710                         [2778, -422928000000],
20711                         [1492, -392256000000],
20712                         [3497, -361670400000],
20713                         [3410, -330998400000],
20714                         [2730, -300412800000],
20715                         [1238, -269827200000],
20716                         [2486, -239241600000],
20717                         [884, -208569600000],
20718                         [1897, -177984000000],
20719                         [1874, -147312000000],
20720                         [1701, -116726400000],
20721                         [1355, -86140800000],
20722                         [2731, -55555200000],
20723                         [1370, -24883200000],
20724                         [2773, 5702400000],
20725                         [3538, 36374400000],
20726                         [3492, 67046400000],
20727                         [3401, 97632000000],
20728                         [2709, 128217600000],
20729                         [1325, 158803200000],
20730                         [2653, 189388800000],
20731                         [1370, 220060800000],
20732                         [2773, 250646400000],
20733                         [1706, 281318400000],
20734                         [1685, 311904000000],
20735                         [1323, 342489600000],
20736                         [2647, 373075200000],
20737                         [1198, 403747200000],
20738                         [2422, 434332800000],
20739                         [1388, 465004800000],
20740                         [2901, 495590400000],
20741                         [2730, 526262400000],
20742                         [2645, 556848000000],
20743                         [1197, 587433600000],
20744                         [2397, 618019200000],
20745                         [730, 648691200000],
20746                         [1497, 679276800000],
20747                         [3506, 709948800000],
20748                         [2980, 740620800000],
20749                         [2890, 771206400000],
20750                         [2645, 801792000000],
20751                         [693, 832377600000],
20752                         [1397, 862963200000],
20753                         [2922, 893635200000],
20754                         [3026, 924307200000],
20755                         [3012, 954979200000],
20756                         [2953, 985564800000],
20757                         [2709, 1016150400000],
20758                         [1325, 1046736000000],
20759                         [1453, 1077321600000],
20760                         [2922, 1107993600000],
20761                         [1748, 1138665600000],
20762                         [3529, 1169251200000],
20763                         [3474, 1199923200000],
20764                         [2726, 1230508800000],
20765                         [2390, 1261094400000],
20766                         [686, 1291680000000],
20767                         [1389, 1322265600000],
20768                         [874, 1352937600000],
20769                         [2901, 1383523200000],
20770                         [2730, 1414195200000],
20771                         [2381, 1444780800000],
20772                         [1181, 1475366400000],
20773                         [2397, 1505952000000],
20774                         [698, 1536624000000],
20775                         [1461, 1567209600000],
20776                         [1450, 1597881600000],
20777                         [3413, 1628467200000],
20778                         [2714, 1659139200000],
20779                         [2350, 1689724800000],
20780                         [622, 1720310400000],
20781                         [1373, 1750896000000],
20782                         [2778, 1781568000000],
20783                         [1748, 1812240000000],
20784                         [1701, 1842825600000],
20785                         [0, 1873411200000]
20786                     ],
20787                     minDate: -2198707200000,
20788                     maxDate: 1873411199999,
20789                     toGregorian: function(hyear, hmonth, hday) {
20790                         var days = hday - 1,
20791                             gyear = hyear - 1318;
20792                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
20793                         var info = this._yearInfo[gyear],
20794                             gdate = new Date(info[1]),
20795                             monthLength = info[0];
20796                         // Date's ticks in javascript are always from the GMT time,
20797                         // but we are interested in the gregorian date in the same timezone,
20798                         // not what the gregorian date was at GMT time, so we adjust for the offset.
20799                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
20800                         for (var i = 0; i < hmonth; i++) {
20801                             days += 29 + (monthLength & 1);
20802                             monthLength = monthLength >> 1;
20803                         }
20804                         gdate.setDate(gdate.getDate() + days);
20805                         return gdate;
20806                     },
20807                     fromGregorian: function(gdate) {
20808                         // Date's ticks in javascript are always from the GMT time,
20809                         // but we are interested in the hijri date in the same timezone,
20810                         // not what the hijri date was at GMT time, so we adjust for the offset.
20811                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
20812                         if (ticks < this.minDate || ticks > this.maxDate) return null;
20813                         var hyear = 0,
20814                             hmonth = 1;
20815                         // find the earliest gregorian date in the array that is greater than or equal to the given date
20816                         while (ticks > this._yearInfo[++hyear][1]) { }
20817                         if (ticks !== this._yearInfo[hyear][1]) {
20818                             hyear--;
20819                         }
20820                         var info = this._yearInfo[hyear],
20821                             // how many days has it been since the date we found in the array?
20822                             // 86400000 = ticks per day
20823                             days = Math.floor((ticks - info[1]) / 86400000),
20824                             monthLength = info[0];
20825                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
20826                         // now increment day/month based on the total days, considering
20827                         // how many days are in each month. We cannot run past the year
20828                         // mark since we would have found a different array entry in that case.
20829                         var daysInMonth = 29 + (monthLength & 1);
20830                         while (days >= daysInMonth) {
20831                             days -= daysInMonth;
20832                             monthLength = monthLength >> 1;
20833                             daysInMonth = 29 + (monthLength & 1);
20834                             hmonth++;
20835                         }
20836                         // remaining days is less than is in one month, thus is the day of the month we landed on
20837                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
20838                         return [hyear, hmonth - 1, days + 1];
20839                     }
20840                         }
20841                 },
20842                 Gregorian_MiddleEastFrench: {
20843                         name: "Gregorian_MiddleEastFrench",
20844                         firstDay: 6,
20845                         days: {
20846                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
20847                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
20848                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
20849                         },
20850                         months: {
20851                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
20852                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
20853                         },
20854                         AM: ["ص","ص","ص"],
20855                         PM: ["م","م","م"],
20856                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
20857                         patterns: {
20858                                 d: "MM/dd/yyyy",
20859                                 t: "hh:mm tt",
20860                                 T: "hh:mm:ss tt",
20861                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
20862                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
20863                                 M: "dd MMMM"
20864                         }
20865                 },
20866                 Gregorian_Arabic: {
20867                         name: "Gregorian_Arabic",
20868                         firstDay: 6,
20869                         days: {
20870                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20871                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20872                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
20873                         },
20874                         months: {
20875                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
20876                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
20877                         },
20878                         AM: ["ص","ص","ص"],
20879                         PM: ["م","م","م"],
20880                         eras: [{"name":"م","start":null,"offset":0}],
20881                         patterns: {
20882                                 d: "MM/dd/yyyy",
20883                                 t: "hh:mm tt",
20884                                 T: "hh:mm:ss tt",
20885                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
20886                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
20887                         }
20888                 },
20889                 Gregorian_TransliteratedFrench: {
20890                         name: "Gregorian_TransliteratedFrench",
20891                         firstDay: 6,
20892                         days: {
20893                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20894                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20895                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
20896                         },
20897                         months: {
20898                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
20899                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
20900                         },
20901                         AM: ["ص","ص","ص"],
20902                         PM: ["م","م","م"],
20903                         eras: [{"name":"م","start":null,"offset":0}],
20904                         patterns: {
20905                                 d: "MM/dd/yyyy",
20906                                 t: "hh:mm tt",
20907                                 T: "hh:mm:ss tt",
20908                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
20909                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
20910                         }
20911                 }
20912         }
20913 });
20914
20915 Globalize.addCultureInfo( "en-PH", "default", {
20916         name: "en-PH",
20917         englishName: "English (Republic of the Philippines)",
20918         nativeName: "English (Philippines)",
20919         numberFormat: {
20920                 currency: {
20921                         symbol: "Php"
20922                 }
20923         }
20924 });
20925
20926 Globalize.addCultureInfo( "es-CL", "default", {
20927         name: "es-CL",
20928         englishName: "Spanish (Chile)",
20929         nativeName: "Español (Chile)",
20930         language: "es",
20931         numberFormat: {
20932                 ",": ".",
20933                 ".": ",",
20934                 NaN: "NeuN",
20935                 negativeInfinity: "-Infinito",
20936                 positiveInfinity: "Infinito",
20937                 percent: {
20938                         ",": ".",
20939                         ".": ","
20940                 },
20941                 currency: {
20942                         pattern: ["-$ n","$ n"],
20943                         ",": ".",
20944                         ".": ","
20945                 }
20946         },
20947         calendars: {
20948                 standard: {
20949                         "/": "-",
20950                         days: {
20951                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
20952                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
20953                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
20954                         },
20955                         months: {
20956                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
20957                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
20958                         },
20959                         AM: null,
20960                         PM: null,
20961                         eras: [{"name":"d.C.","start":null,"offset":0}],
20962                         patterns: {
20963                                 d: "dd-MM-yyyy",
20964                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
20965                                 t: "H:mm",
20966                                 T: "H:mm:ss",
20967                                 f: "dddd, dd' de 'MMMM' de 'yyyy H:mm",
20968                                 F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss",
20969                                 M: "dd MMMM",
20970                                 Y: "MMMM' de 'yyyy"
20971                         }
20972                 }
20973         }
20974 });
20975
20976 Globalize.addCultureInfo( "ar-AE", "default", {
20977         name: "ar-AE",
20978         englishName: "Arabic (U.A.E.)",
20979         nativeName: "العربية (الإمارات العربية المتحدة)",
20980         language: "ar",
20981         isRTL: true,
20982         numberFormat: {
20983                 pattern: ["n-"],
20984                 NaN: "ليس برقم",
20985                 negativeInfinity: "-لا نهاية",
20986                 positiveInfinity: "+لا نهاية",
20987                 currency: {
20988                         pattern: ["$n-","$ n"],
20989                         symbol: "د.إ.‏"
20990                 }
20991         },
20992         calendars: {
20993                 standard: {
20994                         firstDay: 6,
20995                         days: {
20996                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20997                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
20998                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
20999                         },
21000                         months: {
21001                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
21002                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
21003                         },
21004                         AM: ["ص","ص","ص"],
21005                         PM: ["م","م","م"],
21006                         patterns: {
21007                                 d: "dd/MM/yyyy",
21008                                 D: "dd MMMM, yyyy",
21009                                 t: "hh:mm tt",
21010                                 T: "hh:mm:ss tt",
21011                                 f: "dd MMMM, yyyy hh:mm tt",
21012                                 F: "dd MMMM, yyyy hh:mm:ss tt",
21013                                 M: "dd MMMM"
21014                         }
21015                 },
21016                 UmAlQura: {
21017                         name: "UmAlQura",
21018                         firstDay: 6,
21019                         days: {
21020                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21021                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21022                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21023                         },
21024                         months: {
21025                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
21026                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
21027                         },
21028                         AM: ["ص","ص","ص"],
21029                         PM: ["م","م","م"],
21030                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
21031                         twoDigitYearMax: 1451,
21032                         patterns: {
21033                                 d: "dd/MM/yy",
21034                                 D: "dd/MMMM/yyyy",
21035                                 t: "hh:mm tt",
21036                                 T: "hh:mm:ss tt",
21037                                 f: "dd/MMMM/yyyy hh:mm tt",
21038                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
21039                                 M: "dd MMMM"
21040                         },
21041                         convert: {
21042                     _yearInfo: [
21043                         // MonthLengthFlags, Gregorian Date
21044                         [746, -2198707200000],
21045                         [1769, -2168121600000],
21046                         [3794, -2137449600000],
21047                         [3748, -2106777600000],
21048                         [3402, -2076192000000],
21049                         [2710, -2045606400000],
21050                         [1334, -2015020800000],
21051                         [2741, -1984435200000],
21052                         [3498, -1953763200000],
21053                         [2980, -1923091200000],
21054                         [2889, -1892505600000],
21055                         [2707, -1861920000000],
21056                         [1323, -1831334400000],
21057                         [2647, -1800748800000],
21058                         [1206, -1770076800000],
21059                         [2741, -1739491200000],
21060                         [1450, -1708819200000],
21061                         [3413, -1678233600000],
21062                         [3370, -1647561600000],
21063                         [2646, -1616976000000],
21064                         [1198, -1586390400000],
21065                         [2397, -1555804800000],
21066                         [748, -1525132800000],
21067                         [1749, -1494547200000],
21068                         [1706, -1463875200000],
21069                         [1365, -1433289600000],
21070                         [1195, -1402704000000],
21071                         [2395, -1372118400000],
21072                         [698, -1341446400000],
21073                         [1397, -1310860800000],
21074                         [2994, -1280188800000],
21075                         [1892, -1249516800000],
21076                         [1865, -1218931200000],
21077                         [1621, -1188345600000],
21078                         [683, -1157760000000],
21079                         [1371, -1127174400000],
21080                         [2778, -1096502400000],
21081                         [1748, -1065830400000],
21082                         [3785, -1035244800000],
21083                         [3474, -1004572800000],
21084                         [3365, -973987200000],
21085                         [2637, -943401600000],
21086                         [685, -912816000000],
21087                         [1389, -882230400000],
21088                         [2922, -851558400000],
21089                         [2898, -820886400000],
21090                         [2725, -790300800000],
21091                         [2635, -759715200000],
21092                         [1175, -729129600000],
21093                         [2359, -698544000000],
21094                         [694, -667872000000],
21095                         [1397, -637286400000],
21096                         [3434, -606614400000],
21097                         [3410, -575942400000],
21098                         [2710, -545356800000],
21099                         [2349, -514771200000],
21100                         [605, -484185600000],
21101                         [1245, -453600000000],
21102                         [2778, -422928000000],
21103                         [1492, -392256000000],
21104                         [3497, -361670400000],
21105                         [3410, -330998400000],
21106                         [2730, -300412800000],
21107                         [1238, -269827200000],
21108                         [2486, -239241600000],
21109                         [884, -208569600000],
21110                         [1897, -177984000000],
21111                         [1874, -147312000000],
21112                         [1701, -116726400000],
21113                         [1355, -86140800000],
21114                         [2731, -55555200000],
21115                         [1370, -24883200000],
21116                         [2773, 5702400000],
21117                         [3538, 36374400000],
21118                         [3492, 67046400000],
21119                         [3401, 97632000000],
21120                         [2709, 128217600000],
21121                         [1325, 158803200000],
21122                         [2653, 189388800000],
21123                         [1370, 220060800000],
21124                         [2773, 250646400000],
21125                         [1706, 281318400000],
21126                         [1685, 311904000000],
21127                         [1323, 342489600000],
21128                         [2647, 373075200000],
21129                         [1198, 403747200000],
21130                         [2422, 434332800000],
21131                         [1388, 465004800000],
21132                         [2901, 495590400000],
21133                         [2730, 526262400000],
21134                         [2645, 556848000000],
21135                         [1197, 587433600000],
21136                         [2397, 618019200000],
21137                         [730, 648691200000],
21138                         [1497, 679276800000],
21139                         [3506, 709948800000],
21140                         [2980, 740620800000],
21141                         [2890, 771206400000],
21142                         [2645, 801792000000],
21143                         [693, 832377600000],
21144                         [1397, 862963200000],
21145                         [2922, 893635200000],
21146                         [3026, 924307200000],
21147                         [3012, 954979200000],
21148                         [2953, 985564800000],
21149                         [2709, 1016150400000],
21150                         [1325, 1046736000000],
21151                         [1453, 1077321600000],
21152                         [2922, 1107993600000],
21153                         [1748, 1138665600000],
21154                         [3529, 1169251200000],
21155                         [3474, 1199923200000],
21156                         [2726, 1230508800000],
21157                         [2390, 1261094400000],
21158                         [686, 1291680000000],
21159                         [1389, 1322265600000],
21160                         [874, 1352937600000],
21161                         [2901, 1383523200000],
21162                         [2730, 1414195200000],
21163                         [2381, 1444780800000],
21164                         [1181, 1475366400000],
21165                         [2397, 1505952000000],
21166                         [698, 1536624000000],
21167                         [1461, 1567209600000],
21168                         [1450, 1597881600000],
21169                         [3413, 1628467200000],
21170                         [2714, 1659139200000],
21171                         [2350, 1689724800000],
21172                         [622, 1720310400000],
21173                         [1373, 1750896000000],
21174                         [2778, 1781568000000],
21175                         [1748, 1812240000000],
21176                         [1701, 1842825600000],
21177                         [0, 1873411200000]
21178                     ],
21179                     minDate: -2198707200000,
21180                     maxDate: 1873411199999,
21181                     toGregorian: function(hyear, hmonth, hday) {
21182                         var days = hday - 1,
21183                             gyear = hyear - 1318;
21184                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
21185                         var info = this._yearInfo[gyear],
21186                             gdate = new Date(info[1]),
21187                             monthLength = info[0];
21188                         // Date's ticks in javascript are always from the GMT time,
21189                         // but we are interested in the gregorian date in the same timezone,
21190                         // not what the gregorian date was at GMT time, so we adjust for the offset.
21191                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
21192                         for (var i = 0; i < hmonth; i++) {
21193                             days += 29 + (monthLength & 1);
21194                             monthLength = monthLength >> 1;
21195                         }
21196                         gdate.setDate(gdate.getDate() + days);
21197                         return gdate;
21198                     },
21199                     fromGregorian: function(gdate) {
21200                         // Date's ticks in javascript are always from the GMT time,
21201                         // but we are interested in the hijri date in the same timezone,
21202                         // not what the hijri date was at GMT time, so we adjust for the offset.
21203                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
21204                         if (ticks < this.minDate || ticks > this.maxDate) return null;
21205                         var hyear = 0,
21206                             hmonth = 1;
21207                         // find the earliest gregorian date in the array that is greater than or equal to the given date
21208                         while (ticks > this._yearInfo[++hyear][1]) { }
21209                         if (ticks !== this._yearInfo[hyear][1]) {
21210                             hyear--;
21211                         }
21212                         var info = this._yearInfo[hyear],
21213                             // how many days has it been since the date we found in the array?
21214                             // 86400000 = ticks per day
21215                             days = Math.floor((ticks - info[1]) / 86400000),
21216                             monthLength = info[0];
21217                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
21218                         // now increment day/month based on the total days, considering
21219                         // how many days are in each month. We cannot run past the year
21220                         // mark since we would have found a different array entry in that case.
21221                         var daysInMonth = 29 + (monthLength & 1);
21222                         while (days >= daysInMonth) {
21223                             days -= daysInMonth;
21224                             monthLength = monthLength >> 1;
21225                             daysInMonth = 29 + (monthLength & 1);
21226                             hmonth++;
21227                         }
21228                         // remaining days is less than is in one month, thus is the day of the month we landed on
21229                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
21230                         return [hyear, hmonth - 1, days + 1];
21231                     }
21232                         }
21233                 },
21234                 Hijri: {
21235                         name: "Hijri",
21236                         firstDay: 6,
21237                         days: {
21238                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21239                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21240                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21241                         },
21242                         months: {
21243                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
21244                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
21245                         },
21246                         AM: ["ص","ص","ص"],
21247                         PM: ["م","م","م"],
21248                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
21249                         twoDigitYearMax: 1451,
21250                         patterns: {
21251                                 d: "dd/MM/yy",
21252                                 D: "dd/MM/yyyy",
21253                                 t: "hh:mm tt",
21254                                 T: "hh:mm:ss tt",
21255                                 f: "dd/MM/yyyy hh:mm tt",
21256                                 F: "dd/MM/yyyy hh:mm:ss tt",
21257                                 M: "dd MMMM"
21258                         },
21259                         convert: {
21260                     // Adapted to Script from System.Globalization.HijriCalendar
21261                     ticks1970: 62135596800000,
21262                     // number of days leading up to each month
21263                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
21264                     minDate: -42521673600000,
21265                     maxDate: 253402300799999,
21266                     // The number of days to add or subtract from the calendar to accommodate the variances
21267                     // in the start and the end of Ramadan and to accommodate the date difference between
21268                     // countries/regions. May be dynamically adjusted based on user preference, but should
21269                     // remain in the range of -2 to 2, inclusive.
21270                     hijriAdjustment: 0,
21271                     toGregorian: function(hyear, hmonth, hday) {
21272                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
21273                         // 86400000 = ticks per day
21274                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
21275                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
21276                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
21277                         // date in the current timezone.
21278                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
21279                         return gdate;
21280                     },
21281                     fromGregorian: function(gdate) {
21282                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
21283                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
21284                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
21285                         // very particular formula determined by someone smart, adapted from the server-side implementation.
21286                         // it approximates the hijri year.
21287                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
21288                             absDays = this.daysToYear(hyear),
21289                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
21290                         // hyear is just approximate, it may need adjustment up or down by 1.
21291                         if (daysSinceJan0101 < absDays) {
21292                             hyear--;
21293                             absDays -= daysInYear;
21294                         }
21295                         else if (daysSinceJan0101 === absDays) {
21296                             hyear--;
21297                             absDays = this.daysToYear(hyear);
21298                         }
21299                         else {
21300                             if (daysSinceJan0101 > (absDays + daysInYear)) {
21301                                 absDays += daysInYear;
21302                                 hyear++;
21303                             }
21304                         }
21305                         // determine month by looking at how many days into the hyear we are
21306                         // monthDays contains the number of days up to each month.
21307                         hmonth = 0;
21308                         var daysIntoYear = daysSinceJan0101 - absDays;
21309                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
21310                             hmonth++;
21311                         }
21312                         hmonth--;
21313                         hday = daysIntoYear - this.monthDays[hmonth];
21314                         return [hyear, hmonth, hday];
21315                     },
21316                     daysToYear: function(year) {
21317                         // calculates how many days since Jan 1, 0001
21318                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
21319                             yearsInto30 = year - yearsToYear30 - 1,
21320                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
21321                         while (yearsInto30 > 0) {
21322                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
21323                             yearsInto30--;
21324                         }
21325                         return days;
21326                     },
21327                     isLeapYear: function(year) {
21328                         return ((((year * 11) + 14) % 30) < 11);
21329                     }
21330                         }
21331                 },
21332                 Gregorian_MiddleEastFrench: {
21333                         name: "Gregorian_MiddleEastFrench",
21334                         firstDay: 6,
21335                         days: {
21336                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
21337                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
21338                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
21339                         },
21340                         months: {
21341                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
21342                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
21343                         },
21344                         AM: ["ص","ص","ص"],
21345                         PM: ["م","م","م"],
21346                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
21347                         patterns: {
21348                                 d: "MM/dd/yyyy",
21349                                 t: "hh:mm tt",
21350                                 T: "hh:mm:ss tt",
21351                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
21352                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
21353                                 M: "dd MMMM"
21354                         }
21355                 },
21356                 Gregorian_Arabic: {
21357                         name: "Gregorian_Arabic",
21358                         firstDay: 6,
21359                         days: {
21360                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21361                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21362                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21363                         },
21364                         months: {
21365                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
21366                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
21367                         },
21368                         AM: ["ص","ص","ص"],
21369                         PM: ["م","م","م"],
21370                         eras: [{"name":"م","start":null,"offset":0}],
21371                         patterns: {
21372                                 d: "MM/dd/yyyy",
21373                                 t: "hh:mm tt",
21374                                 T: "hh:mm:ss tt",
21375                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
21376                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
21377                         }
21378                 },
21379                 Gregorian_TransliteratedFrench: {
21380                         name: "Gregorian_TransliteratedFrench",
21381                         firstDay: 6,
21382                         days: {
21383                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21384                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21385                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21386                         },
21387                         months: {
21388                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
21389                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
21390                         },
21391                         AM: ["ص","ص","ص"],
21392                         PM: ["م","م","م"],
21393                         eras: [{"name":"م","start":null,"offset":0}],
21394                         patterns: {
21395                                 d: "MM/dd/yyyy",
21396                                 t: "hh:mm tt",
21397                                 T: "hh:mm:ss tt",
21398                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
21399                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
21400                         }
21401                 }
21402         }
21403 });
21404
21405 Globalize.addCultureInfo( "es-UY", "default", {
21406         name: "es-UY",
21407         englishName: "Spanish (Uruguay)",
21408         nativeName: "Español (Uruguay)",
21409         language: "es",
21410         numberFormat: {
21411                 ",": ".",
21412                 ".": ",",
21413                 NaN: "NeuN",
21414                 negativeInfinity: "-Infinito",
21415                 positiveInfinity: "Infinito",
21416                 percent: {
21417                         ",": ".",
21418                         ".": ","
21419                 },
21420                 currency: {
21421                         pattern: ["($ n)","$ n"],
21422                         ",": ".",
21423                         ".": ",",
21424                         symbol: "$U"
21425                 }
21426         },
21427         calendars: {
21428                 standard: {
21429                         firstDay: 1,
21430                         days: {
21431                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
21432                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
21433                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
21434                         },
21435                         months: {
21436                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
21437                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
21438                         },
21439                         AM: ["a.m.","a.m.","A.M."],
21440                         PM: ["p.m.","p.m.","P.M."],
21441                         eras: [{"name":"d.C.","start":null,"offset":0}],
21442                         patterns: {
21443                                 d: "dd/MM/yyyy",
21444                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
21445                                 t: "hh:mm tt",
21446                                 T: "hh:mm:ss tt",
21447                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
21448                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
21449                                 M: "dd MMMM",
21450                                 Y: "MMMM' de 'yyyy"
21451                         }
21452                 }
21453         }
21454 });
21455
21456 Globalize.addCultureInfo( "ar-BH", "default", {
21457         name: "ar-BH",
21458         englishName: "Arabic (Bahrain)",
21459         nativeName: "العربية (البحرين)",
21460         language: "ar",
21461         isRTL: true,
21462         numberFormat: {
21463                 pattern: ["n-"],
21464                 decimals: 3,
21465                 NaN: "ليس برقم",
21466                 negativeInfinity: "-لا نهاية",
21467                 positiveInfinity: "+لا نهاية",
21468                 percent: {
21469                         decimals: 3
21470                 },
21471                 currency: {
21472                         pattern: ["$n-","$ n"],
21473                         decimals: 3,
21474                         symbol: "د.ب.‏"
21475                 }
21476         },
21477         calendars: {
21478                 standard: {
21479                         firstDay: 6,
21480                         days: {
21481                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21482                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21483                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21484                         },
21485                         months: {
21486                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
21487                                 namesAbbr: ["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
21488                         },
21489                         AM: ["ص","ص","ص"],
21490                         PM: ["م","م","م"],
21491                         patterns: {
21492                                 d: "dd/MM/yyyy",
21493                                 D: "dd MMMM, yyyy",
21494                                 t: "hh:mm tt",
21495                                 T: "hh:mm:ss tt",
21496                                 f: "dd MMMM, yyyy hh:mm tt",
21497                                 F: "dd MMMM, yyyy hh:mm:ss tt",
21498                                 M: "dd MMMM"
21499                         }
21500                 },
21501                 UmAlQura: {
21502                         name: "UmAlQura",
21503                         firstDay: 6,
21504                         days: {
21505                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21506                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21507                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21508                         },
21509                         months: {
21510                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
21511                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
21512                         },
21513                         AM: ["ص","ص","ص"],
21514                         PM: ["م","م","م"],
21515                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
21516                         twoDigitYearMax: 1451,
21517                         patterns: {
21518                                 d: "dd/MM/yy",
21519                                 D: "dd/MMMM/yyyy",
21520                                 t: "hh:mm tt",
21521                                 T: "hh:mm:ss tt",
21522                                 f: "dd/MMMM/yyyy hh:mm tt",
21523                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
21524                                 M: "dd MMMM"
21525                         },
21526                         convert: {
21527                     _yearInfo: [
21528                         // MonthLengthFlags, Gregorian Date
21529                         [746, -2198707200000],
21530                         [1769, -2168121600000],
21531                         [3794, -2137449600000],
21532                         [3748, -2106777600000],
21533                         [3402, -2076192000000],
21534                         [2710, -2045606400000],
21535                         [1334, -2015020800000],
21536                         [2741, -1984435200000],
21537                         [3498, -1953763200000],
21538                         [2980, -1923091200000],
21539                         [2889, -1892505600000],
21540                         [2707, -1861920000000],
21541                         [1323, -1831334400000],
21542                         [2647, -1800748800000],
21543                         [1206, -1770076800000],
21544                         [2741, -1739491200000],
21545                         [1450, -1708819200000],
21546                         [3413, -1678233600000],
21547                         [3370, -1647561600000],
21548                         [2646, -1616976000000],
21549                         [1198, -1586390400000],
21550                         [2397, -1555804800000],
21551                         [748, -1525132800000],
21552                         [1749, -1494547200000],
21553                         [1706, -1463875200000],
21554                         [1365, -1433289600000],
21555                         [1195, -1402704000000],
21556                         [2395, -1372118400000],
21557                         [698, -1341446400000],
21558                         [1397, -1310860800000],
21559                         [2994, -1280188800000],
21560                         [1892, -1249516800000],
21561                         [1865, -1218931200000],
21562                         [1621, -1188345600000],
21563                         [683, -1157760000000],
21564                         [1371, -1127174400000],
21565                         [2778, -1096502400000],
21566                         [1748, -1065830400000],
21567                         [3785, -1035244800000],
21568                         [3474, -1004572800000],
21569                         [3365, -973987200000],
21570                         [2637, -943401600000],
21571                         [685, -912816000000],
21572                         [1389, -882230400000],
21573                         [2922, -851558400000],
21574                         [2898, -820886400000],
21575                         [2725, -790300800000],
21576                         [2635, -759715200000],
21577                         [1175, -729129600000],
21578                         [2359, -698544000000],
21579                         [694, -667872000000],
21580                         [1397, -637286400000],
21581                         [3434, -606614400000],
21582                         [3410, -575942400000],
21583                         [2710, -545356800000],
21584                         [2349, -514771200000],
21585                         [605, -484185600000],
21586                         [1245, -453600000000],
21587                         [2778, -422928000000],
21588                         [1492, -392256000000],
21589                         [3497, -361670400000],
21590                         [3410, -330998400000],
21591                         [2730, -300412800000],
21592                         [1238, -269827200000],
21593                         [2486, -239241600000],
21594                         [884, -208569600000],
21595                         [1897, -177984000000],
21596                         [1874, -147312000000],
21597                         [1701, -116726400000],
21598                         [1355, -86140800000],
21599                         [2731, -55555200000],
21600                         [1370, -24883200000],
21601                         [2773, 5702400000],
21602                         [3538, 36374400000],
21603                         [3492, 67046400000],
21604                         [3401, 97632000000],
21605                         [2709, 128217600000],
21606                         [1325, 158803200000],
21607                         [2653, 189388800000],
21608                         [1370, 220060800000],
21609                         [2773, 250646400000],
21610                         [1706, 281318400000],
21611                         [1685, 311904000000],
21612                         [1323, 342489600000],
21613                         [2647, 373075200000],
21614                         [1198, 403747200000],
21615                         [2422, 434332800000],
21616                         [1388, 465004800000],
21617                         [2901, 495590400000],
21618                         [2730, 526262400000],
21619                         [2645, 556848000000],
21620                         [1197, 587433600000],
21621                         [2397, 618019200000],
21622                         [730, 648691200000],
21623                         [1497, 679276800000],
21624                         [3506, 709948800000],
21625                         [2980, 740620800000],
21626                         [2890, 771206400000],
21627                         [2645, 801792000000],
21628                         [693, 832377600000],
21629                         [1397, 862963200000],
21630                         [2922, 893635200000],
21631                         [3026, 924307200000],
21632                         [3012, 954979200000],
21633                         [2953, 985564800000],
21634                         [2709, 1016150400000],
21635                         [1325, 1046736000000],
21636                         [1453, 1077321600000],
21637                         [2922, 1107993600000],
21638                         [1748, 1138665600000],
21639                         [3529, 1169251200000],
21640                         [3474, 1199923200000],
21641                         [2726, 1230508800000],
21642                         [2390, 1261094400000],
21643                         [686, 1291680000000],
21644                         [1389, 1322265600000],
21645                         [874, 1352937600000],
21646                         [2901, 1383523200000],
21647                         [2730, 1414195200000],
21648                         [2381, 1444780800000],
21649                         [1181, 1475366400000],
21650                         [2397, 1505952000000],
21651                         [698, 1536624000000],
21652                         [1461, 1567209600000],
21653                         [1450, 1597881600000],
21654                         [3413, 1628467200000],
21655                         [2714, 1659139200000],
21656                         [2350, 1689724800000],
21657                         [622, 1720310400000],
21658                         [1373, 1750896000000],
21659                         [2778, 1781568000000],
21660                         [1748, 1812240000000],
21661                         [1701, 1842825600000],
21662                         [0, 1873411200000]
21663                     ],
21664                     minDate: -2198707200000,
21665                     maxDate: 1873411199999,
21666                     toGregorian: function(hyear, hmonth, hday) {
21667                         var days = hday - 1,
21668                             gyear = hyear - 1318;
21669                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
21670                         var info = this._yearInfo[gyear],
21671                             gdate = new Date(info[1]),
21672                             monthLength = info[0];
21673                         // Date's ticks in javascript are always from the GMT time,
21674                         // but we are interested in the gregorian date in the same timezone,
21675                         // not what the gregorian date was at GMT time, so we adjust for the offset.
21676                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
21677                         for (var i = 0; i < hmonth; i++) {
21678                             days += 29 + (monthLength & 1);
21679                             monthLength = monthLength >> 1;
21680                         }
21681                         gdate.setDate(gdate.getDate() + days);
21682                         return gdate;
21683                     },
21684                     fromGregorian: function(gdate) {
21685                         // Date's ticks in javascript are always from the GMT time,
21686                         // but we are interested in the hijri date in the same timezone,
21687                         // not what the hijri date was at GMT time, so we adjust for the offset.
21688                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
21689                         if (ticks < this.minDate || ticks > this.maxDate) return null;
21690                         var hyear = 0,
21691                             hmonth = 1;
21692                         // find the earliest gregorian date in the array that is greater than or equal to the given date
21693                         while (ticks > this._yearInfo[++hyear][1]) { }
21694                         if (ticks !== this._yearInfo[hyear][1]) {
21695                             hyear--;
21696                         }
21697                         var info = this._yearInfo[hyear],
21698                             // how many days has it been since the date we found in the array?
21699                             // 86400000 = ticks per day
21700                             days = Math.floor((ticks - info[1]) / 86400000),
21701                             monthLength = info[0];
21702                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
21703                         // now increment day/month based on the total days, considering
21704                         // how many days are in each month. We cannot run past the year
21705                         // mark since we would have found a different array entry in that case.
21706                         var daysInMonth = 29 + (monthLength & 1);
21707                         while (days >= daysInMonth) {
21708                             days -= daysInMonth;
21709                             monthLength = monthLength >> 1;
21710                             daysInMonth = 29 + (monthLength & 1);
21711                             hmonth++;
21712                         }
21713                         // remaining days is less than is in one month, thus is the day of the month we landed on
21714                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
21715                         return [hyear, hmonth - 1, days + 1];
21716                     }
21717                         }
21718                 },
21719                 Hijri: {
21720                         name: "Hijri",
21721                         firstDay: 6,
21722                         days: {
21723                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21724                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21725                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21726                         },
21727                         months: {
21728                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
21729                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
21730                         },
21731                         AM: ["ص","ص","ص"],
21732                         PM: ["م","م","م"],
21733                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
21734                         twoDigitYearMax: 1451,
21735                         patterns: {
21736                                 d: "dd/MM/yy",
21737                                 D: "dd/MM/yyyy",
21738                                 t: "hh:mm tt",
21739                                 T: "hh:mm:ss tt",
21740                                 f: "dd/MM/yyyy hh:mm tt",
21741                                 F: "dd/MM/yyyy hh:mm:ss tt",
21742                                 M: "dd MMMM"
21743                         },
21744                         convert: {
21745                     // Adapted to Script from System.Globalization.HijriCalendar
21746                     ticks1970: 62135596800000,
21747                     // number of days leading up to each month
21748                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
21749                     minDate: -42521673600000,
21750                     maxDate: 253402300799999,
21751                     // The number of days to add or subtract from the calendar to accommodate the variances
21752                     // in the start and the end of Ramadan and to accommodate the date difference between
21753                     // countries/regions. May be dynamically adjusted based on user preference, but should
21754                     // remain in the range of -2 to 2, inclusive.
21755                     hijriAdjustment: 0,
21756                     toGregorian: function(hyear, hmonth, hday) {
21757                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
21758                         // 86400000 = ticks per day
21759                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
21760                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
21761                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
21762                         // date in the current timezone.
21763                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
21764                         return gdate;
21765                     },
21766                     fromGregorian: function(gdate) {
21767                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
21768                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
21769                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
21770                         // very particular formula determined by someone smart, adapted from the server-side implementation.
21771                         // it approximates the hijri year.
21772                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
21773                             absDays = this.daysToYear(hyear),
21774                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
21775                         // hyear is just approximate, it may need adjustment up or down by 1.
21776                         if (daysSinceJan0101 < absDays) {
21777                             hyear--;
21778                             absDays -= daysInYear;
21779                         }
21780                         else if (daysSinceJan0101 === absDays) {
21781                             hyear--;
21782                             absDays = this.daysToYear(hyear);
21783                         }
21784                         else {
21785                             if (daysSinceJan0101 > (absDays + daysInYear)) {
21786                                 absDays += daysInYear;
21787                                 hyear++;
21788                             }
21789                         }
21790                         // determine month by looking at how many days into the hyear we are
21791                         // monthDays contains the number of days up to each month.
21792                         hmonth = 0;
21793                         var daysIntoYear = daysSinceJan0101 - absDays;
21794                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
21795                             hmonth++;
21796                         }
21797                         hmonth--;
21798                         hday = daysIntoYear - this.monthDays[hmonth];
21799                         return [hyear, hmonth, hday];
21800                     },
21801                     daysToYear: function(year) {
21802                         // calculates how many days since Jan 1, 0001
21803                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
21804                             yearsInto30 = year - yearsToYear30 - 1,
21805                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
21806                         while (yearsInto30 > 0) {
21807                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
21808                             yearsInto30--;
21809                         }
21810                         return days;
21811                     },
21812                     isLeapYear: function(year) {
21813                         return ((((year * 11) + 14) % 30) < 11);
21814                     }
21815                         }
21816                 },
21817                 Gregorian_MiddleEastFrench: {
21818                         name: "Gregorian_MiddleEastFrench",
21819                         firstDay: 6,
21820                         days: {
21821                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
21822                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
21823                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
21824                         },
21825                         months: {
21826                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
21827                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
21828                         },
21829                         AM: ["ص","ص","ص"],
21830                         PM: ["م","م","م"],
21831                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
21832                         patterns: {
21833                                 d: "MM/dd/yyyy",
21834                                 t: "hh:mm tt",
21835                                 T: "hh:mm:ss tt",
21836                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
21837                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
21838                                 M: "dd MMMM"
21839                         }
21840                 },
21841                 Gregorian_Arabic: {
21842                         name: "Gregorian_Arabic",
21843                         firstDay: 6,
21844                         days: {
21845                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21846                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21847                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21848                         },
21849                         months: {
21850                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
21851                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
21852                         },
21853                         AM: ["ص","ص","ص"],
21854                         PM: ["م","م","م"],
21855                         eras: [{"name":"م","start":null,"offset":0}],
21856                         patterns: {
21857                                 d: "MM/dd/yyyy",
21858                                 t: "hh:mm tt",
21859                                 T: "hh:mm:ss tt",
21860                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
21861                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
21862                         }
21863                 },
21864                 Gregorian_TransliteratedFrench: {
21865                         name: "Gregorian_TransliteratedFrench",
21866                         firstDay: 6,
21867                         days: {
21868                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21869                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21870                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21871                         },
21872                         months: {
21873                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
21874                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
21875                         },
21876                         AM: ["ص","ص","ص"],
21877                         PM: ["م","م","م"],
21878                         eras: [{"name":"م","start":null,"offset":0}],
21879                         patterns: {
21880                                 d: "MM/dd/yyyy",
21881                                 t: "hh:mm tt",
21882                                 T: "hh:mm:ss tt",
21883                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
21884                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
21885                         }
21886                 }
21887         }
21888 });
21889
21890 Globalize.addCultureInfo( "es-PY", "default", {
21891         name: "es-PY",
21892         englishName: "Spanish (Paraguay)",
21893         nativeName: "Español (Paraguay)",
21894         language: "es",
21895         numberFormat: {
21896                 ",": ".",
21897                 ".": ",",
21898                 NaN: "NeuN",
21899                 negativeInfinity: "-Infinito",
21900                 positiveInfinity: "Infinito",
21901                 percent: {
21902                         ",": ".",
21903                         ".": ","
21904                 },
21905                 currency: {
21906                         pattern: ["($ n)","$ n"],
21907                         ",": ".",
21908                         ".": ",",
21909                         symbol: "Gs"
21910                 }
21911         },
21912         calendars: {
21913                 standard: {
21914                         firstDay: 1,
21915                         days: {
21916                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
21917                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
21918                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
21919                         },
21920                         months: {
21921                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
21922                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
21923                         },
21924                         AM: ["a.m.","a.m.","A.M."],
21925                         PM: ["p.m.","p.m.","P.M."],
21926                         eras: [{"name":"d.C.","start":null,"offset":0}],
21927                         patterns: {
21928                                 d: "dd/MM/yyyy",
21929                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
21930                                 t: "hh:mm tt",
21931                                 T: "hh:mm:ss tt",
21932                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
21933                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
21934                                 M: "dd MMMM",
21935                                 Y: "MMMM' de 'yyyy"
21936                         }
21937                 }
21938         }
21939 });
21940
21941 Globalize.addCultureInfo( "ar-QA", "default", {
21942         name: "ar-QA",
21943         englishName: "Arabic (Qatar)",
21944         nativeName: "العربية (قطر)",
21945         language: "ar",
21946         isRTL: true,
21947         numberFormat: {
21948                 pattern: ["n-"],
21949                 NaN: "ليس برقم",
21950                 negativeInfinity: "-لا نهاية",
21951                 positiveInfinity: "+لا نهاية",
21952                 currency: {
21953                         pattern: ["$n-","$ n"],
21954                         symbol: "ر.ق.‏"
21955                 }
21956         },
21957         calendars: {
21958                 standard: {
21959                         firstDay: 6,
21960                         days: {
21961                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21962                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21963                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21964                         },
21965                         months: {
21966                                 names: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""],
21967                                 namesAbbr: ["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر",""]
21968                         },
21969                         AM: ["ص","ص","ص"],
21970                         PM: ["م","م","م"],
21971                         patterns: {
21972                                 d: "dd/MM/yyyy",
21973                                 D: "dd MMMM, yyyy",
21974                                 t: "hh:mm tt",
21975                                 T: "hh:mm:ss tt",
21976                                 f: "dd MMMM, yyyy hh:mm tt",
21977                                 F: "dd MMMM, yyyy hh:mm:ss tt",
21978                                 M: "dd MMMM"
21979                         }
21980                 },
21981                 UmAlQura: {
21982                         name: "UmAlQura",
21983                         firstDay: 6,
21984                         days: {
21985                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21986                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
21987                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
21988                         },
21989                         months: {
21990                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
21991                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
21992                         },
21993                         AM: ["ص","ص","ص"],
21994                         PM: ["م","م","م"],
21995                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
21996                         twoDigitYearMax: 1451,
21997                         patterns: {
21998                                 d: "dd/MM/yy",
21999                                 D: "dd/MMMM/yyyy",
22000                                 t: "hh:mm tt",
22001                                 T: "hh:mm:ss tt",
22002                                 f: "dd/MMMM/yyyy hh:mm tt",
22003                                 F: "dd/MMMM/yyyy hh:mm:ss tt",
22004                                 M: "dd MMMM"
22005                         },
22006                         convert: {
22007                     _yearInfo: [
22008                         // MonthLengthFlags, Gregorian Date
22009                         [746, -2198707200000],
22010                         [1769, -2168121600000],
22011                         [3794, -2137449600000],
22012                         [3748, -2106777600000],
22013                         [3402, -2076192000000],
22014                         [2710, -2045606400000],
22015                         [1334, -2015020800000],
22016                         [2741, -1984435200000],
22017                         [3498, -1953763200000],
22018                         [2980, -1923091200000],
22019                         [2889, -1892505600000],
22020                         [2707, -1861920000000],
22021                         [1323, -1831334400000],
22022                         [2647, -1800748800000],
22023                         [1206, -1770076800000],
22024                         [2741, -1739491200000],
22025                         [1450, -1708819200000],
22026                         [3413, -1678233600000],
22027                         [3370, -1647561600000],
22028                         [2646, -1616976000000],
22029                         [1198, -1586390400000],
22030                         [2397, -1555804800000],
22031                         [748, -1525132800000],
22032                         [1749, -1494547200000],
22033                         [1706, -1463875200000],
22034                         [1365, -1433289600000],
22035                         [1195, -1402704000000],
22036                         [2395, -1372118400000],
22037                         [698, -1341446400000],
22038                         [1397, -1310860800000],
22039                         [2994, -1280188800000],
22040                         [1892, -1249516800000],
22041                         [1865, -1218931200000],
22042                         [1621, -1188345600000],
22043                         [683, -1157760000000],
22044                         [1371, -1127174400000],
22045                         [2778, -1096502400000],
22046                         [1748, -1065830400000],
22047                         [3785, -1035244800000],
22048                         [3474, -1004572800000],
22049                         [3365, -973987200000],
22050                         [2637, -943401600000],
22051                         [685, -912816000000],
22052                         [1389, -882230400000],
22053                         [2922, -851558400000],
22054                         [2898, -820886400000],
22055                         [2725, -790300800000],
22056                         [2635, -759715200000],
22057                         [1175, -729129600000],
22058                         [2359, -698544000000],
22059                         [694, -667872000000],
22060                         [1397, -637286400000],
22061                         [3434, -606614400000],
22062                         [3410, -575942400000],
22063                         [2710, -545356800000],
22064                         [2349, -514771200000],
22065                         [605, -484185600000],
22066                         [1245, -453600000000],
22067                         [2778, -422928000000],
22068                         [1492, -392256000000],
22069                         [3497, -361670400000],
22070                         [3410, -330998400000],
22071                         [2730, -300412800000],
22072                         [1238, -269827200000],
22073                         [2486, -239241600000],
22074                         [884, -208569600000],
22075                         [1897, -177984000000],
22076                         [1874, -147312000000],
22077                         [1701, -116726400000],
22078                         [1355, -86140800000],
22079                         [2731, -55555200000],
22080                         [1370, -24883200000],
22081                         [2773, 5702400000],
22082                         [3538, 36374400000],
22083                         [3492, 67046400000],
22084                         [3401, 97632000000],
22085                         [2709, 128217600000],
22086                         [1325, 158803200000],
22087                         [2653, 189388800000],
22088                         [1370, 220060800000],
22089                         [2773, 250646400000],
22090                         [1706, 281318400000],
22091                         [1685, 311904000000],
22092                         [1323, 342489600000],
22093                         [2647, 373075200000],
22094                         [1198, 403747200000],
22095                         [2422, 434332800000],
22096                         [1388, 465004800000],
22097                         [2901, 495590400000],
22098                         [2730, 526262400000],
22099                         [2645, 556848000000],
22100                         [1197, 587433600000],
22101                         [2397, 618019200000],
22102                         [730, 648691200000],
22103                         [1497, 679276800000],
22104                         [3506, 709948800000],
22105                         [2980, 740620800000],
22106                         [2890, 771206400000],
22107                         [2645, 801792000000],
22108                         [693, 832377600000],
22109                         [1397, 862963200000],
22110                         [2922, 893635200000],
22111                         [3026, 924307200000],
22112                         [3012, 954979200000],
22113                         [2953, 985564800000],
22114                         [2709, 1016150400000],
22115                         [1325, 1046736000000],
22116                         [1453, 1077321600000],
22117                         [2922, 1107993600000],
22118                         [1748, 1138665600000],
22119                         [3529, 1169251200000],
22120                         [3474, 1199923200000],
22121                         [2726, 1230508800000],
22122                         [2390, 1261094400000],
22123                         [686, 1291680000000],
22124                         [1389, 1322265600000],
22125                         [874, 1352937600000],
22126                         [2901, 1383523200000],
22127                         [2730, 1414195200000],
22128                         [2381, 1444780800000],
22129                         [1181, 1475366400000],
22130                         [2397, 1505952000000],
22131                         [698, 1536624000000],
22132                         [1461, 1567209600000],
22133                         [1450, 1597881600000],
22134                         [3413, 1628467200000],
22135                         [2714, 1659139200000],
22136                         [2350, 1689724800000],
22137                         [622, 1720310400000],
22138                         [1373, 1750896000000],
22139                         [2778, 1781568000000],
22140                         [1748, 1812240000000],
22141                         [1701, 1842825600000],
22142                         [0, 1873411200000]
22143                     ],
22144                     minDate: -2198707200000,
22145                     maxDate: 1873411199999,
22146                     toGregorian: function(hyear, hmonth, hday) {
22147                         var days = hday - 1,
22148                             gyear = hyear - 1318;
22149                         if (gyear < 0 || gyear >= this._yearInfo.length) return null;
22150                         var info = this._yearInfo[gyear],
22151                             gdate = new Date(info[1]),
22152                             monthLength = info[0];
22153                         // Date's ticks in javascript are always from the GMT time,
22154                         // but we are interested in the gregorian date in the same timezone,
22155                         // not what the gregorian date was at GMT time, so we adjust for the offset.
22156                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
22157                         for (var i = 0; i < hmonth; i++) {
22158                             days += 29 + (monthLength & 1);
22159                             monthLength = monthLength >> 1;
22160                         }
22161                         gdate.setDate(gdate.getDate() + days);
22162                         return gdate;
22163                     },
22164                     fromGregorian: function(gdate) {
22165                         // Date's ticks in javascript are always from the GMT time,
22166                         // but we are interested in the hijri date in the same timezone,
22167                         // not what the hijri date was at GMT time, so we adjust for the offset.
22168                         var ticks = gdate - gdate.getTimezoneOffset() * 60000;
22169                         if (ticks < this.minDate || ticks > this.maxDate) return null;
22170                         var hyear = 0,
22171                             hmonth = 1;
22172                         // find the earliest gregorian date in the array that is greater than or equal to the given date
22173                         while (ticks > this._yearInfo[++hyear][1]) { }
22174                         if (ticks !== this._yearInfo[hyear][1]) {
22175                             hyear--;
22176                         }
22177                         var info = this._yearInfo[hyear],
22178                             // how many days has it been since the date we found in the array?
22179                             // 86400000 = ticks per day
22180                             days = Math.floor((ticks - info[1]) / 86400000),
22181                             monthLength = info[0];
22182                         hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N
22183                         // now increment day/month based on the total days, considering
22184                         // how many days are in each month. We cannot run past the year
22185                         // mark since we would have found a different array entry in that case.
22186                         var daysInMonth = 29 + (monthLength & 1);
22187                         while (days >= daysInMonth) {
22188                             days -= daysInMonth;
22189                             monthLength = monthLength >> 1;
22190                             daysInMonth = 29 + (monthLength & 1);
22191                             hmonth++;
22192                         }
22193                         // remaining days is less than is in one month, thus is the day of the month we landed on
22194                         // hmonth-1 because in javascript months are zero based, stay consistent with that.
22195                         return [hyear, hmonth - 1, days + 1];
22196                     }
22197                         }
22198                 },
22199                 Hijri: {
22200                         name: "Hijri",
22201                         firstDay: 6,
22202                         days: {
22203                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
22204                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
22205                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
22206                         },
22207                         months: {
22208                                 names: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],
22209                                 namesAbbr: ["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]
22210                         },
22211                         AM: ["ص","ص","ص"],
22212                         PM: ["م","م","م"],
22213                         eras: [{"name":"بعد الهجرة","start":null,"offset":0}],
22214                         twoDigitYearMax: 1451,
22215                         patterns: {
22216                                 d: "dd/MM/yy",
22217                                 D: "dd/MM/yyyy",
22218                                 t: "hh:mm tt",
22219                                 T: "hh:mm:ss tt",
22220                                 f: "dd/MM/yyyy hh:mm tt",
22221                                 F: "dd/MM/yyyy hh:mm:ss tt",
22222                                 M: "dd MMMM"
22223                         },
22224                         convert: {
22225                     // Adapted to Script from System.Globalization.HijriCalendar
22226                     ticks1970: 62135596800000,
22227                     // number of days leading up to each month
22228                     monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
22229                     minDate: -42521673600000,
22230                     maxDate: 253402300799999,
22231                     // The number of days to add or subtract from the calendar to accommodate the variances
22232                     // in the start and the end of Ramadan and to accommodate the date difference between
22233                     // countries/regions. May be dynamically adjusted based on user preference, but should
22234                     // remain in the range of -2 to 2, inclusive.
22235                     hijriAdjustment: 0,
22236                     toGregorian: function(hyear, hmonth, hday) {
22237                         var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment;
22238                         // 86400000 = ticks per day
22239                         var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
22240                         // adjust for timezone, because we are interested in the gregorian date for the same timezone
22241                         // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base
22242                         // date in the current timezone.
22243                         gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
22244                         return gdate;
22245                     },
22246                     fromGregorian: function(gdate) {
22247                         if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
22248                         var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
22249                             daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment;
22250                         // very particular formula determined by someone smart, adapted from the server-side implementation.
22251                         // it approximates the hijri year.
22252                         var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
22253                             absDays = this.daysToYear(hyear),
22254                             daysInYear = this.isLeapYear(hyear) ? 355 : 354;
22255                         // hyear is just approximate, it may need adjustment up or down by 1.
22256                         if (daysSinceJan0101 < absDays) {
22257                             hyear--;
22258                             absDays -= daysInYear;
22259                         }
22260                         else if (daysSinceJan0101 === absDays) {
22261                             hyear--;
22262                             absDays = this.daysToYear(hyear);
22263                         }
22264                         else {
22265                             if (daysSinceJan0101 > (absDays + daysInYear)) {
22266                                 absDays += daysInYear;
22267                                 hyear++;
22268                             }
22269                         }
22270                         // determine month by looking at how many days into the hyear we are
22271                         // monthDays contains the number of days up to each month.
22272                         hmonth = 0;
22273                         var daysIntoYear = daysSinceJan0101 - absDays;
22274                         while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
22275                             hmonth++;
22276                         }
22277                         hmonth--;
22278                         hday = daysIntoYear - this.monthDays[hmonth];
22279                         return [hyear, hmonth, hday];
22280                     },
22281                     daysToYear: function(year) {
22282                         // calculates how many days since Jan 1, 0001
22283                         var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
22284                             yearsInto30 = year - yearsToYear30 - 1,
22285                             days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
22286                         while (yearsInto30 > 0) {
22287                             days += (this.isLeapYear(yearsInto30) ? 355 : 354);
22288                             yearsInto30--;
22289                         }
22290                         return days;
22291                     },
22292                     isLeapYear: function(year) {
22293                         return ((((year * 11) + 14) % 30) < 11);
22294                     }
22295                         }
22296                 },
22297                 Gregorian_MiddleEastFrench: {
22298                         name: "Gregorian_MiddleEastFrench",
22299                         firstDay: 6,
22300                         days: {
22301                                 names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],
22302                                 namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],
22303                                 namesShort: ["di","lu","ma","me","je","ve","sa"]
22304                         },
22305                         months: {
22306                                 names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],
22307                                 namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""]
22308                         },
22309                         AM: ["ص","ص","ص"],
22310                         PM: ["م","م","م"],
22311                         eras: [{"name":"ap. J.-C.","start":null,"offset":0}],
22312                         patterns: {
22313                                 d: "MM/dd/yyyy",
22314                                 t: "hh:mm tt",
22315                                 T: "hh:mm:ss tt",
22316                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
22317                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt",
22318                                 M: "dd MMMM"
22319                         }
22320                 },
22321                 Gregorian_Arabic: {
22322                         name: "Gregorian_Arabic",
22323                         firstDay: 6,
22324                         days: {
22325                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
22326                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
22327                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
22328                         },
22329                         months: {
22330                                 names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],
22331                                 namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]
22332                         },
22333                         AM: ["ص","ص","ص"],
22334                         PM: ["م","م","م"],
22335                         eras: [{"name":"م","start":null,"offset":0}],
22336                         patterns: {
22337                                 d: "MM/dd/yyyy",
22338                                 t: "hh:mm tt",
22339                                 T: "hh:mm:ss tt",
22340                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
22341                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
22342                         }
22343                 },
22344                 Gregorian_TransliteratedFrench: {
22345                         name: "Gregorian_TransliteratedFrench",
22346                         firstDay: 6,
22347                         days: {
22348                                 names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
22349                                 namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],
22350                                 namesShort: ["ح","ن","ث","ر","خ","ج","س"]
22351                         },
22352                         months: {
22353                                 names: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],
22354                                 namesAbbr: ["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]
22355                         },
22356                         AM: ["ص","ص","ص"],
22357                         PM: ["م","م","م"],
22358                         eras: [{"name":"م","start":null,"offset":0}],
22359                         patterns: {
22360                                 d: "MM/dd/yyyy",
22361                                 t: "hh:mm tt",
22362                                 T: "hh:mm:ss tt",
22363                                 f: "dddd, MMMM dd, yyyy hh:mm tt",
22364                                 F: "dddd, MMMM dd, yyyy hh:mm:ss tt"
22365                         }
22366                 }
22367         }
22368 });
22369
22370 Globalize.addCultureInfo( "en-IN", "default", {
22371         name: "en-IN",
22372         englishName: "English (India)",
22373         nativeName: "English (India)",
22374         numberFormat: {
22375                 groupSizes: [3,2],
22376                 percent: {
22377                         groupSizes: [3,2]
22378                 },
22379                 currency: {
22380                         pattern: ["$ -n","$ n"],
22381                         groupSizes: [3,2],
22382                         symbol: "Rs."
22383                 }
22384         },
22385         calendars: {
22386                 standard: {
22387                         "/": "-",
22388                         firstDay: 1,
22389                         patterns: {
22390                                 d: "dd-MM-yyyy",
22391                                 D: "dd MMMM yyyy",
22392                                 t: "HH:mm",
22393                                 T: "HH:mm:ss",
22394                                 f: "dd MMMM yyyy HH:mm",
22395                                 F: "dd MMMM yyyy HH:mm:ss",
22396                                 M: "dd MMMM"
22397                         }
22398                 }
22399         }
22400 });
22401
22402 Globalize.addCultureInfo( "es-BO", "default", {
22403         name: "es-BO",
22404         englishName: "Spanish (Bolivia)",
22405         nativeName: "Español (Bolivia)",
22406         language: "es",
22407         numberFormat: {
22408                 ",": ".",
22409                 ".": ",",
22410                 NaN: "NeuN",
22411                 negativeInfinity: "-Infinito",
22412                 positiveInfinity: "Infinito",
22413                 percent: {
22414                         ",": ".",
22415                         ".": ","
22416                 },
22417                 currency: {
22418                         pattern: ["($ n)","$ n"],
22419                         ",": ".",
22420                         ".": ",",
22421                         symbol: "$b"
22422                 }
22423         },
22424         calendars: {
22425                 standard: {
22426                         days: {
22427                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
22428                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
22429                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
22430                         },
22431                         months: {
22432                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
22433                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
22434                         },
22435                         AM: ["a.m.","a.m.","A.M."],
22436                         PM: ["p.m.","p.m.","P.M."],
22437                         eras: [{"name":"d.C.","start":null,"offset":0}],
22438                         patterns: {
22439                                 d: "dd/MM/yyyy",
22440                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
22441                                 t: "hh:mm tt",
22442                                 T: "hh:mm:ss tt",
22443                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
22444                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
22445                                 M: "dd MMMM",
22446                                 Y: "MMMM' de 'yyyy"
22447                         }
22448                 }
22449         }
22450 });
22451
22452 Globalize.addCultureInfo( "en-MY", "default", {
22453         name: "en-MY",
22454         englishName: "English (Malaysia)",
22455         nativeName: "English (Malaysia)",
22456         numberFormat: {
22457                 percent: {
22458                         pattern: ["-n%","n%"]
22459                 },
22460                 currency: {
22461                         symbol: "RM"
22462                 }
22463         },
22464         calendars: {
22465                 standard: {
22466                         days: {
22467                                 namesShort: ["S","M","T","W","T","F","S"]
22468                         },
22469                         patterns: {
22470                                 d: "d/M/yyyy",
22471                                 D: "dddd, d MMMM, yyyy",
22472                                 f: "dddd, d MMMM, yyyy h:mm tt",
22473                                 F: "dddd, d MMMM, yyyy h:mm:ss tt",
22474                                 M: "d MMMM"
22475                         }
22476                 }
22477         }
22478 });
22479
22480 Globalize.addCultureInfo( "es-SV", "default", {
22481         name: "es-SV",
22482         englishName: "Spanish (El Salvador)",
22483         nativeName: "Español (El Salvador)",
22484         language: "es",
22485         numberFormat: {
22486                 NaN: "NeuN",
22487                 negativeInfinity: "-Infinito",
22488                 positiveInfinity: "Infinito",
22489                 currency: {
22490                         groupSizes: [3,0]
22491                 }
22492         },
22493         calendars: {
22494                 standard: {
22495                         days: {
22496                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
22497                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
22498                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
22499                         },
22500                         months: {
22501                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
22502                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
22503                         },
22504                         AM: ["a.m.","a.m.","A.M."],
22505                         PM: ["p.m.","p.m.","P.M."],
22506                         eras: [{"name":"d.C.","start":null,"offset":0}],
22507                         patterns: {
22508                                 d: "dd/MM/yyyy",
22509                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
22510                                 t: "hh:mm tt",
22511                                 T: "hh:mm:ss tt",
22512                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
22513                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
22514                                 M: "dd MMMM",
22515                                 Y: "MMMM' de 'yyyy"
22516                         }
22517                 }
22518         }
22519 });
22520
22521 Globalize.addCultureInfo( "en-SG", "default", {
22522         name: "en-SG",
22523         englishName: "English (Singapore)",
22524         nativeName: "English (Singapore)",
22525         numberFormat: {
22526                 percent: {
22527                         pattern: ["-n%","n%"]
22528                 }
22529         },
22530         calendars: {
22531                 standard: {
22532                         days: {
22533                                 namesShort: ["S","M","T","W","T","F","S"]
22534                         },
22535                         patterns: {
22536                                 d: "d/M/yyyy",
22537                                 D: "dddd, d MMMM, yyyy",
22538                                 f: "dddd, d MMMM, yyyy h:mm tt",
22539                                 F: "dddd, d MMMM, yyyy h:mm:ss tt",
22540                                 M: "d MMMM"
22541                         }
22542                 }
22543         }
22544 });
22545
22546 Globalize.addCultureInfo( "es-HN", "default", {
22547         name: "es-HN",
22548         englishName: "Spanish (Honduras)",
22549         nativeName: "Español (Honduras)",
22550         language: "es",
22551         numberFormat: {
22552                 NaN: "NeuN",
22553                 negativeInfinity: "-Infinito",
22554                 positiveInfinity: "Infinito",
22555                 currency: {
22556                         pattern: ["$ -n","$ n"],
22557                         groupSizes: [3,0],
22558                         symbol: "L."
22559                 }
22560         },
22561         calendars: {
22562                 standard: {
22563                         days: {
22564                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
22565                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
22566                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
22567                         },
22568                         months: {
22569                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
22570                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
22571                         },
22572                         AM: ["a.m.","a.m.","A.M."],
22573                         PM: ["p.m.","p.m.","P.M."],
22574                         eras: [{"name":"d.C.","start":null,"offset":0}],
22575                         patterns: {
22576                                 d: "dd/MM/yyyy",
22577                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
22578                                 t: "hh:mm tt",
22579                                 T: "hh:mm:ss tt",
22580                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
22581                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
22582                                 M: "dd MMMM",
22583                                 Y: "MMMM' de 'yyyy"
22584                         }
22585                 }
22586         }
22587 });
22588
22589 Globalize.addCultureInfo( "es-NI", "default", {
22590         name: "es-NI",
22591         englishName: "Spanish (Nicaragua)",
22592         nativeName: "Español (Nicaragua)",
22593         language: "es",
22594         numberFormat: {
22595                 NaN: "NeuN",
22596                 negativeInfinity: "-Infinito",
22597                 positiveInfinity: "Infinito",
22598                 currency: {
22599                         pattern: ["($ n)","$ n"],
22600                         groupSizes: [3,0],
22601                         symbol: "C$"
22602                 }
22603         },
22604         calendars: {
22605                 standard: {
22606                         days: {
22607                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
22608                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
22609                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
22610                         },
22611                         months: {
22612                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
22613                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
22614                         },
22615                         AM: ["a.m.","a.m.","A.M."],
22616                         PM: ["p.m.","p.m.","P.M."],
22617                         eras: [{"name":"d.C.","start":null,"offset":0}],
22618                         patterns: {
22619                                 d: "dd/MM/yyyy",
22620                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
22621                                 t: "hh:mm tt",
22622                                 T: "hh:mm:ss tt",
22623                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
22624                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
22625                                 M: "dd MMMM",
22626                                 Y: "MMMM' de 'yyyy"
22627                         }
22628                 }
22629         }
22630 });
22631
22632 Globalize.addCultureInfo( "es-PR", "default", {
22633         name: "es-PR",
22634         englishName: "Spanish (Puerto Rico)",
22635         nativeName: "Español (Puerto Rico)",
22636         language: "es",
22637         numberFormat: {
22638                 NaN: "NeuN",
22639                 negativeInfinity: "-Infinito",
22640                 positiveInfinity: "Infinito",
22641                 currency: {
22642                         pattern: ["($ n)","$ n"],
22643                         groupSizes: [3,0]
22644                 }
22645         },
22646         calendars: {
22647                 standard: {
22648                         days: {
22649                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
22650                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
22651                                 namesShort: ["do","lu","ma","mi","ju","vi","sá"]
22652                         },
22653                         months: {
22654                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
22655                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
22656                         },
22657                         AM: ["a.m.","a.m.","A.M."],
22658                         PM: ["p.m.","p.m.","P.M."],
22659                         eras: [{"name":"d.C.","start":null,"offset":0}],
22660                         patterns: {
22661                                 d: "dd/MM/yyyy",
22662                                 D: "dddd, dd' de 'MMMM' de 'yyyy",
22663                                 t: "hh:mm tt",
22664                                 T: "hh:mm:ss tt",
22665                                 f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt",
22666                                 F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt",
22667                                 M: "dd MMMM",
22668                                 Y: "MMMM' de 'yyyy"
22669                         }
22670                 }
22671         }
22672 });
22673
22674 Globalize.addCultureInfo( "es-US", "default", {
22675         name: "es-US",
22676         englishName: "Spanish (United States)",
22677         nativeName: "Español (Estados Unidos)",
22678         language: "es",
22679         numberFormat: {
22680                 groupSizes: [3,0],
22681                 NaN: "NeuN",
22682                 negativeInfinity: "-Infinito",
22683                 positiveInfinity: "Infinito",
22684                 percent: {
22685                         groupSizes: [3,0]
22686                 }
22687         },
22688         calendars: {
22689                 standard: {
22690                         days: {
22691                                 names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],
22692                                 namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"],
22693                                 namesShort: ["do","lu","ma","mi","ju","vi","sa"]
22694                         },
22695                         months: {
22696                                 names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],
22697                                 namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""]
22698                         },
22699                         eras: [{"name":"d.C.","start":null,"offset":0}],
22700                         patterns: {
22701                                 M: "dd' de 'MMMM",
22702                                 Y: "MMMM' de 'yyyy"
22703                         }
22704                 }
22705         }
22706 });
22707
22708 Globalize.addCultureInfo( "bs-Cyrl", "default", {
22709         name: "bs-Cyrl",
22710         englishName: "Bosnian (Cyrillic)",
22711         nativeName: "босански",
22712         language: "bs-Cyrl",
22713         numberFormat: {
22714                 ",": ".",
22715                 ".": ",",
22716                 negativeInfinity: "-бесконачност",
22717                 positiveInfinity: "+бесконачност",
22718                 percent: {
22719                         ",": ".",
22720                         ".": ","
22721                 },
22722                 currency: {
22723                         pattern: ["-n $","n $"],
22724                         ",": ".",
22725                         ".": ",",
22726                         symbol: "КМ"
22727                 }
22728         },
22729         calendars: {
22730                 standard: {
22731                         "/": ".",
22732                         firstDay: 1,
22733                         days: {
22734                                 names: ["недјеља","понедјељак","уторак","сриједа","четвртак","петак","субота"],
22735                                 namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"],
22736                                 namesShort: ["н","п","у","с","ч","п","с"]
22737                         },
22738                         months: {
22739                                 names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""],
22740                                 namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""]
22741                         },
22742                         AM: null,
22743                         PM: null,
22744                         eras: [{"name":"н.е.","start":null,"offset":0}],
22745                         patterns: {
22746                                 d: "d.M.yyyy",
22747                                 D: "d. MMMM yyyy",
22748                                 t: "H:mm",
22749                                 T: "H:mm:ss",
22750                                 f: "d. MMMM yyyy H:mm",
22751                                 F: "d. MMMM yyyy H:mm:ss",
22752                                 M: "d. MMMM"
22753                         }
22754                 }
22755         }
22756 });
22757
22758 Globalize.addCultureInfo( "bs-Latn", "default", {
22759         name: "bs-Latn",
22760         englishName: "Bosnian (Latin)",
22761         nativeName: "bosanski",
22762         language: "bs-Latn",
22763         numberFormat: {
22764                 ",": ".",
22765                 ".": ",",
22766                 percent: {
22767                         ",": ".",
22768                         ".": ","
22769                 },
22770                 currency: {
22771                         pattern: ["-n $","n $"],
22772                         ",": ".",
22773                         ".": ",",
22774                         symbol: "KM"
22775                 }
22776         },
22777         calendars: {
22778                 standard: {
22779                         "/": ".",
22780                         firstDay: 1,
22781                         days: {
22782                                 names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],
22783                                 namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"],
22784                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
22785                         },
22786                         months: {
22787                                 names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""],
22788                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
22789                         },
22790                         AM: null,
22791                         PM: null,
22792                         patterns: {
22793                                 d: "d.M.yyyy",
22794                                 D: "d. MMMM yyyy",
22795                                 t: "H:mm",
22796                                 T: "H:mm:ss",
22797                                 f: "d. MMMM yyyy H:mm",
22798                                 F: "d. MMMM yyyy H:mm:ss",
22799                                 M: "d. MMMM",
22800                                 Y: "MMMM yyyy"
22801                         }
22802                 }
22803         }
22804 });
22805
22806 Globalize.addCultureInfo( "sr-Cyrl", "default", {
22807         name: "sr-Cyrl",
22808         englishName: "Serbian (Cyrillic)",
22809         nativeName: "српски",
22810         language: "sr-Cyrl",
22811         numberFormat: {
22812                 ",": ".",
22813                 ".": ",",
22814                 negativeInfinity: "-бесконачност",
22815                 positiveInfinity: "+бесконачност",
22816                 percent: {
22817                         pattern: ["-n%","n%"],
22818                         ",": ".",
22819                         ".": ","
22820                 },
22821                 currency: {
22822                         pattern: ["-n $","n $"],
22823                         ",": ".",
22824                         ".": ",",
22825                         symbol: "Дин."
22826                 }
22827         },
22828         calendars: {
22829                 standard: {
22830                         "/": ".",
22831                         firstDay: 1,
22832                         days: {
22833                                 names: ["недеља","понедељак","уторак","среда","четвртак","петак","субота"],
22834                                 namesAbbr: ["нед","пон","уто","сре","чет","пет","суб"],
22835                                 namesShort: ["не","по","ут","ср","че","пе","су"]
22836                         },
22837                         months: {
22838                                 names: ["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""],
22839                                 namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""]
22840                         },
22841                         AM: null,
22842                         PM: null,
22843                         eras: [{"name":"н.е.","start":null,"offset":0}],
22844                         patterns: {
22845                                 d: "d.M.yyyy",
22846                                 D: "d. MMMM yyyy",
22847                                 t: "H:mm",
22848                                 T: "H:mm:ss",
22849                                 f: "d. MMMM yyyy H:mm",
22850                                 F: "d. MMMM yyyy H:mm:ss",
22851                                 M: "d. MMMM",
22852                                 Y: "MMMM yyyy"
22853                         }
22854                 }
22855         }
22856 });
22857
22858 Globalize.addCultureInfo( "sr-Latn", "default", {
22859         name: "sr-Latn",
22860         englishName: "Serbian (Latin)",
22861         nativeName: "srpski",
22862         language: "sr-Latn",
22863         numberFormat: {
22864                 ",": ".",
22865                 ".": ",",
22866                 negativeInfinity: "-beskonačnost",
22867                 positiveInfinity: "+beskonačnost",
22868                 percent: {
22869                         pattern: ["-n%","n%"],
22870                         ",": ".",
22871                         ".": ","
22872                 },
22873                 currency: {
22874                         pattern: ["-n $","n $"],
22875                         ",": ".",
22876                         ".": ",",
22877                         symbol: "Din."
22878                 }
22879         },
22880         calendars: {
22881                 standard: {
22882                         "/": ".",
22883                         firstDay: 1,
22884                         days: {
22885                                 names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],
22886                                 namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"],
22887                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
22888                         },
22889                         months: {
22890                                 names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""],
22891                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
22892                         },
22893                         AM: null,
22894                         PM: null,
22895                         eras: [{"name":"n.e.","start":null,"offset":0}],
22896                         patterns: {
22897                                 d: "d.M.yyyy",
22898                                 D: "d. MMMM yyyy",
22899                                 t: "H:mm",
22900                                 T: "H:mm:ss",
22901                                 f: "d. MMMM yyyy H:mm",
22902                                 F: "d. MMMM yyyy H:mm:ss",
22903                                 M: "d. MMMM",
22904                                 Y: "MMMM yyyy"
22905                         }
22906                 }
22907         }
22908 });
22909
22910 Globalize.addCultureInfo( "smn", "default", {
22911         name: "smn",
22912         englishName: "Sami (Inari)",
22913         nativeName: "sämikielâ",
22914         language: "smn",
22915         numberFormat: {
22916                 ",": " ",
22917                 ".": ",",
22918                 percent: {
22919                         ",": " ",
22920                         ".": ","
22921                 },
22922                 currency: {
22923                         pattern: ["-n $","n $"],
22924                         ",": " ",
22925                         ".": ",",
22926                         symbol: "€"
22927                 }
22928         },
22929         calendars: {
22930                 standard: {
22931                         "/": ".",
22932                         firstDay: 1,
22933                         days: {
22934                                 names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"],
22935                                 namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"],
22936                                 namesShort: ["p","v","m","k","t","v","l"]
22937                         },
22938                         months: {
22939                                 names: ["uđđâivemáánu","kuovâmáánu","njuhčâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","čohčâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""],
22940                                 namesAbbr: ["uđiv","kuov","njuh","cuoŋ","vyes","kesi","syei","porg","čoh","roov","ska","juov",""]
22941                         },
22942                         AM: null,
22943                         PM: null,
22944                         patterns: {
22945                                 d: "d.M.yyyy",
22946                                 D: "MMMM d'. p. 'yyyy",
22947                                 t: "H:mm",
22948                                 T: "H:mm:ss",
22949                                 f: "MMMM d'. p. 'yyyy H:mm",
22950                                 F: "MMMM d'. p. 'yyyy H:mm:ss",
22951                                 M: "MMMM d'. p. '",
22952                                 Y: "MMMM yyyy"
22953                         }
22954                 }
22955         }
22956 });
22957
22958 Globalize.addCultureInfo( "az-Cyrl", "default", {
22959         name: "az-Cyrl",
22960         englishName: "Azeri (Cyrillic)",
22961         nativeName: "Азәрбајҹан дили",
22962         language: "az-Cyrl",
22963         numberFormat: {
22964                 ",": " ",
22965                 ".": ",",
22966                 percent: {
22967                         pattern: ["-n%","n%"],
22968                         ",": " ",
22969                         ".": ","
22970                 },
22971                 currency: {
22972                         pattern: ["-n $","n $"],
22973                         ",": " ",
22974                         ".": ",",
22975                         symbol: "ман."
22976                 }
22977         },
22978         calendars: {
22979                 standard: {
22980                         "/": ".",
22981                         firstDay: 1,
22982                         days: {
22983                                 names: ["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"],
22984                                 namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"],
22985                                 namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"]
22986                         },
22987                         months: {
22988                                 names: ["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""],
22989                                 namesAbbr: ["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""]
22990                         },
22991                         monthsGenitive: {
22992                                 names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""],
22993                                 namesAbbr: ["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""]
22994                         },
22995                         AM: null,
22996                         PM: null,
22997                         patterns: {
22998                                 d: "dd.MM.yyyy",
22999                                 D: "d MMMM yyyy",
23000                                 t: "H:mm",
23001                                 T: "H:mm:ss",
23002                                 f: "d MMMM yyyy H:mm",
23003                                 F: "d MMMM yyyy H:mm:ss",
23004                                 M: "d MMMM",
23005                                 Y: "MMMM yyyy"
23006                         }
23007                 }
23008         }
23009 });
23010
23011 Globalize.addCultureInfo( "sms", "default", {
23012         name: "sms",
23013         englishName: "Sami (Skolt)",
23014         nativeName: "sääm´ǩiõll",
23015         language: "sms",
23016         numberFormat: {
23017                 ",": " ",
23018                 ".": ",",
23019                 percent: {
23020                         ",": " ",
23021                         ".": ","
23022                 },
23023                 currency: {
23024                         pattern: ["-n $","n $"],
23025                         ",": " ",
23026                         ".": ",",
23027                         symbol: "€"
23028                 }
23029         },
23030         calendars: {
23031                 standard: {
23032                         "/": ".",
23033                         firstDay: 1,
23034                         days: {
23035                                 names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"],
23036                                 namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"],
23037                                 namesShort: ["p","v","m","s","n","p","s"]
23038                         },
23039                         months: {
23040                                 names: ["ođđee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhččmään","vue´ssmään","ǩie´ssmään","suei´nnmään","på´rǧǧmään","čõhččmään","kålggmään","skamm´mään","rosttovmään",""],
23041                                 namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""]
23042                         },
23043                         monthsGenitive: {
23044                                 names: ["ođđee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhččmannu","vue´ssmannu","ǩie´ssmannu","suei´nnmannu","på´rǧǧmannu","čõhččmannu","kålggmannu","skamm´mannu","rosttovmannu",""],
23045                                 namesAbbr: ["ođjm","tä´lvv","pâzl","njuh","vue","ǩie","suei","på´r","čõh","kålg","ska","rost",""]
23046                         },
23047                         AM: null,
23048                         PM: null,
23049                         patterns: {
23050                                 d: "d.M.yyyy",
23051                                 D: "MMMM d'. p. 'yyyy",
23052                                 t: "H:mm",
23053                                 T: "H:mm:ss",
23054                                 f: "MMMM d'. p. 'yyyy H:mm",
23055                                 F: "MMMM d'. p. 'yyyy H:mm:ss",
23056                                 M: "MMMM d'. p. '",
23057                                 Y: "MMMM yyyy"
23058                         }
23059                 }
23060         }
23061 });
23062
23063 Globalize.addCultureInfo( "zh", "default", {
23064         name: "zh",
23065         englishName: "Chinese",
23066         nativeName: "中文",
23067         language: "zh",
23068         numberFormat: {
23069                 NaN: "非数字",
23070                 negativeInfinity: "负无穷大",
23071                 positiveInfinity: "正无穷大",
23072                 percent: {
23073                         pattern: ["-n%","n%"]
23074                 },
23075                 currency: {
23076                         pattern: ["$-n","$n"],
23077                         symbol: "¥"
23078                 }
23079         },
23080         calendars: {
23081                 standard: {
23082                         days: {
23083                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
23084                                 namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"],
23085                                 namesShort: ["日","一","二","三","四","五","六"]
23086                         },
23087                         months: {
23088                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
23089                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
23090                         },
23091                         AM: ["上午","上午","上午"],
23092                         PM: ["下午","下午","下午"],
23093                         eras: [{"name":"公元","start":null,"offset":0}],
23094                         patterns: {
23095                                 d: "yyyy/M/d",
23096                                 D: "yyyy'年'M'月'd'日'",
23097                                 t: "H:mm",
23098                                 T: "H:mm:ss",
23099                                 f: "yyyy'年'M'月'd'日' H:mm",
23100                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
23101                                 M: "M'月'd'日'",
23102                                 Y: "yyyy'年'M'月'"
23103                         }
23104                 }
23105         }
23106 });
23107
23108 Globalize.addCultureInfo( "nn", "default", {
23109         name: "nn",
23110         englishName: "Norwegian (Nynorsk)",
23111         nativeName: "norsk (nynorsk)",
23112         language: "nn",
23113         numberFormat: {
23114                 ",": " ",
23115                 ".": ",",
23116                 negativeInfinity: "-INF",
23117                 positiveInfinity: "INF",
23118                 percent: {
23119                         ",": " ",
23120                         ".": ","
23121                 },
23122                 currency: {
23123                         pattern: ["$ -n","$ n"],
23124                         ",": " ",
23125                         ".": ",",
23126                         symbol: "kr"
23127                 }
23128         },
23129         calendars: {
23130                 standard: {
23131                         "/": ".",
23132                         firstDay: 1,
23133                         days: {
23134                                 names: ["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"],
23135                                 namesAbbr: ["sø","må","ty","on","to","fr","la"],
23136                                 namesShort: ["sø","må","ty","on","to","fr","la"]
23137                         },
23138                         months: {
23139                                 names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""],
23140                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""]
23141                         },
23142                         AM: null,
23143                         PM: null,
23144                         patterns: {
23145                                 d: "dd.MM.yyyy",
23146                                 D: "d. MMMM yyyy",
23147                                 t: "HH:mm",
23148                                 T: "HH:mm:ss",
23149                                 f: "d. MMMM yyyy HH:mm",
23150                                 F: "d. MMMM yyyy HH:mm:ss",
23151                                 M: "d. MMMM",
23152                                 Y: "MMMM yyyy"
23153                         }
23154                 }
23155         }
23156 });
23157
23158 Globalize.addCultureInfo( "bs", "default", {
23159         name: "bs",
23160         englishName: "Bosnian",
23161         nativeName: "bosanski",
23162         language: "bs",
23163         numberFormat: {
23164                 ",": ".",
23165                 ".": ",",
23166                 percent: {
23167                         ",": ".",
23168                         ".": ","
23169                 },
23170                 currency: {
23171                         pattern: ["-n $","n $"],
23172                         ",": ".",
23173                         ".": ",",
23174                         symbol: "KM"
23175                 }
23176         },
23177         calendars: {
23178                 standard: {
23179                         "/": ".",
23180                         firstDay: 1,
23181                         days: {
23182                                 names: ["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],
23183                                 namesAbbr: ["ned","pon","uto","sri","čet","pet","sub"],
23184                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
23185                         },
23186                         months: {
23187                                 names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""],
23188                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
23189                         },
23190                         AM: null,
23191                         PM: null,
23192                         patterns: {
23193                                 d: "d.M.yyyy",
23194                                 D: "d. MMMM yyyy",
23195                                 t: "H:mm",
23196                                 T: "H:mm:ss",
23197                                 f: "d. MMMM yyyy H:mm",
23198                                 F: "d. MMMM yyyy H:mm:ss",
23199                                 M: "d. MMMM",
23200                                 Y: "MMMM yyyy"
23201                         }
23202                 }
23203         }
23204 });
23205
23206 Globalize.addCultureInfo( "az-Latn", "default", {
23207         name: "az-Latn",
23208         englishName: "Azeri (Latin)",
23209         nativeName: "Azərbaycan­ılı",
23210         language: "az-Latn",
23211         numberFormat: {
23212                 ",": " ",
23213                 ".": ",",
23214                 percent: {
23215                         pattern: ["-n%","n%"],
23216                         ",": " ",
23217                         ".": ","
23218                 },
23219                 currency: {
23220                         pattern: ["-n $","n $"],
23221                         ",": " ",
23222                         ".": ",",
23223                         symbol: "man."
23224                 }
23225         },
23226         calendars: {
23227                 standard: {
23228                         "/": ".",
23229                         firstDay: 1,
23230                         days: {
23231                                 names: ["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"],
23232                                 namesAbbr: ["B","Be","Ça","Ç","Ca","C","Ş"],
23233                                 namesShort: ["B","Be","Ça","Ç","Ca","C","Ş"]
23234                         },
23235                         months: {
23236                                 names: ["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""],
23237                                 namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""]
23238                         },
23239                         monthsGenitive: {
23240                                 names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],
23241                                 namesAbbr: ["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""]
23242                         },
23243                         AM: null,
23244                         PM: null,
23245                         patterns: {
23246                                 d: "dd.MM.yyyy",
23247                                 D: "d MMMM yyyy",
23248                                 t: "H:mm",
23249                                 T: "H:mm:ss",
23250                                 f: "d MMMM yyyy H:mm",
23251                                 F: "d MMMM yyyy H:mm:ss",
23252                                 M: "d MMMM",
23253                                 Y: "MMMM yyyy"
23254                         }
23255                 }
23256         }
23257 });
23258
23259 Globalize.addCultureInfo( "sma", "default", {
23260         name: "sma",
23261         englishName: "Sami (Southern)",
23262         nativeName: "åarjelsaemiengiele",
23263         language: "sma",
23264         numberFormat: {
23265                 ",": " ",
23266                 ".": ",",
23267                 percent: {
23268                         ",": " ",
23269                         ".": ","
23270                 },
23271                 currency: {
23272                         pattern: ["-n $","n $"],
23273                         ",": ".",
23274                         ".": ",",
23275                         symbol: "kr"
23276                 }
23277         },
23278         calendars: {
23279                 standard: {
23280                         "/": "-",
23281                         firstDay: 1,
23282                         days: {
23283                                 names: ["aejlege","måanta","dæjsta","gaskevåhkoe","duarsta","bearjadahke","laavvardahke"],
23284                                 namesAbbr: ["aej","måa","dæj","gask","duar","bearj","laav"],
23285                                 namesShort: ["a","m","d","g","d","b","l"]
23286                         },
23287                         months: {
23288                                 names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""],
23289                                 namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""]
23290                         },
23291                         monthsGenitive: {
23292                                 names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""],
23293                                 namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""]
23294                         },
23295                         AM: null,
23296                         PM: null,
23297                         patterns: {
23298                                 d: "yyyy-MM-dd",
23299                                 D: "MMMM d'. b. 'yyyy",
23300                                 t: "HH:mm",
23301                                 T: "HH:mm:ss",
23302                                 f: "MMMM d'. b. 'yyyy HH:mm",
23303                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
23304                                 M: "MMMM d'. b. '",
23305                                 Y: "MMMM yyyy"
23306                         }
23307                 }
23308         }
23309 });
23310
23311 Globalize.addCultureInfo( "uz-Cyrl", "default", {
23312         name: "uz-Cyrl",
23313         englishName: "Uzbek (Cyrillic)",
23314         nativeName: "Ўзбек",
23315         language: "uz-Cyrl",
23316         numberFormat: {
23317                 ",": " ",
23318                 ".": ",",
23319                 percent: {
23320                         pattern: ["-n%","n%"],
23321                         ",": " ",
23322                         ".": ","
23323                 },
23324                 currency: {
23325                         pattern: ["-n $","n $"],
23326                         ",": " ",
23327                         ".": ",",
23328                         symbol: "сўм"
23329                 }
23330         },
23331         calendars: {
23332                 standard: {
23333                         "/": ".",
23334                         firstDay: 1,
23335                         days: {
23336                                 names: ["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"],
23337                                 namesAbbr: ["якш","дш","сш","чш","пш","ж","ш"],
23338                                 namesShort: ["я","д","с","ч","п","ж","ш"]
23339                         },
23340                         months: {
23341                                 names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""],
23342                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
23343                         },
23344                         monthsGenitive: {
23345                                 names: ["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""],
23346                                 namesAbbr: ["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
23347                         },
23348                         AM: null,
23349                         PM: null,
23350                         patterns: {
23351                                 d: "dd.MM.yyyy",
23352                                 D: "yyyy 'йил' d-MMMM",
23353                                 t: "HH:mm",
23354                                 T: "HH:mm:ss",
23355                                 f: "yyyy 'йил' d-MMMM HH:mm",
23356                                 F: "yyyy 'йил' d-MMMM HH:mm:ss",
23357                                 M: "d-MMMM",
23358                                 Y: "MMMM yyyy"
23359                         }
23360                 }
23361         }
23362 });
23363
23364 Globalize.addCultureInfo( "mn-Cyrl", "default", {
23365         name: "mn-Cyrl",
23366         englishName: "Mongolian (Cyrillic)",
23367         nativeName: "Монгол хэл",
23368         language: "mn-Cyrl",
23369         numberFormat: {
23370                 ",": " ",
23371                 ".": ",",
23372                 percent: {
23373                         ",": " ",
23374                         ".": ","
23375                 },
23376                 currency: {
23377                         pattern: ["-n$","n$"],
23378                         ",": " ",
23379                         ".": ",",
23380                         symbol: "₮"
23381                 }
23382         },
23383         calendars: {
23384                 standard: {
23385                         "/": ".",
23386                         firstDay: 1,
23387                         days: {
23388                                 names: ["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"],
23389                                 namesAbbr: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"],
23390                                 namesShort: ["Ня","Да","Мя","Лх","Пү","Ба","Бя"]
23391                         },
23392                         months: {
23393                                 names: ["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""],
23394                                 namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""]
23395                         },
23396                         monthsGenitive: {
23397                                 names: ["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""],
23398                                 namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""]
23399                         },
23400                         AM: null,
23401                         PM: null,
23402                         patterns: {
23403                                 d: "yy.MM.dd",
23404                                 D: "yyyy 'оны' MMMM d",
23405                                 t: "H:mm",
23406                                 T: "H:mm:ss",
23407                                 f: "yyyy 'оны' MMMM d H:mm",
23408                                 F: "yyyy 'оны' MMMM d H:mm:ss",
23409                                 M: "d MMMM",
23410                                 Y: "yyyy 'он' MMMM"
23411                         }
23412                 }
23413         }
23414 });
23415
23416 Globalize.addCultureInfo( "iu-Cans", "default", {
23417         name: "iu-Cans",
23418         englishName: "Inuktitut (Syllabics)",
23419         nativeName: "ᐃᓄᒃᑎᑐᑦ",
23420         language: "iu-Cans",
23421         numberFormat: {
23422                 groupSizes: [3,0],
23423                 percent: {
23424                         pattern: ["-n%","n%"],
23425                         groupSizes: [3,0]
23426                 },
23427                 currency: {
23428                         groupSizes: [3,0]
23429                 }
23430         },
23431         calendars: {
23432                 standard: {
23433                         days: {
23434                                 names: ["ᓈᑦᑏᖑᔭ","ᓇᒡᒐᔾᔭᐅ","ᐊᐃᑉᐱᖅ","ᐱᖓᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕᕐᒥᖅ","ᓯᕙᑖᕐᕕᒃ"],
23435                                 namesAbbr: ["ᓈᑦᑏ","ᓇᒡᒐ","ᐊᐃᑉᐱ","ᐱᖓᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖᕐᕕᒃ"],
23436                                 namesShort: ["ᓈ","ᓇ","ᐊ","ᐱ","ᓯ","ᑕ","ᓯ"]
23437                         },
23438                         months: {
23439                                 names: ["ᔮᓐᓄᐊᕆ","ᕖᕝᕗᐊᕆ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌᓯ","ᓯᑎᐱᕆ","ᐅᑐᐱᕆ","ᓄᕕᐱᕆ","ᑎᓯᐱᕆ",""],
23440                                 namesAbbr: ["ᔮᓐᓄ","ᕖᕝᕗ","ᒫᑦᓯ","ᐄᐳᕆ","ᒪᐃ","ᔫᓂ","ᔪᓚᐃ","ᐋᒡᒌ","ᓯᑎᐱ","ᐅᑐᐱ","ᓄᕕᐱ","ᑎᓯᐱ",""]
23441                         },
23442                         patterns: {
23443                                 d: "d/M/yyyy",
23444                                 D: "dddd,MMMM dd,yyyy",
23445                                 f: "dddd,MMMM dd,yyyy h:mm tt",
23446                                 F: "dddd,MMMM dd,yyyy h:mm:ss tt",
23447                                 Y: "MMMM,yyyy"
23448                         }
23449                 }
23450         }
23451 });
23452
23453 Globalize.addCultureInfo( "zh-Hant", "default", {
23454         name: "zh-Hant",
23455         englishName: "Chinese (Traditional)",
23456         nativeName: "中文(繁體)",
23457         language: "zh-Hant",
23458         numberFormat: {
23459                 NaN: "非數字",
23460                 negativeInfinity: "負無窮大",
23461                 positiveInfinity: "正無窮大",
23462                 percent: {
23463                         pattern: ["-n%","n%"]
23464                 },
23465                 currency: {
23466                         symbol: "HK$"
23467                 }
23468         },
23469         calendars: {
23470                 standard: {
23471                         days: {
23472                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
23473                                 namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"],
23474                                 namesShort: ["日","一","二","三","四","五","六"]
23475                         },
23476                         months: {
23477                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
23478                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
23479                         },
23480                         AM: ["上午","上午","上午"],
23481                         PM: ["下午","下午","下午"],
23482                         eras: [{"name":"公元","start":null,"offset":0}],
23483                         patterns: {
23484                                 d: "d/M/yyyy",
23485                                 D: "yyyy'年'M'月'd'日'",
23486                                 t: "H:mm",
23487                                 T: "H:mm:ss",
23488                                 f: "yyyy'年'M'月'd'日' H:mm",
23489                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
23490                                 M: "M'月'd'日'",
23491                                 Y: "yyyy'年'M'月'"
23492                         }
23493                 }
23494         }
23495 });
23496
23497 Globalize.addCultureInfo( "nb", "default", {
23498         name: "nb",
23499         englishName: "Norwegian (Bokmål)",
23500         nativeName: "norsk (bokmål)",
23501         language: "nb",
23502         numberFormat: {
23503                 ",": " ",
23504                 ".": ",",
23505                 negativeInfinity: "-INF",
23506                 positiveInfinity: "INF",
23507                 percent: {
23508                         ",": " ",
23509                         ".": ","
23510                 },
23511                 currency: {
23512                         pattern: ["$ -n","$ n"],
23513                         ",": " ",
23514                         ".": ",",
23515                         symbol: "kr"
23516                 }
23517         },
23518         calendars: {
23519                 standard: {
23520                         "/": ".",
23521                         firstDay: 1,
23522                         days: {
23523                                 names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],
23524                                 namesAbbr: ["sø","ma","ti","on","to","fr","lø"],
23525                                 namesShort: ["sø","ma","ti","on","to","fr","lø"]
23526                         },
23527                         months: {
23528                                 names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""],
23529                                 namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""]
23530                         },
23531                         AM: null,
23532                         PM: null,
23533                         patterns: {
23534                                 d: "dd.MM.yyyy",
23535                                 D: "d. MMMM yyyy",
23536                                 t: "HH:mm",
23537                                 T: "HH:mm:ss",
23538                                 f: "d. MMMM yyyy HH:mm",
23539                                 F: "d. MMMM yyyy HH:mm:ss",
23540                                 M: "d. MMMM",
23541                                 Y: "MMMM yyyy"
23542                         }
23543                 }
23544         }
23545 });
23546
23547 Globalize.addCultureInfo( "sr", "default", {
23548         name: "sr",
23549         englishName: "Serbian",
23550         nativeName: "srpski",
23551         language: "sr",
23552         numberFormat: {
23553                 ",": ".",
23554                 ".": ",",
23555                 negativeInfinity: "-beskonačnost",
23556                 positiveInfinity: "+beskonačnost",
23557                 percent: {
23558                         pattern: ["-n%","n%"],
23559                         ",": ".",
23560                         ".": ","
23561                 },
23562                 currency: {
23563                         pattern: ["-n $","n $"],
23564                         ",": ".",
23565                         ".": ",",
23566                         symbol: "Din."
23567                 }
23568         },
23569         calendars: {
23570                 standard: {
23571                         "/": ".",
23572                         firstDay: 1,
23573                         days: {
23574                                 names: ["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],
23575                                 namesAbbr: ["ned","pon","uto","sre","čet","pet","sub"],
23576                                 namesShort: ["ne","po","ut","sr","če","pe","su"]
23577                         },
23578                         months: {
23579                                 names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""],
23580                                 namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""]
23581                         },
23582                         AM: null,
23583                         PM: null,
23584                         eras: [{"name":"n.e.","start":null,"offset":0}],
23585                         patterns: {
23586                                 d: "d.M.yyyy",
23587                                 D: "d. MMMM yyyy",
23588                                 t: "H:mm",
23589                                 T: "H:mm:ss",
23590                                 f: "d. MMMM yyyy H:mm",
23591                                 F: "d. MMMM yyyy H:mm:ss",
23592                                 M: "d. MMMM",
23593                                 Y: "MMMM yyyy"
23594                         }
23595                 }
23596         }
23597 });
23598
23599 Globalize.addCultureInfo( "tg-Cyrl", "default", {
23600         name: "tg-Cyrl",
23601         englishName: "Tajik (Cyrillic)",
23602         nativeName: "Тоҷикӣ",
23603         language: "tg-Cyrl",
23604         numberFormat: {
23605                 ",": " ",
23606                 ".": ",",
23607                 groupSizes: [3,0],
23608                 negativeInfinity: "-бесконечность",
23609                 positiveInfinity: "бесконечность",
23610                 percent: {
23611                         pattern: ["-n%","n%"],
23612                         groupSizes: [3,0],
23613                         ",": " ",
23614                         ".": ","
23615                 },
23616                 currency: {
23617                         pattern: ["-n $","n $"],
23618                         groupSizes: [3,0],
23619                         ",": " ",
23620                         ".": ";",
23621                         symbol: "т.р."
23622                 }
23623         },
23624         calendars: {
23625                 standard: {
23626                         "/": ".",
23627                         days: {
23628                                 names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"],
23629                                 namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"],
23630                                 namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"]
23631                         },
23632                         months: {
23633                                 names: ["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""],
23634                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
23635                         },
23636                         monthsGenitive: {
23637                                 names: ["январи","феврали","марти","апрели","маи","июни","июли","августи","сентябри","октябри","ноябри","декабри",""],
23638                                 namesAbbr: ["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""]
23639                         },
23640                         AM: null,
23641                         PM: null,
23642                         patterns: {
23643                                 d: "dd.MM.yy",
23644                                 D: "d MMMM yyyy",
23645                                 t: "H:mm",
23646                                 T: "H:mm:ss",
23647                                 f: "d MMMM yyyy H:mm",
23648                                 F: "d MMMM yyyy H:mm:ss",
23649                                 Y: "MMMM yyyy"
23650                         }
23651                 }
23652         }
23653 });
23654
23655 Globalize.addCultureInfo( "dsb", "default", {
23656         name: "dsb",
23657         englishName: "Lower Sorbian",
23658         nativeName: "dolnoserbšćina",
23659         language: "dsb",
23660         numberFormat: {
23661                 ",": ".",
23662                 ".": ",",
23663                 NaN: "njedefinowane",
23664                 negativeInfinity: "-njekońcne",
23665                 positiveInfinity: "+njekońcne",
23666                 percent: {
23667                         ",": ".",
23668                         ".": ","
23669                 },
23670                 currency: {
23671                         pattern: ["-n $","n $"],
23672                         ",": ".",
23673                         ".": ",",
23674                         symbol: "€"
23675                 }
23676         },
23677         calendars: {
23678                 standard: {
23679                         "/": ". ",
23680                         firstDay: 1,
23681                         days: {
23682                                 names: ["njeźela","ponjeźele","wałtora","srjoda","stwortk","pětk","sobota"],
23683                                 namesAbbr: ["nje","pon","wał","srj","stw","pět","sob"],
23684                                 namesShort: ["n","p","w","s","s","p","s"]
23685                         },
23686                         months: {
23687                                 names: ["januar","februar","měrc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""],
23688                                 namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""]
23689                         },
23690                         monthsGenitive: {
23691                                 names: ["januara","februara","měrca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""],
23692                                 namesAbbr: ["jan","feb","měr","apr","maj","jun","jul","awg","sep","okt","now","dec",""]
23693                         },
23694                         AM: null,
23695                         PM: null,
23696                         eras: [{"name":"po Chr.","start":null,"offset":0}],
23697                         patterns: {
23698                                 d: "d. M. yyyy",
23699                                 D: "dddd, 'dnja' d. MMMM yyyy",
23700                                 t: "H.mm 'goź.'",
23701                                 T: "H:mm:ss",
23702                                 f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'",
23703                                 F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss",
23704                                 M: "d. MMMM",
23705                                 Y: "MMMM yyyy"
23706                         }
23707                 }
23708         }
23709 });
23710
23711 Globalize.addCultureInfo( "smj", "default", {
23712         name: "smj",
23713         englishName: "Sami (Lule)",
23714         nativeName: "julevusámegiella",
23715         language: "smj",
23716         numberFormat: {
23717                 ",": " ",
23718                 ".": ",",
23719                 percent: {
23720                         ",": " ",
23721                         ".": ","
23722                 },
23723                 currency: {
23724                         pattern: ["-n $","n $"],
23725                         ",": ".",
23726                         ".": ",",
23727                         symbol: "kr"
23728                 }
23729         },
23730         calendars: {
23731                 standard: {
23732                         "/": "-",
23733                         firstDay: 1,
23734                         days: {
23735                                 names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"],
23736                                 namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"],
23737                                 namesShort: ["á","m","d","g","d","b","l"]
23738                         },
23739                         months: {
23740                                 names: ["ådåjakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bårggemánno","ragátmánno","gålgådismánno","basádismánno","javllamánno",""],
23741                                 namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""]
23742                         },
23743                         monthsGenitive: {
23744                                 names: ["ådåjakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bårggemáno","ragátmáno","gålgådismáno","basádismáno","javllamáno",""],
23745                                 namesAbbr: ["ådåj","guov","snju","vuor","moar","bieh","snji","bårg","ragá","gålg","basá","javl",""]
23746                         },
23747                         AM: null,
23748                         PM: null,
23749                         patterns: {
23750                                 d: "yyyy-MM-dd",
23751                                 D: "MMMM d'. b. 'yyyy",
23752                                 t: "HH:mm",
23753                                 T: "HH:mm:ss",
23754                                 f: "MMMM d'. b. 'yyyy HH:mm",
23755                                 F: "MMMM d'. b. 'yyyy HH:mm:ss",
23756                                 M: "MMMM d'. b. '",
23757                                 Y: "MMMM yyyy"
23758                         }
23759                 }
23760         }
23761 });
23762
23763 Globalize.addCultureInfo( "uz-Latn", "default", {
23764         name: "uz-Latn",
23765         englishName: "Uzbek (Latin)",
23766         nativeName: "U'zbek",
23767         language: "uz-Latn",
23768         numberFormat: {
23769                 ",": " ",
23770                 ".": ",",
23771                 percent: {
23772                         pattern: ["-n%","n%"],
23773                         ",": " ",
23774                         ".": ","
23775                 },
23776                 currency: {
23777                         pattern: ["-n $","n $"],
23778                         decimals: 0,
23779                         ",": " ",
23780                         ".": ",",
23781                         symbol: "so'm"
23782                 }
23783         },
23784         calendars: {
23785                 standard: {
23786                         firstDay: 1,
23787                         days: {
23788                                 names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"],
23789                                 namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."],
23790                                 namesShort: ["ya","d","s","ch","p","j","sh"]
23791                         },
23792                         months: {
23793                                 names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],
23794                                 namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""]
23795                         },
23796                         AM: null,
23797                         PM: null,
23798                         patterns: {
23799                                 d: "dd/MM yyyy",
23800                                 D: "yyyy 'yil' d-MMMM",
23801                                 t: "HH:mm",
23802                                 T: "HH:mm:ss",
23803                                 f: "yyyy 'yil' d-MMMM HH:mm",
23804                                 F: "yyyy 'yil' d-MMMM HH:mm:ss",
23805                                 M: "d-MMMM",
23806                                 Y: "MMMM yyyy"
23807                         }
23808                 }
23809         }
23810 });
23811
23812 Globalize.addCultureInfo( "mn-Mong", "default", {
23813         name: "mn-Mong",
23814         englishName: "Mongolian (Traditional Mongolian)",
23815         nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ",
23816         language: "mn-Mong",
23817         numberFormat: {
23818                 groupSizes: [3,0],
23819                 NaN: "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ",
23820                 negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ",
23821                 positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ",
23822                 percent: {
23823                         pattern: ["-n%","n%"],
23824                         groupSizes: [3,0]
23825                 },
23826                 currency: {
23827                         pattern: ["$-n","$n"],
23828                         groupSizes: [3,0],
23829                         symbol: "¥"
23830                 }
23831         },
23832         calendars: {
23833                 standard: {
23834                         firstDay: 1,
23835                         days: {
23836                                 names: ["ᠭᠠᠷᠠᠭ ᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"],
23837                                 namesAbbr: ["ᠭᠠᠷᠠᠭ ᠤᠨ ᠡᠳᠦᠷ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠨᠢᠭᠡᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠬᠣᠶᠠᠷ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠭᠤᠷᠪᠠᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠳᠥᠷᠪᠡᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠲᠠᠪᠤᠨ","ᠭᠠᠷᠠᠭ ᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"],
23838                                 namesShort: ["ᠡ‍","ᠨᠢ‍","ᠬᠣ‍","ᠭᠤ‍","ᠳᠥ‍","ᠲᠠ‍","ᠵᠢ‍"]
23839                         },
23840                         months: {
23841                                 names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""],
23842                                 namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ ᠰᠠᠷ᠎ᠠ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ ᠰᠠᠷ᠎ᠠ",""]
23843                         },
23844                         AM: null,
23845                         PM: null,
23846                         eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}],
23847                         patterns: {
23848                                 d: "yyyy/M/d",
23849                                 D: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ  ᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'",
23850                                 t: "H:mm",
23851                                 T: "H:mm:ss",
23852                                 f: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ  ᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm",
23853                                 F: "yyyy'ᠣᠨ ᠤ᠋' M'ᠰᠠᠷ᠎ᠠ  ᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss",
23854                                 M: "M'ᠰᠠᠷ᠎ᠠ' d'ᠡᠳᠦᠷ'",
23855                                 Y: "yyyy'ᠣᠨ' M'ᠰᠠᠷ᠎ᠠ'"
23856                         }
23857                 }
23858         }
23859 });
23860
23861 Globalize.addCultureInfo( "iu-Latn", "default", {
23862         name: "iu-Latn",
23863         englishName: "Inuktitut (Latin)",
23864         nativeName: "Inuktitut",
23865         language: "iu-Latn",
23866         numberFormat: {
23867                 groupSizes: [3,0],
23868                 percent: {
23869                         groupSizes: [3,0]
23870                 }
23871         },
23872         calendars: {
23873                 standard: {
23874                         days: {
23875                                 names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"],
23876                                 namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"],
23877                                 namesShort: ["N","N","A","P","S","T","S"]
23878                         },
23879                         months: {
23880                                 names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""],
23881                                 namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""]
23882                         },
23883                         patterns: {
23884                                 d: "d/MM/yyyy",
23885                                 D: "ddd, MMMM dd,yyyy",
23886                                 f: "ddd, MMMM dd,yyyy h:mm tt",
23887                                 F: "ddd, MMMM dd,yyyy h:mm:ss tt"
23888                         }
23889                 }
23890         }
23891 });
23892
23893 Globalize.addCultureInfo( "tzm-Latn", "default", {
23894         name: "tzm-Latn",
23895         englishName: "Tamazight (Latin)",
23896         nativeName: "Tamazight",
23897         language: "tzm-Latn",
23898         numberFormat: {
23899                 pattern: ["n-"],
23900                 ",": ".",
23901                 ".": ",",
23902                 NaN: "Non Numérique",
23903                 negativeInfinity: "-Infini",
23904                 positiveInfinity: "+Infini",
23905                 percent: {
23906                         ",": ".",
23907                         ".": ","
23908                 },
23909                 currency: {
23910                         pattern: ["-n $","n $"],
23911                         symbol: "DZD"
23912                 }
23913         },
23914         calendars: {
23915                 standard: {
23916                         "/": "-",
23917                         firstDay: 6,
23918                         days: {
23919                                 names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"],
23920                                 namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"],
23921                                 namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"]
23922                         },
23923                         months: {
23924                                 names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""],
23925                                 namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""]
23926                         },
23927                         AM: null,
23928                         PM: null,
23929                         patterns: {
23930                                 d: "dd-MM-yyyy",
23931                                 D: "dd MMMM, yyyy",
23932                                 t: "H:mm",
23933                                 T: "H:mm:ss",
23934                                 f: "dd MMMM, yyyy H:mm",
23935                                 F: "dd MMMM, yyyy H:mm:ss",
23936                                 M: "dd MMMM"
23937                         }
23938                 }
23939         }
23940 });
23941
23942 Globalize.addCultureInfo( "ha-Latn", "default", {
23943         name: "ha-Latn",
23944         englishName: "Hausa (Latin)",
23945         nativeName: "Hausa",
23946         language: "ha-Latn",
23947         numberFormat: {
23948                 currency: {
23949                         pattern: ["$-n","$ n"],
23950                         symbol: "N"
23951                 }
23952         },
23953         calendars: {
23954                 standard: {
23955                         days: {
23956                                 names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"],
23957                                 namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"],
23958                                 namesShort: ["L","L","T","L","A","J","A"]
23959                         },
23960                         months: {
23961                                 names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""],
23962                                 namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""]
23963                         },
23964                         AM: ["Safe","safe","SAFE"],
23965                         PM: ["Yamma","yamma","YAMMA"],
23966                         eras: [{"name":"AD","start":null,"offset":0}],
23967                         patterns: {
23968                                 d: "d/M/yyyy"
23969                         }
23970                 }
23971         }
23972 });
23973
23974 Globalize.addCultureInfo( "zh-CHS", "default", {
23975         name: "zh-CHS",
23976         englishName: "Chinese (Simplified) Legacy",
23977         nativeName: "中文(简体) 旧版",
23978         language: "zh-CHS",
23979         numberFormat: {
23980                 NaN: "非数字",
23981                 negativeInfinity: "负无穷大",
23982                 positiveInfinity: "正无穷大",
23983                 percent: {
23984                         pattern: ["-n%","n%"]
23985                 },
23986                 currency: {
23987                         pattern: ["$-n","$n"],
23988                         symbol: "¥"
23989                 }
23990         },
23991         calendars: {
23992                 standard: {
23993                         days: {
23994                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
23995                                 namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"],
23996                                 namesShort: ["日","一","二","三","四","五","六"]
23997                         },
23998                         months: {
23999                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
24000                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
24001                         },
24002                         AM: ["上午","上午","上午"],
24003                         PM: ["下午","下午","下午"],
24004                         eras: [{"name":"公元","start":null,"offset":0}],
24005                         patterns: {
24006                                 d: "yyyy/M/d",
24007                                 D: "yyyy'年'M'月'd'日'",
24008                                 t: "H:mm",
24009                                 T: "H:mm:ss",
24010                                 f: "yyyy'年'M'月'd'日' H:mm",
24011                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
24012                                 M: "M'月'd'日'",
24013                                 Y: "yyyy'年'M'月'"
24014                         }
24015                 }
24016         }
24017 });
24018
24019 Globalize.addCultureInfo( "zh-CHT", "default", {
24020         name: "zh-CHT",
24021         englishName: "Chinese (Traditional) Legacy",
24022         nativeName: "中文(繁體) 舊版",
24023         language: "zh-CHT",
24024         numberFormat: {
24025                 NaN: "非數字",
24026                 negativeInfinity: "負無窮大",
24027                 positiveInfinity: "正無窮大",
24028                 percent: {
24029                         pattern: ["-n%","n%"]
24030                 },
24031                 currency: {
24032                         symbol: "HK$"
24033                 }
24034         },
24035         calendars: {
24036                 standard: {
24037                         days: {
24038                                 names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
24039                                 namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"],
24040                                 namesShort: ["日","一","二","三","四","五","六"]
24041                         },
24042                         months: {
24043                                 names: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],
24044                                 namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]
24045                         },
24046                         AM: ["上午","上午","上午"],
24047                         PM: ["下午","下午","下午"],
24048                         eras: [{"name":"公元","start":null,"offset":0}],
24049                         patterns: {
24050                                 d: "d/M/yyyy",
24051                                 D: "yyyy'年'M'月'd'日'",
24052                                 t: "H:mm",
24053                                 T: "H:mm:ss",
24054                                 f: "yyyy'年'M'月'd'日' H:mm",
24055                                 F: "yyyy'年'M'月'd'日' H:mm:ss",
24056                                 M: "M'月'd'日'",
24057                                 Y: "yyyy'年'M'月'"
24058                         }
24059                 }
24060         }
24061 });
24062 \r
24063 }( this ));\r