﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/es.xml
// *
// ***************************************************************************
es{
    AuxExemplarCharacters{"[ª à ă â å ä ã ā æ ç è ĕ ê ë ē ì ĭ î ï ī º ò ŏ ô ö ø ō œ ù ŭ û ū ÿ]"}
    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 q r s t u ú ü v w x y 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{"Más de {0}"}
                range{"{0}-{1}"}
            }
            patterns{
                accountingFormat{"#,##0.00 ¤"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0 %"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 mil"}
                        other{"0 mil"}
                    }
                    10000{
                        one{"00 mil"}
                        other{"00 mil"}
                    }
                    100000{
                        one{"000 mil"}
                        other{"000 mil"}
                    }
                    1000000{
                        one{"0 millón"}
                        other{"0 millones"}
                    }
                    10000000{
                        one{"00 millones"}
                        other{"00 millones"}
                    }
                    100000000{
                        one{"000 millones"}
                        other{"000 millones"}
                    }
                    1000000000{
                        one{"0 mil millones"}
                        other{"0 mil millones"}
                    }
                    10000000000{
                        one{"00 mil millones"}
                        other{"00 mil millones"}
                    }
                    100000000000{
                        one{"000 mil millones"}
                        other{"000 mil millones"}
                    }
                    1000000000000{
                        one{"0 billón"}
                        other{"0 billones"}
                    }
                    10000000000000{
                        one{"00 billones"}
                        other{"00 billones"}
                    }
                    100000000000000{
                        one{"000 billones"}
                        other{"000 billones"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0 K"}
                        other{"0 K"}
                    }
                    10000{
                        one{"00 K"}
                        other{"00 K"}
                    }
                    100000{
                        one{"000 K"}
                        other{"000 K"}
                    }
                    1000000{
                        one{"0 M"}
                        other{"0 M"}
                    }
                    10000000{
                        one{"00 M"}
                        other{"00 M"}
                    }
                    100000000{
                        one{"000 M"}
                        other{"000 M"}
                    }
                    1000000000{
                        one{"0000 M"}
                        other{"0000 M"}
                    }
                    10000000000{
                        one{"00 MRD"}
                        other{"00 MRD"}
                    }
                    100000000000{
                        one{"000 MRD"}
                        other{"000 MRD"}
                    }
                    1000000000000{
                        one{"0 B"}
                        other{"0 B"}
                    }
                    10000000000000{
                        one{"00 B"}
                        other{"00 B"}
                    }
                    100000000000000{
                        one{"000 B"}
                        other{"000 B"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{":"}
            }
        }
        minimumGroupingDigits{"1"}
        native{"latn"}
    }
    Version{"2.1.15.60"}
    calendar{
        buddhist{
            eras{
                abbreviated{
                    "BE",
                }
            }
        }
        chinese{
            DateTimePatterns{
                "H:mm:ss (zzzz)",
                "H:mm:ss z",
                "H:mm:ss",
                "H:mm",
                "EEEE, d-M-y",
                "d-M-y",
                "d-M-y",
                "d-M-y",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d"}
                Gy{"y"}
                GyMMM{"M-y"}
                GyMMMEd{"E, d-M-y"}
                GyMMMd{"d-M-y"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d-M"}
                MMM{"L"}
                MMMEd{"E d-M"}
                MMMd{"d-M"}
                Md{"d-M"}
                d{"d"}
                h{"hh a"}
                hm{"hh:mm a"}
                hms{"hh:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yyyy{"y"}
                yyyyM{"M-y"}
                yyyyMEd{"E, d-M-y"}
                yyyyMMM{"M-y"}
                yyyyMMMEd{"E, d-M-y"}
                yyyyMMMM{"M-y"}
                yyyyMMMd{"d-M-y"}
                yyyyMd{"d-M-y"}
                yyyyQQQ{"QQQ y"}
                yyyyQQQQ{"QQQQ y"}
            }
        }
        generic{
            DateTimePatterns{
                "H:mm:ss (zzzz)",
                "H:mm:ss z",
                "H:mm:ss",
                "H:mm",
                "EEEE, d 'de' MMMM 'de' y G",
                "d 'de' MMMM 'de' y G",
                "dd/MM/y G",
                "dd/MM/yy GGGGG",
                "{1} {0}",
                "{1}, {0}",
                "{1}, {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMM{"MMMM 'de' y G"}
                GyMMMMEd{"E, d 'de' MMMM 'de' y G"}
                GyMMMMd{"d 'de' MMMM 'de' y G"}
                GyMMMd{"d MMM y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMEd{"E, d 'de' MMMM"}
                MMMMd{"d 'de' MMMM"}
                MMMd{"d MMM"}
                Md{"d/M"}
                d{"d"}
                h{"hh a"}
                hm{"hh:mm a"}
                hms{"hh:mm:ss a"}
                ms{"mm:ss"}
                y{"y G"}
                yyyy{"y G"}
                yyyyM{"M/y GGGGG"}
                yyyyMEd{"E, d/M/y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"EEE, d MMM y G"}
                yyyyMMMM{"MMMM 'de' y G"}
                yyyyMMMMEd{"EEE, d 'de' MMMM 'de' y G"}
                yyyyMMMMd{"d 'de' MMMM 'de' y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d/M/y GGGGG"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ 'de' 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"}
                }
                M{
                    M{"M–M"}
                }
                MEd{
                    M{"E, d/M–E, d/M"}
                    d{"E, d/M–E, d/M"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d 'de' MMM–E, d 'de' MMM"}
                    d{"E, d 'de' MMM–E, d 'de' MMM"}
                }
                MMMd{
                    M{"d 'de' MMM–d 'de' MMM"}
                    d{"d–d 'de' MMM"}
                }
                Md{
                    M{"d/M–d/M"}
                    d{"d/M–d/M"}
                }
                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{"M/y–M/y G"}
                    y{"M/y–M/y G"}
                }
                yMEd{
                    M{"E, d/M/y–E, d/M/y G"}
                    d{"E, d/M/y–E, d/M/y G"}
                    y{"E, d/M/y–E, d/M/y G"}
                }
                yMMM{
                    M{"MMM–MMM 'de' y G"}
                    y{"MMM 'de' y–MMM 'de' y G"}
                }
                yMMMEd{
                    M{"E, d 'de' MMM–E, d 'de' MMM 'de' y G"}
                    d{"E, d 'de' MMM–E, d 'de' MMM 'de' y G"}
                    y{"E, d 'de' MMM 'de' y–E, d 'de' MMM 'de' y G"}
                }
                yMMMM{
                    M{"MMMM–MMMM 'de' y G"}
                    y{"MMMM 'de' y–MMMM 'de' y G"}
                }
                yMMMd{
                    M{"d 'de' MMM–d 'de' MMM y G"}
                    d{"d–d 'de' MMM 'de' y G"}
                    y{"d 'de' MMM 'de' y–d 'de' MMM 'de' y G"}
                }
                yMd{
                    M{"d/M/y–d/M/y G"}
                    d{"d/M/y–d/M/y G"}
                    y{"d/M/y–d/M/y G"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "a. m.",
                "p. m.",
            }
            AmPmMarkersNarrow{
                "a.m.",
                "p.m.",
            }
            DateTimePatterns{
                "H:mm:ss (zzzz)",
                "H:mm:ss z",
                "H:mm:ss",
                "H:mm",
                "EEEE, d 'de' MMMM 'de' y",
                "d 'de' MMMM 'de' y",
                "d MMM y",
                "d/M/yy",
                "{1} {0}",
                "{1}, {0}",
                "{1}, {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                E{"ccc"}
                EHm{"E, H:mm"}
                EHms{"E, H: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"}
                GyMMMM{"MMMM 'de' y G"}
                GyMMMMEd{"E, d 'de' MMMM 'de' y G"}
                GyMMMMd{"d 'de' MMMM 'de' y G"}
                GyMMMd{"d MMM y G"}
                H{"H"}
                Hm{"H:mm"}
                Hms{"H:mm:ss"}
                Hmsv{"H:mm:ss v"}
                Hmsvvvv{"H:mm:ss (vvvv)"}
                Hmv{"H:mm v"}
                M{"L"}
                MEd{"E, d/M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMEd{"E, d 'de' MMMM"}
                MMMMd{"d 'de' MMMM"}
                MMMd{"d MMM"}
                MMd{"d/M"}
                MMdd{"d/M"}
                Md{"d/M"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                hmsv{"h:mm:ss a v"}
                hmsvvvv{"h:mm:ss a (vvvv)"}
                hmv{"h:mm a v"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"EEE, d/M/y"}
                yMM{"M/y"}
                yMMM{"MMM y"}
                yMMMEd{"EEE, d MMM y"}
                yMMMM{"MMMM 'de' y"}
                yMMMMEd{"EEE, d 'de' MMMM 'de' y"}
                yMMMMd{"d 'de' MMMM 'de' y"}
                yMMMd{"d MMM y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ 'de' y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "dom.",
                        "lun.",
                        "mar.",
                        "mié.",
                        "jue.",
                        "vie.",
                        "sáb.",
                    }
                    narrow{
                        "D",
                        "L",
                        "M",
                        "X",
                        "J",
                        "V",
                        "S",
                    }
                    short{
                        "DO",
                        "LU",
                        "MA",
                        "MI",
                        "JU",
                        "VI",
                        "SA",
                    }
                    wide{
                        "domingo",
                        "lunes",
                        "martes",
                        "miércoles",
                        "jueves",
                        "viernes",
                        "sábado",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Dom.",
                        "Lun.",
                        "Mar.",
                        "Mié.",
                        "Jue.",
                        "Vie.",
                        "Sáb.",
                    }
                    narrow{
                        "D",
                        "L",
                        "M",
                        "X",
                        "J",
                        "V",
                        "S",
                    }
                    short{
                        "DO",
                        "LU",
                        "MA",
                        "MI",
                        "JU",
                        "VI",
                        "SA",
                    }
                    wide{
                        "Domingo",
                        "Lunes",
                        "Martes",
                        "Miércoles",
                        "Jueves",
                        "Viernes",
                        "Sábado",
                    }
                }
            }
            dayPeriod{
                format{
                    narrow{
                        noon{"m."}
                    }
                    wide{
                        noon{"mediodía"}
                    }
                }
                stand-alone{
                    wide{
                        evening1{"tarde"}
                        midnight{"medianoche"}
                        morning1{"madrugada"}
                        morning2{"mañana"}
                        night1{"noche"}
                        noon{"mediodía"}
                    }
                }
            }
            eras{
                abbreviated{
                    "a. C.",
                    "d. C.",
                }
                abbreviated%variant{
                    "a. e. c.",
                    "e. c.",
                }
                wide{
                    "antes de Cristo",
                    "después de Cristo",
                }
                wide%variant{
                    "antes de la era común",
                    "era común",
                }
            }
            intervalFormats{
                H{
                    H{"H–H"}
                }
                Hm{
                    H{"H:mm–H:mm"}
                    m{"H:mm–H:mm"}
                }
                Hmv{
                    H{"H:mm–H:mm v"}
                    m{"H:mm–H:mm v"}
                }
                Hv{
                    H{"H–H v"}
                }
                M{
                    M{"M–M"}
                }
                MEd{
                    M{"E, d/M–E, d/M"}
                    d{"E, d/M–E, d/M"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, d MMM–E, d MMM"}
                    d{"E, d MMM–E, d MMM"}
                }
                MMMMEd{
                    M{"E, d 'de' MMMM–E, d 'de' MMMM"}
                    d{"E, d 'de' MMMM–E, d 'de' MMMM"}
                }
                MMMMd{
                    M{"d 'de' MMMM–d 'de' MMMM"}
                    d{"d–d 'de' MMMM"}
                }
                MMMd{
                    M{"d MMM–d MMM"}
                    d{"d–d MMM"}
                }
                Md{
                    M{"d/M–d/M"}
                    d{"d/M–d/M"}
                }
                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{"M/y–M/y"}
                    y{"M/y–M/y"}
                }
                yMEd{
                    M{"E, d/M/y–E, d/M/y"}
                    d{"E, d/M/y–E, d/M/y"}
                    y{"E, d/M/y–E, d/M/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 'de' y"}
                    y{"MMMM 'de' y–MMMM 'de' y"}
                }
                yMMMMEd{
                    M{"E, d 'de' MMMM–E, d 'de' MMMM 'de' y"}
                    d{"E, d 'de' MMMM–E, d 'de' MMMM 'de' y"}
                    y{"E, d 'de' MMMM 'de' y–E, d 'de' MMMM 'de' y"}
                }
                yMMMMd{
                    M{"d 'de' MMMM–d 'de' MMMM 'de' y"}
                    d{"d–d 'de' MMMM 'de' y"}
                    y{"d 'de' MMMM 'de' y–d 'de' MMMM 'de' y"}
                }
                yMMMd{
                    M{"d MMM–d MMM y"}
                    d{"d–d MMM y"}
                    y{"d MMM y–d MMM y"}
                }
                yMd{
                    M{"d/M/y–d/M/y"}
                    d{"d/M/y–d/M/y"}
                    y{"d/M/y–d/M/y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "ene.",
                        "feb.",
                        "mar.",
                        "abr.",
                        "may.",
                        "jun.",
                        "jul.",
                        "ago.",
                        "sept.",
                        "oct.",
                        "nov.",
                        "dic.",
                    }
                    narrow{
                        "E",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "enero",
                        "febrero",
                        "marzo",
                        "abril",
                        "mayo",
                        "junio",
                        "julio",
                        "agosto",
                        "septiembre",
                        "octubre",
                        "noviembre",
                        "diciembre",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Ene.",
                        "Feb.",
                        "Mar.",
                        "Abr.",
                        "May.",
                        "Jun.",
                        "Jul.",
                        "Ago.",
                        "Sept.",
                        "Oct.",
                        "Nov.",
                        "Dic.",
                    }
                    narrow{
                        "E",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "Enero",
                        "Febrero",
                        "Marzo",
                        "Abril",
                        "Mayo",
                        "Junio",
                        "Julio",
                        "Agosto",
                        "Septiembre",
                        "Octubre",
                        "Noviembre",
                        "Diciembre",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "T1",
                        "T2",
                        "T3",
                        "T4",
                    }
                    wide{
                        "1.er trimestre",
                        "2.º trimestre",
                        "3.er trimestre",
                        "4.º trimestre",
                    }
                }
                stand-alone{
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                }
            }
        }
        hebrew{
            eras{
                abbreviated{
                    "AM",
                }
            }
        }
        islamic{
            eras{
                abbreviated{
                    "AH",
                }
            }
        }
        japanese{
            DateTimePatterns{
                "H:mm:ss (zzzz)",
                "H:mm:ss z",
                "H:mm:ss",
                "H:mm",
                "EEEE, d 'de' MMMM 'de' y G",
                "d 'de' MMMM 'de' y G",
                "dd/MM/y G",
                "dd/MM/yy GGGGG",
                "{1} {0}",
                "{1}, {0}",
                "{1}, {0}",
                "{1} {0}",
                "{1} {0}",
            }
        }
        roc{
            eras{
                abbreviated{
                    "antes de R.O.C.",
                    "R.O.C.",
                }
            }
        }
    }
    contextTransforms{
        day-format-except-narrow:intvector{
            1,
            1,
        }
        day-standalone-except-narrow:intvector{
            1,
            1,
        }
        languages:intvector{
            1,
            1,
        }
        month-format-except-narrow:intvector{
            1,
            1,
        }
        month-standalone-except-narrow:intvector{
            1,
            1,
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"“"}
        quotationEnd{"»"}
        quotationStart{"«"}
    }
    fields{
        day{
            dn{"Día"}
            relative{
                "-1"{"ayer"}
                "-2"{"anteayer"}
                "0"{"hoy"}
                "1"{"mañana"}
                "2"{"pasado mañana"}
            }
            relativeTime{
                future{
                    one{"dentro de {0} día"}
                    other{"dentro de {0} días"}
                }
                past{
                    one{"hace {0} día"}
                    other{"hace {0} días"}
                }
            }
        }
        day-narrow{
            dn{"d"}
            relativeTime{
                future{
                    one{"dentro de {0} día"}
                    other{"dentro de {0} días"}
                }
                past{
                    one{"hace {0} día"}
                    other{"hace {0} días"}
                }
            }
        }
        day-short{
            dn{"d"}
            relativeTime{
                future{
                    one{"dentro de {0} día"}
                    other{"dentro de {0} días"}
                }
                past{
                    one{"hace {0} día"}
                    other{"hace {0} días"}
                }
            }
        }
        dayperiod{
            dn{"a. m./p. m."}
        }
        era{
            dn{"Era"}
        }
        fri{
            relative{
                "-1"{"el viernes pasado"}
                "0"{"este viernes"}
                "1"{"el próximo viernes"}
            }
        }
        fri-narrow{
            relative{
                "-1"{"el VI pasado"}
                "0"{"este VI"}
                "1"{"el próximo VI"}
            }
        }
        fri-short{
            relative{
                "-1"{"el vie. pasado"}
                "0"{"este vie."}
                "1"{"el próximo vie."}
            }
        }
        hour{
            dn{"Hora"}
            relativeTime{
                future{
                    one{"dentro de {0} hora"}
                    other{"dentro de {0} horas"}
                }
                past{
                    one{"hace {0} hora"}
                    other{"hace {0} horas"}
                }
            }
        }
        hour-narrow{
            dn{"h"}
            relativeTime{
                future{
                    one{"dentro de {0} h"}
                    other{"dentro de {0} h"}
                }
                past{
                    one{"hace {0} h"}
                    other{"hace {0} h"}
                }
            }
        }
        hour-short{
            dn{"h"}
            relativeTime{
                future{
                    one{"dentro de {0} h"}
                    other{"dentro de {0} h"}
                }
                past{
                    one{"hace {0} h"}
                    other{"hace {0} h"}
                }
            }
        }
        minute{
            dn{"Minuto"}
            relativeTime{
                future{
                    one{"dentro de {0} minuto"}
                    other{"dentro de {0} minutos"}
                }
                past{
                    one{"hace {0} minuto"}
                    other{"hace {0} minutos"}
                }
            }
        }
        minute-narrow{
            dn{"min"}
            relativeTime{
                future{
                    one{"dentro de {0} min"}
                    other{"dentro de {0} min"}
                }
                past{
                    one{"hace {0} min"}
                    other{"hace {0} min"}
                }
            }
        }
        minute-short{
            dn{"min"}
            relativeTime{
                future{
                    one{"dentro de {0} min"}
                    other{"dentro de {0} min"}
                }
                past{
                    one{"hace {0} min"}
                    other{"hace {0} min"}
                }
            }
        }
        mon{
            relative{
                "-1"{"el lunes pasado"}
                "0"{"este lunes"}
                "1"{"el próximo lunes"}
            }
        }
        mon-narrow{
            relative{
                "-1"{"el LU pasado"}
                "0"{"este LU"}
                "1"{"el próximo LU"}
            }
        }
        mon-short{
            relative{
                "-1"{"el lun. pasado"}
                "0"{"este lun."}
                "1"{"el próximo lun."}
            }
        }
        month{
            dn{"Mes"}
            relative{
                "-1"{"el mes pasado"}
                "0"{"este mes"}
                "1"{"el próximo mes"}
            }
            relativeTime{
                future{
                    one{"dentro de {0} mes"}
                    other{"dentro de {0} meses"}
                }
                past{
                    one{"hace {0} mes"}
                    other{"hace {0} meses"}
                }
            }
        }
        month-narrow{
            dn{"m"}
            relativeTime{
                future{
                    one{"dentro de {0} m"}
                    other{"dentro de {0} m"}
                }
                past{
                    one{"hace {0} m"}
                    other{"hace {0} m"}
                }
            }
        }
        month-short{
            dn{"m"}
            relativeTime{
                future{
                    one{"dentro de {0} m"}
                    other{"dentro de {0} m"}
                }
                past{
                    one{"hace {0} m"}
                    other{"hace {0} m"}
                }
            }
        }
        quarter{
            dn{"Trimestre"}
            relativeTime{
                future{
                    one{"dentro de {0} trimestre"}
                    other{"dentro de {0} trimestres"}
                }
                past{
                    one{"hace {0} trimestre"}
                    other{"hace {0} trimestres"}
                }
            }
        }
        quarter-narrow{
            dn{"trim."}
            relativeTime{
                future{
                    one{"dentro de {0} trim."}
                    other{"dentro de {0} trim."}
                }
                past{
                    one{"hace {0} trim."}
                    other{"hace {0} trim."}
                }
            }
        }
        quarter-short{
            dn{"trim."}
            relativeTime{
                future{
                    one{"dentro de {0} trim."}
                    other{"dentro de {0} trim."}
                }
                past{
                    one{"hace {0} trim."}
                    other{"hace {0} trim."}
                }
            }
        }
        sat{
            relative{
                "-1"{"el sábado pasado"}
                "0"{"este sábado"}
                "1"{"el próximo sábado"}
            }
        }
        sat-narrow{
            relative{
                "-1"{"el SA pasado"}
                "0"{"este SA"}
                "1"{"el próximo SA"}
            }
        }
        sat-short{
            relative{
                "-1"{"el sáb. pasado"}
                "0"{"este sáb."}
                "1"{"el próximo sáb."}
            }
        }
        second{
            dn{"Segundo"}
            relative{
                "0"{"ahora"}
            }
            relativeTime{
                future{
                    one{"dentro de {0} segundo"}
                    other{"dentro de {0} segundos"}
                }
                past{
                    one{"hace {0} segundo"}
                    other{"hace {0} segundos"}
                }
            }
        }
        second-narrow{
            dn{"s"}
            relativeTime{
                future{
                    one{"dentro de {0} s"}
                    other{"dentro de {0} s"}
                }
                past{
                    one{"hace {0} s"}
                    other{"hace {0} s"}
                }
            }
        }
        second-short{
            dn{"s"}
            relativeTime{
                future{
                    one{"dentro de {0} s"}
                    other{"dentro de {0} s"}
                }
                past{
                    one{"hace {0} s"}
                    other{"hace {0} s"}
                }
            }
        }
        sun{
            relative{
                "-1"{"el domingo pasado"}
                "0"{"este domingo"}
                "1"{"el próximo domingo"}
            }
        }
        sun-narrow{
            relative{
                "-1"{"el DO pasado"}
                "0"{"este DO"}
                "1"{"el próximo DO"}
            }
        }
        sun-short{
            relative{
                "-1"{"el dom. pasado"}
                "0"{"este dom."}
                "1"{"el próximo dom."}
            }
        }
        thu{
            relative{
                "-1"{"el jueves pasado"}
                "0"{"este jueves"}
                "1"{"el próximo jueves"}
            }
        }
        thu-narrow{
            relative{
                "-1"{"el JU pasado"}
                "0"{"este JU"}
                "1"{"el próximo JU"}
            }
        }
        thu-short{
            relative{
                "-1"{"el jue. pasado"}
                "0"{"este jue."}
                "1"{"el próximo jue."}
            }
        }
        tue{
            relative{
                "-1"{"el martes pasado"}
                "0"{"este martes"}
                "1"{"el próximo martes"}
            }
        }
        tue-narrow{
            relative{
                "-1"{"el MA pasado"}
                "0"{"este MA"}
                "1"{"el próximo MA"}
            }
        }
        tue-short{
            relative{
                "-1"{"el mar. pasado"}
                "0"{"este mar."}
                "1"{"el próximo mar."}
            }
        }
        wed{
            relative{
                "-1"{"el miércoles pasado"}
                "0"{"este miércoles"}
                "1"{"el próximo miércoles"}
            }
        }
        wed-narrow{
            relative{
                "-1"{"el MI pasado"}
                "0"{"este MI"}
                "1"{"el próximo MI"}
            }
        }
        wed-short{
            relative{
                "-1"{"el mié. pasado"}
                "0"{"este mié."}
                "1"{"el próximo mié."}
            }
        }
        week{
            dn{"Semana"}
            relative{
                "-1"{"la semana pasada"}
                "0"{"esta semana"}
                "1"{"la próxima semana"}
            }
            relativeTime{
                future{
                    one{"dentro de {0} semana"}
                    other{"dentro de {0} semanas"}
                }
                past{
                    one{"hace {0} semana"}
                    other{"hace {0} semanas"}
                }
            }
        }
        week-narrow{
            dn{"sem."}
            relativeTime{
                future{
                    one{"dentro de {0} sem."}
                    other{"dentro de {0} sem."}
                }
                past{
                    one{"hace {0} sem."}
                    other{"hace {0} sem."}
                }
            }
        }
        week-short{
            dn{"sem."}
            relativeTime{
                future{
                    one{"dentro de {0} sem."}
                    other{"dentro de {0} sem."}
                }
                past{
                    one{"hace {0} sem."}
                    other{"hace {0} sem."}
                }
            }
        }
        weekday{
            dn{"Día de la semana"}
        }
        year{
            dn{"Año"}
            relative{
                "-1"{"el año pasado"}
                "0"{"este año"}
                "1"{"el próximo año"}
            }
            relativeTime{
                future{
                    one{"dentro de {0} año"}
                    other{"dentro de {0} años"}
                }
                past{
                    one{"hace {0} año"}
                    other{"hace {0} años"}
                }
            }
        }
        year-narrow{
            dn{"a"}
            relativeTime{
                future{
                    one{"dentro de {0} a"}
                    other{"dentro de {0} a"}
                }
                past{
                    one{"hace {0} a"}
                    other{"hace {0} a"}
                }
            }
        }
        year-short{
            dn{"a"}
            relativeTime{
                future{
                    one{"dentro de {0} a"}
                    other{"dentro de {0} a"}
                }
                past{
                    one{"hace {0} a"}
                    other{"hace {0} a"}
                }
            }
        }
        zone{
            dn{"Zona horaria"}
        }
    }
    listPattern{
        standard{
            2{"{0} y {1}"}
            end{"{0} y {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} y {1}"}
            end{"{0} y {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} y {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"anglosajón"}
        US{"estadounidense"}
        metric{"métrico"}
    }
    transformNames{
        BGN{"BGN"}
        Numeric{"Numérico"}
        Tone{"Tono"}
        UNGEGN{"UNGEGN"}
        x-Accents{"Acentos"}
        x-Fullwidth{"Ancho completo"}
        x-Halfwidth{"Ancho medio"}
        x-Jamo{"Jamo"}
        x-Pinyin{"Pinyin"}
        x-Publishing{"Publicación"}
    }
}
