﻿// ***************************************************************************
// *
// * 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 SAR China"}
        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 China"}
        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"}
    }
    CountriesShort{
        GB{"GB"}
        HK{"Hong Kong"}
        MO{"Makau"}
        PS{"Palestina"}
        US{"A.S."}
    }
    Version{"2.0.98.52"}
}
