﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/tr.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/tr.xml
 */
tr{
    Countries{
        001{"Dünya"}
        002{"Afrika"}
        003{"Kuzey Amerika"}
        005{"Güney Amerika"}
        009{"Okyanusya"}
        011{"Batı Afrika"}
        013{"Orta Amerika"}
        014{"Doğu Afrika"}
        015{"Kuzey Afrika"}
        017{"Orta Afrika"}
        018{"Afrika'nın Güneyi"}
        019{"Amerika"}
        021{"Amerika'nın Kuzeyi"}
        029{"Karayipler"}
        030{"Doğu Asya"}
        034{"Güney Asya"}
        035{"Güneydoğu Asya"}
        039{"Güney Avrupa"}
        053{"Avustralasya"}
        054{"Melanezya"}
        057{"Mikronezya"}
        061{"Polinezya"}
        142{"Asya"}
        143{"Orta Asya"}
        145{"Batı Asya"}
        150{"Avrupa"}
        151{"Doğu Avrupa"}
        154{"Kuzey Avrupa"}
        155{"Batı Avrupa"}
        419{"Latin Amerika"}
        AC{"Ascension Adası"}
        AD{"Andorra"}
        AE{"Birleşik Arap Emirlikleri"}
        AF{"Afganistan"}
        AG{"Antigua ve Barbuda"}
        AI{"Anguilla"}
        AL{"Arnavutluk"}
        AM{"Ermenistan"}
        AN{"Hollanda Antilleri"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Arjantin"}
        AS{"Amerikan Samoası"}
        AT{"Avusturya"}
        AU{"Avustralya"}
        AW{"Aruba"}
        AX{"Åland Adaları"}
        AZ{"Azerbaycan"}
        BA{"Bosna Hersek"}
        BB{"Barbados"}
        BD{"Bangladeş"}
        BE{"Belçika"}
        BF{"Burkina Faso"}
        BG{"Bulgaristan"}
        BH{"Bahreyn"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Saint Barthelemy"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivya"}
        BQ{"Karayip Hollanda"}
        BR{"Brezilya"}
        BS{"Bahamalar"}
        BT{"Butan"}
        BV{"Bouvet Adası"}
        BW{"Botsvana"}
        BY{"Beyaz Rusya"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Cocos [Keeling] Adaları"}
        CD{"Kongo - Kinşasa"}
        CF{"Orta Afrika Cumhuriyeti"}
        CG{"Kongo - Brazavil"}
        CH{"İsviçre"}
        CI{"Fildişi Sahili"}
        CK{"Cook Adaları"}
        CL{"Şili"}
        CM{"Kamerun"}
        CN{"Çin"}
        CO{"Kolombiya"}
        CP{"Clipperton Adası"}
        CR{"Kosta Rika"}
        CU{"Küba"}
        CV{"Cape Verde"}
        CW{"Curaçao"}
        CX{"Christmas Adası"}
        CY{"Güney Kıbrıs Rum Kesimi"}
        CZ{"Çek Cumhuriyeti"}
        DE{"Almanya"}
        DG{"Diego Garcia"}
        DJ{"Cibuti"}
        DK{"Danimarka"}
        DM{"Dominika"}
        DO{"Dominik Cumhuriyeti"}
        DZ{"Cezayir"}
        EA{"Ceuta ve Melilla"}
        EC{"Ekvador"}
        EE{"Estonya"}
        EG{"Mısır"}
        EH{"Batı Sahara"}
        ER{"Eritre"}
        ES{"İspanya"}
        ET{"Etiyopya"}
        EU{"Avrupa Birliği"}
        FI{"Finlandiya"}
        FJ{"Fiji"}
        FK{"Falkland Adaları"}
        FM{"Mikronezya Federal Eyaletleri"}
        FO{"Faroe Adaları"}
        FR{"Fransa"}
        GA{"Gabon"}
        GB{"Birleşik Krallık"}
        GD{"Grenada"}
        GE{"Gürcistan"}
        GF{"Fransız Guyanası"}
        GG{"Guernsey"}
        GH{"Gana"}
        GI{"Cebelitarık"}
        GL{"Grönland"}
        GM{"Gambiya"}
        GN{"Gine"}
        GP{"Guadalupe"}
        GQ{"Ekvator Ginesi"}
        GR{"Yunanistan"}
        GS{"Güney Georgia ve Güney Sandwich Adaları"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Gine-Bissau"}
        GY{"Guyana"}
        HK{"Hong Kong"}
        HM{"Heard Adası ve McDonald Adaları"}
        HN{"Honduras"}
        HR{"Hırvatistan"}
        HT{"Haiti"}
        HU{"Macaristan"}
        IC{"Kanarya Adaları"}
        ID{"Endonezya"}
        IE{"İrlanda"}
        IL{"İsrail"}
        IM{"Man Adası"}
        IN{"Hindistan"}
        IO{"İngiliz Hint Okyanusu Bölgesi"}
        IQ{"Irak"}
        IR{"İran"}
        IS{"İzlanda"}
        IT{"İtalya"}
        JE{"Jersey"}
        JM{"Jamaika"}
        JO{"Ürdün"}
        JP{"Japonya"}
        KE{"Kenya"}
        KG{"Kırgızistan"}
        KH{"Kamboçya"}
        KI{"Kiribati"}
        KM{"Komorlar"}
        KN{"Saint Kitts ve Nevis"}
        KP{"Kuzey Kore"}
        KR{"Güney Kore"}
        KW{"Kuveyt"}
        KY{"Cayman Adaları"}
        KZ{"Kazakistan"}
        LA{"Laos"}
        LB{"Lübnan"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberya"}
        LS{"Lesoto"}
        LT{"Litvanya"}
        LU{"Lüksemburg"}
        LV{"Letonya"}
        LY{"Libya"}
        MA{"Fas"}
        MC{"Monako"}
        MD{"Moldova"}
        ME{"Karadağ"}
        MF{"Saint Martin"}
        MG{"Madagaskar"}
        MH{"Marshall Adaları"}
        MK{"Makedonya"}
        ML{"Mali"}
        MM{"Myanmar [Burma]"}
        MN{"Moğolistan"}
        MO{"Makao"}
        MP{"Kuzey Mariana Adaları"}
        MQ{"Martinik"}
        MR{"Moritanya"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldivler"}
        MW{"Malavi"}
        MX{"Meksika"}
        MY{"Malezya"}
        MZ{"Mozambik"}
        NA{"Namibya"}
        NC{"Yeni Kaledonya"}
        NE{"Nijer"}
        NF{"Norfolk Adası"}
        NG{"Nijerya"}
        NI{"Nikaragua"}
        NL{"Hollanda"}
        NO{"Norveç"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Yeni Zelanda"}
        OM{"Umman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Fransız Polinezyası"}
        PG{"Papua Yeni Gine"}
        PH{"Filipinler"}
        PK{"Pakistan"}
        PL{"Polonya"}
        PM{"Saint Pierre ve Miquelon"}
        PN{"Pitcairn Adaları"}
        PR{"Porto Riko"}
        PS{"Filistin"}
        PT{"Portekiz"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Katar"}
        QO{"Uzak Okyanusya"}
        RE{"Réunion"}
        RO{"Romanya"}
        RS{"Sırbistan"}
        RU{"Rusya"}
        RW{"Ruanda"}
        SA{"Suudi Arabistan"}
        SB{"Solomon Adaları"}
        SC{"Seyşeller"}
        SD{"Sudan"}
        SE{"İsveç"}
        SG{"Singapur"}
        SH{"Saint Helena"}
        SI{"Slovenya"}
        SJ{"Svalbard ve Jan Mayen Adaları"}
        SK{"Slovakya"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somali"}
        SR{"Surinam"}
        SS{"Güney Sudan"}
        ST{"São Tomé ve Príncipe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Suriye"}
        SZ{"Svaziland"}
        TA{"Tristan da Cunha"}
        TC{"Turks ve Caicos Adaları"}
        TD{"Çad"}
        TF{"Fransız Güney Bölgeleri"}
        TG{"Togo"}
        TH{"Tayland"}
        TJ{"Tacikistan"}
        TK{"Tokelau"}
        TL{"Timor-Leste"}
        TM{"Türkmenistan"}
        TN{"Tunus"}
        TO{"Tonga"}
        TR{"Türkiye"}
        TT{"Trinidad ve Tobago"}
        TV{"Tuvalu"}
        TW{"Tayvan"}
        TZ{"Tanzanya"}
        UA{"Ukrayna"}
        UG{"Uganda"}
        UM{"ABD Dış Adaları"}
        US{"ABD"}
        UY{"Uruguay"}
        UZ{"Özbekistan"}
        VA{"Vatikan"}
        VC{"Saint Vincent ve Grenadinler"}
        VE{"Venezuela"}
        VG{"Britanya Virjin Adaları"}
        VI{"ABD Virjin Adaları"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis ve Futuna Adaları"}
        WS{"Samoa"}
        XK{"Kosova"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Güney Afrika"}
        ZM{"Zambiya"}
        ZW{"Zimbabve"}
        ZZ{"Bilinmeyen Bölge"}
    }
    Version{"2.0.82.45"}
}
