﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/es_MX.xml
// *
// ***************************************************************************
es_MX{
    %%Parent{"es_419"}
    Keys{
        calendar{"Calendario"}
        collation{"Intercalación"}
        currency{"Moneda"}
    }
    Languages{
        arn{"araucano"}
        ba{"bashkir"}
        chr{"cheroki"}
        ckb{"sorani"}
        de_CH{"alto alemán suizo"}
        dsb{"bajo sorbio"}
        es_419{"español latinoamericano"}
        gsw{"alemán suizo"}
        gv{"manés"}
        hsb{"alto sorbio"}
        kab{"cabilio"}
        kln{"halenjin"}
        luo{"luo"}
        nd{"sindebele"}
        nqo{"N’Ko"}
        pa{"panyabí"}
        rm{"romanche"}
        rn{"rundi"}
        smj{"sami de Lule"}
        smn{"sami de Inari"}
        su{"sondanés"}
        vai{"vai"}
        vun{"vunjo"}
        zgh{"tamazight estándar marroquí"}
    }
    Languages%variant{
        ps{"pashto"}
        ug{"uyghur"}
    }
    LanguagesShort{
        en_GB{"inglés (R.U.)"}
    }
    Scripts{
        Hans{"han simplificado"}
        Hant{"han tradicional"}
        Laoo{"lao"}
        Sinh{"cingalés"}
        Telu{"telugú"}
    }
    Scripts%stand-alone{
        Hans{"han simplificado"}
        Hant{"han tradicional"}
    }
    Scripts%variant{
        Arab{"perso-árabe"}
    }
    Types{
        calendar{
            ethiopic{"calendario etíope"}
            gregorian{"Calendario gregoriano"}
            persian{"calendario persa"}
            roc{"calendario minguo"}
        }
        collation{
            standard{"Orden estándar"}
            traditional{"Orden tradicional"}
        }
        numbers{
            arab{"Dígitos en arábigo-índico"}
            arabext{"Dígitos en árabigo-índico extendido"}
            armn{"Números en armenio"}
            armnlow{"Números en armenio en minúscula"}
            ethi{"Números en etíope"}
            geor{"Números en georgiano"}
            grek{"Números en griego"}
            greklow{"Números en griego en minúscula"}
            guru{"Dígitos en gurmuji"}
            hanidec{"Numeros decimales en chino"}
            hans{"Números en chino simplificado"}
            hansfin{"Números financieros en chino simplificado"}
            hant{"Números en chino tradicional"}
            hantfin{"Números financieros en chino tradicional"}
            hebr{"Números en hebreo"}
            jpanfin{"Números financieros en japonés"}
            laoo{"Dígitos en lao"}
            mlym{"Dígitos en malabar"}
            taml{"Números en tamil"}
            tamldec{"Dígitos en tamil"}
            telu{"Dígitos en telugú"}
            tibt{"Dígitos en tibetano"}
        }
    }
    Version{"2.1.8.19"}
    codePatterns{
        script{"Dialecto: {0}"}
    }
}
