﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/de.xml
// *
// ***************************************************************************
de{
    Version{"2.1.19.72"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"g-Kraft"}
                one{"{0}-fache Erdbeschleunigung"}
                other{"{0}-fache Erdbeschleunigung"}
            }
            meter-per-second-squared{
                dnam{"Meter pro Quadratsekunde"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"Winkelminuten"}
                one{"{0} Winkelminute"}
                other{"{0} Winkelminuten"}
            }
            arc-second{
                dnam{"Winkelsekunden"}
                one{"{0} Winkelsekunde"}
                other{"{0} Winkelsekunden"}
            }
            degree{
                dnam{"Grad"}
                one{"{0} Grad"}
                other{"{0} Grad"}
            }
            radian{
                dnam{"Radianten"}
                one{"{0} Radiant"}
                other{"{0} Radianten"}
            }
            revolution{
                dnam{"Umdrehung"}
                one{"{0} Umdrehung"}
                other{"{0} Umdrehungen"}
            }
        }
        area{
            acre{
                dnam{"Acres"}
                one{"{0} Acre"}
                other{"{0} Acres"}
            }
            hectare{
                dnam{"Hektar"}
                one{"{0} Hektar"}
                other{"{0} Hektar"}
            }
            square-centimeter{
                dnam{"Quadratzentimeter"}
                one{"{0} Quadratzentimeter"}
                other{"{0} Quadratzentimeter"}
                per{"{0} pro Quadratzentimeter"}
            }
            square-foot{
                dnam{"Quadratfuß"}
                one{"{0} Quadratfuß"}
                other{"{0} Quadratfuß"}
            }
            square-inch{
                dnam{"Quadratzoll"}
                one{"{0} Quadratzoll"}
                other{"{0} Quadratzoll"}
                per{"{0} pro Quadratzoll"}
            }
            square-kilometer{
                dnam{"Quadratkilometer"}
                one{"{0} Quadratkilometer"}
                other{"{0} Quadratkilometer"}
            }
            square-meter{
                dnam{"Quadratmeter"}
                one{"{0} Quadratmeter"}
                other{"{0} Quadratmeter"}
                per{"{0} pro Quadratmeter"}
            }
            square-mile{
                dnam{"Quadratmeilen"}
                one{"{0} Quadratmeile"}
                other{"{0} Quadratmeilen"}
            }
            square-yard{
                dnam{"Quadratyards"}
                one{"{0} Quadratyard"}
                other{"{0} Quadratyards"}
            }
        }
        compound{
            per{"{0} pro {1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"Liter auf 100 Kilometer"}
                one{"{0} Liter auf 100 Kilometer"}
                other{"{0} Liter auf 100 Kilometer"}
            }
            liter-per-kilometer{
                dnam{"Liter pro Kilometer"}
                one{"{0} Liter pro Kilometer"}
                other{"{0} Liter pro Kilometer"}
            }
            mile-per-gallon{
                dnam{"Meilen pro Gallone"}
                one{"{0} Meile pro Gallone"}
                other{"{0} Meilen pro Gallone"}
            }
        }
        coordinate{
            east{"{0} Ost"}
            north{"{0} Nord"}
            south{"{0} Süd"}
            west{"{0} West"}
        }
        digital{
            bit{
                dnam{"Bits"}
                one{"{0} Bit"}
                other{"{0} Bits"}
            }
            byte{
                dnam{"Bytes"}
                one{"{0} Byte"}
                other{"{0} Bytes"}
            }
            gigabit{
                dnam{"Gigabits"}
                one{"{0} Gigabit"}
                other{"{0} Gigabits"}
            }
            gigabyte{
                dnam{"Gigabytes"}
                one{"{0} Gigabyte"}
                other{"{0} Gigabytes"}
            }
            kilobit{
                dnam{"Kilobits"}
                one{"{0} Kilobit"}
                other{"{0} Kilobits"}
            }
            kilobyte{
                dnam{"Kilobytes"}
                one{"{0} Kilobyte"}
                other{"{0} Kilobytes"}
            }
            megabit{
                dnam{"Megabits"}
                one{"{0} Megabit"}
                other{"{0} Megabits"}
            }
            megabyte{
                dnam{"Megabytes"}
                one{"{0} Megabyte"}
                other{"{0} Megabytes"}
            }
            terabit{
                dnam{"Terabits"}
                one{"{0} Terabit"}
                other{"{0} Terabits"}
            }
            terabyte{
                dnam{"Terabytes"}
                one{"{0} Terabyte"}
                other{"{0} Terabytes"}
            }
        }
        duration{
            century{
                dnam{"Jahrhunderte"}
                one{"{0} Jahrhundert"}
                other{"{0} Jahrhunderte"}
            }
            day{
                dnam{"Tage"}
                one{"{0} Tag"}
                other{"{0} Tage"}
                per{"{0} pro Tag"}
            }
            hour{
                dnam{"Stunden"}
                one{"{0} Stunde"}
                other{"{0} Stunden"}
                per{"{0} pro Stunde"}
            }
            microsecond{
                dnam{"Mikrosekunden"}
                one{"{0} Mikrosekunde"}
                other{"{0} Mikrosekunden"}
            }
            millisecond{
                dnam{"Millisekunden"}
                one{"{0} Millisekunde"}
                other{"{0} Millisekunden"}
            }
            minute{
                dnam{"Minuten"}
                one{"{0} Minute"}
                other{"{0} Minuten"}
                per{"{0} pro Minute"}
            }
            month{
                dnam{"Monate"}
                one{"{0} Monat"}
                other{"{0} Monate"}
                per{"{0} pro Monat"}
            }
            nanosecond{
                dnam{"Nanosekunden"}
                one{"{0} Nanosekunde"}
                other{"{0} Nanosekunden"}
            }
            second{
                dnam{"Sekunden"}
                one{"{0} Sekunde"}
                other{"{0} Sekunden"}
                per{"{0} pro Sekunde"}
            }
            week{
                dnam{"Wochen"}
                one{"{0} Woche"}
                other{"{0} Wochen"}
                per{"{0} pro Woche"}
            }
            year{
                dnam{"Jahre"}
                one{"{0} Jahr"}
                other{"{0} Jahre"}
                per{"{0} pro Jahr"}
            }
        }
        electric{
            ampere{
                dnam{"Ampere"}
                one{"{0} Ampere"}
                other{"{0} Ampere"}
            }
            milliampere{
                dnam{"Milliampere"}
                one{"{0} Milliampere"}
                other{"{0} Milliampere"}
            }
            ohm{
                dnam{"Ohm"}
                one{"{0} Ohm"}
                other{"{0} Ohm"}
            }
            volt{
                dnam{"Volt"}
                one{"{0} Volt"}
                other{"{0} Volt"}
            }
        }
        energy{
            calorie{
                dnam{"Kalorien"}
                one{"{0} Kalorie"}
                other{"{0} Kalorien"}
            }
            foodcalorie{
                dnam{"Kilokalorien"}
                one{"{0} Kilokalorien"}
                other{"{0} Kilokalorien"}
            }
            joule{
                dnam{"Joule"}
                one{"{0} Joule"}
                other{"{0} Joule"}
            }
            kilocalorie{
                dnam{"Kilokalorien"}
                one{"{0} Kilokalorie"}
                other{"{0} Kilokalorien"}
            }
            kilojoule{
                dnam{"Kilojoule"}
                one{"{0} Kilojoule"}
                other{"{0} Kilojoule"}
            }
            kilowatt-hour{
                dnam{"Kilowattstunden"}
                one{"{0} Kilowattstunde"}
                other{"{0} Kilowattstunden"}
            }
        }
        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{"Astronomische Einheiten"}
                one{"{0} AE"}
                other{"{0} AE"}
            }
            centimeter{
                dnam{"Zentimeter"}
                one{"{0} Zentimeter"}
                other{"{0} Zentimeter"}
                per{"{0} pro Zentimeter"}
            }
            decimeter{
                dnam{"Dezimeter"}
                one{"{0} Dezimeter"}
                other{"{0} Dezimeter"}
            }
            fathom{
                dnam{"Nautischer Faden"}
                one{"{0} Faden"}
                other{"{0} Faden"}
            }
            foot{
                dnam{"Fuß"}
                one{"{0} Fuß"}
                other{"{0} Fuß"}
                per{"{0} pro Fuß"}
            }
            furlong{
                dnam{"Furlong"}
                one{"{0} Furlong"}
                other{"{0} Furlong"}
            }
            inch{
                dnam{"Zoll"}
                one{"{0} Zoll"}
                other{"{0} Zoll"}
                per{"{0} pro Zoll"}
            }
            kilometer{
                dnam{"Kilometer"}
                one{"{0} Kilometer"}
                other{"{0} Kilometer"}
                per{"{0} pro Kilometer"}
            }
            light-year{
                dnam{"Lichtjahre"}
                one{"{0} Lichtjahr"}
                other{"{0} Lichtjahre"}
            }
            meter{
                dnam{"Meter"}
                one{"{0} Meter"}
                other{"{0} Meter"}
                per{"{0} pro Meter"}
            }
            micrometer{
                dnam{"Mikrometer"}
                one{"{0} Mikrometer"}
                other{"{0} Mikrometer"}
            }
            mile{
                dnam{"Meilen"}
                one{"{0} Meile"}
                other{"{0} Meilen"}
            }
            mile-scandinavian{
                dnam{"skandinavische Meilen"}
                one{"{0} skandinavische Meile"}
                other{"{0} skandinavische Meilen"}
            }
            millimeter{
                dnam{"Millimeter"}
                one{"{0} Millimeter"}
                other{"{0} Millimeter"}
            }
            nanometer{
                dnam{"Nanometer"}
                one{"{0} Nanometer"}
                other{"{0} Nanometer"}
            }
            nautical-mile{
                dnam{"Seemeilen"}
                one{"{0} Seemeile"}
                other{"{0} Seemeilen"}
            }
            parsec{
                dnam{"Parsec"}
                one{"{0} Parsec"}
                other{"{0} Parsec"}
            }
            picometer{
                dnam{"Pikometer"}
                one{"{0} Pikometer"}
                other{"{0} Pikometer"}
            }
            yard{
                dnam{"Yards"}
                one{"{0} Yard"}
                other{"{0} Yards"}
            }
        }
        light{
            lux{
                dnam{"Lux"}
                one{"{0} Lux"}
                other{"{0} Lux"}
            }
        }
        mass{
            carat{
                dnam{"Karat"}
                one{"{0} Karat"}
                other{"{0} Karat"}
            }
            gram{
                dnam{"Gramm"}
                one{"{0} Gramm"}
                other{"{0} Gramm"}
                per{"{0} pro Gramm"}
            }
            kilogram{
                dnam{"Kilogramm"}
                one{"{0} Kilogramm"}
                other{"{0} Kilogramm"}
                per{"{0} pro Kilogramm"}
            }
            metric-ton{
                dnam{"Tonnen"}
                one{"{0} Tonne"}
                other{"{0} Tonnen"}
            }
            microgram{
                dnam{"Mikrogramm"}
                one{"{0} Mikrogramm"}
                other{"{0} Mikrogramm"}
            }
            milligram{
                dnam{"Milligramm"}
                one{"{0} Milligramm"}
                other{"{0} Milligramm"}
            }
            ounce{
                dnam{"Unzen"}
                one{"{0} Unze"}
                other{"{0} Unzen"}
                per{"pro Unze"}
            }
            ounce-troy{
                dnam{"Feinunzen"}
                one{"{0} Feinunze"}
                other{"{0} Feinunzen"}
            }
            pound{
                dnam{"Pfund"}
                one{"{0} Pfund"}
                other{"{0} Pfund"}
                per{"{0} pro Pfund"}
            }
            stone{
                dnam{"Stones"}
                one{"{0} Stone"}
                other{"{0} Stones"}
            }
            ton{
                dnam{"Short Tons"}
                one{"{0} Short Ton"}
                other{"{0} Short Tons"}
            }
        }
        power{
            gigawatt{
                dnam{"Gigawatt"}
                one{"{0} Gigawatt"}
                other{"{0} Gigawatt"}
            }
            horsepower{
                dnam{"Pferdestärken"}
                one{"{0} Pferdestärke"}
                other{"{0} Pferdestärken"}
            }
            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{"Zoll Quecksilbersäule"}
                one{"{0} Zoll Quecksilbersäule"}
                other{"{0} Zoll Quecksilbersäule"}
            }
            millibar{
                dnam{"Millibar"}
                one{"{0} Millibar"}
                other{"{0} Millibar"}
            }
            millimeter-of-mercury{
                dnam{"Millimeter Quecksilbersäule"}
                one{"{0} Millimeter Quecksilbersäule"}
                other{"{0} Millimeter Quecksilbersäule"}
            }
            pound-per-square-inch{
                dnam{"Pfund pro Quadratzoll"}
                one{"{0} Pfund pro Quadratzoll"}
                other{"{0} Pfund pro Quadratzoll"}
            }
        }
        proportion{
            karat{
                dnam{"Karat"}
                one{"{0} Karat"}
                other{"{0} Karat"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"Kilometer pro Stunde"}
                one{"{0} Kilometer pro Stunde"}
                other{"{0} Kilometer pro Stunde"}
            }
            knot{
                dnam{"Knoten"}
                one{"{0} Knoten"}
                other{"{0} Knoten"}
            }
            meter-per-second{
                dnam{"Meter pro Sekunde"}
                one{"{0} Meter pro Sekunde"}
                other{"{0} Meter pro Sekunde"}
            }
            mile-per-hour{
                dnam{"Meilen pro Stunde"}
                one{"{0} Meile pro Stunde"}
                other{"{0} Meilen pro Stunde"}
            }
        }
        temperature{
            celsius{
                dnam{"Grad Celsius"}
                one{"{0} Grad Celsius"}
                other{"{0} Grad Celsius"}
            }
            fahrenheit{
                dnam{"Grad Fahrenheit"}
                one{"{0} Grad Fahrenheit"}
                other{"{0} Grad Fahrenheit"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"Kelvin"}
                one{"{0} Kelvin"}
                other{"{0} Kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"Acre-Feet"}
                one{"{0} Acre-Foot"}
                other{"{0} Acre-Feet"}
            }
            bushel{
                dnam{"Bushel"}
                one{"{0} Bushel"}
                other{"{0} Bushel"}
            }
            centiliter{
                dnam{"Zentiliter"}
                one{"{0} Zentiliter"}
                other{"{0} Zentiliter"}
            }
            cubic-centimeter{
                dnam{"Kubikzentimeter"}
                one{"{0} Kubikzentimeter"}
                other{"{0} Kubikzentimeter"}
                per{"{0} pro Kubikzentimeter"}
            }
            cubic-foot{
                dnam{"Kubikfuß"}
                one{"{0} Kubikfuß"}
                other{"{0} Kubikfuß"}
            }
            cubic-inch{
                dnam{"Kubikzoll"}
                one{"{0} Kubikzoll"}
                other{"{0} Kubikzoll"}
            }
            cubic-kilometer{
                dnam{"Kubikkilometer"}
                one{"{0} Kubikkilometer"}
                other{"{0} Kubikkilometer"}
            }
            cubic-meter{
                dnam{"Kubikmeter"}
                one{"{0} Kubikmeter"}
                other{"{0} Kubikmeter"}
                per{"{0} pro Kubikmeter"}
            }
            cubic-mile{
                dnam{"Kubikmeilen"}
                one{"{0} Kubikmeile"}
                other{"{0} Kubikmeilen"}
            }
            cubic-yard{
                dnam{"Kubikyards"}
                one{"{0} Kubikyard"}
                other{"{0} Kubikyards"}
            }
            cup{
                dnam{"Cups"}
                one{"{0} Cup"}
                other{"{0} Cups"}
            }
            cup-metric{
                dnam{"Tasse"}
                one{"{0} Tasse"}
                other{"{0} Tassen"}
            }
            deciliter{
                dnam{"Deziliter"}
                one{"{0} Deziliter"}
                other{"{0} Deziliter"}
            }
            fluid-ounce{
                dnam{"Flüssigunzen"}
                one{"{0} Flüssigunze"}
                other{"{0} Flüssigunzen"}
            }
            gallon{
                dnam{"Gallonen"}
                one{"{0} Gallone"}
                other{"{0} Gallonen"}
                per{"{0} pro Gallone"}
            }
            hectoliter{
                dnam{"Hektoliter"}
                one{"{0} Hektoliter"}
                other{"{0} Hektoliter"}
            }
            liter{
                dnam{"Liter"}
                one{"{0} Liter"}
                other{"{0} Liter"}
                per{"{0} pro Liter"}
            }
            megaliter{
                dnam{"Megaliter"}
                one{"{0} Megaliter"}
                other{"{0} Megaliter"}
            }
            milliliter{
                dnam{"Milliliter"}
                one{"{0} Milliliter"}
                other{"{0} Milliliter"}
            }
            pint{
                dnam{"Pints"}
                one{"{0} Pint"}
                other{"{0} Pints"}
            }
            pint-metric{
                dnam{"metrische Pints"}
                one{"{0} metrisches Pint"}
                other{"{0} metrische Pints"}
            }
            quart{
                dnam{"Quart"}
                one{"{0} Quart"}
                other{"{0} Quart"}
            }
            tablespoon{
                dnam{"Esslöffel"}
                one{"{0} Esslöffel"}
                other{"{0} Esslöffel"}
            }
            teaspoon{
                dnam{"Teelöffel"}
                one{"{0} Teelöffel"}
                other{"{0} Teelöffel"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                one{"{0} in²"}
                other{"{0} in²"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100 km"}
                one{"{0} L/100 km"}
                other{"{0} L/100 km"}
            }
            liter-per-kilometer{
                one{"{0} l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        coordinate{
            east{"{0}O"}
            north{"{0} N"}
            south{"{0} S"}
            west{"{0} W"}
        }
        digital{
            bit{
                one{"{0} Bit"}
                other{"{0} Bits"}
            }
            byte{
                one{"{0} Byte"}
                other{"{0} Bytes"}
            }
            gigabit{
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"T"}
                one{"{0} T"}
                other{"{0} T"}
            }
            hour{
                dnam{"Std."}
                one{"{0} Std."}
                other{"{0} Std."}
            }
            microsecond{
                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{"M"}
                one{"{0} M"}
                other{"{0} M"}
            }
            nanosecond{
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"Sek."}
                one{"{0} s"}
                other{"{0} s"}
            }
            week{
                dnam{"W"}
                one{"{0} W"}
                other{"{0} W"}
            }
            year{
                dnam{"J"}
                one{"{0} J"}
                other{"{0} J"}
            }
        }
        electric{
            ampere{
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                one{"{0} cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            joule{
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                one{"{0} AE"}
                other{"{0} AE"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                one{"{0} dm"}
                other{"{0} dm"}
            }
            fathom{
                dnam{"Faden"}
                one{"{0} fm"}
                other{"{0} fm"}
            }
            foot{
                one{"{0} ft"}
                other{"{0} ft"}
            }
            furlong{
                dnam{"Furlong"}
                one{"{0} fur"}
                other{"{0} fur"}
            }
            inch{
                one{"{0} in"}
                other{"{0} in"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} ly"}
                other{"{0} ly"}
            }
            meter{
                dnam{"Meter"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
            }
            mile-scandinavian{
                dnam{"smi"}
                one{"{0} smi"}
                other{"{0} smi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                one{"{0} sm"}
                other{"{0} sm"}
            }
            parsec{
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                one{"{0} Kt"}
                other{"{0} Kt"}
            }
            gram{
                dnam{"Gramm"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            metric-ton{
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                one{"{0} oz"}
                other{"{0} oz"}
            }
            ounce-troy{
                one{"{0} oz.tr."}
                other{"{0} oz.tr."}
            }
            pound{
                one{"{0} lb"}
                other{"{0} lb"}
            }
            stone{
                dnam{"Stones"}
                one{"{0} st"}
                other{"{0} st"}
            }
            ton{
                one{"{0} tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                one{"{0} PS"}
                other{"{0} PS"}
            }
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            megawatt{
                one{"{0} MW"}
                other{"{0} MW"}
            }
            milliwatt{
                one{"{0} mW"}
                other{"{0} mW"}
            }
            watt{
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        proportion{
            karat{
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        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{
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            bushel{
                dnam{"Bushel"}
                one{"{0} bu"}
                other{"{0} bu"}
            }
            centiliter{
                one{"{0} cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                one{"{0} in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                one{"{0} Cup"}
                other{"{0} Cups"}
            }
            deciliter{
                one{"{0} dl"}
                other{"{0} dl"}
            }
            fluid-ounce{
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                one{"{0} gal"}
                other{"{0} gal"}
            }
            hectoliter{
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"Liter"}
                one{"{0} l"}
                other{"{0} l"}
            }
            megaliter{
                one{"{0} Ml"}
                other{"{0} Ml"}
            }
            milliliter{
                one{"{0} ml"}
                other{"{0} ml"}
            }
            pint{
                one{"{0} pt"}
                other{"{0} pt"}
            }
            quart{
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                one{"{0} EL"}
                other{"{0} EL"}
            }
            teaspoon{
                one{"{0} TL"}
                other{"{0} TL"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"g-Kraft"}
                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{"Winkelminuten"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"Winkelsekunden"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"Grad"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"Umdr."}
                one{"{0} Umdr."}
                other{"{0} Umdr."}
            }
        }
        area{
            acre{
                dnam{"Acres"}
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                dnam{"Hektar"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"ft²"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                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{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"L/100 km"}
                one{"{0} L/100 km"}
                other{"{0} L/100 km"}
            }
            liter-per-kilometer{
                dnam{"l/km"}
                one{"{0} l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"mpg"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        coordinate{
            east{"{0} O"}
            north{"{0} N"}
            south{"{0} S"}
            west{"{0} W"}
        }
        digital{
            bit{
                dnam{"Bit"}
                one{"{0} Bit"}
                other{"{0} Bits"}
            }
            byte{
                dnam{"Byte"}
                one{"{0} Byte"}
                other{"{0} Bytes"}
            }
            gigabit{
                dnam{"Gigabit"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"Gigabyte"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kbit"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kbyte"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mbit"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"Mbyte"}
                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{"Jh."}
                one{"{0} Jh."}
                other{"{0} Jh."}
            }
            day{
                dnam{"Tg."}
                one{"{0} Tg."}
                other{"{0} Tg."}
                per{"{0}/T"}
            }
            hour{
                dnam{"Std."}
                one{"{0} Std."}
                other{"{0} Std."}
                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."}
                per{"{0}/min"}
            }
            month{
                dnam{"Mon."}
                one{"{0} Mon."}
                other{"{0} Mon."}
                per{"{0}/M"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"Sek."}
                one{"{0} Sek."}
                other{"{0} Sek."}
                per{"{0}/s"}
            }
            week{
                dnam{"Wo."}
                one{"{0} Wo."}
                other{"{0} Wo."}
                per{"{0}/W"}
            }
            year{
                dnam{"J"}
                one{"{0} J"}
                other{"{0} J"}
                per{"{0}/J"}
            }
        }
        electric{
            ampere{
                dnam{"Ampere"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"Ohm"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"Volt"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            joule{
                dnam{"Joule"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"Kilojoule"}
                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{"AE"}
                one{"{0} AE"}
                other{"{0} AE"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            fathom{
                dnam{"Faden"}
                one{"{0} fm"}
                other{"{0} fm"}
            }
            foot{
                dnam{"Fuß"}
                one{"{0} ft"}
                other{"{0} ft"}
                per{"{0}/ft"}
            }
            furlong{
                dnam{"Furlong"}
                one{"{0} fur"}
                other{"{0} fur"}
            }
            inch{
                dnam{"Zoll"}
                one{"{0} in"}
                other{"{0} in"}
                per{"{0}/in"}
            }
            kilometer{
                dnam{"Kilometer"}
                one{"{0} km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"Lichtjahre"}
                one{"{0} Lj"}
                other{"{0} Lj"}
            }
            meter{
                dnam{"Meter"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"Meilen"}
                one{"{0} mi"}
                other{"{0} mi"}
            }
            mile-scandinavian{
                dnam{"smi"}
                one{"{0} smi"}
                other{"{0} smi"}
            }
            millimeter{
                dnam{"Millimeter"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"sm"}
                one{"{0} sm"}
                other{"{0} sm"}
            }
            parsec{
                dnam{"Parsec"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"Pikometer"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"Yards"}
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"Lux"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"Karat"}
                one{"{0} Kt"}
                other{"{0} Kt"}
            }
            gram{
                dnam{"Gramm"}
                one{"{0} g"}
                other{"{0} g"}
                per{"{0}/g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
                per{"{0}/kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"Unzen"}
                one{"{0} oz"}
                other{"{0} oz"}
                per{"{0}/oz"}
            }
            ounce-troy{
                dnam{"oz.tr."}
                one{"{0} oz.tr."}
                other{"{0} oz.tr."}
            }
            pound{
                dnam{"Pfund"}
                one{"{0} lb"}
                other{"{0} lb"}
                per{"{0}/lb"}
            }
            stone{
                dnam{"Stones"}
                one{"{0} st"}
                other{"{0} st"}
            }
            ton{
                dnam{"Tons"}
                one{"{0} tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"Pferdestärken"}
                one{"{0} PS"}
                other{"{0} PS"}
            }
            kilowatt{
                dnam{"Kilowatt"}
                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{"Watt"}
                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{"Millibar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        proportion{
            karat{
                dnam{"Karat"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            knot{
                dnam{"kn"}
                one{"{0} kn"}
                other{"{0} kn"}
            }
            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{"Acre-Feet"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            bushel{
                dnam{"Bushel"}
                one{"{0} bu"}
                other{"{0} bu"}
            }
            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{"in³"}
                one{"{0} in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
                per{"{0}/m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"Cups"}
                one{"{0} Cup"}
                other{"{0} Cups"}
            }
            cup-metric{
                dnam{"mcup"}
                one{"{0} mc"}
                other{"{0} mc"}
            }
            deciliter{
                dnam{"dl"}
                one{"{0} dl"}
                other{"{0} dl"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
                per{"{0}/gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"Liter"}
                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{"Pints"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            pint-metric{
                dnam{"metr. Pints"}
                one{"{0} mpt"}
                other{"{0} mpt"}
            }
            quart{
                dnam{"Quart"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"EL"}
                one{"{0} EL"}
                other{"{0} EL"}
            }
            teaspoon{
                dnam{"TL"}
                one{"{0} TL"}
                other{"{0} TL"}
            }
        }
    }
}
