﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
fy{
    Countries{
        001{"Wrâld"}
        002{"Afrika"}
        003{"Noard-Amerika"}
        005{"Sûd-Amerika"}
        009{"Oceanië"}
        011{"West-Afrika"}
        013{"Midden-Amerika"}
        014{"East-Afrika"}
        015{"Noard-Afrika"}
        017{"Sintraal-Afrika"}
        018{"Sûdelijk Afrika"}
        019{"Amerika"}
        021{"Noardlik Amerika"}
        029{"Karibysk gebiet"}
        030{"East-Azië"}
        034{"Sûd-Azië"}
        035{"Sûdoost-Azië"}
        039{"Sûd-Europa"}
        053{"Australazië"}
        054{"Melanesië"}
        057{"Micronesyske regio"}
        061{"Polynesië"}
        142{"Azië"}
        143{"Sintraal-Azië"}
        145{"West-Azië"}
        150{"Europa"}
        151{"East-Europa"}
        154{"Noard-Europa"}
        155{"West-Europa"}
        419{"Latynsk-Amearika"}
        AC{"Ascension"}
        AD{"Andorra"}
        AE{"Verenigde Arabyske Emiraten"}
        AF{"Afghanistan"}
        AG{"Antigua en Barbuda"}
        AI{"Anguilla"}
        AL{"Albanië"}
        AM{"Armenië"}
        AO{"Angola"}
        AQ{"Antarctica"}
        AR{"Argentinië"}
        AS{"Amerikaansk Samoa"}
        AT{"Eastenryk"}
        AU{"Australië"}
        AW{"Aruba"}
        AX{"Ålân"}
        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{"Karibysk Nederlân"}
        BR{"Brazilië"}
        BS{"Bahama’s"}
        BT{"Bhutan"}
        BV{"Bouveteilân"}
        BW{"Botswana"}
        BY{"Wit-Ruslân"}
        BZ{"Belize"}
        CA{"Canada"}
        CC{"Kokosilanen"}
        CD{"Congo-Kinshasa"}
        CF{"Sintraal-Afrikaanske Republyk"}
        CG{"Congo-Brazzaville"}
        CH{"Switserlân"}
        CI{"Ivoorkust"}
        CK{"Cookeilannen"}
        CL{"Chili"}
        CM{"Kameroen"}
        CN{"Sina"}
        CO{"Kolombia"}
        CP{"Clipperton"}
        CR{"Costa Rica"}
        CU{"Kuba"}
        CV{"Kaapverdië"}
        CW{"Curaçao"}
        CX{"Krysteilan"}
        CY{"Syprus"}
        CZ{"Tsjechje"}
        DE{"Dútslân"}
        DG{"Diego Garcia"}
        DJ{"Djibouti"}
        DK{"Denemarken"}
        DM{"Dominika"}
        DO{"Dominikaanske Republyk"}
        DZ{"Algerije"}
        EA{"Ceuta en Melilla"}
        EC{"Ecuador"}
        EE{"Estlân"}
        EG{"Egypte"}
        EH{"Westelijke Sahara"}
        ER{"Eritrea"}
        ES{"Spanje"}
        ET{"Ethiopië"}
        EU{"Europeeske Unie"}
        FI{"Finlân"}
        FJ{"Fiji"}
        FK{"Falklâneilannen"}
        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{"Grienlân"}
        GM{"Gambia"}
        GN{"Guinee"}
        GP{"Guadeloupe"}
        GQ{"Equatoriaal-Guinea"}
        GR{"Grikelân"}
        GS{"Sûd-Georgia en Sûdlike Sandwicheilannen"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinee-Bissau"}
        GY{"Guyana"}
        HK{"Hongkong SAR van Sina"}
        HM{"Heard- en McDonaldeilannen"}
        HN{"Honduras"}
        HR{"Kroatië"}
        HT{"Haïti"}
        HU{"Hongarije"}
        IC{"Kanaryske Eilânnen"}
        ID{"Yndonesië"}
        IE{"Ierlân"}
        IL{"Israël"}
        IM{"Isle of Man"}
        IN{"India"}
        IO{"Britse Gebieden yn de Indyske Oseaan"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"Yslân"}
        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{"Noard-Korea"}
        KR{"Sûd-Korea"}
        KW{"Koeweit"}
        KY{"Caymaneilannen"}
        KZ{"Kazachstan"}
        LA{"Laos"}
        LB{"Libanon"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Litouwen"}
        LU{"Luxemburg"}
        LV{"Letlân"}
        LY{"Libië"}
        MA{"Marokko"}
        MC{"Monaco"}
        MD{"Moldavië"}
        ME{"Montenegro"}
        MF{"Saint-Martin"}
        MG{"Madeiaskar"}
        MH{"Marshalleilannen"}
        ML{"Mali"}
        MM{"Myanmar (Birma)"}
        MN{"Mongolië"}
        MO{"Macao SAR van Sina"}
        MP{"Noardlike Marianeneilannen"}
        MQ{"Martinique"}
        MR{"Mauritanië"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldiven"}
        MW{"Malawi"}
        MX{"Mexico"}
        MY{"Maleisië"}
        MZ{"Mozambique"}
        NA{"Namibië"}
        NC{"Nij-Caledonië"}
        NE{"Niger"}
        NF{"Norfolkeilân"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Nederlân"}
        NO{"Noarwegen"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nij-Seelân"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Frans-Polynesië"}
        PG{"Papoea-Nij-Guinea"}
        PH{"Filipijnen"}
        PK{"Pakistan"}
        PL{"Polen"}
        PM{"Saint-Pierre en Miquelon"}
        PN{"Pitcairneilannen"}
        PR{"Puerto Rico"}
        PS{"Palestynske gebieten"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Oerig Oceanië"}
        RE{"Réunion"}
        RO{"Roemenië"}
        RS{"Servië"}
        RU{"Ruslân"}
        RW{"Rwanda"}
        SA{"Saoedi-Arabië"}
        SB{"Salomonseilannen"}
        SC{"Seychellen"}
        SD{"Soedan"}
        SE{"Zweden"}
        SG{"Singapore"}
        SH{"Sint-Helena"}
        SI{"Slovenië"}
        SJ{"Spitsbergen en Jan Mayen"}
        SK{"Slowakije"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalië"}
        SR{"Suriname"}
        SS{"Sûd-Soedan"}
        ST{"Sao Tomé en Principe"}
        SV{"El Salvador"}
        SX{"Sint-Maarten"}
        SY{"Syrië"}
        SZ{"Swazilân"}
        TA{"Tristan da Cunha"}
        TC{"Turks- en Caicoseilannen"}
        TD{"Tsjaad"}
        TF{"Franse Gebieden in de zuidelijke Indyske Oseaan"}
        TG{"Togo"}
        TH{"Thailân"}
        TJ{"Tadzjikistan"}
        TK{"Tokelau"}
        TL{"East-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{"Lyts ôflizzen eilannen fan de Ferienigde Staten"}
        US{"Ferienigde Staten"}
        UY{"Uruguay"}
        UZ{"Oezbekistan"}
        VA{"Vaticaanstêd"}
        VC{"Saint Vincent en de Grenadines"}
        VE{"Venezuela"}
        VG{"Britse Maagdeneilannen"}
        VI{"Amerikaanske Maagdeneilannen"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis en Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Jemen"}
        YT{"Mayotte"}
        ZA{"Sûd-Afrika"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Unbekend gebiet"}
    }
    Countries%short{
        GB{"VK"}
        HK{"Hongkong"}
        MO{"Macao"}
        PS{"Palestina"}
        US{"VS"}
    }
    Countries%variant{
        CD{"Congo (DRC)"}
        CG{"Congo (Republyk)"}
        FK{"Falklâneilannen (Islas Malvinas)"}
    }
    Version{"37"}
}
