﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
ksh{
    Version{"37"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"-fache Erdbeschleunigung"}
                one{"{0}-fache Erdbeschleunigung"}
                other{"{0}-fache Erdbeschleunigung"}
                zero{"{0}-fache Erdbeschleunigung"}
            }
        }
        angle{
            arc-minute{
                dnam{"Winkelmenutte"}
                one{"{0} Winkelmenutte"}
                other{"{0} Winkelmenutte"}
                zero{"{0} Winkelmenutte"}
            }
            arc-second{
                dnam{"Winkelsekunde"}
                one{"{0} Winkelsekunde"}
                other{"{0} Winkelsekunde"}
                zero{"{0} Winkelsekunde"}
            }
            degree{
                dnam{"Graad"}
                one{"{0} Graad"}
                other{"{0} Graad"}
                zero{"{0} Graad"}
            }
        }
        area{
            acre{
                dnam{"angloamerikanischen Acre"}
                one{"{0} angloamerikanische Acre"}
                other{"{0} angloamerikanischen Acre"}
                zero{"{0} angloamerikanischen Acre"}
            }
            hectare{
                dnam{"hektar"}
                one{"{0} hektar"}
                other{"{0} hektar"}
                zero{"{0} hektar"}
            }
            square-foot{
                dnam{"Quadratvoss"}
                one{"{0} Quadratvoss"}
                other{"{0} Quadratvoss"}
                zero{"{0} Quadratvoss"}
            }
            square-kilometer{
                dnam{"Quadratkilometer"}
                one{"{0} Quadratkilometer"}
                other{"{0} Quadratkilometer"}
                zero{"{0} Quadratkilometer"}
            }
            square-meter{
                dnam{"Quadratmeter"}
                one{"{0} Quadratmeter"}
                other{"{0} Quadratmeter"}
                zero{"{0} Quadratmeter"}
            }
            square-mile{
                dnam{"englischen Quadratmeilen"}
                one{"{0} englische Quadratmeile"}
                other{"{0} englischen Quadratmeilen"}
                zero{"{0} englischen Quadratmeilen"}
            }
        }
        compound{
            per{"{0} pro {1}"}
        }
        duration{
            day{
                dnam{"Dääsch"}
                one{"{0} Dääsch"}
                other{"{0} Dääsch"}
                zero{"{0} Dääsch"}
            }
            hour{
                dnam{"Schtunde"}
                one{"{0} Schtunde"}
                other{"{0} Schtunde"}
                zero{"{0} Schtunde"}
            }
            millisecond{
                dnam{"Millisekunde"}
                one{"{0} Millisekunde"}
                other{"{0} Millisekunde"}
                zero{"{0} Millisekunde"}
            }
            minute{
                dnam{"Menutte"}
                one{"{0} Menutte"}
                other{"{0} Menutte"}
                zero{"{0} Menutte"}
            }
            month{
                dnam{"Mohnde"}
                one{"{0} Mohnde"}
                other{"{0} Mohnde"}
                zero{"{0} Mohnde"}
            }
            second{
                dnam{"Sekunde"}
                one{"{0} Sekunde"}
                other{"{0} Sekunde"}
                zero{"{0} Sekunde"}
            }
            week{
                dnam{"Woche"}
                one{"{0} Woche"}
                other{"{0} Woche"}
                zero{"{0} Woche"}
            }
            year{
                dnam{"Johre"}
                one{"{0} Johre"}
                other{"{0} Johre"}
                zero{"{0} Johre"}
            }
        }
        length{
            centimeter{
                dnam{"Zentimeter"}
                one{"{0} Zentimeter"}
                other{"{0} Zentimeter"}
                zero{"{0} Zentimeter"}
            }
            foot{
                dnam{"Voss"}
                one{"{0} Voss"}
                other{"{0} Voss"}
                zero{"{0} Voss"}
            }
            inch{
                dnam{"Dumm"}
                one{"{0} Dumm"}
                other{"{0} Dumm"}
                zero{"{0} Dumm"}
            }
            kilometer{
                dnam{"Kilometer"}
                one{"{0} Kilometer"}
                other{"{0} Kilometer"}
                zero{"{0} Kilometer"}
            }
            meter{
                dnam{"Meter"}
                one{"{0} Meter"}
                other{"{0} Meter"}
                zero{"{0} Meter"}
            }
            mile{
                dnam{"englischen Meilen"}
                one{"{0} englische Meile"}
                other{"{0} englischen Meilen"}
                zero{"{0} englischen Meilen"}
            }
            millimeter{
                dnam{"Millimeter"}
                one{"{0} Millimeter"}
                other{"{0} Millimeter"}
                zero{"{0} Millimeter"}
            }
            picometer{
                dnam{"Pikometer"}
                one{"{0} Pikometer"}
                other{"{0} Pikometer"}
                zero{"{0} Pikometer"}
            }
        }
        mass{
            gram{
                dnam{"Gramm"}
                one{"{0} Gramm"}
                other{"{0} Gramm"}
                zero{"{0} Gramm"}
            }
            kilogram{
                dnam{"Kilogramm"}
                one{"{0} Kilogramm"}
                other{"{0} Kilogramm"}
                zero{"{0} Kilogramm"}
            }
            ounce{
                dnam{"Unzen"}
                one{"{0} Unze"}
                other{"{0} Unzen"}
                zero{"{0} Unzen"}
            }
            pound{
                dnam{"Pfund"}
                one{"{0} Pfund"}
                other{"{0} Pfund"}
                zero{"{0} Pfund"}
            }
        }
        power{
            horsepower{
                dnam{"Pferdestärken"}
                one{"{0} Pferdestärke"}
                other{"{0} Pferdestärken"}
                zero{"{0} Pferdestärken"}
            }
            kilowatt{
                dnam{"Kilowatt"}
                one{"{0} Kilowatt"}
                other{"{0} Kilowatt"}
                zero{"{0} Kilowatt"}
            }
            watt{
                dnam{"Watt"}
                one{"{0} Watt"}
                other{"{0} Watt"}
                zero{"{0} Watt"}
            }
        }
        pressure{
            hectopascal{
                dnam{"Hektopascal"}
                one{"{0} Hektopascal"}
                other{"{0} Hektopascal"}
                zero{"{0} Hektopascal"}
            }
            inch-ofhg{
                dnam{"Dumm Quecksilbersäule"}
                one{"{0} Dumm Quecksilbersäule"}
                other{"{0} Dumm Quecksilbersäule"}
                zero{"{0} Dumm Quecksilbersäule"}
            }
            millibar{
                dnam{"Millibar"}
                one{"{0} Millibar"}
                other{"{0} Millibar"}
                zero{"{0} Millibar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"Kilometer pro Schtunde"}
                one{"{0} Kilometer pro Schtunde"}
                other{"{0} Kilometer pro Schtunde"}
                zero{"{0} Kilometer pro Schtunde"}
            }
            meter-per-second{
                dnam{"Meter pro Sekunde"}
                one{"{0} Meter pro Sekunde"}
                other{"{0} Meter pro Sekunde"}
                zero{"{0} Meter pro Sekunde"}
            }
            mile-per-hour{
                dnam{"englischen Meilen pro Schtunde"}
                one{"{0} englische Meile pro Schtunde"}
                other{"{0} englischen Meilen pro Schtunde"}
                zero{"{0} englischen Meilen pro Schtunde"}
            }
        }
        temperature{
            celsius{
                dnam{"Graad Celsius"}
                one{"{0} Graad Celsius"}
                other{"{0} Graad Celsius"}
                zero{"{0} Graad Celsius"}
            }
            fahrenheit{
                dnam{"Graad Fahrenheit"}
                one{"{0} Graad Fahrenheit"}
                other{"{0} Graad Fahrenheit"}
                zero{"{0} Graad Fahrenheit"}
            }
        }
        volume{
            cubic-kilometer{
                dnam{"Kubikkilometer"}
                one{"{0} Kubikkilometer"}
                other{"{0} Kubikkilometer"}
                zero{"{0} Kubikkilometer"}
            }
            cubic-mile{
                dnam{"englischen Kubikmeilen"}
                one{"{0} englische Kubikmeile"}
                other{"{0} englischen Kubikmeilen"}
                zero{"{0} englischen Kubikmeilen"}
            }
            liter{
                dnam{"Liter"}
                one{"{0} Liter"}
                other{"{0} Liter"}
                zero{"{0} Liter"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}G"}
                zero{"{0}G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
                zero{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
                zero{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
                zero{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
                zero{"{0} ac"}
            }
            hectare{
                one{"{0}ha"}
                other{"{0}ha"}
                zero{"{0}ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
                zero{"{0} ft²"}
            }
            square-kilometer{
                one{"{0}km²"}
                other{"{0}km²"}
                zero{"{0}km²"}
            }
            square-meter{
                one{"{0}m²"}
                other{"{0}m²"}
                zero{"{0}m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
                zero{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                one{"{0}d"}
                other{"{0}d"}
                zero{"{0}d"}
            }
            hour{
                one{"{0}h"}
                other{"{0}h"}
                zero{"{0}h"}
            }
            millisecond{
                one{"{0}ms"}
                other{"{0}ms"}
                zero{"{0}ms"}
            }
            minute{
                one{"{0}m"}
                other{"{0}m"}
                zero{"{0}m"}
            }
            second{
                one{"{0}s"}
                other{"{0}s"}
                zero{"{0}s"}
            }
        }
        length{
            centimeter{
                one{"{0}cm"}
                other{"{0}cm"}
                zero{"{0}cm"}
            }
            foot{
                one{"{0} Voss"}
                other{"{0} Voss"}
                zero{"{0} Voss"}
            }
            inch{
                one{"{0} Dumm"}
                other{"{0} Dumm"}
                zero{"{0} Dumm"}
            }
            kilometer{
                one{"{0}km"}
                other{"{0}km"}
                zero{"{0}km"}
            }
            meter{
                one{"{0}m"}
                other{"{0}m"}
                zero{"{0}m"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
                zero{"{0} mi"}
            }
            millimeter{
                one{"{0}mm"}
                other{"{0}mm"}
                zero{"{0}mm"}
            }
            picometer{
                one{"{0}pm"}
                other{"{0}pm"}
                zero{"{0}pm"}
            }
        }
        mass{
            gram{
                one{"{0}g"}
                other{"{0}g"}
                zero{"{0}g"}
            }
            kilogram{
                one{"{0}kg"}
                other{"{0}kg"}
                zero{"{0}kg"}
            }
            ounce{
                one{"{0} Unze"}
                other{"{0} Unzen"}
                zero{"{0} Unzen"}
            }
            pound{
                one{"{0} Pfund"}
                other{"{0} Pfund"}
                zero{"{0} Pfund"}
            }
        }
        power{
            horsepower{
                one{"{0}PS"}
                other{"{0}PS"}
                zero{"{0}PS"}
            }
            kilowatt{
                one{"{0}kW"}
                other{"{0}kW"}
                zero{"{0}kW"}
            }
            watt{
                one{"{0}W"}
                other{"{0}W"}
                zero{"{0}W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0}hPa"}
                other{"{0}hPa"}
                zero{"{0}hPa"}
            }
            inch-ofhg{
                one{"{0} inHg"}
                other{"{0} inHg"}
                zero{"{0} inHg"}
            }
            millibar{
                one{"{0}mbar"}
                other{"{0}mbar"}
                zero{"{0}mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0}km/h"}
                other{"{0}km/h"}
                zero{"{0}km/h"}
            }
            meter-per-second{
                one{"{0}m/s"}
                other{"{0}m/s"}
                zero{"{0}m/s"}
            }
            mile-per-hour{
                one{"{0} mi/h"}
                other{"{0} mi/h"}
                zero{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                one{"{0}°"}
                other{"{0}°"}
                zero{"{0}°"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
                zero{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0}km³"}
                other{"{0}km³"}
                zero{"{0}km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
                zero{"{0} mi³"}
            }
            liter{
                one{"{0}L"}
                other{"{0}L"}
                zero{"{0}L"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"-fache Erdbeschleunigung"}
                one{"{0} G"}
                other{"{0} G"}
                zero{"{0} G"}
            }
        }
        angle{
            arc-minute{
                dnam{"Winkelmenutte"}
                one{"{0}′"}
                other{"{0}′"}
                zero{"{0}′"}
            }
            arc-second{
                dnam{"Winkelsekunde"}
                one{"{0}″"}
                other{"{0}″"}
                zero{"{0}″"}
            }
            degree{
                dnam{"Graad"}
                one{"{0}°"}
                other{"{0}°"}
                zero{"{0}°"}
            }
        }
        area{
            acre{
                dnam{"angloamerikanischen Acre"}
                one{"{0} ac"}
                other{"{0} ac"}
                zero{"{0} ac"}
            }
            hectare{
                dnam{"hektar"}
                one{"{0} ha"}
                other{"{0} ha"}
                zero{"{0} ha"}
            }
            square-foot{
                dnam{"Quadratvoss"}
                one{"{0} ft²"}
                other{"{0} ft²"}
                zero{"{0} ft²"}
            }
            square-kilometer{
                dnam{"Quadratkilometer"}
                one{"{0} km²"}
                other{"{0} km²"}
                zero{"{0} km²"}
            }
            square-meter{
                dnam{"Quadratmeter"}
                one{"{0} m²"}
                other{"{0} m²"}
                zero{"{0} m²"}
            }
            square-mile{
                dnam{"englischen Quadratmeilen"}
                one{"{0} mi²"}
                other{"{0} mi²"}
                zero{"{0} mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                dnam{"Dääsch"}
                one{"{0} d"}
                other{"{0} d"}
                zero{"{0} d"}
            }
            hour{
                dnam{"Schtunde"}
                one{"{0} h"}
                other{"{0} h"}
                zero{"{0} h"}
            }
            millisecond{
                dnam{"Millisekunde"}
                one{"{0} ms"}
                other{"{0} ms"}
                zero{"{0} ms"}
            }
            minute{
                dnam{"Menutte"}
                one{"{0} min"}
                other{"{0} min"}
                zero{"{0} min"}
            }
            month{
                dnam{"Mohnde"}
            }
            second{
                dnam{"Sekunde"}
                one{"{0} s"}
                other{"{0} s"}
                zero{"{0} s"}
            }
            week{
                dnam{"Woche"}
            }
            year{
                dnam{"Johre"}
            }
        }
        length{
            centimeter{
                dnam{"Zentimeter"}
                one{"{0} cm"}
                other{"{0} cm"}
                zero{"{0} cm"}
            }
            foot{
                dnam{"Voss"}
                one{"{0} Voss"}
                other{"{0} Voss"}
                zero{"{0} Voss"}
            }
            inch{
                dnam{"Dumm"}
                one{"{0} Dumm"}
                other{"{0} Dumm"}
                zero{"{0} Dumm"}
            }
            kilometer{
                dnam{"Kilometer"}
                one{"{0} km"}
                other{"{0} km"}
                zero{"{0} km"}
            }
            meter{
                dnam{"Meter"}
                one{"{0} m"}
                other{"{0} m"}
                zero{"{0} m"}
            }
            mile{
                dnam{"englischen Meilen"}
                one{"{0} mi"}
                other{"{0} mi"}
                zero{"{0} mi"}
            }
            millimeter{
                dnam{"Millimeter"}
                one{"{0} mm"}
                other{"{0} mm"}
                zero{"{0} mm"}
            }
            picometer{
                dnam{"Pikometer"}
                one{"{0} pm"}
                other{"{0} pm"}
                zero{"{0} pm"}
            }
        }
        mass{
            gram{
                dnam{"Gramm"}
                one{"{0} g"}
                other{"{0} g"}
                zero{"{0} g"}
            }
            kilogram{
                dnam{"Kilogramm"}
                one{"{0} kg"}
                other{"{0} kg"}
                zero{"{0} kg"}
            }
            ounce{
                dnam{"Unzen"}
                one{"{0} Unze"}
                other{"{0} Unzen"}
                zero{"{0} Unzen"}
            }
            pound{
                dnam{"Pfund"}
                one{"{0} Pfund"}
                other{"{0} Pfund"}
                zero{"{0} Pfund"}
            }
        }
        power{
            horsepower{
                dnam{"Pferdestärken"}
                one{"{0} PS"}
                other{"{0} PS"}
                zero{"{0} PS"}
            }
            kilowatt{
                dnam{"Kilowatt"}
                one{"{0} kW"}
                other{"{0} kW"}
                zero{"{0} kW"}
            }
            watt{
                dnam{"Watt"}
                one{"{0} W"}
                other{"{0} W"}
                zero{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"Hektopascal"}
                one{"{0} hPa"}
                other{"{0} hPa"}
                zero{"{0} hPa"}
            }
            inch-ofhg{
                dnam{"Dumm Quecksilbersäule"}
                one{"{0} inHg"}
                other{"{0} inHg"}
                zero{"{0} inHg"}
            }
            millibar{
                dnam{"Millibar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
                zero{"{0} mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"Kilometer pro Schtunde"}
                one{"{0} km/h"}
                other{"{0} km/h"}
                zero{"{0} km/h"}
            }
            meter-per-second{
                dnam{"Meter pro Sekunde"}
                one{"{0} m/s"}
                other{"{0} m/s"}
                zero{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"englischen Meilen pro Schtunde"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
                zero{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"Graad Celsius"}
                one{"{0}°C"}
                other{"{0}°C"}
                zero{"{0}°C"}
            }
            fahrenheit{
                dnam{"Graad Fahrenheit"}
                one{"{0}°F"}
                other{"{0}°F"}
                zero{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                dnam{"Kubikkilometer"}
                one{"{0} km³"}
                other{"{0} km³"}
                zero{"{0} km³"}
            }
            cubic-mile{
                dnam{"englischen Kubikmeilen"}
                one{"{0} mi³"}
                other{"{0} mi³"}
                zero{"{0} mi³"}
            }
            liter{
                dnam{"Liter"}
                one{"{0} l"}
                other{"{0} l"}
                zero{"{0} l"}
            }
        }
    }
}
