﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/es_419.xml
// *
// ***************************************************************************
es_419{
    NumberElements{
        latn{
            patterns{
                currencyFormat{"¤#,##0.00"}
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0"}
                        other{"0"}
                    }
                    10000{
                        one{"00k"}
                        other{"00k"}
                    }
                    100000{
                        one{"000k"}
                        other{"000k"}
                    }
                    1000000{
                        one{"0 M"}
                        other{"0 M"}
                    }
                    10000000{
                        one{"00 M"}
                        other{"00 M"}
                    }
                    100000000{
                        one{"000 M"}
                        other{"000 M"}
                    }
                    1000000000{
                        one{"0k M"}
                        other{"0k M"}
                    }
                    10000000000{
                        one{"00k M"}
                        other{"00k M"}
                    }
                    100000000000{
                        one{"000k M"}
                        other{"000k M"}
                    }
                    1000000000000{
                        one{"0 B"}
                        other{"0 B"}
                    }
                    10000000000000{
                        one{"00 B"}
                        other{"00 B"}
                    }
                    100000000000000{
                        one{"000 B"}
                        other{"000 B"}
                    }
                }
            }
            symbols{
                decimal{"."}
                group{","}
            }
        }
    }
    Version{"2.0.85.93"}
    calendar{
        generic{
            availableFormats{
                yMEd{"E d/M/y G"}
            }
        }
        gregorian{
            availableFormats{
                yMEd{"E d/M/y"}
            }
            dayNames{
                stand-alone{
                    narrow{
                        "D",
                        "L",
                        "M",
                        "M",
                        "J",
                        "V",
                        "S",
                    }
                }
            }
            quarters{
                format{
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                }
            }
        }
    }
    fields{
        month{
            relative{
                "-1"{"El mes pasado"}
                "0"{"Este mes"}
                "1"{"Mes próximo"}
            }
        }
        week{
            relative{
                "-1"{"Semana pasada"}
                "0"{"Esta semana"}
                "1"{"Próxima semana"}
            }
        }
        year{
            relative{
                "-1"{"Año pasado"}
                "0"{"Este año"}
                "1"{"Año próximo"}
            }
        }
    }
    measurementSystemNames{
        UK{"Reino Unido"}
    }
    units{
        duration{
            day-future{
                one{"En {0} día"}
                other{"En {0} días"}
            }
            hour-future{
                one{"En {0} hora"}
                other{"En {0} horas"}
            }
            minute-future{
                one{"En {0} minuto"}
                other{"En {0} minutos"}
            }
            month-future{
                one{"En {0} mes"}
                other{"En {0} meses"}
            }
            second-future{
                one{"En {0} segundo"}
                other{"En {0} segundos"}
            }
            week-future{
                one{"En {0} semana"}
                other{"En {0} semanas"}
            }
            year-future{
                one{"En {0} año"}
                other{"En {0} años"}
            }
        }
    }
}
