﻿// ***************************************************************************
// *
// * Copyright (C) 2010 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/lv.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/lv.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{"Āfrikas dienvidi"}
        019{"Amerika"}
        021{"Amerikas ziemeļi"}
        029{"Karību jūras reģions"}
        030{"Austrumāzija"}
        034{"Dienvidāzija"}
        035{"Centrālaustrumāzija"}
        039{"Dienvideiropa"}
        053{"Austrālija un Jaunzēlande"}
        054{"Melanēzija"}
        057{"Mikronēzijas reģions"}
        061{"Polinēzija"}
        062{"Centrāldienvidāzija"}
        142{"Āzija"}
        143{"Centrālāzija"}
        145{"Rietumāzija"}
        150{"Eiropa"}
        151{"Austrumeiropa"}
        154{"Ziemeļeiropa"}
        155{"Rietumeiropa"}
        172{"Neatkarīgo Valstu Savienība"}
        419{"Latīņamerika un Karību jūras reģions"}
        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"}
        AN{"Nīderlandes Antiļas"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Argentīna"}
        AS{"Amerikāņu 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{"Burundi"}
        BJ{"Benina"}
        BL{"Senbartelmī"}
        BM{"Bermudu salas"}
        BN{"Bruneja"}
        BO{"Bolīvija"}
        BR{"Brazīlija"}
        BS{"Bahamu salas"}
        BT{"Butāna"}
        BV{"Buvē sala"}
        BW{"Botsvāna"}
        BY{"Baltkrievija"}
        BZ{"Beliza"}
        CA{"Kanāda"}
        CC{"Kokosu jeb Kīlinga salas"}
        CD{"Kongo Demokrātiskā Republika"}
        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"}
        CS{"Serbija un Melnkalne"}
        CU{"Kuba"}
        CV{"Kaboverde"}
        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ānas Republika"}
        DZ{"Alžīrija"}
        EA{"Seūta un Meliļa"}
        EC{"Ekvadora"}
        EE{"Igaunija"}
        EG{"Ēģipte"}
        EH{"Rietumsahāra"}
        ER{"Eritreja"}
        ES{"Spānija"}
        ET{"Etiopija"}
        EU{"Eiropas Savienība"}
        FI{"Somija"}
        FJ{"Fidži"}
        FK{"Folklenda salas"}
        FM{"Mikronēzija"}
        FO{"Fēru Salas"}
        FR{"Francija"}
        GA{"Gabona"}
        GB{"Lielbritānija"}
        GD{"Grenāda"}
        GE{"Gruzija"}
        GF{"Franču 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{"Ķīnas īpašās pārvaldes apgabals Honkonga"}
        HM{"Hērda 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{"Mena"}
        IN{"Indija"}
        IO{"Indijas okeāna Britu teritorija"}
        IQ{"Irāka"}
        IR{"Irāna"}
        IS{"Īslande"}
        IT{"Itālija"}
        JE{"Džērsija"}
        JM{"Jamaika"}
        JO{"Jordānija"}
        JP{"Japāna"}
        KE{"Kenija"}
        KG{"Kirgīzija"}
        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{"Maķedonija"}
        ML{"Mali"}
        MM{"Mjanma [Birma]"}
        MN{"Mongolija"}
        MO{"Ķīnas īpašās pārvaldes apgabals 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{"Franču Polinēzija"}
        PG{"Papua-Jaungvineja"}
        PH{"Filipīnas"}
        PK{"Pakistāna"}
        PL{"Polija"}
        PM{"Senpjēra un Mikelona"}
        PN{"Pitkērna"}
        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šeļu 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"}
        ST{"Santome un Prinsipi"}
        SV{"Salvadora"}
        SY{"Sīrija"}
        SZ{"Svazilenda"}
        TA{"Tristana da Kuņas salas"}
        TC{"Tērksas un Kaikosas salas"}
        TD{"Čada"}
        TF{"Franču dienvidu teritorijas"}
        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"}
        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 Futuna"}
        WS{"Samoa"}
        YE{"Jemena"}
        YT{"Majota"}
        ZA{"Dienvidāfrikas Republika"}
        ZM{"Zambija"}
        ZW{"Zimbabve"}
        ZZ{"nezināms vai nederīgs reģions"}
    }
    Version{"2.0.50.94"}
}
