﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/naq.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/naq.xml
 */
naq{
    Countries{
        AD{"Andorrab"}
        AE{"United Arab Emirates"}
        AF{"Afghanistanni"}
        AG{"Antiguab tsî Barbudab"}
        AI{"Anguillab"}
        AL{"Albaniab"}
        AM{"Armeniab"}
        AN{"Netherlands Antilles"}
        AO{"Angolab"}
        AR{"Argentinab"}
        AS{"Americab Samoab"}
        AT{"Austriab"}
        AU{"Australieb"}
        AW{"Arubab"}
        AZ{"Azerbaijanni"}
        BA{"Bosniab tsî Herzegovinab"}
        BB{"Barbados"}
        BD{"Banglades"}
        BE{"Belgiummi"}
        BF{"Burkina Fasob"}
        BG{"Bulgariab"}
        BH{"Bahrain"}
        BI{"Burundib"}
        BJ{"Benins"}
        BM{"Bermudas"}
        BN{"Brunei"}
        BO{"Boliviab"}
        BR{"Braziliab"}
        BS{"Bahamas"}
        BT{"Bhutans"}
        BW{"Botswanab"}
        BY{"Belarus"}
        BZ{"Belize"}
        CA{"Kanadab"}
        CD{"Democratic Republic of the Congo"}
        CF{"Central African Republiki"}
        CG{"Congob"}
        CH{"Switzerlandi"}
        CI{"Ivoorkusi"}
        CK{"Cook Islands"}
        CL{"Chilib"}
        CM{"Cameroonni"}
        CN{"Chinab"}
        CO{"Colombiab"}
        CR{"Costa Rica"}
        CU{"Cubab"}
        CV{"Cape Verde Islands"}
        CY{"Cyprus"}
        CZ{"Czech Republiki"}
        DE{"Duitslandi"}
        DJ{"Djibouti"}
        DK{"Denmarki"}
        DM{"Dominicab"}
        DO{"Dominican Republic"}
        DZ{"Algeriab"}
        EC{"Ecuadori"}
        EE{"Estoniab"}
        EG{"Egipteb"}
        ER{"Eritreab"}
        ES{"Spanieb"}
        ET{"Ethiopiab"}
        FI{"Finlandi"}
        FJ{"Fijib"}
        FK{"Falkland Islands"}
        FM{"Micronesia"}
        FR{"Frankreiki"}
        GA{"Gaboni"}
        GB{"United Kingdom"}
        GD{"Grenada"}
        GE{"Georgiab"}
        GF{"French Guiana"}
        GH{"Ghanab"}
        GI{"Gibraltar"}
        GL{"Greenland"}
        GM{"Gambiab"}
        GN{"Guineab"}
        GP{"Guadeloupe"}
        GQ{"Equatorial Guineab"}
        GR{"Xrikelandi"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HN{"Honduras"}
        HR{"Croatiab"}
        HT{"Haiti"}
        HU{"Hongareieb"}
        ID{"Indonesiab"}
        IE{"Irlandi"}
        IL{"Israeli"}
        IN{"Indiab"}
        IO{"British Indian Ocean Territory"}
        IQ{"Iraqi"}
        IR{"Iranni"}
        IS{"Iceland"}
        IT{"Italiab"}
        JM{"Jamaicab"}
        JO{"Jordanni"}
        JP{"Japanni"}
        KE{"Kenyab"}
        KG{"Kyrgyzstanni"}
        KH{"Cambodiab"}
        KI{"Kiribati"}
        KM{"Comoros"}
        KN{"Saint Kitts and Nevis"}
        KP{"Koreab, Noord"}
        KR{"Koreab, Suid"}
        KW{"Kuwaiti"}
        KY{"Cayman Islands"}
        KZ{"Kazakhstanni"}
        LA{"Laos"}
        LB{"Lebanonni"}
        LC{"Saint Lucia"}
        LI{"Liechtensteinni"}
        LK{"Sri Lankab"}
        LR{"Liberiab"}
        LS{"Lesothob"}
        LT{"Lithuaniab"}
        LU{"Luxembourgi"}
        LV{"Latvia"}
        LY{"Libyab"}
        MA{"Morocco"}
        MC{"Monaco"}
        MD{"Moldova"}
        MG{"Madagascari"}
        MH{"Marshall Islands"}
        MK{"Macedoniab"}
        ML{"Malib"}
        MM{"Myanmar"}
        MN{"Mongolia"}
        MP{"Northern Mariana Islands"}
        MQ{"Martinique"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldives"}
        MW{"Malawib"}
        MX{"Mexicob"}
        MY{"Malaysiab"}
        MZ{"Mozambiki"}
        NA{"Namibiab"}
        NC{"New Caledonia"}
        NE{"Nigeri"}
        NF{"Norfolk Island"}
        NG{"Nigerieb"}
        NI{"Nicaraguab"}
        NL{"Netherlands"}
        NO{"Noorweeb"}
        NP{"Nepali"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"New Zealandi"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Perub"}
        PF{"French Polynesia"}
        PG{"Papua New Guineab"}
        PH{"Philippinni"}
        PK{"Pakistanni"}
        PL{"Polandi"}
        PM{"Saint Pierre and Miquelon"}
        PN{"Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Palestinian West Bank and Gaza"}
        PT{"Portugali"}
        PW{"Palau"}
        PY{"Paraguaib"}
        QA{"Qatar"}
        RE{"Réunion"}
        RO{"Romania"}
        RU{"Rasiab"}
        RW{"Rwandab"}
        SA{"Saudi Arabiab"}
        SB{"Solomon Islands"}
        SC{"Seychelles"}
        SD{"Sudanni"}
        SE{"Swedeb"}
        SG{"Singapore"}
        SH{"Saint Helena"}
        SI{"Slovenia"}
        SK{"Slovakia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegali"}
        SO{"Somaliab"}
        SR{"Suriname"}
        ST{"São Tomé and Príncipe"}
        SV{"El Salvadori"}
        SY{"Syriab"}
        SZ{"Swazilandi"}
        TC{"Turks and Caicos Islands"}
        TD{"Chadi"}
        TG{"Togob"}
        TH{"Thailandi"}
        TJ{"Tajikistan"}
        TK{"Tokelau"}
        TL{"East Timor"}
        TM{"Turkmenistan"}
        TN{"Tunisiab"}
        TO{"Tonga"}
        TR{"Turkeieb"}
        TT{"Trinidad and Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzaniab"}
        UA{"Ukraine"}
        UG{"Ugandab"}
        US{"Amerikab"}
        UY{"Uruguaib"}
        UZ{"Uzbekistan"}
        VA{"Vatican State"}
        VC{"Saint Vincent and the Grenadines"}
        VE{"Venezuelab"}
        VG{"British Virgin Islands"}
        VI{"U.S. Virgin Islands"}
        VN{"Vietnammi"}
        VU{"Vanuatu"}
        WF{"Wallis and Futuna"}
        WS{"Samoa"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Suid Afrikab"}
        ZM{"Zambiab"}
        ZW{"Zimbabweb"}
    }
    Version{"2.0.92.87"}
}
