﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/fr.xml
// *
// ***************************************************************************
fr{
    Version{"2.1.16.1"}
    durationUnits{
        hm{"hh:mm"}
        hms{"hh:mm:ss"}
        ms{"mm:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"fois la gravitation terrestre"}
                one{"{0} fois la gravitation terrestre"}
                other{"{0} fois la gravitation terrestre"}
            }
            meter-per-second-squared{
                dnam{"mètres par seconde carrée"}
                one{"{0} mètre par seconde carrée"}
                other{"{0} mètres par seconde carrée"}
            }
        }
        angle{
            arc-minute{
                dnam{"minutes d’arc"}
                one{"{0} minute d’arc"}
                other{"{0} minutes d’arc"}
            }
            arc-second{
                dnam{"secondes d’arc"}
                one{"{0} seconde d’angle"}
                other{"{0} secondes d’angle"}
            }
            degree{
                dnam{"degrés"}
                one{"{0} degré"}
                other{"{0} degrés"}
            }
            radian{
                dnam{"radians"}
                one{"{0} radian"}
                other{"{0} radians"}
            }
        }
        area{
            acre{
                dnam{"acres anglo-saxonnes"}
                one{"{0} acre anglo-saxonne"}
                other{"{0} acres anglo-saxonnes"}
            }
            hectare{
                dnam{"hectares"}
                one{"{0} hectare"}
                other{"{0} hectares"}
            }
            square-centimeter{
                dnam{"centimètres carrés"}
                one{"{0} centimètre carré"}
                other{"{0} centimètres carrés"}
            }
            square-foot{
                dnam{"pieds carrés"}
                one{"{0} pied carré"}
                other{"{0} pieds carrés"}
            }
            square-inch{
                dnam{"pouces carrés"}
                one{"{0} pouce carré"}
                other{"{0} pouces carrés"}
            }
            square-kilometer{
                dnam{"kilomètres carrés"}
                one{"{0} kilomètre carré"}
                other{"{0} kilomètres carrés"}
            }
            square-meter{
                dnam{"mètres carrés"}
                one{"{0} mètre carré"}
                other{"{0} mètres carrés"}
            }
            square-mile{
                dnam{"miles carrés"}
                one{"{0} mille anglais carré"}
                other{"{0} milles anglais carrés"}
            }
            square-yard{
                dnam{"yards carrés"}
                one{"{0} yard carré"}
                other{"{0} yards carrés"}
            }
        }
        compound{
            per{"{0} par {1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"litres au kilomètre"}
                one{"{0} litre au kilomètre"}
                other{"{0} litres au kilomètre"}
            }
            mile-per-gallon{
                dnam{"miles par gallon"}
                one{"{0} mile par gallon"}
                other{"{0} miles par gallon"}
            }
        }
        digital{
            bit{
                dnam{"bits"}
                one{"{0} bit"}
                other{"{0} bits"}
            }
            byte{
                dnam{"octets"}
                one{"{0} octet"}
                other{"{0} octets"}
            }
            gigabit{
                dnam{"gigabits"}
                one{"{0} gigabit"}
                other{"{0} gigabits"}
            }
            gigabyte{
                dnam{"gigaoctets"}
                one{"{0} gigaoctet"}
                other{"{0} gigaoctets"}
            }
            kilobit{
                dnam{"kilobits"}
                one{"{0} kilobit"}
                other{"{0} kilobits"}
            }
            kilobyte{
                dnam{"kilooctets"}
                one{"{0} kilooctet"}
                other{"{0} kilooctets"}
            }
            megabit{
                dnam{"mégabits"}
                one{"{0} mégabit"}
                other{"{0} mégabits"}
            }
            megabyte{
                dnam{"mégaoctets"}
                one{"{0} mégaoctet"}
                other{"{0} mégaoctets"}
            }
            terabit{
                dnam{"térabits"}
                one{"{0} térabit"}
                other{"{0} térabits"}
            }
            terabyte{
                dnam{"téraoctets"}
                one{"{0} téraoctet"}
                other{"{0} téraoctets"}
            }
        }
        duration{
            day{
                dnam{"jours"}
                one{"{0} jour"}
                other{"{0} jours"}
            }
            hour{
                dnam{"heures"}
                one{"{0} heure"}
                other{"{0} heures"}
                per{"{0} par heure"}
            }
            microsecond{
                dnam{"microsecondes"}
                one{"{0} microseconde"}
                other{"{0} microsecondes"}
            }
            millisecond{
                dnam{"millisecondes"}
                one{"{0} milliseconde"}
                other{"{0} millisecondes"}
            }
            minute{
                dnam{"minutes"}
                one{"{0} minute"}
                other{"{0} minutes"}
            }
            month{
                dnam{"mois"}
                one{"{0} mois"}
                other{"{0} mois"}
            }
            nanosecond{
                dnam{"nanosecondes"}
                one{"{0} nanoseconde"}
                other{"{0} nanosecondes"}
            }
            second{
                dnam{"secondes"}
                one{"{0} seconde"}
                other{"{0} secondes"}
                per{"{0} par seconde"}
            }
            week{
                dnam{"semaines"}
                one{"{0} semaine"}
                other{"{0} semaines"}
            }
            year{
                dnam{"ans"}
                one{"{0} an"}
                other{"{0} ans"}
            }
        }
        electric{
            ampere{
                dnam{"ampères"}
                one{"{0} ampère"}
                other{"{0} ampères"}
            }
            milliampere{
                dnam{"milliampères"}
                one{"{0} milliampère"}
                other{"{0} milliampères"}
            }
            ohm{
                dnam{"ohms"}
                one{"{0} ohm"}
                other{"{0} ohms"}
            }
            volt{
                dnam{"volts"}
                one{"{0} volt"}
                other{"{0} volts"}
            }
        }
        energy{
            calorie{
                dnam{"calories"}
                one{"{0} calorie"}
                other{"{0} calories"}
            }
            foodcalorie{
                dnam{"kilocalories"}
                one{"{0} kilocalorie"}
                other{"{0} kilocalories"}
            }
            joule{
                dnam{"joules"}
                one{"{0} joule"}
                other{"{0} joules"}
            }
            kilocalorie{
                dnam{"kilocalories"}
                one{"{0} kilocalorie"}
                other{"{0} kilocalories"}
            }
            kilojoule{
                dnam{"kilojoules"}
                one{"{0} kilojoule"}
                other{"{0} kilojoules"}
            }
            kilowatt-hour{
                dnam{"kilowattheures"}
                one{"{0} kilowattheure"}
                other{"{0} kilowattheures"}
            }
        }
        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{"mégahertz"}
                one{"{0} mégahertz"}
                other{"{0} mégahertz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"unités astronomiques"}
                one{"{0} unité astronomique"}
                other{"{0} unités astronomiques"}
            }
            centimeter{
                dnam{"centimètres"}
                one{"{0} centimètre"}
                other{"{0} centimètres"}
            }
            decimeter{
                dnam{"décimètres"}
                one{"{0} décimètre"}
                other{"{0} décimètres"}
            }
            foot{
                dnam{"pieds"}
                one{"{0} pied"}
                other{"{0} pieds"}
            }
            inch{
                dnam{"pouces"}
                one{"{0} pouce"}
                other{"{0} pouces"}
            }
            kilometer{
                dnam{"kilomètres"}
                one{"{0} kilomètre"}
                other{"{0} kilomètres"}
            }
            light-year{
                dnam{"années-lumière"}
                one{"{0} année-lumière"}
                other{"{0} années-lumière"}
            }
            meter{
                dnam{"mètres"}
                one{"{0} mètre"}
                other{"{0} mètres"}
            }
            micrometer{
                dnam{"micromètres"}
                one{"{0} micromètre"}
                other{"{0} micromètres"}
            }
            mile{
                dnam{"milles anglais"}
                one{"{0} mille anglais"}
                other{"{0} milles anglais"}
            }
            millimeter{
                dnam{"millimètres"}
                one{"{0} millimètre"}
                other{"{0} millimètres"}
            }
            nanometer{
                dnam{"nanomètres"}
                one{"{0} nanomètre"}
                other{"{0} nanomètres"}
            }
            nautical-mile{
                dnam{"milles marins"}
                one{"{0} mille marin"}
                other{"{0} milles marins"}
            }
            parsec{
                dnam{"parsecs"}
                one{"{0} parsec"}
                other{"{0} parsecs"}
            }
            picometer{
                dnam{"picomètres"}
                one{"{0} picomètre"}
                other{"{0} picomètres"}
            }
            yard{
                dnam{"yards"}
                one{"{0} yard"}
                other{"{0} yards"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lux"}
                other{"{0} lux"}
            }
        }
        mass{
            carat{
                dnam{"carats"}
                one{"{0} carat"}
                other{"{0} carats"}
            }
            gram{
                dnam{"grammes"}
                one{"{0} gramme"}
                other{"{0} grammes"}
            }
            kilogram{
                dnam{"kilogrammes"}
                one{"{0} kilogramme"}
                other{"{0} kilogrammes"}
            }
            metric-ton{
                dnam{"tonnes"}
                one{"{0} tonne"}
                other{"{0} tonnes"}
            }
            microgram{
                dnam{"microgrammes"}
                one{"{0} microgramme"}
                other{"{0} microgrammes"}
            }
            milligram{
                dnam{"milligrammes"}
                one{"{0} milligramme"}
                other{"{0} milligrammes"}
            }
            ounce{
                dnam{"onces"}
                one{"{0} once"}
                other{"{0} onces"}
            }
            ounce-troy{
                dnam{"onces troy"}
                one{"{0} once troy"}
                other{"{0} onces troy"}
            }
            pound{
                dnam{"livres"}
                one{"{0} livre"}
                other{"{0} livres"}
            }
            stone{
                dnam{"stones"}
            }
            ton{
                dnam{"tonnes courtes"}
                one{"{0} tonne courte"}
                other{"{0} tonnes courtes"}
            }
        }
        power{
            gigawatt{
                dnam{"gigawatts"}
                one{"{0} gigawatt"}
                other{"{0} gigawatts"}
            }
            horsepower{
                dnam{"chevaux-vapeur"}
                one{"{0} cheval-vapeur"}
                other{"{0} chevaux-vapeur"}
            }
            kilowatt{
                dnam{"kilowatts"}
                one{"{0} kilowatt"}
                other{"{0} kilowatts"}
            }
            megawatt{
                dnam{"mégawatts"}
                one{"{0} mégawatt"}
                other{"{0} mégawatts"}
            }
            milliwatt{
                dnam{"milliwatts"}
                one{"{0} milliwatt"}
                other{"{0} milliwatts"}
            }
            watt{
                dnam{"watts"}
                one{"{0} watt"}
                other{"{0} watts"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hectopascals"}
                one{"{0} hectopascal"}
                other{"{0} hectopascals"}
            }
            inch-hg{
                dnam{"pouces de mercure"}
                one{"{0} pouce de mercure"}
                other{"{0} pouces de mercure"}
            }
            millibar{
                dnam{"millibars"}
                one{"{0} millibar"}
                other{"{0} millibars"}
            }
            millimeter-of-mercury{
                dnam{"millimètres de mercure"}
                one{"{0} millimètre de mercure"}
                other{"{0} millimètres de mercure"}
            }
            pound-per-square-inch{
                dnam{"livres par pouce carré"}
                one{"{0} livre par pouce carré"}
                other{"{0} livres par pouce carré"}
            }
        }
        proportion{
            karat{
                dnam{"carats"}
                one{"{0} carat"}
                other{"{0} carats"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilomètres par heure"}
                one{"{0} kilomètre par heure"}
                other{"{0} kilomètres par heure"}
            }
            meter-per-second{
                dnam{"mètres par seconde"}
                one{"{0} mètre par seconde"}
                other{"{0} mètres par seconde"}
            }
            mile-per-hour{
                dnam{"milles anglais par heure"}
                one{"{0} mille anglais par heure"}
                other{"{0} milles anglais par heure"}
            }
        }
        temperature{
            celsius{
                dnam{"degrés Celsius"}
                one{"{0} degré Celsius"}
                other{"{0} degrés Celsius"}
            }
            fahrenheit{
                dnam{"degrés Fahrenheit"}
                one{"{0} degré Fahrenheit"}
                other{"{0} degrés Fahrenheit"}
            }
            kelvin{
                dnam{"kelvins"}
                one{"{0} kelvin"}
                other{"{0} kelvins"}
            }
        }
        volume{
            acre-foot{
                dnam{"acres-pieds"}
                one{"{0} acre-pied"}
                other{"{0} acres-pieds"}
            }
            centiliter{
                dnam{"centilitres"}
                one{"{0} centilitre"}
                other{"{0} centilitres"}
            }
            cubic-centimeter{
                dnam{"centimètres cubes"}
                one{"{0} centimètre cube"}
                other{"{0} centimètres cubes"}
            }
            cubic-foot{
                dnam{"pieds cubes"}
                one{"{0} pied cube"}
                other{"{0} pieds cubes"}
            }
            cubic-inch{
                dnam{"pouces cubes"}
                one{"{0} pouce cube"}
                other{"{0} pouces cubes"}
            }
            cubic-kilometer{
                dnam{"kilomètres cubes"}
                one{"{0} kilomètre cube"}
                other{"{0} kilomètres cubes"}
            }
            cubic-meter{
                dnam{"mètres cubes"}
                one{"{0} mètre cube"}
                other{"{0} mètres cubes"}
            }
            cubic-mile{
                dnam{"milles anglais cubes"}
                one{"{0} mille anglais cube"}
                other{"{0} milles anglais cubes"}
            }
            cubic-yard{
                dnam{"yards cubes"}
                one{"{0} yard cube"}
                other{"{0} yards cubes"}
            }
            cup{
                dnam{"tasses"}
                one{"{0} tasse"}
                other{"{0} tasses"}
            }
            deciliter{
                dnam{"décilitres"}
                one{"{0} décilitre"}
                other{"{0} décilitres"}
            }
            fluid-ounce{
                dnam{"onces liquides"}
                one{"{0} once liquide"}
                other{"{0} onces liquides"}
            }
            gallon{
                dnam{"gallons"}
                one{"{0} gallon"}
                other{"{0} gallons"}
            }
            hectoliter{
                dnam{"hectolitres"}
                one{"{0} hectolitre"}
                other{"{0} hectolitres"}
            }
            liter{
                dnam{"litres"}
                one{"{0} litre"}
                other{"{0} litres"}
            }
            megaliter{
                dnam{"mégalitres"}
                one{"{0} mégalitre"}
                other{"{0} mégalitres"}
            }
            milliliter{
                dnam{"millilitres"}
                one{"{0} millilitre"}
                other{"{0} millilitres"}
            }
            pint{
                dnam{"pintes"}
                one{"{0} pinte"}
                other{"{0} pintes"}
            }
            quart{
                dnam{"quarts"}
                one{"{0} quart"}
                other{"{0} quarts"}
            }
            tablespoon{
                dnam{"cuillères à soupe"}
                one{"{0} cuillère à soupe"}
                other{"{0} cuillères à soupe"}
            }
            teaspoon{
                dnam{"cuillères à café"}
                one{"{0} cuillère à café"}
                other{"{0} cuillères à café"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"°"}
                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-foot{
                dnam{"pi²"}
                one{"{0}pi²"}
                other{"{0}pi²"}
            }
            square-kilometer{
                one{"{0}km²"}
                other{"{0}km²"}
            }
            square-meter{
                one{"{0}m²"}
                other{"{0}m²"}
            }
            square-mile{
                one{"{0}mi²"}
                other{"{0}mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"L/km"}
            }
            mile-per-gallon{
                dnam{"mi/gal"}
            }
        }
        duration{
            day{
                dnam{"j"}
                one{"{0}j"}
                other{"{0}j"}
            }
            hour{
                dnam{"h"}
                one{"{0}h"}
                other{"{0}h"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                dnam{"min"}
                one{"{0}m"}
                other{"{0}m"}
            }
            month{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
            }
            second{
                dnam{"s"}
                one{"{0}s"}
                other{"{0}s"}
            }
            week{
                dnam{"sem"}
                one{"{0}sem"}
                other{"{0}sem"}
            }
            year{
                dnam{"a"}
                one{"{0}a"}
                other{"{0}a"}
            }
        }
        length{
            astronomical-unit{
                dnam{"ua"}
                one{"{0}ua"}
                other{"{0}ua"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0}cm"}
                other{"{0}cm"}
            }
            foot{
                one{"{0}′"}
                other{"{0}′"}
            }
            inch{
                one{"{0}″"}
                other{"{0}″"}
            }
            kilometer{
                dnam{"km"}
                one{"{0}km"}
                other{"{0}km"}
            }
            light-year{
                one{"{0}a.l."}
                other{"{0}a.l."}
            }
            meter{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
            }
            mile{
                one{"{0}mi"}
                other{"{0}mi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0}mm"}
                other{"{0}mm"}
            }
            picometer{
                one{"{0}pm"}
                other{"{0}pm"}
            }
            yard{
                one{"{0}yd"}
                other{"{0}yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                one{"{0}g"}
                other{"{0}g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0}kg"}
                other{"{0}kg"}
            }
            ounce{
                one{"{0}oz"}
                other{"{0}oz"}
            }
            pound{
                one{"{0}lb"}
                other{"{0}lb"}
            }
            ton{
                dnam{"sh tn"}
                one{"{0} sh tn"}
                other{"{0} sh tn"}
            }
        }
        power{
            horsepower{
                one{"{0}ch"}
                other{"{0}ch"}
            }
            kilowatt{
                one{"{0}kW"}
                other{"{0}kW"}
            }
            watt{
                one{"{0}W"}
                other{"{0}W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0}hPa"}
                other{"{0}hPa"}
            }
            inch-hg{
                one{"{0}inHg"}
                other{"{0}inHg"}
            }
            millibar{
                one{"{0}mbar"}
                other{"{0}mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0}km/h"}
                other{"{0}km/h"}
            }
            meter-per-second{
                one{"{0}m/s"}
                other{"{0}m/s"}
            }
            mile-per-hour{
                one{"{0}mi/h"}
                other{"{0}mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°"}
                other{"{0}°"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            centiliter{
                dnam{"cl"}
                one{"{0}cl"}
                other{"{0}cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0}cm³"}
                other{"{0}cm³"}
            }
            cubic-foot{
                dnam{"pi³"}
                one{"{0}pi³"}
                other{"{0}pi³"}
            }
            cubic-inch{
                dnam{"po³"}
                one{"{0}po³"}
                other{"{0}po³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0}km³"}
                other{"{0}km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0}m³"}
                other{"{0}m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0}mi³"}
                other{"{0}mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0}yd³"}
                other{"{0}yd³"}
            }
            deciliter{
                dnam{"dl"}
                one{"{0}dl"}
                other{"{0}dl"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0}fl oz"}
                other{"{0}fl oz"}
            }
            gallon{
                dnam{"gal"}
                one{"{0}gal"}
                other{"{0}gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0}hl"}
                other{"{0}hl"}
            }
            liter{
                dnam{"L"}
                one{"{0}L"}
                other{"{0}L"}
            }
            megaliter{
                dnam{"Ml"}
                one{"{0}Ml"}
                other{"{0}Ml"}
            }
            milliliter{
                dnam{"ml"}
                one{"{0}ml"}
                other{"{0}ml"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"G"}
                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{"′"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"″"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"ac"}
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                dnam{"ha"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                dnam{"pi²"}
                one{"{0} pi²"}
                other{"{0} pi²"}
            }
            square-inch{
                dnam{"po²"}
                one{"{0} po²"}
                other{"{0} po²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{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-kilometer{
                dnam{"L/km"}
                one{"{0} L/km"}
                other{"{0} L/km"}
            }
            mile-per-gallon{
                dnam{"mi/gal"}
                one{"{0} mi/gal"}
                other{"{0} mi/gal"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"octet"}
                one{"{0} octet"}
                other{"{0} octet"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"Go"}
                one{"{0} Go"}
                other{"{0} Go"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"ko"}
                one{"{0} ko"}
                other{"{0} ko"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"Mo"}
                one{"{0} Mo"}
                other{"{0} Mo"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"To"}
                one{"{0} To"}
                other{"{0} To"}
            }
        }
        duration{
            day{
                dnam{"j"}
                one{"{0} j"}
                other{"{0} j"}
            }
            hour{
                dnam{"h"}
                one{"{0} h"}
                other{"{0} h"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"s"}
                one{"{0} s"}
                other{"{0} s"}
                per{"{0}/s"}
            }
            week{
                dnam{"sem."}
                one{"{0} sem."}
                other{"{0} sem."}
            }
            year{
                dnam{"ans"}
                one{"{0} an"}
                other{"{0} ans"}
            }
        }
        electric{
            ampere{
                dnam{"A"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"Ω"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"V"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            joule{
                dnam{"J"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"kJ"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"ua"}
                one{"{0} ua"}
                other{"{0} ua"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            fathom{
                one{"{0} fat"}
                other{"{0} fat"}
            }
            foot{
                dnam{"pi"}
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                dnam{"po"}
                one{"{0} po"}
                other{"{0} po"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"a.l."}
                one{"{0} a.l."}
                other{"{0} a.l."}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                one{"{0} mi"}
                other{"{0} mi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"pc"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"yd"}
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"ct"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
            gram{
                dnam{"g"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"oz"}
                one{"{0} oz"}
                other{"{0} oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                one{"{0} lb"}
                other{"{0} lb"}
            }
            ton{
                dnam{"sh tn"}
                one{"{0} sh tn"}
                other{"{0} sh tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"ch"}
                one{"{0} ch"}
                other{"{0} ch"}
            }
            kilowatt{
                dnam{"kW"}
                one{"{0} kW"}
                other{"{0} kW"}
            }
            megawatt{
                dnam{"MW"}
                one{"{0} MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                one{"{0} mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"W"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"inHg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"lb/po²"}
                one{"{0} lb/po²"}
                other{"{0} lb/po²"}
            }
        }
        proportion{
            karat{
                dnam{"ct"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                dnam{"m/s"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °C"}
                other{"{0} °C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0} °F"}
                other{"{0} °F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ac pi"}
                one{"{0} ac pi"}
                other{"{0} ac pi"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0} cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"pi³"}
                one{"{0} pi³"}
                other{"{0} pi³"}
            }
            cubic-inch{
                dnam{"po³"}
                one{"{0} po³"}
                other{"{0} po³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"tasses"}
                one{"{0} tasse"}
                other{"{0} tasses"}
            }
            deciliter{
                dnam{"dl"}
                one{"{0} dl"}
                other{"{0} dl"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"L"}
                one{"{0} L"}
                other{"{0} L"}
            }
            megaliter{
                dnam{"Ml"}
                one{"{0} Ml"}
                other{"{0} Ml"}
            }
            milliliter{
                dnam{"ml"}
                one{"{0} ml"}
                other{"{0} ml"}
            }
            pint{
                dnam{"pte"}
                one{"{0} pte"}
                other{"{0} pte"}
            }
            quart{
                dnam{"qt"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"c. à s."}
                one{"{0} c. à s."}
                other{"{0} c. à s."}
            }
            teaspoon{
                dnam{"c. à c."}
                one{"{0} c. à c."}
                other{"{0} c. à c."}
            }
        }
    }
}
