﻿// ***************************************************************************
// *
// * Copyright (C) 2010 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/nl.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/nl.xml
 */
nl{
    Countries{
        001{"Wereld"}
        002{"Afrika"}
        003{"Noord-Amerika"}
        005{"Zuid-Amerika"}
        009{"Oceanië"}
        011{"West-Afrika"}
        013{"Midden-Amerika"}
        014{"Oost-Afrika"}
        015{"Noord-Afrika"}
        017{"Centraal-Afrika"}
        018{"Zuidelijk Afrika"}
        019{"Amerika"}
        021{"Noordelijk Amerika"}
        029{"Caribisch gebied"}
        030{"Oost-Azië"}
        034{"Zuid-Azië"}
        035{"Zuidoost-Azië"}
        039{"Zuid-Europa"}
        053{"Australië en Nieuw-Zeeland"}
        054{"Melanesië"}
        057{"Micronesische regio"}
        061{"Polynesië"}
        062{"Zuidelijk Centraal-Azië"}
        142{"Azië"}
        143{"Centraal-Azië"}
        145{"West-Azië"}
        150{"Europa"}
        151{"Oost-Europa"}
        154{"Noord-Europa"}
        155{"West-Europa"}
        172{"Gemenebest van Onafhankelijke Staten"}
        419{"Latijns-Amerika en het Caribisch gebied"}
        830{"Kanaaleilanden"}
        AC{"Ascension"}
        AD{"Andorra"}
        AE{"Verenigde Arabische Emiraten"}
        AF{"Afghanistan"}
        AG{"Antigua en Barbuda"}
        AI{"Anguilla"}
        AL{"Albanië"}
        AM{"Armenië"}
        AN{"Nederlandse Antillen"}
        AO{"Angola"}
        AQ{"Antarctica"}
        AR{"Argentinië"}
        AS{"Amerikaans Samoa"}
        AT{"Oostenrijk"}
        AU{"Australië"}
        AW{"Aruba"}
        AX{"Alandeilanden"}
        AZ{"Azerbeidzjan"}
        BA{"Bosnië en Herzegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"België"}
        BF{"Burkina Faso"}
        BG{"Bulgarije"}
        BH{"Bahrein"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Saint Barthélemy"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BR{"Brazilië"}
        BS{"Bahama’s"}
        BT{"Bhutan"}
        BV{"Bouveteiland"}
        BW{"Botswana"}
        BY{"Wit-Rusland"}
        BZ{"Belize"}
        CA{"Canada"}
        CC{"Cocoseilanden"}
        CD{"Congo-Kinshasa"}
        CF{"Centraal-Afrikaanse Republiek"}
        CG{"Congo"}
        CH{"Zwitserland"}
        CI{"Ivoorkust"}
        CK{"Cookeilanden"}
        CL{"Chili"}
        CM{"Kameroen"}
        CN{"China"}
        CO{"Colombia"}
        CP{"Clipperton"}
        CR{"Costa Rica"}
        CS{"Servië en Montenegro"}
        CU{"Cuba"}
        CV{"Kaapverdië"}
        CX{"Christmaseiland"}
        CY{"Cyprus"}
        CZ{"Tsjechië"}
        DE{"Duitsland"}
        DG{"Diego Garcia"}
        DJ{"Djibouti"}
        DK{"Denemarken"}
        DM{"Dominica"}
        DO{"Dominicaanse Republiek"}
        DZ{"Algerije"}
        EA{"Ceuta en Melilla"}
        EC{"Ecuador"}
        EE{"Estland"}
        EG{"Egypte"}
        EH{"Westelijke Sahara"}
        ER{"Eritrea"}
        ES{"Spanje"}
        ET{"Ethiopië"}
        EU{"Europese Unie"}
        FI{"Finland"}
        FJ{"Fiji"}
        FK{"Falklandeilanden"}
        FM{"Micronesië"}
        FO{"Faeröer"}
        FR{"Frankrijk"}
        GA{"Gabon"}
        GB{"Verenigd Koninkrijk"}
        GD{"Grenada"}
        GE{"Georgië"}
        GF{"Frans-Guyana"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Groenland"}
        GM{"Gambia"}
        GN{"Guinee"}
        GP{"Guadeloupe"}
        GQ{"Equatoriaal-Guinea"}
        GR{"Griekenland"}
        GS{"Zuid-Georgië en Zuidelijke Sandwicheilanden"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinee-Bissau"}
        GY{"Guyana"}
        HK{"Hongkong SAR van China"}
        HM{"Heard- en McDonaldeilanden"}
        HN{"Honduras"}
        HR{"Kroatië"}
        HT{"Haïti"}
        HU{"Hongarije"}
        IC{"Canarische Eilanden"}
        ID{"Indonesië"}
        IE{"Ierland"}
        IL{"Israël"}
        IM{"Isle of Man"}
        IN{"India"}
        IO{"Britse Gebieden in de Indische Oceaan"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"IJsland"}
        IT{"Italië"}
        JE{"Jersey"}
        JM{"Jamaica"}
        JO{"Jordanië"}
        JP{"Japan"}
        KE{"Kenia"}
        KG{"Kirgizië"}
        KH{"Cambodja"}
        KI{"Kiribati"}
        KM{"Comoren"}
        KN{"Saint Kitts en Nevis"}
        KP{"Noord-Korea"}
        KR{"Zuid-Korea"}
        KW{"Koeweit"}
        KY{"Caymaneilanden"}
        KZ{"Kazachstan"}
        LA{"Laos"}
        LB{"Libanon"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Litouwen"}
        LU{"Luxemburg"}
        LV{"Letland"}
        LY{"Libië"}
        MA{"Marokko"}
        MC{"Monaco"}
        MD{"Moldavië"}
        ME{"Montenegro"}
        MF{"Sint-Maarten"}
        MG{"Madagaskar"}
        MH{"Marshalleilanden"}
        MK{"Macedonië"}
        ML{"Mali"}
        MM{"Myanmar"}
        MN{"Mongolië"}
        MO{"Macao SAR van China"}
        MP{"Noordelijke Marianeneilanden"}
        MQ{"Martinique"}
        MR{"Mauritanië"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldiven"}
        MW{"Malawi"}
        MX{"Mexico"}
        MY{"Maleisië"}
        MZ{"Mozambique"}
        NA{"Namibië"}
        NC{"Nieuw-Caledonië"}
        NE{"Niger"}
        NF{"Norfolkeiland"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Nederland"}
        NO{"Noorwegen"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nieuw-Zeeland"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Frans-Polynesië"}
        PG{"Papoea-Nieuw-Guinea"}
        PH{"Filipijnen"}
        PK{"Pakistan"}
        PL{"Polen"}
        PM{"Saint Pierre en Miquelon"}
        PN{"Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Palestijns Gebied"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Oceanië (overige)"}
        RE{"Réunion"}
        RO{"Roemenië"}
        RS{"Servië"}
        RU{"Rusland"}
        RW{"Rwanda"}
        SA{"Saoedi-Arabië"}
        SB{"Salomonseilanden"}
        SC{"Seychellen"}
        SD{"Soedan"}
        SE{"Zweden"}
        SG{"Singapore"}
        SH{"Sint-Helena"}
        SI{"Slovenië"}
        SJ{"Svalbard en Jan Mayen"}
        SK{"Slowakije"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalië"}
        SR{"Suriname"}
        ST{"Sao Tomé en Principe"}
        SV{"El Salvador"}
        SY{"Syrië"}
        SZ{"Swaziland"}
        TA{"Tristan da Cunha"}
        TC{"Turks- en Caicoseilanden"}
        TD{"Tsjaad"}
        TF{"Franse Gebieden in de zuidelijke Indische Oceaan"}
        TG{"Togo"}
        TH{"Thailand"}
        TJ{"Tadzjikistan"}
        TK{"Tokelau"}
        TL{"Oost-Timor"}
        TM{"Turkmenistan"}
        TN{"Tunesië"}
        TO{"Tonga"}
        TR{"Turkije"}
        TT{"Trinidad en Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzania"}
        UA{"Oekraïne"}
        UG{"Oeganda"}
        UM{"Amerikaanse kleinere afgelegen eilanden"}
        US{"Verenigde Staten"}
        UY{"Uruguay"}
        UZ{"Oezbekistan"}
        VA{"Vaticaanstad"}
        VC{"Saint Vincent en de Grenadines"}
        VE{"Venezuela"}
        VG{"Britse Maagdeneilanden"}
        VI{"Amerikaanse Maagdeneilanden"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis en Futuna"}
        WS{"Samoa"}
        YE{"Jemen"}
        YT{"Mayotte"}
        ZA{"Zuid-Afrika"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Onbekend of onjuist gebied"}
    }
    Version{"2.0.49.58"}
}
