﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/hu.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/hu.xml
 */
hu{
    Version{"2.1.8.9"}
    units{
        acceleration{
            g-force{
                dnam{"G gyorsulás"}
                one{"{0} G gyorsulás"}
                other{"{0} G gyorsulás"}
            }
            meter-per-second-squared{
                dnam{"méter per másodpercnégyzet"}
                one{"{0} méter per másodpercnégyzet"}
                other{"{0} méter per másodpercnégyzet"}
            }
        }
        angle{
            arc-minute{
                dnam{"ívperc"}
                one{"{0} ívperc"}
                other{"{0} ívperc"}
            }
            arc-second{
                dnam{"ívmásodperc"}
                one{"{0} ívmásodperc"}
                other{"{0} ívmásodperc"}
            }
            degree{
                dnam{"fok"}
                one{"{0} fok"}
                other{"{0} fok"}
            }
            radian{
                dnam{"radián"}
                one{"{0} radián"}
                other{"{0} radián"}
            }
        }
        area{
            acre{
                dnam{"hold"}
                one{"{0} hold"}
                other{"{0} hold"}
            }
            hectare{
                dnam{"hektár"}
                one{"{0} hektár"}
                other{"{0} hektár"}
            }
            square-centimeter{
                dnam{"négyzetcentiméter"}
                one{"{0} négyzetcentiméter"}
                other{"{0} négyzetcentiméter"}
            }
            square-foot{
                dnam{"négyzetláb"}
                one{"{0} négyzetláb"}
                other{"{0} négyzetláb"}
            }
            square-inch{
                dnam{"négyzethüvelyk"}
                one{"{0} négyzethüvelyk"}
                other{"{0} négyzethüvelyk"}
            }
            square-kilometer{
                dnam{"négyzetkilométer"}
                one{"{0} négyzetkilométer"}
                other{"{0} négyzetkilométer"}
            }
            square-meter{
                dnam{"négyzetméter"}
                one{"{0} négyzetméter"}
                other{"{0} négyzetméter"}
            }
            square-mile{
                dnam{"négyzetmérföld"}
                one{"{0} négyzetmérföld"}
                other{"{0} négyzetmérföld"}
            }
            square-yard{
                dnam{"négyzetyard"}
                one{"{0} négyzetyard"}
                other{"{0} négyzetyard"}
            }
        }
        compound{
            per{"{0} per {1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"liter per kilométer"}
                one{"{0} liter per kilométer"}
                other{"{0} liter per kilométer"}
            }
            mile-per-gallon{
                dnam{"mérföld per gallon"}
                one{"{0} mérföld per gallon"}
                other{"{0} mérföld per gallon"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"bájt"}
                one{"{0} bájt"}
                other{"{0} bájt"}
            }
            gigabit{
                dnam{"gigabit"}
                one{"{0} gigabit"}
                other{"{0} gigabit"}
            }
            gigabyte{
                dnam{"gigabájt"}
                one{"{0} gigabájt"}
                other{"{0} gigabájt"}
            }
            kilobit{
                dnam{"kilobit"}
                one{"{0} kilobit"}
                other{"{0} kilobit"}
            }
            kilobyte{
                dnam{"kilobájt"}
                one{"{0} kilobájt"}
                other{"{0} kilobájt"}
            }
            megabit{
                dnam{"megabit"}
                one{"{0} megabit"}
                other{"{0} megabit"}
            }
            megabyte{
                dnam{"megabájt"}
                one{"{0} megabájt"}
                other{"{0} megabájt"}
            }
            terabit{
                dnam{"terabit"}
                one{"{0} terabit"}
                other{"{0} terabit"}
            }
            terabyte{
                dnam{"terabájt"}
                one{"{0} terabájt"}
                other{"{0} terabájt"}
            }
        }
        duration{
            day{
                dnam{"nap"}
                one{"{0} nap"}
                other{"{0} nap"}
            }
            hour{
                dnam{"óra"}
                one{"{0} óra"}
                other{"{0} óra"}
                per{"{0}/óra"}
            }
            microsecond{
                dnam{"mikroszekundum"}
                one{"{0} mikroszekundum"}
                other{"{0} mikroszekundum"}
            }
            millisecond{
                dnam{"ezredmásodperc"}
                one{"{0} ezredmásodperc"}
                other{"{0} ezredmásodperc"}
            }
            minute{
                dnam{"perc"}
                one{"{0} perc"}
                other{"{0} perc"}
            }
            month{
                dnam{"hónap"}
                one{"{0} hónap"}
                other{"{0} hónap"}
            }
            nanosecond{
                dnam{"nanoszekundum"}
                one{"{0} nanoszekundum"}
                other{"{0} nanoszekundum"}
            }
            second{
                dnam{"másodperc"}
                one{"{0} másodperc"}
                other{"{0} másodperc"}
                per{"{0}/másodperc"}
            }
            week{
                dnam{"hét"}
                one{"{0} hét"}
                other{"{0} hét"}
            }
            year{
                dnam{"év"}
                one{"{0} év"}
                other{"{0} év"}
            }
        }
        electric{
            ampere{
                dnam{"amper"}
                one{"{0} amper"}
                other{"{0} amper"}
            }
            milliampere{
                dnam{"milliamper"}
                one{"{0} milliamper"}
                other{"{0} milliamper"}
            }
            ohm{
                dnam{"ohm"}
                one{"{0} ohm"}
                other{"{0} ohm"}
            }
            volt{
                dnam{"volt"}
                one{"{0} volt"}
                other{"{0} volt"}
            }
        }
        energy{
            calorie{
                dnam{"kalória"}
                one{"{0} kalória"}
                other{"{0} kalória"}
            }
            foodcalorie{
                dnam{"kalória"}
                one{"{0} kalória"}
                other{"{0} kalória"}
            }
            joule{
                dnam{"joule"}
                one{"{0} joule"}
                other{"{0} joule"}
            }
            kilocalorie{
                dnam{"kilokalória"}
                one{"{0} kilokalória"}
                other{"{0} kilokalória"}
            }
            kilojoule{
                dnam{"kilojoule"}
                one{"{0} kilojoule"}
                other{"{0} kilojoule"}
            }
            kilowatt-hour{
                dnam{"kilowattóra"}
                one{"{0} kilowattóra"}
                other{"{0} kilowattóra"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigahertz"}
                one{"{0} gigahertz"}
                other{"{0} gigahertz"}
            }
            hertz{
                dnam{"hertz"}
                one{"{0} hertz"}
                other{"{0} hertz"}
            }
            kilohertz{
                dnam{"kilohertz"}
                one{"{0} kilohertz"}
                other{"{0} kilohertz"}
            }
            megahertz{
                dnam{"megahertz"}
                one{"{0} megahertz"}
                other{"{0} megahertz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"csillagászati egység"}
                one{"{0} csillagászati egység"}
                other{"{0} csillagászati egység"}
            }
            centimeter{
                dnam{"centiméter"}
                one{"{0} centiméter"}
                other{"{0} centiméter"}
            }
            decimeter{
                dnam{"deciméter"}
                one{"{0} deciméter"}
                other{"{0} deciméter"}
            }
            foot{
                dnam{"láb"}
                one{"{0} láb"}
                other{"{0} láb"}
            }
            inch{
                dnam{"hüvelyk"}
                one{"{0} hüvelyk"}
                other{"{0} hüvelyk"}
            }
            kilometer{
                dnam{"kilométer"}
                one{"{0} kilométer"}
                other{"{0} kilométer"}
            }
            light-year{
                dnam{"fényév"}
                one{"{0} fényév"}
                other{"{0} fényév"}
            }
            meter{
                dnam{"méter"}
                one{"{0} méter"}
                other{"{0} méter"}
            }
            micrometer{
                dnam{"mikrométer"}
                one{"{0} mikrométer"}
                other{"{0} mikrométer"}
            }
            mile{
                dnam{"mérföld"}
                one{"{0} mérföld"}
                other{"{0} mérföld"}
            }
            millimeter{
                dnam{"milliméter"}
                one{"{0} milliméter"}
                other{"{0} milliméter"}
            }
            nanometer{
                dnam{"nanométer"}
                one{"{0} nanométer"}
                other{"{0} nanométer"}
            }
            nautical-mile{
                dnam{"tengeri mérföld"}
                one{"{0} tengeri mérföld"}
                other{"{0} tengeri mérföld"}
            }
            parsec{
                dnam{"parszek"}
                one{"{0} parszek"}
                other{"{0} parszek"}
            }
            picometer{
                dnam{"pikométer"}
                one{"{0} pikométer"}
                other{"{0} pikométer"}
            }
            yard{
                dnam{"yard"}
                one{"{0} yard"}
                other{"{0} yard"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lux"}
                other{"{0} lux"}
            }
        }
        mass{
            carat{
                dnam{"karát"}
                one{"{0} karát"}
                other{"{0} karát"}
            }
            gram{
                dnam{"gramm"}
                one{"{0} gramm"}
                other{"{0} gramm"}
            }
            kilogram{
                dnam{"kilogramm"}
                one{"{0} kilogramm"}
                other{"{0} kilogramm"}
            }
            metric-ton{
                dnam{"metrikus tonna"}
                one{"{0} metrikus tonna"}
                other{"{0} metrikus tonna"}
            }
            microgram{
                dnam{"mikrogramm"}
                one{"{0} mikrogramm"}
                other{"{0} mikrogramm"}
            }
            milligram{
                dnam{"milligramm"}
                one{"{0} milligramm"}
                other{"{0} milligramm"}
            }
            ounce{
                dnam{"uncia"}
                one{"{0} uncia"}
                other{"{0} uncia"}
            }
            ounce-troy{
                dnam{"troy uncia"}
                one{"{0} troy uncia"}
                other{"{0} troy uncia"}
            }
            pound{
                dnam{"font"}
                one{"{0} font"}
                other{"{0} font"}
            }
            ton{
                dnam{"tonna"}
                one{"{0} tonna"}
                other{"{0} tonna"}
            }
        }
        power{
            gigawatt{
                dnam{"gigawatt"}
                one{"{0} gigawatt"}
                other{"{0} gigawatt"}
            }
            horsepower{
                dnam{"lóerő"}
                one{"{0} lóerő"}
                other{"{0} lóerő"}
            }
            kilowatt{
                dnam{"kilowatt"}
                one{"{0} kilowatt"}
                other{"{0} kilowatt"}
            }
            megawatt{
                dnam{"megawatt"}
                one{"{0} megawatt"}
                other{"{0} megawatt"}
            }
            milliwatt{
                dnam{"milliwatt"}
                one{"{0} milliwatt"}
                other{"{0} milliwatt"}
            }
            watt{
                dnam{"watt"}
                one{"{0} watt"}
                other{"{0} watt"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopascal"}
                one{"{0} hektopascal"}
                other{"{0} hektopascal"}
            }
            inch-hg{
                dnam{"higanyhüvelyk"}
                one{"{0} higanyhüvelyk"}
                other{"{0} higanyhüvelyk"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} millibar"}
                other{"{0} millibar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} higanymilliméter"}
                other{"{0} higanymilliméter"}
            }
            pound-per-square-inch{
                dnam{"font per négyzethüvelyk"}
                one{"{0} font per négyzethüvelyk"}
                other{"{0} font per négyzethüvelyk"}
            }
        }
        proportion{
            karat{
                dnam{"karát"}
                one{"{0} karát"}
                other{"{0} karát"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilométer per óra"}
                one{"{0} kilométer per óra"}
                other{"{0} kilométer per óra"}
            }
            meter-per-second{
                dnam{"méter per másodperc"}
                one{"{0} méter per másodperc"}
                other{"{0} méter per másodperc"}
            }
            mile-per-hour{
                dnam{"mérföld per óra"}
                one{"{0} mérföld per óra"}
                other{"{0} mérföld per óra"}
            }
        }
        temperature{
            celsius{
                dnam{"Celsius-fok"}
                one{"{0} Celsius-fok"}
                other{"{0} Celsius-fok"}
            }
            fahrenheit{
                dnam{"Fahrenheit-fok"}
                one{"{0} Fahrenheit-fok"}
                other{"{0} Fahrenheit-fok"}
            }
            kelvin{
                dnam{"kelvin"}
                one{"{0} kelvin"}
                other{"{0} kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"hold-láb"}
                one{"{0} hold-láb"}
                other{"{0} hold-láb"}
            }
            centiliter{
                dnam{"centiliter"}
                one{"{0} centiliter"}
                other{"{0} centiliter"}
            }
            cubic-centimeter{
                dnam{"köbcentiméter"}
                one{"{0} köbcentiméter"}
                other{"{0} köbcentiméter"}
            }
            cubic-foot{
                dnam{"köbláb"}
                one{"{0} köbláb"}
                other{"{0} köbláb"}
            }
            cubic-inch{
                dnam{"köbhüvelyk"}
                one{"{0} köbhüvelyk"}
                other{"{0} köbhüvelyk"}
            }
            cubic-kilometer{
                dnam{"köbkilométer"}
                one{"{0} köbkilométer"}
                other{"{0} köbkilométer"}
            }
            cubic-meter{
                dnam{"köbméter"}
                one{"{0} köbméter"}
                other{"{0} köbméter"}
            }
            cubic-mile{
                dnam{"köbmérföld"}
                one{"{0} köbmérföld"}
                other{"{0} köbmérföld"}
            }
            cubic-yard{
                dnam{"köbyard"}
                one{"{0} köbyard"}
                other{"{0} köbyard"}
            }
            cup{
                dnam{"csésze"}
                one{"{0} csésze"}
                other{"{0} csésze"}
            }
            deciliter{
                dnam{"deciliter"}
                one{"{0} deciliter"}
                other{"{0} deciliter"}
            }
            fluid-ounce{
                dnam{"folyadékuncia"}
                one{"{0} folyadékuncia"}
                other{"{0} folyadékuncia"}
            }
            gallon{
                dnam{"gallon"}
                one{"{0} gallon"}
                other{"{0} gallon"}
            }
            hectoliter{
                dnam{"hektoliter"}
                one{"{0} hektoliter"}
                other{"{0} hektoliter"}
            }
            liter{
                dnam{"liter"}
                one{"{0} liter"}
                other{"{0} liter"}
            }
            megaliter{
                dnam{"megaliter"}
                one{"{0} megaliter"}
                other{"{0} megaliter"}
            }
            milliliter{
                dnam{"milliliter"}
                one{"{0} milliliter"}
                other{"{0} milliliter"}
            }
            pint{
                dnam{"pint"}
                one{"{0} pint"}
                other{"{0} pint"}
            }
            quart{
                dnam{"quart"}
                one{"{0} quart"}
                other{"{0} quart"}
            }
            tablespoon{
                dnam{"evőkanál"}
                one{"{0} evőkanál"}
                other{"{0} evőkanál"}
            }
            teaspoon{
                dnam{"kávéskanál"}
                one{"{0} kávéskanál"}
                other{"{0} kávéskanál"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0} G"}
                other{"{0} G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                dnam{"nap"}
                one{"{0} nap"}
                other{"{0} nap"}
            }
            hour{
                dnam{"h"}
                one{"{0} h"}
                other{"{0} h"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"hónap"}
                one{"{0} h."}
                other{"{0} h."}
            }
            second{
                dnam{"s"}
                one{"{0} s"}
                other{"{0} s"}
            }
            week{
                dnam{"hét"}
                one{"{0} hét"}
                other{"{0} hét"}
            }
            year{
                dnam{"év"}
                one{"{0} év"}
                other{"{0} év"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} láb"}
                other{"{0} láb"}
            }
            inch{
                one{"{0} hüvelyk"}
                other{"{0} hüvelyk"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} fényév"}
                other{"{0} fényév"}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mf"}
                other{"{0} mf"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} uncia"}
                other{"{0} uncia"}
            }
            pound{
                one{"{0} font"}
                other{"{0} font"}
            }
        }
        power{
            horsepower{
                one{"{0} LE"}
                other{"{0} LE"}
            }
            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{"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} mph"}
                other{"{0} mph"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °C"}
                other{"{0} °C"}
            }
            fahrenheit{
                one{"{0} °F"}
                other{"{0} °F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            liter{
                dnam{"l"}
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"G gyorsulás"}
                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{"ívperc"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"ívmásodperc"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"fok"}
                one{"{0} fok"}
                other{"{0} fok"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"kh"}
                one{"{0} kh"}
                other{"{0} kh"}
            }
            hectare{
                dnam{"ha"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                dnam{"ft²"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                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{"mf²"}
                one{"{0} mf²"}
                other{"{0} mf²"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            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"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"bájt"}
                one{"{0} bájt"}
                other{"{0} bájt"}
            }
            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{"nap"}
                one{"{0} nap"}
                other{"{0} nap"}
            }
            hour{
                dnam{"h"}
                one{"{0} h"}
                other{"{0} h"}
                per{"{0}/h"}
            }
            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"}
            }
            month{
                dnam{"hónap"}
                one{"{0} hónap"}
                other{"{0} hónap"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"s"}
                one{"{0} s"}
                other{"{0} s"}
                per{"{0}/s"}
            }
            week{
                dnam{"hét"}
                one{"{0} hét"}
                other{"{0} hét"}
            }
            year{
                dnam{"év"}
                one{"{0} év"}
                other{"{0} év"}
            }
        }
        electric{
            ampere{
                dnam{"A"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"Ω"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"V"}
                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{"J"}
                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{"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{"CsE"}
                one{"{0} CsE"}
                other{"{0} CsE"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"láb"}
                one{"{0} láb"}
                other{"{0} láb"}
            }
            inch{
                dnam{"hüvelyk"}
                one{"{0} hüvelyk"}
                other{"{0} hüvelyk"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"fényév"}
                one{"{0} fényév"}
                other{"{0} fényév"}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mf"}
                one{"{0} mf"}
                other{"{0} mf"}
            }
            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{"pc"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"yd"}
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"Kt"}
                one{"{0} Kt"}
                other{"{0} Kt"}
            }
            gram{
                dnam{"g"}
                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{"tn"}
                one{"{0} tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"LE"}
                one{"{0} LE"}
                other{"{0} LE"}
            }
            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{"W"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"inHg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mb"}
                other{"{0} mb"}
            }
            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{"kt"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        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{"mph"}
                one{"{0} mph"}
                other{"{0} mph"}
            }
        }
        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{"ac 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{"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³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"cs."}
                one{"{0} cs."}
                other{"{0} cs."}
            }
            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{"l"}
                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{"pt"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            quart{
                dnam{"qt"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"ek."}
                one{"{0} ek."}
                other{"{0} ek."}
            }
            teaspoon{
                dnam{"kk."}
                one{"{0} kk."}
                other{"{0} kk."}
            }
        }
    }
}
