﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/ro.xml
// *
// ***************************************************************************
ro{
    AuxExemplarCharacters{"[á à å ä ç é è ê ë ñ ö q ş ţ ü w y]"}
    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 x z]"}
    ExemplarCharactersIndex{"[A Ă Â B C D E F G H I Î J K L M N O P Q R S Ș T Ț U V W X Y Z]"}
    ExemplarCharactersPunctuation{"[\\- ‐ – — , ; \\: ! ? . … ' ‘ \u0022 “ ” „ « » ( ) \\[ \\] @ * /]"}
    MoreInformation{"..."}
    NumberElements{
        default{"latn"}
        latn{
            miscPatterns{
                atLeast{">{0}"}
                range{"{0} - {1}"}
            }
            patterns{
                accountingFormat{"#,##0.00 ¤;(#,##0.00 ¤)"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0 %"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        few{"0 mii"}
                        one{"0 mie"}
                        other{"0 de mii"}
                    }
                    10000{
                        few{"00 mii"}
                        one{"00 mie"}
                        other{"00 de mii"}
                    }
                    100000{
                        few{"000 mii"}
                        one{"000 mie"}
                        other{"000 de mii"}
                    }
                    1000000{
                        few{"0 milioane"}
                        one{"0 milion"}
                        other{"0 de milioane"}
                    }
                    10000000{
                        few{"00 milioane"}
                        one{"00 milion"}
                        other{"00 de milioane"}
                    }
                    100000000{
                        few{"000 milioane"}
                        one{"000 milion"}
                        other{"000 de milioane"}
                    }
                    1000000000{
                        few{"0 miliarde"}
                        one{"0 miliard"}
                        other{"0 de miliarde"}
                    }
                    10000000000{
                        few{"00 miliarde"}
                        one{"00 miliard"}
                        other{"00 de miliarde"}
                    }
                    100000000000{
                        few{"000 miliarde"}
                        one{"000 miliard"}
                        other{"000 de miliarde"}
                    }
                    1000000000000{
                        few{"0 trilioane"}
                        one{"0 trilion"}
                        other{"0 de trilioane"}
                    }
                    10000000000000{
                        few{"00 trilioane"}
                        one{"00 trilion"}
                        other{"00 de trilioane"}
                    }
                    100000000000000{
                        few{"000 trilioane"}
                        one{"000 trilion"}
                        other{"000 de trilioane"}
                    }
                }
            }
            patternsShort{
                currencyFormat{
                    1000{
                        few{"0 mii ¤"}
                        one{"0 mie ¤"}
                        other{"0 mii ¤"}
                    }
                    10000{
                        few{"00 mii ¤"}
                        one{"00 mii ¤"}
                        other{"00 mii ¤"}
                    }
                    100000{
                        few{"000 mii ¤"}
                        one{"000 mii ¤"}
                        other{"000 mii ¤"}
                    }
                    1000000{
                        few{"0 mil'.' ¤"}
                        one{"0 mil'.' ¤"}
                        other{"0 mil'.' ¤"}
                    }
                    10000000{
                        few{"00 mil'.' ¤"}
                        one{"00 mil'.' ¤"}
                        other{"00 mil'.' ¤"}
                    }
                    100000000{
                        few{"000 mil'.' ¤"}
                        one{"000 mil'.' ¤"}
                        other{"000 mil'.' ¤"}
                    }
                    1000000000{
                        few{"0 mld'.' ¤"}
                        one{"0 mld'.' ¤"}
                        other{"0 mld'.' ¤"}
                    }
                    10000000000{
                        few{"00 mld'.' ¤"}
                        one{"00 mld'.' ¤"}
                        other{"00 mld'.' ¤"}
                    }
                    100000000000{
                        few{"000 mld'.' ¤"}
                        one{"000 mld'.' ¤"}
                        other{"000 mld'.' ¤"}
                    }
                    1000000000000{
                        few{"0 tril'.' ¤"}
                        one{"0 tril'.' ¤"}
                        other{"0 tril'.' ¤"}
                    }
                    10000000000000{
                        few{"00 tril'.' ¤"}
                        one{"00 tril'.' ¤"}
                        other{"00 tril'.' ¤"}
                    }
                    100000000000000{
                        few{"000 tril'.' ¤"}
                        one{"000 tril'.' ¤"}
                        other{"000 tril'.' ¤"}
                    }
                }
                decimalFormat{
                    1000{
                        few{"0 K"}
                        one{"0 K"}
                        other{"0 K"}
                    }
                    10000{
                        few{"00 K"}
                        one{"00 K"}
                        other{"00 K"}
                    }
                    100000{
                        few{"000 K"}
                        one{"000 K"}
                        other{"000 K"}
                    }
                    1000000{
                        few{"0 mil'.'"}
                        one{"0 mil'.'"}
                        other{"0 mil'.'"}
                    }
                    10000000{
                        few{"00 mil'.'"}
                        one{"00 mil'.'"}
                        other{"00 mil'.'"}
                    }
                    100000000{
                        few{"000 mil'.'"}
                        one{"000 mil'.'"}
                        other{"000 mil'.'"}
                    }
                    1000000000{
                        few{"0 mld'.'"}
                        one{"0 mld'.'"}
                        other{"0 mld'.'"}
                    }
                    10000000000{
                        few{"00 mld'.'"}
                        one{"00 mld'.'"}
                        other{"00 mld'.'"}
                    }
                    100000000000{
                        few{"000 mld'.'"}
                        one{"000 mld'.'"}
                        other{"000 mld'.'"}
                    }
                    1000000000000{
                        few{"0 tril'.'"}
                        one{"0 tril'.'"}
                        other{"0 tril'.'"}
                    }
                    10000000000000{
                        few{"00 tril'.'"}
                        one{"00 tril'.'"}
                        other{"00 tril'.'"}
                    }
                    100000000000000{
                        few{"000 tril'.'"}
                        one{"000 tril'.'"}
                        other{"000 tril'.'"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{":"}
            }
        }
        minimumGroupingDigits{"1"}
        native{"latn"}
    }
    Version{"2.1.22.93"}
    calendar{
        buddhist{
            eras{
                abbreviated{
                    "e.b.",
                }
                wide{
                    "era budistă",
                }
            }
        }
        chinese{
            monthNames{
                format{
                    abbreviated{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    wide{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
            }
        }
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d MMMM y G",
                "d MMMM y G",
                "dd.MM.y G",
                "dd.MM.y GGGGG",
                "{1}, {0}",
                "{1} 'la' {0}",
                "{1} 'la' {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            availableFormats{
                E{"ccc"}
                Ed{"E d"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMd{"d MMM y 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"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yyyy{"y G"}
                yyyyM{"MM.y G"}
                yyyyMEd{"E, dd.MM.y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"dd.MM.y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y 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{"M–M"}
                }
                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 G"}
                    y{"MM.y – MM.y G"}
                }
                yMEd{
                    M{"E, dd.MM.y – E, dd.MM.y G"}
                    d{"E, dd.MM.y – E, dd.MM.y G"}
                    y{"E, dd.MM.y – E, dd.MM.y G"}
                }
                yMMM{
                    M{"MMM–MMM y G"}
                    y{"MMM y – MMM y G"}
                }
                yMMMEd{
                    M{"E, d MMM – E, d MMM y G"}
                    d{"E, d MMM – E, d MMM y G"}
                    y{"E, d MMM y – E, d MMM y G"}
                }
                yMMMM{
                    M{"MMMM–MMMM y G"}
                    y{"MMMM y – MMMM y G"}
                }
                yMMMd{
                    M{"d MMM – d MMM y G"}
                    d{"d–d MMM y G"}
                    y{"d MMM y – d MMM y G"}
                }
                yMd{
                    M{"dd.MM.y – dd.MM.y G"}
                    d{"dd.MM.y – dd.MM.y G"}
                    y{"dd.MM.y – dd.MM.y G"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "a.m.",
                "p.m.",
            }
            AmPmMarkersAbbr{
                "a.m.",
                "p.m.",
            }
            AmPmMarkersNarrow{
                "a.m.",
                "p.m.",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d MMMM y",
                "d MMMM y",
                "d MMM y",
                "dd.MM.y",
                "{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{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMd{"d MMM y G"}
                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"}
                MMdd{"dd.MM"}
                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"}
                ms{"mm:ss"}
                y{"y"}
                yM{"MM.y"}
                yMEd{"E, dd.MM.y"}
                yMM{"MM.y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d MMM y"}
                yMd{"dd.MM.y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "dum.",
                        "lun.",
                        "mar.",
                        "mie.",
                        "joi",
                        "vin.",
                        "sâm.",
                    }
                    narrow{
                        "D",
                        "L",
                        "M",
                        "M",
                        "J",
                        "V",
                        "S",
                    }
                    short{
                        "du.",
                        "lu.",
                        "ma.",
                        "mi.",
                        "jo.",
                        "vi.",
                        "sâ.",
                    }
                    wide{
                        "duminică",
                        "luni",
                        "marți",
                        "miercuri",
                        "joi",
                        "vineri",
                        "sâmbătă",
                    }
                }
                stand-alone{
                    abbreviated{
                        "dum.",
                        "lun.",
                        "mar.",
                        "mie.",
                        "joi",
                        "vin.",
                        "sâm.",
                    }
                    narrow{
                        "D",
                        "L",
                        "M",
                        "M",
                        "J",
                        "V",
                        "S",
                    }
                    short{
                        "du",
                        "lu",
                        "ma",
                        "mi",
                        "jo",
                        "vi",
                        "sâ",
                    }
                    wide{
                        "duminică",
                        "luni",
                        "marți",
                        "miercuri",
                        "joi",
                        "vineri",
                        "sâmbătă",
                    }
                }
            }
            dayPeriod{
                format{
                    abbreviated{
                        afternoon1{"după-amiaza"}
                        evening1{"seara"}
                        midnight{"miezul nopții"}
                        morning1{"dimineața"}
                        night1{"noaptea"}
                        noon{"amiază"}
                    }
                    narrow{
                        afternoon1{"după-amiază"}
                        evening1{"seară"}
                        midnight{"miezul nopții"}
                        morning1{"dimineață"}
                        night1{"noapte"}
                        noon{"prânz"}
                    }
                    wide{
                        afternoon1{"după-amiaza"}
                        evening1{"seara"}
                        midnight{"la miezul nopții"}
                        morning1{"dimineața"}
                        night1{"noaptea"}
                        noon{"la amiază"}
                    }
                }
                stand-alone{
                    abbreviated{
                        am{"a.m."}
                        midnight{"miezul nopții"}
                        noon{"amiază"}
                        pm{"p.m."}
                    }
                    narrow{
                        am{"a.m."}
                        midnight{"miezul nopții"}
                        pm{"p.m."}
                    }
                    wide{
                        afternoon1{"după-amiază"}
                        am{"a.m."}
                        evening1{"seară"}
                        midnight{"la miezul nopții"}
                        morning1{"dimineață"}
                        night1{"noapte"}
                        noon{"la amiază"}
                        pm{"p.m."}
                    }
                }
            }
            eras{
                abbreviated{
                    "î.Hr.",
                    "d.Hr.",
                }
                abbreviated%variant{
                    "î.e.n",
                    "e.n.",
                }
                wide{
                    "înainte de Hristos",
                    "după Hristos",
                }
                wide%variant{
                    "înaintea erei noastre",
                    "era noastră",
                }
            }
            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{"M–M"}
                }
                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"}
                }
                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{"MMM–MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMEd{
                    M{"E, d MMM – E, d MMM y"}
                    d{"E, d MMM – E, d MMM y"}
                    y{"E, d MMM y – E, d MMM y"}
                }
                yMMMM{
                    M{"MMMM – MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"d MMM – d MMM y"}
                    d{"d–d MMM y"}
                    y{"d MMM y – d MMM y"}
                }
                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{
                        "ian.",
                        "feb.",
                        "mar.",
                        "apr.",
                        "mai",
                        "iun.",
                        "iul.",
                        "aug.",
                        "sept.",
                        "oct.",
                        "nov.",
                        "dec.",
                    }
                    narrow{
                        "I",
                        "F",
                        "M",
                        "A",
                        "M",
                        "I",
                        "I",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "ianuarie",
                        "februarie",
                        "martie",
                        "aprilie",
                        "mai",
                        "iunie",
                        "iulie",
                        "august",
                        "septembrie",
                        "octombrie",
                        "noiembrie",
                        "decembrie",
                    }
                }
                stand-alone{
                    abbreviated{
                        "ian.",
                        "feb.",
                        "mar.",
                        "apr.",
                        "mai",
                        "iun.",
                        "iul.",
                        "aug.",
                        "sept.",
                        "oct.",
                        "nov.",
                        "dec.",
                    }
                    narrow{
                        "I",
                        "F",
                        "M",
                        "A",
                        "M",
                        "I",
                        "I",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "ianuarie",
                        "februarie",
                        "martie",
                        "aprilie",
                        "mai",
                        "iunie",
                        "iulie",
                        "august",
                        "septembrie",
                        "octombrie",
                        "noiembrie",
                        "decembrie",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "trim. I",
                        "trim. II",
                        "trim. III",
                        "trim. IV",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "trimestrul I",
                        "trimestrul al II-lea",
                        "trimestrul al III-lea",
                        "trimestrul al IV-lea",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Trim. I",
                        "Trim. II",
                        "Trim. III",
                        "Trim. IV",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "Trimestrul I",
                        "Trimestrul al II-lea",
                        "Trimestrul al III-lea",
                        "Trimestrul al IV-lea",
                    }
                }
            }
        }
        hebrew{
            monthNames{
                format{
                    abbreviated{
                        "Tișrei",
                        "Heșvan",
                        "Kislev",
                        "Tevet",
                        "Șevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tammuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                    wide{
                        "Tișrei",
                        "Heșvan",
                        "Kislev",
                        "Tevet",
                        "Șevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tammuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Tișrei",
                        "Heșvan",
                        "Kislev",
                        "Tevet",
                        "Șevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tammuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                    wide{
                        "Tișrei",
                        "Heșvan",
                        "Kislev",
                        "Tevet",
                        "Șevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tammuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                }
            }
        }
        islamic{
            eras{
                abbreviated{
                    "AH",
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"»"}
        alternateQuotationStart{"«"}
        quotationEnd{"”"}
        quotationStart{"„"}
    }
    fields{
        day{
            dn{"Zi"}
            relative{
                "-1"{"ieri"}
                "-2"{"alaltăieri"}
                "0"{"azi"}
                "1"{"mâine"}
                "2"{"poimâine"}
            }
            relativeTime{
                future{
                    few{"peste {0} zile"}
                    one{"peste {0} zi"}
                    other{"peste {0} de zile"}
                }
                past{
                    few{"acum {0} zile"}
                    one{"acum {0} zi"}
                    other{"acum {0} de zile"}
                }
            }
        }
        day-narrow{
            dn{"zi"}
            relativeTime{
                future{
                    few{"+{0} zile"}
                    one{"+{0} zi"}
                    other{"+{0} zile"}
                }
                past{
                    few{"-{0} zile"}
                    one{"-{0} zi"}
                    other{"-{0} zile"}
                }
            }
        }
        day-short{
            dn{"zi"}
            relativeTime{
                future{
                    few{"peste {0} zile"}
                    one{"peste {0} zi"}
                    other{"peste {0} zile"}
                }
                past{
                    few{"acum {0} zile"}
                    one{"acum {0} zi"}
                    other{"acum {0} zile"}
                }
            }
        }
        dayperiod{
            dn{"a.m/p.m."}
        }
        era{
            dn{"Eră"}
        }
        fri{
            relative{
                "-1"{"vinerea trecută"}
                "0"{"vinerea aceasta"}
                "1"{"vinerea viitoare"}
            }
        }
        fri-narrow{
            relative{
                "-1"{"V (trecută)"}
                "0"{"V (aceasta)"}
                "1"{"V (viitoare)"}
            }
        }
        fri-short{
            relative{
                "-1"{"vin. trecută"}
                "0"{"vin. aceasta"}
                "1"{"vin. viitoare"}
            }
        }
        hour{
            dn{"Oră"}
            relativeTime{
                future{
                    few{"peste {0} ore"}
                    one{"peste {0} oră"}
                    other{"peste {0} de ore"}
                }
                past{
                    few{"acum {0} ore"}
                    one{"acum {0} oră"}
                    other{"acum {0} de ore"}
                }
            }
        }
        hour-narrow{
            dn{"h"}
            relativeTime{
                future{
                    few{"+{0} h"}
                    one{"+{0} h"}
                    other{"+{0} h"}
                }
                past{
                    few{"-{0} h"}
                    one{"-{0} h"}
                    other{"-{0} h"}
                }
            }
        }
        hour-short{
            dn{"h"}
            relativeTime{
                future{
                    few{"peste {0} h"}
                    one{"peste {0} h"}
                    other{"peste {0} h"}
                }
                past{
                    few{"acum {0} h"}
                    one{"acum {0} h"}
                    other{"acum {0} h"}
                }
            }
        }
        minute{
            dn{"Minut"}
            relativeTime{
                future{
                    few{"peste {0} minute"}
                    one{"peste {0} minut"}
                    other{"peste {0} de minute"}
                }
                past{
                    few{"acum {0} minute"}
                    one{"acum {0} minut"}
                    other{"acum {0} de minute"}
                }
            }
        }
        minute-narrow{
            dn{"m"}
            relativeTime{
                future{
                    few{"+{0} m"}
                    one{"+{0} m"}
                    other{"+{0} m"}
                }
                past{
                    few{"-{0} m"}
                    one{"-{0} m"}
                    other{"-{0} m"}
                }
            }
        }
        minute-short{
            dn{"min."}
            relativeTime{
                future{
                    few{"peste {0} min."}
                    one{"peste {0} min."}
                    other{"peste {0} min."}
                }
                past{
                    few{"acum {0} min."}
                    one{"acum {0} min."}
                    other{"acum {0} min."}
                }
            }
        }
        mon{
            relative{
                "-1"{"lunea trecută"}
                "0"{"lunea aceasta"}
                "1"{"lunea viitoare"}
            }
        }
        mon-narrow{
            relative{
                "-1"{"L (trecută)"}
                "0"{"L (aceasta)"}
                "1"{"L (viitoare)"}
            }
        }
        mon-short{
            relative{
                "-1"{"lun. trecută"}
                "0"{"lun. aceasta"}
                "1"{"lun. viitoare"}
            }
        }
        month{
            dn{"Lună"}
            relative{
                "-1"{"luna trecută"}
                "0"{"luna aceasta"}
                "1"{"luna viitoare"}
            }
            relativeTime{
                future{
                    few{"peste {0} luni"}
                    one{"peste {0} lună"}
                    other{"peste {0} de luni"}
                }
                past{
                    few{"acum {0} luni"}
                    one{"acum {0} lună"}
                    other{"acum {0} de luni"}
                }
            }
        }
        month-narrow{
            dn{"lună"}
            relativeTime{
                future{
                    few{"+{0} luni"}
                    one{"+{0} lună"}
                    other{"+{0} luni"}
                }
                past{
                    few{"-{0} luni"}
                    one{"-{0} lună"}
                    other{"-{0} luni"}
                }
            }
        }
        month-short{
            dn{"lună"}
            relativeTime{
                future{
                    few{"peste {0} luni"}
                    one{"peste {0} lună"}
                    other{"peste {0} luni"}
                }
                past{
                    few{"acum {0} luni"}
                    one{"acum {0} lună"}
                    other{"acum {0} luni"}
                }
            }
        }
        quarter{
            dn{"Trimestru"}
            relative{
                "-1"{"trimestrul trecut"}
                "0"{"trimestrul acesta"}
                "1"{"trimestrul viitor"}
            }
            relativeTime{
                future{
                    few{"peste {0} trimestre"}
                    one{"peste {0} trimestru"}
                    other{"peste {0} de trimestre"}
                }
                past{
                    few{"acum {0} trimestre"}
                    one{"acum {0} trimestru"}
                    other{"acum {0} de trimestre"}
                }
            }
        }
        quarter-narrow{
            dn{"trim."}
            relative{
                "-1"{"trim. trecut"}
                "0"{"trim. acesta"}
                "1"{"trim. viitor"}
            }
            relativeTime{
                future{
                    few{"+{0} trim."}
                    one{"+{0} trim."}
                    other{"+{0} trim."}
                }
                past{
                    few{"-{0} trim."}
                    one{"-{0} trim."}
                    other{"-{0} trim."}
                }
            }
        }
        quarter-short{
            dn{"trim."}
            relative{
                "-1"{"trim. trecut"}
                "0"{"trim. acesta"}
                "1"{"trim. viitor"}
            }
            relativeTime{
                future{
                    few{"peste {0} trim."}
                    one{"peste {0} trim."}
                    other{"peste {0} trim."}
                }
                past{
                    few{"acum {0} trim."}
                    one{"acum {0} trim."}
                    other{"acum {0} trim."}
                }
            }
        }
        sat{
            relative{
                "-1"{"sâmbăta trecută"}
                "0"{"sâmbăta aceasta"}
                "1"{"sâmbăta viitoare"}
            }
        }
        sat-narrow{
            relative{
                "-1"{"S (trecută)"}
                "0"{"S (aceasta)"}
                "1"{"S (viitoare)"}
            }
        }
        sat-short{
            relative{
                "-1"{"sâm. trecută"}
                "0"{"sâm. aceasta"}
                "1"{"sâm. viitoare"}
            }
        }
        second{
            dn{"Secundă"}
            relative{
                "0"{"acum"}
            }
            relativeTime{
                future{
                    few{"peste {0} secunde"}
                    one{"peste {0} secundă"}
                    other{"peste {0} de secunde"}
                }
                past{
                    few{"acum {0} secunde"}
                    one{"acum {0} secundă"}
                    other{"acum {0} de secunde"}
                }
            }
        }
        second-narrow{
            dn{"s"}
            relativeTime{
                future{
                    few{"+{0} s"}
                    one{"+{0} s"}
                    other{"+{0} s"}
                }
                past{
                    few{"-{0} s"}
                    one{"-{0} s"}
                    other{"-{0} s"}
                }
            }
        }
        second-short{
            dn{"sec."}
            relativeTime{
                future{
                    few{"peste {0} sec."}
                    one{"peste {0} sec."}
                    other{"peste {0} sec."}
                }
                past{
                    few{"acum {0} sec."}
                    one{"acum {0} sec."}
                    other{"acum {0} sec."}
                }
            }
        }
        sun{
            relative{
                "-1"{"duminica trecută"}
                "0"{"duminica aceasta"}
                "1"{"duminica viitoare"}
            }
        }
        sun-narrow{
            relative{
                "-1"{"D (trecută)"}
                "0"{"D (aceasta)"}
                "1"{"D (viitoare)"}
            }
        }
        sun-short{
            relative{
                "-1"{"dum. trecută"}
                "0"{"dum. aceasta"}
                "1"{"dum. viitoare"}
            }
        }
        thu{
            relative{
                "-1"{"joia trecută"}
                "0"{"joia aceasta"}
                "1"{"joia viitoare"}
            }
        }
        thu-narrow{
            relative{
                "-1"{"J (trecută)"}
                "0"{"J (aceasta)"}
                "1"{"J (viitoare)"}
            }
        }
        thu-short{
            relative{
                "-1"{"joia trecută"}
                "0"{"joia aceasta"}
                "1"{"joia viitoare"}
            }
        }
        tue{
            relative{
                "-1"{"marțea trecută"}
                "0"{"marțea aceasta"}
                "1"{"marțea viitoare"}
            }
        }
        tue-narrow{
            relative{
                "-1"{"Ma (trecută)"}
                "0"{"Ma (aceasta)"}
                "1"{"Ma (viitoare)"}
            }
        }
        tue-short{
            relative{
                "-1"{"mar. trecută"}
                "0"{"mar. aceasta"}
                "1"{"mar. viitoare"}
            }
        }
        wed{
            relative{
                "-1"{"miercurea trecută"}
                "0"{"miercurea aceasta"}
                "1"{"miercurea viitoare"}
            }
        }
        wed-narrow{
            relative{
                "-1"{"Mi (trecută)"}
                "0"{"Mi (aceasta)"}
                "1"{"Mi (viitoare)"}
            }
        }
        wed-short{
            relative{
                "-1"{"mie. trecută"}
                "0"{"mie. aceasta"}
                "1"{"mie. viitoare"}
            }
        }
        week{
            dn{"Săptămână"}
            relative{
                "-1"{"săptămâna trecută"}
                "0"{"săptămâna aceasta"}
                "1"{"săptămâna viitoare"}
            }
            relativeTime{
                future{
                    few{"peste {0} săptămâni"}
                    one{"peste {0} săptămână"}
                    other{"peste {0} de săptămâni"}
                }
                past{
                    few{"acum {0} săptămâni"}
                    one{"acum {0} săptămână"}
                    other{"acum {0} de săptămâni"}
                }
            }
        }
        week-narrow{
            dn{"săpt."}
            relativeTime{
                future{
                    few{"+{0} săpt."}
                    one{"+{0} săpt."}
                    other{"+{0} săpt."}
                }
                past{
                    few{"-{0} săpt."}
                    one{"-{0} săpt."}
                    other{"-{0} săpt."}
                }
            }
        }
        week-short{
            dn{"săpt."}
            relativeTime{
                future{
                    few{"peste {0} săpt."}
                    one{"peste {0} săpt."}
                    other{"peste {0} săpt."}
                }
                past{
                    few{"acum {0} săpt."}
                    one{"acum {0} săpt."}
                    other{"acum {0} săpt."}
                }
            }
        }
        weekday{
            dn{"Zi a săptămânii"}
        }
        year{
            dn{"An"}
            relative{
                "-1"{"anul trecut"}
                "0"{"anul acesta"}
                "1"{"anul viitor"}
            }
            relativeTime{
                future{
                    few{"peste {0} ani"}
                    one{"peste {0} an"}
                    other{"peste {0} de ani"}
                }
                past{
                    few{"acum {0} ani"}
                    one{"acum {0} an"}
                    other{"acum {0} de ani"}
                }
            }
        }
        year-narrow{
            dn{"an"}
            relativeTime{
                future{
                    few{"+{0} ani"}
                    one{"+{0} an"}
                    other{"+{0} ani"}
                }
                past{
                    few{"-{0} ani"}
                    one{"-{0} an"}
                    other{"-{0} ani"}
                }
            }
        }
        year-short{
            dn{"an"}
            relativeTime{
                future{
                    few{"peste {0} ani"}
                    one{"peste {0} an"}
                    other{"peste {0} ani"}
                }
                past{
                    few{"acum {0} ani"}
                    one{"acum {0} an"}
                    other{"acum {0} de ani"}
                }
            }
        }
        zone{
            dn{"Fus orar"}
        }
    }
    listPattern{
        standard{
            2{"{0} și {1}"}
            end{"{0} și {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} și {1}"}
            end{"{0}, {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}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"britanic"}
        US{"american"}
        metric{"metric"}
    }
    transformNames{
        BGN{"BGN"}
        Numeric{"Numeric"}
        Tone{"Ton"}
        UNGEGN{"UNGEGN"}
        x-Accents{"Accente"}
        x-Fullwidth{"Cu lățime întreagă"}
        x-Halfwidth{"Cu jumătate de lățime"}
        x-Jamo{"Jamo"}
        x-Pinyin{"Pinyin"}
        x-Publishing{"Publicare"}
    }
}
