﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/id.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/id.xml
 */
id{
    Countries{
        001{"Dunia"}
        002{"Afrika"}
        003{"Amerika Utara"}
        005{"Amerika Selatan"}
        009{"Oseania"}
        011{"Afrika Barat"}
        013{"Amerika Tengah"}
        014{"Afrika Timur"}
        015{"Afrika Utara"}
        017{"Afrika Tengah"}
        018{"Afrika Bagian Selatan"}
        019{"Amerika"}
        021{"Amerika Bagian Utara"}
        029{"Kepulauan Karibia"}
        030{"Asia Timur"}
        034{"Asia Selatan"}
        035{"Asia Tenggara"}
        039{"Eropa Selatan"}
        053{"Australasia"}
        054{"Melanesia"}
        057{"Wilayah Mikronesia"}
        061{"Polinesia"}
        142{"Asia"}
        143{"Asia Tengah"}
        145{"Asia Barat"}
        150{"Eropa"}
        151{"Eropa Timur"}
        154{"Eropa Utara"}
        155{"Eropa 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"}
        AN{"Antilla Belanda"}
        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{"China"}
        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 dan Kepulauan Sandwich Selatan"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"Hong Kong"}
        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"}
        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{"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"}
    }
    CountriesShort{
        GB{"GB"}
        US{"A.S."}
    }
    Version{"2.0.98.52"}
}
