﻿// ***************************************************************************
// *
// * 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.20.4"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm.ss"}
        ms{"m.ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"Maa raskuskiirendus"}
                one{"{0} Maa raskuskiirendus"}
                other{"{0} Maa raskuskiirendust"}
            }
            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{"kaareminutid"}
                one{"{0} kaareminut"}
                other{"{0} kaareminutit"}
            }
            arc-second{
                dnam{"kaaresekundid"}
                one{"{0} kaaresekund"}
                other{"{0} kaaresekundit"}
            }
            degree{
                dnam{"kraadid"}
                one{"{0} kraad"}
                other{"{0} kraadi"}
            }
            radian{
                dnam{"radiaanid"}
                one{"{0} radiaan"}
                other{"{0} radiaani"}
            }
            revolution{
                dnam{"täispööre"}
                one{"{0} täispööre"}
                other{"{0} täispööret"}
            }
        }
        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"}
                per{"{0} ruutsentimeetri kohta"}
            }
            square-foot{
                dnam{"ruutjalad"}
                one{"{0} ruutjalg"}
                other{"{0} ruutjalga"}
            }
            square-inch{
                dnam{"ruuttollid"}
                one{"{0} ruuttoll"}
                other{"{0} ruuttolli"}
                per{"{0} ruuttolli kohta"}
            }
            square-kilometer{
                dnam{"ruutkilomeetrid"}
                one{"{0} ruutkilomeeter"}
                other{"{0} ruutkilomeetrit"}
            }
            square-meter{
                dnam{"ruutmeetrid"}
                one{"{0} ruutmeeter"}
                other{"{0} ruutmeetrit"}
                per{"{0} ruutmeetri kohta"}
            }
            square-mile{
                dnam{"ruutmiilid"}
                one{"{0} ruutmiil"}
                other{"{0} ruutmiili"}
            }
            square-yard{
                dnam{"ruutjardid"}
                one{"{0} ruutjard"}
                other{"{0} ruutjardi"}
            }
        }
        compound{
            per{"{0} {1} kohta"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"liitrid 100 kilomeetri kohta"}
                one{"liiter 100 kilomeetri kohta"}
                other{"{0} liitrit 100 kilomeetri kohta"}
            }
            liter-per-kilometer{
                dnam{"liitrid kilomeetri kohta"}
                one{"{0} liiter kilomeetri kohta"}
                other{"{0} liitrit kilomeetri kohta"}
            }
            mile-per-gallon{
                dnam{"miilid galloni kohta"}
                one{"{0} miil galloni kohta"}
                other{"{0} miili galloni kohta"}
            }
        }
        coordinate{
            east{"{0} idapikkust"}
            north{"{0} põhjalaiust"}
            south{"{0} lõunalaiust"}
            west{"{0} läänepikkust"}
        }
        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{
            century{
                dnam{"sajandid"}
                one{"{0} sajand"}
                other{"{0} sajandit"}
            }
            day{
                dnam{"ööpäevad"}
                one{"{0} ööpäev"}
                other{"{0} ööpäeva"}
                per{"{0} ööpäevas"}
            }
            hour{
                dnam{"tunnid"}
                one{"{0} tund"}
                other{"{0} tundi"}
                per{"{0} tunnis"}
            }
            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"}
                per{"{0} minutis"}
            }
            month{
                dnam{"kuud"}
                one{"{0} kuu"}
                other{"{0} kuud"}
                per{"{0} kuus"}
            }
            nanosecond{
                dnam{"nanosekundid"}
                one{"{0} nanosekund"}
                other{"{0} nanosekundit"}
            }
            second{
                dnam{"sekundid"}
                one{"{0} sekund"}
                other{"{0} sekundit"}
                per{"{0} sekundis"}
            }
            week{
                dnam{"nädalad"}
                one{"{0} nädal"}
                other{"{0} nädalat"}
                per{"{0} nädalas"}
            }
            year{
                dnam{"aastad"}
                one{"{0} aasta"}
                other{"{0} aastat"}
                per{"{0} aastas"}
            }
        }
        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{"gigahertsid"}
                one{"{0} gigaherts"}
                other{"{0} gigahertsi"}
            }
            hertz{
                dnam{"hertsid"}
                one{"{0} herts"}
                other{"{0} hertsi"}
            }
            kilohertz{
                dnam{"kilohertsid"}
                one{"{0} kiloherts"}
                other{"{0} kilohertsi"}
            }
            megahertz{
                dnam{"megahertsid"}
                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"}
                per{"{0} sentimeetri kohta"}
            }
            decimeter{
                dnam{"detsimeetrid"}
                one{"{0} detsimeeter"}
                other{"{0} detsimeetrit"}
            }
            fathom{
                dnam{"süllad"}
                one{"{0} süld"}
                other{"{0} sülda"}
            }
            foot{
                dnam{"jalad"}
                one{"{0} jalg"}
                other{"{0} jalga"}
                per{"{0} jala kohta"}
            }
            furlong{
                dnam{"furlongid"}
                one{"{0} furlong"}
                other{"{0} furlongi"}
            }
            inch{
                dnam{"tollid"}
                one{"{0} toll"}
                other{"{0} tolli"}
                per{"{0} tolli kohta"}
            }
            kilometer{
                dnam{"kilomeetrid"}
                one{"{0} kilomeeter"}
                other{"{0} kilomeetrit"}
                per{"{0} kilomeetri kohta"}
            }
            light-year{
                dnam{"valgusaastad"}
                one{"{0} valgusaasta"}
                other{"{0} valgusaastat"}
            }
            meter{
                dnam{"meetrid"}
                one{"{0} meeter"}
                other{"{0} meetrit"}
                per{"{0} meetri kohta"}
            }
            micrometer{
                dnam{"mikromeetrid"}
                one{"{0} mikromeeter"}
                other{"{0} mikromeetrit"}
            }
            mile{
                dnam{"miilid"}
                one{"{0} miil"}
                other{"{0} miili"}
            }
            mile-scandinavian{
                dnam{"Skandinaavia miilid"}
                one{"{0} Skandinaavia miil"}
                other{"{0} Skandinaavia 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{"jardid"}
                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{"grammid"}
                one{"{0} gramm"}
                other{"{0} grammi"}
                per{"{0} grammi kohta"}
            }
            kilogram{
                dnam{"kilogrammid"}
                one{"{0} kilogramm"}
                other{"{0} kilogrammi"}
                per{"{0} kilogrammi kohta"}
            }
            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{"untsid"}
                one{"{0} unts"}
                other{"{0} untsi"}
                per{"{0} untsi kohta"}
            }
            ounce-troy{
                dnam{"troiuntsid"}
                one{"{0} troiunts"}
                other{"{0} troiuntsi"}
            }
            pound{
                dnam{"naelad"}
                one{"{0} nael"}
                other{"{0} naela"}
                per{"{0} naela kohta"}
            }
            stone{
                dnam{"kivid"}
                one{"{0} kivi"}
                other{"{0} kivi"}
            }
            ton{
                dnam{"lühikesed tonnid"}
                one{"{0} lühike 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{"tollid elavhõbedasammast"}
                one{"{0} toll elavhõbedasammast"}
                other{"{0} tolli elavhõbedasammast"}
            }
            millibar{
                dnam{"millibaarid"}
                one{"{0} millibaar"}
                other{"{0} millibaari"}
            }
            millimeter-of-mercury{
                dnam{"millimeetrid elavhõbedasammast"}
                one{"{0} millimeeter elavhõbedasammast"}
                other{"{0} millimeetrit elavhõbedasammast"}
            }
            pound-per-square-inch{
                dnam{"naelad 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"}
            }
            knot{
                dnam{"sõlm"}
                one{"{0} sõlm"}
                other{"{0} sõlme"}
            }
            meter-per-second{
                dnam{"meetrid sekundis"}
                one{"{0} meeter sekundis"}
                other{"{0} meetrit sekundis"}
            }
            mile-per-hour{
                dnam{"miilid tunnis"}
                one{"{0} miil tunnis"}
                other{"{0} miili tunnis"}
            }
        }
        temperature{
            celsius{
                dnam{"Celsiuse kraadid"}
                one{"{0} Celsiuse kraad"}
                other{"{0} Celsiuse kraadi"}
            }
            fahrenheit{
                dnam{"Fahrenheiti kraadid"}
                one{"{0} Fahrenheiti kraad"}
                other{"{0} Fahrenheiti kraadi"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"kelvinid"}
                one{"{0} kelvin"}
                other{"{0} kelvinit"}
            }
        }
        volume{
            acre-foot{
                dnam{"aakerjalad"}
                one{"{0} aakerjalg"}
                other{"{0} aakerjalga"}
            }
            bushel{
                dnam{"buššelid"}
                one{"{0} buššel"}
                other{"{0} buššelit"}
            }
            centiliter{
                dnam{"sentiliitrid"}
                one{"{0} sentiliiter"}
                other{"{0} sentiliitrit"}
            }
            cubic-centimeter{
                dnam{"kuupsentimeetrid"}
                one{"{0} kuupsentimeeter"}
                other{"{0} kuupsentimeetrit"}
                per{"{0} kuupsentimeetri kohta"}
            }
            cubic-foot{
                dnam{"kuupjalad"}
                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"}
                per{"{0} kuupmeetri kohta"}
            }
            cubic-mile{
                dnam{"kuupmiilid"}
                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{"vedelikuuntsid"}
                one{"{0} vedelikuunts"}
                other{"{0} vedelikuuntsi"}
            }
            gallon{
                dnam{"gallonid"}
                one{"{0} gallon"}
                other{"{0} gallonit"}
                per{"{0} galloni kohta"}
            }
            hectoliter{
                dnam{"hektoliitrid"}
                one{"{0} hektoliiter"}
                other{"{0} hektoliitrit"}
            }
            liter{
                dnam{"liitrid"}
                one{"{0} liiter"}
                other{"{0} liitrit"}
                per{"{0} liitri kohta"}
            }
            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{"supilusikad"}
                one{"{0} supilusikas"}
                other{"{0} supilusikat"}
            }
            teaspoon{
                dnam{"teelusikad"}
                one{"{0} teelusikas"}
                other{"{0} teelusikat"}
            }
        }
    }
    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}"}
        }
        consumption{
            liter-per-100kilometers{
                one{"{0} l/100km"}
                other{"{0} l/100km"}
            }
        }
        coordinate{
            east{"{0} E"}
            north{"{0} N"}
            south{"{0} S"}
            west{"{0} W"}
        }
        duration{
            day{
                dnam{"päev"}
                one{"{0} p"}
                other{"{0} p"}
            }
            hour{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            millisecond{
                dnam{"ms"}
                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"}
                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 t"}
                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} °C"}
                other{"{0} °C"}
            }
            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 raskuskiirendus"}
                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{"″"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"kraadid"}
                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²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"ruutjalad"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"ruuttollid"}
                one{"{0} in²"}
                other{"{0} in²"}
                per{"{0}/in²"}
            }
            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{"mi²"}
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"ruutjardid"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        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{"miil/gallon"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        coordinate{
            east{"{0} ip"}
            north{"{0} pl"}
            south{"{0} ll"}
            west{"{0} lp"}
        }
        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{
            century{
                dnam{"saj"}
                one{"{0} saj"}
                other{"{0} saj"}
            }
            day{
                dnam{"päevad"}
                one{"{0} päev"}
                other{"{0} päeva"}
                per{"{0}/ööp"}
            }
            hour{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
                per{"{0}/t"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
                per{"{0}/min"}
            }
            month{
                dnam{"kuud"}
                one{"{0} kuu"}
                other{"{0} kuud"}
                per{"{0}/k"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sek"}
                one{"{0} sek"}
                other{"{0} sek"}
                per{"{0}/sek"}
            }
            week{
                dnam{"näd"}
                one{"{0} näd"}
                other{"{0} näd"}
                per{"{0}/näd"}
            }
            year{
                dnam{"aastad"}
                one{"{0} a"}
                other{"{0} a"}
                per{"{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"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            fathom{
                dnam{"süllad"}
            }
            foot{
                dnam{"ft"}
                one{"{0} jalg"}
                other{"{0} jalga"}
            }
            furlong{
                dnam{"furlongid"}
            }
            inch{
                dnam{"in"}
                one{"{0} toll"}
                other{"{0} tolli"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"valgusaastad"}
                one{"{0} valgusa."}
                other{"{0} valgusa."}
            }
            meter{
                dnam{"meetrid"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{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{"jardid"}
                one{"{0} jard"}
                other{"{0} jardi"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"ct"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
            gram{
                dnam{"g"}
                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{"oz"}
                one{"{0} oz"}
                other{"{0} oz"}
                per{"{0}/oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                one{"{0} lb"}
                other{"{0} lb"}
                per{"{0}/lb"}
            }
            stone{
                dnam{"kivid"}
            }
            ton{
                dnam{"lüh t"}
                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{"in Hg"}
                one{"{0} in Hg"}
                other{"{0} in 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"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"aakerjalg"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            bushel{
                dnam{"buššelid"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0} cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
                per{"{0}/cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"kuuptollid"}
                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{"kuupmiilid"}
                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"}
                per{"{0}/gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"liitrid"}
                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{"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"}
            }
        }
    }
}
