﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
es_419{
    NumberElements{
        latn{
            patterns{
                accountingFormat{"¤#,##0.00"}
                currencyFormat{"¤#,##0.00"}
            }
            patternsLong{
                decimalFormat{
                    1000000000000{
                        one{"0 billón"}
                        other{"0 billón"}
                    }
                    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"}
                    }
                    1000000000{
                        one{"0k M"}
                        other{"0k M"}
                    }
                    10000000000{
                        one{"00k M"}
                        other{"00k M"}
                    }
                    100000000000{
                        one{"000k M"}
                        other{"000k M"}
                    }
                }
            }
            symbols{
                decimal{"."}
                group{","}
            }
        }
    }
    Version{"2.1.38.39"}
    calendar{
        coptic{
            monthNames{
                format{
                    abbreviated{
                        "Tout",
                        "Baba",
                        "Hator",
                        "Kiahk",
                        "Toba",
                        "Amshir",
                        "Baramhat",
                        "Baramouda",
                        "Bashans",
                        "Paona",
                        "Epep",
                        "Mesra",
                        "Nasie",
                    }
                    wide{
                        "Tout",
                        "Baba",
                        "Hator",
                        "Kiahk",
                        "Toba",
                        "Amshir",
                        "Baramhat",
                        "Baramouda",
                        "Bashans",
                        "Paona",
                        "Epep",
                        "Mesra",
                        "Nasie",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Tout",
                        "Baba",
                        "Hator",
                        "Kiahk",
                        "Toba",
                        "Amshir",
                        "Baramhat",
                        "Baramouda",
                        "Bashans",
                        "Paona",
                        "Epep",
                        "Mesra",
                        "Nasie",
                    }
                    wide{
                        "Tout",
                        "Baba",
                        "Hator",
                        "Kiahk",
                        "Toba",
                        "Amshir",
                        "Baramhat",
                        "Baramouda",
                        "Bashans",
                        "Paona",
                        "Epep",
                        "Mesra",
                        "Nasie",
                    }
                }
            }
        }
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d 'de' MMMM 'de' y G",
                "d 'de' MMMM 'de' y G",
                "d 'de' MMM 'de' y G",
                "dd/MM/yy GGGGG",
                "{1} {0}",
                "{1}, {0}",
                "{1}, {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                GyMMM{"MMM 'de' y G"}
                GyMMMEd{"E, d 'de' MMM 'de' y G"}
                GyMMMd{"d 'de' MMM 'de' y G"}
                MMMEd{"E, d 'de' MMM"}
                MMMd{"d 'de' MMM"}
                yMEd{"E d/M/y G"}
                yyyyMEd{"E d/M/y GGGGG"}
                yyyyMMM{"MMM 'de' y G"}
                yyyyMMMEd{"EEE, d 'de' MMM 'de' y G"}
                yyyyMMMd{"d 'de' MMM 'de' y G"}
                yyyyQQQ{"QQQ 'de' y G"}
            }
            intervalFormats{
                MEd{
                    M{"E, d/M–E, d/M"}
                    d{"E, d/M–E, d/M"}
                }
                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"}
                }
                yM{
                    M{"M/y – M/y GGGGG"}
                    y{"M/y – M/y GGGGG"}
                }
                yMEd{
                    M{"E, d/M/y – E, d/M/y GGGGG"}
                    d{"E, d/M/y – E, d/M/y GGGGG"}
                    y{"E, d/M/y – E, d/M/y GGGGG"}
                }
                yMd{
                    M{"d/M/y – d/M/y GGGGG"}
                    d{"d/M/y – d/M/y GGGGG"}
                    y{"d/M/y – d/M/y GGGGG"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "a.m.",
                "p.m.",
            }
            AmPmMarkersAbbr{
                "a.m.",
                "p.m.",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH: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}",
            }
            availableFormats{
                EHm{"E, HH:mm"}
                EHms{"E, HH:mm:ss"}
                GyMMMd{"d 'de' MMM 'de' y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                MMMdd{"dd-MMM"}
                yMEd{"E d/M/y"}
                yMMM{"MMMM 'de' y"}
                yMMMEd{"E, d 'de' MMM 'de' y"}
                yMMMd{"d 'de' MMMM 'de' y"}
                yQQQ{"QQQ 'de' y"}
                yw{
                    one{"'semana' w 'de' Y"}
                    other{"'semana' w 'de' Y"}
                }
            }
            dayNames{
                format{
                    narrow{
                        "d",
                        "l",
                        "m",
                        "m",
                        "j",
                        "v",
                        "s",
                    }
                }
                stand-alone{
                    narrow{
                        "D",
                        "L",
                        "M",
                        "M",
                        "J",
                        "V",
                        "S",
                    }
                }
            }
            dayPeriod{
                stand-alone{
                    abbreviated{
                        am{"a.m."}
                        pm{"p.m."}
                    }
                    narrow{
                        am{"a.m."}
                        pm{"p.m."}
                    }
                    wide{
                        am{"a.m."}
                        pm{"p.m."}
                    }
                }
            }
            intervalFormats{
                MEd{
                    M{"E, d/M–E, d/M"}
                    d{"E, d/M–E, d/M"}
                }
                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"}
                }
                h{
                    a{"h a–h a"}
                }
                hmv{
                    a{"h:mm a–h:mm a v"}
                }
                hv{
                    a{"h a–h a v"}
                }
                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{
                    y{"MMM 'de' y – MMM 'de' y"}
                }
                yMMMEd{
                    M{"E, d 'de' MMM – E, d 'de' MMM 'de' y"}
                    d{"E, d 'de' MMM – E, d 'de' MMM 'de' y"}
                    y{"E, d 'de' MMM 'de' y – E, d 'de' MMM 'de' y"}
                }
                yMMMM{
                    y{"MMMM 'de' y–MMMM 'de' y"}
                }
                yMMMd{
                    M{"d 'de' MMM – d 'de' MMM 'de' y"}
                    d{"d – d 'de' MMM 'de' y"}
                    y{"d 'de' MMM 'de' y – d 'de' MMM 'de' y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "ene.",
                        "feb.",
                        "mar.",
                        "abr.",
                        "may.",
                        "jun.",
                        "jul.",
                        "ago.",
                        "sep.",
                        "oct.",
                        "nov.",
                        "dic.",
                    }
                }
                stand-alone{
                    abbreviated{
                        "ene.",
                        "feb.",
                        "mar.",
                        "abr.",
                        "may.",
                        "jun.",
                        "jul.",
                        "ago.",
                        "sep.",
                        "oct.",
                        "nov.",
                        "dic.",
                    }
                }
            }
            quarters{
                format{
                    wide{
                        "1.º trimestre",
                        "2.º trimestre",
                        "3.º trimestre",
                        "4.º trimestre",
                    }
                }
                stand-alone{
                    wide{
                        "1.º trimestre",
                        "2.º trimestre",
                        "3.º trimestre",
                        "4.º trimestre",
                    }
                }
            }
        }
        hebrew{
            monthNames{
                format{
                    abbreviated{
                        "Tishri",
                        "Heshvan",
                        "Kislev",
                        "Tevet",
                        "Shevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tamuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                    wide{
                        "Tishri",
                        "Heshvan",
                        "Kislev",
                        "Tevet",
                        "Shevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tamuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Tishri",
                        "Heshvan",
                        "Kislev",
                        "Tevet",
                        "Shevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tamuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                    wide{
                        "Tishri",
                        "Heshvan",
                        "Kislev",
                        "Tevet",
                        "Shevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tamuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                }
            }
        }
        indian{
            eras{
                abbreviated{
                    "Saka",
                }
                narrow{
                    "Saka",
                }
                wide{
                    "Saka",
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Chaitra",
                        "Vaisakha",
                        "Jyaistha",
                        "Asadha",
                        "Sravana",
                        "Bhadra",
                        "Asvina",
                        "Kartika",
                        "Agrahayana",
                        "Pausa",
                        "Magha",
                        "Phalguna",
                    }
                    wide{
                        "Chaitra",
                        "Vaisakha",
                        "Jyaistha",
                        "Asadha",
                        "Sravana",
                        "Bhadra",
                        "Asvina",
                        "Kartika",
                        "Agrahayana",
                        "Pausa",
                        "Magha",
                        "Phalguna",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Chaitra",
                        "Vaisakha",
                        "Jyaistha",
                        "Asadha",
                        "Sravana",
                        "Bhadra",
                        "Asvina",
                        "Kartika",
                        "Agrahayana",
                        "Pausa",
                        "Magha",
                        "Phalguna",
                    }
                    wide{
                        "Chaitra",
                        "Vaisakha",
                        "Jyaistha",
                        "Asadha",
                        "Sravana",
                        "Bhadra",
                        "Asvina",
                        "Kartika",
                        "Agrahayana",
                        "Pausa",
                        "Magha",
                        "Phalguna",
                    }
                }
            }
        }
        islamic{
            monthNames{
                format{
                    abbreviated{
                        "Muh.",
                        "Saf.",
                        "Rab. I",
                        "Rab. II",
                        "Jum. I",
                        "Jum. II",
                        "Raj.",
                        "Sha.",
                        "Ram.",
                        "Shaw.",
                        "Dhuʻl-Q.",
                        "Dhuʻl-H.",
                    }
                    wide{
                        "Muharram",
                        "Safar",
                        "Rabiʻ I",
                        "Rabiʻ II",
                        "Jumada I",
                        "Jumada II",
                        "Rajab",
                        "Shaʻban",
                        "Ramadan",
                        "Shawwal",
                        "Dhuʻl-Qiʻdah",
                        "Dhuʻl-Hijjah",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Muh.",
                        "Saf.",
                        "Rab. I",
                        "Rab. II",
                        "Jum. I",
                        "Jum. II",
                        "Raj.",
                        "Sha.",
                        "Ram.",
                        "Shaw.",
                        "Dhuʻl-Q.",
                        "Dhuʻl-H.",
                    }
                    wide{
                        "Muharram",
                        "Safar",
                        "Rabiʻ I",
                        "Rabiʻ II",
                        "Jumada I",
                        "Jumada II",
                        "Rajab",
                        "Shaʻban",
                        "Ramadan",
                        "Shawwal",
                        "Dhuʻl-Qiʻdah",
                        "Dhuʻl-Hijjah",
                    }
                }
            }
        }
        roc{
            eras{
                abbreviated{
                    "antes de R.O.C.",
                    "R.O.C.",
                }
                narrow{
                    "antes de R.O.C.",
                    "R.O.C.",
                }
                wide{
                    "antes de R.O.C.",
                    "R.O.C.",
                }
            }
        }
    }
    characterLabel{
        african_scripts{"Símbolos de escritura de África"}
        american_scripts{"Símbolos de escritura de América"}
        animals_nature{"Naturaleza y animales"}
        body{"Cuerpo"}
        box_drawing{"Cuadro de dibujo"}
        consonantal_jamo{"Jamo consonántico"}
        currency_symbols{"símbolos de monedas"}
        dash_connector{"Guión/conector"}
        digits{"dígitos"}
        dingbats{"Símbolos y viñetas"}
        downwards_upwards_arrows{"Flechas hacia arriba y hacia abajo"}
        european_scripts{"Símbolos de escritura de Europa"}
        flags{"Indicadores"}
        format{"Formato"}
        format_whitespace{"formato y espacio duro"}
        full_width_form_variant{"Variantes de formato de ancho completo"}
        geometric_shapes{"Formas geométricas"}
        half_width_form_variant{"Variantes de formato de ancho medio"}
        han_characters{"caracteres Han"}
        han_radicals{"Radicales Han"}
        hanzi_simplified{"Hanzi (simplificado)"}
        hanzi_traditional{"Hanzi (tradicional)"}
        historic_scripts{"Símbolos de escritura históricos"}
        ideographic_desc_characters{"Caracteres descriptivos ideográficos"}
        japanese_kana{"Kana japonés"}
        leftwards_rightwards_arrows{"Flechas hacia la derecha y hacia la izquierda"}
        letterlike_symbols{"símbolos con letras"}
        limited_use{"uso limitado"}
        middle_eastern_scripts{"Símbolos de escritura de Oriente Medio"}
        miscellaneous{"Miscelánea"}
        modern_scripts{"sistemas de escritura modernos"}
        modifier{"Modificador"}
        other{"otros"}
        paired{"Asociado"}
        phonetic_alphabet{"alfabeto fonético"}
        small_form_variant{"Variantes de formato pequeño"}
        smiley{"Caras sonrientes"}
        south_asian_scripts{"sistemas de escritura de Asia del Sur"}
        southeast_asian_scripts{"sistemas de escritura de Asia Sudoriental"}
        symbols{"símbolo"}
        tone_marks{"marcas tonales"}
        travel_places{"viajes y destinos"}
        variant_forms{"variantes"}
        vocalic_jamo{"Jamo vocálico"}
        weather{"Clima"}
        western_asian_scripts{"sistemas de escritura de Asia Occidental"}
        whitespace{"espacio duro"}
    }
    delimiters{
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            relative{
                "-1"{"ayer"}
                "-2"{"anteayer"}
                "0"{"hoy"}
                "1"{"mañana"}
                "2"{"pasado mañana"}
            }
        }
        day-narrow{
            relative{
                "2"{"pasado mañana"}
            }
        }
        day-short{
            relative{
                "2"{"pasado mañana"}
            }
        }
        dayOfYear-narrow{
            dn{"día del año"}
        }
        dayOfYear-short{
            dn{"día del año"}
        }
        dayperiod{
            dn{"a.m./p.m."}
        }
        dayperiod-narrow{
            dn{"a.m./p.m."}
        }
        dayperiod-short{
            dn{"a.m./p.m."}
        }
        fri{
            relativeTime{
                future{
                    one{"dentro de {0} viernes"}
                    other{"en {0} viernes"}
                }
            }
        }
        fri-narrow{
            relativeTime{
                past{
                    one{"hace {0} viernes"}
                    other{"hace {0} viernes"}
                }
            }
        }
        fri-short{
            relativeTime{
                future{
                    one{"dentro de {0} vie."}
                    other{"en {0} vie."}
                }
                past{
                    one{"hace {0} viernes"}
                    other{"hace {0} viernes"}
                }
            }
        }
        mon{
            relativeTime{
                future{
                    one{"en {0} lunes"}
                    other{"en {0} lunes"}
                }
            }
        }
        mon-narrow{
            relativeTime{
                future{
                    one{"en {0} lunes"}
                    other{"en {0} lunes"}
                }
                past{
                    one{"hace {0} lunes"}
                    other{"hace {0} lunes"}
                }
            }
        }
        mon-short{
            relativeTime{
                future{
                    one{"en {0} lun."}
                    other{"dentro de {0} lun."}
                }
                past{
                    one{"hace {0} lunes"}
                    other{"hace {0} lunes"}
                }
            }
        }
        sat{
            relativeTime{
                future{
                    one{"en {0} sábado"}
                    other{"en {0} sábados"}
                }
            }
        }
        sat-narrow{
            relativeTime{
                future{
                    one{"en {0} SA"}
                    other{"dentro de {0} SA"}
                }
                past{
                    one{"hace {0} sábados"}
                    other{"hace {0} sábados"}
                }
            }
        }
        sun{
            relativeTime{
                future{
                    one{"en {0} domingo"}
                    other{"en {0} domingos"}
                }
            }
        }
        sun-narrow{
            relativeTime{
                future{
                    one{"dentro de {0} DO"}
                    other{"en {0} DO"}
                }
                past{
                    one{"hace {0} domingo"}
                    other{"hace {0} domingos"}
                }
            }
        }
        thu{
            relativeTime{
                future{
                    one{"en {0} jueves"}
                    other{"dentro de {0} jueves"}
                }
            }
        }
        thu-narrow{
            relativeTime{
                future{
                    one{"dentro de {0} JU"}
                    other{"en {0} JU"}
                }
            }
        }
        tue{
            relativeTime{
                future{
                    one{"dentro de {0} martes"}
                    other{"en {0} martes"}
                }
            }
        }
        wed{
            relativeTime{
                future{
                    one{"en {0} miércoles"}
                    other{"dentro de {0} miércoles"}
                }
            }
        }
        wed-narrow{
            relativeTime{
                future{
                    one{"en {0} MI"}
                    other{"en {0} MI"}
                }
                past{
                    one{"hace {0} miércoles"}
                    other{"hace {0} miércoles"}
                }
            }
        }
        wed-short{
            relativeTime{
                future{
                    one{"en {0} mié."}
                    other{"en {0} mié."}
                }
                past{
                    one{"hace {0} miércoles"}
                    other{"hace {0} miércoles"}
                }
            }
        }
        week-narrow{
            relativePeriod{"la semana del {0}"}
        }
        week-short{
            relativePeriod{"la semana del {0}"}
        }
        weekOfMonth-narrow{
            dn{"sem. del mes"}
        }
        weekOfMonth-short{
            dn{"sem. del mes"}
        }
        weekdayOfMonth{
            dn{"día hábil del mes"}
        }
        weekdayOfMonth-narrow{
            dn{"día hábil del mes"}
        }
        weekdayOfMonth-short{
            dn{"día hábil del mes"}
        }
        year-narrow{
            relative{
                "-1"{"el año pasado"}
                "0"{"este año"}
            }
        }
        year-short{
            relative{
                "-1"{"el año pasado"}
                "0"{"este año"}
            }
        }
    }
}
