﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/uz.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/uz.xml
 */
uz{
    Version{"2.1.8.9"}
    units{
        acceleration{
            g-force{
                dnam{"Erkin tushish tezlanishi"}
                one{"{0} g"}
                other{"{0} g"}
            }
            meter-per-second-squared{
                dnam{"metr taqsim soniyaning kvadrati"}
                one{"{0} metr taqsim soniyaning kvadrati"}
                other{"{0} metr taqsim soniyaning kvadrati"}
            }
        }
        angle{
            arc-minute{
                dnam{"daqiqa"}
                one{"{0} daqiqa"}
                other{"{0} arkdaqiqa"}
            }
            arc-second{
                dnam{"soniya"}
                one{"{0} soniya"}
                other{"{0} soniya"}
            }
            degree{
                dnam{"daraja"}
                one{"{0}° daraja"}
                other{"{0}° daraja"}
            }
            radian{
                dnam{"radian"}
                one{"{0} radian"}
                other{"{0} radian"}
            }
        }
        area{
            acre{
                dnam{"akr"}
                one{"{0} akr"}
                other{"{0} akr"}
            }
            hectare{
                dnam{"gektar"}
                one{"{0} gektar"}
                other{"{0} gektar"}
            }
            square-centimeter{
                dnam{"kvadrat santimetr"}
                one{"{0} kvadrat santimetr"}
                other{"{0} kvadrat santimetr"}
            }
            square-foot{
                dnam{"kvadrat fut"}
                one{"{0} kvadrat fut"}
                other{"{0} kvadrat fut"}
            }
            square-inch{
                dnam{"kvadrat dyum"}
                one{"{0} kvadrat dyum"}
                other{"{0} kvadrat dyum"}
            }
            square-kilometer{
                dnam{"kvadrat kilometr"}
                one{"{0} kvadrat kilometr"}
                other{"{0} kvadrat kilometr"}
            }
            square-meter{
                dnam{"kvadrat metr"}
                one{"{0} kvadrat metr"}
                other{"{0} kvadrat metr"}
            }
            square-mile{
                dnam{"kvadrat mil"}
                one{"{0} kvadrat mil"}
                other{"{0} kvadrat mil"}
            }
            square-yard{
                dnam{"kvadrat yard"}
                one{"{0} kvadrat yard"}
                other{"{0} kvadrat yard"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"kilometriga litr"}
                one{"kilometriga {0} litr"}
                other{"kilometriga {0} litr"}
            }
            mile-per-gallon{
                dnam{"galloniga mil"}
                one{"galloniga {0} mil"}
                other{"galloniga {0} mil"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"bayt"}
                one{"{0} bayt"}
                other{"{0} bayt"}
            }
            gigabit{
                dnam{"gigabit"}
                one{"{0} gigabit"}
                other{"{0} gigabit"}
            }
            gigabyte{
                dnam{"gigabayt"}
                one{"{0} gigabayt"}
                other{"{0} gigabayt"}
            }
            kilobit{
                dnam{"kilobit"}
                one{"{0} kilobit"}
                other{"{0} kilobit"}
            }
            kilobyte{
                dnam{"kilobayt"}
                one{"{0} kilobayt"}
                other{"{0} kilobayt"}
            }
            megabit{
                dnam{"megabit"}
                one{"{0} megabit"}
                other{"{0} megabit"}
            }
            megabyte{
                dnam{"megabayt"}
                one{"{0} megabayt"}
                other{"{0} megabayt"}
            }
            terabit{
                dnam{"terabit"}
                one{"{0} terabit"}
                other{"{0} terabit"}
            }
            terabyte{
                dnam{"terabayt"}
                one{"{0} terabayt"}
                other{"{0} terabayt"}
            }
        }
        duration{
            day{
                dnam{"kun"}
                one{"{0} kun"}
                other{"{0} kun"}
            }
            hour{
                dnam{"soat"}
                one{"{0} soat"}
                other{"{0} soat"}
                per{"soatiga {0}"}
            }
            microsecond{
                dnam{"mikrosoniya"}
                one{"{0} mikrosoniya"}
                other{"{0} mikrosoniya"}
            }
            millisecond{
                dnam{"millisoniya"}
                one{"{0} millisoniya"}
                other{"{0} millisoniya"}
            }
            minute{
                dnam{"daqiqa"}
                one{"{0} daqiqa"}
                other{"{0} daqiqa"}
            }
            month{
                dnam{"oy"}
                one{"{0} oy"}
                other{"{0} oy"}
            }
            nanosecond{
                dnam{"nanosoniya"}
                one{"{0} nanosoniya"}
                other{"{0} nanosoniya"}
            }
            second{
                dnam{"soniya"}
                one{"{0} soniya"}
                other{"{0} soniya"}
                per{"{0}/s"}
            }
            week{
                dnam{"hafta"}
                one{"{0} hafta"}
                other{"{0} hafta"}
            }
            year{
                dnam{"yil"}
                one{"{0} yil"}
                other{"{0} yil"}
            }
        }
        electric{
            ampere{
                dnam{"amper"}
                one{"{0} amper"}
                other{"{0} amper"}
            }
            milliampere{
                dnam{"milliamper"}
                one{"{0} milliamper"}
                other{"{0} milliamper"}
            }
            ohm{
                dnam{"om"}
                one{"{0} om"}
                other{"{0} om"}
            }
            volt{
                dnam{"volt"}
                one{"{0} volt"}
                other{"{0} volt"}
            }
        }
        energy{
            calorie{
                dnam{"kaloriya"}
                one{"kaloriya"}
                other{"{0} kaloriya"}
            }
            foodcalorie{
                dnam{"Kaloriya"}
                one{"{0} kaloriya"}
                other{"{0} kaloriya"}
            }
            joule{
                dnam{"joul"}
                one{"{0} joul"}
                other{"{0} joul"}
            }
            kilocalorie{
                dnam{"kilokaloriya"}
                one{"{0} kilokaloriya"}
                other{"{0} kilokaloriya"}
            }
            kilojoule{
                dnam{"kilojoul"}
                one{"{0} kilojoul"}
                other{"{0} kilojoul"}
            }
            kilowatt-hour{
                dnam{"kilovatt-soat"}
                one{"{0} kilovatt-soat"}
                other{"{0} kilovatt-soat"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigagerts"}
                one{"{0} gigagerts"}
                other{"{0} gigagerts"}
            }
            hertz{
                dnam{"gerts"}
                one{"{0} gerts"}
                other{"{0} gerts"}
            }
            kilohertz{
                dnam{"kilogerts"}
                one{"{0} kilogerts"}
                other{"{0} kilogerts"}
            }
            megahertz{
                dnam{"megagerts"}
                one{"{0} megagerts"}
                other{"{0} megagerts"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomik birlik"}
                one{"{0} astronomik birlik"}
                other{"{0} astronomik birlik"}
            }
            centimeter{
                dnam{"santimetr"}
                one{"{0} santimetr"}
                other{"{0} santimetr"}
            }
            decimeter{
                dnam{"detsimetr"}
                one{"{0} detsimetr"}
                other{"{0} detsimetr"}
            }
            foot{
                dnam{"fut"}
                one{"{0} fut"}
                other{"{0} fut"}
            }
            inch{
                dnam{"dyum"}
                one{"{0} dyum"}
                other{"{0} dyum"}
            }
            kilometer{
                dnam{"kilometr"}
                one{"{0} kilometr"}
                other{"{0} kilometr"}
            }
            light-year{
                dnam{"yorug‘lik yili"}
                one{"{0} yorug‘lik yili"}
                other{"{0} yorug‘lik yili"}
            }
            meter{
                dnam{"metr"}
                one{"{0} metr"}
                other{"{0} metr"}
            }
            micrometer{
                dnam{"mikrometr"}
                one{"{0} mikrometr"}
                other{"{0} mikrometr"}
            }
            mile{
                dnam{"mil"}
                one{"{0} mil"}
                other{"{0} mil"}
            }
            millimeter{
                dnam{"millimetr"}
                one{"{0} millimetr"}
                other{"{0} millimetr"}
            }
            nanometer{
                dnam{"nanometr"}
                one{"{0} nanometr"}
                other{"{0} nanometr"}
            }
            nautical-mile{
                dnam{"dengiz mili"}
                one{"{0} dengiz mili"}
                other{"{0} dengiz mili"}
            }
            parsec{
                dnam{"parsek"}
                one{"{0} parsek"}
                other{"{0} parsek"}
            }
            picometer{
                dnam{"pikometr"}
                one{"{0} pikometr"}
                other{"{0} pikometr"}
            }
            yard{
                dnam{"yard"}
                one{"{0} yard"}
                other{"{0} yard"}
            }
        }
        light{
            lux{
                dnam{"lyuks"}
                one{"{0} lyuks"}
                other{"{0} lyuks"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
            gram{
                dnam{"gramm"}
                one{"{0} gramm"}
                other{"{0} gramm"}
            }
            kilogram{
                dnam{"kilogramm"}
                one{"{0} kilogramm"}
                other{"{0} kilogramm"}
            }
            metric-ton{
                dnam{"tonna"}
                one{"{0} tonna"}
                other{"{0} tonna"}
            }
            microgram{
                dnam{"mikrogramm"}
                one{"{0} mikrogramm"}
                other{"{0} mikrogramm"}
            }
            milligram{
                dnam{"milligramm"}
                one{"{0} milligramm"}
                other{"{0} milligramm"}
            }
            ounce{
                dnam{"untsiya"}
                one{"{0} untsiya"}
                other{"{0} untsiya"}
            }
            ounce-troy{
                dnam{"troya unsiyasi"}
                one{"{0} troya unsiyasi"}
                other{"{0} troya unsiyasi"}
            }
            pound{
                dnam{"funt"}
                one{"{0} funt"}
                other{"{0} funt"}
            }
            ton{
                dnam{"amerika tonnasi"}
                one{"{0} amerikacha tonna"}
                other{"{0} amerikacha tonna"}
            }
        }
        power{
            gigawatt{
                dnam{"gigavatt"}
                one{"{0} gigavatt"}
                other{"{0} gigavatt"}
            }
            horsepower{
                dnam{"ot kuchi"}
                one{"{0} ot kuchi"}
                other{"{0} ot kuchi"}
            }
            kilowatt{
                dnam{"kilovatt"}
                one{"{0} kilovatt"}
                other{"{0} kilovatt"}
            }
            megawatt{
                dnam{"megavatt"}
                one{"{0} megavatt"}
                other{"{0} megavatt"}
            }
            milliwatt{
                dnam{"millivatt"}
                one{"{0} millivatt"}
                other{"{0} millivatt"}
            }
            watt{
                dnam{"vatt"}
                one{"{0} vatt"}
                other{"{0} vatt"}
            }
        }
        pressure{
            hectopascal{
                dnam{"gektopaskal"}
                one{"{0} gektopaskal"}
                other{"{0} gektopaskal"}
            }
            inch-hg{
                dnam{"dyum simob ustuni"}
                one{"{0} dyum simob ustuni"}
                other{"{0} dyum simob ustuni"}
            }
            millibar{
                dnam{"milibar"}
                one{"{0} milibar"}
                other{"{0} milibar"}
            }
            millimeter-of-mercury{
                dnam{"mm simob ustuni"}
                one{"{0} mm simob ustuni"}
                other{"{0} mm simob ustuni"}
            }
            pound-per-square-inch{
                dnam{"Funt-kuch taqsim dyum kvadrat"}
                one{"{0} funt-kuch taqsim dyum kvadrat"}
                other{"{0} funt-kuch taqsim dyum kvadrat"}
            }
        }
        proportion{
            karat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"soatiga kilometr"}
                one{"soatiga {0} kilometr"}
                other{"soatiga {0} kilometr"}
            }
            meter-per-second{
                dnam{"sekundiga metr"}
                one{"sekundiga {0} metr"}
                other{"sekundiga {0} metr"}
            }
            mile-per-hour{
                dnam{"soatiga mil"}
                one{"soatiga {0} mil"}
                other{"soatiga {0} mil"}
            }
        }
        temperature{
            celsius{
                dnam{"tselsiy darajasi"}
                one{"{0} tselsiy darajasi"}
                other{"{0} tselsiy darajasi"}
            }
            fahrenheit{
                dnam{"farengeyt"}
                one{"{0} farengeyt"}
                other{"{0} farengeyt"}
            }
            kelvin{
                dnam{"kelvin"}
                one{"{0} kelvin"}
                other{"{0} kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"akrofut"}
                one{"{0} akrofut"}
                other{"{0} akrofut"}
            }
            centiliter{
                dnam{"santilitr"}
                one{"{0} santilitr"}
                other{"{0} santilitr"}
            }
            cubic-centimeter{
                dnam{"kub santimetr"}
                one{"{0} kub santimetr"}
                other{"{0} kub santimetr"}
            }
            cubic-foot{
                dnam{"kub fut"}
                one{"{0} kub fut"}
                other{"{0} kub fut"}
            }
            cubic-inch{
                dnam{"kub dyum"}
                one{"{0} kub dyum"}
                other{"{0} kub dyum"}
            }
            cubic-kilometer{
                dnam{"kub kilometr"}
                one{"{0} kub kilometr"}
                other{"{0} kub kilometr"}
            }
            cubic-meter{
                dnam{"kub metr"}
                one{"{0} kub metr"}
                other{"{0} kub metr"}
            }
            cubic-mile{
                dnam{"kub mil"}
                one{"{0} kub mil"}
                other{"{0} kub mil"}
            }
            cubic-yard{
                dnam{"kub yard"}
                one{"{0} kub yard"}
                other{"{0} kub yard"}
            }
            cup{
                dnam{"piyola"}
                one{"{0} piyola"}
                other{"{0} piyola"}
            }
            deciliter{
                dnam{"detsilitr"}
                one{"{0} detsilitr"}
                other{"{0} detsilitr"}
            }
            fluid-ounce{
                dnam{"suyuq untsiya"}
                one{"{0} suyuq untsiya"}
                other{"{0} suyuq untsiya"}
            }
            gallon{
                dnam{"gallon"}
                one{"{0} gallon"}
                other{"{0} gallon"}
            }
            hectoliter{
                dnam{"gektolitr"}
                one{"{0} gektolitr"}
                other{"{0} gektolitr"}
            }
            liter{
                dnam{"litr"}
                one{"{0} litr"}
                other{"{0} litr"}
            }
            megaliter{
                dnam{"megalitr"}
                one{"{0} megalitr"}
                other{"{0} megalitr"}
            }
            milliliter{
                dnam{"millilitr"}
                one{"{0} millilitr"}
                other{"{0} millilitr"}
            }
            pint{
                dnam{"pint"}
                one{"{0} pint"}
                other{"{0} pint"}
            }
            quart{
                dnam{"kvart"}
                one{"{0} kvart"}
                other{"{0} kvart"}
            }
            tablespoon{
                dnam{"osh qoshiq"}
                one{"{0} osh qoshiq"}
                other{"{0} osh qoshiq"}
            }
            teaspoon{
                dnam{"choy qoshiq"}
                one{"{0} choy qoshiq"}
                other{"{0} choy qoshiq"}
            }
        }
    }
    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} ac"}
                other{"{0} ac"}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                dnam{"kun"}
                one{"{0} k"}
                other{"{0} k"}
            }
            hour{
                dnam{"soat"}
                one{"{0} soat"}
                other{"{0} soat"}
            }
            millisecond{
                dnam{"mson."}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"daqiqa"}
                one{"{0} daq"}
                other{"{0} daq"}
            }
            month{
                dnam{"oy"}
                one{"{0} oy"}
                other{"{0} oy"}
            }
            second{
                dnam{"son"}
                one{"{0} son"}
                other{"{0} son"}
            }
            week{
                dnam{"hafta"}
                one{"{0} haft"}
                other{"{0} haft"}
            }
            year{
                dnam{"yil"}
                one{"{0} y"}
                other{"{0} y"}
            }
        }
        length{
            centimeter{
                dnam{"sm"}
                one{"{0} sm"}
                other{"{0} sm"}
            }
            foot{
                one{"{0} fut"}
                other{"{0} fut"}
            }
            inch{
                one{"{0} dyuym"}
                other{"{0} dyuym"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} yo.y."}
                other{"{0} yo.y."}
            }
            meter{
                dnam{"metr"}
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} milya"}
                other{"{0} milya"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} yard"}
                other{"{0} yard"}
            }
        }
        mass{
            gram{
                dnam{"gr"}
                one{"{0} gr"}
                other{"{0} gr"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} untsiya"}
                other{"{0} untsiya"}
            }
            pound{
                one{"{0} funt"}
                other{"{0} funt"}
            }
        }
        power{
            horsepower{
                one{"{0} hp"}
                other{"{0} hp"}
            }
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            watt{
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/soat"}
                one{"{0} km/soat"}
                other{"{0} km/soat"}
            }
            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{"°C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            liter{
                dnam{"litr"}
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"g"}
                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{"daq."}
                one{"{0} daq."}
                other{"{0} daq."}
            }
            arc-second{
                dnam{"soniya"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"akr"}
                one{"{0} akr"}
                other{"{0} akr"}
            }
            hectare{
                dnam{"ga"}
                one{"{0} ga"}
                other{"{0} ga"}
            }
            square-centimeter{
                dnam{"sm²"}
                one{"{0} sm²"}
                other{"{0} sm²"}
            }
            square-foot{
                dnam{"fut²"}
                one{"{0} fut²"}
                other{"{0} fut²"}
            }
            square-inch{
                dnam{"dyum²"}
                one{"{0} dyum²"}
                other{"{0} dyum²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"mil²"}
                one{"{0} mil²"}
                other{"{0} mil²"}
            }
            square-yard{
                dnam{"yard²"}
                one{"{0} yard²"}
                other{"{0} yard²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"L/km"}
                one{"{0} L/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"mil/gal"}
                one{"galloniga {0} mil"}
                other{"galloniga {0} mil"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"bayt"}
                one{"{0} bayt"}
                other{"{0} bayt"}
            }
            gigabit{
                dnam{"Gbit"}
                one{"{0} Gbit"}
                other{"{0} Gbit"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kbit"}
                one{"{0} kbit"}
                other{"{0} kbit"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mbit"}
                one{"{0} Mbit"}
                other{"{0} Mbit"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tbit"}
                one{"{0} Tbit"}
                other{"{0} Tbit"}
            }
            terabyte{
                dnam{"TB"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"kun"}
                one{"{0} kun"}
                other{"{0} kun"}
            }
            hour{
                dnam{"soat"}
                one{"{0} soat"}
                other{"{0} soat"}
                per{"{0}/soat"}
            }
            microsecond{
                dnam{"μson."}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"millison."}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"daqiqa"}
                one{"{0} daq"}
                other{"{0} daq"}
            }
            month{
                dnam{"oy"}
                one{"{0} oy"}
                other{"{0} oy"}
            }
            nanosecond{
                dnam{"nanoson."}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"soniya"}
                one{"{0} soniya"}
                other{"{0} soniya"}
                per{"{0}/s"}
            }
            week{
                dnam{"hafta"}
                one{"{0} haft"}
                other{"{0} haft"}
            }
            year{
                dnam{"yil"}
                one{"{0} yil"}
                other{"{0} yil"}
            }
        }
        electric{
            ampere{
                dnam{"amp"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"om"}
                one{"{0} om"}
                other{"{0} om"}
            }
            volt{
                dnam{"volt"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"kal"}
                one{"{0} kal"}
                other{"{0} kal"}
            }
            foodcalorie{
                dnam{"kal"}
                one{"{0} kal"}
                other{"{0} kal"}
            }
            joule{
                dnam{"joul"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kkal"}
                one{"{0} kkal"}
                other{"{0} kkal"}
            }
            kilojoule{
                dnam{"kJ"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kVt-soat"}
                one{"{0} kVt-soat"}
                other{"{0} kVt-soat"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GGts"}
                one{"{0} GGts"}
                other{"{0} GGts"}
            }
            hertz{
                dnam{"Gts"}
                one{"{0} Gts"}
                other{"{0} Gts"}
            }
            kilohertz{
                dnam{"kGts"}
                one{"{0} kGts"}
                other{"{0} kGts"}
            }
            megahertz{
                dnam{"MGts"}
                one{"{0} MGts"}
                other{"{0} MGts"}
            }
        }
        length{
            astronomical-unit{
                dnam{"a.b."}
                one{"{0} a.b."}
                other{"{0} a.b."}
            }
            centimeter{
                dnam{"sm"}
                one{"{0} sm"}
                other{"{0} sm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"fut"}
                one{"{0} fut"}
                other{"{0} fut"}
            }
            inch{
                dnam{"dyum"}
                one{"{0} dyum"}
                other{"{0} dyum"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"yo.y."}
                one{"{0} yo.y."}
                other{"{0} yo.y."}
            }
            meter{
                dnam{"metr"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µmetr"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mil"}
                one{"{0} mil"}
                other{"{0} mil"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"den.mili"}
                one{"{0} den.mili"}
                other{"{0} den.mili"}
            }
            parsec{
                dnam{"pk"}
                one{"{0} pk"}
                other{"{0} pk"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"yard"}
                one{"{0} yard"}
                other{"{0} yard"}
            }
        }
        light{
            lux{
                dnam{"lk"}
                one{"{0} lk"}
                other{"{0} lk"}
            }
        }
        mass{
            carat{
                dnam{"kar"}
                one{"{0} kar"}
                other{"{0} kar"}
            }
            gram{
                dnam{"gr"}
                one{"{0} gr"}
                other{"{0} gr"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"mkg"}
                one{"{0} mkg"}
                other{"{0} mkg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"unt."}
                one{"{0} unt."}
                other{"{0} unt."}
            }
            ounce-troy{
                dnam{"t. unt."}
                one{"t. unt."}
                other{"{0} t. unt."}
            }
            pound{
                dnam{"funt"}
                one{"{0} funt"}
                other{"{0} funt"}
            }
            ton{
                dnam{"amer. t"}
                one{"{0} amer. t"}
                other{"{0} amer. t"}
            }
        }
        power{
            gigawatt{
                dnam{"GVt"}
                one{"{0} GVt"}
                other{"{0} GVt"}
            }
            horsepower{
                dnam{"o.k."}
                one{"{0} o.k."}
                other{"{0} o.k."}
            }
            kilowatt{
                dnam{"kVt"}
                one{"{0} kVt"}
                other{"{0} kVt"}
            }
            megawatt{
                dnam{"MVt"}
                one{"{0} MVt"}
                other{"{0} MVt"}
            }
            milliwatt{
                dnam{"mVt"}
                one{"{0} mVt"}
                other{"{0} mVt"}
            }
            watt{
                dnam{"Vt"}
                one{"{0} Vt"}
                other{"{0} Vt"}
            }
        }
        pressure{
            hectopascal{
                dnam{"gPa"}
                one{"{0} gPa"}
                other{"{0} gPa"}
            }
            inch-hg{
                dnam{"dyum sim. ust."}
                one{"{0} dyum sim. ust."}
                other{"{0} dyum sim. ust."}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm sim. ust."}
                one{"{0} mm sim. ust."}
                other{"{0} mm sim. ust."}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        proportion{
            karat{
                dnam{"kar"}
                one{"{0} kar"}
                other{"{0} kar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/soat"}
                one{"{0} km/soat"}
                other{"{0} km/soat"}
            }
            meter-per-second{
                dnam{"m/s"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mil/soat"}
                one{"{0} mil/soat"}
                other{"{0} mil/soat"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"akrofut"}
                one{"{0} akrofut"}
                other{"{0} akrofut"}
            }
            centiliter{
                dnam{"sL"}
                one{"{0} sL"}
                other{"{0} sL"}
            }
            cubic-centimeter{
                dnam{"sm³"}
                one{"{0} sm³"}
                other{"{0} sm³"}
            }
            cubic-foot{
                dnam{"fut³"}
                one{"{0} fut³"}
                other{"{0} fut³"}
            }
            cubic-inch{
                dnam{"dyum³"}
                one{"{0} dyum³"}
                other{"{0} dyum³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mil³"}
                one{"{0} mil³"}
                other{"{0} mil³"}
            }
            cubic-yard{
                dnam{"yard³"}
                one{"{0} yard³"}
                other{"{0} yard³"}
            }
            cup{
                dnam{"piyola"}
                one{"{0} piyola"}
                other{"{0} piyola"}
            }
            deciliter{
                dnam{"dL"}
                one{"{0} dL"}
                other{"{0} dL"}
            }
            fluid-ounce{
                dnam{"su. unt."}
                one{"{0} su. unt."}
                other{"{0} su. unt."}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
            }
            hectoliter{
                dnam{"gL"}
                one{"{0} gL"}
                other{"{0} gL"}
            }
            liter{
                dnam{"litr"}
                one{"{0} l"}
                other{"{0} l"}
            }
            megaliter{
                dnam{"ML"}
                one{"{0} ML"}
                other{"{0} ML"}
            }
            milliliter{
                dnam{"mL"}
                one{"{0} mL"}
                other{"{0} mL"}
            }
            pint{
                dnam{"pint"}
                one{"{0} pint"}
                other{"{0} pint"}
            }
            quart{
                dnam{"kvart"}
                one{"{0} kvart"}
                other{"{0} kvart"}
            }
            tablespoon{
                dnam{"osh.q."}
                one{"{0} osh.q."}
                other{"{0} osh.q."}
            }
            teaspoon{
                dnam{"ch.q."}
                one{"{0} ch.q."}
                other{"{0} ch.q."}
            }
        }
    }
}
