﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/ne.xml
// *
// ***************************************************************************
ne{
    AuxExemplarCharacters{"[\u200C\u200D]"}
    Ellipsis{
        final{"{0}…"}
        initial{"…{0}"}
        medial{"{0}…{1}"}
        word-final{"{0} …"}
        word-initial{"… {0}"}
        word-medial{"{0} … {1}"}
    }
    ExemplarCharacters{
        "[\u093C \u0901 \u0902 ः ॐ अ आ इ ई उ ऊ ऋ ऌ ऍ ए ऐ ऑ ओ औ क ख ग घ ङ च छ ज झ ञ ट "
        "ठ ड ढ ण त थ द ध न प फ ब भ म य र ल ळ व श ष स ह ऽ ा ि ी \u0941 \u0942 \u0943 "
        "\u0944 \u0945 \u0947 \u0948 ॉ ो ौ \u094D]"
    }
    MoreInformation{"?"}
    NumberElements{
        default{"deva"}
        deva{
            patterns{
                currencyFormat{"¤ #,##0.00"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            symbols{
                decimal{"."}
                exponential{"E"}
                group{","}
                infinity{"∞"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{":"}
            }
        }
        latn{
            miscPatterns{
                atLeast{"{0}+"}
                range{"{0}–{1}"}
            }
            patterns{
                accountingFormat{"¤ #,##0.00"}
                currencyFormat{"¤ #,##0.00"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 हजार"}
                        other{"0 हजार"}
                    }
                    10000{
                        one{"00 हजार"}
                        other{"00 हजार"}
                    }
                    100000{
                        one{"0 लाख"}
                        other{"0 लाख"}
                    }
                    1000000{
                        one{"0 करोड"}
                        other{"0 करोड"}
                    }
                    10000000{
                        one{"00 करोड"}
                        other{"00 करोड"}
                    }
                    100000000{
                        one{"000 करोड"}
                        other{"000 करोड"}
                    }
                    1000000000{
                        one{"0 अर्ब"}
                        other{"0 अर्ब"}
                    }
                    10000000000{
                        one{"00 अर्ब"}
                        other{"00 अर्ब"}
                    }
                    100000000000{
                        one{"000 अरब"}
                        other{"000 अरब"}
                    }
                    1000000000000{
                        one{"0 खर्ब"}
                        other{"0 खर्ब"}
                    }
                    10000000000000{
                        one{"0 शंख"}
                        other{"0 शंख"}
                    }
                    100000000000000{
                        one{"00 शंख"}
                        other{"00 शंख"}
                    }
                }
            }
            patternsShort{
                currencyFormat{
                    1000{
                        one{"¤ 0 हजार"}
                        other{"¤ 0 हजार"}
                    }
                    10000{
                        one{"¤ 00 हजार"}
                        other{"¤ 00 हजार"}
                    }
                    100000{
                        one{"¤ 0 लाख"}
                        other{"¤ 0 लाख"}
                    }
                    1000000{
                        one{"¤ 00 लाख"}
                        other{"¤ 00 लाख"}
                    }
                    10000000{
                        one{"¤ 0 करोड"}
                        other{"¤ 0 करोड"}
                    }
                    100000000{
                        one{"¤ 00 करोड"}
                        other{"¤ 00 करोड"}
                    }
                    1000000000{
                        one{"¤ 0 अरब"}
                        other{"¤ 0 अरब"}
                    }
                    10000000000{
                        one{"¤ 00 अरब"}
                        other{"¤ 00 अरब"}
                    }
                    100000000000{
                        one{"¤ 0 खरब"}
                        other{"¤ 0 खरब"}
                    }
                    1000000000000{
                        one{"¤ 00 खरब"}
                        other{"¤ 00 खरब"}
                    }
                    10000000000000{
                        one{"¤ 0 शंख"}
                        other{"¤ 0 शंख"}
                    }
                    100000000000000{
                        one{"¤ 00 शंख"}
                        other{"¤ 00 शंख"}
                    }
                }
                decimalFormat{
                    1000{
                        one{"0 हजार"}
                        other{"0 हजार"}
                    }
                    10000{
                        one{"00 हजार"}
                        other{"00 हजार"}
                    }
                    100000{
                        one{"0 लाख"}
                        other{"0 लाख"}
                    }
                    1000000{
                        one{"00 लाख"}
                        other{"00 लाख"}
                    }
                    10000000{
                        one{"0 करोड"}
                        other{"0 करोड"}
                    }
                    100000000{
                        one{"00 करोड"}
                        other{"00 करोड"}
                    }
                    1000000000{
                        one{"0 अरब"}
                        other{"0 अरब"}
                    }
                    10000000000{
                        one{"00 अरब"}
                        other{"00 अरब"}
                    }
                    100000000000{
                        one{"0 खरब"}
                        other{"0 खरब"}
                    }
                    1000000000000{
                        one{"00 खरब"}
                        other{"00 खरब"}
                    }
                    10000000000000{
                        one{"0 शंख"}
                        other{"0 शंख"}
                    }
                    100000000000000{
                        one{"00 शंख"}
                        other{"00 शंख"}
                    }
                }
            }
            symbols{
                decimal{"."}
                exponential{"E"}
                group{","}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{":"}
            }
        }
        minimumGroupingDigits{"१"}
        native{"deva"}
    }
    Version{"2.1.19.14"}
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "G y MMMM d, EEEE",
                "G y MMMM d",
                "G y MMM d",
                "GGGGG y-MM-dd",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                E{"ccc"}
                Ed{"d, E"}
                Gy{"G y"}
                GyMMM{"G y MMM"}
                GyMMMEd{"G y MMM d, E"}
                GyMMMd{"G y MMM d"}
                M{"L"}
                MEd{"MM/dd, E"}
                MMM{"LLL"}
                MMMEd{"MMM d, E"}
                MMMMd{"MMMM d"}
                MMMd{"MMM d"}
                Md{"MM-dd"}
                d{"d"}
                y{"G y"}
                yyyy{"G y"}
                yyyyM{"GGGGG y-MM"}
                yyyyMEd{"GGGGG y-MM-dd, E"}
                yyyyMMM{"G y MMM"}
                yyyyMMMEd{"G y MMM d, E"}
                yyyyMMMM{"G y MMMM"}
                yyyyMMMd{"G y MMM d"}
                yyyyMd{"GGGGG y-MM-dd"}
                yyyyQQQ{"G y QQQ"}
                yyyyQQQQ{"G y QQQQ"}
            }
            intervalFormats{
                M{
                    M{"MM–MM"}
                }
                MEd{
                    M{"MM/dd, E – MM/dd, E"}
                    d{"MM/dd, E – MM/dd, E"}
                }
                MMM{
                    M{"LLL–LLL"}
                }
                MMMEd{
                    M{"MMM d, E – MMM d, E"}
                    d{"MMM d, E – MMM d, E"}
                }
                MMMd{
                    M{"MMM d – MMM d"}
                    d{"MMM d–d"}
                }
                Md{
                    M{"MM-dd – MM-dd"}
                    d{"MM-dd – MM-dd"}
                }
                d{
                    d{"d–d"}
                }
                fallback{"{0} – {1}"}
                y{
                    y{"G y–y"}
                }
                yM{
                    M{"GGGGG y-MM – y-MM"}
                    y{"GGGGG y-MM – y-MM"}
                }
                yMEd{
                    M{"GGGGG y-MM-dd, E – y-MM-dd, E"}
                    d{"GGGGG y-MM-dd, E – y-MM-dd, E"}
                    y{"GGGGG y-MM-dd, E – y-MM-dd, E"}
                }
                yMMM{
                    M{"G y MMM–MMM"}
                    y{"G y MMM – y MMM"}
                }
                yMMMEd{
                    M{"G y MMM d, E – MMM d, E"}
                    d{"G y MMM d, E – MMM d, E"}
                    y{"G y MMM d, E – y MMM d, E"}
                }
                yMMMM{
                    M{"G y MMMM–MMMM"}
                    y{"G y MMMM – y MMMM"}
                }
                yMMMd{
                    M{"G y MMM d – MMM d"}
                    d{"G y MMM d–d"}
                    y{"G y MMM d – y MMM d"}
                }
                yMd{
                    M{"GGGGG y-MM-dd – y-MM-dd"}
                    d{"GGGGG y-MM-dd – y-MM-dd"}
                    y{"GGGGG y-MM-dd – y-MM-dd"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "पूर्वाह्न",
                "अपराह्न",
            }
            AmPmMarkersNarrow{
                "a",
                "p",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "y MMMM d, EEEE",
                "y MMMM d",
                "y MMM d",
                "y-MM-dd",
                "{1}, {0}",
                "{1} {0}",
                "{1} {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                E{"ccc"}
                EHm{"E HH:mm"}
                EHms{"E HH:mm:ss"}
                Ed{"d E"}
                Ehm{"E h:mm a"}
                Ehms{"E h:mm:ss a"}
                Gy{"G y"}
                GyMMM{"G y MMM"}
                GyMMMEd{"G y MMM d, E"}
                GyMMMd{"G y MMM d"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                Hmsv{"HH:mm:ss v"}
                Hmv{"HH:mm v"}
                M{"L"}
                MEd{"MM-dd, E"}
                MMM{"LLL"}
                MMMEd{"MMM d, E"}
                MMMMd{"MMMM d"}
                MMMd{"MMM d"}
                Md{"MM-dd"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                hmsv{"h:mm:ss a v"}
                hmv{"h:mm a v"}
                ms{"mm:ss"}
                y{"y"}
                yM{"y-MM"}
                yMEd{"y-MM-dd, E"}
                yMMM{"y MMM"}
                yMMMEd{"y MMM d, E"}
                yMMMM{"y MMMM"}
                yMMMd{"y MMM d"}
                yMd{"y-MM-dd"}
                yQQQ{"y QQQ"}
                yQQQQ{"y QQQQ"}
            }
            dayNames{
                format{
                    abbreviated{
                        "आइत",
                        "सोम",
                        "मङ्गल",
                        "बुध",
                        "बिही",
                        "शुक्र",
                        "शनि",
                    }
                    narrow{
                        "आ",
                        "सो",
                        "म",
                        "बु",
                        "बि",
                        "शु",
                        "श",
                    }
                    short{
                        "आइत",
                        "सोम",
                        "मङ्गल",
                        "बुध",
                        "बिही",
                        "शुक्र",
                        "शनि",
                    }
                    wide{
                        "आइतबार",
                        "सोमबार",
                        "मङ्गलबार",
                        "बुधबार",
                        "बिहिबार",
                        "शुक्रबार",
                        "शनिबार",
                    }
                }
                stand-alone{
                    abbreviated{
                        "आइत",
                        "सोम",
                        "मङ्गल",
                        "बुध",
                        "बिही",
                        "शुक्र",
                        "शनि",
                    }
                    narrow{
                        "आ",
                        "सो",
                        "म",
                        "बु",
                        "बि",
                        "शु",
                        "श",
                    }
                    short{
                        "आइत",
                        "सोम",
                        "मङ्गल",
                        "बुध",
                        "बिही",
                        "शुक्र",
                        "शनि",
                    }
                    wide{
                        "आइतबार",
                        "सोमबार",
                        "मङ्गलबार",
                        "बुधबार",
                        "बिहिबार",
                        "शुक्रबार",
                        "शनिबार",
                    }
                }
            }
            dayPeriod{
                format{
                    abbreviated{
                        afternoon1{"अपरान्ह"}
                        afternoon2{"बेलुका"}
                        evening1{"साँझ"}
                        midnight{"मध्यरात"}
                        morning1{"बिहान"}
                        night1{"रात"}
                        noon{"मध्यान्ह"}
                    }
                    narrow{
                        afternoon1{"अपरान्ह"}
                        afternoon2{"बेलुका"}
                        evening1{"साँझ"}
                        midnight{"मध्यरात"}
                        morning1{"बिहान"}
                        night1{"रात"}
                        noon{"n"}
                    }
                    wide{
                        afternoon1{"अपरान्ह"}
                        afternoon2{"बेलुका"}
                        evening1{"साँझ"}
                        midnight{"मध्यरात"}
                        morning1{"बिहान"}
                        night1{"रात"}
                        noon{"मध्यान्ह"}
                    }
                }
                stand-alone{
                    narrow{
                        afternoon1{"अपरान्ह"}
                        afternoon2{"साँझ"}
                        am{"पूर्वाह्न"}
                        evening1{"बेलुका"}
                        midnight{"मध्यरात"}
                        morning1{"बिहान"}
                        night1{"रात"}
                        noon{"मध्यान्ह"}
                        pm{"अपराह्न"}
                    }
                    wide{
                        afternoon1{"अपरान्ह"}
                        afternoon2{"साँझ"}
                        evening1{"बेलुका"}
                        midnight{"मध्यरात"}
                        morning1{"विहान"}
                        night1{"रात"}
                        noon{"मध्यान्ह"}
                    }
                }
            }
            eras{
                abbreviated{
                    "ईसा पूर्व",
                    "सन्",
                }
                abbreviated%variant{
                    "इस्वीपूर्व",
                    "सिइ",
                }
                wide%variant{
                    "इस्वीपूर्व",
                    "सिइ",
                }
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"MM–MM"}
                }
                MEd{
                    M{"MM-dd, E – MM-dd, E"}
                    d{"MM-dd, E – MM-dd, E"}
                }
                MMM{
                    M{"LLL–LLL"}
                }
                MMMEd{
                    M{"MMM d, E – MMM d, E"}
                    d{"MMM d, E – MMM d, E"}
                }
                MMMd{
                    M{"MMM d – MMM d"}
                    d{"MMM d–d"}
                }
                Md{
                    M{"MM-dd – MM-dd"}
                    d{"MM-dd – MM-dd"}
                }
                d{
                    d{"d–d"}
                }
                fallback{"{0} – {1}"}
                h{
                    a{"h a – h a"}
                    h{"h–h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm–h:mm a"}
                    m{"h:mm–h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm–h:mm a v"}
                    m{"h:mm–h:mm a v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h–h a v"}
                }
                y{
                    y{"y–y"}
                }
                yM{
                    M{"y-MM – y-MM"}
                    y{"y-MM – y-MM"}
                }
                yMEd{
                    M{"y-MM-dd, E – y-MM-dd, E"}
                    d{"y-MM-dd, E – y-MM-dd, E"}
                    y{"y-MM-dd, E – y-MM-dd, E"}
                }
                yMMM{
                    M{"y MMM–MMM"}
                    y{"y MMM – y MMM"}
                }
                yMMMEd{
                    M{"y MMM d, E – MMM d, E"}
                    d{"y MMM d, E – MMM d, E"}
                    y{"y MMM d, E – y MMM d, E"}
                }
                yMMMM{
                    M{"y MMMM–MMMM"}
                    y{"y MMMM – y MMMM"}
                }
                yMMMd{
                    M{"y MMM d – MMM d"}
                    d{"y MMM d–d"}
                    y{"y MMM d – y MMM d"}
                }
                yMd{
                    M{"y-MM-dd – y-MM-dd"}
                    d{"y-MM-dd – y-MM-dd"}
                    y{"y-MM-dd – y-MM-dd"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "जनवरी",
                        "फेब्रुअरी",
                        "मार्च",
                        "अप्रिल",
                        "मे",
                        "जुन",
                        "जुलाई",
                        "अगस्ट",
                        "सेप्टेम्बर",
                        "अक्टोबर",
                        "नोभेम्बर",
                        "डिसेम्बर",
                    }
                    narrow{
                        "१",
                        "२",
                        "३",
                        "४",
                        "५",
                        "६",
                        "७",
                        "८",
                        "९",
                        "१०",
                        "११",
                        "१२",
                    }
                    wide{
                        "जनवरी",
                        "फेब्रुअरी",
                        "मार्च",
                        "अप्रिल",
                        "मई",
                        "जुन",
                        "जुलाई",
                        "अगस्ट",
                        "सेप्टेम्बर",
                        "अक्टोबर",
                        "नोभेम्बर",
                        "डिसेम्बर",
                    }
                }
                stand-alone{
                    abbreviated{
                        "जनवरी",
                        "फेब्रुअरी",
                        "मार्च",
                        "अप्रिल",
                        "मे",
                        "जुन",
                        "जुलाई",
                        "अगस्ट",
                        "सेप्टेम्बर",
                        "अक्टोबर",
                        "नोभेम्बर",
                        "डिसेम्बर",
                    }
                    narrow{
                        "१",
                        "२",
                        "३",
                        "४",
                        "५",
                        "६",
                        "७",
                        "८",
                        "९",
                        "१०",
                        "११",
                        "१२",
                    }
                    wide{
                        "जनवरी",
                        "फेब्रुअरी",
                        "मार्च",
                        "अप्रिल",
                        "मे",
                        "जुन",
                        "जुलाई",
                        "अगस्ट",
                        "सेप्टेम्बर",
                        "अक्टोबर",
                        "नोभेम्बर",
                        "डिसेम्बर",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "पहिलो सत्र",
                        "दोस्रो सत्र",
                        "तेस्रो सत्र",
                        "चौथो सत्र",
                    }
                    narrow{
                        "१",
                        "२",
                        "३",
                        "४",
                    }
                    wide{
                        "पहिलो सत्र",
                        "दोस्रो सत्र",
                        "तेस्रो सत्र",
                        "चौथो सत्र",
                    }
                }
                stand-alone{
                    abbreviated{
                        "पहिलो सत्र",
                        "दोस्रो सत्र",
                        "तेस्रो सत्र",
                        "चौथो सत्र",
                    }
                    narrow{
                        "१",
                        "२",
                        "३",
                        "४",
                    }
                    wide{
                        "पहिलो सत्र",
                        "दोस्रो सत्र",
                        "तेस्रो सत्र",
                        "चौथो सत्र",
                    }
                }
            }
        }
        indian{
            monthNames{
                format{
                    wide{
                        "वैशाख",
                        "जेठ",
                        "असार",
                        "साउन",
                        "भदौ",
                        "असोज",
                        "कात्तिक",
                        "मङसिर",
                        "पुस",
                        "माघ",
                        "फागुन",
                        "चैत",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            dn{"बार"}
            relative{
                "-1"{"हिजो"}
                "-2"{"अस्ति"}
                "0"{"आज"}
                "1"{"भोलि"}
                "2"{"पर्सि"}
            }
            relativeTime{
                future{
                    one{"{0} दिनमा"}
                    other{"{0} दिनमा"}
                }
                past{
                    one{"{0} दिन पहिले"}
                    other{"{0} दिन पहिले"}
                }
            }
        }
        day-narrow{
            dn{"बार"}
            relativeTime{
                future{
                    one{"{0} दिनमा"}
                    other{"{0} दिनमा"}
                }
                past{
                    one{"{0} दिन पहिले"}
                    other{"{0} दिन पहिले"}
                }
            }
        }
        day-short{
            dn{"बार"}
            relativeTime{
                future{
                    one{"{0} दिनमा"}
                    other{"{0} दिनमा"}
                }
                past{
                    one{"{0} दिन पहिले"}
                    other{"{0} दिन पहिले"}
                }
            }
        }
        dayperiod{
            dn{"पूर्वाह्न / अपराह्न"}
        }
        era{
            dn{"काल"}
        }
        fri{
            relative{
                "-1"{"गत शुक्रबार"}
                "0"{"यो शुक्रबार"}
                "1"{"अर्को शुक्रबार"}
            }
        }
        fri-narrow{
            relative{
                "-1"{"गत शुक्रबार"}
                "0"{"यो शुक्रबार"}
                "1"{"अर्को शुक्रबार"}
            }
        }
        fri-short{
            relative{
                "-1"{"गत शुक्रबार"}
                "0"{"यो शुक्रबार"}
                "1"{"अर्को शुक्रबार"}
            }
        }
        hour{
            dn{"घण्टा"}
            relativeTime{
                future{
                    one{"{0} घण्टामा"}
                    other{"{0} घण्टामा"}
                }
                past{
                    one{"{0} घण्टा पहिले"}
                    other{"{0} घण्टा पहिले"}
                }
            }
        }
        hour-narrow{
            dn{"घण्टा"}
            relativeTime{
                future{
                    one{"{0} घण्टामा"}
                    other{"{0} घण्टामा"}
                }
                past{
                    one{"{0} घण्टा पहिले"}
                    other{"{0} घण्टा पहिले"}
                }
            }
        }
        hour-short{
            dn{"घण्टा"}
            relativeTime{
                future{
                    one{"{0} घण्टामा"}
                    other{"{0} घण्टामा"}
                }
                past{
                    one{"{0} घण्टा पहिले"}
                    other{"{0} घण्टा पहिले"}
                }
            }
        }
        minute{
            dn{"मिनेट"}
            relativeTime{
                future{
                    one{"{0} मिनेटमा"}
                    other{"{0} मिनेटमा"}
                }
                past{
                    one{"{0} मिनेट पहिले"}
                    other{"{0} मिनेट पहिले"}
                }
            }
        }
        minute-narrow{
            dn{"मिनेट"}
            relativeTime{
                future{
                    one{"{0} मिनेटमा"}
                    other{"{0} मिनेटमा"}
                }
                past{
                    one{"{0} मिनेट पहिले"}
                    other{"{0} मिनेट पहिले"}
                }
            }
        }
        minute-short{
            dn{"मिनेट"}
            relativeTime{
                future{
                    one{"{0} मिनेटमा"}
                    other{"{0} मिनेटमा"}
                }
                past{
                    one{"{0} मिनेट पहिले"}
                    other{"{0} मिनेट पहिले"}
                }
            }
        }
        mon{
            relative{
                "-1"{"गत सोमबार"}
                "0"{"यो सोमबार"}
                "1"{"अर्को सोमबार"}
            }
        }
        mon-narrow{
            relative{
                "-1"{"गत सोमबार"}
                "0"{"यो सोमबार"}
                "1"{"अर्को सोमबार"}
            }
        }
        mon-short{
            relative{
                "-1"{"गत सोमबार"}
                "0"{"यो सोमबार"}
                "1"{"अर्को सोमबार"}
            }
        }
        month{
            dn{"महिना"}
            relative{
                "-1"{"गएको महिना"}
                "0"{"यो महिना"}
                "1"{"अर्को महिना"}
            }
            relativeTime{
                future{
                    one{"{0} महिनामा"}
                    other{"{0} महिनामा"}
                }
                past{
                    one{"{0} महिना पहिले"}
                    other{"{0} महिना पहिले"}
                }
            }
        }
        month-narrow{
            dn{"महिना"}
            relativeTime{
                future{
                    one{"{0} महिनामा"}
                    other{"{0} महिनामा"}
                }
                past{
                    one{"{0} महिना पहिले"}
                    other{"{0} महिना पहिले"}
                }
            }
        }
        month-short{
            dn{"महिना"}
            relativeTime{
                future{
                    one{"{0} महिनामा"}
                    other{"{0} महिनामा"}
                }
                past{
                    one{"{0} महिना पहिले"}
                    other{"{0} महिना पहिले"}
                }
            }
        }
        quarter{
            dn{"सत्र"}
            relativeTime{
                future{
                    one{"+{0} सत्रमा"}
                    other{"{0}सत्रमा"}
                }
                past{
                    one{"{0}सत्र अघि"}
                    other{"{0}सत्र अघि"}
                }
            }
        }
        quarter-narrow{
            dn{"सत्र"}
            relativeTime{
                future{
                    one{"{0}सत्रमा"}
                    other{"{0}सत्रमा"}
                }
                past{
                    one{"{0}सत्र अघि"}
                    other{"{0}सत्र अघि"}
                }
            }
        }
        quarter-short{
            dn{"सत्र"}
            relativeTime{
                future{
                    one{"{0}सत्रमा"}
                    other{"{0}सत्रमा"}
                }
            }
        }
        sat{
            relative{
                "-1"{"गत शनिबार"}
                "0"{"यो शनिबार"}
                "1"{"अर्को शनिबार"}
            }
        }
        sat-narrow{
            relative{
                "-1"{"गत शनिबार"}
                "0"{"यो शनिबार"}
                "1"{"अर्को शनिबार"}
            }
        }
        sat-short{
            relative{
                "-1"{"गत शनिबार"}
                "0"{"यो शनिबार"}
                "1"{"अर्को शनिबार"}
            }
        }
        second{
            dn{"सेकेन्ड"}
            relative{
                "0"{"अब"}
            }
            relativeTime{
                future{
                    one{"{0} सेकेण्डमा"}
                    other{"{0} सेकेण्डमा"}
                }
                past{
                    one{"{0} सेकेण्ड पहिले"}
                    other{"{0} सेकेण्ड पहिले"}
                }
            }
        }
        second-narrow{
            relativeTime{
                future{
                    one{"{0} सेकेण्डमा"}
                    other{"{0} सेकेण्डमा"}
                }
                past{
                    one{"{0} सेकेण्ड पहिले"}
                    other{"{0} सेकेण्ड पहिले"}
                }
            }
        }
        second-short{
            relativeTime{
                future{
                    one{"{0} सेकेण्डमा"}
                    other{"{0} सेकेण्डमा"}
                }
                past{
                    one{"{0} सेकेण्ड पहिले"}
                    other{"{0} सेकेण्ड पहिले"}
                }
            }
        }
        sun{
            relative{
                "-1"{"गत आइतबार"}
                "0"{"यो आइतबार"}
                "1"{"अर्को आइतबार"}
            }
        }
        sun-narrow{
            relative{
                "-1"{"गत आइतबार"}
                "0"{"यो आइतबार"}
                "1"{"अर्को आइतबार"}
            }
        }
        sun-short{
            relative{
                "-1"{"गत आइतबार"}
                "0"{"यो आइतबार"}
                "1"{"अर्को आइतबार"}
            }
        }
        thu{
            relative{
                "-1"{"गत बिहिबार"}
                "0"{"यो बिहिबार"}
                "1"{"अर्को बिहिबार"}
            }
        }
        thu-narrow{
            relative{
                "-1"{"गत बिहिबार"}
                "0"{"यो बिहिबार"}
                "1"{"अर्को बिहिबार"}
            }
        }
        thu-short{
            relative{
                "-1"{"गत बिहिबार"}
                "0"{"यो बिहिबार"}
                "1"{"अर्को बिहिबार"}
            }
        }
        tue{
            relative{
                "-1"{"गत मंगलबार"}
                "0"{"यो मंगलबार"}
                "1"{"अर्को मंगलबार"}
            }
        }
        tue-narrow{
            relative{
                "-1"{"गत मंगलबार"}
                "0"{"यो मंगलबार"}
                "1"{"अर्को मंगलबार"}
            }
        }
        tue-short{
            relative{
                "-1"{"गत मंगलबार"}
                "0"{"यो मंगलबार"}
                "1"{"अर्को मंगलबार"}
            }
        }
        wed{
            relative{
                "-1"{"गत बुधबार"}
                "0"{"यो बुधबार"}
                "1"{"अर्को बुधबार"}
            }
        }
        wed-narrow{
            relative{
                "-1"{"गत बुधबार"}
                "0"{"यो बुधबार"}
                "1"{"अर्को बुधबार"}
            }
        }
        wed-short{
            relative{
                "-1"{"गत बुधबार"}
                "0"{"यो बुधबार"}
                "1"{"अर्को बुधबार"}
            }
        }
        week{
            dn{"हप्ता"}
            relative{
                "-1"{"गएको हप्ता"}
                "0"{"यो हप्ता"}
                "1"{"आउने हप्ता"}
            }
            relativeTime{
                future{
                    one{"{0} हप्तामा"}
                    other{"{0} हप्तामा"}
                }
                past{
                    one{"{0} हप्ता पहिले"}
                    other{"{0} हप्ता पहिले"}
                }
            }
        }
        week-narrow{
            dn{"हप्ता"}
            relativeTime{
                future{
                    one{"{0} हप्तामा"}
                    other{"{0} हप्तामा"}
                }
                past{
                    one{"{0} हप्ता पहिले"}
                    other{"{0} हप्ता पहिले"}
                }
            }
        }
        week-short{
            dn{"हप्ता"}
            relativeTime{
                future{
                    one{"{0} हप्तामा"}
                    other{"{0} हप्तामा"}
                }
                past{
                    one{"{0} हप्ता पहिले"}
                    other{"{0} हप्ता पहिले"}
                }
            }
        }
        weekday{
            dn{"हप्ताको बार"}
        }
        year{
            dn{"वर्ष"}
            relative{
                "-1"{"पहिलो वर्ष"}
                "0"{"यो वर्ष"}
                "1"{"अर्को वर्ष"}
            }
            relativeTime{
                future{
                    one{"{0} वर्षमा"}
                    other{"{0} वर्षमा"}
                }
                past{
                    one{"{0} वर्ष अघि"}
                    other{"{0} वर्ष अघि"}
                }
            }
        }
        year-narrow{
            dn{"बर्ष"}
            relativeTime{
                future{
                    one{"{0} वर्षमा"}
                    other{"{0} वर्षमा"}
                }
                past{
                    one{"{0} वर्ष अघि"}
                    other{"{0} वर्ष अघि"}
                }
            }
        }
        year-short{
            dn{"बर्ष"}
            relativeTime{
                future{
                    one{"{0} वर्षमा"}
                    other{"{0} वर्षमा"}
                }
                past{
                    one{"{0} वर्ष अघि"}
                    other{"{0} वर्ष अघि"}
                }
            }
        }
        zone{
            dn{"समय क्षेत्र"}
        }
    }
    listPattern{
        standard{
            2{"{0} र {1}"}
            end{"{0} र {1}"}
            middle{"{0}, {1}"}
            start{"{0} र {1}"}
        }
        unit{
            2{"{0} {1}"}
            end{"{0} {1}"}
            middle{"{0}, {1}"}
            start{"{0} {1}"}
        }
        unit-narrow{
            2{"{0} {1}"}
            end{"{0} {1}"}
            middle{"{0}, {1}"}
            start{"{0} {1}"}
        }
        unit-short{
            2{"{0} {1}"}
            end{"{0} {1}"}
            middle{"{0}, {1}"}
            start{"{0} {1}"}
        }
    }
    measurementSystemNames{
        UK{"संयुक्त अधिराज्य"}
        US{"संयु्क्त राज्य"}
        metric{"मेट्रिक"}
    }
}
