﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
fr{
    Version{"2.1.37.1"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m: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’arc"}
                other{"{0} secondes d’arc"}
            }
            degree{
                dnam{"degrés"}
                one{"{0} degré"}
                other{"{0} degrés"}
            }
            radian{
                dnam{"radians"}
                one{"{0} radian"}
                other{"{0} radians"}
            }
            revolution{
                dnam{"tour"}
                one{"{0} tour"}
                other{"{0} tours"}
            }
        }
        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"}
                per{"{0} par centimètre carré"}
            }
            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"}
                per{"{0} par pouce carré"}
            }
            square-kilometer{
                dnam{"kilomètres carrés"}
                one{"{0} kilomètre carré"}
                other{"{0} kilomètres carrés"}
                per{"{0}/km²"}
            }
            square-meter{
                dnam{"mètres carrés"}
                one{"{0} mètre carré"}
                other{"{0} mètres carrés"}
                per{"{0} par mètre carré"}
            }
            square-mile{
                dnam{"milles carrés"}
                one{"{0} mille carré"}
                other{"{0} milles carrés"}
                per{"{0}/mi²"}
            }
            square-yard{
                dnam{"yards carrés"}
                one{"{0} yard carré"}
                other{"{0} yards carrés"}
            }
        }
        compound{
            per{"{0} par {1}"}
        }
        concentr{
            karat{
                dnam{"carats"}
                one{"{0} carat"}
                other{"{0} carats"}
            }
            milligram-per-deciliter{
                dnam{"milligrammes par décilitre"}
                one{"{0} milligramme par décilitre"}
                other{"{0} milligrammes par décilitre"}
            }
            millimole-per-liter{
                dnam{"millimoles par litre"}
                one{"{0} millimole par litre"}
                other{"{0} millimoles par litre"}
            }
            part-per-million{
                dnam{"parts par million"}
                one{"{0} part par million"}
                other{"{0} parts par million"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"litres aux 100 km"}
                one{"{0} litre aux 100 km"}
                other{"{0} litres aux 100 km"}
            }
            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"}
            }
            mile-per-gallon-imperial{
                dnam{"miles par gallon impérial"}
                one{"{0} mile par gallon impérial"}
                other{"{0} miles par gallon impérial"}
            }
        }
        coordinate{
            east{"{0} est"}
            north{"{0} nord"}
            south{"{0} sud"}
            west{"{0} ouest"}
        }
        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{
            century{
                dnam{"siècles"}
                one{"{0} siècle"}
                other{"{0} siècles"}
            }
            day{
                dnam{"jours"}
                one{"{0} jour"}
                other{"{0} jours"}
                per{"{0} par jour"}
            }
            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"}
                per{"{0} par minute"}
            }
            month{
                dnam{"mois"}
                one{"{0} mois"}
                other{"{0} mois"}
                per{"{0} par 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"}
                per{"{0} par semaine"}
            }
            year{
                dnam{"ans"}
                one{"{0} an"}
                other{"{0} ans"}
                per{"{0} par an"}
            }
        }
        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"}
                per{"{0} par centimètre"}
            }
            decimeter{
                dnam{"décimètres"}
                one{"{0} décimètre"}
                other{"{0} décimètres"}
            }
            fathom{
                dnam{"brasses"}
                one{"{0} brasse"}
                other{"{0} brasses"}
            }
            foot{
                dnam{"pieds"}
                one{"{0} pied"}
                other{"{0} pieds"}
                per{"{0} par pied"}
            }
            furlong{
                dnam{"furlongs"}
                one{"{0} furlong"}
                other{"{0} furlongs"}
            }
            inch{
                dnam{"pouces"}
                one{"{0} pouce"}
                other{"{0} pouces"}
                per{"{0} par pouce"}
            }
            kilometer{
                dnam{"kilomètres"}
                one{"{0} kilomètre"}
                other{"{0} kilomètres"}
                per{"{0} par kilomètre"}
            }
            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"}
                per{"{0} par mètre"}
            }
            micrometer{
                dnam{"micromètres"}
                one{"{0} micromètre"}
                other{"{0} micromètres"}
            }
            mile{
                dnam{"miles"}
                one{"{0} mile"}
                other{"{0} miles"}
            }
            mile-scandinavian{
                dnam{"milles scandinaves"}
                one{"{0} mille scandinave"}
                other{"{0} milles scandinaves"}
            }
            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"}
            }
            point{
                dnam{"points"}
                one{"{0} point"}
                other{"{0} points"}
            }
            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"}
                per{"{0} par gramme"}
            }
            kilogram{
                dnam{"kilogrammes"}
                one{"{0} kilogramme"}
                other{"{0} kilogrammes"}
                per{"{0} par kg"}
            }
            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"}
                per{"{0} par once"}
            }
            ounce-troy{
                dnam{"onces troy"}
                one{"{0} once troy"}
                other{"{0} onces troy"}
            }
            pound{
                dnam{"livres"}
                one{"{0} livre"}
                other{"{0} livres"}
                per{"{0} par livre"}
            }
            stone{
                dnam{"stones"}
                one{"{0} stone"}
                other{"{0} 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é"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilomètres par heure"}
                one{"{0} kilomètre par heure"}
                other{"{0} kilomètres par heure"}
            }
            knot{
                dnam{"nœuds"}
                one{"{0} nœud"}
                other{"{0} nœuds"}
            }
            meter-per-second{
                dnam{"mètres par seconde"}
                one{"{0} mètre par seconde"}
                other{"{0} mètres par seconde"}
            }
            mile-per-hour{
                dnam{"miles par heure"}
                one{"{0} mile par heure"}
                other{"{0} miles 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"}
            }
            generic{
                dnam{"degrés"}
                one{"{0} degré"}
                other{"{0} degrés"}
            }
            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"}
                per{"{0} par centimètre cube"}
            }
            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"}
                per{"{0} par mètre cube"}
            }
            cubic-mile{
                dnam{"milles cubes"}
                one{"{0} mille cube"}
                other{"{0} milles cubes"}
            }
            cubic-yard{
                dnam{"yards cubes"}
                one{"{0} yard cube"}
                other{"{0} yards cubes"}
            }
            cup{
                dnam{"tasses"}
                one{"{0} tasse"}
                other{"{0} tasses"}
            }
            cup-metric{
                dnam{"tasses métriques"}
                one{"{0} tasse métrique"}
                other{"{0} tasses métriques"}
            }
            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"}
                per{"{0} par gallon"}
            }
            gallon-imperial{
                dnam{"gallons impériaux"}
                one{"{0} gallon impérial"}
                other{"{0} gallons impériaux"}
                per{"{0} par gallon impérial"}
            }
            hectoliter{
                dnam{"hectolitres"}
                one{"{0} hectolitre"}
                other{"{0} hectolitres"}
            }
            liter{
                dnam{"litres"}
                one{"{0} litre"}
                other{"{0} litres"}
                per{"{0} par litre"}
            }
            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"}
            }
            pint-metric{
                dnam{"pintes métriques"}
                one{"{0} pinte métrique"}
                other{"{0} pintes métriques"}
            }
            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{
                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{
                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-100kilometers{
                dnam{"l/100km"}
                one{"{0}l/100km"}
                other{"{0}l/100km"}
            }
            liter-per-kilometer{
                dnam{"L/km"}
            }
            mile-per-gallon{
                dnam{"mi/gal"}
            }
        }
        coordinate{
            east{"{0}E"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}O"}
        }
        duration{
            century{
                dnam{"s."}
                one{"{0} s."}
                other{"{0} s."}
            }
            day{
                dnam{"j"}
                one{"{0}j"}
                other{"{0}j"}
                per{"{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"}
                per{"{0}/min"}
            }
            month{
                dnam{"m."}
                one{"{0} m."}
                other{"{0} m."}
                per{"{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."}
                per{"{0}/sem."}
            }
            year{
                dnam{"a"}
                one{"{0}a"}
                other{"{0}a"}
                per{"{0}/a"}
            }
        }
        length{
            astronomical-unit{
                dnam{"ua"}
                one{"{0}ua"}
                other{"{0}ua"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0}cm"}
                other{"{0}cm"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            fathom{
                dnam{"fm"}
                one{"{0} fm"}
                other{"{0} fm"}
            }
            foot{
                dnam{"pi"}
                one{"{0}′"}
                other{"{0}′"}
                per{"{0}/pi"}
            }
            furlong{
                dnam{"fur"}
                one{"{0} fur"}
                other{"{0} fur"}
            }
            inch{
                dnam{"po"}
                one{"{0}″"}
                other{"{0}″"}
                per{"{0}/po"}
            }
            kilometer{
                dnam{"km"}
                one{"{0}km"}
                other{"{0}km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"al"}
                one{"{0}a.l."}
                other{"{0}a.l."}
            }
            meter{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                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{
                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"}
            }
            point{
                dnam{"pt"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            yard{
                dnam{"yd"}
                one{"{0}yd"}
                other{"{0}yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                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{"oz"}
                one{"{0}oz"}
                other{"{0}oz"}
                per{"{0}/oz"}
            }
            pound{
                dnam{"lb"}
                one{"{0}lb"}
                other{"{0}lb"}
                per{"{0}/lb"}
            }
            stone{
                dnam{"st"}
                one{"{0} st"}
                other{"{0} st"}
            }
            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{
                dnam{"hPa"}
                one{"{0}hPa"}
                other{"{0}hPa"}
            }
            inch-hg{
                dnam{"″Hg"}
                one{"{0}″ Hg"}
                other{"{0}″ Hg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0}mbar"}
                other{"{0}mbar"}
            }
            millimeter-of-mercury{
                dnam{"mmHg"}
                one{"{0} mmHg"}
                other{"{0} mmHg"}
            }
            pound-per-square-inch{
                dnam{"lb/po²"}
                one{"{0} lb/po²"}
                other{"{0} lb/po²"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0}km/h"}
                other{"{0}km/h"}
            }
            knot{
                dnam{"nd"}
                one{"{0} nd"}
                other{"{0} nd"}
            }
            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{
            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"}
            }
            revolution{
                dnam{"tr"}
                one{"{0} tr"}
                other{"{0} tr"}
            }
        }
        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²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"pi²"}
                one{"{0} pi²"}
                other{"{0} pi²"}
            }
            square-inch{
                dnam{"po²"}
                one{"{0} po²"}
                other{"{0} po²"}
                per{"{0}/po²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
                per{"{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²"}
                per{"{0}/mi²"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"ct"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
            milligram-per-deciliter{
                dnam{"mg/dl"}
                one{"{0} mg/dl"}
                other{"{0} mg/dl"}
            }
            millimole-per-liter{
                dnam{"mmol/l"}
                one{"{0} mmol/l"}
                other{"{0} mmol/l"}
            }
            part-per-million{
                dnam{"ppm"}
                one{"{0} ppm"}
                other{"{0} ppm"}
            }
        }
        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{"mi/gal"}
                one{"{0} mi/gal"}
                other{"{0} mi/gal"}
            }
            mile-per-gallon-imperial{
                dnam{"mi/gal imp."}
                one{"{0} mi/gal imp."}
                other{"{0} mi/gal imp."}
            }
        }
        coordinate{
            east{"{0} E"}
            north{"{0} N"}
            south{"{0} S"}
            west{"{0} O"}
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"octet"}
                one{"{0} octet"}
                other{"{0} octet"}
            }
            gigabit{
                dnam{"Gbit"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"Go"}
                one{"{0} Go"}
                other{"{0} Go"}
            }
            kilobit{
                dnam{"kbit"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"ko"}
                one{"{0} ko"}
                other{"{0} ko"}
            }
            megabit{
                dnam{"Mbit"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"Mo"}
                one{"{0} Mo"}
                other{"{0} Mo"}
            }
            terabit{
                dnam{"Tbit"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"To"}
                one{"{0} To"}
                other{"{0} To"}
            }
        }
        duration{
            century{
                dnam{"si"}
                one{"{0} si"}
                other{"{0} si"}
            }
            day{
                dnam{"j"}
                one{"{0} j"}
                other{"{0} j"}
                per{"{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"}
                per{"{0}/min"}
            }
            month{
                dnam{"m."}
                one{"{0} m."}
                other{"{0} m."}
                per{"{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."}
                per{"{0}/sem."}
            }
            year{
                dnam{"ans"}
                one{"{0} an"}
                other{"{0} ans"}
                per{"{0}/an"}
            }
        }
        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"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            fathom{
                dnam{"fm"}
                one{"{0} fm"}
                other{"{0} fm"}
            }
            foot{
                dnam{"pi"}
                one{"{0} pi"}
                other{"{0} pi"}
                per{"{0}/pi"}
            }
            furlong{
                dnam{"fur"}
                one{"{0} fur"}
                other{"{0} fur"}
            }
            inch{
                dnam{"po"}
                one{"{0} po"}
                other{"{0} po"}
                per{"{0}/po"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"al"}
                one{"{0} al"}
                other{"{0} al"}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                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{
                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"}
            }
            point{
                dnam{"points"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            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"}
                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{"oz"}
                one{"{0} oz"}
                other{"{0} oz"}
                per{"{0}/oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                one{"{0} lb"}
                other{"{0} lb"}
                per{"{0}/lb"}
            }
            stone{
                dnam{"st"}
                one{"{0} st"}
                other{"{0} st"}
            }
            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{"mmHg"}
                one{"{0} mmHg"}
                other{"{0} mmHg"}
            }
            pound-per-square-inch{
                dnam{"lb/po²"}
                one{"{0} lb/po²"}
                other{"{0} lb/po²"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            knot{
                dnam{"nd"}
                one{"{0} nd"}
                other{"{0} nd"}
            }
            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{"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³"}
                per{"{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³"}
                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{"tasses"}
                one{"{0} tasse"}
                other{"{0} tasses"}
            }
            cup-metric{
                dnam{"tm"}
                one{"{0} tm"}
                other{"{0} tm"}
            }
            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"}
            }
            gallon-imperial{
                dnam{"gal imp."}
                one{"{0} gal imp."}
                other{"{0} gal imp."}
                per{"{0} gal imp."}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"l"}
                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{"pte"}
                one{"{0} pte"}
                other{"{0} pte"}
            }
            pint-metric{
                dnam{"mpt"}
                one{"{0} mpt"}
                other{"{0} mpt"}
            }
            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."}
            }
        }
    }
}
