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