﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/uz.xml
// *
// ***************************************************************************
uz{
    Version{"2.1.22.93"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"gravitatsiya kuchi"}
                one{"{0} grav. kuchi"}
                other{"{0} grav. kuchi"}
            }
            meter-per-second-squared{
                dnam{"metr taqsim soniyaning kvadrati"}
                one{"{0} metr/soniya kvadrat"}
                other{"{0} metr/soniya kvadrat"}
            }
        }
        angle{
            arc-minute{
                dnam{"yoy daqiqasi"}
                one{"{0} yoy daqiqasi"}
                other{"{0} yoy daqiqasi"}
            }
            arc-second{
                dnam{"yoy soniyasi"}
                one{"{0} yoy soniyasi"}
                other{"{0} yoy soniyasi"}
            }
            degree{
                dnam{"gradus"}
                one{"{0} gradus"}
                other{"{0} gradus"}
            }
            radian{
                dnam{"radian"}
                one{"{0} radian"}
                other{"{0} radian"}
            }
            revolution{
                dnam{"aylanish"}
                one{"{0} marta aylanish"}
                other{"{0} marta aylanish"}
            }
        }
        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"}
                per{"{0}/kvadrat santimetr"}
            }
            square-foot{
                dnam{"kvadrat fut"}
                one{"{0} kvadrat fut"}
                other{"{0} kvadrat fut"}
            }
            square-inch{
                dnam{"kvadrat duym"}
                one{"{0} kvadrat dyum"}
                other{"{0} kvadrat dyum"}
                per{"{0}/kvadrat duym"}
            }
            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"}
                per{"{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}"}
        }
        concentr{
            karat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"litr/100 km"}
                one{"{0} litr/100 km"}
                other{"{0} litr/100 km"}
            }
            liter-per-kilometer{
                dnam{"litr/kilometr"}
                one{"{0} litr/kilometr"}
                other{"{0} litr/kilometr"}
            }
            mile-per-gallon{
                dnam{"mil/gallon"}
                one{"{0} mil/gallon"}
                other{"{0} mil/gallon"}
            }
        }
        coordinate{
            east{"{0}E"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}W"}
        }
        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{
            century{
                dnam{"asr"}
                one{"{0} asr"}
                other{"{0} asr"}
            }
            day{
                dnam{"kun"}
                one{"{0} kun"}
                other{"{0} kun"}
                per{"{0}/kun"}
            }
            hour{
                dnam{"soat"}
                one{"{0} soat"}
                other{"{0} soat"}
                per{"{0}/soat"}
            }
            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"}
                per{"{0}/daqiqa"}
            }
            month{
                dnam{"oy"}
                one{"{0} oy"}
                other{"{0} oy"}
                per{"{0}/oy"}
            }
            nanosecond{
                dnam{"nanosoniya"}
                one{"{0} nanosoniya"}
                other{"{0} nanosoniya"}
            }
            second{
                dnam{"soniya"}
                one{"{0} soniya"}
                other{"{0} soniya"}
                per{"{0}/soniya"}
            }
            week{
                dnam{"hafta"}
                one{"{0} hafta"}
                other{"{0} hafta"}
                per{"{0}/hafta"}
            }
            year{
                dnam{"yil"}
                one{"{0} yil"}
                other{"{0} yil"}
                per{"{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{"gigagers"}
                one{"{0} gigagers"}
                other{"{0} gigagers"}
            }
            hertz{
                dnam{"gers"}
                one{"{0} gers"}
                other{"{0} gers"}
            }
            kilohertz{
                dnam{"kilogers"}
                one{"{0} kilogers"}
                other{"{0} kilogers"}
            }
            megahertz{
                dnam{"megagers"}
                one{"{0} megagers"}
                other{"{0} megagers"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomik birlik"}
                one{"{0} astronomik birlik"}
                other{"{0} astronomik birlik"}
            }
            centimeter{
                dnam{"santimetr"}
                one{"{0} santimetr"}
                other{"{0} santimetr"}
                per{"{0}/santimetr"}
            }
            decimeter{
                dnam{"detsimetr"}
                one{"{0} detsimetr"}
                other{"{0} detsimetr"}
            }
            foot{
                dnam{"fut"}
                one{"{0} fut"}
                other{"{0} fut"}
                per{"{0}/fut"}
            }
            inch{
                dnam{"dyum"}
                one{"{0} dyum"}
                other{"{0} dyum"}
            }
            kilometer{
                dnam{"kilometr"}
                one{"{0} kilometr"}
                other{"{0} kilometr"}
                per{"{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"}
                per{"{0}/metr"}
            }
            micrometer{
                dnam{"mikrometr"}
                one{"{0} mikrometr"}
                other{"{0} mikrometr"}
            }
            mile{
                dnam{"mil"}
                one{"{0} mil"}
                other{"{0} mil"}
            }
            mile-scandinavian{
                dnam{"Skandinaviya mili"}
                one{"{0} Skandinaviya mili"}
                other{"{0} Skandinaviya mili"}
            }
            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"}
                per{"{0}/gramm"}
            }
            kilogram{
                dnam{"kilogramm"}
                one{"{0} kilogramm"}
                other{"{0} kilogramm"}
                per{"{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{"unsiya"}
                one{"{0} unsiya"}
                other{"{0} unsiya"}
                per{"{0}/unsiya"}
            }
            ounce-troy{
                dnam{"troya unsiyasi"}
                one{"{0} troya unsiyasi"}
                other{"{0} troya unsiyasi"}
            }
            pound{
                dnam{"funt"}
                one{"{0} funt"}
                other{"{0} funt"}
                per{"{0}/funt"}
            }
            ton{
                dnam{"amerika tonnasi"}
                one{"{0} amerika tonnasi"}
                other{"{0} amerika tonnasi"}
            }
        }
        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{"duym simob ustuni"}
                one{"{0} duym simob ustuni"}
                other{"{0} duym simob ustuni"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} millibar"}
                other{"{0} millibar"}
            }
            millimeter-of-mercury{
                dnam{"mm simob ustuni"}
                one{"{0} mm simob ustuni"}
                other{"{0} mm simob ustuni"}
            }
            pound-per-square-inch{
                dnam{"funt/kvadrat duym"}
                one{"{0} funt/kvadrat duym"}
                other{"{0} funt/kvadrat duym"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/soat"}
                one{"soatiga {0} kilometr"}
                other{"soatiga {0} kilometr"}
            }
            knot{
                dnam{"uzel"}
                one{"{0} uzel"}
                other{"{0} uzel"}
            }
            meter-per-second{
                dnam{"metr/soniya"}
                one{"{0} metr/soniya"}
                other{"{0} metr/soniya"}
            }
            mile-per-hour{
                dnam{"mil/soat"}
                one{"{0} mil/soat"}
                other{"{0} mil/soat"}
            }
        }
        temperature{
            celsius{
                dnam{"Selsiy darajasi"}
                one{"{0} Selsiy darajasi"}
                other{"{0} Selsiy darajasi"}
            }
            fahrenheit{
                dnam{"Farengeyt darajasi"}
                one{"{0} Farengeyt darajasi"}
                other{"{0} Farengeyt darajasi"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            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"}
                per{"{0}/kub santimetr"}
            }
            cubic-foot{
                dnam{"kub fut"}
                one{"{0} kub fut"}
                other{"{0} kub fut"}
            }
            cubic-inch{
                dnam{"kub duym"}
                one{"{0} kub duym"}
                other{"{0} kub duym"}
            }
            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"}
                per{"{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"}
            }
            cup-metric{
                dnam{"metrik piyola"}
                one{"{0} metrik piyola"}
                other{"{0} metrik piyola"}
            }
            deciliter{
                dnam{"detsilitr"}
                one{"{0} detsilitr"}
                other{"{0} detsilitr"}
            }
            fluid-ounce{
                dnam{"suyuq unsiya"}
                one{"{0} suyuq unsiya"}
                other{"{0} suyuq unsiya"}
            }
            gallon{
                dnam{"gallon"}
                one{"{0} gallon"}
                other{"{0} gallon"}
                per{"{0}/gallon"}
            }
            hectoliter{
                dnam{"gektolitr"}
                one{"{0} gektolitr"}
                other{"{0} gektolitr"}
            }
            liter{
                dnam{"litr"}
                one{"{0} litr"}
                other{"{0} litr"}
                per{"{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"}
            }
            pint-metric{
                dnam{"metrik pint"}
                one{"{0} metrik pint"}
                other{"{0} metrik 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}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100 km"}
                one{"{0}L/100km"}
                other{"{0}L/100km"}
            }
        }
        coordinate{
            east{"{0}E"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}W"}
        }
        duration{
            day{
                dnam{"kun"}
                one{"{0} kun"}
                other{"{0} kun"}
            }
            hour{
                dnam{"soat"}
                one{"{0} st"}
                other{"{0} st"}
            }
            millisecond{
                dnam{"mson"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"daq"}
                one{"{0} d"}
                other{"{0} d"}
            }
            month{
                dnam{"oy"}
                one{"{0} oy"}
                other{"{0} oy"}
            }
            second{
                dnam{"son"}
                one{"{0} s"}
                other{"{0} s"}
            }
            week{
                dnam{"hafta"}
                one{"{0} hafta"}
                other{"{0} hafta"}
            }
            year{
                dnam{"yil"}
                one{"{0} yil"}
                other{"{0} yil"}
            }
        }
        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{"gramm"}
                one{"{0} g"}
                other{"{0} g"}
            }
            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{"grav. kuchi"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"metr/soniya²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"yoy daqiqasi"}
                one{"{0} yoy daq."}
                other{"{0} yoy daq."}
            }
            arc-second{
                dnam{"yoy soniyasi"}
                one{"{0} yoy son."}
                other{"{0} yoy son."}
            }
            degree{
                dnam{"gradus"}
                one{"{0} grad"}
                other{"{0} grad"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"aylanish"}
                one{"{0} marta ayl."}
                other{"{0} marta ayl."}
            }
        }
        area{
            acre{
                dnam{"akr"}
                one{"{0} akr"}
                other{"{0} akr"}
            }
            hectare{
                dnam{"gektar"}
                one{"{0} ga"}
                other{"{0} ga"}
            }
            square-centimeter{
                dnam{"sm²"}
                one{"{0} sm²"}
                other{"{0} sm²"}
                per{"{0}/sm²"}
            }
            square-foot{
                dnam{"kv. fut"}
                one{"{0} kv. fut"}
                other{"{0} kv. fut"}
            }
            square-inch{
                dnam{"kvadrat duym"}
                one{"{0} kv. duym"}
                other{"{0} kv. duym"}
                per{"{0} kv. duym"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"kv. mil"}
                one{"{0} kv. mil"}
                other{"{0} kv. mil"}
            }
            square-yard{
                dnam{"yard²"}
                one{"{0} yard²"}
                other{"{0} yard²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"karat"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100 km"}
                one{"{0} L/100 km"}
                other{"{0} L/100 km"}
            }
            liter-per-kilometer{
                dnam{"litr/km"}
                one{"{0} L/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"mil/gal"}
                one{"{0} mil/gal"}
                other{"{0} mil/gal"}
            }
        }
        coordinate{
            east{"{0}E"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}W"}
        }
        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{
            century{
                dnam{"asr"}
                one{"{0} asr"}
                other{"{0} asr"}
            }
            day{
                dnam{"kun"}
                one{"{0} kun"}
                other{"{0} kun"}
                per{"{0}/kun"}
            }
            hour{
                dnam{"soat"}
                one{"{0} st"}
                other{"{0} st"}
                per{"{0}/st"}
            }
            microsecond{
                dnam{"mks"}
                one{"{0} mks"}
                other{"{0} mks"}
            }
            millisecond{
                dnam{"millisoniya"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"daq"}
                one{"{0} daq"}
                other{"{0} daq"}
                per{"{0}/daq"}
            }
            month{
                dnam{"oy"}
                one{"{0} oy"}
                other{"{0} oy"}
                per{"{0}/oy"}
            }
            nanosecond{
                dnam{"nanosoniya"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"son"}
                one{"{0} son"}
                other{"{0} son"}
                per{"{0}/s"}
            }
            week{
                dnam{"hafta"}
                one{"{0} hafta"}
                other{"{0} hafta"}
                per{"{0}/hafta"}
            }
            year{
                dnam{"yil"}
                one{"{0} yil"}
                other{"{0} yil"}
                per{"{0}/yil"}
            }
        }
        electric{
            ampere{
                dnam{"amper"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"om"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            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{"kilojoul"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kVt-soat"}
                one{"{0} kVt-soat"}
                other{"{0} kVt-soat"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GGs"}
                one{"{0} GGs"}
                other{"{0} GGs"}
            }
            hertz{
                dnam{"Gs"}
                one{"{0} Gs"}
                other{"{0} Gs"}
            }
            kilohertz{
                dnam{"kGs"}
                one{"{0} kGs"}
                other{"{0} kGs"}
            }
            megahertz{
                dnam{"MGs"}
                one{"{0} MGs"}
                other{"{0} MGs"}
            }
        }
        length{
            astronomical-unit{
                dnam{"a.b."}
                one{"{0} a.b."}
                other{"{0} a.b."}
            }
            centimeter{
                dnam{"sm"}
                one{"{0} sm"}
                other{"{0} sm"}
                per{"{0}/sm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"fut"}
                one{"{0} fut"}
                other{"{0} fut"}
                per{"{0} fut"}
            }
            inch{
                dnam{"dyum"}
                one{"{0} dy"}
                other{"{0} dy"}
                per{"{0}/dy"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"yorug‘lik yili"}
                one{"{0} y.y."}
                other{"{0} y.y."}
            }
            meter{
                dnam{"metr"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µmetr"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mil"}
                one{"{0} mil"}
                other{"{0} mil"}
            }
            mile-scandinavian{
                dnam{"s-mil"}
                one{"{0} s-mil"}
                other{"{0} s-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{"karat"}
                one{"{0} kar"}
                other{"{0} kar"}
            }
            gram{
                dnam{"gramm"}
                one{"{0} g"}
                other{"{0} g"}
                per{"{0}/g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
                per{"{0}/kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"unsiya"}
                one{"{0} unsiya"}
                other{"{0} unsiya"}
                per{"{0}/unsiya"}
            }
            ounce-troy{
                dnam{"troya unsiyasi"}
                one{"{0} troya unsiyasi"}
                other{"{0} troya unsiyasi"}
            }
            pound{
                dnam{"funt"}
                one{"{0} funt"}
                other{"{0} funt"}
                per{"{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{"dy sim.ust"}
                one{"{0} dy sim.ust"}
                other{"{0} dy 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{"funt/kv.dy"}
                one{"{0} funt/kv.dy"}
                other{"{0} funt/kv.dy"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/soat"}
                one{"{0} km/soat"}
                other{"{0} km/soat"}
            }
            knot{
                dnam{"uzel"}
                one{"{0} uzel"}
                other{"{0} uzel"}
            }
            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"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            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³"}
                per{"{0}/sm³"}
            }
            cubic-foot{
                dnam{"kub fut"}
                one{"{0} kub fut"}
                other{"{0} kub fut"}
            }
            cubic-inch{
                dnam{"kub duym"}
                one{"{0} kub duym"}
                other{"{0} kub duym"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
                per{"{0}/m³"}
            }
            cubic-mile{
                dnam{"kub mil"}
                one{"{0} kub mil"}
                other{"{0} kub mil"}
            }
            cubic-yard{
                dnam{"kub yard"}
                one{"{0} yard³"}
                other{"{0} yard³"}
            }
            cup{
                dnam{"piyola"}
                one{"{0} piyola"}
                other{"{0} piyola"}
            }
            cup-metric{
                dnam{"m. piyola"}
                one{"{0} m. piyola"}
                other{"{0} m. piyola"}
            }
            deciliter{
                dnam{"dL"}
                one{"{0} dL"}
                other{"{0} dL"}
            }
            fluid-ounce{
                dnam{"suyuq unsiya"}
                one{"{0} suyuq unsiya"}
                other{"{0} suyuq unsiya"}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
                per{"{0}/gal"}
            }
            hectoliter{
                dnam{"gL"}
                one{"{0} gL"}
                other{"{0} gL"}
            }
            liter{
                dnam{"litr"}
                one{"{0} l"}
                other{"{0} l"}
                per{"{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"}
            }
            pint-metric{
                dnam{"mpt"}
                one{"{0} mpt"}
                other{"{0} mpt"}
            }
            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"}
            }
        }
    }
}
