﻿// ***************************************************************************
// *
// * Copyright (C) 2009 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/mr.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/mr.xml
 */
mr{
    AuxExemplarCharacters{"[\u200C \u200D]"}
    ExemplarCharacters{"[़ ँ-ः ०-९ ॐ अ-ऍ ए-ऑ ओ-न प-र ल ळ व-ह ऽ-ॅ े-ॉ ो-्]"}
    LocaleScript{
        "Deva",
    }
    NumberElements{
        ".",
        ",",
        ";",
        "%",
        "०",
        "#",
        "-",
        "E",
        "‰",
        "∞",
        "NaN",
        "+",
    }
    NumberPatterns{
        "#,##,##0.###",
        "¤ #,##,##0.00",
        "#,##,##0%",
        "#E0",
    }
    Version{"2.0.42.82"}
    calendar{
        gregorian{
            AmPmMarkers{
                "am",
                "pm",
            }
            DateTimePatterns{
                "h-mm-ss a zzzz",
                "h-mm-ss a z",
                "h-mm-ss a",
                "h-mm a",
                "EEEE d MMMM y",
                "d MMMM y",
                "d MMM y",
                "d-M-yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Hm{"H-mm"}
                Hms{"H-mm-ss"}
                MMMMd{"d MMMM"}
                MMdd{"dd-MM"}
                yyQ{"Q yy"}
                yyyyMM{"MM-yyyy"}
                yyyyMMMM{"MMMM y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "रवि",
                        "सोम",
                        "मंगळ",
                        "बुध",
                        "गुरु",
                        "शुक्र",
                        "शनि",
                    }
                    wide{
                        "रविवार",
                        "सोमवार",
                        "मंगळवार",
                        "बुधवार",
                        "गुरुवार",
                        "शुक्रवार",
                        "शनिवार",
                    }
                }
                stand-alone{
                    narrow{
                        "र",
                        "सो",
                        "मं",
                        "बु",
                        "गु",
                        "शु",
                        "श",
                    }
                }
            }
            eras{
                abbreviated{
                    "ई.स.पू.",
                    "ई.स.",
                }
                wide{
                    "ई.स.पू.",
                    "ईसवीसन",
                }
            }
            fields{
                day{
                    dn{"दिवस"}
                    relative{
                        "1"{"उद्या"}
                        "2"{"परवा"}
                    }
                }
                era{
                    dn{"युग"}
                }
                hour{
                    dn{"तास"}
                }
                minute{
                    dn{"मिनिट"}
                }
                month{
                    dn{"महिना"}
                }
                second{
                    dn{"सेकंद"}
                }
                week{
                    dn{"आठवडा"}
                }
                weekday{
                    dn{"आठवड्याचा दिवस"}
                }
                year{
                    dn{"वर्ष"}
                }
                zone{
                    dn{"झोन"}
                }
            }
            monthNames{
                format{
                    wide{
                        "जानेवारी",
                        "फेब्रुवारी",
                        "मार्च",
                        "एप्रिल",
                        "मे",
                        "जून",
                        "जुलै",
                        "ऑगस्ट",
                        "सप्टेंबर",
                        "ऑक्टोबर",
                        "नोव्हेंबर",
                        "डिसेंबर",
                    }
                }
                stand-alone{
                    narrow{
                        "जा",
                        "फे",
                        "मा",
                        "ए",
                        "मे",
                        "जू",
                        "जु",
                        "ऑ",
                        "स",
                        "ऑ",
                        "नो",
                        "डि",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    wide{
                        "प्रथम तिमाही",
                        "द्वितीय तिमाही",
                        "तृतीय तिमाही",
                        "चतुर्थ तिमाही",
                    }
                }
            }
        }
    }
    defaultNumberingSystem{"deva"}
    delimiters{
        alternateQuotationEnd{"\""}
        alternateQuotationStart{"\""}
        quotationEnd{"'"}
        quotationStart{"'"}
    }
}
