﻿// ***************************************************************************
// *
// * Copyright (C) 2005 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File: ../../../../ICU4J/cldr/common/main/mn.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: ./xml/main/mn.xml
 */
mn{
    Countries{
        MN{"Монгол улс"}
    }
    Currencies{
        MNT{
            "₮",
            "MNT",
        }
    }
    ExemplarCharacters{"[а-яієїґү]"}
    Languages{
        mn{"Монгол хэл"}
    }
    LocaleScript{
        "Cyrl",
    }
    NumberElements{
        ",",
        " ",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "‰",
        "∞",
        "�",
        "+",
    }
    Version{"1.18"}
    calendar{
        gregorian{
            dayNames{
                format{
                    abbreviated{
                        "Ня",
                        "Да",
                        "Мя",
                        "Лх",
                        "Пү",
                        "Ба",
                        "Бя",
                    }
                    wide{
                        "ням",
                        "даваа",
                        "мягмар",
                        "лхагва",
                        "пүрэв",
                        "баасан",
                        "бямба",
                    }
                }
            }
            eras{
                abbreviated{
                    "м.э.ө",
                    "м.э.",
                }
                wide{
                    "манай эриний өмнөх",
                    "манай эриний",
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "хул",
                        "үхэ",
                        "бар",
                        "туу",
                        "луу",
                        "мог",
                        "мор",
                        "хон",
                        "бич",
                        "тах",
                        "нох",
                        "гах",
                    }
                    wide{
                        "Хулгана",
                        "Үхэр",
                        "Бар",
                        "Туулай",
                        "Луу",
                        "Могой",
                        "Морь",
                        "Хонь",
                        "Бич",
                        "Тахиа",
                        "Нохой",
                        "Гахай",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"“"}
        quotationEnd{"’"}
        quotationStart{"‘"}
    }
}
