﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/ne.xml
// *
// ***************************************************************************
ne{
    Version{"2.1.23.7"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"गुरूत्वाकर्षण शक्ति"}
                one{"{0} गुरूत्वाकर्षण शक्ति"}
                other{"{0} गुरूत्वाकर्षण शक्ति"}
            }
            meter-per-second-squared{
                dnam{"मिटर प्रति वर्ग सेकेन्ड"}
                one{"{0}मिटर प्रति सेकेण्ड वर्ग"}
                other{"{0}मिटर प्रति सेकेण्ड वर्ग"}
            }
        }
        angle{
            arc-minute{
                dnam{"आर्क मिनेट"}
                one{"{0}आर्क मिनेट"}
                other{"{0}आर्क मिनेट"}
            }
            arc-second{
                dnam{"आर्क सेकेण्ड"}
                one{"{0}आर्क सेकेण्ड"}
                other{"{0}आर्क सेकेण्ड"}
            }
            degree{
                dnam{"डिग्री"}
                one{"{0} डिग्री"}
                other{"{0} डिग्री"}
            }
            radian{
                dnam{"रेडियन"}
                one{"{0}रेडियन"}
                other{"{0}रेडियन"}
            }
            revolution{
                dnam{"परिक्रमा"}
                one{"{0}परिक्रमा"}
                other{"{0}परिक्रमा"}
            }
        }
        area{
            acre{
                dnam{"बर्ग गज"}
                one{"{0} बर्ग गज"}
                other{"{0} बर्ग गज"}
            }
            hectare{
                dnam{"हेक्टर"}
                one{"{0} हेक्टर"}
                other{"{0} हेक्टर"}
            }
            square-centimeter{
                dnam{"वर्ग सेन्टिमिटर"}
                one{"{0}वर्ग सेन्टिमिटर"}
                other{"{0}वर्ग सेन्टिमिटर"}
                per{"{0}प्रति वर्ग सेन्टिमिटर"}
            }
            square-foot{
                dnam{"बर्ग फुट"}
                one{"{0} बर्ग फुट"}
                other{"{0} बर्ग फुट"}
            }
            square-inch{
                dnam{"वर्ग इन्च"}
                one{"{0}वर्ग इन्च"}
                other{"{0}वर्ग इन्च"}
                per{"{0}प्रति वर्ग इन्च"}
            }
            square-kilometer{
                dnam{"बर्ग किलोमिटर"}
                one{"{0} बर्ग किलोमिटर"}
                other{"{0} बर्ग किलोमिटर"}
            }
            square-meter{
                dnam{"बर्ग मिटर"}
                one{"{0} बर्ग मिटर"}
                other{"{0} बर्ग मिटर"}
                per{"{0}प्रति वर्ग मिटर"}
            }
            square-mile{
                dnam{"बर्ग माईल"}
                one{"{0} बर्ग माईल"}
                other{"{0} बर्ग माईल"}
            }
            square-yard{
                dnam{"वर्ग यार्ड"}
                one{"{0}वर्ग यार्ड"}
                other{"{0}वर्ग यार्ड"}
            }
        }
        compound{
            per{"{0}प्रति{1}"}
        }
        concentr{
            karat{
                dnam{"कराट"}
                one{"{0}कराट"}
                other{"{0}कराट"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"लिटर प्रति १०० किलोमिटर"}
                one{"{0}लिटर प्रति १०० किलोमिटर"}
                other{"{0}लिटर प्रति १०० किलोमिटर"}
            }
            liter-per-kilometer{
                dnam{"लिटर प्रति किलोमिटर"}
                one{"{0}लिटर प्रति किलोमिटर"}
                other{"{0}लिटर प्रति किलोमिटर"}
            }
            mile-per-gallon{
                dnam{"माइल प्रति गालोन"}
                one{"{0}माइल प्रति गालोन"}
                other{"{0}माइल प्रति गालोन"}
            }
        }
        coordinate{
            east{"{0}पूर्व"}
            north{"{0}उत्तर"}
            south{"{0}दक्षिण"}
            west{"{0}पश्चिम"}
        }
        digital{
            bit{
                dnam{"बिट"}
                one{"{0}बिट"}
                other{"{0}बिट"}
            }
            byte{
                dnam{"बाइट"}
                one{"{0}बाइट"}
                other{"{0}बाइट"}
            }
            gigabit{
                dnam{"गिगाबिट"}
                one{"{0}गिगाबिट"}
                other{"{0}गिगाबिट"}
            }
            gigabyte{
                dnam{"गिगाबाइट"}
                one{"{0}गिगाबाइट"}
                other{"{0}गिगाबाइट"}
            }
            kilobit{
                dnam{"किलोबिट"}
                one{"{0}किलोबिट"}
                other{"{0}किलोबिट"}
            }
            kilobyte{
                dnam{"किलोबाइट"}
                one{"{0}किलोबाइट"}
                other{"{0}किलोबाइट"}
            }
            megabit{
                dnam{"मेगाबिट"}
                one{"{0}मेगाबिट"}
                other{"{0}मेगाबिट"}
            }
            megabyte{
                dnam{"मेगाबाइट"}
                one{"{0}मेगाबाइट"}
                other{"{0}मेगाबाइट"}
            }
            terabit{
                dnam{"टेराबिट"}
                one{"{0}टेराबिट"}
                other{"{0}टेराबिट"}
            }
            terabyte{
                dnam{"टेराबाइट"}
                one{"{0}टेराबाइट"}
                other{"{0}टेराबाइट"}
            }
        }
        duration{
            century{
                dnam{"शताब्दी"}
                one{"{0}शताब्दी"}
                other{"{0}शताब्दी"}
            }
            day{
                dnam{"दिन"}
                one{"{0} दिन"}
                other{"{0} दिन"}
                per{"{0}/दिन"}
            }
            hour{
                dnam{"घन्टा"}
                one{"{0} घण्टा"}
                other{"{0} घण्टा"}
                per{"{0}प्रति घण्टा"}
            }
            microsecond{
                dnam{"माइक्रोसेकेण्ड"}
                one{"{0}माइक्रोसेकेण्ड"}
                other{"{0}माइक्रोसेकेण्ड"}
            }
            millisecond{
                dnam{"मिली सेकेण्ड"}
                one{"{0} मिली सेकेण्ड"}
                other{"{0} मिली सेकेण्ड"}
            }
            minute{
                dnam{"मिनेट"}
                one{"{0} मिनेट"}
                other{"{0} मिनेट"}
                per{"{0}प्रति मिनेट"}
            }
            month{
                dnam{"महिना"}
                one{"{0} महिना"}
                other{"{0} महिना"}
                per{"{0}/महिना"}
            }
            nanosecond{
                dnam{"न्यानोसेकेण्ड"}
                one{"{0}न्यानोसेकेण्ड"}
                other{"{0}न्यानोसेकेण्ड"}
            }
            second{
                dnam{"सेकेण्ड"}
                one{"{0} सेकेण्ड"}
                other{"{0} सेकेण्ड"}
                per{"{0}प्रति सेकेण्ड"}
            }
            week{
                dnam{"हप्ता"}
                one{"{0} हप्ता"}
                other{"{0} हप्ता"}
                per{"{0}प्रति हप्ता"}
            }
            year{
                dnam{"वर्ष"}
                one{"{0} वर्ष"}
                other{"{0} वर्ष"}
                per{"{0}प्रति वर्ष"}
            }
        }
        electric{
            ampere{
                dnam{"एम्पियर"}
                one{"{0} एम्पियर"}
                other{"{0}एम्पियर"}
            }
            milliampere{
                dnam{"मिलिएम्पियर"}
                one{"{0} मिलिएम्पियर"}
                other{"{0} मिलिएम्पियर"}
            }
            ohm{
                dnam{"ohm"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"भोल्ट"}
                one{"{0}भोल्ट"}
                other{"{0}भोल्ट"}
            }
        }
        energy{
            calorie{
                dnam{"क्यालोरी"}
                one{"{0}क्यालोरी"}
                other{"{0}क्यालोरी"}
            }
            foodcalorie{
                dnam{"क्यालोरी"}
                one{"{0}क्यालोरी"}
                other{"{0}क्यालोरी"}
            }
            joule{
                dnam{"जुल"}
                one{"{0} जुल"}
                other{"{0}जुल"}
            }
            kilocalorie{
                dnam{"किलोक्यालोरी"}
                one{"{0}किलोक्यालोरी"}
                other{"{0}किलोक्यालोरी"}
            }
            kilojoule{
                dnam{"किलोजुल"}
                one{"{0}किलोजुल"}
                other{"{0}किलोजुल"}
            }
            kilowatt-hour{
                dnam{"किलोवाट-घण्टा"}
                one{"{0}किलोवाट-घण्टा"}
                other{"{0}किलोवाट-घण्टा"}
            }
        }
        frequency{
            gigahertz{
                dnam{"गिगाहर्ज"}
                one{"{0}गिगाहर्ज"}
                other{"{0}गिगाहर्ज"}
            }
            hertz{
                dnam{"हर्ज"}
                one{"{0} हर्ज"}
                other{"{0} हर्ज"}
            }
            kilohertz{
                dnam{"किलोहर्ज"}
                one{"{0}किलोहर्ज"}
                other{"{0}किलोहर्ज"}
            }
            megahertz{
                dnam{"मेगाहर्ज"}
                one{"{0} मेगाहर्ज"}
                other{"{0} मेगाहर्ज"}
            }
        }
        length{
            astronomical-unit{
                dnam{"खगोल एकाइ"}
                one{"{0}खगोल एकाइ"}
                other{"{0}खगोल एकाइ"}
            }
            centimeter{
                dnam{"सेन्टिमिटर"}
                one{"{0} सेन्टिमिटर"}
                other{"{0} सेन्टिमिटर"}
                per{"{0}प्रति सेन्टिमिटर"}
            }
            decimeter{
                dnam{"डेसिमिटर"}
                one{"{0}डेसिमिटर"}
                other{"{0}डेसिमिटर"}
            }
            foot{
                dnam{"फुट"}
                one{"{0} फुट"}
                other{"{0} फुट"}
                per{"{0} प्रति फुट"}
            }
            inch{
                dnam{"इन्च"}
                one{"{0}इन्च"}
                other{"{0}इन्च"}
                per{"{0} प्रति इन्च"}
            }
            kilometer{
                dnam{"किलोमिटर"}
                one{"{0} किलोमिटर"}
                other{"{0}किलोमिटर"}
                per{"{0}प्रति किलोमिटर"}
            }
            light-year{
                dnam{"प्रकाश वर्ष"}
                one{"{0} प्रकाश वर्ष"}
                other{"{0} प्रकाश वर्ष"}
            }
            meter{
                dnam{"मिटर"}
                one{"{0} मिटर"}
                other{"{0} मिटर"}
                per{"{0}प्रति मिटर"}
            }
            micrometer{
                dnam{"माइक्रोमिटर"}
                one{"{0}माइक्रोमिटर"}
                other{"{0}माइक्रोमिटर"}
            }
            mile{
                dnam{"माइल"}
                one{"माइल"}
                other{"{0} माइल"}
            }
            mile-scandinavian{
                dnam{"smi"}
                one{"{0} miles-scandinavian"}
                other{"{0} miles-scandinavian"}
            }
            millimeter{
                dnam{"मिलिमिटर"}
                one{"{0} मिलिमिटर"}
                other{"{0} मिलिमिटर"}
            }
            nanometer{
                dnam{"न्यानोमिटर"}
                one{"{0}न्यानोमिटर"}
                other{"{0}न्यानोमिटर"}
            }
            nautical-mile{
                dnam{"नउटिकल माइल"}
                one{"{0}नउटिकल माइल"}
                other{"{0}नउटिकल माइल"}
            }
            parsec{
                dnam{"पारसेकेण्ड"}
                one{"{0}पारसेकेण्ड"}
                other{"{0}पारसेकेण्ड"}
            }
            picometer{
                dnam{"पिकोमिटर"}
                one{"{0} पिकोमिटर"}
                other{"{0} पिकोमिटर"}
            }
            yard{
                dnam{"गज"}
                one{"{0} गज"}
                other{"{0} गज"}
            }
        }
        light{
            lux{
                dnam{"लक्स"}
                one{"{0}लक्स"}
                other{"{0}लक्स"}
            }
        }
        mass{
            carat{
                dnam{"कराट"}
                one{"{0}कराट"}
                other{"{0}कराट"}
            }
            gram{
                dnam{"ग्राम"}
                one{"{0} ग्राम"}
                other{"{0} ग्राम"}
                per{"{0}प्रति ग्राम"}
            }
            kilogram{
                dnam{"किलोग्राम"}
                one{"{0} किलोग्राम"}
                other{"{0} किलोग्राम"}
                per{"{0} प्रति किलोग्राम"}
            }
            metric-ton{
                dnam{"मेट्रिक टन"}
                one{"{0}मेट्रिक टन"}
                other{"{0}मेट्रिक टन"}
            }
            microgram{
                dnam{"माइक्रोग्राम"}
                one{"{0}माइक्रोग्राम"}
                other{"{0}माइक्रोग्राम"}
            }
            milligram{
                dnam{"मिलिग्राम"}
                one{"{0}मिलिग्राम"}
                other{"{0}मिलिग्राम"}
            }
            ounce{
                dnam{"आउन्स"}
                one{"{0} आउन्स"}
                other{"{0} आउन्स"}
                per{"{0}प्रति आउन्स"}
            }
            ounce-troy{
                dnam{"ट्रोय आउन्स"}
                one{"{0} ट्रोय आउन्स"}
                other{"{0}ट्रोय आउन्स"}
            }
            pound{
                dnam{"पाउण्ड"}
                one{"{0} पाउण्ड"}
                other{"{0} पाउण्ड"}
                per{"{0}प्रति पाउन्ड"}
            }
            ton{
                dnam{"टन"}
                one{"{0}टन"}
                other{"{0} टन"}
            }
        }
        power{
            gigawatt{
                dnam{"गिगावाट"}
                one{"{0}गिगावाट"}
                other{"{0}गिगावाट"}
            }
            horsepower{
                dnam{"हर्सपावर"}
                one{"{0} हर्सपावर"}
                other{"{0} हर्सपावर"}
            }
            kilowatt{
                dnam{"किलोवाट"}
                one{"{0} किलोवाट"}
                other{"{0} किलोवाट"}
            }
            megawatt{
                dnam{"मेगावाट"}
                one{"{0}मेगावाट"}
                other{"{0}मेगावाट"}
            }
            milliwatt{
                dnam{"मिलिवाट"}
                one{"{0}मिलिवाट"}
                other{"{0}मिलिवाट"}
            }
            watt{
                dnam{"वाट"}
                one{"{0} वाट"}
                other{"{0} वाट"}
            }
        }
        pressure{
            hectopascal{
                dnam{"हेक्टो पास्कल"}
                one{"{0} हेक्टो पास्कल"}
                other{"{0} हेक्टो पास्कल"}
            }
            inch-hg{
                dnam{"इन्च पारो"}
                one{"{0} इन्च पारो"}
                other{"{0} इन्च पारो"}
            }
            millibar{
                dnam{"मिलिबार"}
                one{"{0} मिलिबार"}
                other{"{0} मिलिबार"}
            }
            millimeter-of-mercury{
                dnam{"मिलिमिटर पारो"}
                one{"{0} मिलिमिटर पारो"}
                other{"{0} मिलिमिटर पारो"}
            }
            pound-per-square-inch{
                dnam{"पाउन्ड प्रति वर्ग इन्च"}
                one{"{0} पाउन्ड प्रति वर्ग इन्च"}
                other{"{0}पाउन्ड प्रति वर्ग इन्च"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"किलोमिटर प्रति घण्टा"}
                one{"{0} किलोमिटर प्रति घण्टा"}
                other{"{0} किलोमिटर प्रति घण्टा"}
            }
            knot{
                dnam{"नट"}
                one{"{0}नट"}
                other{"{0}नट्स"}
            }
            meter-per-second{
                dnam{"मिटर प्रति सेकेण्ड"}
                one{"{0} मिटर प्रति सेकेण्ड"}
                other{"{0} मिटर प्रति सेकेण्ड"}
            }
            mile-per-hour{
                dnam{"माइल प्रति घण्टा"}
                one{"माइल प्रति घण्टा"}
                other{"{0} माइल प्रति घण्टा"}
            }
        }
        temperature{
            celsius{
                dnam{"डिग्री सेल्सियस्"}
                one{"{0} डिग्री सेल्सियस्"}
                other{"{0} डिग्री सेल्सियस्"}
            }
            fahrenheit{
                dnam{"डिग्री फरेनहाइट"}
                one{"{0}डिग्री फरेनहाइट"}
                other{"{0}डिग्री फरेनहाइट"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"केल्भिन"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"एकर-फिट"}
                one{"{0}एकर-फिट"}
                other{"{0}एकर-फिट"}
            }
            centiliter{
                dnam{"सेन्टिलिटर"}
                one{"{0}सेन्टिलिटर"}
                other{"{0}सेन्टिलिटर"}
            }
            cubic-centimeter{
                dnam{"घन सेन्टिमिटर"}
                one{"{0}घन सेन्टिमिटर"}
                other{"{0}घन सेन्टिमिटर"}
                per{"{0}प्रति घन सेन्टिमिटर"}
            }
            cubic-foot{
                dnam{"घन फिट"}
                one{"{0}घन फिट"}
                other{"{0}घन फिट"}
            }
            cubic-inch{
                dnam{"घन इन्च"}
                one{"{0}घन इन्च"}
                other{"{0}घन इन्च"}
            }
            cubic-kilometer{
                dnam{"घन किलोमिटर"}
                one{"{0} घन किलोमिटर"}
                other{"{0} घन किलोमिटर"}
            }
            cubic-meter{
                dnam{"घन मिटर"}
                one{"{0}घन मिटर"}
                other{"{0}घन मिटर"}
                per{"{0}प्रति घन मिटर"}
            }
            cubic-mile{
                dnam{"घन माइल"}
                one{"{0} घन माइल"}
                other{"{0} घन माइल"}
            }
            cubic-yard{
                dnam{"घन यार्ड"}
                one{"{0}घन यार्ड"}
                other{"{0}घन यार्ड"}
            }
            cup{
                dnam{"कप्स"}
                one{"{0}कप"}
                other{"{0}कप्स"}
            }
            cup-metric{
                dnam{"मेट्रिक कप्स"}
                one{"{0}मेट्रिक कप"}
                other{"{0}मेट्रिक कप्स"}
            }
            deciliter{
                dnam{"डेसिलिटर"}
                one{"{0}डेसिलिटर"}
                other{"{0}डेसिलिटर"}
            }
            fluid-ounce{
                dnam{"तरल आउन्स"}
                one{"{0} तरल आउन्स"}
                other{"{0}तरल आउन्स"}
            }
            gallon{
                dnam{"गालोन"}
                one{"{0}गालोन"}
                other{"{0} गालोन"}
                per{"{0}/गालोन"}
            }
            hectoliter{
                dnam{"हेक्टोलिटर"}
                one{"{0}हेक्टोलिटर"}
                other{"{0}हेक्टोलिटर"}
            }
            liter{
                dnam{"लिटर"}
                one{"{0} लिटर"}
                other{"{0} लिटर"}
                per{"{0}प्रति लिटर"}
            }
            megaliter{
                dnam{"मेगालिटर"}
                one{"{0}मेघालिटर"}
                other{"{0}मेघालिटर"}
            }
            milliliter{
                dnam{"मिलिलिटर"}
                one{"{0}मिलिलिटर"}
                other{"{0}मिलिलिटर"}
            }
            pint{
                dnam{"पिन्ट"}
                one{"{0}पिन्ट"}
                other{"{0}पिन्ट"}
            }
            pint-metric{
                dnam{"मेट्रिक पिन्ट्स"}
                one{"{0}मेट्रिक पिन्ट"}
                other{"{0}मेट्रिक पिन्ट्स"}
            }
            quart{
                dnam{"क्वार्ट्स"}
                one{"{0}क्वार्ट"}
                other{"{0}क्वार्ट्स"}
            }
            tablespoon{
                dnam{"टेबल चम्चा"}
                one{"{0} टेबल चम्चा"}
                other{"{0} टेबल चम्चा"}
            }
            teaspoon{
                dnam{"चिया चम्चा"}
                one{"{0}चिया चम्चा"}
                other{"{0}चिया चम्चा"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0} g"}
                other{"{0} g"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} एकर"}
                other{"{0} एकर"}
            }
            hectare{
                one{"{0} हे."}
                other{"{0} हे."}
            }
            square-foot{
                one{"{0} ब.फु."}
                other{"{0} ब.फु."}
            }
            square-kilometer{
                one{"{0} ब.कि.मि."}
                other{"{0} ब.कि.मि."}
            }
            square-meter{
                one{"{0} ब.मि."}
                other{"{0} ब.मि."}
            }
            square-mile{
                one{"{0} बर्ग माईल"}
                other{"{0} बर्ग माईल"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"लि./१००कि.मि."}
                one{"{0}L/100km"}
                other{"{0}L/100km"}
            }
        }
        coordinate{
            east{"{0}पूर्व"}
            north{"{0}उत्तर"}
            south{"{0}दक्षिण"}
            west{"{0}पश्चिम"}
        }
        duration{
            day{
                dnam{"दिन"}
                one{"{0} दिन"}
                other{"{0} दिन"}
            }
            hour{
                dnam{"घन्टा"}
                one{"{0} घण्टा"}
                other{"{0} घण्टा"}
            }
            millisecond{
                dnam{"मिली सेकेण्ड"}
                one{"{0}मि.से."}
                other{"{0}मि.से."}
            }
            minute{
                dnam{"मिनेट"}
                one{"{0} मिनेट"}
                other{"{0} मिनेट"}
            }
            month{
                dnam{"महिना"}
                one{"{0} महिना"}
                other{"{0} महिना"}
            }
            second{
                dnam{"सेकेण्ड"}
                one{"{0} सेकेण्ड"}
                other{"{0} सेकेण्ड"}
            }
            week{
                dnam{"हप्ता"}
                one{"{0} हप्ता"}
                other{"{0} हप्ता"}
            }
            year{
                dnam{"वर्ष"}
                one{"{0} वर्ष"}
                other{"{0} वर्ष"}
            }
        }
        length{
            centimeter{
                dnam{"से.मि."}
                one{"{0}से.मि."}
                other{"{0}से.मि."}
            }
            foot{
                one{"{0}′"}
                other{"{0}′"}
            }
            inch{
                one{"{0}″"}
                other{"{0}″"}
            }
            kilometer{
                dnam{"कि.मि."}
                one{"{0}कि.मि."}
                other{"{0}कि.मि."}
            }
            light-year{
                one{"{0} ly"}
                other{"{0} ly"}
            }
            meter{
                dnam{"मिटर"}
                one{"{0} मि."}
                other{"{0} मि."}
            }
            mile{
                one{"{0} माईल"}
                other{"{0} माईल"}
            }
            millimeter{
                dnam{"मि.मि."}
                one{"{0}मि.मि."}
                other{"{0}मि.मि."}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} गज"}
                other{"{0} गज"}
            }
        }
        mass{
            gram{
                dnam{"ग्राम"}
                one{"{0} ग्राम"}
                other{"{0} ग्राम"}
            }
            kilogram{
                dnam{"किलो"}
                one{"{0} किलो"}
                other{"{0} किलो"}
            }
            ounce{
                one{"{0} आऊन्स"}
                other{"{0} आऊन्स"}
            }
            pound{
                one{"{0} पाउण्ड"}
                other{"{0} पाउण्ड"}
            }
        }
        power{
            horsepower{
                dnam{"हर्सपावर"}
                one{"{0} हर्सपावर"}
                other{"{0} हर्सपावर"}
            }
            kilowatt{
                dnam{"किलोवाट"}
                one{"{0} किलोवाट"}
                other{"{0} किलोवाट"}
            }
            watt{
                one{"{0} वाट"}
                other{"{0} वाट"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0} ईञ्‍च पारो"}
                other{"{0} ईञ्‍च पारो"}
            }
            millibar{
                one{"{0} मिलीबार"}
                other{"{0} मिलीबार"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"किलोमिटर प्रति घण्टा"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°से"}
                one{"{0}°"}
                other{"{0}°"}
            }
            fahrenheit{
                one{"{0}°फ"}
                other{"{0}°फ"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} घन माईल"}
                other{"{0} घन माईल"}
            }
            liter{
                dnam{"लिटर"}
                one{"{0} लि."}
                other{"{0} लि."}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"गुरूत्वाकर्षण शक्ति"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"आर्क मिनेट"}
                one{"{0}आर्क मिनेट"}
                other{"{0}आर्क मिनेट"}
            }
            arc-second{
                dnam{"आर्क सेकेण्ड"}
                one{"{0}आर्क सेकेण्ड"}
                other{"{0}आर्क सेकेण्ड"}
            }
            degree{
                dnam{"डिग्री"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"रेडियन"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"परिक्रमा"}
                one{"{0}परिक्रमा"}
                other{"{0}परिक्रमा"}
            }
        }
        area{
            acre{
                dnam{"बर्ग गज"}
                one{"{0} बर्ग गज"}
                other{"{0} बर्ग गज"}
            }
            hectare{
                dnam{"हेक्टर"}
                one{"{0} हे."}
                other{"{0} हे."}
            }
            square-centimeter{
                dnam{"वर्ग सेन्टिमिटर"}
                one{"{0} cm²"}
                other{"{0} cm²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"बर्ग फुट"}
                one{"{0} ब.फु."}
                other{"{0} ब.फु."}
            }
            square-inch{
                dnam{"वर्ग इन्च"}
                one{"{0} in²"}
                other{"{0} in²"}
                per{"{0}/in²"}
            }
            square-kilometer{
                dnam{"बर्ग किलोमिटर"}
                one{"{0} ब.कि.मि."}
                other{"{0} ब.कि.मि."}
            }
            square-meter{
                dnam{"बर्ग मिटर"}
                one{"{0} ब.मि."}
                other{"{0} ब.मि."}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"बर्ग माईल"}
                one{"{0} बर्ग माईल"}
                other{"{0} बर्ग माईल"}
            }
            square-yard{
                dnam{"वर्ग यार्ड"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"कराट"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"लि./१००कि.मि."}
                one{"{0}लि./१००कि.मि."}
                other{"{0}लि./१००कि.मि."}
            }
            liter-per-kilometer{
                dnam{"लिटर/किलोमिटर"}
                one{"{0} L/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"माइल/गाल"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        coordinate{
            east{"{0}पूर्व"}
            north{"{0}उत्तर"}
            south{"{0}दक्षिण"}
            west{"{0}पश्चिम"}
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"बाइट"}
                one{"{0} byte"}
                other{"{0} byte"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            century{
                dnam{"शताब्दी"}
                one{"{0}शताब्दी"}
                other{"{0}शताब्दी"}
            }
            day{
                dnam{"दिन"}
                one{"{0} दिन"}
                other{"{0} दिन"}
                per{"{0}/दिन"}
            }
            hour{
                dnam{"घन्टा"}
                one{"{0} घण्टा"}
                other{"{0} घण्टा"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"मिली सेकेण्ड"}
                one{"{0} मिली से."}
                other{"{0} मिली से."}
            }
            minute{
                dnam{"मिनेट"}
                one{"{0} मिनेट"}
                other{"{0} मिनेट"}
                per{"{0}/मिनेट"}
            }
            month{
                dnam{"महिना"}
                one{"{0} महिना"}
                other{"{0} महिना"}
                per{"{0}/महिना"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"सेकेण्ड"}
                one{"{0} सेकेण्ड"}
                other{"{0} सेकेण्ड"}
                per{"{0}/s"}
            }
            week{
                dnam{"हप्ता"}
                one{"{0} हप्ता"}
                other{"{0} हप्ता"}
                per{"{0}/हप्ता"}
            }
            year{
                dnam{"वर्ष"}
                one{"{0} वर्ष"}
                other{"{0} वर्ष"}
                per{"{0}/वर्ष"}
            }
        }
        electric{
            ampere{
                dnam{"amp"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ohm"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"भोल्ट"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                dnam{"क्याल"}
                one{"{0}क्याल"}
                other{"{0} क्याल"}
            }
            joule{
                dnam{"जुल"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"किलोजुल"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"किलोवाट-घण्टा"}
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"au"}
                one{"{0} au"}
                other{"{0} au"}
            }
            centimeter{
                dnam{"से.मि."}
                one{"{0}से.मि."}
                other{"{0}से.मि."}
                per{"{0}/से.मि."}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"फिट"}
                one{"{0}फिट"}
                other{"{0}फिट"}
                per{"{0}/फिट"}
            }
            inch{
                dnam{"इन्च"}
                one{"इन्च"}
                other{"{0}इन्च"}
                per{"{0}/इन्च"}
            }
            kilometer{
                dnam{"कि.मि."}
                one{"{0}कि.मि."}
                other{"{0}कि.मि."}
                per{"{0}/कि.मि."}
            }
            light-year{
                dnam{"प्रकाश वर्ष"}
                one{"{0} ly"}
                other{"{0} ly"}
            }
            meter{
                dnam{"मिटर"}
                one{"{0} मि."}
                other{"{0} मि."}
                per{"{0}/मिटर"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"माइल"}
                one{"{0} माइल"}
                other{"{0} माइल"}
            }
            mile-scandinavian{
                dnam{"smi"}
                one{"{0} smi"}
                other{"{0} smi"}
            }
            millimeter{
                dnam{"मि.मि."}
                one{"मि.मि."}
                other{"{0}मि.मि."}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"पारसेकेण्ड"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"पिकोमिटर"}
                one{"{0}पिकोमिटर"}
                other{"{0}पिकोमिटर"}
            }
            yard{
                dnam{"गज"}
                one{"{0} गज"}
                other{"{0} गज"}
            }
        }
        light{
            lux{
                dnam{"लक्स"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"कराट"}
                one{"{0} CD"}
                other{"{0} CD"}
            }
            gram{
                dnam{"ग्राम"}
                one{"{0} ग्राम"}
                other{"{0} ग्राम"}
                per{"{0}/g"}
            }
            kilogram{
                dnam{"किलोग्राम"}
                one{"{0} किलो"}
                other{"{0} किलो"}
                per{"{0}/kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"मिलिग्राम"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"आउन्स"}
                one{"{0} आउन्स"}
                other{"{0} आउन्स"}
                per{"{0}/oz"}
            }
            ounce-troy{
                dnam{"ओज ट्रोय"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"पाउन्ड"}
                one{"{0}lb"}
                other{"{0}lbs"}
                per{"{0}/lb"}
            }
            ton{
                dnam{"टन"}
                one{"{0} tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"हर्सपावर"}
                one{"{0} हर्सपावर"}
                other{"{0} हर्सपावर"}
            }
            kilowatt{
                dnam{"किलोवाट"}
                one{"{0} किलोवाट"}
                other{"{0} किलोवाट"}
            }
            megawatt{
                dnam{"मेगावाट"}
                one{"{0} MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"मिलिवाट"}
                one{"{0} mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"वाट"}
                one{"{0} वाट"}
                other{"{0} वाट"}
            }
        }
        pressure{
            hectopascal{
                dnam{"हेक्टो पास्कल"}
                one{"{0}hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"इन्च पारो"}
                one{"{0} इन्च पारो"}
                other{"{0} इन्च पारो"}
            }
            millibar{
                dnam{"मिलिबार"}
                one{"{0} मिलिबार"}
                other{"{0} मिलिबार"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"किलोमिटर प्रति घण्टा"}
                one{"{0} kph"}
                other{"{0} kph"}
            }
            knot{
                dnam{"kn"}
                one{"{0} kn"}
                other{"{0} kn"}
            }
            meter-per-second{
                dnam{"मिटर प्रति सेकेण्ड"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"माइल प्रति घण्टा"}
                one{"{0} mph"}
                other{"{0} mph"}
            }
        }
        temperature{
            celsius{
                dnam{"डिग्री सेल्सियस्"}
                one{"{0}°से"}
                other{"{0}°से"}
            }
            fahrenheit{
                dnam{"डिग्री फरेनहाइट"}
                one{"{0}°फ"}
                other{"{0}°फ"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"एकर फिट"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            centiliter{
                dnam{"cL"}
                one{"{0} cL"}
                other{"{0} cL"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
                per{"{0}/cm³"}
            }
            cubic-foot{
                dnam{"घन फिट"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"घन इन्च"}
                one{"{0} in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"घन किलोमिटर"}
                one{"{0}km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"घन मिटर"}
                one{"{0} m³"}
                other{"{0} m³"}
                per{"{0}/m³"}
            }
            cubic-mile{
                dnam{"घन माइल"}
                one{"{0} घन माइल"}
                other{"{0} घन माइल"}
            }
            cubic-yard{
                dnam{"घन यार्ड"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"कप्स"}
                one{"{0} c"}
                other{"{0} c"}
            }
            cup-metric{
                dnam{"mcup"}
                one{"{0}mc"}
                other{"{0} mc"}
            }
            deciliter{
                dnam{"dL"}
                one{"{0} dL"}
                other{"{0} dL"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"गाल"}
                one{"{0} gal"}
                other{"{0} gal"}
                per{"{0}/gal"}
            }
            hectoliter{
                dnam{"hL"}
                one{"{0} hL"}
                other{"{0} hL"}
            }
            liter{
                dnam{"लिटर"}
                one{"{0} लि."}
                other{"{0} लि."}
                per{"{0}/l"}
            }
            megaliter{
                dnam{"ML"}
                one{"{0} ML"}
                other{"{0} ML"}
            }
            milliliter{
                dnam{"mL"}
                one{"{0} mL"}
                other{"{0} mL"}
            }
            pint{
                dnam{"पिन्ट"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            pint-metric{
                dnam{"mpt"}
                one{"{0} mpt"}
                other{"{0} mpt"}
            }
            quart{
                dnam{"क्वार्ट्स"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"tbsp"}
                one{"{0} tbsp"}
                other{"{0} tbsp"}
            }
            teaspoon{
                dnam{"tsp"}
                one{"{0} tsp"}
                other{"{0} tsp"}
            }
        }
    }
}
