make-plural
Version:
Translates Unicode CLDR pluralization rules to executable JavaScript
949 lines (749 loc) • 21.6 kB
JavaScript
var _cp = [
function(n, ord) {
if (ord) return 'other';
return 'other';
},
function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one' : 'other';
},
function(n, ord) {
if (ord) return 'other';
return ((n == 0
|| n == 1)) ? 'one' : 'other';
},
function(n, ord) {
var s = String(n).split('.'), v0 = !s[1];
if (ord) return 'other';
return (n == 1 && v0) ? 'one' : 'other';
}
];
(function (root, plurals) {
if (typeof define === 'function' && define.amd) {
define(plurals);
} else if (typeof exports === 'object') {
module.exports = plurals;
} else {
root.plurals = plurals;
}
}(this, {
af: _cp[1],
ak: _cp[2],
am: function(n, ord) {
if (ord) return 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
},
ar: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return 'other';
return (n == 0) ? 'zero'
: (n == 1) ? 'one'
: (n == 2) ? 'two'
: ((n100 >= 3 && n100 <= 10)) ? 'few'
: ((n100 >= 11 && n100 <= 99)) ? 'many'
: 'other';
},
as: function(n, ord) {
if (ord) return ((n == 1 || n == 5 || n == 7 || n == 8 || n == 9
|| n == 10)) ? 'one'
: ((n == 2
|| n == 3)) ? 'two'
: (n == 4) ? 'few'
: (n == 6) ? 'many'
: 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
},
asa: _cp[1],
ast: _cp[3],
az: function(n, ord) {
var s = String(n).split('.'), i = s[0], i10 = i.slice(-1),
i100 = i.slice(-2), i1000 = i.slice(-3);
if (ord) return ((i10 == 1 || i10 == 2 || i10 == 5 || i10 == 7 || i10 == 8)
|| (i100 == 20 || i100 == 50 || i100 == 70
|| i100 == 80)) ? 'one'
: ((i10 == 3 || i10 == 4) || (i1000 == 100 || i1000 == 200
|| i1000 == 300 || i1000 == 400 || i1000 == 500 || i1000 == 600 || i1000 == 700
|| i1000 == 800
|| i1000 == 900)) ? 'few'
: (i == 0 || i10 == 6 || (i100 == 40 || i100 == 60
|| i100 == 90)) ? 'many'
: 'other';
return (n == 1) ? 'one' : 'other';
},
be: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
if (ord) return 'other';
return (n10 == 1 && n100 != 11) ? 'one'
: ((n10 >= 2 && n10 <= 4) && (n100 < 12
|| n100 > 14)) ? 'few'
: (t0 && n10 == 0 || (n10 >= 5 && n10 <= 9)
|| (n100 >= 11 && n100 <= 14)) ? 'many'
: 'other';
},
bem: _cp[1],
bez: _cp[1],
bg: _cp[1],
bh: _cp[2],
bm: _cp[0],
bn: function(n, ord) {
if (ord) return ((n == 1 || n == 5 || n == 7 || n == 8 || n == 9
|| n == 10)) ? 'one'
: ((n == 2
|| n == 3)) ? 'two'
: (n == 4) ? 'few'
: (n == 6) ? 'many'
: 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
},
bo: _cp[0],
br: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2),
n1000000 = t0 && s[0].slice(-6);
if (ord) return 'other';
return (n10 == 1 && n100 != 11 && n100 != 71 && n100 != 91) ? 'one'
: (n10 == 2 && n100 != 12 && n100 != 72 && n100 != 92) ? 'two'
: (((n10 == 3 || n10 == 4) || n10 == 9) && (n100 < 10
|| n100 > 19) && (n100 < 70 || n100 > 79) && (n100 < 90
|| n100 > 99)) ? 'few'
: (n != 0 && t0 && n1000000 == 0) ? 'many'
: 'other';
},
brx: _cp[1],
bs: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
if (ord) return 'other';
return (v0 && i10 == 1 && i100 != 11
|| f10 == 1 && f100 != 11) ? 'one'
: (v0 && (i10 >= 2 && i10 <= 4) && (i100 < 12 || i100 > 14)
|| (f10 >= 2 && f10 <= 4) && (f100 < 12
|| f100 > 14)) ? 'few'
: 'other';
},
ca: function(n, ord) {
var s = String(n).split('.'), v0 = !s[1];
if (ord) return ((n == 1
|| n == 3)) ? 'one'
: (n == 2) ? 'two'
: (n == 4) ? 'few'
: 'other';
return (n == 1 && v0) ? 'one' : 'other';
},
ce: _cp[1],
cgg: _cp[1],
chr: _cp[1],
ckb: _cp[1],
cs: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1];
if (ord) return 'other';
return (n == 1 && v0) ? 'one'
: ((i >= 2 && i <= 4) && v0) ? 'few'
: (!v0) ? 'many'
: 'other';
},
cy: function(n, ord) {
if (ord) return ((n == 0 || n == 7 || n == 8
|| n == 9)) ? 'zero'
: (n == 1) ? 'one'
: (n == 2) ? 'two'
: ((n == 3
|| n == 4)) ? 'few'
: ((n == 5
|| n == 6)) ? 'many'
: 'other';
return (n == 0) ? 'zero'
: (n == 1) ? 'one'
: (n == 2) ? 'two'
: (n == 3) ? 'few'
: (n == 6) ? 'many'
: 'other';
},
da: function(n, ord) {
var s = String(n).split('.'), i = s[0], t0 = Number(s[0]) == n;
if (ord) return 'other';
return (n == 1 || !t0 && (i == 0
|| i == 1)) ? 'one' : 'other';
},
de: _cp[3],
dsb: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i100 = i.slice(-2), f100 = f.slice(-2);
if (ord) return 'other';
return (v0 && i100 == 1
|| f100 == 1) ? 'one'
: (v0 && i100 == 2
|| f100 == 2) ? 'two'
: (v0 && (i100 == 3 || i100 == 4) || (f100 == 3
|| f100 == 4)) ? 'few'
: 'other';
},
dv: _cp[1],
dz: _cp[0],
ee: _cp[1],
el: _cp[1],
en: function(n, ord) {
var s = String(n).split('.'), v0 = !s[1], t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
if (ord) return (n10 == 1 && n100 != 11) ? 'one'
: (n10 == 2 && n100 != 12) ? 'two'
: (n10 == 3 && n100 != 13) ? 'few'
: 'other';
return (n == 1 && v0) ? 'one' : 'other';
},
eo: _cp[1],
es: _cp[1],
et: _cp[3],
eu: _cp[1],
fa: function(n, ord) {
if (ord) return 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
},
ff: function(n, ord) {
if (ord) return 'other';
return (n >= 0 && n < 2) ? 'one' : 'other';
},
fi: _cp[3],
fil: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i10 = i.slice(-1), f10 = f.slice(-1);
if (ord) return (n == 1) ? 'one' : 'other';
return (v0 && (i == 1 || i == 2 || i == 3)
|| v0 && i10 != 4 && i10 != 6 && i10 != 9
|| !v0 && f10 != 4 && f10 != 6 && f10 != 9) ? 'one' : 'other';
},
fo: _cp[1],
fr: function(n, ord) {
if (ord) return (n == 1) ? 'one' : 'other';
return (n >= 0 && n < 2) ? 'one' : 'other';
},
fur: _cp[1],
fy: _cp[3],
ga: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n;
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: ((t0 && n >= 3 && n <= 6)) ? 'few'
: ((t0 && n >= 7 && n <= 10)) ? 'many'
: 'other';
},
gd: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n;
if (ord) return 'other';
return ((n == 1
|| n == 11)) ? 'one'
: ((n == 2
|| n == 12)) ? 'two'
: (((t0 && n >= 3 && n <= 10)
|| (t0 && n >= 13 && n <= 19))) ? 'few'
: 'other';
},
gl: _cp[3],
gsw: _cp[1],
gu: function(n, ord) {
if (ord) return (n == 1) ? 'one'
: ((n == 2
|| n == 3)) ? 'two'
: (n == 4) ? 'few'
: (n == 6) ? 'many'
: 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
},
guw: _cp[2],
gv: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1], i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return 'other';
return (v0 && i10 == 1) ? 'one'
: (v0 && i10 == 2) ? 'two'
: (v0 && (i100 == 0 || i100 == 20 || i100 == 40 || i100 == 60
|| i100 == 80)) ? 'few'
: (!v0) ? 'many'
: 'other';
},
ha: _cp[1],
haw: _cp[1],
he: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1], t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1);
if (ord) return 'other';
return (n == 1 && v0) ? 'one'
: (i == 2 && v0) ? 'two'
: (v0 && (n < 0
|| n > 10) && t0 && n10 == 0) ? 'many'
: 'other';
},
hi: function(n, ord) {
if (ord) return (n == 1) ? 'one'
: ((n == 2
|| n == 3)) ? 'two'
: (n == 4) ? 'few'
: (n == 6) ? 'many'
: 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
},
hr: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
if (ord) return 'other';
return (v0 && i10 == 1 && i100 != 11
|| f10 == 1 && f100 != 11) ? 'one'
: (v0 && (i10 >= 2 && i10 <= 4) && (i100 < 12 || i100 > 14)
|| (f10 >= 2 && f10 <= 4) && (f100 < 12
|| f100 > 14)) ? 'few'
: 'other';
},
hsb: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i100 = i.slice(-2), f100 = f.slice(-2);
if (ord) return 'other';
return (v0 && i100 == 1
|| f100 == 1) ? 'one'
: (v0 && i100 == 2
|| f100 == 2) ? 'two'
: (v0 && (i100 == 3 || i100 == 4) || (f100 == 3
|| f100 == 4)) ? 'few'
: 'other';
},
hu: function(n, ord) {
if (ord) return ((n == 1
|| n == 5)) ? 'one' : 'other';
return (n == 1) ? 'one' : 'other';
},
hy: function(n, ord) {
if (ord) return (n == 1) ? 'one' : 'other';
return (n >= 0 && n < 2) ? 'one' : 'other';
},
id: _cp[0],
ig: _cp[0],
ii: _cp[0],
in: _cp[0],
is: function(n, ord) {
var s = String(n).split('.'), i = s[0], t0 = Number(s[0]) == n,
i10 = i.slice(-1), i100 = i.slice(-2);
if (ord) return 'other';
return (t0 && i10 == 1 && i100 != 11
|| !t0) ? 'one' : 'other';
},
it: function(n, ord) {
var s = String(n).split('.'), v0 = !s[1];
if (ord) return ((n == 11 || n == 8 || n == 80
|| n == 800)) ? 'many' : 'other';
return (n == 1 && v0) ? 'one' : 'other';
},
iu: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
iw: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1], t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1);
if (ord) return 'other';
return (n == 1 && v0) ? 'one'
: (i == 2 && v0) ? 'two'
: (v0 && (n < 0
|| n > 10) && t0 && n10 == 0) ? 'many'
: 'other';
},
ja: _cp[0],
jbo: _cp[0],
jgo: _cp[1],
ji: _cp[3],
jmc: _cp[1],
jv: _cp[0],
jw: _cp[0],
ka: function(n, ord) {
var s = String(n).split('.'), i = s[0], i100 = i.slice(-2);
if (ord) return (i == 1) ? 'one'
: (i == 0 || ((i100 >= 2 && i100 <= 20) || i100 == 40 || i100 == 60
|| i100 == 80)) ? 'many'
: 'other';
return (n == 1) ? 'one' : 'other';
},
kab: function(n, ord) {
if (ord) return 'other';
return (n >= 0 && n < 2) ? 'one' : 'other';
},
kaj: _cp[1],
kcg: _cp[1],
kde: _cp[0],
kea: _cp[0],
kk: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1);
if (ord) return (n10 == 6 || n10 == 9
|| t0 && n10 == 0 && n != 0) ? 'many' : 'other';
return (n == 1) ? 'one' : 'other';
},
kkj: _cp[1],
kl: _cp[1],
km: _cp[0],
kn: function(n, ord) {
if (ord) return 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
},
ko: _cp[0],
ks: _cp[1],
ksb: _cp[1],
ksh: function(n, ord) {
if (ord) return 'other';
return (n == 0) ? 'zero'
: (n == 1) ? 'one'
: 'other';
},
ku: _cp[1],
kw: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
ky: _cp[1],
lag: function(n, ord) {
var s = String(n).split('.'), i = s[0];
if (ord) return 'other';
return (n == 0) ? 'zero'
: ((i == 0
|| i == 1) && n != 0) ? 'one'
: 'other';
},
lb: _cp[1],
lg: _cp[1],
lkt: _cp[0],
ln: _cp[2],
lo: function(n, ord) {
if (ord) return (n == 1) ? 'one' : 'other';
return 'other';
},
lt: function(n, ord) {
var s = String(n).split('.'), f = s[1] || '', t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
if (ord) return 'other';
return (n10 == 1 && (n100 < 11
|| n100 > 19)) ? 'one'
: ((n10 >= 2 && n10 <= 9) && (n100 < 11
|| n100 > 19)) ? 'few'
: (f != 0) ? 'many'
: 'other';
},
lv: function(n, ord) {
var s = String(n).split('.'), f = s[1] || '', v = f.length,
t0 = Number(s[0]) == n, n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2), f100 = f.slice(-2), f10 = f.slice(-1);
if (ord) return 'other';
return (t0 && n10 == 0 || (n100 >= 11 && n100 <= 19)
|| v == 2 && (f100 >= 11 && f100 <= 19)) ? 'zero'
: (n10 == 1 && n100 != 11 || v == 2 && f10 == 1 && f100 != 11
|| v != 2 && f10 == 1) ? 'one'
: 'other';
},
mas: _cp[1],
mg: _cp[2],
mgo: _cp[1],
mk: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1);
if (ord) return (i10 == 1 && i100 != 11) ? 'one'
: (i10 == 2 && i100 != 12) ? 'two'
: ((i10 == 7
|| i10 == 8) && i100 != 17 && i100 != 18) ? 'many'
: 'other';
return (v0 && i10 == 1
|| f10 == 1) ? 'one' : 'other';
},
ml: _cp[1],
mn: _cp[1],
mo: function(n, ord) {
var s = String(n).split('.'), v0 = !s[1], t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return (n == 1) ? 'one' : 'other';
return (n == 1 && v0) ? 'one'
: (!v0 || n == 0
|| n != 1 && (n100 >= 1 && n100 <= 19)) ? 'few'
: 'other';
},
mr: function(n, ord) {
if (ord) return (n == 1) ? 'one'
: ((n == 2
|| n == 3)) ? 'two'
: (n == 4) ? 'few'
: 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
},
ms: function(n, ord) {
if (ord) return (n == 1) ? 'one' : 'other';
return 'other';
},
mt: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 0
|| (n100 >= 2 && n100 <= 10)) ? 'few'
: ((n100 >= 11 && n100 <= 19)) ? 'many'
: 'other';
},
my: _cp[0],
nah: _cp[1],
naq: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
nb: _cp[1],
nd: _cp[1],
ne: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n;
if (ord) return ((t0 && n >= 1 && n <= 4)) ? 'one' : 'other';
return (n == 1) ? 'one' : 'other';
},
nl: _cp[3],
nn: _cp[1],
nnh: _cp[1],
no: _cp[1],
nqo: _cp[0],
nr: _cp[1],
nso: _cp[2],
ny: _cp[1],
nyn: _cp[1],
om: _cp[1],
or: _cp[1],
os: _cp[1],
pa: _cp[2],
pap: _cp[1],
pl: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1], i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return 'other';
return (n == 1 && v0) ? 'one'
: (v0 && (i10 >= 2 && i10 <= 4) && (i100 < 12
|| i100 > 14)) ? 'few'
: (v0 && i != 1 && (i10 == 0 || i10 == 1)
|| v0 && (i10 >= 5 && i10 <= 9)
|| v0 && (i100 >= 12 && i100 <= 14)) ? 'many'
: 'other';
},
prg: function(n, ord) {
var s = String(n).split('.'), f = s[1] || '', v = f.length,
t0 = Number(s[0]) == n, n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2), f100 = f.slice(-2), f10 = f.slice(-1);
if (ord) return 'other';
return (t0 && n10 == 0 || (n100 >= 11 && n100 <= 19)
|| v == 2 && (f100 >= 11 && f100 <= 19)) ? 'zero'
: (n10 == 1 && n100 != 11 || v == 2 && f10 == 1 && f100 != 11
|| v != 2 && f10 == 1) ? 'one'
: 'other';
},
ps: _cp[1],
pt: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n;
if (ord) return 'other';
return ((t0 && n >= 0 && n <= 2) && n != 2) ? 'one' : 'other';
},
"pt-PT": _cp[3],
rm: _cp[1],
ro: function(n, ord) {
var s = String(n).split('.'), v0 = !s[1], t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return (n == 1) ? 'one' : 'other';
return (n == 1 && v0) ? 'one'
: (!v0 || n == 0
|| n != 1 && (n100 >= 1 && n100 <= 19)) ? 'few'
: 'other';
},
rof: _cp[1],
root: _cp[0],
ru: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1], i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return 'other';
return (v0 && i10 == 1 && i100 != 11) ? 'one'
: (v0 && (i10 >= 2 && i10 <= 4) && (i100 < 12
|| i100 > 14)) ? 'few'
: (v0 && i10 == 0 || v0 && (i10 >= 5 && i10 <= 9)
|| v0 && (i100 >= 11 && i100 <= 14)) ? 'many'
: 'other';
},
rwk: _cp[1],
sah: _cp[0],
saq: _cp[1],
se: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
seh: _cp[1],
ses: _cp[0],
sg: _cp[0],
sh: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
if (ord) return 'other';
return (v0 && i10 == 1 && i100 != 11
|| f10 == 1 && f100 != 11) ? 'one'
: (v0 && (i10 >= 2 && i10 <= 4) && (i100 < 12 || i100 > 14)
|| (f10 >= 2 && f10 <= 4) && (f100 < 12
|| f100 > 14)) ? 'few'
: 'other';
},
shi: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n;
if (ord) return 'other';
return (n >= 0 && n <= 1) ? 'one'
: ((t0 && n >= 2 && n <= 10)) ? 'few'
: 'other';
},
si: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '';
if (ord) return 'other';
return ((n == 0 || n == 1)
|| i == 0 && f == 1) ? 'one' : 'other';
},
sk: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1];
if (ord) return 'other';
return (n == 1 && v0) ? 'one'
: ((i >= 2 && i <= 4) && v0) ? 'few'
: (!v0) ? 'many'
: 'other';
},
sl: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1], i100 = i.slice(-2);
if (ord) return 'other';
return (v0 && i100 == 1) ? 'one'
: (v0 && i100 == 2) ? 'two'
: (v0 && (i100 == 3 || i100 == 4)
|| !v0) ? 'few'
: 'other';
},
sma: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
smi: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
smj: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
smn: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
sms: function(n, ord) {
if (ord) return 'other';
return (n == 1) ? 'one'
: (n == 2) ? 'two'
: 'other';
},
sn: _cp[1],
so: _cp[1],
sq: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
if (ord) return (n == 1) ? 'one'
: (n10 == 4 && n100 != 14) ? 'many'
: 'other';
return (n == 1) ? 'one' : 'other';
},
sr: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i10 = i.slice(-1), i100 = i.slice(-2), f10 = f.slice(-1), f100 = f.slice(-2);
if (ord) return 'other';
return (v0 && i10 == 1 && i100 != 11
|| f10 == 1 && f100 != 11) ? 'one'
: (v0 && (i10 >= 2 && i10 <= 4) && (i100 < 12 || i100 > 14)
|| (f10 >= 2 && f10 <= 4) && (f100 < 12
|| f100 > 14)) ? 'few'
: 'other';
},
ss: _cp[1],
ssy: _cp[1],
st: _cp[1],
sv: function(n, ord) {
var s = String(n).split('.'), v0 = !s[1], t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2);
if (ord) return ((n10 == 1
|| n10 == 2) && n100 != 11 && n100 != 12) ? 'one' : 'other';
return (n == 1 && v0) ? 'one' : 'other';
},
sw: _cp[3],
syr: _cp[1],
ta: _cp[1],
te: _cp[1],
teo: _cp[1],
th: _cp[0],
ti: _cp[2],
tig: _cp[1],
tk: _cp[1],
tl: function(n, ord) {
var s = String(n).split('.'), i = s[0], f = s[1] || '', v0 = !s[1],
i10 = i.slice(-1), f10 = f.slice(-1);
if (ord) return (n == 1) ? 'one' : 'other';
return (v0 && (i == 1 || i == 2 || i == 3)
|| v0 && i10 != 4 && i10 != 6 && i10 != 9
|| !v0 && f10 != 4 && f10 != 6 && f10 != 9) ? 'one' : 'other';
},
tn: _cp[1],
to: _cp[0],
tr: _cp[1],
ts: _cp[1],
tzm: function(n, ord) {
var s = String(n).split('.'), t0 = Number(s[0]) == n;
if (ord) return 'other';
return ((n == 0 || n == 1)
|| (t0 && n >= 11 && n <= 99)) ? 'one' : 'other';
},
ug: _cp[1],
uk: function(n, ord) {
var s = String(n).split('.'), i = s[0], v0 = !s[1], t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1), n100 = t0 && s[0].slice(-2), i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return (n10 == 3 && n100 != 13) ? 'few' : 'other';
return (v0 && i10 == 1 && i100 != 11) ? 'one'
: (v0 && (i10 >= 2 && i10 <= 4) && (i100 < 12
|| i100 > 14)) ? 'few'
: (v0 && i10 == 0 || v0 && (i10 >= 5 && i10 <= 9)
|| v0 && (i100 >= 11 && i100 <= 14)) ? 'many'
: 'other';
},
ur: _cp[3],
uz: _cp[1],
ve: _cp[1],
vi: function(n, ord) {
if (ord) return (n == 1) ? 'one' : 'other';
return 'other';
},
vo: _cp[1],
vun: _cp[1],
wa: _cp[2],
wae: _cp[1],
wo: _cp[0],
xh: _cp[1],
xog: _cp[1],
yi: _cp[3],
yo: _cp[0],
zh: _cp[0],
zu: function(n, ord) {
if (ord) return 'other';
return (n >= 0 && n <= 1) ? 'one' : 'other';
}
}));