﻿// ***************************************************************************
// *
// * 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{"{0} 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"}
            }
        }
    }
}
