﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/az.xml
// *
// ***************************************************************************
az{
    Version{"2.1.23.7"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"g qüvvəsi"}
                one{"{0} g qüvvəsi"}
                other{"{0} g qüvvəsi"}
            }
            meter-per-second-squared{
                dnam{"metr saniyə kvadratı"}
                one{"{0} metr saniyə kvadratı"}
                other{"{0} metr saniyə kvadratı"}
            }
        }
        angle{
            arc-minute{
                dnam{"dəqiqə"}
                one{"{0} dəqiqə"}
                other{"{0} dəqiqə"}
            }
            arc-second{
                dnam{"saniyə"}
                one{"{0} saniyə"}
                other{"{0} saniyə"}
            }
            degree{
                dnam{"dərəcə"}
                one{"{0} dərəcə"}
                other{"{0} dərəcə"}
            }
            radian{
                dnam{"radian"}
                one{"{0} radian"}
                other{"{0} radian"}
            }
            revolution{
                dnam{"dövrə"}
                one{"{0} dövrə"}
                other{"{0} dövrə"}
            }
        }
        area{
            acre{
                dnam{"akr"}
                one{"{0} akr"}
                other{"{0} akr"}
            }
            hectare{
                dnam{"hektar"}
                one{"{0} hektar"}
                other{"{0} hektar"}
            }
            square-centimeter{
                dnam{"kvadrat santimetr"}
                one{"{0} kvadrat santimetr"}
                other{"{0} kvadrat santimetr"}
                per{"{0}/sm²"}
            }
            square-foot{
                dnam{"kvadrat fut"}
                one{"{0} kvadrat fut"}
                other{"{0} kvadrat fut"}
            }
            square-inch{
                dnam{"kvadrat düym"}
                one{"{0} kvadrat düym"}
                other{"{0} kvadrat düym"}
                per{"{0}/in²"}
            }
            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}/m²"}
            }
            square-mile{
                dnam{"kvadrat mil"}
                one{"{0} kvadrat mil"}
                other{"{0} kvadrat mil"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100km"}
                one{"{0} L/100km"}
                other{"{0} L/100km"}
            }
            liter-per-kilometer{
                dnam{"litr/kilometr"}
                one{"{0} litr/kilometr"}
                other{"{0} litr/kilometr"}
            }
            mile-per-gallon{
                dnam{"mil/qallon"}
                one{"{0} mil/qallon"}
                other{"{0} mil/qallon"}
            }
        }
        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{"giqabit"}
                one{"{0} giqabit"}
                other{"{0} giqabit"}
            }
            gigabyte{
                dnam{"giqabayt"}
                one{"{0} giqabayt"}
                other{"{0} giqabayt"}
            }
            kilobit{
                dnam{"kilobit"}
                one{"{0} kilobit"}
                other{"{0} kilobit"}
            }
            kilobyte{
                dnam{"kilobayt"}
                one{"{0} kilobayt"}
                other{"{0} kilobayt"}
            }
            megabit{
                dnam{"meqabit"}
                one{"{0} meqabit"}
                other{"{0} meqabit"}
            }
            megabyte{
                dnam{"meqabayt"}
                one{"{0} meqabayt"}
                other{"{0} meqabayt"}
            }
            terabit{
                dnam{"terabit"}
                one{"{0} terabit"}
                other{"{0} terabit"}
            }
            terabyte{
                dnam{"terabayt"}
                one{"{0} terabayt"}
                other{"{0} terabayt"}
            }
        }
        duration{
            century{
                dnam{"əsr"}
                one{"{0} əsr"}
                other{"{0} əsr"}
            }
            day{
                dnam{"gün"}
                one{"{0} gün"}
                other{"{0} gün"}
                per{"{0}/gün"}
            }
            hour{
                dnam{"saat"}
                one{"{0} saat"}
                other{"{0} saat"}
                per{"{0}/saat"}
            }
            microsecond{
                dnam{"mikrosaniyə"}
                one{"{0} mikrosaniyə"}
                other{"{0} mikrosaniyə"}
            }
            millisecond{
                dnam{"millisaniyə"}
                one{"{0} millisaniyə"}
                other{"{0} millisaniyə"}
            }
            minute{
                dnam{"dəqiqə"}
                one{"{0} dəqiqə"}
                other{"{0} dəqiqə"}
                per{"{0}/dəqiqə"}
            }
            month{
                dnam{"ay"}
                one{"{0} ay"}
                other{"{0} ay"}
                per{"{0}/ay"}
            }
            nanosecond{
                dnam{"nanosaniyə"}
                one{"{0} nanosaniyə"}
                other{"{0} nanosaniyə"}
            }
            second{
                dnam{"saniyə"}
                one{"{0} saniyə"}
                other{"{0} saniyə"}
                per{"{0}/saniyə"}
            }
            week{
                dnam{"həftə"}
                one{"{0} həftə"}
                other{"{0} həftə"}
                per{"{0}/həftə"}
            }
            year{
                dnam{"il"}
                one{"{0} il"}
                other{"{0} il"}
                per{"{0}/il"}
            }
        }
        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{"kalori"}
                one{"{0} kalori"}
                other{"{0} kalori"}
            }
            foodcalorie{
                dnam{"Kalori"}
                one{"{0} Kalori"}
                other{"{0} Kalori"}
            }
            joule{
                dnam{"coul"}
                one{"{0} coul"}
                other{"{0} coul"}
            }
            kilocalorie{
                dnam{"kilokalori"}
                one{"{0} kilokalori"}
                other{"{0} kilokalori"}
            }
            kilojoule{
                dnam{"kilocoul"}
                one{"{0} kilocoul"}
                other{"{0} kilocoul"}
            }
            kilowatt-hour{
                dnam{"kilovatt-saat"}
                one{"{0} kilovatt-saat"}
                other{"{0} kilovatt-saat"}
            }
        }
        frequency{
            gigahertz{
                dnam{"giqahers"}
                one{"{0} giqahers"}
                other{"{0} giqahers"}
            }
            hertz{
                dnam{"hers"}
                one{"{0} hers"}
                other{"{0} hers"}
            }
            kilohertz{
                dnam{"kilohers"}
                one{"{0} kilohers"}
                other{"{0} kilohers"}
            }
            megahertz{
                dnam{"meqahers"}
                one{"{0} meqahers"}
                other{"{0} meqahers"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomik vahid"}
                one{"{0} astronomik vahid"}
                other{"{0} astronomik vahid"}
            }
            centimeter{
                dnam{"santimetr"}
                one{"{0} santimetr"}
                other{"{0} santimetr"}
                per{"{0}/sm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"fut"}
                one{"{0} fut"}
                other{"{0} fut"}
                per{"{0}/ft"}
            }
            inch{
                dnam{"düym"}
                one{"{0} düym"}
                other{"{0} düym"}
                per{"{0}/in"}
            }
            kilometer{
                dnam{"kilometr"}
                one{"{0} kilometr"}
                other{"{0} kilometr"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"işıq ili"}
                one{"{0} işıq ili"}
                other{"{0} işıq ili"}
            }
            meter{
                dnam{"metr"}
                one{"{0} metr"}
                other{"{0} metr"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mil"}
                one{"{0} mil"}
                other{"{0} mil"}
            }
            mile-scandinavian{
                dnam{"smi"}
                one{"{0} smi"}
                other{"{0} smi"}
            }
            millimeter{
                dnam{"millimetr"}
                one{"{0} millimetr"}
                other{"{0} millimetr"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"pc"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pikometr"}
                one{"{0} pikometr"}
                other{"{0} pikometr"}
            }
            yard{
                dnam{"yard"}
                one{"{0} yard"}
                other{"{0} yard"}
            }
        }
        light{
            lux{
                dnam{"lüks"}
                one{"{0} lüks"}
                other{"{0} lüks"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
            gram{
                dnam{"qram"}
                one{"{0} qram"}
                other{"{0} qram"}
                per{"{0}/q"}
            }
            kilogram{
                dnam{"kiloqram"}
                one{"{0} kiloqram"}
                other{"{0} kiloqram"}
                per{"{0}/kq"}
            }
            metric-ton{
                dnam{"metrik ton"}
                one{"{0} metrik ton"}
                other{"{0} metrik ton"}
            }
            microgram{
                dnam{"mikroqram"}
                one{"{0} mikroqram"}
                other{"{0} mikroqram"}
            }
            milligram{
                dnam{"milliqram"}
                one{"{0} milliqram"}
                other{"{0} milliqram"}
            }
            ounce{
                dnam{"unsiya"}
                one{"{0} unsiya"}
                other{"{0} unsiya"}
                per{"{0}/oz"}
            }
            ounce-troy{
                dnam{"troy unsiyası"}
                one{"{0} troy unsiyası"}
                other{"{0} troy unsiyası"}
            }
            pound{
                dnam{"funt"}
                one{"{0} funt"}
                other{"{0} funt"}
                per{"{0}/lb"}
            }
            stone{
                dnam{"stone"}
                one{"{0} stone"}
                other{"{0} stone"}
            }
            ton{
                dnam{"ton"}
                one{"{0} ton"}
                other{"{0} ton"}
            }
        }
        power{
            gigawatt{
                dnam{"giqavatt"}
                one{"{0} giqavatt"}
                other{"{0} giqavatt"}
            }
            horsepower{
                dnam{"at gücü"}
                one{"{0} at gücü"}
                other{"{0} at gücü"}
            }
            kilowatt{
                dnam{"kilovatt"}
                one{"{0} kilovatt"}
                other{"{0} kilovatt"}
            }
            megawatt{
                dnam{"meqavatt"}
                one{"{0} meqavatt"}
                other{"{0} meqavatt"}
            }
            milliwatt{
                dnam{"millivatt"}
                one{"{0} millivatt"}
                other{"{0} millivatt"}
            }
            watt{
                dnam{"vatt"}
                one{"{0} vatt"}
                other{"{0} vatt"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopaskal"}
                one{"{0} hektopaskal"}
                other{"{0} hektopaskal"}
            }
            inch-hg{
                dnam{"civə düymü"}
                one{"{0} civə düymü"}
                other{"{0} civə düymü"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} millibar"}
                other{"{0} millibar"}
            }
            millimeter-of-mercury{
                dnam{"millimetr civə sütunu"}
                one{"{0} millimetr civə sütunu"}
                other{"{0} millimetr civə sütunu"}
            }
            pound-per-square-inch{
                dnam{"funt/kvadrat düym"}
                one{"{0} funt/kvadrat düym"}
                other{"{0} funt/kvadrat düym"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometr/saat"}
                one{"{0} kilometr/saat"}
                other{"{0} kilometr/saat"}
            }
            knot{
                dnam{"kn"}
                one{"{0} kn"}
                other{"{0} kn"}
            }
            meter-per-second{
                dnam{"metr/saniyə"}
                one{"{0} metr/saniyə"}
                other{"{0} metr/saniyə"}
            }
            mile-per-hour{
                dnam{"mil/saat"}
                one{"{0} mil/saat"}
                other{"{0} mil/saat"}
            }
        }
        temperature{
            celsius{
                dnam{"dərəcə Selsi"}
                one{"{0} dərəcə Selsi"}
                other{"{0} dərəcə Selsi"}
            }
            fahrenheit{
                dnam{"dərəcə Farengeyt"}
                one{"{0} dərəcə Farengeyt"}
                other{"{0} dərəcə Farengeyt"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"dərəcə Kelvin"}
                one{"{0} dərəcə Kelvin"}
                other{"{0} dərəcə Kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"akr-fut"}
                one{"{0} akr-fut"}
                other{"{0} akr-fut"}
            }
            centiliter{
                dnam{"santilitr"}
                one{"{0} santilitr"}
                other{"{0} santilitr"}
            }
            cubic-centimeter{
                dnam{"kub santimetr"}
                one{"{0} kub santimetr"}
                other{"{0} kub santimetr"}
                per{"{0}/sm³"}
            }
            cubic-foot{
                dnam{"kub fut"}
                one{"{0} kub fut"}
                other{"{0} kub fut"}
            }
            cubic-inch{
                dnam{"kub düym"}
                one{"{0} kub düym"}
                other{"{0} kub düym"}
            }
            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}/m³"}
            }
            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{"stəkan"}
                one{"{0} stəkan"}
                other{"{0} stəkan"}
            }
            cup-metric{
                dnam{"mcup"}
                one{"{0} mc"}
                other{"{0} mc"}
            }
            deciliter{
                dnam{"desilitr"}
                one{"{0} desilitr"}
                other{"{0} desilitr"}
            }
            fluid-ounce{
                dnam{"maye unsiyası"}
                one{"{0} maye unsiyası"}
                other{"{0} maye unsiyası"}
            }
            gallon{
                dnam{"qallon"}
                one{"{0} qallon"}
                other{"{0} qallon"}
                per{"{0}/qal"}
            }
            hectoliter{
                dnam{"hektolitr"}
                one{"{0} hektolitr"}
                other{"{0} hektolitr"}
            }
            liter{
                dnam{"litr"}
                one{"{0} litr"}
                other{"{0} litr"}
                per{"{0}/l"}
            }
            megaliter{
                dnam{"meqalitr"}
                one{"{0} meqalitr"}
                other{"{0} meqalitr"}
            }
            milliliter{
                dnam{"millilitr"}
                one{"{0} millilitr"}
                other{"{0} millilitr"}
            }
            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{"xörək qaşığı"}
                one{"{0} xörək qaşığı"}
                other{"{0} xörək qaşığı"}
            }
            teaspoon{
                dnam{"çay qaşığı"}
                one{"{0} çay qaşığı"}
                other{"{0} çay qaşığı"}
            }
        }
    }
    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} ak"}
                other{"{0} ak"}
            }
            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} mil²"}
                other{"{0} mil²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100km"}
                one{"{0} L/100km"}
                other{"{0} L/100km"}
            }
        }
        coordinate{
            east{"{0}E"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}W"}
        }
        duration{
            day{
                dnam{"gün"}
                one{"{0} gün"}
                other{"{0} gün"}
            }
            hour{
                dnam{"saat"}
                one{"{0} saat"}
                other{"{0} saat"}
            }
            millisecond{
                dnam{"msan"}
                one{"{0} msan"}
                other{"{0} msan"}
            }
            minute{
                dnam{"dəq"}
                one{"{0} dəq"}
                other{"{0} dəq"}
            }
            month{
                dnam{"ay"}
                one{"{0} ay"}
                other{"{0} ay"}
            }
            second{
                dnam{"san"}
                one{"{0} san"}
                other{"{0} san"}
            }
            week{
                dnam{"hft"}
                one{"{0} hft"}
                other{"{0} hft"}
            }
            year{
                dnam{"il"}
                one{"{0} il"}
                other{"{0} il"}
            }
        }
        length{
            centimeter{
                dnam{"sm"}
                one{"{0} sm"}
                other{"{0} sm"}
            }
            foot{
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                one{"{0} in"}
                other{"{0} in"}
            }
            kilometer{
                dnam{"kilometr"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} ii"}
                other{"{0} ii"}
            }
            meter{
                dnam{"metr"}
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mil"}
                other{"{0} mil"}
            }
            millimeter{
                dnam{"millimetr"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        mass{
            gram{
                dnam{"qram"}
                one{"{0} q"}
                other{"{0} q"}
            }
            kilogram{
                dnam{"kiloqram"}
                one{"{0} kq"}
                other{"{0} kq"}
            }
            ounce{
                one{"{0} oz"}
                other{"{0} oz"}
            }
            pound{
                one{"{0} lb"}
                other{"{0} lb"}
            }
            stone{
                dnam{"stone"}
            }
        }
        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} mb"}
                other{"{0} mb"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometr/saat"}
                one{"{0} km/saat"}
                other{"{0} km/saat"}
            }
            meter-per-second{
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                one{"{0} mil/saat"}
                other{"{0} mil/saat"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°"}
                other{"{0}°"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} mil³"}
                other{"{0} mil³"}
            }
            liter{
                dnam{"litr"}
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"g qüvvəsi"}
                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{"dəqiqə"}
                one{"{0}dəq"}
                other{"{0}dəq"}
            }
            arc-second{
                dnam{"saniyə"}
                one{"{0}san"}
                other{"{0}san"}
            }
            degree{
                dnam{"dərəcə"}
                one{"{0}dər"}
                other{"{0}dər"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"döv"}
                one{"{0} döv"}
                other{"{0} döv"}
            }
        }
        area{
            acre{
                dnam{"akr"}
                one{"{0} ak"}
                other{"{0} ak"}
            }
            hectare{
                dnam{"hektar"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"sm²"}
                one{"{0} sm²"}
                other{"{0} sm²"}
                per{"{0}/sm²"}
            }
            square-foot{
                dnam{"kvadrat fut"}
                one{"{0} kv ft"}
                other{"{0} kv ft"}
            }
            square-inch{
                dnam{"in²"}
                one{"{0} in²"}
                other{"{0} in²"}
                per{"{0}/in²"}
            }
            square-kilometer{
                dnam{"kvadrat kilometr"}
                one{"{0} kv km"}
                other{"{0} kv km"}
            }
            square-meter{
                dnam{"kvadrat metr"}
                one{"{0} kv m"}
                other{"{0} kv m"}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"kvadrat mil"}
                one{"{0} kv mil"}
                other{"{0} kv mil"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"kt"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100km"}
                one{"{0} L/100km"}
                other{"{0} L/100km"}
            }
            liter-per-kilometer{
                dnam{"L/km"}
                one{"{0} L/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"mpg"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        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{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            century{
                dnam{"əsr"}
                one{"{0} əsr"}
                other{"{0} əsr"}
            }
            day{
                dnam{"gün"}
                one{"{0} gün"}
                other{"{0} gün"}
                per{"{0}/gün"}
            }
            hour{
                dnam{"saat"}
                one{"{0} saat"}
                other{"{0} saat"}
                per{"{0}/saat"}
            }
            microsecond{
                dnam{"μsan"}
                one{"{0} μsan"}
                other{"{0} μsan"}
            }
            millisecond{
                dnam{"millisaniyə"}
                one{"{0} msan"}
                other{"{0} msan"}
            }
            minute{
                dnam{"dəqiqə"}
                one{"{0} dəq"}
                other{"{0} dəq"}
                per{"{0}/dəq"}
            }
            month{
                dnam{"ay"}
                one{"{0} ay"}
                other{"{0} ay"}
                per{"{0}/ay"}
            }
            nanosecond{
                dnam{"nsan"}
                one{"{0} nsan"}
                other{"{0} nsan"}
            }
            second{
                dnam{"saniyə"}
                one{"{0} san"}
                other{"{0} san"}
                per{"{0}/san"}
            }
            week{
                dnam{"həftə"}
                one{"{0} hft"}
                other{"{0} hft"}
                per{"{0}/hft"}
            }
            year{
                dnam{"il"}
                one{"{0} il"}
                other{"{0} il"}
                per{"{0}/il"}
            }
        }
        electric{
            ampere{
                dnam{"amp"}
                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{"coul"}
                one{"{0} c"}
                other{"{0} c"}
            }
            kilocalorie{
                dnam{"kkal"}
                one{"{0} kkal"}
                other{"{0} kkal"}
            }
            kilojoule{
                dnam{"kc"}
                one{"{0} kc"}
                other{"{0} kc"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"av"}
                one{"{0} av"}
                other{"{0} av"}
            }
            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} ft"}
                other{"{0} ft"}
                per{"{0}/ft"}
            }
            inch{
                dnam{"düym"}
                one{"{0} in"}
                other{"{0} in"}
                per{"{0}/in"}
            }
            kilometer{
                dnam{"kilometr"}
                one{"{0} km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"işıq ili"}
                one{"{0} ii"}
                other{"{0} ii"}
            }
            meter{
                dnam{"metr"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mil"}
                one{"{0} mil"}
                other{"{0} mil"}
            }
            mile-scandinavian{
                dnam{"smi"}
                one{"{0} smi"}
                other{"{0} smi"}
            }
            millimeter{
                dnam{"millimetr"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"pc"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pikometr"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"yard"}
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"CD"}
                one{"{0} CD"}
                other{"{0} CD"}
            }
            gram{
                dnam{"qram"}
                one{"{0} q"}
                other{"{0} q"}
                per{"{0}/q"}
            }
            kilogram{
                dnam{"kiloqram"}
                one{"{0} kq"}
                other{"{0} kq"}
                per{"{0}/kq"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µq"}
                one{"{0} µq"}
                other{"{0} µq"}
            }
            milligram{
                dnam{"mq"}
                one{"{0} mq"}
                other{"{0} mq"}
            }
            ounce{
                dnam{"unsiya"}
                one{"{0} oz"}
                other{"{0} oz"}
                per{"{0}/oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"funt"}
                one{"{0} lb"}
                other{"{0} lb"}
                per{"{0}/lb"}
            }
            stone{
                dnam{"stone"}
                one{"{0} stone"}
                other{"{0} stone"}
            }
            ton{
                dnam{"tn"}
                one{"{0} tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"at gücü"}
                one{"{0} hp"}
                other{"{0} hp"}
            }
            kilowatt{
                dnam{"kilovatt"}
                one{"{0} kW"}
                other{"{0} kW"}
            }
            megawatt{
                dnam{"MW"}
                one{"{0} MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                one{"{0} mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"vatt"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopaskal"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"civə düymü"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometr/saat"}
                one{"{0} km/saat"}
                other{"{0} km/saat"}
            }
            knot{
                dnam{"kn"}
                one{"{0} kn"}
                other{"{0} kn"}
            }
            meter-per-second{
                dnam{"metr/saniyə"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mil/saat"}
                one{"{0} mil/saat"}
                other{"{0} mil/saat"}
            }
        }
        temperature{
            celsius{
                dnam{"dərəcə Selsi"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                dnam{"dərəcə Farengeyt"}
                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{"ac ft"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            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{"ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                one{"{0} in³"}
                other{"{0} in³"}
            }
            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} mil³"}
                other{"{0} mil³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"st"}
                one{"{0} st"}
                other{"{0} st"}
            }
            cup-metric{
                dnam{"mcup"}
                one{"{0} mc"}
                other{"{0} mc"}
            }
            deciliter{
                dnam{"dL"}
                one{"{0} dL"}
                other{"{0} dL"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"qal"}
                one{"{0} qal"}
                other{"{0} qal"}
                per{"{0}/qal"}
            }
            hectoliter{
                dnam{"hL"}
                one{"{0} hL"}
                other{"{0} hL"}
            }
            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{"pt"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            pint-metric{
                dnam{"mpt"}
                one{"{0} mpt"}
                other{"{0} mpt"}
            }
            quart{
                dnam{"qt"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"xrqş"}
                one{"{0} xrqş"}
                other{"{0} xrqş"}
            }
            teaspoon{
                dnam{"çyqş"}
                one{"{0} çyqş"}
                other{"{0} çyqş"}
            }
        }
    }
}
