﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/te.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/te.xml
 */
te{
    Version{"2.1.8.9"}
    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} రేడియన్లు"}
            }
        }
        area{
            acre{
                dnam{"ఎకరాలు"}
                one{"{0} ఎకరం"}
                other{"{0} ఎకరాలు"}
            }
            hectare{
                dnam{"హెక్టార్లు"}
                one{"{0} హెక్టారు"}
                other{"{0} హెక్టార్లు"}
            }
            square-centimeter{
                dnam{"చదరపు సెంటీమీటర్లు"}
                one{"{0} చదరపు సెంటీమీటరు"}
                other{"{0} చదరపు సెంటీమీటర్లు"}
            }
            square-foot{
                dnam{"చదరపు అడుగులు"}
                one{"{0} చదరపు అడుగు"}
                other{"{0} చదరపు అడుగులు"}
            }
            square-inch{
                dnam{"చదరపు అంగుళాలు"}
                one{"{0} చదరపు అంగుళం"}
                other{"{0} చదరపు అంగుళాలు"}
            }
            square-kilometer{
                dnam{"చదరపు కిలోమీటర్లు"}
                one{"{0} చదరపు కిలోమీటరు"}
                other{"{0} చదరపు కిలోమీటర్లు"}
            }
            square-meter{
                dnam{"చదరపు మీటర్లు"}
                one{"{0} చదరపు మీటరు"}
                other{"{0} చదరపు మీటర్లు"}
            }
            square-mile{
                dnam{"చదరపు మైళ్లు"}
                one{"{0} చదరపు మైలు"}
                other{"{0} చదరపు మైళ్లు"}
            }
            square-yard{
                dnam{"చదరపు గజాలు"}
                one{"{0} చదరపు గజం"}
                other{"{0} చదరపు గజాలు"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"లీటర్లు/కిలోమీటరు"}
                one{"{0} లీటరు/కిలోమీటరు"}
                other{"{0} లీటర్లు/కిలోమీటరు"}
            }
            mile-per-gallon{
                dnam{"మైళ్లు/గ్యాలన్"}
                one{"{0} మైలు/గ్యాలన్"}
                other{"{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{
            day{
                dnam{"రోజులు"}
                one{"{0} రోజు"}
                other{"{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} నిమిషాలు"}
            }
            month{
                dnam{"నెలలు"}
                one{"{0} నెల"}
                other{"{0} నెలలు"}
            }
            nanosecond{
                dnam{"నానోసెకన్లు"}
                one{"{0} నానోసెకను"}
                other{"{0} నానోసెకన్లు"}
            }
            second{
                dnam{"సెకన్లు"}
                one{"{0} సెకను"}
                other{"{0} సెకన్లు"}
                per{"{0}/సెకను"}
            }
            week{
                dnam{"వారాలు"}
                one{"{0} వారం"}
                other{"{0} వారాలు"}
            }
            year{
                dnam{"సంవత్సరాలు"}
                one{"{0} సంవత్సరం"}
                other{"{0} సంవత్సరాలు"}
            }
        }
        electric{
            ampere{
                dnam{"ఆంపియర్స్"}
                one{"{0} ఆంపియర్"}
                other{"{0} ఆంపియర్స్"}
            }
            milliampere{
                dnam{"మిల్లీ ఆంపియర్స్"}
                one{"{0} మిల్లీ ఆంపియర్"}
                other{"{0} మిల్లీ ఆంపియర్స్"}
            }
            ohm{
                dnam{"ఓమ్స్"}
                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} సెంటీమీటర్లు"}
            }
            decimeter{
                dnam{"డెసిమీటర్లు"}
                one{"{0} డెసిమీటరు"}
                other{"{0} డెసిమీటర్లు"}
            }
            foot{
                dnam{"అడుగులు"}
                one{"{0} అడుగు"}
                other{"{0} అడుగులు"}
            }
            inch{
                dnam{"అంగుళాలు"}
                one{"{0} అంగుళం"}
                other{"{0} అంగుళాలు"}
            }
            kilometer{
                dnam{"కిలోమీటర్లు"}
                one{"{0} కిలోమీటరు"}
                other{"{0} కిలోమీటర్లు"}
            }
            light-year{
                dnam{"కాంతి సంవత్సరాలు"}
                one{"{0} కాంతి సంవత్సరం"}
                other{"{0} కాంతి సంవత్సరాలు"}
            }
            meter{
                dnam{"మీటర్లు"}
                one{"{0} మీటరు"}
                other{"{0} మీటర్లు"}
            }
            micrometer{
                dnam{"మైక్రోమీటర్లు"}
                one{"{0} మైక్రోమీటరు"}
                other{"{0} మైక్రోమీటర్లు"}
            }
            mile{
                dnam{"మైళ్లు"}
                one{"{0} మైలు"}
                other{"{0} మైళ్లు"}
            }
            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} గ్రాములు"}
            }
            kilogram{
                dnam{"కిలోగ్రాములు"}
                one{"{0} కిలోగ్రాము"}
                other{"{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} ఔన్సులు"}
            }
            ounce-troy{
                dnam{"ట్రాయ్ ఔన్సులు"}
                one{"{0} ట్రాయ్ ఔన్సు"}
                other{"{0} ట్రాయ్ ఔన్సులు"}
            }
            pound{
                dnam{"పౌండ్లు"}
                one{"{0} పౌండు"}
                other{"{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} పౌండ్లు/చదరపు అంగుళం"}
            }
        }
        proportion{
            karat{
                dnam{"కేరట్లు"}
                one{"{0} కేరట్"}
                other{"{0} కేరట్లు"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"కిలోమీటర్లు/గంట"}
                one{"{0} కిలోమీటరు/గంట"}
                other{"{0} కిలోమీటర్లు/గంట"}
            }
            meter-per-second{
                dnam{"మీటర్లు/సెకను"}
                one{"{0} మీటరు/సెకను"}
                other{"{0} మీటర్లు/సెకను"}
            }
            mile-per-hour{
                dnam{"మైళ్లు/గంట"}
                one{"{0} మైలు/గంట"}
                other{"{0} మైళ్లు/గంట"}
            }
        }
        temperature{
            celsius{
                dnam{"డిగ్రీల సెల్సియస్"}
                one{"{0} డిగ్రీ సెల్సియస్"}
                other{"{0} డిగ్రీల సెల్సియస్"}
            }
            fahrenheit{
                dnam{"డిగ్రీల ఫారన్హీట్"}
                one{"{0} డిగ్రీ ఫారన్హీట్"}
                other{"{0} డిగ్రీల ఫారన్హీట్"}
            }
            kelvin{
                dnam{"కెల్విన్స్"}
                one{"{0} కెల్విన్"}
                other{"{0} కెల్విన్స్"}
            }
        }
        volume{
            acre-foot{
                dnam{"ఎకరా-అడుగులు"}
                one{"{0} ఎకరా-అడుగు"}
                other{"{0} ఎకరా-అడుగులు"}
            }
            centiliter{
                dnam{"సెంటీలీటర్లు"}
                one{"{0} సెంటీలీటరు"}
                other{"{0} సెంటీలీటర్లు"}
            }
            cubic-centimeter{
                dnam{"క్యూబిక్ సెంటీమీటర్లు"}
                one{"{0} క్యూబిక్ సెంటీమీటరు"}
                other{"{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} క్యూబిక్ మీటర్లు"}
            }
            cubic-mile{
                dnam{"క్యూబిక్ మైళ్లు"}
                one{"{0} క్యూబిక్ మైలు"}
                other{"{0} క్యూబిక్ మైళ్లు"}
            }
            cubic-yard{
                dnam{"క్యూబిక్ గజాలు"}
                one{"{0} క్యూబిక్ గజం"}
                other{"{0} క్యూబిక్ గజాలు"}
            }
            cup{
                dnam{"కప్పులు"}
                one{"{0} కప్పు"}
                other{"{0} కప్పులు"}
            }
            deciliter{
                dnam{"డెసిలీటర్లు"}
                one{"{0} డెసిలీటరు"}
                other{"{0} డెసిలీటర్లు"}
            }
            fluid-ounce{
                dnam{"ద్రవరూప ఔన్సులు"}
                one{"{0} ద్రవరూప ఔన్సు"}
                other{"{0} ద్రవరూప ఔన్సులు"}
            }
            gallon{
                dnam{"గ్యాలన్లు"}
                one{"{0} గ్యాలన్"}
                other{"{0} గ్యాలన్లు"}
            }
            hectoliter{
                dnam{"హెక్టాలీటర్లు"}
                one{"{0} హెక్టాలీటరు"}
                other{"{0} హెక్టాలీటర్లు"}
            }
            liter{
                dnam{"లీటర్లు"}
                one{"{0} లీటరు"}
                other{"{0} లీటర్లు"}
            }
            megaliter{
                dnam{"మెగాలీటర్లు"}
                one{"{0} మెగాలీటరు"}
                other{"{0} మెగాలీటర్లు"}
            }
            milliliter{
                dnam{"మిల్లీలీటర్లు"}
                one{"{0} మిల్లీలీటరు"}
                other{"{0} మిల్లీలీటర్లు"}
            }
            pint{
                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} గు"}
                other{"{0} గు"}
            }
        }
        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}"}
        }
        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} కాం. సం"}
                other{"{0} కాం. సం"}
            }
            meter{
                dnam{"మీటరు"}
                one{"{0}మీ"}
                other{"{0}మీ"}
            }
            mile{
                one{"{0} మై"}
                other{"{0} మై"}
            }
            millimeter{
                dnam{"మి.మీ"}
                one{"{0}మి.మీ"}
                other{"{0}మి.మీ"}
            }
            picometer{
                one{"{0} పి.మీ"}
                other{"{0} పి.మీ"}
            }
            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{
                one{"{0} హా.ప"}
                other{"{0} హా.ప"}
            }
            kilowatt{
                one{"{0} కి.వా"}
                other{"{0} కి.వా"}
            }
            watt{
                one{"{0} వా."}
                other{"{0} వా."}
            }
        }
        pressure{
            hectopascal{
                one{"{0} హె.పా"}
                other{"{0} హె.పా"}
            }
            inch-hg{
                one{"{0} అం.పాద"}
                other{"{0} అం.పాద"}
            }
            millibar{
                one{"{0} మి.బార్"}
                other{"{0} మి.బార్"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"కి.మీ/గం"}
                one{"{0}కి.మీ/గం"}
                other{"{0}కి.మీ/గం"}
            }
            meter-per-second{
                one{"{0} మీ/సె"}
                other{"{0} మీ/సె"}
            }
            mile-per-hour{
                one{"{0} మై/గం."}
                other{"{0} మై/గం."}
            }
        }
        temperature{
            celsius{
                dnam{"°సెల్సి"}
                one{"{0}°సెల్సి"}
                other{"{0}°సెల్సి"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} కిమీ³"}
                other{"{0} కిమీ³"}
            }
            cubic-mile{
                one{"{0} మై³"}
                other{"{0} మై³"}
            }
            liter{
                dnam{"లీటరు"}
                one{"{0}లీ"}
                other{"{0}లీ"}
            }
        }
    }
    unitsShort{
        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} రే."}
            }
        }
        area{
            acre{
                dnam{"ఎకరాలు"}
                one{"{0} ఎక."}
                other{"{0} ఎక."}
            }
            hectare{
                dnam{"హెక్టార్లు"}
                one{"{0} హె."}
                other{"{0} హె."}
            }
            square-centimeter{
                dnam{"సెం.మీ²"}
                one{"{0} సెం.మీ²"}
                other{"{0} సెం.మీ²"}
            }
            square-foot{
                dnam{"చద. అడుగులు"}
                one{"{0} చద. అ."}
                other{"{0} చద. అ."}
            }
            square-inch{
                dnam{"అంగుళాలు²"}
                one{"{0} అం²"}
                other{"{0} అం²"}
            }
            square-kilometer{
                dnam{"కి.మీ²"}
                one{"{0} కి.మీ²"}
                other{"{0} కి.మీ²"}
            }
            square-meter{
                dnam{"మీటర్లు²"}
                one{"{0} మీ²"}
                other{"{0} మీ²"}
            }
            square-mile{
                dnam{"చద. మైళ్లు"}
                one{"{0} చద. మై."}
                other{"{0} చద. మై."}
            }
            square-yard{
                dnam{"గజాలు²"}
                one{"{0} గ²"}
                other{"{0} గ²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"లీటర్లు/కి.మీ"}
                one{"{0} లీ./కి.మీ"}
                other{"{0} లీ./కి.మీ"}
            }
            mile-per-gallon{
                dnam{"మైళ్లు/గ్యా."}
                one{"{0} మై./గ్యా."}
                other{"{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{
            day{
                dnam{"రోజులు"}
                one{"{0} రోజు"}
                other{"{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} నిమి."}
            }
            month{
                dnam{"నెలలు"}
                one{"{0} నె."}
                other{"{0} నె."}
            }
            nanosecond{
                dnam{"నా.సె."}
                one{"{0} నా.సె"}
                other{"{0} నా.సె"}
            }
            second{
                dnam{"సె."}
                one{"{0} సె."}
                other{"{0} సెక."}
                per{"{0}/సె"}
            }
            week{
                dnam{"వారాలు"}
                one{"{0} వా."}
                other{"{0} వా."}
            }
            year{
                dnam{"సంవత్సరాలు"}
                one{"{0} సం."}
                other{"{0} సం."}
            }
        }
        electric{
            ampere{
                dnam{"ఆంప్స్"}
                one{"{0} ఆం"}
                other{"{0} ఆం"}
            }
            milliampere{
                dnam{"మిల్లీ ఆంప్స్"}
                one{"{0} మి. ఆం"}
                other{"{0} మి. ఆం"}
            }
            ohm{
                dnam{"ఓమ్స్"}
                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{"au"}
                one{"au"}
                other{"{0} au"}
            }
            centimeter{
                dnam{"సెం.మీ."}
                one{"{0} సెం.మీ."}
                other{"{0} సెం.మీ."}
            }
            decimeter{
                dnam{"డె.మీ."}
                one{"{0} డె.మీ."}
                other{"{0} డె.మీ."}
            }
            foot{
                dnam{"అడుగులు"}
                one{"{0} అ."}
                other{"{0} అ."}
            }
            inch{
                dnam{"అంగుళాలు"}
                one{"{0} అం."}
                other{"{0} అం."}
            }
            kilometer{
                dnam{"కి.మీ."}
                one{"{0} కి.మీ."}
                other{"{0} కి.మీ."}
            }
            light-year{
                dnam{"కాంతి సం."}
                one{"{0} కాం. సం"}
                other{"{0} కాం. సం"}
            }
            meter{
                dnam{"మీటర్లు"}
                one{"{0} మీ."}
                other{"{0} మీ."}
            }
            micrometer{
                dnam{"మై.మీటర్లు"}
                one{"{0} మై.మీ."}
                other{"{0} మై.మీ."}
            }
            mile{
                dnam{"మైళ్లు"}
                one{"{0} మై."}
                other{"{0} మై."}
            }
            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} గ్రా."}
            }
            kilogram{
                dnam{"కి.గ్రా."}
                one{"{0} కి.గ్రా."}
                other{"{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} ఔ."}
            }
            ounce-troy{
                dnam{"ట్రా.ఔ."}
                one{"{0} ట్రా.ఔ."}
                other{"{0} ట్రా.ఔ."}
            }
            pound{
                dnam{"పౌండ్లు"}
                one{"{0} పౌ."}
                other{"{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} పౌ/చ.అం"}
            }
        }
        proportion{
            karat{
                dnam{"కేరట్లు"}
                one{"{0} కేర."}
                other{"{0} కేర."}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"కి.మీ/గంట"}
                one{"{0} కి.మీ/గం"}
                other{"{0} కి.మీ/గం"}
            }
            meter-per-second{
                dnam{"మీటర్లు/సెక."}
                one{"{0} మీ/సె"}
                other{"{0} మీ/సె"}
            }
            mile-per-hour{
                dnam{"మైళ్లు/గంట"}
                one{"{0} మై/గం"}
                other{"{0} మై/గం"}
            }
        }
        temperature{
            celsius{
                dnam{"డి.సెల్సి"}
                one{"{0}°సెల్సి"}
                other{"{0}°సెల్సి"}
            }
            fahrenheit{
                dnam{"డి.ఫా"}
                one{"{0}°ఫా"}
                other{"{0}°ఫా"}
            }
            kelvin{
                dnam{"కె"}
                one{"{0} కె"}
                other{"{0} కె"}
            }
        }
        volume{
            acre-foot{
                dnam{"ఎ.అ."}
                one{"{0} ఎ.అ."}
                other{"{0} ఎ.అ."}
            }
            centiliter{
                dnam{"సె.లీ."}
                one{"{0} సె.లీ."}
                other{"{0} సె.లీ."}
            }
            cubic-centimeter{
                dnam{"సెం.మీ³"}
                one{"{0} సెం.మీ³"}
                other{"{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} మీ³"}
            }
            cubic-mile{
                dnam{"మై³"}
                one{"{0} మై³"}
                other{"{0} మై³"}
            }
            cubic-yard{
                dnam{"గజాలు³"}
                one{"{0} గ³"}
                other{"{0} గ³"}
            }
            cup{
                dnam{"కప్పులు"}
                one{"{0} క."}
                other{"{0} క."}
            }
            deciliter{
                dnam{"డె.లీ."}
                one{"{0} డె.లీ."}
                other{"{0} డె.లీ."}
            }
            fluid-ounce{
                dnam{"ద్ర.ఔ."}
                one{"{0} ద్ర.ఔ."}
                other{"{0} ద్ర.ఔ."}
            }
            gallon{
                dnam{"గ్యా."}
                one{"{0} గ్యా."}
                other{"{0} గ్యా."}
            }
            hectoliter{
                dnam{"హె.లీ."}
                one{"{0} హె.లీ."}
                other{"{0} హె.లీ."}
            }
            liter{
                dnam{"లీటర్లు"}
                one{"{0} లీ."}
                other{"{0} లీ."}
            }
            megaliter{
                dnam{"మె.లీ."}
                one{"{0} మె.లీ."}
                other{"{0} మె.లీ."}
            }
            milliliter{
                dnam{"మి.లీ."}
                one{"{0} మి.లీ."}
                other{"{0} మి.లీ."}
            }
            pint{
                dnam{"పింట్లు"}
                one{"{0} పిం."}
                other{"{0} పిం."}
            }
            quart{
                dnam{"పావు వం."}
                one{"{0} పావు వం."}
                other{"{0} పావు వం."}
            }
            tablespoon{
                dnam{"టే.స్పూ."}
                one{"{0} టే.స్పూ"}
                other{"{0} టే.స్పూ"}
            }
            teaspoon{
                dnam{"టీ.స్పూ."}
                one{"{0} టీ.స్పూ."}
                other{"{0} టీ.స్పూ."}
            }
        }
    }
}
