make-plural 4.0.1 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/es6/plurals.js CHANGED
@@ -20,16 +20,27 @@ function(n, ord) {
20
20
  ];
21
21
 
22
22
  export default {
23
- af: _cp[1],
23
+ af: function(n, ord
24
+ ) {
25
+ if (ord) return 'other';
26
+ return (n == 1) ? 'one' : 'other';
27
+ },
24
28
 
25
- ak: _cp[2],
29
+ ak: function(n, ord
30
+ ) {
31
+ if (ord) return 'other';
32
+ return ((n == 0
33
+ || n == 1)) ? 'one' : 'other';
34
+ },
26
35
 
27
- am: function(n, ord) {
36
+ am: function(n, ord
37
+ ) {
28
38
  if (ord) return 'other';
29
39
  return (n >= 0 && n <= 1) ? 'one' : 'other';
30
40
  },
31
41
 
32
- ar: function(n, ord) {
42
+ ar: function(n, ord
43
+ ) {
33
44
  var s = String(n).split('.'), t0 = Number(s[0]) == n,
34
45
  n100 = t0 && s[0].slice(-2);
35
46
  if (ord) return 'other';
@@ -41,7 +52,8 @@ ar: function(n, ord) {
41
52
  : 'other';
42
53
  },
43
54
 
44
- ars: function(n, ord) {
55
+ ars: function(n, ord
56
+ ) {
45
57
  var s = String(n).split('.'), t0 = Number(s[0]) == n,
46
58
  n100 = t0 && s[0].slice(-2);
47
59
  if (ord) return 'other';
@@ -53,7 +65,8 @@ ars: function(n, ord) {
53
65
  : 'other';
54
66
  },
55
67
 
56
- as: function(n, ord) {
68
+ as: function(n, ord
69
+ ) {
57
70
  if (ord) return ((n == 1 || n == 5 || n == 7 || n == 8 || n == 9
58
71
  || n == 10)) ? 'one'
59
72
  : ((n == 2
@@ -64,11 +77,21 @@ as: function(n, ord) {
64
77
  return (n >= 0 && n <= 1) ? 'one' : 'other';
65
78
  },
66
79
 
67
- asa: _cp[1],
80
+ asa: function(n, ord
81
+ ) {
82
+ if (ord) return 'other';
83
+ return (n == 1) ? 'one' : 'other';
84
+ },
68
85
 
69
- ast: _cp[3],
86
+ ast: function(n, ord
87
+ ) {
88
+ var s = String(n).split('.'), v0 = !s[1];
89
+ if (ord) return 'other';
90
+ return (n == 1 && v0) ? 'one' : 'other';
91
+ },
70
92
 
71
- az: function(n, ord) {
93
+ az: function(n, ord
94
+ ) {
72
95
  var s = String(n).split('.'), i = s[0], i10 = i.slice(-1),
73
96
  i100 = i.slice(-2), i1000 = i.slice(-3);
74
97
  if (ord) return ((i10 == 1 || i10 == 2 || i10 == 5 || i10 == 7 || i10 == 8)
@@ -84,7 +107,8 @@ az: function(n, ord) {
84
107
  return (n == 1) ? 'one' : 'other';
85
108
  },
86
109
 
87
- be: function(n, ord) {
110
+ be: function(n, ord
111
+ ) {
88
112
  var s = String(n).split('.'), t0 = Number(s[0]) == n,
89
113
  n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
90
114
  if (ord) return ((n10 == 2
@@ -97,17 +121,39 @@ be: function(n, ord) {
97
121
  : 'other';
98
122
  },
99
123
 
100
- bem: _cp[1],
124
+ bem: function(n, ord
125
+ ) {
126
+ if (ord) return 'other';
127
+ return (n == 1) ? 'one' : 'other';
128
+ },
101
129
 
102
- bez: _cp[1],
130
+ bez: function(n, ord
131
+ ) {
132
+ if (ord) return 'other';
133
+ return (n == 1) ? 'one' : 'other';
134
+ },
103
135
 
104
- bg: _cp[1],
136
+ bg: function(n, ord
137
+ ) {
138
+ if (ord) return 'other';
139
+ return (n == 1) ? 'one' : 'other';
140
+ },
105
141
 
106
- bh: _cp[2],
142
+ bh: function(n, ord
143
+ ) {
144
+ if (ord) return 'other';
145
+ return ((n == 0
146
+ || n == 1)) ? 'one' : 'other';
147
+ },
107
148
 
108
- bm: _cp[0],
149
+ bm: function(n, ord
150
+ ) {
151
+ if (ord) return 'other';
152
+ return 'other';
153
+ },
109
154
 
110
- bn: function(n, ord) {
155
+ bn: function(n, ord
156
+ ) {
111
157
  if (ord) return ((n == 1 || n == 5 || n == 7 || n == 8 || n == 9
112
158
  || n == 10)) ? 'one'
113
159
  : ((n == 2
@@ -118,9 +164,14 @@ bn: function(n, ord) {
118
164
  return (n >= 0 && n <= 1) ? 'one' : 'other';
119
165
  },
120
166
 
121
- bo: _cp[0],
167
+ bo: function(n, ord
168
+ ) {
169
+ if (ord) return 'other';
170
+ return 'other';
171
+ },
122
172
 
123
- br: function(n, ord) {
173
+ br: function(n, ord
174
+ ) {
124
175
  var s = String(n).split('.'), t0 = Number(s[0]) == n,
125
176
  n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2),
126
177
  n1000000 = t0 && s[0].slice(-6);
@@ -134,9 +185,14 @@ br: function(n, ord) {
134
185
  : 'other';
135
186
  },
136
187
 
137
- brx: _cp[1],
188
+ brx: function(n, ord
189
+ ) {
190
+ if (ord) return 'other';
191
+ return (n == 1) ? 'one' : 'other';
192
+ },
138
193
 
139
- bs: function(n, ord) {
194
+ bs: function(n, ord
195
+ ) {
140
196
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
141
197
  i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
142
198
  if (ord) return 'other';
@@ -148,7 +204,8 @@ bs: function(n, ord) {
148
204
  : 'other';
149
205
  },
150
206
 
151
- ca: function(n, ord) {
207
+ ca: function(n, ord
208
+ ) {
152
209
  var s = String(n).split('.'), v0 = !s[1];
153
210
  if (ord) return ((n == 1
154
211
  || n == 3)) ? 'one'
@@ -158,15 +215,32 @@ ca: function(n, ord) {
158
215
  return (n == 1 && v0) ? 'one' : 'other';
159
216
  },
160
217
 
161
- ce: _cp[1],
218
+ ce: function(n, ord
219
+ ) {
220
+ if (ord) return 'other';
221
+ return (n == 1) ? 'one' : 'other';
222
+ },
162
223
 
163
- cgg: _cp[1],
224
+ cgg: function(n, ord
225
+ ) {
226
+ if (ord) return 'other';
227
+ return (n == 1) ? 'one' : 'other';
228
+ },
164
229
 
165
- chr: _cp[1],
230
+ chr: function(n, ord
231
+ ) {
232
+ if (ord) return 'other';
233
+ return (n == 1) ? 'one' : 'other';
234
+ },
166
235
 
167
- ckb: _cp[1],
236
+ ckb: function(n, ord
237
+ ) {
238
+ if (ord) return 'other';
239
+ return (n == 1) ? 'one' : 'other';
240
+ },
168
241
 
169
- cs: function(n, ord) {
242
+ cs: function(n, ord
243
+ ) {
170
244
  var s = String(n).split('.'), i = s[0], v0 = !s[1];
171
245
  if (ord) return 'other';
172
246
  return (n == 1 && v0) ? 'one'
@@ -175,7 +249,8 @@ cs: function(n, ord) {
175
249
  : 'other';
176
250
  },
177
251
 
178
- cy: function(n, ord) {
252
+ cy: function(n, ord
253
+ ) {
179
254
  if (ord) return ((n == 0 || n == 7 || n == 8
180
255
  || n == 9)) ? 'zero'
181
256
  : (n == 1) ? 'one'
@@ -193,16 +268,23 @@ cy: function(n, ord) {
193
268
  : 'other';
194
269
  },
195
270
 
196
- da: function(n, ord) {
271
+ da: function(n, ord
272
+ ) {
197
273
  var s = String(n).split('.'), i = s[0], t0 = Number(s[0]) == n;
198
274
  if (ord) return 'other';
199
275
  return (n == 1 || !t0 && (i == 0
200
276
  || i == 1)) ? 'one' : 'other';
201
277
  },
202
278
 
203
- de: _cp[3],
279
+ de: function(n, ord
280
+ ) {
281
+ var s = String(n).split('.'), v0 = !s[1];
282
+ if (ord) return 'other';
283
+ return (n == 1 && v0) ? 'one' : 'other';
284
+ },
204
285
 
205
- dsb: function(n, ord) {
286
+ dsb: function(n, ord
287
+ ) {
206
288
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
207
289
  i100 = i.slice(-2), f100 = f.slice(-2);
208
290
  if (ord) return 'other';
@@ -215,15 +297,32 @@ dsb: function(n, ord) {
215
297
  : 'other';
216
298
  },
217
299
 
218
- dv: _cp[1],
300
+ dv: function(n, ord
301
+ ) {
302
+ if (ord) return 'other';
303
+ return (n == 1) ? 'one' : 'other';
304
+ },
219
305
 
220
- dz: _cp[0],
306
+ dz: function(n, ord
307
+ ) {
308
+ if (ord) return 'other';
309
+ return 'other';
310
+ },
221
311
 
222
- ee: _cp[1],
312
+ ee: function(n, ord
313
+ ) {
314
+ if (ord) return 'other';
315
+ return (n == 1) ? 'one' : 'other';
316
+ },
223
317
 
224
- el: _cp[1],
318
+ el: function(n, ord
319
+ ) {
320
+ if (ord) return 'other';
321
+ return (n == 1) ? 'one' : 'other';
322
+ },
225
323
 
226
- en: function(n, ord) {
324
+ en: function(n, ord
325
+ ) {
227
326
  var s = String(n).split('.'), v0 = !s[1], t0 = Number(s[0]) == n,
228
327
  n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
229
328
  if (ord) return (n10 == 1 && n100 != 11) ? 'one'
@@ -233,27 +332,52 @@ en: function(n, ord) {
233
332
  return (n == 1 && v0) ? 'one' : 'other';
234
333
  },
235
334
 
236
- eo: _cp[1],
335
+ eo: function(n, ord
336
+ ) {
337
+ if (ord) return 'other';
338
+ return (n == 1) ? 'one' : 'other';
339
+ },
237
340
 
238
- es: _cp[1],
341
+ es: function(n, ord
342
+ ) {
343
+ if (ord) return 'other';
344
+ return (n == 1) ? 'one' : 'other';
345
+ },
239
346
 
240
- et: _cp[3],
347
+ et: function(n, ord
348
+ ) {
349
+ var s = String(n).split('.'), v0 = !s[1];
350
+ if (ord) return 'other';
351
+ return (n == 1 && v0) ? 'one' : 'other';
352
+ },
241
353
 
242
- eu: _cp[1],
354
+ eu: function(n, ord
355
+ ) {
356
+ if (ord) return 'other';
357
+ return (n == 1) ? 'one' : 'other';
358
+ },
243
359
 
244
- fa: function(n, ord) {
360
+ fa: function(n, ord
361
+ ) {
245
362
  if (ord) return 'other';
246
363
  return (n >= 0 && n <= 1) ? 'one' : 'other';
247
364
  },
248
365
 
249
- ff: function(n, ord) {
366
+ ff: function(n, ord
367
+ ) {
250
368
  if (ord) return 'other';
251
369
  return (n >= 0 && n < 2) ? 'one' : 'other';
252
370
  },
253
371
 
254
- fi: _cp[3],
372
+ fi: function(n, ord
373
+ ) {
374
+ var s = String(n).split('.'), v0 = !s[1];
375
+ if (ord) return 'other';
376
+ return (n == 1 && v0) ? 'one' : 'other';
377
+ },
255
378
 
256
- fil: function(n, ord) {
379
+ fil: function(n, ord
380
+ ) {
257
381
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
258
382
  i10 = i.slice(-1), f10 = f.slice(-1);
259
383
  if (ord) return (n == 1) ? 'one' : 'other';
@@ -262,18 +386,33 @@ fil: function(n, ord) {
262
386
  || !v0 && f10 != 4 && f10 != 6 && f10 != 9) ? 'one' : 'other';
263
387
  },
264
388
 
265
- fo: _cp[1],
389
+ fo: function(n, ord
390
+ ) {
391
+ if (ord) return 'other';
392
+ return (n == 1) ? 'one' : 'other';
393
+ },
266
394
 
267
- fr: function(n, ord) {
395
+ fr: function(n, ord
396
+ ) {
268
397
  if (ord) return (n == 1) ? 'one' : 'other';
269
398
  return (n >= 0 && n < 2) ? 'one' : 'other';
270
399
  },
271
400
 
272
- fur: _cp[1],
401
+ fur: function(n, ord
402
+ ) {
403
+ if (ord) return 'other';
404
+ return (n == 1) ? 'one' : 'other';
405
+ },
273
406
 
274
- fy: _cp[3],
407
+ fy: function(n, ord
408
+ ) {
409
+ var s = String(n).split('.'), v0 = !s[1];
410
+ if (ord) return 'other';
411
+ return (n == 1 && v0) ? 'one' : 'other';
412
+ },
275
413
 
276
- ga: function(n, ord) {
414
+ ga: function(n, ord
415
+ ) {
277
416
  var s = String(n).split('.'), t0 = Number(s[0]) == n;
278
417
  if (ord) return (n == 1) ? 'one' : 'other';
279
418
  return (n == 1) ? 'one'
@@ -283,9 +422,16 @@ ga: function(n, ord) {
283
422
  : 'other';
284
423
  },
285
424
 
286
- gd: function(n, ord) {
425
+ gd: function(n, ord
426
+ ) {
287
427
  var s = String(n).split('.'), t0 = Number(s[0]) == n;
288
- if (ord) return 'other';
428
+ if (ord) return ((n == 1
429
+ || n == 11)) ? 'one'
430
+ : ((n == 2
431
+ || n == 12)) ? 'two'
432
+ : ((n == 3
433
+ || n == 13)) ? 'few'
434
+ : 'other';
289
435
  return ((n == 1
290
436
  || n == 11)) ? 'one'
291
437
  : ((n == 2
@@ -295,11 +441,21 @@ gd: function(n, ord) {
295
441
  : 'other';
296
442
  },
297
443
 
298
- gl: _cp[3],
444
+ gl: function(n, ord
445
+ ) {
446
+ var s = String(n).split('.'), v0 = !s[1];
447
+ if (ord) return 'other';
448
+ return (n == 1 && v0) ? 'one' : 'other';
449
+ },
299
450
 
300
- gsw: _cp[1],
451
+ gsw: function(n, ord
452
+ ) {
453
+ if (ord) return 'other';
454
+ return (n == 1) ? 'one' : 'other';
455
+ },
301
456
 
302
- gu: function(n, ord) {
457
+ gu: function(n, ord
458
+ ) {
303
459
  if (ord) return (n == 1) ? 'one'
304
460
  : ((n == 2
305
461
  || n == 3)) ? 'two'
@@ -309,9 +465,15 @@ gu: function(n, ord) {
309
465
  return (n >= 0 && n <= 1) ? 'one' : 'other';
310
466
  },
311
467
 
312
- guw: _cp[2],
468
+ guw: function(n, ord
469
+ ) {
470
+ if (ord) return 'other';
471
+ return ((n == 0
472
+ || n == 1)) ? 'one' : 'other';
473
+ },
313
474
 
314
- gv: function(n, ord) {
475
+ gv: function(n, ord
476
+ ) {
315
477
  var s = String(n).split('.'), i = s[0], v0 = !s[1], i10 = i.slice(-1),
316
478
  i100 = i.slice(-2);
317
479
  if (ord) return 'other';
@@ -323,11 +485,20 @@ gv: function(n, ord) {
323
485
  : 'other';
324
486
  },
325
487
 
326
- ha: _cp[1],
488
+ ha: function(n, ord
489
+ ) {
490
+ if (ord) return 'other';
491
+ return (n == 1) ? 'one' : 'other';
492
+ },
327
493
 
328
- haw: _cp[1],
494
+ haw: function(n, ord
495
+ ) {
496
+ if (ord) return 'other';
497
+ return (n == 1) ? 'one' : 'other';
498
+ },
329
499
 
330
- he: function(n, ord) {
500
+ he: function(n, ord
501
+ ) {
331
502
  var s = String(n).split('.'), i = s[0], v0 = !s[1], t0 = Number(s[0]) == n,
332
503
  n10 = t0 && s[0].slice(-1);
333
504
  if (ord) return 'other';
@@ -338,7 +509,8 @@ he: function(n, ord) {
338
509
  : 'other';
339
510
  },
340
511
 
341
- hi: function(n, ord) {
512
+ hi: function(n, ord
513
+ ) {
342
514
  if (ord) return (n == 1) ? 'one'
343
515
  : ((n == 2
344
516
  || n == 3)) ? 'two'
@@ -348,7 +520,8 @@ hi: function(n, ord) {
348
520
  return (n >= 0 && n <= 1) ? 'one' : 'other';
349
521
  },
350
522
 
351
- hr: function(n, ord) {
523
+ hr: function(n, ord
524
+ ) {
352
525
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
353
526
  i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
354
527
  if (ord) return 'other';
@@ -360,7 +533,8 @@ hr: function(n, ord) {
360
533
  : 'other';
361
534
  },
362
535
 
363
- hsb: function(n, ord) {
536
+ hsb: function(n, ord
537
+ ) {
364
538
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
365
539
  i100 = i.slice(-2), f100 = f.slice(-2);
366
540
  if (ord) return 'other';
@@ -373,26 +547,59 @@ hsb: function(n, ord) {
373
547
  : 'other';
374
548
  },
375
549
 
376
- hu: function(n, ord) {
550
+ hu: function(n, ord
551
+ ) {
377
552
  if (ord) return ((n == 1
378
553
  || n == 5)) ? 'one' : 'other';
379
554
  return (n == 1) ? 'one' : 'other';
380
555
  },
381
556
 
382
- hy: function(n, ord) {
557
+ hy: function(n, ord
558
+ ) {
383
559
  if (ord) return (n == 1) ? 'one' : 'other';
384
560
  return (n >= 0 && n < 2) ? 'one' : 'other';
385
561
  },
386
562
 
387
- id: _cp[0],
563
+ ia: function(n, ord
564
+ ) {
565
+ var s = String(n).split('.'), v0 = !s[1];
566
+ if (ord) return 'other';
567
+ return (n == 1 && v0) ? 'one' : 'other';
568
+ },
569
+
570
+ id: function(n, ord
571
+ ) {
572
+ if (ord) return 'other';
573
+ return 'other';
574
+ },
575
+
576
+ ig: function(n, ord
577
+ ) {
578
+ if (ord) return 'other';
579
+ return 'other';
580
+ },
388
581
 
389
- ig: _cp[0],
582
+ ii: function(n, ord
583
+ ) {
584
+ if (ord) return 'other';
585
+ return 'other';
586
+ },
390
587
 
391
- ii: _cp[0],
588
+ "in": function(n, ord
589
+ ) {
590
+ if (ord) return 'other';
591
+ return 'other';
592
+ },
392
593
 
393
- "in": _cp[0],
594
+ io: function(n, ord
595
+ ) {
596
+ var s = String(n).split('.'), v0 = !s[1];
597
+ if (ord) return 'other';
598
+ return (n == 1 && v0) ? 'one' : 'other';
599
+ },
394
600
 
395
- is: function(n, ord) {
601
+ is: function(n, ord
602
+ ) {
396
603
  var s = String(n).split('.'), i = s[0], t0 = Number(s[0]) == n,
397
604
  i10 = i.slice(-1), i100 = i.slice(-2);
398
605
  if (ord) return 'other';
@@ -400,21 +607,24 @@ is: function(n, ord) {
400
607
  || !t0) ? 'one' : 'other';
401
608
  },
402
609
 
403
- it: function(n, ord) {
610
+ it: function(n, ord
611
+ ) {
404
612
  var s = String(n).split('.'), v0 = !s[1];
405
613
  if (ord) return ((n == 11 || n == 8 || n == 80
406
614
  || n == 800)) ? 'many' : 'other';
407
615
  return (n == 1 && v0) ? 'one' : 'other';
408
616
  },
409
617
 
410
- iu: function(n, ord) {
618
+ iu: function(n, ord
619
+ ) {
411
620
  if (ord) return 'other';
412
621
  return (n == 1) ? 'one'
413
622
  : (n == 2) ? 'two'
414
623
  : 'other';
415
624
  },
416
625
 
417
- iw: function(n, ord) {
626
+ iw: function(n, ord
627
+ ) {
418
628
  var s = String(n).split('.'), i = s[0], v0 = !s[1], t0 = Number(s[0]) == n,
419
629
  n10 = t0 && s[0].slice(-1);
420
630
  if (ord) return 'other';
@@ -425,21 +635,51 @@ iw: function(n, ord) {
425
635
  : 'other';
426
636
  },
427
637
 
428
- ja: _cp[0],
638
+ ja: function(n, ord
639
+ ) {
640
+ if (ord) return 'other';
641
+ return 'other';
642
+ },
429
643
 
430
- jbo: _cp[0],
644
+ jbo: function(n, ord
645
+ ) {
646
+ if (ord) return 'other';
647
+ return 'other';
648
+ },
431
649
 
432
- jgo: _cp[1],
650
+ jgo: function(n, ord
651
+ ) {
652
+ if (ord) return 'other';
653
+ return (n == 1) ? 'one' : 'other';
654
+ },
433
655
 
434
- ji: _cp[3],
656
+ ji: function(n, ord
657
+ ) {
658
+ var s = String(n).split('.'), v0 = !s[1];
659
+ if (ord) return 'other';
660
+ return (n == 1 && v0) ? 'one' : 'other';
661
+ },
435
662
 
436
- jmc: _cp[1],
663
+ jmc: function(n, ord
664
+ ) {
665
+ if (ord) return 'other';
666
+ return (n == 1) ? 'one' : 'other';
667
+ },
437
668
 
438
- jv: _cp[0],
669
+ jv: function(n, ord
670
+ ) {
671
+ if (ord) return 'other';
672
+ return 'other';
673
+ },
439
674
 
440
- jw: _cp[0],
675
+ jw: function(n, ord
676
+ ) {
677
+ if (ord) return 'other';
678
+ return 'other';
679
+ },
441
680
 
442
- ka: function(n, ord) {
681
+ ka: function(n, ord
682
+ ) {
443
683
  var s = String(n).split('.'), i = s[0], i100 = i.slice(-2);
444
684
  if (ord) return (i == 1) ? 'one'
445
685
  : (i == 0 || ((i100 >= 2 && i100 <= 20) || i100 == 40 || i100 == 60
@@ -448,20 +688,38 @@ ka: function(n, ord) {
448
688
  return (n == 1) ? 'one' : 'other';
449
689
  },
450
690
 
451
- kab: function(n, ord) {
691
+ kab: function(n, ord
692
+ ) {
452
693
  if (ord) return 'other';
453
694
  return (n >= 0 && n < 2) ? 'one' : 'other';
454
695
  },
455
696
 
456
- kaj: _cp[1],
697
+ kaj: function(n, ord
698
+ ) {
699
+ if (ord) return 'other';
700
+ return (n == 1) ? 'one' : 'other';
701
+ },
457
702
 
458
- kcg: _cp[1],
703
+ kcg: function(n, ord
704
+ ) {
705
+ if (ord) return 'other';
706
+ return (n == 1) ? 'one' : 'other';
707
+ },
459
708
 
460
- kde: _cp[0],
709
+ kde: function(n, ord
710
+ ) {
711
+ if (ord) return 'other';
712
+ return 'other';
713
+ },
461
714
 
462
- kea: _cp[0],
715
+ kea: function(n, ord
716
+ ) {
717
+ if (ord) return 'other';
718
+ return 'other';
719
+ },
463
720
 
464
- kk: function(n, ord) {
721
+ kk: function(n, ord
722
+ ) {
465
723
  var s = String(n).split('.'), t0 = Number(s[0]) == n,
466
724
  n10 = t0 && s[0].slice(-1);
467
725
  if (ord) return (n10 == 6 || n10 == 9
@@ -469,42 +727,78 @@ kk: function(n, ord) {
469
727
  return (n == 1) ? 'one' : 'other';
470
728
  },
471
729
 
472
- kkj: _cp[1],
730
+ kkj: function(n, ord
731
+ ) {
732
+ if (ord) return 'other';
733
+ return (n == 1) ? 'one' : 'other';
734
+ },
473
735
 
474
- kl: _cp[1],
736
+ kl: function(n, ord
737
+ ) {
738
+ if (ord) return 'other';
739
+ return (n == 1) ? 'one' : 'other';
740
+ },
475
741
 
476
- km: _cp[0],
742
+ km: function(n, ord
743
+ ) {
744
+ if (ord) return 'other';
745
+ return 'other';
746
+ },
477
747
 
478
- kn: function(n, ord) {
748
+ kn: function(n, ord
749
+ ) {
479
750
  if (ord) return 'other';
480
751
  return (n >= 0 && n <= 1) ? 'one' : 'other';
481
752
  },
482
753
 
483
- ko: _cp[0],
754
+ ko: function(n, ord
755
+ ) {
756
+ if (ord) return 'other';
757
+ return 'other';
758
+ },
484
759
 
485
- ks: _cp[1],
760
+ ks: function(n, ord
761
+ ) {
762
+ if (ord) return 'other';
763
+ return (n == 1) ? 'one' : 'other';
764
+ },
486
765
 
487
- ksb: _cp[1],
766
+ ksb: function(n, ord
767
+ ) {
768
+ if (ord) return 'other';
769
+ return (n == 1) ? 'one' : 'other';
770
+ },
488
771
 
489
- ksh: function(n, ord) {
772
+ ksh: function(n, ord
773
+ ) {
490
774
  if (ord) return 'other';
491
775
  return (n == 0) ? 'zero'
492
776
  : (n == 1) ? 'one'
493
777
  : 'other';
494
778
  },
495
779
 
496
- ku: _cp[1],
780
+ ku: function(n, ord
781
+ ) {
782
+ if (ord) return 'other';
783
+ return (n == 1) ? 'one' : 'other';
784
+ },
497
785
 
498
- kw: function(n, ord) {
786
+ kw: function(n, ord
787
+ ) {
499
788
  if (ord) return 'other';
500
789
  return (n == 1) ? 'one'
501
790
  : (n == 2) ? 'two'
502
791
  : 'other';
503
792
  },
504
793
 
505
- ky: _cp[1],
794
+ ky: function(n, ord
795
+ ) {
796
+ if (ord) return 'other';
797
+ return (n == 1) ? 'one' : 'other';
798
+ },
506
799
 
507
- lag: function(n, ord) {
800
+ lag: function(n, ord
801
+ ) {
508
802
  var s = String(n).split('.'), i = s[0];
509
803
  if (ord) return 'other';
510
804
  return (n == 0) ? 'zero'
@@ -513,20 +807,39 @@ lag: function(n, ord) {
513
807
  : 'other';
514
808
  },
515
809
 
516
- lb: _cp[1],
810
+ lb: function(n, ord
811
+ ) {
812
+ if (ord) return 'other';
813
+ return (n == 1) ? 'one' : 'other';
814
+ },
517
815
 
518
- lg: _cp[1],
816
+ lg: function(n, ord
817
+ ) {
818
+ if (ord) return 'other';
819
+ return (n == 1) ? 'one' : 'other';
820
+ },
519
821
 
520
- lkt: _cp[0],
822
+ lkt: function(n, ord
823
+ ) {
824
+ if (ord) return 'other';
825
+ return 'other';
826
+ },
521
827
 
522
- ln: _cp[2],
828
+ ln: function(n, ord
829
+ ) {
830
+ if (ord) return 'other';
831
+ return ((n == 0
832
+ || n == 1)) ? 'one' : 'other';
833
+ },
523
834
 
524
- lo: function(n, ord) {
835
+ lo: function(n, ord
836
+ ) {
525
837
  if (ord) return (n == 1) ? 'one' : 'other';
526
838
  return 'other';
527
839
  },
528
840
 
529
- lt: function(n, ord) {
841
+ lt: function(n, ord
842
+ ) {
530
843
  var s = String(n).split('.'), f = s[1] || '', t0 = Number(s[0]) == n,
531
844
  n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
532
845
  if (ord) return 'other';
@@ -538,7 +851,8 @@ lt: function(n, ord) {
538
851
  : 'other';
539
852
  },
540
853
 
541
- lv: function(n, ord) {
854
+ lv: function(n, ord
855
+ ) {
542
856
  var s = String(n).split('.'), f = s[1] || '', v = f.length,
543
857
  t0 = Number(s[0]) == n, n10 = t0 && s[0].slice(-1),
544
858
  n100 = t0 && s[0].slice(-2), f100 = f.slice(-2), f10 = f.slice(-1);
@@ -550,29 +864,52 @@ lv: function(n, ord) {
550
864
  : 'other';
551
865
  },
552
866
 
553
- mas: _cp[1],
867
+ mas: function(n, ord
868
+ ) {
869
+ if (ord) return 'other';
870
+ return (n == 1) ? 'one' : 'other';
871
+ },
554
872
 
555
- mg: _cp[2],
873
+ mg: function(n, ord
874
+ ) {
875
+ if (ord) return 'other';
876
+ return ((n == 0
877
+ || n == 1)) ? 'one' : 'other';
878
+ },
556
879
 
557
- mgo: _cp[1],
880
+ mgo: function(n, ord
881
+ ) {
882
+ if (ord) return 'other';
883
+ return (n == 1) ? 'one' : 'other';
884
+ },
558
885
 
559
- mk: function(n, ord) {
886
+ mk: function(n, ord
887
+ ) {
560
888
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
561
- i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1);
889
+ i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
562
890
  if (ord) return (i10 == 1 && i100 != 11) ? 'one'
563
891
  : (i10 == 2 && i100 != 12) ? 'two'
564
892
  : ((i10 == 7
565
893
  || i10 == 8) && i100 != 17 && i100 != 18) ? 'many'
566
894
  : 'other';
567
- return (v0 && i10 == 1
568
- || f10 == 1) ? 'one' : 'other';
895
+ return (v0 && i10 == 1 && i100 != 11
896
+ || f10 == 1 && f100 != 11) ? 'one' : 'other';
569
897
  },
570
898
 
571
- ml: _cp[1],
899
+ ml: function(n, ord
900
+ ) {
901
+ if (ord) return 'other';
902
+ return (n == 1) ? 'one' : 'other';
903
+ },
572
904
 
573
- mn: _cp[1],
905
+ mn: function(n, ord
906
+ ) {
907
+ if (ord) return 'other';
908
+ return (n == 1) ? 'one' : 'other';
909
+ },
574
910
 
575
- mo: function(n, ord) {
911
+ mo: function(n, ord
912
+ ) {
576
913
  var s = String(n).split('.'), v0 = !s[1], t0 = Number(s[0]) == n,
577
914
  n100 = t0 && s[0].slice(-2);
578
915
  if (ord) return (n == 1) ? 'one' : 'other';
@@ -582,7 +919,8 @@ mo: function(n, ord) {
582
919
  : 'other';
583
920
  },
584
921
 
585
- mr: function(n, ord) {
922
+ mr: function(n, ord
923
+ ) {
586
924
  if (ord) return (n == 1) ? 'one'
587
925
  : ((n == 2
588
926
  || n == 3)) ? 'two'
@@ -591,12 +929,14 @@ mr: function(n, ord) {
591
929
  return (n >= 0 && n <= 1) ? 'one' : 'other';
592
930
  },
593
931
 
594
- ms: function(n, ord) {
932
+ ms: function(n, ord
933
+ ) {
595
934
  if (ord) return (n == 1) ? 'one' : 'other';
596
935
  return 'other';
597
936
  },
598
937
 
599
- mt: function(n, ord) {
938
+ mt: function(n, ord
939
+ ) {
600
940
  var s = String(n).split('.'), t0 = Number(s[0]) == n,
601
941
  n100 = t0 && s[0].slice(-2);
602
942
  if (ord) return 'other';
@@ -607,56 +947,141 @@ mt: function(n, ord) {
607
947
  : 'other';
608
948
  },
609
949
 
610
- my: _cp[0],
950
+ my: function(n, ord
951
+ ) {
952
+ if (ord) return 'other';
953
+ return 'other';
954
+ },
611
955
 
612
- nah: _cp[1],
956
+ nah: function(n, ord
957
+ ) {
958
+ if (ord) return 'other';
959
+ return (n == 1) ? 'one' : 'other';
960
+ },
613
961
 
614
- naq: function(n, ord) {
962
+ naq: function(n, ord
963
+ ) {
615
964
  if (ord) return 'other';
616
965
  return (n == 1) ? 'one'
617
966
  : (n == 2) ? 'two'
618
967
  : 'other';
619
968
  },
620
969
 
621
- nb: _cp[1],
970
+ nb: function(n, ord
971
+ ) {
972
+ if (ord) return 'other';
973
+ return (n == 1) ? 'one' : 'other';
974
+ },
622
975
 
623
- nd: _cp[1],
976
+ nd: function(n, ord
977
+ ) {
978
+ if (ord) return 'other';
979
+ return (n == 1) ? 'one' : 'other';
980
+ },
624
981
 
625
- ne: function(n, ord) {
982
+ ne: function(n, ord
983
+ ) {
626
984
  var s = String(n).split('.'), t0 = Number(s[0]) == n;
627
985
  if (ord) return ((t0 && n >= 1 && n <= 4)) ? 'one' : 'other';
628
986
  return (n == 1) ? 'one' : 'other';
629
987
  },
630
988
 
631
- nl: _cp[3],
989
+ nl: function(n, ord
990
+ ) {
991
+ var s = String(n).split('.'), v0 = !s[1];
992
+ if (ord) return 'other';
993
+ return (n == 1 && v0) ? 'one' : 'other';
994
+ },
632
995
 
633
- nn: _cp[1],
996
+ nn: function(n, ord
997
+ ) {
998
+ if (ord) return 'other';
999
+ return (n == 1) ? 'one' : 'other';
1000
+ },
634
1001
 
635
- nnh: _cp[1],
1002
+ nnh: function(n, ord
1003
+ ) {
1004
+ if (ord) return 'other';
1005
+ return (n == 1) ? 'one' : 'other';
1006
+ },
636
1007
 
637
- no: _cp[1],
1008
+ no: function(n, ord
1009
+ ) {
1010
+ if (ord) return 'other';
1011
+ return (n == 1) ? 'one' : 'other';
1012
+ },
638
1013
 
639
- nqo: _cp[0],
1014
+ nqo: function(n, ord
1015
+ ) {
1016
+ if (ord) return 'other';
1017
+ return 'other';
1018
+ },
640
1019
 
641
- nr: _cp[1],
1020
+ nr: function(n, ord
1021
+ ) {
1022
+ if (ord) return 'other';
1023
+ return (n == 1) ? 'one' : 'other';
1024
+ },
642
1025
 
643
- nso: _cp[2],
1026
+ nso: function(n, ord
1027
+ ) {
1028
+ if (ord) return 'other';
1029
+ return ((n == 0
1030
+ || n == 1)) ? 'one' : 'other';
1031
+ },
644
1032
 
645
- ny: _cp[1],
1033
+ ny: function(n, ord
1034
+ ) {
1035
+ if (ord) return 'other';
1036
+ return (n == 1) ? 'one' : 'other';
1037
+ },
646
1038
 
647
- nyn: _cp[1],
1039
+ nyn: function(n, ord
1040
+ ) {
1041
+ if (ord) return 'other';
1042
+ return (n == 1) ? 'one' : 'other';
1043
+ },
648
1044
 
649
- om: _cp[1],
1045
+ om: function(n, ord
1046
+ ) {
1047
+ if (ord) return 'other';
1048
+ return (n == 1) ? 'one' : 'other';
1049
+ },
650
1050
 
651
- or: _cp[1],
1051
+ or: function(n, ord
1052
+ ) {
1053
+ var s = String(n).split('.'), t0 = Number(s[0]) == n;
1054
+ if (ord) return ((n == 1 || n == 5
1055
+ || (t0 && n >= 7 && n <= 9))) ? 'one'
1056
+ : ((n == 2
1057
+ || n == 3)) ? 'two'
1058
+ : (n == 4) ? 'few'
1059
+ : (n == 6) ? 'many'
1060
+ : 'other';
1061
+ return (n == 1) ? 'one' : 'other';
1062
+ },
652
1063
 
653
- os: _cp[1],
1064
+ os: function(n, ord
1065
+ ) {
1066
+ if (ord) return 'other';
1067
+ return (n == 1) ? 'one' : 'other';
1068
+ },
654
1069
 
655
- pa: _cp[2],
1070
+ pa: function(n, ord
1071
+ ) {
1072
+ if (ord) return 'other';
1073
+ return ((n == 0
1074
+ || n == 1)) ? 'one' : 'other';
1075
+ },
656
1076
 
657
- pap: _cp[1],
1077
+ pap: function(n, ord
1078
+ ) {
1079
+ if (ord) return 'other';
1080
+ return (n == 1) ? 'one' : 'other';
1081
+ },
658
1082
 
659
- pl: function(n, ord) {
1083
+ pl: function(n, ord
1084
+ ) {
660
1085
  var s = String(n).split('.'), i = s[0], v0 = !s[1], i10 = i.slice(-1),
661
1086
  i100 = i.slice(-2);
662
1087
  if (ord) return 'other';
@@ -669,7 +1094,8 @@ pl: function(n, ord) {
669
1094
  : 'other';
670
1095
  },
671
1096
 
672
- prg: function(n, ord) {
1097
+ prg: function(n, ord
1098
+ ) {
673
1099
  var s = String(n).split('.'), f = s[1] || '', v = f.length,
674
1100
  t0 = Number(s[0]) == n, n10 = t0 && s[0].slice(-1),
675
1101
  n100 = t0 && s[0].slice(-2), f100 = f.slice(-2), f10 = f.slice(-1);
@@ -681,19 +1107,35 @@ prg: function(n, ord) {
681
1107
  : 'other';
682
1108
  },
683
1109
 
684
- ps: _cp[1],
1110
+ ps: function(n, ord
1111
+ ) {
1112
+ if (ord) return 'other';
1113
+ return (n == 1) ? 'one' : 'other';
1114
+ },
685
1115
 
686
- pt: function(n, ord) {
687
- var s = String(n).split('.'), t0 = Number(s[0]) == n;
1116
+ pt: function(n, ord
1117
+ ) {
1118
+ var s = String(n).split('.'), i = s[0];
688
1119
  if (ord) return 'other';
689
- return ((t0 && n >= 0 && n <= 2) && n != 2) ? 'one' : 'other';
1120
+ return ((i == 0
1121
+ || i == 1)) ? 'one' : 'other';
690
1122
  },
691
1123
 
692
- "pt-PT": _cp[3],
1124
+ "pt-PT": function(n, ord
1125
+ ) {
1126
+ var s = String(n).split('.'), v0 = !s[1];
1127
+ if (ord) return 'other';
1128
+ return (n == 1 && v0) ? 'one' : 'other';
1129
+ },
693
1130
 
694
- rm: _cp[1],
1131
+ rm: function(n, ord
1132
+ ) {
1133
+ if (ord) return 'other';
1134
+ return (n == 1) ? 'one' : 'other';
1135
+ },
695
1136
 
696
- ro: function(n, ord) {
1137
+ ro: function(n, ord
1138
+ ) {
697
1139
  var s = String(n).split('.'), v0 = !s[1], t0 = Number(s[0]) == n,
698
1140
  n100 = t0 && s[0].slice(-2);
699
1141
  if (ord) return (n == 1) ? 'one' : 'other';
@@ -703,11 +1145,20 @@ ro: function(n, ord) {
703
1145
  : 'other';
704
1146
  },
705
1147
 
706
- rof: _cp[1],
1148
+ rof: function(n, ord
1149
+ ) {
1150
+ if (ord) return 'other';
1151
+ return (n == 1) ? 'one' : 'other';
1152
+ },
707
1153
 
708
- root: _cp[0],
1154
+ root: function(n, ord
1155
+ ) {
1156
+ if (ord) return 'other';
1157
+ return 'other';
1158
+ },
709
1159
 
710
- ru: function(n, ord) {
1160
+ ru: function(n, ord
1161
+ ) {
711
1162
  var s = String(n).split('.'), i = s[0], v0 = !s[1], i10 = i.slice(-1),
712
1163
  i100 = i.slice(-2);
713
1164
  if (ord) return 'other';
@@ -719,28 +1170,80 @@ ru: function(n, ord) {
719
1170
  : 'other';
720
1171
  },
721
1172
 
722
- rwk: _cp[1],
1173
+ rwk: function(n, ord
1174
+ ) {
1175
+ if (ord) return 'other';
1176
+ return (n == 1) ? 'one' : 'other';
1177
+ },
1178
+
1179
+ sah: function(n, ord
1180
+ ) {
1181
+ if (ord) return 'other';
1182
+ return 'other';
1183
+ },
1184
+
1185
+ saq: function(n, ord
1186
+ ) {
1187
+ if (ord) return 'other';
1188
+ return (n == 1) ? 'one' : 'other';
1189
+ },
1190
+
1191
+ sc: function(n, ord
1192
+ ) {
1193
+ var s = String(n).split('.'), v0 = !s[1];
1194
+ if (ord) return ((n == 11 || n == 8 || n == 80
1195
+ || n == 800)) ? 'many' : 'other';
1196
+ return (n == 1 && v0) ? 'one' : 'other';
1197
+ },
723
1198
 
724
- sah: _cp[0],
1199
+ scn: function(n, ord
1200
+ ) {
1201
+ var s = String(n).split('.'), v0 = !s[1];
1202
+ if (ord) return ((n == 11 || n == 8 || n == 80
1203
+ || n == 800)) ? 'many' : 'other';
1204
+ return (n == 1 && v0) ? 'one' : 'other';
1205
+ },
725
1206
 
726
- saq: _cp[1],
1207
+ sd: function(n, ord
1208
+ ) {
1209
+ if (ord) return 'other';
1210
+ return (n == 1) ? 'one' : 'other';
1211
+ },
727
1212
 
728
- sdh: _cp[1],
1213
+ sdh: function(n, ord
1214
+ ) {
1215
+ if (ord) return 'other';
1216
+ return (n == 1) ? 'one' : 'other';
1217
+ },
729
1218
 
730
- se: function(n, ord) {
1219
+ se: function(n, ord
1220
+ ) {
731
1221
  if (ord) return 'other';
732
1222
  return (n == 1) ? 'one'
733
1223
  : (n == 2) ? 'two'
734
1224
  : 'other';
735
1225
  },
736
1226
 
737
- seh: _cp[1],
1227
+ seh: function(n, ord
1228
+ ) {
1229
+ if (ord) return 'other';
1230
+ return (n == 1) ? 'one' : 'other';
1231
+ },
738
1232
 
739
- ses: _cp[0],
1233
+ ses: function(n, ord
1234
+ ) {
1235
+ if (ord) return 'other';
1236
+ return 'other';
1237
+ },
740
1238
 
741
- sg: _cp[0],
1239
+ sg: function(n, ord
1240
+ ) {
1241
+ if (ord) return 'other';
1242
+ return 'other';
1243
+ },
742
1244
 
743
- sh: function(n, ord) {
1245
+ sh: function(n, ord
1246
+ ) {
744
1247
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
745
1248
  i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
746
1249
  if (ord) return 'other';
@@ -752,7 +1255,8 @@ sh: function(n, ord) {
752
1255
  : 'other';
753
1256
  },
754
1257
 
755
- shi: function(n, ord) {
1258
+ shi: function(n, ord
1259
+ ) {
756
1260
  var s = String(n).split('.'), t0 = Number(s[0]) == n;
757
1261
  if (ord) return 'other';
758
1262
  return (n >= 0 && n <= 1) ? 'one'
@@ -760,14 +1264,16 @@ shi: function(n, ord) {
760
1264
  : 'other';
761
1265
  },
762
1266
 
763
- si: function(n, ord) {
1267
+ si: function(n, ord
1268
+ ) {
764
1269
  var s = String(n).split('.'), i = s[0], f = s[1] || '';
765
1270
  if (ord) return 'other';
766
1271
  return ((n == 0 || n == 1)
767
1272
  || i == 0 && f == 1) ? 'one' : 'other';
768
1273
  },
769
1274
 
770
- sk: function(n, ord) {
1275
+ sk: function(n, ord
1276
+ ) {
771
1277
  var s = String(n).split('.'), i = s[0], v0 = !s[1];
772
1278
  if (ord) return 'other';
773
1279
  return (n == 1 && v0) ? 'one'
@@ -776,7 +1282,8 @@ sk: function(n, ord) {
776
1282
  : 'other';
777
1283
  },
778
1284
 
779
- sl: function(n, ord) {
1285
+ sl: function(n, ord
1286
+ ) {
780
1287
  var s = String(n).split('.'), i = s[0], v0 = !s[1], i100 = i.slice(-2);
781
1288
  if (ord) return 'other';
782
1289
  return (v0 && i100 == 1) ? 'one'
@@ -786,46 +1293,60 @@ sl: function(n, ord) {
786
1293
  : 'other';
787
1294
  },
788
1295
 
789
- sma: function(n, ord) {
1296
+ sma: function(n, ord
1297
+ ) {
790
1298
  if (ord) return 'other';
791
1299
  return (n == 1) ? 'one'
792
1300
  : (n == 2) ? 'two'
793
1301
  : 'other';
794
1302
  },
795
1303
 
796
- smi: function(n, ord) {
1304
+ smi: function(n, ord
1305
+ ) {
797
1306
  if (ord) return 'other';
798
1307
  return (n == 1) ? 'one'
799
1308
  : (n == 2) ? 'two'
800
1309
  : 'other';
801
1310
  },
802
1311
 
803
- smj: function(n, ord) {
1312
+ smj: function(n, ord
1313
+ ) {
804
1314
  if (ord) return 'other';
805
1315
  return (n == 1) ? 'one'
806
1316
  : (n == 2) ? 'two'
807
1317
  : 'other';
808
1318
  },
809
1319
 
810
- smn: function(n, ord) {
1320
+ smn: function(n, ord
1321
+ ) {
811
1322
  if (ord) return 'other';
812
1323
  return (n == 1) ? 'one'
813
1324
  : (n == 2) ? 'two'
814
1325
  : 'other';
815
1326
  },
816
1327
 
817
- sms: function(n, ord) {
1328
+ sms: function(n, ord
1329
+ ) {
818
1330
  if (ord) return 'other';
819
1331
  return (n == 1) ? 'one'
820
1332
  : (n == 2) ? 'two'
821
1333
  : 'other';
822
1334
  },
823
1335
 
824
- sn: _cp[1],
1336
+ sn: function(n, ord
1337
+ ) {
1338
+ if (ord) return 'other';
1339
+ return (n == 1) ? 'one' : 'other';
1340
+ },
825
1341
 
826
- so: _cp[1],
1342
+ so: function(n, ord
1343
+ ) {
1344
+ if (ord) return 'other';
1345
+ return (n == 1) ? 'one' : 'other';
1346
+ },
827
1347
 
828
- sq: function(n, ord) {
1348
+ sq: function(n, ord
1349
+ ) {
829
1350
  var s = String(n).split('.'), t0 = Number(s[0]) == n,
830
1351
  n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
831
1352
  if (ord) return (n == 1) ? 'one'
@@ -834,7 +1355,8 @@ sq: function(n, ord) {
834
1355
  return (n == 1) ? 'one' : 'other';
835
1356
  },
836
1357
 
837
- sr: function(n, ord) {
1358
+ sr: function(n, ord
1359
+ ) {
838
1360
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
839
1361
  i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
840
1362
  if (ord) return 'other';
@@ -846,13 +1368,26 @@ sr: function(n, ord) {
846
1368
  : 'other';
847
1369
  },
848
1370
 
849
- ss: _cp[1],
1371
+ ss: function(n, ord
1372
+ ) {
1373
+ if (ord) return 'other';
1374
+ return (n == 1) ? 'one' : 'other';
1375
+ },
850
1376
 
851
- ssy: _cp[1],
1377
+ ssy: function(n, ord
1378
+ ) {
1379
+ if (ord) return 'other';
1380
+ return (n == 1) ? 'one' : 'other';
1381
+ },
852
1382
 
853
- st: _cp[1],
1383
+ st: function(n, ord
1384
+ ) {
1385
+ if (ord) return 'other';
1386
+ return (n == 1) ? 'one' : 'other';
1387
+ },
854
1388
 
855
- sv: function(n, ord) {
1389
+ sv: function(n, ord
1390
+ ) {
856
1391
  var s = String(n).split('.'), v0 = !s[1], t0 = Number(s[0]) == n,
857
1392
  n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
858
1393
  if (ord) return ((n10 == 1
@@ -860,25 +1395,67 @@ sv: function(n, ord) {
860
1395
  return (n == 1 && v0) ? 'one' : 'other';
861
1396
  },
862
1397
 
863
- sw: _cp[3],
1398
+ sw: function(n, ord
1399
+ ) {
1400
+ var s = String(n).split('.'), v0 = !s[1];
1401
+ if (ord) return 'other';
1402
+ return (n == 1 && v0) ? 'one' : 'other';
1403
+ },
864
1404
 
865
- syr: _cp[1],
1405
+ syr: function(n, ord
1406
+ ) {
1407
+ if (ord) return 'other';
1408
+ return (n == 1) ? 'one' : 'other';
1409
+ },
866
1410
 
867
- ta: _cp[1],
1411
+ ta: function(n, ord
1412
+ ) {
1413
+ if (ord) return 'other';
1414
+ return (n == 1) ? 'one' : 'other';
1415
+ },
868
1416
 
869
- te: _cp[1],
1417
+ te: function(n, ord
1418
+ ) {
1419
+ if (ord) return 'other';
1420
+ return (n == 1) ? 'one' : 'other';
1421
+ },
870
1422
 
871
- teo: _cp[1],
1423
+ teo: function(n, ord
1424
+ ) {
1425
+ if (ord) return 'other';
1426
+ return (n == 1) ? 'one' : 'other';
1427
+ },
872
1428
 
873
- th: _cp[0],
1429
+ th: function(n, ord
1430
+ ) {
1431
+ if (ord) return 'other';
1432
+ return 'other';
1433
+ },
874
1434
 
875
- ti: _cp[2],
1435
+ ti: function(n, ord
1436
+ ) {
1437
+ if (ord) return 'other';
1438
+ return ((n == 0
1439
+ || n == 1)) ? 'one' : 'other';
1440
+ },
876
1441
 
877
- tig: _cp[1],
1442
+ tig: function(n, ord
1443
+ ) {
1444
+ if (ord) return 'other';
1445
+ return (n == 1) ? 'one' : 'other';
1446
+ },
878
1447
 
879
- tk: _cp[1],
1448
+ tk: function(n, ord
1449
+ ) {
1450
+ var s = String(n).split('.'), t0 = Number(s[0]) == n,
1451
+ n10 = t0 && s[0].slice(-1);
1452
+ if (ord) return ((n10 == 6 || n10 == 9)
1453
+ || n == 10) ? 'few' : 'other';
1454
+ return (n == 1) ? 'one' : 'other';
1455
+ },
880
1456
 
881
- tl: function(n, ord) {
1457
+ tl: function(n, ord
1458
+ ) {
882
1459
  var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
883
1460
  i10 = i.slice(-1), f10 = f.slice(-1);
884
1461
  if (ord) return (n == 1) ? 'one' : 'other';
@@ -887,24 +1464,46 @@ tl: function(n, ord) {
887
1464
  || !v0 && f10 != 4 && f10 != 6 && f10 != 9) ? 'one' : 'other';
888
1465
  },
889
1466
 
890
- tn: _cp[1],
1467
+ tn: function(n, ord
1468
+ ) {
1469
+ if (ord) return 'other';
1470
+ return (n == 1) ? 'one' : 'other';
1471
+ },
891
1472
 
892
- to: _cp[0],
1473
+ to: function(n, ord
1474
+ ) {
1475
+ if (ord) return 'other';
1476
+ return 'other';
1477
+ },
893
1478
 
894
- tr: _cp[1],
1479
+ tr: function(n, ord
1480
+ ) {
1481
+ if (ord) return 'other';
1482
+ return (n == 1) ? 'one' : 'other';
1483
+ },
895
1484
 
896
- ts: _cp[1],
1485
+ ts: function(n, ord
1486
+ ) {
1487
+ if (ord) return 'other';
1488
+ return (n == 1) ? 'one' : 'other';
1489
+ },
897
1490
 
898
- tzm: function(n, ord) {
1491
+ tzm: function(n, ord
1492
+ ) {
899
1493
  var s = String(n).split('.'), t0 = Number(s[0]) == n;
900
1494
  if (ord) return 'other';
901
1495
  return ((n == 0 || n == 1)
902
1496
  || (t0 && n >= 11 && n <= 99)) ? 'one' : 'other';
903
1497
  },
904
1498
 
905
- ug: _cp[1],
1499
+ ug: function(n, ord
1500
+ ) {
1501
+ if (ord) return 'other';
1502
+ return (n == 1) ? 'one' : 'other';
1503
+ },
906
1504
 
907
- uk: function(n, ord) {
1505
+ uk: function(n, ord
1506
+ ) {
908
1507
  var s = String(n).split('.'), i = s[0], v0 = !s[1], t0 = Number(s[0]) == n,
909
1508
  n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2), i10 = i.slice(-1),
910
1509
  i100 = i.slice(-2);
@@ -917,40 +1516,101 @@ uk: function(n, ord) {
917
1516
  : 'other';
918
1517
  },
919
1518
 
920
- ur: _cp[3],
1519
+ ur: function(n, ord
1520
+ ) {
1521
+ var s = String(n).split('.'), v0 = !s[1];
1522
+ if (ord) return 'other';
1523
+ return (n == 1 && v0) ? 'one' : 'other';
1524
+ },
921
1525
 
922
- uz: _cp[1],
1526
+ uz: function(n, ord
1527
+ ) {
1528
+ if (ord) return 'other';
1529
+ return (n == 1) ? 'one' : 'other';
1530
+ },
923
1531
 
924
- ve: _cp[1],
1532
+ ve: function(n, ord
1533
+ ) {
1534
+ if (ord) return 'other';
1535
+ return (n == 1) ? 'one' : 'other';
1536
+ },
925
1537
 
926
- vi: function(n, ord) {
1538
+ vi: function(n, ord
1539
+ ) {
927
1540
  if (ord) return (n == 1) ? 'one' : 'other';
928
1541
  return 'other';
929
1542
  },
930
1543
 
931
- vo: _cp[1],
1544
+ vo: function(n, ord
1545
+ ) {
1546
+ if (ord) return 'other';
1547
+ return (n == 1) ? 'one' : 'other';
1548
+ },
932
1549
 
933
- vun: _cp[1],
1550
+ vun: function(n, ord
1551
+ ) {
1552
+ if (ord) return 'other';
1553
+ return (n == 1) ? 'one' : 'other';
1554
+ },
934
1555
 
935
- wa: _cp[2],
1556
+ wa: function(n, ord
1557
+ ) {
1558
+ if (ord) return 'other';
1559
+ return ((n == 0
1560
+ || n == 1)) ? 'one' : 'other';
1561
+ },
936
1562
 
937
- wae: _cp[1],
1563
+ wae: function(n, ord
1564
+ ) {
1565
+ if (ord) return 'other';
1566
+ return (n == 1) ? 'one' : 'other';
1567
+ },
938
1568
 
939
- wo: _cp[0],
1569
+ wo: function(n, ord
1570
+ ) {
1571
+ if (ord) return 'other';
1572
+ return 'other';
1573
+ },
940
1574
 
941
- xh: _cp[1],
1575
+ xh: function(n, ord
1576
+ ) {
1577
+ if (ord) return 'other';
1578
+ return (n == 1) ? 'one' : 'other';
1579
+ },
942
1580
 
943
- xog: _cp[1],
1581
+ xog: function(n, ord
1582
+ ) {
1583
+ if (ord) return 'other';
1584
+ return (n == 1) ? 'one' : 'other';
1585
+ },
944
1586
 
945
- yi: _cp[3],
1587
+ yi: function(n, ord
1588
+ ) {
1589
+ var s = String(n).split('.'), v0 = !s[1];
1590
+ if (ord) return 'other';
1591
+ return (n == 1 && v0) ? 'one' : 'other';
1592
+ },
946
1593
 
947
- yo: _cp[0],
1594
+ yo: function(n, ord
1595
+ ) {
1596
+ if (ord) return 'other';
1597
+ return 'other';
1598
+ },
948
1599
 
949
- yue: _cp[0],
1600
+ yue: function(n, ord
1601
+ ) {
1602
+ if (ord) return 'other';
1603
+ return 'other';
1604
+ },
950
1605
 
951
- zh: _cp[0],
1606
+ zh: function(n, ord
1607
+ ) {
1608
+ if (ord) return 'other';
1609
+ return 'other';
1610
+ },
952
1611
 
953
- zu: function(n, ord) {
1612
+ zu: function(n, ord
1613
+ ) {
954
1614
  if (ord) return 'other';
955
1615
  return (n >= 0 && n <= 1) ? 'one' : 'other';
956
1616
  }