﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/et.xml
// *
// ***************************************************************************
et{
    Version{"2.1.12.94"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"maa gravitatsioon"}
                one{"{0} maa gravitatsiooni"}
                other{"{0} maa gravitatsiooni"}
            }
            meter-per-second-squared{
                dnam{"meetrid sekundi ruudu kohta"}
                one{"{0} meeter sekundi ruudu kohta"}
                other{"{0} meetrit sekundi ruudu kohta"}
            }
        }
        angle{
            arc-minute{
                dnam{"kaareminut"}
                one{"{0} kaareminut"}
                other{"{0} kaareminut"}
            }
            arc-second{
                dnam{"kaaresekund"}
                one{"{0} kaaresekund"}
                other{"{0} kaaresekund"}
            }
            degree{
                dnam{"kraadi"}
                one{"{0} kraad"}
                other{"{0} kraadi"}
            }
            radian{
                dnam{"radiaanid"}
                one{"{0} radiaan"}
                other{"{0} radiaani"}
            }
        }
        area{
            acre{
                dnam{"aakrid"}
                one{"{0} aaker"}
                other{"{0} aakrit"}
            }
            hectare{
                dnam{"hektarid"}
                one{"{0} hektar"}
                other{"{0} hektarit"}
            }
            square-centimeter{
                dnam{"ruutsentimeetrid"}
                one{"{0} ruutsentimeeter"}
                other{"{0} ruutsentimeetrit"}
            }
            square-foot{
                dnam{"ruutjalad"}
                one{"{0} ruutjalg"}
                other{"{0} ruutjalga"}
            }
            square-inch{
                dnam{"ruuttollid"}
                one{"{0} ruuttoll"}
                other{"{0} ruuttolli"}
            }
            square-kilometer{
                dnam{"ruutkilomeetrid"}
                one{"{0} ruutkilomeeter"}
                other{"{0} ruutkilomeetrit"}
            }
            square-meter{
                dnam{"ruutmeetrid"}
                one{"{0} ruutmeeter"}
                other{"{0} ruutmeetrit"}
            }
            square-mile{
                dnam{"ruutmiili"}
                one{"{0} ruutmiil"}
                other{"{0} ruutmiili"}
            }
            square-yard{
                dnam{"ruutjardid"}
                one{"{0} ruutjard"}
                other{"{0} ruutjardi"}
            }
        }
        compound{
            per{"{0} {1} kohta"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"liitreid kilomeetri kohta"}
                one{"{0} liiter kilomeetri kohta"}
                other{"{0} liitrit kilomeetri kohta"}
            }
            mile-per-gallon{
                dnam{"miili galloni kohta"}
                one{"{0} miil galloni kohta"}
                other{"{0} miili galloni kohta"}
            }
        }
        digital{
            bit{
                dnam{"bitid"}
                one{"{0} bitt"}
                other{"{0} bitti"}
            }
            byte{
                dnam{"baidid"}
                one{"{0} bait"}
                other{"{0} baiti"}
            }
            gigabit{
                dnam{"gigabitid"}
                one{"{0} gigabitt"}
                other{"{0} gigabitti"}
            }
            gigabyte{
                dnam{"gigabaidid"}
                one{"{0} gigabait"}
                other{"{0} gigabaiti"}
            }
            kilobit{
                dnam{"kilobitid"}
                one{"{0} kilobitt"}
                other{"{0} kilobitti"}
            }
            kilobyte{
                dnam{"kilobaidid"}
                one{"{0} kilobait"}
                other{"{0} kilobaiti"}
            }
            megabit{
                dnam{"megabitid"}
                one{"{0} megabitt"}
                other{"{0} megabitti"}
            }
            megabyte{
                dnam{"megabaidid"}
                one{"{0} megabait"}
                other{"{0} megabaiti"}
            }
            terabit{
                dnam{"terabitid"}
                one{"{0} terabitt"}
                other{"{0} terabitti"}
            }
            terabyte{
                dnam{"terabaidid"}
                one{"{0} terabait"}
                other{"{0} terabaiti"}
            }
        }
        duration{
            day{
                dnam{"ööpäeva"}
                one{"{0} ööpäev"}
                other{"{0} ööpäeva"}
            }
            hour{
                dnam{"tundi"}
                one{"{0} tund"}
                other{"{0} tundi"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"mikrosekundid"}
                one{"{0} mikrosekund"}
                other{"{0} mikrosekundit"}
            }
            millisecond{
                dnam{"millisekundid"}
                one{"{0} millisekund"}
                other{"{0} millisekundit"}
            }
            minute{
                dnam{"minutid"}
                one{"{0} minut"}
                other{"{0} minutit"}
            }
            month{
                dnam{"kuud"}
                one{"{0} kuu"}
                other{"{0} kuud"}
            }
            nanosecond{
                dnam{"nanosekundid"}
                one{"{0} nanosekund"}
                other{"{0} nanosekundit"}
            }
            second{
                dnam{"sekundid"}
                one{"{0} sekund"}
                other{"{0} sekundit"}
                per{"{0}/s"}
            }
            week{
                dnam{"nädalad"}
                one{"{0} nädal"}
                other{"{0} nädalat"}
            }
            year{
                dnam{"aastad"}
                one{"{0} aasta"}
                other{"{0} aastat"}
            }
        }
        electric{
            ampere{
                dnam{"amprid"}
                one{"{0} amper"}
                other{"{0} amprit"}
            }
            milliampere{
                dnam{"milliamprid"}
                one{"{0} milliamper"}
                other{"{0} milliamprit"}
            }
            ohm{
                dnam{"oomid"}
                one{"{0} oom"}
                other{"{0} oomi"}
            }
            volt{
                dnam{"voldid"}
                one{"{0} volt"}
                other{"{0} volti"}
            }
        }
        energy{
            calorie{
                dnam{"kalorid"}
                one{"{0} kalor"}
                other{"{0} kalorit"}
            }
            foodcalorie{
                dnam{"Toidukalorid"}
                one{"{0} toidukalor"}
                other{"{0} toidukalorit"}
            }
            joule{
                dnam{"džaulid"}
                one{"{0} džaul"}
                other{"{0} džauli"}
            }
            kilocalorie{
                dnam{"kilokalorid"}
                one{"{0} kilokalor"}
                other{"{0} kilokalorit"}
            }
            kilojoule{
                dnam{"kilodžaulid"}
                one{"{0} kilodžaul"}
                other{"{0} kilodžauli"}
            }
            kilowatt-hour{
                dnam{"kilovatt-tunnid"}
                one{"{0} kilovatt-tund"}
                other{"{0} kilovatt-tundi"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigaherts"}
                one{"{0} gigaherts"}
                other{"{0} gigahertsi"}
            }
            hertz{
                dnam{"herts"}
                one{"{0} herts"}
                other{"{0} hertsi"}
            }
            kilohertz{
                dnam{"kiloherts"}
                one{"{0} kiloherts"}
                other{"{0} kilohertsi"}
            }
            megahertz{
                dnam{"megaherts"}
                one{"{0} megaherts"}
                other{"{0} megahertsi"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronoomilised ühikud"}
                one{"{0} astronoomiline ühik"}
                other{"{0} astronoomilist ühikut"}
            }
            centimeter{
                dnam{"sentimeetrid"}
                one{"{0} sentimeeter"}
                other{"{0} sentimeetrit"}
            }
            decimeter{
                dnam{"detsimeetrid"}
                one{"{0} detsimeeter"}
                other{"{0} detsimeetrit"}
            }
            foot{
                dnam{"jalg"}
                one{"{0} jalg"}
                other{"{0} jalga"}
            }
            inch{
                dnam{"tolli"}
                one{"{0} toll"}
                other{"{0} tolli"}
            }
            kilometer{
                dnam{"kilomeetrid"}
                one{"{0} kilomeeter"}
                other{"{0} kilomeetrit"}
            }
            light-year{
                dnam{"valgusaastad"}
                one{"{0} valgusaasta"}
                other{"{0} valgusaastat"}
            }
            meter{
                dnam{"meetrid"}
                one{"{0} meeter"}
                other{"{0} meetrit"}
            }
            micrometer{
                dnam{"mikromeetrid"}
                one{"{0} mikromeeter"}
                other{"{0} mikromeetrit"}
            }
            mile{
                dnam{"miili"}
                one{"{0} miil"}
                other{"{0} miili"}
            }
            millimeter{
                dnam{"millimeetrid"}
                one{"{0} millimeeter"}
                other{"{0} millimeetrit"}
            }
            nanometer{
                dnam{"nanomeetrid"}
                one{"{0} nanomeeter"}
                other{"{0} nanomeetrit"}
            }
            nautical-mile{
                dnam{"meremiilid"}
                one{"{0} meremiil"}
                other{"{0} meremiili"}
            }
            parsec{
                dnam{"parsekid"}
                one{"{0} parsek"}
                other{"{0} parsekit"}
            }
            picometer{
                dnam{"pikomeetrid"}
                one{"{0} pikomeeter"}
                other{"{0} pikomeetrit"}
            }
            yard{
                dnam{"jardi"}
                one{"{0} jard"}
                other{"{0} jardi"}
            }
        }
        light{
            lux{
                dnam{"luks"}
                one{"{0} luks"}
                other{"{0} luksi"}
            }
        }
        mass{
            carat{
                dnam{"karaadid"}
                one{"{0} karaat"}
                other{"{0} karaati"}
            }
            gram{
                dnam{"grammi"}
                one{"{0} gramm"}
                other{"{0} grammi"}
            }
            kilogram{
                dnam{"kilogrammi"}
                one{"{0} kilogramm"}
                other{"{0} kilogrammi"}
            }
            metric-ton{
                dnam{"tonnid"}
                one{"{0} tonn"}
                other{"{0} tonni"}
            }
            microgram{
                dnam{"mikrogrammid"}
                one{"mikrogramm"}
                other{"{0} mikrogrammi"}
            }
            milligram{
                dnam{"milligrammid"}
                one{"{0} milligramm"}
                other{"{0} milligrammi"}
            }
            ounce{
                dnam{"untsi"}
                one{"{0} unts"}
                other{"{0} untsi"}
            }
            ounce-troy{
                dnam{"trooja untsid"}
                one{"{0} trooja unts"}
                other{"{0} trooja untsi"}
            }
            pound{
                dnam{"naela"}
                one{"{0} nael"}
                other{"{0} naela"}
            }
            ton{
                dnam{"lühikesed tonnid"}
                one{"{0} lühikene tonn"}
                other{"{0} lühikest tonni"}
            }
        }
        power{
            gigawatt{
                dnam{"gigavatid"}
                one{"{0} gigavatt"}
                other{"{0} gigavatti"}
            }
            horsepower{
                dnam{"hobujõud"}
                one{"{0} hobujõud"}
                other{"{0} hobujõudu"}
            }
            kilowatt{
                dnam{"kilovatid"}
                one{"{0} kilovatt"}
                other{"{0} kilovatti"}
            }
            megawatt{
                dnam{"megavatid"}
                one{"{0} megavatt"}
                other{"{0} megavatti"}
            }
            milliwatt{
                dnam{"millivatid"}
                one{"{0} millivatt"}
                other{"{0} millivatti"}
            }
            watt{
                dnam{"vatid"}
                one{"{0} vatt"}
                other{"{0} vatti"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopaskalid"}
                one{"{0} hektopaskal"}
                other{"{0} hektopaskalit"}
            }
            inch-hg{
                dnam{"tolli elavhõbedasammast"}
                one{"{0} toll elavhõbedasammast"}
                other{"{0} tolli elavhõbedasammast"}
            }
            millibar{
                dnam{"millibaari"}
                one{"{0} millibaar"}
                other{"{0} millibaari"}
            }
            millimeter-of-mercury{
                dnam{"millimeetrit elavhõbedasammast"}
                one{"{0} millimeeter elavhõbedasammast"}
                other{"{0} millimeetrit elavhõbedasammast"}
            }
            pound-per-square-inch{
                dnam{"naela ruuttolli kohta"}
                one{"{0} nael ruuttolli kohta"}
                other{"{0} naela ruuttolli kohta"}
            }
        }
        proportion{
            karat{
                dnam{"karaadid"}
                one{"{0} karaat"}
                other{"{0} karaati"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilomeetrid tunnis"}
                one{"{0} kilomeeter tunnis"}
                other{"{0} kilomeetrit tunnis"}
            }
            meter-per-second{
                dnam{"meetrid sekundis"}
                one{"{0} meeter sekundis"}
                other{"{0} meetrit sekundis"}
            }
            mile-per-hour{
                dnam{"miili tunnis"}
                one{"{0} miil tunnis"}
                other{"{0} miili tunnis"}
            }
        }
        temperature{
            celsius{
                dnam{"Celsiuse kraadi"}
                one{"{0} Celsiuse kraad"}
                other{"{0} Celsiuse kraadi"}
            }
            fahrenheit{
                dnam{"Fahrenheiti kraadi"}
                one{"{0} Fahrenheiti kraad"}
                other{"{0} Fahrenheiti kraadi"}
            }
            kelvin{
                dnam{"kelvinit"}
                one{"{0} kelvin"}
                other{"{0} kelvinit"}
            }
        }
        volume{
            acre-foot{
                dnam{"aaker-jalg"}
                one{"{0} aaker-jalg"}
                other{"{0} aaker-jalga"}
            }
            centiliter{
                dnam{"sentiliitrid"}
                one{"{0} sentiliiter"}
                other{"{0} sentiliitrit"}
            }
            cubic-centimeter{
                dnam{"kuupsentimeetrid"}
                one{"{0} kuupsentimeeter"}
                other{"{0} kuupsentimeetrit"}
            }
            cubic-foot{
                dnam{"kuupjalg"}
                one{"{0} kuupjalg"}
                other{"{0} kuupjalga"}
            }
            cubic-inch{
                dnam{"kuuptollid"}
                one{"{0} kuuptoll"}
                other{"{0} kuuptolli"}
            }
            cubic-kilometer{
                dnam{"kuupkilomeetrid"}
                one{"{0} kuupkilomeeter"}
                other{"{0} kuupkilomeetrit"}
            }
            cubic-meter{
                dnam{"kuupmeetrid"}
                one{"{0} kuupmeeter"}
                other{"{0} kuupmeetrit"}
            }
            cubic-mile{
                dnam{"kuupmiili"}
                one{"{0} kuupmiil"}
                other{"{0} kuupmiili"}
            }
            cubic-yard{
                dnam{"kuupjardid"}
                one{"{0} kuupjard"}
                other{"{0} kuupjardi"}
            }
            cup{
                dnam{"tassid"}
                one{"{0} tass"}
                other{"{0} tassi"}
            }
            deciliter{
                dnam{"detsiliitrid"}
                one{"{0} detsiliiter"}
                other{"{0} detsiliitrit"}
            }
            fluid-ounce{
                dnam{"vedelike untsid"}
                one{"{0} vedelike unts"}
                other{"{0} vedelike untsi"}
            }
            gallon{
                dnam{"gallonid"}
                one{"{0} gallon"}
                other{"{0} gallonit"}
            }
            hectoliter{
                dnam{"hektoliitrid"}
                one{"{0} hektoliiter"}
                other{"{0} hektoliitrit"}
            }
            liter{
                dnam{"liitrid"}
                one{"{0} liiter"}
                other{"{0} liitrit"}
            }
            megaliter{
                dnam{"megaliitrid"}
                one{"{0} megaliiter"}
                other{"{0} megaliitrit"}
            }
            milliliter{
                dnam{"milliliitrid"}
                one{"{0} milliliiter"}
                other{"{0} milliliitrit"}
            }
            pint{
                dnam{"pindid"}
                one{"{0} pint"}
                other{"{0} pinti"}
            }
            quart{
                dnam{"kvardid"}
                one{"{0} kvart"}
                other{"{0} kvarti"}
            }
            tablespoon{
                dnam{"supilusikatäis"}
                one{"{0} supilusikatäis"}
                other{"{0} supilusikatäit"}
            }
            teaspoon{
                dnam{"teelusikatäis"}
                one{"{0} teelusikatäis"}
                other{"{0} teelusikatäit"}
            }
        }
    }
    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} aaker"}
                other{"{0} aakrit"}
            }
            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{"ööpäeva"}
                one{"{0} p"}
                other{"{0} p"}
            }
            hour{
                dnam{"h"}
                one{"{0} h"}
                other{"{0} h"}
            }
            millisecond{
                dnam{"millisekundit"}
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"kuud"}
                one{"{0} k"}
                other{"{0} k"}
            }
            second{
                dnam{"s"}
                one{"{0} s"}
                other{"{0} s"}
            }
            week{
                dnam{"nädalad"}
                one{"{0} n"}
                other{"{0} n"}
            }
            year{
                dnam{"a"}
                one{"{0} a"}
                other{"{0} a"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} jalg"}
                other{"{0} jalga"}
            }
            inch{
                one{"{0} toll"}
                other{"{0} tolli"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} valgusa."}
                other{"{0} valgusa."}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} miil"}
                other{"{0} miili"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} jard"}
                other{"{0} jardi"}
            }
        }
        mass{
            gram{
                dnam{"gramm"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} oz"}
                other{"{0} oz"}
            }
            pound{
                one{"{0} lb"}
                other{"{0} lb"}
            }
            ton{
                dnam{"lüh. tonnid"}
                one{"{0} lüh. t"}
                other{"{0} lüh. t"}
            }
        }
        power{
            horsepower{
                one{"{0} hj"}
                other{"{0} hj"}
            }
            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} toll Hg"}
                other{"{0} tolli Hg"}
            }
            millibar{
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0}km/h"}
                other{"{0}km/h"}
            }
            meter-per-second{
                one{"{0}m/s"}
                other{"{0}m/s"}
            }
            mile-per-hour{
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °"}
                other{"{0} °"}
            }
            fahrenheit{
                dnam{"°F"}
                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{"liiter"}
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"maa gravitatsioon"}
                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{"kaareminut"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"kaaresekund"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"kraadi"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"radiaanid"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"aakrid"}
                one{"{0} aaker"}
                other{"{0} aakrit"}
            }
            hectare{
                dnam{"hektarid"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                dnam{"ruutjalga"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"ruuttollid"}
                one{"{0} in²"}
                other{"{0} in²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"mi²"}
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"ruutjardid"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"liitrit/km"}
                one{"{0} L/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"miil/gallon"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        digital{
            bit{
                dnam{"bitt"}
                one{"{0} b"}
                other{"{0} b"}
            }
            byte{
                dnam{"bait"}
                one{"{0} bait"}
                other{"{0} baiti"}
            }
            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{
            day{
                dnam{"ööpäeva"}
                one{"{0} päev"}
                other{"{0} päeva"}
            }
            hour{
                dnam{"h"}
                one{"{0} h"}
                other{"{0} h"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"millisekundit"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"kuud"}
                one{"{0} kuu"}
                other{"{0} kuud"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"s"}
                one{"{0} s"}
                other{"{0} s"}
                per{"{0}/s"}
            }
            week{
                dnam{"nädalad"}
                one{"{0} nädal"}
                other{"{0} nädalat"}
            }
            year{
                dnam{"aastad"}
                one{"{0} a"}
                other{"{0} a"}
            }
        }
        electric{
            ampere{
                dnam{"amprid"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"milliamprid"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"oomid"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"voldid"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                dnam{"Cal"}
                one{"{0} Cal"}
                other{"{0} Cal"}
            }
            joule{
                dnam{"džaulid"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"kJ"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kW-tund"}
                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{"aü"}
                one{"{0} aü"}
                other{"{0} aü"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"ft"}
                one{"{0} jalg"}
                other{"{0} jalga"}
            }
            inch{
                dnam{"in"}
                one{"{0} toll"}
                other{"{0} tolli"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"valgusaastad"}
                one{"{0} valgusa."}
                other{"{0} valgusa."}
            }
            meter{
                dnam{"meetrid"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                one{"{0} miil"}
                other{"{0} miili"}
            }
            millimeter{
                dnam{"mm"}
                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{"parsekid"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"jardi"}
                one{"{0} jard"}
                other{"{0} jardi"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"karaat"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
            gram{
                dnam{"grammi"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{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{"oz"}
                one{"{0} oz"}
                other{"{0} oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                one{"{0} lb"}
                other{"{0} lb"}
            }
            ton{
                dnam{"lüh. tonnid"}
                one{"{0} lüh. t"}
                other{"{0} lüh. t"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"hj"}
                one{"{0} hj"}
                other{"{0} hj"}
            }
            kilowatt{
                dnam{"kW"}
                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{"vatid"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"tolli elavhõbedasammast"}
                one{"{0} toll Hg"}
                other{"{0} tolli Hg"}
            }
            millibar{
                dnam{"mbar"}
                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"}
            }
        }
        proportion{
            karat{
                dnam{"karaat"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                dnam{"m/s"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        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{"aaker ft"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0} cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"kuuptollid"}
                one{"{0} toll³"}
                other{"{0} tolli³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"kuupmiili"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"kuupjardid"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"tass"}
                one{"{0} tass"}
                other{"{0} tassi"}
            }
            deciliter{
                dnam{"dl"}
                one{"{0} dl"}
                other{"{0} dl"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"liitrid"}
                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{"pindid"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            quart{
                dnam{"kvart"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"spl"}
                one{"{0} spl"}
                other{"{0} spl"}
            }
            teaspoon{
                dnam{"tl"}
                one{"{0} tl"}
                other{"{0} tl"}
            }
        }
    }
}
