﻿// ***************************************************************************
// *
// * Copyright (C) 2009 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/az.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/az.xml
 */
az{
    Countries{
        001{"Dünya"}
        002{"Afrika"}
        003{"Şimal Amerika"}
        005{"Cənub Amerika"}
        009{"Okeyaniya"}
        011{"Qərb afrika"}
        013{"Orta Amerika"}
        014{"Şərq Afrika"}
        015{"Şimal Afrika"}
        017{"Orta Afrika"}
        018{"018"}
        019{"Amerikalar"}
        021{"021"}
        029{"Kariyıplar"}
        030{"Şərq Asiya"}
        034{"Cənub Asiya"}
        035{"Cənub Şərq Asiya"}
        039{"Cənub Avropa"}
        053{"Avstraliya və Yeni Zelandiya"}
        054{"Melanesya"}
        057{"Mikronesiya reqionu"}
        061{"Polineziya"}
        062{"Cənub Orta Asiya"}
        142{"Aziya"}
        143{"Orta Aziya"}
        145{"Qərb Asiya"}
        150{"Avropa"}
        151{"Şərq Avropa"}
        154{"Şimal Avropa"}
        155{"Qərb Avropa"}
        172{"172"}
        419{"Latın Amerikası və Kariblər"}
        AD{"Andorra"}
        AE{"Birləşmiş Ərəb Emiratları"}
        AF{"Əfqənistan"}
        AG{"Antiqua və Barbuda"}
        AI{"Anquila"}
        AL{"Albaniya"}
        AM{"Ermənistan"}
        AN{"Hollandiya antilleri"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Arqentina"}
        AS{"Amerika Samoası"}
        AT{"Avstriya"}
        AU{"Avstraliya"}
        AW{"Aruba"}
        AX{"Aland Adaları"}
        AZ{"Azərbaycan"}
        BA{"Bosniya və Herzokovina"}
        BB{"Barbados"}
        BD{"Banqladeş"}
        BE{"Belçika"}
        BF{"Burkina Faso"}
        BG{"Bolqariya"}
        BH{"Bahreyn"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Seynt Bartelemey"}
        BM{"Bermuda"}
        BN{"Bruney"}
        BO{"Boliviya"}
        BR{"Braziliya"}
        BS{"Bahamalar"}
        BT{"Butan"}
        BV{"Bove Adası"}
        BW{"Botsvana"}
        BY{"Belarus"}
        BZ{"Beliz"}
        CA{"Kanada"}
        CC{"Kokos Adaları"}
        CD{"Konqo - Kinşasa"}
        CF{"Orta Afrika respublikası"}
        CG{"Konqo - Brazavil"}
        CH{"isveçriya"}
        CI{"İvori Sahili"}
        CK{"Kuk Adaları"}
        CL{"Çile"}
        CM{"Kamerun"}
        CN{"Çin"}
        CO{"Kolumbiya"}
        CR{"Kosta Rika"}
        CU{"Kuba"}
        CV{"Kape Verde"}
        CX{"Çristmas Adası"}
        CY{"Kipr"}
        CZ{"Çex respublikası"}
        DE{"Almaniya"}
        DJ{"Ciboti"}
        DK{"Danemarka"}
        DM{"Dominika"}
        DO{"Dominik Respublikası"}
        DZ{"Cezayır"}
        EC{"Ekvador"}
        EE{"Estoniya"}
        EG{"Misir"}
        EH{"Qərb Sahara"}
        ER{"Eritreya"}
        ES{"İspaniya"}
        ET{"Efiopiya"}
        FI{"Finlandiya"}
        FJ{"Fici"}
        FK{"Folkland Adaları"}
        FM{"Mikronesiya"}
        FO{"Faro Adaları"}
        FR{"Fransa"}
        GA{"Qabon"}
        GB{"Birləşmiş Krallıq"}
        GD{"Qrenada"}
        GE{"Gürcüstan"}
        GF{"Fransız Quyanası"}
        GG{"Görnsey"}
        GH{"Qana"}
        GI{"Gibraltar"}
        GL{"Qrinland"}
        GM{"Qambiya"}
        GN{"Qvineya"}
        GP{"Qvadalup"}
        GQ{"Ekvator Qineya"}
        GR{"Yunanıstan"}
        GS{"Cənub Gürcüstan və Cənub Sandvilç Adaları"}
        GT{"Qvatemala"}
        GU{"Quam"}
        GW{"Qvineya-Bisau"}
        GY{"Quyana"}
        HK{"Honk Konq çina"}
        HM{"Hörd və Makdonald Adaları"}
        HN{"Qonduras"}
        HR{"Xorvatiya"}
        HT{"Haiti"}
        HU{"Macaristan"}
        ID{"İndoneziya"}
        IE{"İrlandiya"}
        IL{"İzrail"}
        IM{"Man Adası"}
        IN{"Hindistan"}
        IO{"Britaniya-Hindistan Okeanik territoriyası"}
        IQ{"İrak"}
        IR{"İran"}
        IS{"İslandiya"}
        IT{"İtaliya"}
        JE{"Cörsi"}
        JM{"Yamayka"}
        JO{"Ürdün"}
        JP{"Yaponiya"}
        KE{"Kenya"}
        KG{"Kırqızstan"}
        KH{"Kambodiya"}
        KI{"Kiribati"}
        KM{"Komoros"}
        KN{"Seynt Kits və Nevis"}
        KP{"Şimal Koreya"}
        KR{"Cənub Koreya"}
        KW{"Kuveyt"}
        KY{"Kayman Adaları"}
        KZ{"Kazaxstan"}
        LA{"Laos"}
        LB{"Lebanon"}
        LC{"Seynt Lusiya"}
        LI{"Lixtenşteyn"}
        LK{"Şri Lanka"}
        LR{"Liberiya"}
        LS{"Lesoto"}
        LT{"Litva"}
        LU{"Lüksemburq"}
        LV{"Latviya"}
        LY{"Libya"}
        MA{"Morokko"}
        MC{"Monako"}
        MD{"Moldova"}
        ME{"Monteneqro"}
        MF{"Seynt Martin"}
        MG{"Madaqaskar"}
        MH{"Marşal Adaları"}
        MK{"Masedoniya"}
        ML{"Mali"}
        MM{"Myanmar"}
        MN{"Monqoliya"}
        MO{"Makao Çina"}
        MP{"Şimal Mariana Adaları"}
        MQ{"Martiniqu"}
        MR{"Mavritaniya"}
        MS{"Montserat"}
        MT{"Malta"}
        MU{"Mavritis"}
        MV{"Maldiv"}
        MW{"Malavi"}
        MX{"Meksika"}
        MY{"Malaysiya"}
        MZ{"Mazambik"}
        NA{"Namibiya"}
        NC{"Yeni Kaledoniya"}
        NE{"nijer"}
        NF{"Norfolk Adası"}
        NG{"Nijeriya"}
        NI{"Nikaraqua"}
        NL{"Hollandiya"}
        NO{"Norvec"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niye"}
        NZ{"Yeni Zelandiya"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Fransız Polineziya"}
        PG{"Papua Yeni Qvineya"}
        PH{"Filipin"}
        PK{"Pakistan"}
        PL{"Polşa"}
        PM{"Seynt Piyer və Mikelon"}
        PN{"Pitkarn"}
        PR{"Puerto Riko"}
        PS{"Fələstin Bölqüsü"}
        PT{"Portuqal"}
        PW{"Palav"}
        PY{"Paraqvay"}
        QA{"Qatar"}
        QO{"Uzak Okeyaniya"}
        QU{"Avropa Birləşliyi"}
        RE{"Reyunion"}
        RO{"Romaniya"}
        RS{"Serbiya"}
        RU{"Rusiya"}
        RW{"Rvanda"}
        SA{"Saudi Ərəbistan"}
        SB{"Solomon Adaları"}
        SC{"Seyçels"}
        SD{"sudan"}
        SE{"isveç"}
        SG{"Sinqapur"}
        SH{"Seynt Elena"}
        SI{"Sloveniya"}
        SJ{"svalbard və yan mayen"}
        SK{"Slovakiya"}
        SL{"Siyera Leon"}
        SM{"San Marino"}
        SN{"Seneqal"}
        SO{"Somaliya"}
        SR{"surinamə"}
        ST{"Sao Tom və Prinsip"}
        SV{"El Salvador"}
        SY{"siriya"}
        SZ{"svazilənd"}
        TC{"Türk və Kaykos Adaları"}
        TD{"Çad"}
        TF{"Fransız Cənub teritoriyası"}
        TG{"Toqo"}
        TH{"tayland"}
        TJ{"tacikistan"}
        TK{"Tokelau"}
        TL{"Şərq Timor"}
        TM{"Türkmənistan"}
        TN{"Tunisiya"}
        TO{"Tonqa"}
        TR{"Türkiya"}
        TT{"Trinidan və Tobaqo"}
        TV{"Tuvalu"}
        TW{"tayvan"}
        TZ{"tanzaniya"}
        UA{"Ukraina"}
        UG{"Uqanda"}
        UM{"Birləşmiş Ştatların uzaq adaları"}
        US{"Amerika Birləşmiş Ştatları"}
        UY{"Uruqvay"}
        UZ{"Özbəkistan"}
        VA{"Vatikan"}
        VC{"Seynt Vinsent və Qrenada"}
        VE{"Venesuela"}
        VG{"Britaniya Virgin Adaları"}
        VI{"ABŞ Virqin Adaları"}
        VN{"Vyetnam"}
        VU{"Vanuatu"}
        WF{"Valis və Futuna"}
        WS{"Samoa"}
        YE{"Yemen"}
        YT{"Mayot"}
        ZA{"Cənub Afrika"}
        ZM{"Zambiya"}
        ZW{"Zimbabve"}
        ZZ{"bilinmir"}
    }
    Version{"2.0.42.82"}
}
