1// © 2016 and later: Unicode, Inc. and others. 2// License & terms of use: http://www.unicode.org/copyright.html#License 3plurals:table(nofallback){ 4 locales{ 5 af{"set8"} 6 ak{"set5"} 7 am{"set1"} 8 ar{"set34"} 9 ars{"set34"} 10 as{"set1"} 11 asa{"set8"} 12 ast{"set3"} 13 az{"set8"} 14 be{"set27"} 15 bem{"set8"} 16 bez{"set8"} 17 bg{"set8"} 18 bh{"set5"} 19 bm{"set0"} 20 bn{"set1"} 21 bo{"set0"} 22 br{"set31"} 23 brx{"set8"} 24 bs{"set20"} 25 ca{"set3"} 26 ce{"set8"} 27 cgg{"set8"} 28 chr{"set8"} 29 ckb{"set8"} 30 cs{"set25"} 31 cy{"set35"} 32 da{"set10"} 33 de{"set3"} 34 dsb{"set23"} 35 dv{"set8"} 36 dz{"set0"} 37 ee{"set8"} 38 el{"set8"} 39 en{"set3"} 40 eo{"set8"} 41 es{"set8"} 42 et{"set3"} 43 eu{"set8"} 44 fa{"set1"} 45 ff{"set2"} 46 fi{"set3"} 47 fil{"set13"} 48 fo{"set8"} 49 fr{"set2"} 50 fur{"set8"} 51 fy{"set3"} 52 ga{"set32"} 53 gd{"set21"} 54 gl{"set3"} 55 gsw{"set8"} 56 gu{"set1"} 57 guw{"set5"} 58 gv{"set33"} 59 ha{"set8"} 60 haw{"set8"} 61 he{"set24"} 62 hi{"set1"} 63 hr{"set20"} 64 hsb{"set23"} 65 hu{"set8"} 66 hy{"set2"} 67 id{"set0"} 68 ig{"set0"} 69 ii{"set0"} 70 in{"set0"} 71 is{"set11"} 72 it{"set3"} 73 iu{"set17"} 74 iw{"set24"} 75 ja{"set0"} 76 jbo{"set0"} 77 jgo{"set8"} 78 ji{"set3"} 79 jmc{"set8"} 80 jv{"set0"} 81 jw{"set0"} 82 ka{"set8"} 83 kab{"set2"} 84 kaj{"set8"} 85 kcg{"set8"} 86 kde{"set0"} 87 kea{"set0"} 88 kk{"set8"} 89 kkj{"set8"} 90 kl{"set8"} 91 km{"set0"} 92 kn{"set1"} 93 ko{"set0"} 94 ks{"set8"} 95 ksb{"set8"} 96 ksh{"set16"} 97 ku{"set8"} 98 kw{"set17"} 99 ky{"set8"} 100 lag{"set15"} 101 lb{"set8"} 102 lg{"set8"} 103 lkt{"set0"} 104 ln{"set5"} 105 lo{"set0"} 106 lt{"set28"} 107 lv{"set14"} 108 mas{"set8"} 109 mg{"set5"} 110 mgo{"set8"} 111 mk{"set12"} 112 ml{"set8"} 113 mn{"set8"} 114 mo{"set19"} 115 mr{"set1"} 116 ms{"set0"} 117 mt{"set29"} 118 my{"set0"} 119 nah{"set8"} 120 naq{"set17"} 121 nb{"set8"} 122 nd{"set8"} 123 ne{"set8"} 124 nl{"set3"} 125 nn{"set8"} 126 nnh{"set8"} 127 no{"set8"} 128 nqo{"set0"} 129 nr{"set8"} 130 nso{"set5"} 131 ny{"set8"} 132 nyn{"set8"} 133 om{"set8"} 134 or{"set8"} 135 os{"set8"} 136 pa{"set5"} 137 pap{"set8"} 138 pl{"set26"} 139 prg{"set14"} 140 ps{"set8"} 141 pt{"set7"} 142 pt_PT{"set9"} 143 rm{"set8"} 144 ro{"set19"} 145 rof{"set8"} 146 root{"set0"} 147 ru{"set30"} 148 rwk{"set8"} 149 sah{"set0"} 150 saq{"set8"} 151 sdh{"set8"} 152 se{"set17"} 153 seh{"set8"} 154 ses{"set0"} 155 sg{"set0"} 156 sh{"set20"} 157 shi{"set18"} 158 si{"set4"} 159 sk{"set25"} 160 sl{"set22"} 161 sma{"set17"} 162 smi{"set17"} 163 smj{"set17"} 164 smn{"set17"} 165 sms{"set17"} 166 sn{"set8"} 167 so{"set8"} 168 sq{"set8"} 169 sr{"set20"} 170 ss{"set8"} 171 ssy{"set8"} 172 st{"set8"} 173 sv{"set3"} 174 sw{"set3"} 175 syr{"set8"} 176 ta{"set8"} 177 te{"set8"} 178 teo{"set8"} 179 th{"set0"} 180 ti{"set5"} 181 tig{"set8"} 182 tk{"set8"} 183 tl{"set13"} 184 tn{"set8"} 185 to{"set0"} 186 tr{"set8"} 187 ts{"set8"} 188 tzm{"set6"} 189 ug{"set8"} 190 uk{"set30"} 191 ur{"set3"} 192 uz{"set8"} 193 ve{"set8"} 194 vi{"set0"} 195 vo{"set8"} 196 vun{"set8"} 197 wa{"set5"} 198 wae{"set8"} 199 wo{"set0"} 200 xh{"set8"} 201 xog{"set8"} 202 yi{"set3"} 203 yo{"set0"} 204 yue{"set0"} 205 zh{"set0"} 206 zu{"set1"} 207 } 208 locales_ordinals{ 209 af{"set36"} 210 am{"set36"} 211 ar{"set36"} 212 as{"set53"} 213 az{"set51"} 214 be{"set41"} 215 bg{"set36"} 216 bn{"set53"} 217 bs{"set36"} 218 ca{"set49"} 219 ce{"set36"} 220 cs{"set36"} 221 cy{"set54"} 222 da{"set36"} 223 de{"set36"} 224 dsb{"set36"} 225 el{"set36"} 226 en{"set47"} 227 es{"set36"} 228 et{"set36"} 229 eu{"set36"} 230 fa{"set36"} 231 fi{"set36"} 232 fil{"set38"} 233 fr{"set38"} 234 fy{"set36"} 235 ga{"set38"} 236 gl{"set36"} 237 gu{"set52"} 238 he{"set36"} 239 hi{"set52"} 240 hr{"set36"} 241 hsb{"set36"} 242 hu{"set39"} 243 hy{"set38"} 244 id{"set36"} 245 in{"set36"} 246 is{"set36"} 247 it{"set44"} 248 iw{"set36"} 249 ja{"set36"} 250 ka{"set45"} 251 kk{"set43"} 252 km{"set36"} 253 kn{"set36"} 254 ko{"set36"} 255 ky{"set36"} 256 lo{"set38"} 257 lt{"set36"} 258 lv{"set36"} 259 mk{"set50"} 260 ml{"set36"} 261 mn{"set36"} 262 mo{"set38"} 263 mr{"set48"} 264 ms{"set38"} 265 my{"set36"} 266 nb{"set36"} 267 ne{"set40"} 268 nl{"set36"} 269 pa{"set36"} 270 pl{"set36"} 271 prg{"set36"} 272 pt{"set36"} 273 ro{"set38"} 274 root{"set36"} 275 ru{"set36"} 276 sh{"set36"} 277 si{"set36"} 278 sk{"set36"} 279 sl{"set36"} 280 sq{"set46"} 281 sr{"set36"} 282 sv{"set37"} 283 sw{"set36"} 284 ta{"set36"} 285 te{"set36"} 286 th{"set36"} 287 tl{"set38"} 288 tr{"set36"} 289 uk{"set42"} 290 ur{"set36"} 291 uz{"set36"} 292 vi{"set38"} 293 yue{"set36"} 294 zh{"set36"} 295 zu{"set36"} 296 } 297 rules{ 298 set0{ 299 other{ 300 " @integer 0~15, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0~1." 301 "5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 302 } 303 } 304 set1{ 305 one{"i = 0 or n = 1 @integer 0, 1 @decimal 0.0~1.0, 0.00~0.04"} 306 other{ 307 " @integer 2~17, 100, 1000, 10000, 100000, 1000000, … @decimal 1.1~2." 308 "6, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 309 } 310 } 311 set10{ 312 one{"n = 1 or t != 0 and i = 0,1 @integer 1 @decimal 0.1~1.6"} 313 other{ 314 " @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0" 315 ", 2.0~3.4, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 316 } 317 } 318 set11{ 319 one{ 320 "t = 0 and i % 10 = 1 and i % 100 != 11 or t != 0 @integer 1, 21, 31," 321 " 41, 51, 61, 71, 81, 101, 1001, … @decimal 0.1~1.6, 10.1, 100.1, 100" 322 "0.1, …" 323 } 324 other{ 325 " @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0" 326 ", 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 10.0, 100.0, 1000.0, 10000.0, 1" 327 "00000.0, 1000000.0, …" 328 } 329 } 330 set12{ 331 one{ 332 "v = 0 and i % 10 = 1 or f % 10 = 1 @integer 1, 11, 21, 31, 41, 51, 6" 333 "1, 71, 101, 1001, … @decimal 0.1, 1.1, 2.1, 3.1, 4.1, 5.1, 6.1, 7.1," 334 " 10.1, 100.1, 1000.1, …" 335 } 336 other{ 337 " @integer 0, 2~10, 12~17, 100, 1000, 10000, 100000, 1000000, … @deci" 338 "mal 0.0, 0.2~1.0, 1.2~1.7, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1" 339 "000000.0, …" 340 } 341 } 342 set13{ 343 one{ 344 "v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 1" 345 "0 != 4,6,9 @integer 0~3, 5, 7, 8, 10~13, 15, 17, 18, 20, 21, 100, 10" 346 "00, 10000, 100000, 1000000, … @decimal 0.0~0.3, 0.5, 0.7, 0.8, 1.0~1" 347 ".3, 1.5, 1.7, 1.8, 2.0, 2.1, 10.0, 100.0, 1000.0, 10000.0, 100000.0," 348 " 1000000.0, …" 349 } 350 other{ 351 " @integer 4, 6, 9, 14, 16, 19, 24, 26, 104, 1004, … @decimal 0.4, 0." 352 "6, 0.9, 1.4, 1.6, 1.9, 2.4, 2.6, 10.4, 100.4, 1000.4, …" 353 } 354 } 355 set14{ 356 one{ 357 "n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != " 358 "11 or v != 2 and f % 10 = 1 @integer 1, 21, 31, 41, 51, 61, 71, 81, " 359 "101, 1001, … @decimal 0.1, 1.0, 1.1, 2.1, 3.1, 4.1, 5.1, 6.1, 7.1, 1" 360 "0.1, 100.1, 1000.1, …" 361 } 362 other{ 363 " @integer 2~9, 22~29, 102, 1002, … @decimal 0.2~0.9, 1.2~1.9, 10.2, " 364 "100.2, 1000.2, …" 365 } 366 zero{ 367 "n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19 @intege" 368 "r 0, 10~20, 30, 40, 50, 60, 100, 1000, 10000, 100000, 1000000, … @de" 369 "cimal 0.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 100.0, 1000.0, " 370 "10000.0, 100000.0, 1000000.0, …" 371 } 372 } 373 set15{ 374 one{"i = 0,1 and n != 0 @integer 1 @decimal 0.1~1.6"} 375 other{ 376 " @integer 2~17, 100, 1000, 10000, 100000, 1000000, … @decimal 2.0~3." 377 "5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 378 } 379 zero{"n = 0 @integer 0 @decimal 0.0, 0.00, 0.000, 0.0000"} 380 } 381 set16{ 382 one{"n = 1 @integer 1 @decimal 1.0, 1.00, 1.000, 1.0000"} 383 other{ 384 " @integer 2~17, 100, 1000, 10000, 100000, 1000000, … @decimal 0.1~0." 385 "9, 1.1~1.7, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 386 } 387 zero{"n = 0 @integer 0 @decimal 0.0, 0.00, 0.000, 0.0000"} 388 } 389 set17{ 390 one{"n = 1 @integer 1 @decimal 1.0, 1.00, 1.000, 1.0000"} 391 other{ 392 " @integer 0, 3~17, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0" 393 "~0.9, 1.1~1.6, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 394 } 395 two{"n = 2 @integer 2 @decimal 2.0, 2.00, 2.000, 2.0000"} 396 } 397 set18{ 398 few{ 399 "n = 2..10 @integer 2~10 @decimal 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, " 400 "9.0, 10.0, 2.00, 3.00, 4.00, 5.00, 6.00, 7.00, 8.00" 401 } 402 one{"i = 0 or n = 1 @integer 0, 1 @decimal 0.0~1.0, 0.00~0.04"} 403 other{ 404 " @integer 11~26, 100, 1000, 10000, 100000, 1000000, … @decimal 1.1~1" 405 ".9, 2.1~2.7, 10.1, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 406 } 407 } 408 set19{ 409 few{ 410 "v != 0 or n = 0 or n != 1 and n % 100 = 1..19 @integer 0, 2~16, 101," 411 " 1001, … @decimal 0.0~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1" 412 "000000.0, …" 413 } 414 one{"i = 1 and v = 0 @integer 1"} 415 other{" @integer 20~35, 100, 1000, 10000, 100000, 1000000, …"} 416 } 417 set2{ 418 one{"i = 0,1 @integer 0, 1 @decimal 0.0~1.5"} 419 other{ 420 " @integer 2~17, 100, 1000, 10000, 100000, 1000000, … @decimal 2.0~3." 421 "5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 422 } 423 } 424 set20{ 425 few{ 426 "v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f" 427 " % 100 != 12..14 @integer 2~4, 22~24, 32~34, 42~44, 52~54, 62, 102, " 428 "1002, … @decimal 0.2~0.4, 1.2~1.4, 2.2~2.4, 3.2~3.4, 4.2~4.4, 5.2, 1" 429 "0.2, 100.2, 1000.2, …" 430 } 431 one{ 432 "v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != " 433 "11 @integer 1, 21, 31, 41, 51, 61, 71, 81, 101, 1001, … @decimal 0.1" 434 ", 1.1, 2.1, 3.1, 4.1, 5.1, 6.1, 7.1, 10.1, 100.1, 1000.1, …" 435 } 436 other{ 437 " @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0" 438 ", 0.5~1.0, 1.5~2.0, 2.5~2.7, 10.0, 100.0, 1000.0, 10000.0, 100000.0," 439 " 1000000.0, …" 440 } 441 } 442 set21{ 443 few{ 444 "n = 3..10,13..19 @integer 3~10, 13~19 @decimal 3.0, 4.0, 5.0, 6.0, 7" 445 ".0, 8.0, 9.0, 10.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 3.00" 446 } 447 one{ 448 "n = 1,11 @integer 1, 11 @decimal 1.0, 11.0, 1.00, 11.00, 1.000, 11.0" 449 "00, 1.0000" 450 } 451 other{ 452 " @integer 0, 20~34, 100, 1000, 10000, 100000, 1000000, … @decimal 0." 453 "0~0.9, 1.1~1.6, 10.1, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 454 } 455 two{ 456 "n = 2,12 @integer 2, 12 @decimal 2.0, 12.0, 2.00, 12.00, 2.000, 12.0" 457 "00, 2.0000" 458 } 459 } 460 set22{ 461 few{ 462 "v = 0 and i % 100 = 3..4 or v != 0 @integer 3, 4, 103, 104, 203, 204" 463 ", 303, 304, 403, 404, 503, 504, 603, 604, 703, 704, 1003, … @decimal" 464 " 0.0~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 465 } 466 one{ 467 "v = 0 and i % 100 = 1 @integer 1, 101, 201, 301, 401, 501, 601, 701," 468 " 1001, …" 469 } 470 other{" @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, …"} 471 two{ 472 "v = 0 and i % 100 = 2 @integer 2, 102, 202, 302, 402, 502, 602, 702," 473 " 1002, …" 474 } 475 } 476 set23{ 477 few{ 478 "v = 0 and i % 100 = 3..4 or f % 100 = 3..4 @integer 3, 4, 103, 104, " 479 "203, 204, 303, 304, 403, 404, 503, 504, 603, 604, 703, 704, 1003, … " 480 "@decimal 0.3, 0.4, 1.3, 1.4, 2.3, 2.4, 3.3, 3.4, 4.3, 4.4, 5.3, 5.4," 481 " 6.3, 6.4, 7.3, 7.4, 10.3, 100.3, 1000.3, …" 482 } 483 one{ 484 "v = 0 and i % 100 = 1 or f % 100 = 1 @integer 1, 101, 201, 301, 401," 485 " 501, 601, 701, 1001, … @decimal 0.1, 1.1, 2.1, 3.1, 4.1, 5.1, 6.1, " 486 "7.1, 10.1, 100.1, 1000.1, …" 487 } 488 other{ 489 " @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0" 490 ", 0.5~1.0, 1.5~2.0, 2.5~2.7, 10.0, 100.0, 1000.0, 10000.0, 100000.0," 491 " 1000000.0, …" 492 } 493 two{ 494 "v = 0 and i % 100 = 2 or f % 100 = 2 @integer 2, 102, 202, 302, 402," 495 " 502, 602, 702, 1002, … @decimal 0.2, 1.2, 2.2, 3.2, 4.2, 5.2, 6.2, " 496 "7.2, 10.2, 100.2, 1000.2, …" 497 } 498 } 499 set24{ 500 many{ 501 "v = 0 and n != 0..10 and n % 10 = 0 @integer 20, 30, 40, 50, 60, 70," 502 " 80, 90, 100, 1000, 10000, 100000, 1000000, …" 503 } 504 one{"i = 1 and v = 0 @integer 1"} 505 other{ 506 " @integer 0, 3~17, 101, 1001, … @decimal 0.0~1.5, 10.0, 100.0, 1000." 507 "0, 10000.0, 100000.0, 1000000.0, …" 508 } 509 two{"i = 2 and v = 0 @integer 2"} 510 } 511 set25{ 512 few{"i = 2..4 and v = 0 @integer 2~4"} 513 many{ 514 "v != 0 @decimal 0.0~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1" 515 "000000.0, …" 516 } 517 one{"i = 1 and v = 0 @integer 1"} 518 other{" @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, …"} 519 } 520 set26{ 521 few{ 522 "v = 0 and i % 10 = 2..4 and i % 100 != 12..14 @integer 2~4, 22~24, 3" 523 "2~34, 42~44, 52~54, 62, 102, 1002, …" 524 } 525 many{ 526 "v = 0 and i != 1 and i % 10 = 0..1 or v = 0 and i % 10 = 5..9 or v =" 527 " 0 and i % 100 = 12..14 @integer 0, 5~19, 100, 1000, 10000, 100000, " 528 "1000000, …" 529 } 530 one{"i = 1 and v = 0 @integer 1"} 531 other{ 532 " @decimal 0.0~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000" 533 ".0, …" 534 } 535 } 536 set27{ 537 few{ 538 "n % 10 = 2..4 and n % 100 != 12..14 @integer 2~4, 22~24, 32~34, 42~4" 539 "4, 52~54, 62, 102, 1002, … @decimal 2.0, 3.0, 4.0, 22.0, 23.0, 24.0," 540 " 32.0, 33.0, 102.0, 1002.0, …" 541 } 542 many{ 543 "n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14 @integer 0, 5~19, 10" 544 "0, 1000, 10000, 100000, 1000000, … @decimal 0.0, 5.0, 6.0, 7.0, 8.0," 545 " 9.0, 10.0, 11.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 546 } 547 one{ 548 "n % 10 = 1 and n % 100 != 11 @integer 1, 21, 31, 41, 51, 61, 71, 81," 549 " 101, 1001, … @decimal 1.0, 21.0, 31.0, 41.0, 51.0, 61.0, 71.0, 81.0" 550 ", 101.0, 1001.0, …" 551 } 552 other{" @decimal 0.1~0.9, 1.1~1.7, 10.1, 100.1, 1000.1, …"} 553 } 554 set28{ 555 few{ 556 "n % 10 = 2..9 and n % 100 != 11..19 @integer 2~9, 22~29, 102, 1002, " 557 "… @decimal 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 22.0, 102.0, 1002" 558 ".0, …" 559 } 560 many{"f != 0 @decimal 0.1~0.9, 1.1~1.7, 10.1, 100.1, 1000.1, …"} 561 one{ 562 "n % 10 = 1 and n % 100 != 11..19 @integer 1, 21, 31, 41, 51, 61, 71," 563 " 81, 101, 1001, … @decimal 1.0, 21.0, 31.0, 41.0, 51.0, 61.0, 71.0, " 564 "81.0, 101.0, 1001.0, …" 565 } 566 other{ 567 " @integer 0, 10~20, 30, 40, 50, 60, 100, 1000, 10000, 100000, 100000" 568 "0, … @decimal 0.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 100.0, " 569 "1000.0, 10000.0, 100000.0, 1000000.0, …" 570 } 571 } 572 set29{ 573 few{ 574 "n = 0 or n % 100 = 2..10 @integer 0, 2~10, 102~107, 1002, … @decimal" 575 " 0.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 10.0, 102.0, 1002.0, …" 576 } 577 many{ 578 "n % 100 = 11..19 @integer 11~19, 111~117, 1011, … @decimal 11.0, 12." 579 "0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 111.0, 1011.0, …" 580 } 581 one{"n = 1 @integer 1 @decimal 1.0, 1.00, 1.000, 1.0000"} 582 other{ 583 " @integer 20~35, 100, 1000, 10000, 100000, 1000000, … @decimal 0.1~0" 584 ".9, 1.1~1.7, 10.1, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 585 } 586 } 587 set3{ 588 one{"i = 1 and v = 0 @integer 1"} 589 other{ 590 " @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0" 591 "~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 592 } 593 } 594 set30{ 595 few{ 596 "v = 0 and i % 10 = 2..4 and i % 100 != 12..14 @integer 2~4, 22~24, 3" 597 "2~34, 42~44, 52~54, 62, 102, 1002, …" 598 } 599 many{ 600 "v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100" 601 " = 11..14 @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, …" 602 } 603 one{ 604 "v = 0 and i % 10 = 1 and i % 100 != 11 @integer 1, 21, 31, 41, 51, 6" 605 "1, 71, 81, 101, 1001, …" 606 } 607 other{ 608 " @decimal 0.0~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000" 609 ".0, …" 610 } 611 } 612 set31{ 613 few{ 614 "n % 10 = 3..4,9 and n % 100 != 10..19,70..79,90..99 @integer 3, 4, 9" 615 ", 23, 24, 29, 33, 34, 39, 43, 44, 49, 103, 1003, … @decimal 3.0, 4.0" 616 ", 9.0, 23.0, 24.0, 29.0, 33.0, 34.0, 103.0, 1003.0, …" 617 } 618 many{ 619 "n != 0 and n % 1000000 = 0 @integer 1000000, … @decimal 1000000.0, 1" 620 "000000.00, 1000000.000, …" 621 } 622 one{ 623 "n % 10 = 1 and n % 100 != 11,71,91 @integer 1, 21, 31, 41, 51, 61, 8" 624 "1, 101, 1001, … @decimal 1.0, 21.0, 31.0, 41.0, 51.0, 61.0, 81.0, 10" 625 "1.0, 1001.0, …" 626 } 627 other{ 628 " @integer 0, 5~8, 10~20, 100, 1000, 10000, 100000, … @decimal 0.0~0." 629 "9, 1.1~1.6, 10.0, 100.0, 1000.0, 10000.0, 100000.0, …" 630 } 631 two{ 632 "n % 10 = 2 and n % 100 != 12,72,92 @integer 2, 22, 32, 42, 52, 62, 8" 633 "2, 102, 1002, … @decimal 2.0, 22.0, 32.0, 42.0, 52.0, 62.0, 82.0, 10" 634 "2.0, 1002.0, …" 635 } 636 } 637 set32{ 638 few{ 639 "n = 3..6 @integer 3~6 @decimal 3.0, 4.0, 5.0, 6.0, 3.00, 4.00, 5.00," 640 " 6.00, 3.000, 4.000, 5.000, 6.000, 3.0000, 4.0000, 5.0000, 6.0000" 641 } 642 many{ 643 "n = 7..10 @integer 7~10 @decimal 7.0, 8.0, 9.0, 10.0, 7.00, 8.00, 9." 644 "00, 10.00, 7.000, 8.000, 9.000, 10.000, 7.0000, 8.0000, 9.0000, 10.0" 645 "000" 646 } 647 one{"n = 1 @integer 1 @decimal 1.0, 1.00, 1.000, 1.0000"} 648 other{ 649 " @integer 0, 11~25, 100, 1000, 10000, 100000, 1000000, … @decimal 0." 650 "0~0.9, 1.1~1.6, 10.1, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 651 } 652 two{"n = 2 @integer 2 @decimal 2.0, 2.00, 2.000, 2.0000"} 653 } 654 set33{ 655 few{ 656 "v = 0 and i % 100 = 0,20,40,60,80 @integer 0, 20, 40, 60, 80, 100, 1" 657 "20, 140, 1000, 10000, 100000, 1000000, …" 658 } 659 many{ 660 "v != 0 @decimal 0.0~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1" 661 "000000.0, …" 662 } 663 one{ 664 "v = 0 and i % 10 = 1 @integer 1, 11, 21, 31, 41, 51, 61, 71, 101, 10" 665 "01, …" 666 } 667 other{" @integer 3~10, 13~19, 23, 103, 1003, …"} 668 two{ 669 "v = 0 and i % 10 = 2 @integer 2, 12, 22, 32, 42, 52, 62, 72, 102, 10" 670 "02, …" 671 } 672 } 673 set34{ 674 few{ 675 "n % 100 = 3..10 @integer 3~10, 103~110, 1003, … @decimal 3.0, 4.0, 5" 676 ".0, 6.0, 7.0, 8.0, 9.0, 10.0, 103.0, 1003.0, …" 677 } 678 many{ 679 "n % 100 = 11..99 @integer 11~26, 111, 1011, … @decimal 11.0, 12.0, 1" 680 "3.0, 14.0, 15.0, 16.0, 17.0, 18.0, 111.0, 1011.0, …" 681 } 682 one{"n = 1 @integer 1 @decimal 1.0, 1.00, 1.000, 1.0000"} 683 other{ 684 " @integer 100~102, 200~202, 300~302, 400~402, 500~502, 600, 1000, 10" 685 "000, 100000, 1000000, … @decimal 0.1~0.9, 1.1~1.7, 10.1, 100.0, 1000" 686 ".0, 10000.0, 100000.0, 1000000.0, …" 687 } 688 two{"n = 2 @integer 2 @decimal 2.0, 2.00, 2.000, 2.0000"} 689 zero{"n = 0 @integer 0 @decimal 0.0, 0.00, 0.000, 0.0000"} 690 } 691 set35{ 692 few{"n = 3 @integer 3 @decimal 3.0, 3.00, 3.000, 3.0000"} 693 many{"n = 6 @integer 6 @decimal 6.0, 6.00, 6.000, 6.0000"} 694 one{"n = 1 @integer 1 @decimal 1.0, 1.00, 1.000, 1.0000"} 695 other{ 696 " @integer 4, 5, 7~20, 100, 1000, 10000, 100000, 1000000, … @decimal " 697 "0.1~0.9, 1.1~1.7, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0," 698 " …" 699 } 700 two{"n = 2 @integer 2 @decimal 2.0, 2.00, 2.000, 2.0000"} 701 zero{"n = 0 @integer 0 @decimal 0.0, 0.00, 0.000, 0.0000"} 702 } 703 set36{ 704 other{" @integer 0~15, 100, 1000, 10000, 100000, 1000000, …"} 705 } 706 set37{ 707 one{ 708 "n % 10 = 1,2 and n % 100 != 11,12 @integer 1, 2, 21, 22, 31, 32, 41," 709 " 42, 51, 52, 61, 62, 71, 72, 81, 82, 101, 1001, …" 710 } 711 other{" @integer 0, 3~17, 100, 1000, 10000, 100000, 1000000, …"} 712 } 713 set38{ 714 one{"n = 1 @integer 1"} 715 other{" @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, …"} 716 } 717 set39{ 718 one{"n = 1,5 @integer 1, 5"} 719 other{" @integer 0, 2~4, 6~17, 100, 1000, 10000, 100000, 1000000, …"} 720 } 721 set4{ 722 one{ 723 "n = 0,1 or i = 0 and f = 1 @integer 0, 1 @decimal 0.0, 0.1, 1.0, 0.0" 724 "0, 0.01, 1.00, 0.000, 0.001, 1.000, 0.0000, 0.0001, 1.0000" 725 } 726 other{ 727 " @integer 2~17, 100, 1000, 10000, 100000, 1000000, … @decimal 0.2~0." 728 "9, 1.1~1.8, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 729 } 730 } 731 set40{ 732 one{"n = 1..4 @integer 1~4"} 733 other{" @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, …"} 734 } 735 set41{ 736 few{ 737 "n % 10 = 2,3 and n % 100 != 12,13 @integer 2, 3, 22, 23, 32, 33, 42," 738 " 43, 52, 53, 62, 63, 72, 73, 82, 83, 102, 1002, …" 739 } 740 other{" @integer 0, 1, 4~17, 100, 1000, 10000, 100000, 1000000, …"} 741 } 742 set42{ 743 few{ 744 "n % 10 = 3 and n % 100 != 13 @integer 3, 23, 33, 43, 53, 63, 73, 83," 745 " 103, 1003, …" 746 } 747 other{" @integer 0~2, 4~16, 100, 1000, 10000, 100000, 1000000, …"} 748 } 749 set43{ 750 many{ 751 "n % 10 = 6 or n % 10 = 9 or n % 10 = 0 and n != 0 @integer 6, 9, 10," 752 " 16, 19, 20, 26, 29, 30, 36, 39, 40, 100, 1000, 10000, 100000, 10000" 753 "00, …" 754 } 755 other{" @integer 0~5, 7, 8, 11~15, 17, 18, 21, 101, 1001, …"} 756 } 757 set44{ 758 many{"n = 11,8,80,800 @integer 8, 11, 80, 800"} 759 other{" @integer 0~7, 9, 10, 12~17, 100, 1000, 10000, 100000, 1000000, …"} 760 } 761 set45{ 762 many{"i = 0 or i % 100 = 2..20,40,60,80 @integer 0, 2~16, 102, 1002, …"} 763 one{"i = 1 @integer 1"} 764 other{" @integer 21~36, 100, 1000, 10000, 100000, 1000000, …"} 765 } 766 set46{ 767 many{ 768 "n % 10 = 4 and n % 100 != 14 @integer 4, 24, 34, 44, 54, 64, 74, 84," 769 " 104, 1004, …" 770 } 771 one{"n = 1 @integer 1"} 772 other{" @integer 0, 2, 3, 5~17, 100, 1000, 10000, 100000, 1000000, …"} 773 } 774 set47{ 775 few{ 776 "n % 10 = 3 and n % 100 != 13 @integer 3, 23, 33, 43, 53, 63, 73, 83," 777 " 103, 1003, …" 778 } 779 one{ 780 "n % 10 = 1 and n % 100 != 11 @integer 1, 21, 31, 41, 51, 61, 71, 81," 781 " 101, 1001, …" 782 } 783 other{" @integer 0, 4~18, 100, 1000, 10000, 100000, 1000000, …"} 784 two{ 785 "n % 10 = 2 and n % 100 != 12 @integer 2, 22, 32, 42, 52, 62, 72, 82," 786 " 102, 1002, …" 787 } 788 } 789 set48{ 790 few{"n = 4 @integer 4"} 791 one{"n = 1 @integer 1"} 792 other{" @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, …"} 793 two{"n = 2,3 @integer 2, 3"} 794 } 795 set49{ 796 few{"n = 4 @integer 4"} 797 one{"n = 1,3 @integer 1, 3"} 798 other{" @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, …"} 799 two{"n = 2 @integer 2"} 800 } 801 set5{ 802 one{ 803 "n = 0..1 @integer 0, 1 @decimal 0.0, 1.0, 0.00, 1.00, 0.000, 1.000, " 804 "0.0000, 1.0000" 805 } 806 other{ 807 " @integer 2~17, 100, 1000, 10000, 100000, 1000000, … @decimal 0.1~0." 808 "9, 1.1~1.7, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 809 } 810 } 811 set50{ 812 many{ 813 "i % 10 = 7,8 and i % 100 != 17,18 @integer 7, 8, 27, 28, 37, 38, 47," 814 " 48, 57, 58, 67, 68, 77, 78, 87, 88, 107, 1007, …" 815 } 816 one{ 817 "i % 10 = 1 and i % 100 != 11 @integer 1, 21, 31, 41, 51, 61, 71, 81," 818 " 101, 1001, …" 819 } 820 other{" @integer 0, 3~6, 9~19, 100, 1000, 10000, 100000, 1000000, …"} 821 two{ 822 "i % 10 = 2 and i % 100 != 12 @integer 2, 22, 32, 42, 52, 62, 72, 82," 823 " 102, 1002, …" 824 } 825 } 826 set51{ 827 few{ 828 "i % 10 = 3,4 or i % 1000 = 100,200,300,400,500,600,700,800,900 @inte" 829 "ger 3, 4, 13, 14, 23, 24, 33, 34, 43, 44, 53, 54, 63, 64, 73, 74, 10" 830 "0, 1003, …" 831 } 832 many{ 833 "i = 0 or i % 10 = 6 or i % 100 = 40,60,90 @integer 0, 6, 16, 26, 36," 834 " 40, 46, 56, 106, 1006, …" 835 } 836 one{ 837 "i % 10 = 1,2,5,7,8 or i % 100 = 20,50,70,80 @integer 1, 2, 5, 7, 8, " 838 "11, 12, 15, 17, 18, 20~22, 25, 101, 1001, …" 839 } 840 other{ 841 " @integer 9, 10, 19, 29, 30, 39, 49, 59, 69, 79, 109, 1000, 10000, 1" 842 "00000, 1000000, …" 843 } 844 } 845 set52{ 846 few{"n = 4 @integer 4"} 847 many{"n = 6 @integer 6"} 848 one{"n = 1 @integer 1"} 849 other{" @integer 0, 5, 7~20, 100, 1000, 10000, 100000, 1000000, …"} 850 two{"n = 2,3 @integer 2, 3"} 851 } 852 set53{ 853 few{"n = 4 @integer 4"} 854 many{"n = 6 @integer 6"} 855 one{"n = 1,5,7,8,9,10 @integer 1, 5, 7~10"} 856 other{" @integer 0, 11~25, 100, 1000, 10000, 100000, 1000000, …"} 857 two{"n = 2,3 @integer 2, 3"} 858 } 859 set54{ 860 few{"n = 3,4 @integer 3, 4"} 861 many{"n = 5,6 @integer 5, 6"} 862 one{"n = 1 @integer 1"} 863 other{" @integer 10~25, 100, 1000, 10000, 100000, 1000000, …"} 864 two{"n = 2 @integer 2"} 865 zero{"n = 0,7,8,9 @integer 0, 7~9"} 866 } 867 set6{ 868 one{ 869 "n = 0..1 or n = 11..99 @integer 0, 1, 11~24 @decimal 0.0, 1.0, 11.0," 870 " 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0, 2" 871 "3.0, 24.0" 872 } 873 other{ 874 " @integer 2~10, 100~106, 1000, 10000, 100000, 1000000, … @decimal 0." 875 "1~0.9, 1.1~1.7, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 876 } 877 } 878 set7{ 879 one{ 880 "n = 0..2 and n != 2 @integer 0, 1 @decimal 0.0, 1.0, 0.00, 1.00, 0.0" 881 "00, 1.000, 0.0000, 1.0000" 882 } 883 other{ 884 " @integer 2~17, 100, 1000, 10000, 100000, 1000000, … @decimal 0.1~0." 885 "9, 1.1~1.7, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 886 } 887 } 888 set8{ 889 one{"n = 1 @integer 1 @decimal 1.0, 1.00, 1.000, 1.0000"} 890 other{ 891 " @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0" 892 "~0.9, 1.1~1.6, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 893 } 894 } 895 set9{ 896 one{"n = 1 and v = 0 @integer 1"} 897 other{ 898 " @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0" 899 "~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …" 900 } 901 } 902 } 903} 904