﻿// ***************************************************************************
// *
// * Copyright (C) 2012 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/lt.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/lt.xml
 */
lt{
    Countries{
        001{"pasaulis"}
        002{"Afrika"}
        003{"Šiaurės Amerika"}
        005{"Pietų Amerika"}
        009{"Okeanija"}
        011{"Vakarų Afrika"}
        013{"Centrinė Amerika"}
        014{"Rytų Afrika"}
        015{"Šiaurės Afrika"}
        017{"Vidurio Afrika"}
        018{"Pietų Afrika [018]"}
        019{"Amerika"}
        021{"Šiaurinė Amerika"}
        029{"Karibai"}
        030{"Rytų Azija"}
        034{"Pietų Azija"}
        035{"Pietryčių Azija"}
        039{"Pietų Europa"}
        053{"Australazija"}
        054{"Melanezija"}
        057{"Mikronezijos regionas"}
        061{"Polinezija"}
        142{"Azija"}
        143{"Centrinė Azija"}
        145{"Vakarų Azija"}
        150{"Europa"}
        151{"Rytų Europa"}
        154{"Šiaurės Europa"}
        155{"Vakarų Europa"}
        419{"Lotynų Amerika"}
        AC{"Ascension sala"}
        AD{"Andora"}
        AE{"Jungtiniai Arabų Emyratai"}
        AF{"Afganistanas"}
        AG{"Antigva ir Barbuda"}
        AI{"Angilija"}
        AL{"Albanija"}
        AM{"Armėnija"}
        AN{"Olandijos Antilai"}
        AO{"Angola"}
        AQ{"Antarktis"}
        AR{"Argentina"}
        AS{"Amerikos Samoa"}
        AT{"Austrija"}
        AU{"Australija"}
        AW{"Aruba"}
        AX{"Alandų Salos"}
        AZ{"Azerbaidžanas"}
        BA{"Bosnija ir Hercegovina"}
        BB{"Barbadosas"}
        BD{"Bangladešas"}
        BE{"Belgija"}
        BF{"Burkina Fasas"}
        BG{"Bulgarija"}
        BH{"Bahreinas"}
        BI{"Burundis"}
        BJ{"Beninas"}
        BL{"Švento Baltramiejaus Sala"}
        BM{"Bermuda"}
        BN{"Brunėjus"}
        BO{"Bolivija"}
        BQ{"Karibų Nyderlandai"}
        BR{"Brazilija"}
        BS{"Bahamos"}
        BT{"Butanas"}
        BV{"Bouvet sala"}
        BW{"Botsvana"}
        BY{"Baltarusija"}
        BZ{"Belizas"}
        CA{"Kanada"}
        CC{"Kokosų salos"}
        CD{"Kongas-Kinšasa"}
        CF{"Centrinės Afrikos Respublika"}
        CG{"Kongas-Brazavilis"}
        CH{"Šveicarija"}
        CI{"Dramblio Kaulo Krantas"}
        CK{"Kuko salos"}
        CL{"Čilė"}
        CM{"Kamerūnas"}
        CN{"Kinija"}
        CO{"Kolumbija"}
        CP{"Clipperton sala"}
        CR{"Kosta Rika"}
        CU{"Kuba"}
        CV{"Žaliasis Kyšulys"}
        CW{"Kiurasao"}
        CX{"Kalėdų sala"}
        CY{"Kipras"}
        CZ{"Čekija"}
        DE{"Vokietija"}
        DG{"Diego Garcia"}
        DJ{"Džibutis"}
        DK{"Danija"}
        DM{"Dominika"}
        DO{"Dominikos Respublika"}
        DZ{"Alžyras"}
        EA{"Seuta ir Melila"}
        EC{"Ekvadoras"}
        EE{"Estija"}
        EG{"Egiptas"}
        EH{"Vakarų Sachara"}
        ER{"Eritrėja"}
        ES{"Ispanija"}
        ET{"Etiopija"}
        EU{"Europos Sąjunga"}
        FI{"Suomija"}
        FJ{"Fidžis"}
        FK{"Folklando Salos"}
        FM{"Mikronezija"}
        FO{"Farerų Salos"}
        FR{"Prancūzija"}
        GA{"Gabonas"}
        GB{"Didžioji Britanija"}
        GD{"Grenada"}
        GE{"Gruzija"}
        GF{"Prancūzijos Gviana"}
        GG{"Gernsis"}
        GH{"Gana"}
        GI{"Gibraltaras"}
        GL{"Grenlandija"}
        GM{"Gambija"}
        GN{"Gvinėja"}
        GP{"Gvadelupė"}
        GQ{"Pusiaujo Gvinėja"}
        GR{"Graikija"}
        GS{"Pietų Džordžija ir Pietų Sandvičo salos"}
        GT{"Gvatemala"}
        GU{"Guamas"}
        GW{"Bisau Gvinėja"}
        GY{"Gajana"}
        HK{"Kinijos S. A. R. Honkongas"}
        HM{"Heardo ir McDonaldo Salų Sritis"}
        HN{"Hondūras"}
        HR{"Kroatija"}
        HT{"Haitis"}
        HU{"Vengrija"}
        IC{"Kanarų Salos"}
        ID{"Indonezija"}
        IE{"Airija"}
        IL{"Izraelis"}
        IM{"Meno Sala"}
        IN{"Indija"}
        IO{"Indijos vandenyno britų sritis"}
        IQ{"Irakas"}
        IR{"Iranas"}
        IS{"Islandija"}
        IT{"Italija"}
        JE{"Džersis"}
        JM{"Jamaika"}
        JO{"Jordanija"}
        JP{"Japonija"}
        KE{"Kenija"}
        KG{"Kirgiztanas"}
        KH{"Kambodža"}
        KI{"Kiribatis"}
        KM{"Komorai"}
        KN{"Sent Kitsas ir Nevis"}
        KP{"Šiaurės Korėja"}
        KR{"Pietų Korėja"}
        KW{"Kuveitas"}
        KY{"Kaimanų Salos"}
        KZ{"Kazachstanas"}
        LA{"Laosas"}
        LB{"Libanas"}
        LC{"Šventoji Liucija"}
        LI{"Lichtenšteinas"}
        LK{"Šri Lanka"}
        LR{"Liberija"}
        LS{"Lesotas"}
        LT{"Lietuva"}
        LU{"Liuksemburgas"}
        LV{"Latvija"}
        LY{"Libija"}
        MA{"Marokas"}
        MC{"Monakas"}
        MD{"Moldova"}
        ME{"Juodkalnija"}
        MF{"Sen Martenas"}
        MG{"Madagaskaras"}
        MH{"Maršalo Salos"}
        MK{"Makedonija"}
        ML{"Malis"}
        MM{"Mianmaras"}
        MN{"Mongolija"}
        MO{"Macao"}
        MP{"Marianos šiaurinės salos"}
        MQ{"Martinika"}
        MR{"Mauritanija"}
        MS{"Montseratas"}
        MT{"Malta"}
        MU{"Mauricijus"}
        MV{"Maldivai"}
        MW{"Malavis"}
        MX{"Meksika"}
        MY{"Malaizija"}
        MZ{"Mozambikas"}
        NA{"Namibija"}
        NC{"Naujoji Kaledonija"}
        NE{"Nigeris"}
        NF{"Norfolko sala"}
        NG{"Nigerija"}
        NI{"Nikaragva"}
        NL{"Nyderlandai"}
        NO{"Norvegija"}
        NP{"Nepalas"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Naujoji Zelandija"}
        OM{"Omanas"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Prancūzų Polinezija"}
        PG{"Papua Naujoji Gvinėja"}
        PH{"Filipinai"}
        PK{"Pakistanas"}
        PL{"Lenkija"}
        PM{"Sen Pjeras ir Mikelonas"}
        PN{"Pitkerno Salos"}
        PR{"Puerto Rikas"}
        PS{"Palestinos teritorija"}
        PT{"Portugalija"}
        PW{"Palau"}
        PY{"Paragvajus"}
        QA{"Kataras"}
        QO{"Nuošali Okeanija"}
        RE{"Reunjonas"}
        RO{"Rumunija"}
        RS{"Serbija"}
        RU{"Rusija"}
        RW{"Ruanda"}
        SA{"Saudo Arabija"}
        SB{"Saliamono salos"}
        SC{"Seišeliai"}
        SD{"Sudanas"}
        SE{"Švedija"}
        SG{"Singapūras"}
        SH{"Šventoji Elena"}
        SI{"Slovėnija"}
        SJ{"Svalbardo ir Jan Majen salos"}
        SK{"Slovakija"}
        SL{"Siera Leonė"}
        SM{"San Marinas"}
        SN{"Senegalas"}
        SO{"Somalis"}
        SR{"Surinamas"}
        SS{"Pietų Sudanas"}
        ST{"San Tomė ir Prinsipė"}
        SV{"Salvadoras"}
        SX{"Sint Martenas"}
        SY{"Sirija"}
        SZ{"Svazilandas"}
        TA{"Tristan da Cunha"}
        TC{"Terkso ir Kaikoso Salos"}
        TD{"Čadas"}
        TF{"Prancūzijos Pietų sritys"}
        TG{"Togas"}
        TH{"Tailandas"}
        TJ{"Tadžikistanas"}
        TK{"Tokelau"}
        TL{"Rytų Timoras"}
        TM{"Turkmėnistanas"}
        TN{"Tunisas"}
        TO{"Tonga"}
        TR{"Turkija"}
        TT{"Trinidadas ir Tobagas"}
        TV{"Tuvalu"}
        TW{"Taivanas"}
        TZ{"Tanzanija"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"Jungtinių Valstijų mažosios aplinkinės salos"}
        US{"Jungtinės Valstijos"}
        UY{"Urugvajus"}
        UZ{"Uzbekistanas"}
        VA{"Vatikanas"}
        VC{"Šventasis Vincentas ir Grenadinai"}
        VE{"Venesuela"}
        VG{"Didžiosios Britanijos Mergelių Salos"}
        VI{"Mergelių Salos (JAV)"}
        VN{"Vietnamas"}
        VU{"Vanuatu"}
        WF{"Wallisas ir Futuna"}
        WS{"Samoa"}
        YE{"Jemenas"}
        YT{"Majotas"}
        ZA{"Pietų Afrika"}
        ZM{"Zambija"}
        ZW{"Zimbabvė"}
        ZZ{"nežinoma sritis"}
    }
    Version{"2.0.75.99"}
}
