﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/id.xml
// *
// ***************************************************************************
id{
    Countries{
        001{"Dunia"}
        002{"Afrika"}
        003{"Amerika Utara"}
        005{"Amerika Selatan"}
        009{"Oseania"}
        011{"Afrika Bagian Barat"}
        013{"Amerika Tengah"}
        014{"Afrika Bagian Timur"}
        015{"Afrika Bagian Utara"}
        017{"Afrika Bagian Tengah"}
        018{"Afrika Bagian Selatan"}
        019{"Amerika"}
        021{"Amerika Bagian Utara"}
        029{"Kepulauan Karibia"}
        030{"Asia Bagian Timur"}
        034{"Asia Bagian Selatan"}
        035{"Asia Tenggara"}
        039{"Eropa Bagian Selatan"}
        053{"Australasia"}
        054{"Melanesia"}
        057{"Wilayah Mikronesia"}
        061{"Polinesia"}
        142{"Asia"}
        143{"Asia Tengah"}
        145{"Asia Bagian Barat"}
        150{"Eropa"}
        151{"Eropa Bagian Timur"}
        154{"Eropa Bagian Utara"}
        155{"Eropa Bagian Barat"}
        419{"Amerika Latin"}
        AC{"Pulau Ascension"}
        AD{"Andorra"}
        AE{"Uni Emirat Arab"}
        AF{"Afganistan"}
        AG{"Antigua dan Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Argentina"}
        AS{"Samoa Amerika"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Kepulauan Aland"}
        AZ{"Azerbaijan"}
        BA{"Bosnia dan Herzegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Belgia"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Saint Barthelemy"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BQ{"Karibia Belanda"}
        BR{"Brasil"}
        BS{"Bahama"}
        BT{"Bhutan"}
        BV{"Pulau Bouvet"}
        BW{"Botswana"}
        BY{"Belarus"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Kepulauan Cocos"}
        CD{"Kongo - Kinshasa"}
        CF{"Republik Afrika Tengah"}
        CG{"Kongo - Brazzaville"}
        CH{"Swiss"}
        CI{"Cote d’Ivoire"}
        CK{"Kepulauan Cook"}
        CL{"Cile"}
        CM{"Kamerun"}
        CN{"Tiongkok"}
        CO{"Kolombia"}
        CP{"Pulau Clipperton"}
        CR{"Kosta Rika"}
        CU{"Kuba"}
        CV{"Tanjung Verde"}
        CW{"Curaçao"}
        CX{"Pulau Christmas"}
        CY{"Siprus"}
        CZ{"Republik Cheska"}
        DE{"Jerman"}
        DG{"Diego Garcia"}
        DJ{"Jibuti"}
        DK{"Denmark"}
        DM{"Dominika"}
        DO{"Republik Dominika"}
        DZ{"Aljazair"}
        EA{"Ceuta dan Melilla"}
        EC{"Ekuador"}
        EE{"Estonia"}
        EG{"Mesir"}
        EH{"Sahara Barat"}
        ER{"Eritrea"}
        ES{"Spanyol"}
        ET{"Etiopia"}
        EU{"Uni Eropa"}
        FI{"Finlandia"}
        FJ{"Fiji"}
        FK{"Kepulauan Malvinas"}
        FM{"Mikronesia"}
        FO{"Kepulauan Faroe"}
        FR{"Prancis"}
        GA{"Gabon"}
        GB{"Inggris"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Guyana Prancis"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Grinlandia"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadeloupe"}
        GQ{"Guinea Ekuatorial"}
        GR{"Yunani"}
        GS{"Georgia Selatan & Kep. Sandwich Selatan"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"Hong Kong SAR Tiongkok"}
        HM{"Pulau Heard dan Kepulauan McDonald"}
        HN{"Honduras"}
        HR{"Kroasia"}
        HT{"Haiti"}
        HU{"Hungaria"}
        IC{"Kepulauan Canary"}
        ID{"Indonesia"}
        IE{"Irlandia"}
        IL{"Israel"}
        IM{"Pulau Man"}
        IN{"India"}
        IO{"Wilayah Inggris di Samudra Hindia"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"Islandia"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Jamaika"}
        JO{"Yordania"}
        JP{"Jepang"}
        KE{"Kenya"}
        KG{"Kirgistan"}
        KH{"Kamboja"}
        KI{"Kiribati"}
        KM{"Komoro"}
        KN{"Saint Kitts dan Nevis"}
        KP{"Korea Utara"}
        KR{"Korea Selatan"}
        KW{"Kuwait"}
        KY{"Kepulauan Cayman"}
        KZ{"Kazakstan"}
        LA{"Laos"}
        LB{"Lebanon"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lituania"}
        LU{"Luksemburg"}
        LV{"Latvia"}
        LY{"Libia"}
        MA{"Maroko"}
        MC{"Monako"}
        MD{"Moldova"}
        ME{"Montenegro"}
        MF{"Saint Martin"}
        MG{"Madagaskar"}
        MH{"Kepulauan Marshall"}
        MK{"Makedonia"}
        ML{"Mali"}
        MM{"Myanmar (Burma)"}
        MN{"Mongolia"}
        MO{"Makau SAR Tiongkok"}
        MP{"Kepulauan Mariana Utara"}
        MQ{"Martinik"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maladewa"}
        MW{"Malawi"}
        MX{"Meksiko"}
        MY{"Malaysia"}
        MZ{"Mozambik"}
        NA{"Namibia"}
        NC{"Kaledonia Baru"}
        NE{"Niger"}
        NF{"Kepulauan Norfolk"}
        NG{"Nigeria"}
        NI{"Nikaragua"}
        NL{"Belanda"}
        NO{"Norwegia"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Selandia Baru"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polinesia Prancis"}
        PG{"Papua Nugini"}
        PH{"Filipina"}
        PK{"Pakistan"}
        PL{"Polandia"}
        PM{"Saint Pierre dan Miquelon"}
        PN{"Kepulauan Pitcairn"}
        PR{"Puerto Riko"}
        PS{"Wilayah Palestina"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Oseania Luar"}
        RE{"Réunion"}
        RO{"Rumania"}
        RS{"Serbia"}
        RU{"Rusia"}
        RW{"Rwanda"}
        SA{"Arab Saudi"}
        SB{"Kepulauan Solomon"}
        SC{"Seychelles"}
        SD{"Sudan"}
        SE{"Swedia"}
        SG{"Singapura"}
        SH{"Saint Helena"}
        SI{"Slovenia"}
        SJ{"Kepulauan Svalbard dan Jan Mayen"}
        SK{"Slovakia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Suriname"}
        SS{"Sudan Selatan"}
        ST{"Sao Tome dan Principe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Suriah"}
        SZ{"Swaziland"}
        TA{"Tristan da Cunha"}
        TC{"Kepulauan Turks dan Caicos"}
        TD{"Cad"}
        TF{"Wilayah Kutub Selatan Prancis"}
        TG{"Togo"}
        TH{"Thailand"}
        TJ{"Tajikistan"}
        TK{"Tokelau"}
        TL{"Timor Leste"}
        TM{"Turkimenistan"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Turki"}
        TT{"Trinidad dan Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzania"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"Kepulauan Terluar A.S."}
        US{"Amerika Serikat"}
        UY{"Uruguay"}
        UZ{"Uzbekistan"}
        VA{"Vatikan"}
        VC{"Saint Vincent dan Grenadines"}
        VE{"Venezuela"}
        VG{"Kepulauan Virgin Inggris"}
        VI{"Kepulauan Virgin A.S."}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Kepulauan Wallis dan Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Yaman"}
        YT{"Mayotte"}
        ZA{"Afrika Selatan"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Wilayah Tidak Dikenal"}
    }
    Countries%short{
        GB{"GB"}
        HK{"Hong Kong"}
        MO{"Makau"}
        PS{"Palestina"}
        US{"A.S."}
    }
    Countries%variant{
        CD{"Kongo (RDK)"}
        CG{"Kongo (Republik)"}
        CI{"Ivory Coast"}
        FK{"Kepulauan Malvinas (Falkland)"}
        MK{"Makedonia (BRY)"}
        TL{"Timor Timur"}
    }
    Version{"2.1.22.93"}
}
