﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/nl.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/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{"Australazië"}
        054{"Melanesië"}
        057{"Micronesische regio"}
        061{"Polynesië"}
        142{"Azië"}
        143{"Centraal-Azië"}
        145{"West-Azië"}
        150{"Europa"}
        151{"Oost-Europa"}
        154{"Noord-Europa"}
        155{"West-Europa"}
        419{"Latijns-Amerika"}
        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{"Ålandeilanden"}
        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"}
        BQ{"Caribisch Nederland"}
        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-Brazzaville"}
        CH{"Zwitserland"}
        CI{"Ivoorkust"}
        CK{"Cookeilanden"}
        CL{"Chili"}
        CM{"Kameroen"}
        CN{"China"}
        CO{"Colombia"}
        CP{"Clipperton"}
        CR{"Costa Rica"}
        CU{"Cuba"}
        CV{"Kaapverdië"}
        CW{"Curaçao"}
        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-Georgia 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{"Saint-Martin"}
        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{"Pitcairneilanden"}
        PR{"Puerto Rico"}
        PS{"Palestijnse gebieden"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Overig Oceanië"}
        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"}
        SS{"Zuid-Soedan"}
        ST{"Sao Tomé en Principe"}
        SV{"El Salvador"}
        SX{"Sint-Maarten"}
        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{"Kleine afgelegen eilanden van de Verenigde Staten"}
        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"}
        XK{"Kosovo"}
        YE{"Jemen"}
        YT{"Mayotte"}
        ZA{"Zuid-Afrika"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Onbekend gebied"}
    }
    Version{"2.0.85.93"}
}
