﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml
lv{
    Countries{
        001{"pasaule"}
        002{"Āfrika"}
        003{"Ziemeļamerika"}
        005{"Dienvidamerika"}
        009{"Okeānija"}
        011{"Rietumāfrika"}
        013{"Centrālamerika"}
        014{"Austrumāfrika"}
        015{"Ziemeļāfrika"}
        017{"Vidusāfrika"}
        018{"Dienvidāfrika"}
        019{"Amerika"}
        021{"Amerikas ziemeļu daļa"}
        029{"Karību jūras reģions"}
        030{"Austrumāzija"}
        034{"Dienvidāzija"}
        035{"Centrālaustrumāzija"}
        039{"Dienvideiropa"}
        053{"Austrālāzija"}
        054{"Melanēzija"}
        057{"Mikronēzijas reģions"}
        061{"Polinēzija"}
        142{"Āzija"}
        143{"Centrālāzija"}
        145{"Rietumāzija"}
        150{"Eiropa"}
        151{"Austrumeiropa"}
        154{"Ziemeļeiropa"}
        155{"Rietumeiropa"}
        202{"Subsahāras Āfrika"}
        419{"Latīņamerika"}
        AC{"Debesbraukšanas sala"}
        AD{"Andora"}
        AE{"Apvienotie Arābu Emirāti"}
        AF{"Afganistāna"}
        AG{"Antigva un Barbuda"}
        AI{"Angilja"}
        AL{"Albānija"}
        AM{"Armēnija"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Argentīna"}
        AS{"ASV Samoa"}
        AT{"Austrija"}
        AU{"Austrālija"}
        AW{"Aruba"}
        AX{"Olandes salas"}
        AZ{"Azerbaidžāna"}
        BA{"Bosnija un Hercegovina"}
        BB{"Barbadosa"}
        BD{"Bangladeša"}
        BE{"Beļģija"}
        BF{"Burkinafaso"}
        BG{"Bulgārija"}
        BH{"Bahreina"}
        BI{"Burundija"}
        BJ{"Benina"}
        BL{"Senbartelmī"}
        BM{"Bermudu salas"}
        BN{"Bruneja"}
        BO{"Bolīvija"}
        BQ{"Nīderlandes Karību salas"}
        BR{"Brazīlija"}
        BS{"Bahamu salas"}
        BT{"Butāna"}
        BV{"Buvē sala"}
        BW{"Botsvāna"}
        BY{"Baltkrievija"}
        BZ{"Beliza"}
        CA{"Kanāda"}
        CC{"Kokosu (Kīlinga) salas"}
        CD{"Kongo (Kinšasa)"}
        CF{"Centrālāfrikas Republika"}
        CG{"Kongo (Brazavila)"}
        CH{"Šveice"}
        CI{"Kotdivuāra"}
        CK{"Kuka salas"}
        CL{"Čīle"}
        CM{"Kamerūna"}
        CN{"Ķīna"}
        CO{"Kolumbija"}
        CP{"Klipertona sala"}
        CR{"Kostarika"}
        CU{"Kuba"}
        CV{"Kaboverde"}
        CW{"Kirasao"}
        CX{"Ziemsvētku sala"}
        CY{"Kipra"}
        CZ{"Čehija"}
        DE{"Vācija"}
        DG{"Djego Garsijas atols"}
        DJ{"Džibutija"}
        DK{"Dānija"}
        DM{"Dominika"}
        DO{"Dominikāna"}
        DZ{"Alžīrija"}
        EA{"Seūta un Melilja"}
        EC{"Ekvadora"}
        EE{"Igaunija"}
        EG{"Ēģipte"}
        EH{"Rietumsahāra"}
        ER{"Eritreja"}
        ES{"Spānija"}
        ET{"Etiopija"}
        EU{"Eiropas Savienība"}
        EZ{"Eirozona"}
        FI{"Somija"}
        FJ{"Fidži"}
        FK{"Folklenda (Malvinu) salas"}
        FM{"Mikronēzija"}
        FO{"Fēru salas"}
        FR{"Francija"}
        GA{"Gabona"}
        GB{"Apvienotā Karaliste"}
        GD{"Grenāda"}
        GE{"Gruzija"}
        GF{"Francijas Gviāna"}
        GG{"Gērnsija"}
        GH{"Gana"}
        GI{"Gibraltārs"}
        GL{"Grenlande"}
        GM{"Gambija"}
        GN{"Gvineja"}
        GP{"Gvadelupa"}
        GQ{"Ekvatoriālā Gvineja"}
        GR{"Grieķija"}
        GS{"Dienviddžordžija un Dienvidsendviču salas"}
        GT{"Gvatemala"}
        GU{"Guama"}
        GW{"Gvineja-Bisava"}
        GY{"Gajāna"}
        HK{"Honkonga"}
        HM{"Hērda sala un Makdonalda salas"}
        HN{"Hondurasa"}
        HR{"Horvātija"}
        HT{"Haiti"}
        HU{"Ungārija"}
        IC{"Kanāriju salas"}
        ID{"Indonēzija"}
        IE{"Īrija"}
        IL{"Izraēla"}
        IM{"Menas sala"}
        IN{"Indija"}
        IO{"Indijas okeāna Britu teritorija"}
        IQ{"Irāka"}
        IR{"Irāna"}
        IS{"Islande"}
        IT{"Itālija"}
        JE{"Džērsija"}
        JM{"Jamaika"}
        JO{"Jordānija"}
        JP{"Japāna"}
        KE{"Kenija"}
        KG{"Kirgizstāna"}
        KH{"Kambodža"}
        KI{"Kiribati"}
        KM{"Komoru salas"}
        KN{"Sentkitsa un Nevisa"}
        KP{"Ziemeļkoreja"}
        KR{"Dienvidkoreja"}
        KW{"Kuveita"}
        KY{"Kaimanu salas"}
        KZ{"Kazahstāna"}
        LA{"Laosa"}
        LB{"Libāna"}
        LC{"Sentlūsija"}
        LI{"Lihtenšteina"}
        LK{"Šrilanka"}
        LR{"Libērija"}
        LS{"Lesoto"}
        LT{"Lietuva"}
        LU{"Luksemburga"}
        LV{"Latvija"}
        LY{"Lībija"}
        MA{"Maroka"}
        MC{"Monako"}
        MD{"Moldova"}
        ME{"Melnkalne"}
        MF{"Senmartēna"}
        MG{"Madagaskara"}
        MH{"Māršala salas"}
        MK{"Ziemeļmaķedonija"}
        ML{"Mali"}
        MM{"Mjanma (Birma)"}
        MN{"Mongolija"}
        MO{"Makao"}
        MP{"Ziemeļu Marianas salas"}
        MQ{"Martinika"}
        MR{"Mauritānija"}
        MS{"Montserrata"}
        MT{"Malta"}
        MU{"Maurīcija"}
        MV{"Maldīvija"}
        MW{"Malāvija"}
        MX{"Meksika"}
        MY{"Malaizija"}
        MZ{"Mozambika"}
        NA{"Namībija"}
        NC{"Jaunkaledonija"}
        NE{"Nigēra"}
        NF{"Norfolkas sala"}
        NG{"Nigērija"}
        NI{"Nikaragva"}
        NL{"Nīderlande"}
        NO{"Norvēģija"}
        NP{"Nepāla"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Jaunzēlande"}
        OM{"Omāna"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Francijas Polinēzija"}
        PG{"Papua-Jaungvineja"}
        PH{"Filipīnas"}
        PK{"Pakistāna"}
        PL{"Polija"}
        PM{"Senpjēra un Mikelona"}
        PN{"Pitkērnas salas"}
        PR{"Puertoriko"}
        PS{"Palestīna"}
        PT{"Portugāle"}
        PW{"Palau"}
        PY{"Paragvaja"}
        QA{"Katara"}
        QO{"Okeānijas attālās salas"}
        RE{"Reinjona"}
        RO{"Rumānija"}
        RS{"Serbija"}
        RU{"Krievija"}
        RW{"Ruanda"}
        SA{"Saūda Arābija"}
        SB{"Zālamana salas"}
        SC{"Seišelu salas"}
        SD{"Sudāna"}
        SE{"Zviedrija"}
        SG{"Singapūra"}
        SH{"Sv.Helēnas sala"}
        SI{"Slovēnija"}
        SJ{"Svalbāra un Jana Majena sala"}
        SK{"Slovākija"}
        SL{"Sjerraleone"}
        SM{"Sanmarīno"}
        SN{"Senegāla"}
        SO{"Somālija"}
        SR{"Surinama"}
        SS{"Dienvidsudāna"}
        ST{"Santome un Prinsipi"}
        SV{"Salvadora"}
        SX{"Sintmārtena"}
        SY{"Sīrija"}
        SZ{"Svatini"}
        TA{"Tristana da Kuņjas salu teritorijas"}
        TC{"Tērksas un Kaikosas salas"}
        TD{"Čada"}
        TF{"Francijas Dienvidjūru teritorija"}
        TG{"Togo"}
        TH{"Taizeme"}
        TJ{"Tadžikistāna"}
        TK{"Tokelau"}
        TL{"Austrumtimora"}
        TM{"Turkmenistāna"}
        TN{"Tunisija"}
        TO{"Tonga"}
        TR{"Turcija"}
        TT{"Trinidāda un Tobāgo"}
        TV{"Tuvalu"}
        TW{"Taivāna"}
        TZ{"Tanzānija"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"ASV Mazās Aizjūras salas"}
        UN{"Apvienoto Nāciju Organizācija"}
        US{"Amerikas Savienotās Valstis"}
        UY{"Urugvaja"}
        UZ{"Uzbekistāna"}
        VA{"Vatikāns"}
        VC{"Sentvinsenta un Grenadīnas"}
        VE{"Venecuēla"}
        VG{"Britu Virdžīnas"}
        VI{"ASV Virdžīnas"}
        VN{"Vjetnama"}
        VU{"Vanuatu"}
        WF{"Volisa un Futunas salas"}
        WS{"Samoa"}
        XA{"pseidoakcenti"}
        XB{"pseidodivvirzienu"}
        XK{"Kosova"}
        YE{"Jemena"}
        YT{"Majota"}
        ZA{"Dienvidāfrikas Republika"}
        ZM{"Zambija"}
        ZW{"Zimbabve"}
        ZZ{"nezināms reģions"}
    }
    Countries%short{
        UN{"ANO"}
        US{"ASV"}
    }
    Countries%variant{
        CD{"Kongo Demokrātiskā Republika"}
        CG{"Kongo (Republika)"}
        CI{"Ziloņkaula krasts"}
        CZ{"Čehijas Republika"}
        SZ{"Svazilenda"}
    }
}
