﻿// ***************************************************************************
// *
// * Copyright (C) 2004 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File: ../../../locale/common/main/id.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: ../../../locale/icu/main/id.xml
 */
id{
    Countries{
        AD{"Andora"}
        AE{"Uni Emirat Arab"}
        AF{"Afghanistan"}
        AG{"Antigua dan Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Antilles Belanda"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Argentina"}
        AS{"Samoa Amerika"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AZ{"Azerbaijan"}
        BA{"Bosnia dan Herzegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Belgia"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BR{"Brazil"}
        BS{"Bahamas"}
        BT{"Bhutan"}
        BV{"Kepulauan Bouvet"}
        BW{"Botswana"}
        BY{"Belarusia"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Kepulauan Cocos"}
        CD{"Republik Demokratik Kongo"}
        CF{"Republik Afrika Tengah"}
        CG{"Kongo"}
        CH{"Swiss"}
        CI{"Pantai Gading"}
        CK{"Kepulauan Cook"}
        CL{"Chili"}
        CM{"Kamerun"}
        CN{"Cina"}
        CO{"Kolombia"}
        CR{"Kosta Rika"}
        CU{"Kuba"}
        CV{"Tanjung Verde"}
        CX{"Pulau Christmas"}
        CY{"Siprus"}
        CZ{"Republik Ceko"}
        DE{"Jerman"}
        DJ{"Jibouti"}
        DK{"Denmark"}
        DM{"Dominika"}
        DO{"Republik Dominika"}
        DZ{"Algeria"}
        EC{"Ekuador"}
        EE{"Estonia"}
        EG{"Mesir"}
        EH{"Sahara Barat"}
        ER{"Eritrea"}
        ES{"Spanyol"}
        ET{"Ethiopia"}
        FI{"Finlandia"}
        FJ{"Fiji"}
        FK{"Kepulauan Falkland"}
        FM{"Mikronesia"}
        FO{"Kepulauan Faroe"}
        FR{"Perancis"}
        GA{"Gabon"}
        GB{"Inggris Raya"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Guyana Perancis"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Greenland"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadeloupe"}
        GQ{"Guinea Khatulistiwa"}
        GR{"Yunani"}
        GS{"Georgia Selatan dan Kepulauan Sandwich Selatan"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"Hong Kong S.A.R., Cina"}
        HM{"Pulau Heard dan Kepulauan McDonald"}
        HN{"Honduras"}
        HR{"Kroasia"}
        HT{"Haiti"}
        HU{"Hungaria"}
        ID{"Indonesia"}
        IE{"Irlandia"}
        IL{"Israel"}
        IN{"India"}
        IQ{"Iraq"}
        IR{"Iran"}
        IS{"Islandia"}
        IT{"Itali"}
        JM{"Jamaika"}
        JO{"Yordania"}
        JP{"Jepang"}
        KE{"Kenya"}
        KG{"Kyrgyzstan"}
        KH{"Kamboja"}
        KI{"Kiribati"}
        KM{"Komoros"}
        KN{"Saint Kitts dan Nevis"}
        KP{"Korea Utara"}
        KR{"Korea Selatan"}
        KW{"Kuwait"}
        KY{"Kepulauan Kayman"}
        KZ{"Kazakhstan"}
        LA{"Laos"}
        LB{"Lebanon"}
        LC{"Santa Lusia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lithuania"}
        LU{"Luxembourg"}
        LV{"Latvia"}
        LY{"Libya"}
        MA{"Maroko"}
        MC{"Monaco"}
        MD{"Moldova"}
        MG{"Madagaskar"}
        MH{"Kepulauan Marshall"}
        MK{"Macedonia"}
        ML{"Mali"}
        MM{"Myanmar"}
        MN{"Mongolia"}
        MO{"Makao S.A.R. Cina"}
        MP{"Kepualuan Mariana Utara"}
        MQ{"Martinique"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldives"}
        MW{"Malawi"}
        MX{"Mexico"}
        MY{"Malaysia"}
        MZ{"Mozambique"}
        NA{"Namibia"}
        NC{"Kaledonia Baru"}
        NE{"Niger"}
        NF{"Kepulauan Norfolk"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Netherlands"}
        NO{"Norwegia"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Selandia Baru"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polynesia Perancis"}
        PG{"Papua Nugini"}
        PH{"Filipina"}
        PK{"Pakistan"}
        PL{"Polandia"}
        PM{"Saint Pierre dan Miquelon"}
        PN{"Pitcairn"}
        PR{"Puerto Riko"}
        PS{"Otoritas Palestina"}
        PT{"Portugis"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        RE{"Réunion"}
        RO{"Romania"}
        RU{"Rusia"}
        RW{"Rwanda"}
        SA{"Arab Saudi"}
        SB{"Kepulauan Solomon"}
        SC{"Seychelles"}
        SD{"Sudan"}
        SE{"Sweden"}
        SG{"Singapura"}
        SH{"Saint Helena"}
        SI{"Slovenia"}
        SJ{"Svalbard dan Jan Mayen"}
        SK{"Slovakia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SP{"Serbia"}
        SR{"Suriname"}
        ST{"Sao Tome dan Principe"}
        SV{"El Salvador"}
        SY{"Syria"}
        SZ{"Swaziland"}
        TD{"Chad"}
        TG{"Togo"}
        TH{"Thailand"}
        TJ{"Tajikistan"}
        TK{"Tokelau"}
        TM{"Turkmenistan"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Turkey"}
        TT{"Trinidad dan Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzania"}
        UA{"Ukraina"}
        UG{"Uganda"}
        US{"Amerika Serikat"}
        UY{"Uruguay"}
        UZ{"Uzbekistan"}
        VA{"Vatikan"}
        VC{"Saint Vincent dan Grenadines"}
        VE{"Venezuela"}
        VG{"Kepulauan British Virgin"}
        VI{"Kepulauan U.S. Virgin"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis dan Futuna"}
        WS{"Samoa"}
        YE{"Yaman"}
        YT{"Mayotte"}
        YU{"Yugoslavia"}
        ZA{"Afrika Selatan"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
    }
    Currencies{
        IDR{
            "Rp",
            "IDR",
        }
    }
    ExemplarCharacters{"[a-z]"}
    Languages{
        aa{"Afar"}
        ab{"Abkhaz"}
        ace{"Aceh"}
        ae{"Avestan"}
        af{"Afrikaans"}
        afa{"Afro-Asiatik (Lainnya)"}
        ak{"Akan"}
        akk{"Akkadien"}
        alg{"Bahasa Algonquia"}
        am{"Amharik"}
        ang{"Inggris Kuno (kl.450-1100)"}
        apa{"Bahasa-bahasa Apache"}
        ar{"Arab"}
        arc{"Aram"}
        arn{"Araucan"}
        art{"Buatan (Lainnya)"}
        as{"Assam"}
        ast{"Astur"}
        ath{"Bahasa-bahasa Athapaska"}
        aus{"Bahasa-bahasa Australia"}
        av{"Avarik"}
        ay{"Aymara"}
        az{"Azerbaijan"}
        ba{"Bashkir"}
        bai{"Bahasa-bahasa Bamileke"}
        ban{"Balin"}
        bat{"Baltik (Lainnya)"}
        be{"Belarusia"}
        bg{"Bulgaria"}
        bh{"Bihari"}
        bi{"Bislama"}
        bm{"Bambara"}
        bn{"Bengal"}
        bo{"Tibet"}
        br{"Breton"}
        bs{"Bosnia"}
        bug{"Bugis"}
        ca{"Catalan"}
        cai{"India Amerika Tengah (Lainnnya)"}
        car{"Karib"}
        cau{"Kaukasia (Lainnya)"}
        ce{"Chechen"}
        cel{"Celtic (Lainnya)"}
        ch{"Chamorro"}
        chk{"Chuuke"}
        co{"Korsika"}
        cop{"Koptik"}
        cr{"Cree"}
        cs{"Ceko"}
        cv{"Chuvash"}
        cy{"Welsh"}
        da{"Denmark"}
        de{"Jerman"}
        dv{"Divehi"}
        dz{"Dzongkha"}
        ee{"Ewe"}
        egy{"Mesir Kuno"}
        el{"Yunani"}
        en{"Inggris"}
        enm{"Inggris, Abad Pertengahan (1100-1500)"}
        eo{"Esperanto"}
        es{"Spanyol"}
        et{"Estonian"}
        eu{"Basque"}
        fa{"Persia"}
        ff{"Fulah"}
        fi{"Finlandia"}
        fj{"Fiji"}
        fo{"Faro"}
        fr{"Perancis"}
        frm{"Perancis, Abad Pertengahan (kl.1400-1600)"}
        fro{"Perancis Kuno (842-kl.1400)"}
        fur{"Friuli"}
        fy{"Frisi"}
        ga{"Irlandia"}
        gd{"Gaelik Skotlandia"}
        gem{"Jermanik (Lainnya)"}
        gil{"Gilbert"}
        gl{"Gallegan"}
        gmh{"Jerman, Abad Pertengahan (kl.1050-1500)"}
        gn{"Guarani"}
        goh{"Jerman Kuno (kl.750-1050)"}
        got{"Gothik"}
        grc{"Yunani Kuno (sd 1453)"}
        gu{"Gujarati"}
        gv{"Manx"}
        ha{"Hausa"}
        haw{"Hawaii"}
        he{"Ibrani"}
        hi{"Hindi"}
        ho{"Hiri Motu"}
        hr{"Kroasia"}
        hu{"Hungaria"}
        hy{"Armenia"}
        hz{"Herero"}
        ia{"Interlingua"}
        id{"Bahasa Indonesia"}
        ie{"Interlingue"}
        ig{"Igbo"}
        ii{"Sichuan Yi"}
        ik{"Inupiaq"}
        io{"Ido"}
        is{"Icelandic"}
        it{"Italian"}
        ja{"Japanese"}
        jpr{"Judeo-Persia"}
        jrb{"Judeo-Arab"}
        jv{"Jawa"}
        ka{"Georgian"}
        kg{"Kongo"}
        ki{"Kikuyu"}
        kj{"Kuanyama"}
        kk{"Kazakh"}
        kl{"Kalaallisut"}
        km{"Khmer"}
        kn{"Kannada"}
        ko{"Korea"}
        kok{"Konkani"}
        kos{"Kosrae"}
        kr{"Kanuri"}
        ks{"Kashmir"}
        ku{"Kurdi"}
        kv{"Komi"}
        kw{"Cornish"}
        ky{"Kirghiz"}
        la{"Latin"}
        lb{"Luxembourg"}
        lez{"Lezghia"}
        lg{"Ganda"}
        li{"Limburg"}
        ln{"Lingala"}
        lo{"Lao"}
        lt{"Lithuania"}
        lu{"Luba-Katanga"}
        lv{"Latvian"}
        mad{"Madura"}
        mak{"Makassar"}
        map{"Austronesia"}
        mg{"Malagasi"}
        mga{"Irlandia Abad Pertengahan (900-1200)"}
        mh{"Marshall"}
        mi{"Maori"}
        mis{"Bahasa Lain-lain"}
        mk{"Macedonian"}
        mkh{"Mon-Khmer (Lainnya)"}
        ml{"Malayalam"}
        mn{"Mongolian"}
        mo{"Moldavian"}
        mr{"Marathi"}
        ms{"Malay"}
        mt{"Maltese"}
        my{"Burma"}
        na{"Nauru"}
        nb{"Norwegian Bokmål"}
        ne{"Nepal"}
        ng{"Ndonga"}
        nl{"Belanda"}
        nn{"Norwegian Nynorsk"}
        no{"Norwegian"}
        nv{"Navajo"}
        ny{"Nyanja; Chichewa; Chewa"}
        oj{"Ojibwa"}
        om{"Oromo"}
        or{"Oriya"}
        os{"Ossetic"}
        pa{"Punjabi"}
        paa{"Papuan (Lainnya)"}
        peo{"Persia Kuno (kl.600-400 SM.)"}
        phi{"Filipina (Lainnya)"}
        pi{"Pali"}
        pl{"Polish"}
        ps{"Pashto (Pushto)"}
        pt{"Portugis"}
        qu{"Quechua"}
        rm{"Rhaeto-Romance"}
        rn{"Rundi"}
        ro{"Romanian"}
        ru{"Russian"}
        rw{"Kinyarwanda"}
        sa{"Sanskrit"}
        sc{"Sardinian"}
        sd{"Sindhi"}
        se{"Northern Sami"}
        sg{"Sango"}
        sh{"Serbo-Croatian"}
        si{"Sinhalese"}
        sk{"Slovak"}
        sl{"Slovenian"}
        sm{"Samoan"}
        sn{"Shona"}
        so{"Somali"}
        sq{"Albanian"}
        sr{"Serbian"}
        ss{"Swati"}
        su{"Sundan"}
        sux{"Sumeria"}
        sv{"Swedia"}
        sw{"Swahili"}
        syr{"Syria"}
        ta{"Tamil"}
        te{"Telugu"}
        tg{"Tajik"}
        th{"Thai"}
        ti{"Tigrinya"}
        tk{"Turkmen"}
        tl{"Tagalog"}
        tn{"Tswana"}
        tr{"Turkish"}
        ts{"Tsonga"}
        tt{"Tatar"}
        tw{"Twi"}
        ty{"Tahitian"}
        ug{"Uighur"}
        uk{"Ukrainian"}
        ur{"Urdu"}
        uz{"Uzbek"}
        ve{"Venda"}
        vi{"Vietnamese"}
        vo{"Volapük"}
        wa{"Walloon"}
        wo{"Wolof"}
        xh{"Xhosa"}
        yi{"Yiddish"}
        yo{"Yoruba"}
        za{"Zhuang"}
        zh{"Cina"}
        zu{"Zulu"}
    }
    LocaleScript{
        "Latn",
    }
    NumberElements{
        ",",
        ".",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "‰",
        "∞",
        "�",
        "+",
    }
    NumberPatterns{
        "#,##0.###;-#,##0.###",
        "¤#,##0.00;-¤#,##0.00",
        "#,##0%",
        "#E0",
    }
    Version{"1.2"}
    calendar{
        gregorian{
            DateTimeElements:intvector{
                2,
                1,
            }
            dayNames{
                format{
                    abbreviated{
                        "Min",
                        "Sen",
                        "Sel",
                        "Rab",
                        "Kam",
                        "Jum",
                        "Sab",
                    }
                    wide{
                        "Minggu",
                        "Senin",
                        "Selasa",
                        "Rabu",
                        "Kamis",
                        "Jumat",
                        "Sabtu",
                    }
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Jan",
                        "Feb",
                        "Mar",
                        "Apr",
                        "Mei",
                        "Jun",
                        "Jul",
                        "Agu",
                        "Sep",
                        "Okt",
                        "Nov",
                        "Des",
                    }
                    wide{
                        "Januari",
                        "Februari",
                        "Maret",
                        "April",
                        "Mei",
                        "Juni",
                        "Juli",
                        "Agustus",
                        "September",
                        "Oktober",
                        "November",
                        "Desember",
                    }
                }
            }
        }
    }
}
