﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/lv.xml
// *
// ***************************************************************************
lv{
    AuxExemplarCharacters{"[y ō q ŗ w x]"}
    Ellipsis{
        final{"{0}…"}
        initial{"…{0}"}
        medial{"{0}…{1}"}
        word-final{"{0}…"}
        word-initial{"…{0}"}
        word-medial{"{0}…{1}"}
    }
    ExemplarCharacters{"[a ā b c č d e ē f g ģ h i ī j k ķ l ļ m n ņ o p r s š t u ū v z ž]"}
    ExemplarCharactersIndex{"[A Ā B C Č D E Ē F G Ģ H I Ī Y J K Ķ L Ļ M N Ņ O P Q R S Š T U Ū V W X Z Ž]"}
    ExemplarCharactersPunctuation{
        "[\\- ‐ – — , ; \\: ! ? . … ' ‘ ’ ‚ \u0022 “ ” „ ( ) \\[ \\] § @ * / \\& # † "
        "‡ ′ ″]"
    }
    MoreInformation{"?"}
    NumberElements{
        default{"latn"}
        latn{
            miscPatterns{
                atLeast{"vismaz {0}"}
                range{"{0}–{1}"}
            }
            patterns{
                accountingFormat{"#0.00 ¤"}
                currencyFormat{"#0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 tūkstotis"}
                        other{"0 tūkstoši"}
                        zero{"0 tūkstoši"}
                    }
                    10000{
                        one{"00 tūkstotis"}
                        other{"00 tūkstoši"}
                        zero{"00 tūkstoši"}
                    }
                    100000{
                        one{"000 tūkstotis"}
                        other{"000 tūkstoši"}
                        zero{"000 tūkstoši"}
                    }
                    1000000{
                        one{"0 miljons"}
                        other{"0 miljoni"}
                        zero{"0 miljoni"}
                    }
                    10000000{
                        one{"00 miljons"}
                        other{"00 miljoni"}
                        zero{"00 miljoni"}
                    }
                    100000000{
                        one{"000 miljons"}
                        other{"000 miljoni"}
                        zero{"000 miljoni"}
                    }
                    1000000000{
                        one{"0 miljards"}
                        other{"0 miljardi"}
                        zero{"0 miljardi"}
                    }
                    10000000000{
                        one{"00 miljards"}
                        other{"00 miljardi"}
                        zero{"00 miljardi"}
                    }
                    100000000000{
                        one{"000 miljards"}
                        other{"000 miljardi"}
                        zero{"000 miljardi"}
                    }
                    1000000000000{
                        one{"0 triljons"}
                        other{"0 triljoni"}
                        zero{"0 triljoni"}
                    }
                    10000000000000{
                        one{"00 triljons"}
                        other{"00 triljoni"}
                        zero{"00 triljoni"}
                    }
                    100000000000000{
                        one{"000 triljons"}
                        other{"000 triljoni"}
                        zero{"000 triljoni"}
                    }
                }
            }
            patternsShort{
                currencyFormat{
                    1000{
                        one{"¤0 tūkst'.'"}
                        other{"¤0 tūkst'.'"}
                        zero{"¤0 tūkst'.'"}
                    }
                    10000{
                        one{"¤00 tūkst'.'"}
                        other{"¤00 tūkst'.'"}
                        zero{"¤00 tūkst'.'"}
                    }
                    100000{
                        one{"¤000 tūkst'.'"}
                        other{"¤000 tūkst'.'"}
                        zero{"¤000 tūkst'.'"}
                    }
                    1000000{
                        one{"¤0 milj'.'"}
                        other{"¤0 milj'.'"}
                        zero{"¤0 milj'.'"}
                    }
                    10000000{
                        one{"¤00 milj'.'"}
                        other{"¤00 milj'.'"}
                        zero{"¤00 milj'.'"}
                    }
                    100000000{
                        one{"¤000 milj'.'"}
                        other{"¤000 milj'.'"}
                        zero{"¤000 milj'.'"}
                    }
                    1000000000{
                        one{"¤0 mljrd'.'"}
                        other{"¤0 mljrd'.'"}
                        zero{"¤0 mljrd'.'"}
                    }
                    10000000000{
                        one{"¤00 mljrd'.'"}
                        other{"¤00 mljrd'.'"}
                        zero{"¤00 mljrd'.'"}
                    }
                    100000000000{
                        one{"¤000 mljrd'.'"}
                        other{"¤000 mljrd'.'"}
                        zero{"¤000 mljrd'.'"}
                    }
                    1000000000000{
                        one{"¤0 trilj'.'"}
                        other{"¤0 trilj'.'"}
                        zero{"¤0 trilj'.'"}
                    }
                    10000000000000{
                        one{"¤00 trilj'.'"}
                        other{"¤00 trilj'.'"}
                        zero{"¤00 trilj'.'"}
                    }
                    100000000000000{
                        one{"¤000 trilj'.'"}
                        other{"¤000 trilj'.'"}
                        zero{"¤000 trilj'.'"}
                    }
                }
                decimalFormat{
                    1000{
                        one{"0 tūkst'.'"}
                        other{"0 tūkst'.'"}
                        zero{"0 tūkst'.'"}
                    }
                    10000{
                        one{"00 tūkst'.'"}
                        other{"00 tūkst'.'"}
                        zero{"00 tūkst'.'"}
                    }
                    100000{
                        one{"000 tūkst'.'"}
                        other{"000 tūkst'.'"}
                        zero{"000 tūkst'.'"}
                    }
                    1000000{
                        one{"0 milj'.'"}
                        other{"0 milj'.'"}
                        zero{"0 milj'.'"}
                    }
                    10000000{
                        one{"00 milj'.'"}
                        other{"00 milj'.'"}
                        zero{"00 milj'.'"}
                    }
                    100000000{
                        one{"000 milj'.'"}
                        other{"000 milj'.'"}
                        zero{"000 milj'.'"}
                    }
                    1000000000{
                        one{"0 mljrd'.'"}
                        other{"0 mljrd'.'"}
                        zero{"0 mljrd'.'"}
                    }
                    10000000000{
                        one{"00 mljrd'.'"}
                        other{"00 mljrd'.'"}
                        zero{"00 mljrd'.'"}
                    }
                    100000000000{
                        one{"000 mljrd'.'"}
                        other{"000 mljrd'.'"}
                        zero{"000 mljrd'.'"}
                    }
                    1000000000000{
                        one{"0 trilj'.'"}
                        other{"0 trilj'.'"}
                        zero{"0 trilj'.'"}
                    }
                    10000000000000{
                        one{"00 trilj'.'"}
                        other{"00 trilj'.'"}
                        zero{"00 trilj'.'"}
                    }
                    100000000000000{
                        one{"000 trilj'.'"}
                        other{"000 trilj'.'"}
                        zero{"000 trilj'.'"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{" "}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"nav skaitlis"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{":"}
            }
        }
        minimumGroupingDigits{"3"}
        native{"latn"}
    }
    Version{"2.1.19.19"}
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, y. 'gada' d. MMMM G",
                "y. 'gada' d. MMMM G",
                "y. 'gada' d. MMM G",
                "dd.MM.y GGGGG",
                "{1}, {0}",
                "{1} 'plkst'. {0}",
                "{1} 'plkst'. {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            availableFormats{
                E{"ccc"}
                Ed{"E, d."}
                Gy{"y. 'g'. G"}
                GyMMM{"y. 'g'. MMM G"}
                GyMMMEd{"E, y. 'g'. d. MMM G"}
                GyMMMd{"y. 'g'. d. MMM G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, dd.MM."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMMd{"d. MMMM"}
                MMMd{"d. MMM"}
                Md{"dd.MM."}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y. 'g'. G"}
                yyyy{"y. 'g'. G"}
                yyyyM{"MM.y. G"}
                yyyyMEd{"E, d.M.y. G"}
                yyyyMMM{"y. 'g'. MMM G"}
                yyyyMMMEd{"E, y. 'g'. d. MMM G"}
                yyyyMMMM{"y. 'g'. MMMM G"}
                yyyyMMMd{"y. 'g'. d. MMM G"}
                yyyyMd{"d.MM.y. G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"y. 'gada' QQQQ G"}
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"MM–MM"}
                }
                MEd{
                    M{"E, dd.MM–E, dd.MM"}
                    d{"E, dd.MM–E, dd.MM"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d. MMM–E, d. MMM"}
                    d{"E, d. MMM–E, d. MMM"}
                }
                MMMd{
                    M{"d. MMM–d. MMM"}
                    d{"d.–d. MMM"}
                }
                Md{
                    M{"dd.MM–dd.MM"}
                    d{"dd.MM.–dd.MM."}
                }
                d{
                    d{"d–d"}
                }
                fallback{"{0}–{1}"}
                h{
                    a{"h a – h a"}
                    h{"h–h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm–h:mm a"}
                    m{"h:mm–h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm–h:mm a v"}
                    m{"h:mm–h:mm a v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h–h a v"}
                }
                y{
                    y{"y.–y. G"}
                }
                yM{
                    M{"MM.y.–MM.y. GGGGG"}
                    y{"MM.y.–MM.y. GGGGG"}
                }
                yMEd{
                    M{"E, dd.MM.y.–E, dd.MM.y. GGGGG"}
                    d{"E, dd.MM.y.–E, dd.MM.y. GGGGG"}
                    y{"E, dd.MM.y.–E, dd.MM.y. GGGGG"}
                }
                yMMM{
                    M{"y. 'gada' MMM–MMM G"}
                    y{"y. 'gada' MMM–y. 'gada' MMM G"}
                }
                yMMMEd{
                    M{"E, y. 'gada' d. MMM–E, y. 'gada' d. MMM G"}
                    d{"E, y. 'gada' d. MMM–E, y. 'gada' d. MMM G"}
                    y{"E, y. 'gada' d. MMM–E, y. 'gada' d. MMM G"}
                }
                yMMMM{
                    M{"y. 'gada' MMMM–MMMM G"}
                    y{"y. 'gada' MMMM–y. 'gada' MMMM G"}
                }
                yMMMd{
                    M{"y. 'gada' d. MMM–d. MMM G"}
                    d{"y. 'gada' d.–d. MMM G"}
                    y{"y. 'gada' d. MMM–y. 'gada' d. MMM G"}
                }
                yMd{
                    M{"dd.MM.y.–dd.MM.y. GGGGG"}
                    d{"dd.MM.y.–dd.MM.y. GGGGG"}
                    y{"dd.MM.y.–dd.MM.y. GGGGG"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "priekšpusdienā",
                "pēcpusdienā",
            }
            AmPmMarkersNarrow{
                "priekšp.",
                "pēcp.",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, y. 'gada' d. MMMM",
                "y. 'gada' d. MMMM",
                "y. 'gada' d. MMM",
                "dd.MM.yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                E{"ccc"}
                EHm{"E, HH:mm"}
                EHms{"E, HH:mm:ss"}
                Ed{"E, d."}
                Ehm{"E, h:mm a"}
                Ehms{"E, h:mm:ss a"}
                Gy{"G y. 'g'."}
                GyMMM{"G y. 'g'. MMM"}
                GyMMMEd{"E, G y. 'g'. d. MMM"}
                GyMMMd{"G y. 'g'. d. MMM"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                Hmsv{"HH:mm:ss v"}
                Hmv{"HH:mm v"}
                M{"L"}
                MEd{"E, dd.MM."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMMd{"d. MMMM"}
                MMMd{"d. MMM"}
                Md{"dd.MM."}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                hmsv{"h:mm:ss a v"}
                hmv{"h:mm a v"}
                mmss{"mm:ss"}
                ms{"mm:ss"}
                y{"y. 'g'."}
                yM{"MM.y."}
                yMEd{"E, d.M.y."}
                yMMM{"y. 'g'. MMM"}
                yMMMEd{"E, y. 'g'. d. MMM"}
                yMMMM{"y. 'g'. MMMM"}
                yMMMd{"y. 'g'. d. MMM"}
                yMd{"d.M.y."}
                yQQQ{"y. 'g'. QQQ"}
                yQQQQ{"y. 'g'. QQQQ"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Sv",
                        "Pr",
                        "Ot",
                        "Tr",
                        "Ce",
                        "Pk",
                        "Se",
                    }
                    narrow{
                        "S",
                        "P",
                        "O",
                        "T",
                        "C",
                        "P",
                        "S",
                    }
                    short{
                        "Sv",
                        "Pr",
                        "Ot",
                        "Tr",
                        "Ce",
                        "Pk",
                        "Se",
                    }
                    wide{
                        "svētdiena",
                        "pirmdiena",
                        "otrdiena",
                        "trešdiena",
                        "ceturtdiena",
                        "piektdiena",
                        "sestdiena",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Sv",
                        "Pr",
                        "Ot",
                        "Tr",
                        "Ce",
                        "Pk",
                        "Se",
                    }
                    narrow{
                        "S",
                        "P",
                        "O",
                        "T",
                        "C",
                        "P",
                        "S",
                    }
                    short{
                        "Sv",
                        "Pr",
                        "Ot",
                        "Tr",
                        "Ce",
                        "Pk",
                        "Se",
                    }
                    wide{
                        "Svētdiena",
                        "Pirmdiena",
                        "Otrdiena",
                        "Trešdiena",
                        "Ceturtdiena",
                        "Piektdiena",
                        "Sestdiena",
                    }
                }
            }
            dayPeriod{
                format{
                    abbreviated{
                        afternoon1{"pēcpusd."}
                        evening1{"vakarā"}
                        midnight{"pusnaktī"}
                        morning1{"no rīta"}
                        night1{"naktī"}
                        noon{"pusd."}
                    }
                    narrow{
                        afternoon1{"pēcpusdienā"}
                        evening1{"vakarā"}
                        midnight{"pusnaktī"}
                        morning1{"no rīta"}
                        night1{"naktī"}
                        noon{"pusd."}
                    }
                    wide{
                        afternoon1{"pēcpusdienā"}
                        evening1{"vakarā"}
                        midnight{"pusnaktī"}
                        morning1{"no rīta"}
                        night1{"naktī"}
                        noon{"pusdienlaikā"}
                    }
                }
                stand-alone{
                    abbreviated{
                        afternoon1{"pēcpusdiena"}
                        am{"priekšp."}
                        evening1{"vakars"}
                        midnight{"pusnakts"}
                        morning1{"rīts"}
                        night1{"nakts"}
                        pm{"pēcpusd."}
                    }
                    narrow{
                        afternoon1{"pēcpusdiena"}
                        am{"priekšp."}
                        evening1{"vakars"}
                        midnight{"pusnakts"}
                        morning1{"rīts"}
                        night1{"nakts"}
                        noon{"pusd."}
                        pm{"pēcp."}
                    }
                    wide{
                        afternoon1{"pēcpusdiena"}
                        am{"priekšpusdienā"}
                        evening1{"vakars"}
                        midnight{"pusnakts"}
                        morning1{"rīts"}
                        night1{"nakts"}
                        noon{"pusdienlaiks"}
                        pm{"pēcpusdiena"}
                    }
                }
            }
            eras{
                abbreviated{
                    "p.m.ē.",
                    "m.ē.",
                }
                narrow{
                    "p.m.ē.",
                    "m.ē.",
                }
                wide{
                    "pirms mūsu ēras",
                    "mūsu ērā",
                }
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"MM.–MM."}
                }
                MEd{
                    M{"E, dd.MM – E, dd.MM"}
                    d{"E, dd.MM – E, dd.MM"}
                }
                MMM{
                    M{"LLL–LLL"}
                }
                MMMEd{
                    M{"E, d. MMM – E, d. MMM"}
                    d{"E, d. MMM – E, d. MMM"}
                }
                MMMd{
                    M{"d. MMM – d. MMM"}
                    d{"d.–d. MMM"}
                }
                Md{
                    M{"dd.MM–dd.MM"}
                    d{"dd.MM.–dd.MM."}
                }
                d{
                    d{"d.–d."}
                }
                fallback{"{0} - {1}"}
                h{
                    a{"h a – h a"}
                    h{"h–h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm–h:mm a"}
                    m{"h:mm–h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm–h:mm a v"}
                    m{"h:mm–h:mm a, v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h–h a v"}
                }
                y{
                    y{"y.–y."}
                }
                yM{
                    M{"MM.y.–MM.y."}
                    y{"MM.y.–MM.y."}
                }
                yMEd{
                    M{"E, dd.MM.y. – E, dd.MM.y."}
                    d{"E, dd.MM.y. – E, dd.MM.y."}
                    y{"E, dd.MM.y. – E, dd.MM.y."}
                }
                yMMM{
                    M{"y. 'gada' MMM–MMM"}
                    y{"y. 'gada' MMM – y. 'gada' MMM"}
                }
                yMMMEd{
                    M{"E, y. 'gada' d. MMM – E, y. 'gada' d. MMM"}
                    d{"E, y. 'gada' d. MMM – E, y. 'gada' d. MMM"}
                    y{"E, y. 'gada' d. MMM – E, y. 'gada' d. MMM"}
                }
                yMMMM{
                    M{"y. 'gada' MMMM–MMMM"}
                    y{"y. 'gada' MMMM – y. 'gada' MMMM"}
                }
                yMMMd{
                    M{"y. 'gada' d. MMM – d. MMM"}
                    d{"y. 'gada' d.–d. MMM"}
                    y{"y. 'gada' d. MMM – y. 'gada' d. MMM"}
                }
                yMd{
                    M{"dd.MM.y.–dd.MM.y."}
                    d{"dd.MM.y.–dd.MM.y."}
                    y{"dd.MM.y.–dd.MM.y."}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "janv.",
                        "febr.",
                        "marts",
                        "apr.",
                        "maijs",
                        "jūn.",
                        "jūl.",
                        "aug.",
                        "sept.",
                        "okt.",
                        "nov.",
                        "dec.",
                    }
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "janvāris",
                        "februāris",
                        "marts",
                        "aprīlis",
                        "maijs",
                        "jūnijs",
                        "jūlijs",
                        "augusts",
                        "septembris",
                        "oktobris",
                        "novembris",
                        "decembris",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Janv.",
                        "Febr.",
                        "Marts",
                        "Apr.",
                        "Maijs",
                        "Jūn.",
                        "Jūl.",
                        "Aug.",
                        "Sept.",
                        "Okt.",
                        "Nov.",
                        "Dec.",
                    }
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "Janvāris",
                        "Februāris",
                        "Marts",
                        "Aprīlis",
                        "Maijs",
                        "Jūnijs",
                        "Jūlijs",
                        "Augusts",
                        "Septembris",
                        "Oktobris",
                        "Novembris",
                        "Decembris",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "1. cet.",
                        "2. cet.",
                        "3. cet.",
                        "4. cet.",
                    }
                    narrow{
                        "1.",
                        "2.",
                        "3.",
                        "4.",
                    }
                    wide{
                        "1. ceturksnis",
                        "2. ceturksnis",
                        "3. ceturksnis",
                        "4. ceturksnis",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1. cet.",
                        "2. cet.",
                        "3. cet.",
                        "4. cet.",
                    }
                    narrow{
                        "1.",
                        "2.",
                        "3.",
                        "4.",
                    }
                    wide{
                        "1. ceturksnis",
                        "2. ceturksnis",
                        "3. ceturksnis",
                        "4. ceturksnis",
                    }
                }
            }
        }
        hebrew{
            monthNames{
                format{
                    wide{
                        "tišri",
                        "hešvans",
                        "kisļevs",
                        "tevets",
                        "ševats",
                        "1. adars",
                        "adars",
                        "nisans",
                        "ijars",
                        "sivans",
                        "tamuzs",
                        "avs",
                        "eluls",
                        "2. adars",
                    }
                }
            }
        }
        islamic{
            monthNames{
                format{
                    wide{
                        "muharams",
                        "safars",
                        "1. rabī",
                        "2. rabī",
                        "1. džumādā",
                        "2. džumādā",
                        "radžabs",
                        "šabans",
                        "ramadāns",
                        "šauvals",
                        "du al-kidā",
                        "du al-hidžā",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            dn{"diena"}
            relative{
                "-1"{"vakar"}
                "-2"{"aizvakar"}
                "0"{"šodien"}
                "1"{"rīt"}
                "2"{"parīt"}
            }
            relativeTime{
                future{
                    one{"pēc {0} dienas"}
                    other{"pēc {0} dienām"}
                    zero{"pēc {0} dienām"}
                }
                past{
                    one{"pirms {0} dienas"}
                    other{"pirms {0} dienām"}
                    zero{"pirms {0} dienām"}
                }
            }
        }
        day-narrow{
            dn{"d."}
            relativeTime{
                future{
                    one{"pēc {0} d."}
                    other{"pēc {0} d."}
                    zero{"pēc {0} d."}
                }
                past{
                    one{"pirms {0} d."}
                    other{"pirms {0} d."}
                    zero{"pirms {0} d."}
                }
            }
        }
        day-short{
            dn{"d."}
            relativeTime{
                future{
                    one{"pēc {0} d."}
                    other{"pēc {0} d."}
                    zero{"pēc {0} d."}
                }
                past{
                    one{"pirms {0} d."}
                    other{"pirms {0} d."}
                    zero{"pirms {0} d."}
                }
            }
        }
        dayperiod{
            dn{"priekšpusdienā/pēcpusdienā"}
        }
        era{
            dn{"ēra"}
        }
        fri{
            relative{
                "-1"{"pagājušajā piektdienā"}
                "0"{"šajā piektdienā"}
                "1"{"nākamajā piektdienā"}
            }
        }
        fri-narrow{
            relative{
                "-1"{"pag. piektd."}
                "0"{"šajā piektd."}
                "1"{"nāk. piektd."}
            }
        }
        fri-short{
            relative{
                "-1"{"pag. piektd."}
                "0"{"šajā piektd."}
                "1"{"nāk. piektd."}
            }
        }
        hour{
            dn{"stundas"}
            relativeTime{
                future{
                    one{"pēc {0} stundas"}
                    other{"pēc {0} stundām"}
                    zero{"pēc {0} stundām"}
                }
                past{
                    one{"pirms {0} stundas"}
                    other{"pirms {0} stundām"}
                    zero{"pirms {0} stundām"}
                }
            }
        }
        hour-narrow{
            dn{"h"}
            relativeTime{
                future{
                    one{"pēc {0} h"}
                    other{"pēc {0} h"}
                    zero{"pēc {0} h"}
                }
                past{
                    one{"pirms {0} h"}
                    other{"pirms {0} h"}
                    zero{"pirms {0} h"}
                }
            }
        }
        hour-short{
            dn{"st."}
            relativeTime{
                future{
                    one{"pēc {0} st."}
                    other{"pēc {0} st."}
                    zero{"pēc {0} st."}
                }
                past{
                    one{"pirms {0} st."}
                    other{"pirms {0} st."}
                    zero{"pirms {0} st."}
                }
            }
        }
        minute{
            dn{"minūtes"}
            relativeTime{
                future{
                    one{"pēc {0} minūtes"}
                    other{"pēc {0} minūtēm"}
                    zero{"pēc {0} minūtēm"}
                }
                past{
                    one{"pirms {0} minūtes"}
                    other{"pirms {0} minūtēm"}
                    zero{"pirms {0} minūtēm"}
                }
            }
        }
        minute-narrow{
            dn{"min"}
            relativeTime{
                future{
                    one{"pēc {0} min"}
                    other{"pēc {0} min"}
                    zero{"pēc {0} min"}
                }
                past{
                    one{"pirms {0} min"}
                    other{"pirms {0} min"}
                    zero{"pirms {0} min"}
                }
            }
        }
        minute-short{
            dn{"min."}
            relativeTime{
                future{
                    one{"pēc {0} min."}
                    other{"pēc {0} min."}
                    zero{"pēc {0} min."}
                }
                past{
                    one{"pirms {0} min."}
                    other{"pirms {0} min."}
                    zero{"pirms {0} min."}
                }
            }
        }
        mon{
            relative{
                "-1"{"pagājušajā pirmdienā"}
                "0"{"šajā pirmdienā"}
                "1"{"nākamajā pirmdienā"}
            }
        }
        mon-narrow{
            relative{
                "-1"{"pag. pirmd."}
                "0"{"šajā pirmd."}
                "1"{"nāk. pirmd."}
            }
        }
        mon-short{
            relative{
                "-1"{"pag. pirmd."}
                "0"{"šajā pirmd."}
                "1"{"nāk. pirmd."}
            }
        }
        month{
            dn{"mēnesis"}
            relative{
                "-1"{"pagājušajā mēnesī"}
                "0"{"šajā mēnesī"}
                "1"{"nākamajā mēnesī"}
            }
            relativeTime{
                future{
                    one{"pēc {0} mēneša"}
                    other{"pēc {0} mēnešiem"}
                    zero{"pēc {0} mēnešiem"}
                }
                past{
                    one{"pirms {0} mēneša"}
                    other{"pirms {0} mēnešiem"}
                    zero{"pirms {0} mēnešiem"}
                }
            }
        }
        month-narrow{
            dn{"mēn."}
            relativeTime{
                future{
                    one{"pēc {0} mēn."}
                    other{"pēc {0} mēn."}
                    zero{"pēc {0} mēn."}
                }
                past{
                    one{"pirms {0} mēn."}
                    other{"pirms {0} mēn."}
                    zero{"pirms {0} mēn."}
                }
            }
        }
        month-short{
            dn{"mēn."}
            relativeTime{
                future{
                    one{"pēc {0} mēn."}
                    other{"pēc {0} mēn."}
                    zero{"pēc {0} mēn."}
                }
                past{
                    one{"pirms {0} mēn."}
                    other{"pirms {0} mēn."}
                    zero{"pirms {0} mēn."}
                }
            }
        }
        quarter{
            dn{"ceturksnis"}
            relativeTime{
                future{
                    one{"pēc {0} ceturkšņa"}
                    other{"pēc {0} ceturkšņiem"}
                    zero{"pēc {0} ceturkšņiem"}
                }
                past{
                    one{"pirms {0} ceturkšņa"}
                    other{"pirms {0} ceturkšņiem"}
                    zero{"pirms {0} ceturkšņiem"}
                }
            }
        }
        quarter-narrow{
            dn{"cet."}
            relativeTime{
                future{
                    one{"pēc {0} cet."}
                    other{"pēc {0} cet."}
                    zero{"pēc {0} cet."}
                }
                past{
                    one{"pirms {0} cet."}
                    other{"pirms {0} cet."}
                    zero{"pirms {0} cet."}
                }
            }
        }
        quarter-short{
            dn{"cet."}
            relativeTime{
                future{
                    one{"pēc {0} cet."}
                    other{"pēc {0} cet."}
                    zero{"pēc {0} cet."}
                }
                past{
                    one{"pirms {0} cet."}
                    other{"pirms {0} cet."}
                    zero{"pirms {0} cet."}
                }
            }
        }
        sat{
            relative{
                "-1"{"pagājušajā sestdienā"}
                "0"{"šajā sestdienā"}
                "1"{"nākamajā sestdienā"}
            }
        }
        sat-narrow{
            relative{
                "-1"{"pag. sestd."}
                "0"{"šajā sestd."}
                "1"{"nāk. sestd."}
            }
        }
        sat-short{
            relative{
                "-1"{"pag. sestd."}
                "0"{"šajā sestd."}
                "1"{"nāk. sestd."}
            }
        }
        second{
            dn{"sekundes"}
            relative{
                "0"{"tagad"}
            }
            relativeTime{
                future{
                    one{"pēc {0} sekundes"}
                    other{"pēc {0} sekundēm"}
                    zero{"pēc {0} sekundēm"}
                }
                past{
                    one{"pirms {0} sekundes"}
                    other{"pirms {0} sekundēm"}
                    zero{"pirms {0} sekundēm"}
                }
            }
        }
        second-narrow{
            dn{"s"}
            relativeTime{
                future{
                    one{"pēc {0} s"}
                    other{"pēc {0} s"}
                    zero{"pēc {0} s"}
                }
                past{
                    one{"pirms {0} s"}
                    other{"pirms {0} s"}
                    zero{"pirms {0} s"}
                }
            }
        }
        second-short{
            dn{"sek."}
            relativeTime{
                future{
                    one{"pēc {0} sek."}
                    other{"pēc {0} sek."}
                    zero{"pēc {0} sek."}
                }
                past{
                    one{"pirms {0} sek."}
                    other{"pirms {0} sek."}
                    zero{"pirms {0} sek."}
                }
            }
        }
        sun{
            relative{
                "-1"{"pagājušajā svētdienā"}
                "0"{"šajā svētdienā"}
                "1"{"nākamajā svētdienā"}
            }
        }
        sun-narrow{
            relative{
                "-1"{"pag. svētd."}
                "0"{"šajā svētd."}
                "1"{"nāk. svētd."}
            }
        }
        sun-short{
            relative{
                "-1"{"pag. svētd."}
                "0"{"šajā svētd."}
                "1"{"nāk. svētd."}
            }
        }
        thu{
            relative{
                "-1"{"pagājušajā ceturtdienā"}
                "0"{"šajā ceturtdienā"}
                "1"{"nākamajā ceturtdienā"}
            }
        }
        thu-narrow{
            relative{
                "-1"{"pag. ceturtd."}
                "0"{"šajā ceturtd."}
                "1"{"nāk. ceturtd."}
            }
        }
        thu-short{
            relative{
                "-1"{"pag. ceturtd."}
                "0"{"šajā ceturtd."}
                "1"{"nāk. ceturtd."}
            }
        }
        tue{
            relative{
                "-1"{"pagājušajā otrdienā"}
                "0"{"šajā otrdienā"}
                "1"{"nākamajā otrdienā"}
            }
        }
        tue-narrow{
            relative{
                "-1"{"pag. otrd."}
                "0"{"šajā otrd."}
                "1"{"nāk. otrd."}
            }
        }
        tue-short{
            relative{
                "-1"{"pag. otrd."}
                "0"{"šajā otrd."}
                "1"{"nāk. otrd."}
            }
        }
        wed{
            relative{
                "-1"{"pagājušajā trešdienā"}
                "0"{"šajā trešdienā"}
                "1"{"nākamajā trešdienā"}
            }
        }
        wed-narrow{
            relative{
                "-1"{"pag. trešd."}
                "0"{"šajā trešd."}
                "1"{"nāk. trešd."}
            }
        }
        wed-short{
            relative{
                "-1"{"pag. trešd."}
                "0"{"šajā trešd."}
                "1"{"nāk. trešd."}
            }
        }
        week{
            dn{"nedēļa"}
            relative{
                "-1"{"pagājušajā nedēļā"}
                "0"{"šajā nedēļā"}
                "1"{"nākamajā nedēļā"}
            }
            relativeTime{
                future{
                    one{"pēc {0} nedēļas"}
                    other{"pēc {0} nedēļām"}
                    zero{"pēc {0} nedēļām"}
                }
                past{
                    one{"pirms {0} nedēļas"}
                    other{"pirms {0} nedēļām"}
                    zero{"pirms {0} nedēļām"}
                }
            }
        }
        week-narrow{
            dn{"ned."}
            relativeTime{
                future{
                    one{"pēc {0} ned."}
                    other{"pēc {0} ned."}
                    zero{"pēc {0} ned."}
                }
                past{
                    one{"pirms {0} ned."}
                    other{"pirms {0} ned."}
                    zero{"pirms {0} ned."}
                }
            }
        }
        week-short{
            dn{"ned."}
            relativeTime{
                future{
                    one{"pēc {0} ned."}
                    other{"pēc {0} ned."}
                    zero{"pēc {0} ned."}
                }
                past{
                    one{"pirms {0} ned."}
                    other{"pirms {0} ned."}
                    zero{"pirms {0} ned."}
                }
            }
        }
        weekday{
            dn{"nedēļas diena"}
        }
        year{
            dn{"gads"}
            relative{
                "-1"{"pagājušajā gadā"}
                "0"{"šajā gadā"}
                "1"{"nākamajā gadā"}
            }
            relativeTime{
                future{
                    one{"pēc {0} gada"}
                    other{"pēc {0} gadiem"}
                    zero{"pēc {0} gadiem"}
                }
                past{
                    one{"pirms {0} gada"}
                    other{"pirms {0} gadiem"}
                    zero{"pirms {0} gadiem"}
                }
            }
        }
        year-narrow{
            dn{"g."}
            relativeTime{
                future{
                    one{"pēc {0} g."}
                    other{"pēc {0} g."}
                    zero{"pēc {0} g."}
                }
                past{
                    one{"pirms {0} g."}
                    other{"pirms {0} g."}
                    zero{"pirms {0} g."}
                }
            }
        }
        year-short{
            dn{"g."}
            relativeTime{
                future{
                    one{"pēc {0} g."}
                    other{"pēc {0} g."}
                    zero{"pēc {0} g."}
                }
                past{
                    one{"pirms {0} g."}
                    other{"pirms {0} g."}
                    zero{"pirms {0} g."}
                }
            }
        }
        zone{
            dn{"laika josla"}
        }
    }
    listPattern{
        standard{
            2{"{0} un {1}"}
            end{"{0} un {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} un {1}"}
            end{"{0} un {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-narrow{
            2{"{0} {1}"}
            end{"{0} {1}"}
            middle{"{0} {1}"}
            start{"{0} {1}"}
        }
        unit-short{
            2{"{0} un {1}"}
            end{"{0} un {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"angļu"}
        US{"amerikāņu"}
        metric{"metriskā"}
    }
    transformNames{
        BGN{"BGN"}
        Numeric{"Ciparu"}
        Tone{"Intonācija"}
        UNGEGN{"UNGEGN"}
        x-Accents{"Diakritiskās zīmes"}
        x-Fullwidth{"Pilna platuma"}
        x-Halfwidth{"Pusplatuma"}
        x-Jamo{"Džamo"}
        x-Pinyin{"Piņjiņ"}
        x-Publishing{"Izdevējdarbība"}
    }
}
