﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/plurals.xml, ordinals.xml
// *
// ***************************************************************************
plurals:table(nofallback){
    locales{
        af{"set8"}
        ak{"set6"}
        am{"set1"}
        ar{"set33"}
        asa{"set8"}
        ast{"set3"}
        az{"set8"}
        be{"set26"}
        bem{"set8"}
        bez{"set8"}
        bg{"set8"}
        bh{"set6"}
        bm{"set0"}
        bn{"set1"}
        bo{"set0"}
        br{"set30"}
        brx{"set8"}
        bs{"set20"}
        ca{"set3"}
        cgg{"set8"}
        chr{"set8"}
        ckb{"set8"}
        cs{"set24"}
        cy{"set34"}
        da{"set10"}
        de{"set3"}
        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{"set31"}
        gd{"set21"}
        gl{"set3"}
        gsw{"set8"}
        gu{"set1"}
        guw{"set6"}
        gv{"set32"}
        ha{"set8"}
        haw{"set8"}
        he{"set23"}
        hi{"set1"}
        hr{"set20"}
        hu{"set8"}
        hy{"set2"}
        id{"set0"}
        ig{"set0"}
        ii{"set0"}
        in{"set0"}
        is{"set11"}
        it{"set3"}
        iu{"set17"}
        iw{"set23"}
        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{"set6"}
        lo{"set0"}
        lt{"set27"}
        lv{"set14"}
        mas{"set8"}
        mg{"set6"}
        mgo{"set8"}
        mk{"set12"}
        ml{"set8"}
        mn{"set8"}
        mo{"set19"}
        mr{"set1"}
        ms{"set0"}
        mt{"set28"}
        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{"set6"}
        ny{"set8"}
        nyn{"set8"}
        om{"set8"}
        or{"set8"}
        os{"set8"}
        pa{"set6"}
        pap{"set8"}
        pl{"set25"}
        prg{"set14"}
        ps{"set8"}
        pt{"set4"}
        pt_PT{"set9"}
        rm{"set8"}
        ro{"set19"}
        rof{"set8"}
        root{"set0"}
        ru{"set29"}
        rwk{"set8"}
        sah{"set0"}
        saq{"set8"}
        se{"set17"}
        seh{"set8"}
        ses{"set0"}
        sg{"set0"}
        sh{"set20"}
        shi{"set18"}
        si{"set5"}
        sk{"set24"}
        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{"set6"}
        tig{"set8"}
        tk{"set8"}
        tl{"set13"}
        tn{"set8"}
        to{"set0"}
        tr{"set8"}
        ts{"set8"}
        tzm{"set7"}
        ug{"set8"}
        uk{"set29"}
        ur{"set3"}
        uz{"set8"}
        ve{"set8"}
        vi{"set0"}
        vo{"set8"}
        vun{"set8"}
        wa{"set6"}
        wae{"set8"}
        wo{"set0"}
        xh{"set8"}
        xog{"set8"}
        yi{"set3"}
        yo{"set0"}
        zh{"set0"}
        zu{"set1"}
    }
    locales_ordinals{
        af{"set35"}
        am{"set35"}
        ar{"set35"}
        az{"set48"}
        bg{"set35"}
        bn{"set50"}
        ca{"set46"}
        cs{"set35"}
        cy{"set51"}
        da{"set35"}
        de{"set35"}
        el{"set35"}
        en{"set44"}
        es{"set35"}
        et{"set35"}
        eu{"set35"}
        fa{"set35"}
        fi{"set35"}
        fil{"set37"}
        fr{"set37"}
        fy{"set35"}
        gl{"set35"}
        gu{"set49"}
        he{"set35"}
        hi{"set49"}
        hr{"set35"}
        hu{"set38"}
        hy{"set37"}
        id{"set35"}
        in{"set35"}
        is{"set35"}
        it{"set41"}
        iw{"set35"}
        ja{"set35"}
        ka{"set42"}
        kk{"set40"}
        km{"set35"}
        kn{"set35"}
        ko{"set35"}
        ky{"set35"}
        lo{"set37"}
        lt{"set35"}
        lv{"set35"}
        mk{"set47"}
        ml{"set35"}
        mn{"set35"}
        mo{"set37"}
        mr{"set45"}
        ms{"set37"}
        my{"set35"}
        nb{"set35"}
        ne{"set39"}
        nl{"set35"}
        pa{"set35"}
        pl{"set35"}
        prg{"set35"}
        pt{"set35"}
        ro{"set37"}
        root{"set35"}
        ru{"set35"}
        sh{"set35"}
        si{"set35"}
        sk{"set35"}
        sl{"set35"}
        sq{"set43"}
        sr{"set35"}
        sv{"set36"}
        sw{"set35"}
        ta{"set35"}
        te{"set35"}
        th{"set35"}
        tl{"set37"}
        tr{"set35"}
        uk{"set35"}
        ur{"set35"}
        uz{"set35"}
        vi{"set37"}
        zh{"set35"}
        zu{"set35"}
    }
    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{
            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"}
        }
        set24{
            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, …"}
        }
        set25{
            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, …"
            }
        }
        set26{
            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, …"}
        }
        set27{
            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, …"
            }
        }
        set28{
            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, …"
            }
        }
        set29{
            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, …"
            }
        }
        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{
                "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, …"
            }
        }
        set31{
            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"}
        }
        set32{
            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, …"
            }
        }
        set33{
            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"}
        }
        set34{
            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"}
        }
        set35{
            other{" @integer 0~15, 100, 1000, 10000, 100000, 1000000, …"}
        }
        set36{
            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, …"}
        }
        set37{
            one{"n = 1 @integer 1"}
            other{" @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, …"}
        }
        set38{
            one{"n = 1,5 @integer 1, 5"}
            other{" @integer 0, 2~4, 6~17, 100, 1000, 10000, 100000, 1000000, …"}
        }
        set39{
            one{"n = 1..4 @integer 1~4"}
            other{" @integer 0, 5~19, 100, 1000, 10000, 100000, 1000000, …"}
        }
        set4{
            one{
                "i = 1 and v = 0 or i = 0 and t = 1 @integer 1 @decimal 0.1, 0.01, 0."
                "10, 0.001, 0.010, 0.100, 0.0001, 0.0010, 0.0100, 0.1000"
            }
            other{
                " @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0"
                ", 0.2~1.6, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …"
            }
        }
        set40{
            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, …"}
        }
        set41{
            many{"n = 11,8,80,800 @integer 8, 11, 80, 800"}
            other{" @integer 0~7, 9, 10, 12~17, 100, 1000, 10000, 100000, 1000000, …"}
        }
        set42{
            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, …"}
        }
        set43{
            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, …"}
        }
        set44{
            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, …"
            }
        }
        set45{
            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"}
        }
        set46{
            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"}
        }
        set47{
            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, …"
            }
        }
        set48{
            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, …"
            }
        }
        set49{
            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"}
        }
        set5{
            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, …"
            }
        }
        set50{
            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"}
        }
        set51{
            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 @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, …"
            }
        }
        set7{
            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, …"
            }
        }
        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, …"
            }
        }
    }
}
