// *******************************************************************************
// *
// *   Copyright (C) 1997-2000, International Business Machines
// *   Corporation and others.  All Rights Reserved.
// *
// *******************************************************************************

es {
    CollationElements { "& N < n\u0303, N\u0303 " }
    Countries { 
        ES { "Espa\u00F1a" }
        AR { "Argentina" }
        BO { "Bolivia" }
        CL { "Chile" }
        CO { "Colombia" }
        CR { "Costa Rica" }
        DO { "Rep\u00FAblica Dominicana" }
        EC { "Ecuador" }
        GT { "Guatemala" }
        HN { "Honduras" }
        MX { "M\u00E9xico" }
        NI { "Nicaragua" }
        PA { "Panam\u00E1" }
        PE { "Per\u00FA" }
        PR { "Puerto Rico" }
        PY { "Paraguay" }
        SV { "El SalvadorUY" }
        UY { "Uruguay" }
        VE { "Venezuela" }
    }
    DateTimeElements { 
            "2",
            "1",
    }
    DateTimePatterns { 
            "HH'H'mm'' z",
            "H:mm:ss z",
            "H:mm:ss",
            "H:mm",
            "EEEE d' de 'MMMM' de 'yyyy",
            "d' de 'MMMM' de 'yyyy",
            "dd-MMM-yy",
            "d/MM/yy",
            "{1} {0}",
    }
    DayAbbreviations { 
            "dom",
            "lun",
            "mar",
            "mi\u00E9",
            "jue",
            "vie",
            "s\u00E1b",
    }
    DayNames { 
            "domingo",
            "lunes",
            "martes",
            "mi\u00E9rcoles",
            "jueves",
            "viernes",
            "s\u00E1bado",
    }
    Languages { 
        es { "espa\u00F1ol" }
    }
    LocaleID { "0c0a" }
    LocaleString { "es" }
    MonthAbbreviations { 
            "ene",
            "feb",
            "mar",
            "abr",
            "may",
            "jun",
            "jul",
            "ago",
            "sep",
            "oct",
            "nov",
            "dic",
            "",
    }
    MonthNames { 
            "enero",
            "febrero",
            "marzo",
            "abril",
            "mayo",
            "junio",
            "julio",
            "agosto",
            "septiembre",
            "octubre",
            "noviembre",
            "diciembre",
            "",
    }
    NumberElements { 
            ",",
            ".",
            ";",
            "%",
            "0",
            "#",
            "-",
            "E",
            "\u2030",
            "\u221E",
            "\uFFFD",
    }
    NumberPatterns { 
            "#,##0.###;-#,##0.###",
            "\u00A4#,##0.00;(\u00A4#,##0.00)",
            "#,##0%",
    }
    ShortLanguage { "spa" }
    localPatternChars { "GuMtkHmsSEDFwWahKzUe" }
    zoneStrings { 
        {
                "Africa/Casablanca",
                "GMT",
                "GMT",
                "GMT",
                "GMT",
        }
    }
}
