﻿// ***************************************************************************
// *
// * Copyright (C) 2012 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/hu.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/hu.xml
 */
hu{
    Countries{
        001{"Világ"}
        002{"Afrika"}
        003{"Észak-Amerika"}
        005{"Dél-Amerika"}
        009{"Óceánia"}
        011{"Nyugat-Afrika"}
        013{"Közép-Amerika"}
        014{"Kelet-Afrika"}
        015{"Észak-Afrika"}
        017{"Közép-Afrika"}
        018{"Afrika déli része"}
        019{"Amerika"}
        021{"Amerika északi része"}
        029{"Karib-térség"}
        030{"Kelet-Ázsia"}
        034{"Dél-Ázsia"}
        035{"Délkelet-Ázsia"}
        039{"Dél-Európa"}
        053{"Ausztrálázsia"}
        054{"Melanézia"}
        057{"Mikronéziai régió"}
        061{"Polinézia"}
        142{"Ázsia"}
        143{"Közép-Ázsia"}
        145{"Nyugat-Ázsia"}
        150{"Európa"}
        151{"Kelet-Európa"}
        154{"Észak-Európa"}
        155{"Nyugat-Európa"}
        419{"Latin-Amerika"}
        AC{"Ascension-sziget"}
        AD{"Andorra"}
        AE{"Egyesült Arab Emirátus"}
        AF{"Afganisztán"}
        AG{"Antigua és Barbuda"}
        AI{"Anguilla"}
        AL{"Albánia"}
        AM{"Örményország"}
        AN{"Holland Antillák"}
        AO{"Angola"}
        AQ{"Antarktisz"}
        AR{"Argentína"}
        AS{"Amerikai Szamoa"}
        AT{"Ausztria"}
        AU{"Ausztrália"}
        AW{"Aruba"}
        AX{"Åland-szigetek"}
        AZ{"Azerbajdzsán"}
        BA{"Bosznia-Hercegovina"}
        BB{"Barbados"}
        BD{"Banglades"}
        BE{"Belgium"}
        BF{"Burkina Faso"}
        BG{"Bulgária"}
        BH{"Bahrein"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Saint Barthélemy"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolívia"}
        BQ{"Holland Karib-térség"}
        BR{"Brazília"}
        BS{"Bahama-szigetek"}
        BT{"Bhután"}
        BV{"Bouvet-sziget"}
        BW{"Botswana"}
        BY{"Fehéroroszország"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Kókusz-szigetek"}
        CD{"Kongó - Kinshasa"}
        CF{"Közép-afrikai Köztársaság"}
        CG{"Kongó - Brazzaville"}
        CH{"Svájc"}
        CI{"Elefántcsontpart"}
        CK{"Cook-szigetek"}
        CL{"Chile"}
        CM{"Kamerun"}
        CN{"Kína"}
        CO{"Kolumbia"}
        CP{"Clipperton-sziget"}
        CR{"Costa Rica"}
        CU{"Kuba"}
        CV{"Zöld-foki Köztársaság"}
        CW{"Curaçao"}
        CX{"Karácsony-szigetek"}
        CY{"Ciprus"}
        CZ{"Csehország"}
        DE{"Németország"}
        DG{"Diego Garcia"}
        DJ{"Dzsibuti"}
        DK{"Dánia"}
        DM{"Dominika"}
        DO{"Dominikai Köztársaság"}
        DZ{"Algéria"}
        EA{"Ceuta és Melilla"}
        EC{"Ecuador"}
        EE{"Észtország"}
        EG{"Egyiptom"}
        EH{"Nyugat-Szahara"}
        ER{"Eritrea"}
        ES{"Spanyolország"}
        ET{"Etiópia"}
        EU{"Európai Unió"}
        FI{"Finnország"}
        FJ{"Fidzsi"}
        FK{"Falkland-szigetek"}
        FM{"Mikronézia"}
        FO{"Feröer-szigetek"}
        FR{"Franciaország"}
        GA{"Gabon"}
        GB{"Egyesült Királyság"}
        GD{"Grenada"}
        GE{"Grúzia"}
        GF{"Francia Guyana"}
        GG{"Guernsey"}
        GH{"Ghána"}
        GI{"Gibraltár"}
        GL{"Grönland"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadeloupe"}
        GQ{"Egyenlítői-Guinea"}
        GR{"Görögország"}
        GS{"Dél Grúzia és a Déli Szendvics-szigetek"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"Hongkong SAR Kína"}
        HM{"Heard és McDonald Szigetek"}
        HN{"Honduras"}
        HR{"Horvátország"}
        HT{"Haiti"}
        HU{"Magyarország"}
        IC{"Kanári-szigetek"}
        ID{"Indonézia"}
        IE{"Írország"}
        IL{"Izrael"}
        IM{"Man-sziget"}
        IN{"India"}
        IO{"Brit Indiai-óceáni Terület"}
        IQ{"Irak"}
        IR{"Irán"}
        IS{"Izland"}
        IT{"Olaszország"}
        JE{"Jersey"}
        JM{"Jamaica"}
        JO{"Jordánia"}
        JP{"Japán"}
        KE{"Kenya"}
        KG{"Kirgizisztán"}
        KH{"Kambodzsa"}
        KI{"Kiribati"}
        KM{"Comore-szigetek"}
        KN{"Saint Kitts és Nevis"}
        KP{"Észak-Korea"}
        KR{"Dél-Korea"}
        KW{"Kuvait"}
        KY{"Kajmán-szigetek"}
        KZ{"Kazahsztán"}
        LA{"Laosz"}
        LB{"Libanon"}
        LC{"Santa Lucia"}
        LI{"Liechtenstein"}
        LK{"Srí Lanka"}
        LR{"Libéria"}
        LS{"Lesotho"}
        LT{"Litvánia"}
        LU{"Luxemburg"}
        LV{"Lettország"}
        LY{"Líbia"}
        MA{"Marokkó"}
        MC{"Monaco"}
        MD{"Moldova"}
        ME{"Montenegró"}
        MF{"Saint Martin"}
        MG{"Madagaszkár"}
        MH{"Marshall-szigetek"}
        MK{"Macedónia"}
        ML{"Mali"}
        MM{"Mianmar [Burma]"}
        MN{"Mongólia"}
        MO{"Makaó SAR Kína"}
        MP{"Északi Mariana-szigetek"}
        MQ{"Martinique"}
        MR{"Mauritánia"}
        MS{"Montserrat"}
        MT{"Málta"}
        MU{"Mauritius"}
        MV{"Maldív-szigetek"}
        MW{"Malawi"}
        MX{"Mexikó"}
        MY{"Malajzia"}
        MZ{"Mozambik"}
        NA{"Namíbia"}
        NC{"Új-Kaledónia"}
        NE{"Niger"}
        NF{"Norfolk-sziget"}
        NG{"Nigéria"}
        NI{"Nicaragua"}
        NL{"Hollandia"}
        NO{"Norvégia"}
        NP{"Nepál"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Új-Zéland"}
        OM{"Omán"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Francia Polinézia"}
        PG{"Pápua Új-Guinea"}
        PH{"Fülöp-szigetek"}
        PK{"Pakisztán"}
        PL{"Lengyelország"}
        PM{"Saint Pierre és Miquelon"}
        PN{"Pitcairn-szigetek"}
        PR{"Puerto Rico"}
        PS{"Palesztin Terület"}
        PT{"Portugália"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Katar"}
        QO{"Külső-Óceánia"}
        RE{"Reunion"}
        RO{"Románia"}
        RS{"Szerbia"}
        RU{"Oroszországi Föderáció"}
        RW{"Ruanda"}
        SA{"Szaúd-Arábia"}
        SB{"Salamon-szigetek"}
        SC{"Seychelle-szigetek"}
        SD{"Szudán"}
        SE{"Svédország"}
        SG{"Szingapúr"}
        SH{"Szent Helena"}
        SI{"Szlovénia"}
        SJ{"Spitzbergák és Jan Mayen-szigetek"}
        SK{"Szlovákia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Szenegál"}
        SO{"Szomália"}
        SR{"Suriname"}
        SS{"Dél-Szudán"}
        ST{"Sao Tomé és Príncipe"}
        SV{"Salvador"}
        SX{"Sint Maarten"}
        SY{"Szíria"}
        SZ{"Szváziföld"}
        TA{"Tristan da Cunha"}
        TC{"Turks- és Caicos-szigetek"}
        TD{"Csád"}
        TF{"Francia Déli Területek"}
        TG{"Togo"}
        TH{"Thaiföld"}
        TJ{"Tadzsikisztán"}
        TK{"Tokelau"}
        TL{"Kelet-Timor"}
        TM{"Türkmenisztán"}
        TN{"Tunézia"}
        TO{"Tonga"}
        TR{"Törökország"}
        TT{"Trinidad és Tobago"}
        TV{"Tuvalu"}
        TW{"Tajvan"}
        TZ{"Tanzánia"}
        UA{"Ukrajna"}
        UG{"Uganda"}
        UM{"Amerikai Csendes-óceáni Szigetek"}
        US{"Egyesült Államok"}
        UY{"Uruguay"}
        UZ{"Üzbegisztán"}
        VA{"Vatikán"}
        VC{"Saint Vincent és a Grenadine-szigetek"}
        VE{"Venezuela"}
        VG{"Brit Virgin-szigetek"}
        VI{"Amerikai Virgin-szigetek"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis- és Futuna-szigetek"}
        WS{"Szamoa"}
        YE{"Jemen"}
        YT{"Mayotte"}
        ZA{"Dél-afrikai Köztársaság"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Ismeretlen vagy érvénytelen körzet"}
    }
    Version{"2.0.78.47"}
}
