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