﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
nb{
    Version{"2.1.41.97"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"g-kraft"}
                one{"{0} g-kraft"}
                other{"{0} g-kraft"}
            }
            meter-per-second-squared{
                dnam{"meter per sekund²"}
                one{"{0} meter per sekund²"}
                other{"{0} meter per sekund²"}
            }
        }
        angle{
            arc-minute{
                dnam{"bueminutter"}
                one{"{0} bueminutt"}
                other{"{0} bueminutter"}
            }
            arc-second{
                dnam{"buesekunder"}
                one{"{0} buesekund"}
                other{"{0} buesekunder"}
            }
            degree{
                dnam{"grader"}
                one{"{0} grad"}
                other{"{0} grader"}
            }
            radian{
                dnam{"radianer"}
                one{"{0} radian"}
                other{"{0} radianer"}
            }
            revolution{
                dnam{"omdreininger"}
                one{"{0} omdreining"}
                other{"{0} omdreininger"}
            }
        }
        area{
            acre{
                dnam{"acre"}
                one{"{0} acre"}
                other{"{0} acre"}
            }
            hectare{
                dnam{"hektar"}
                one{"{0} hektar"}
                other{"{0} hektar"}
            }
            square-centimeter{
                dnam{"kvadratcentimeter"}
                one{"{0} kvadratcentimeter"}
                other{"{0} kvadratcentimeter"}
                per{"{0} per kvadratcentimeter"}
            }
            square-foot{
                dnam{"kvadratfot"}
                one{"{0} kvadratfot"}
                other{"{0} kvadratfot"}
            }
            square-inch{
                dnam{"kvadrattommer"}
                one{"{0} kvadrattomme"}
                other{"{0} kvadrattommer"}
                per{"{0} per kvadrattomme"}
            }
            square-kilometer{
                dnam{"kvadratkilometer"}
                one{"{0} kvadratkilometer"}
                other{"{0} kvadratkilometer"}
                per{"{0} per kvadratkilometer"}
            }
            square-meter{
                dnam{"kvadratmeter"}
                one{"{0} kvadratmeter"}
                other{"{0} kvadratmeter"}
                per{"{0} per kvadratmeter"}
            }
            square-mile{
                dnam{"engelske kvadratmil"}
                one{"{0} engelsk kvadratmil"}
                other{"{0} engelske kvadratmil"}
                per{"{0} per engelsk kvadratmil"}
            }
            square-yard{
                dnam{"kvadratyard"}
                one{"{0} kvadratyard"}
                other{"{0} kvadratyard"}
            }
        }
        compound{
            per{"{0} per {1}"}
        }
        concentr{
            karat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
            milligram-per-deciliter{
                dnam{"milligram per desiliter"}
                one{"{0} milligram per desiliter"}
                other{"{0} milligram per desiliter"}
            }
            millimole-per-liter{
                dnam{"millimol per liter"}
                one{"{0} millimol per liter"}
                other{"{0} millimol per liter"}
            }
            part-per-million{
                dnam{"deler per million"}
                one{"{0} del per million"}
                other{"{0} deler per million"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"liter per 100 kilometer"}
                one{"{0} liter per 100 kilometer"}
                other{"{0} liter per 100 kilometer"}
            }
            liter-per-kilometer{
                dnam{"liter per kilometer"}
                one{"{0} liter per kilometer"}
                other{"{0} liter per kilometer"}
            }
            mile-per-gallon{
                dnam{"engelske mil per gallon"}
                one{"{0} engelsk mil per gallon"}
                other{"{0} engelske mil per gallon"}
            }
            mile-per-gallon-imperial{
                dnam{"engelske mil per britiske gallon"}
                one{"{0} engelsk mil per britisk gallon"}
                other{"{0} engelske mil per britiske gallon"}
            }
        }
        coordinate{
            east{"{0} øst"}
            north{"{0} nord"}
            south{"{0} sør"}
            west{"{0} vest"}
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"byte"}
                one{"{0} byte"}
                other{"{0} byte"}
            }
            gigabit{
                dnam{"gigabit"}
                one{"{0} gigabit"}
                other{"{0} gigabit"}
            }
            gigabyte{
                dnam{"gigabyte"}
                one{"{0} gigabyte"}
                other{"{0} gigabyte"}
            }
            kilobit{
                dnam{"kilobit"}
                one{"{0} kilobit"}
                other{"{0} kilobit"}
            }
            kilobyte{
                dnam{"kilobyte"}
                one{"{0} kilobyte"}
                other{"{0} kilobyte"}
            }
            megabit{
                dnam{"megabit"}
                one{"{0} megabit"}
                other{"{0} megabit"}
            }
            megabyte{
                dnam{"megabyte"}
                one{"{0} megabyte"}
                other{"{0} megabyte"}
            }
            terabit{
                dnam{"terabit"}
                one{"{0} terabit"}
                other{"{0} terabit"}
            }
            terabyte{
                dnam{"terabyte"}
                one{"{0} terabyte"}
                other{"{0} terabyte"}
            }
        }
        duration{
            century{
                dnam{"århundrer"}
                one{"{0} århundre"}
                other{"{0} århundrer"}
            }
            day{
                dnam{"døgn"}
                one{"{0} døgn"}
                other{"{0} døgn"}
                per{"{0} per døgn"}
            }
            hour{
                dnam{"timer"}
                one{"{0} time"}
                other{"{0} timer"}
                per{"{0} per time"}
            }
            microsecond{
                dnam{"mikrosekunder"}
                one{"{0} mikrosekund"}
                other{"{0} mikrosekunder"}
            }
            millisecond{
                dnam{"millisekunder"}
                one{"{0} millisekund"}
                other{"{0} millisekunder"}
            }
            minute{
                dnam{"minutter"}
                one{"{0} minutt"}
                other{"{0} minutter"}
                per{"{0} per minutt"}
            }
            month{
                dnam{"måneder"}
                one{"{0} måned"}
                other{"{0} måneder"}
                per{"{0} per måned"}
            }
            nanosecond{
                dnam{"nanosekunder"}
                one{"{0} nanosekund"}
                other{"{0} nanosekunder"}
            }
            second{
                dnam{"sekunder"}
                one{"{0} sekund"}
                other{"{0} sekunder"}
                per{"{0} per sekund"}
            }
            week{
                dnam{"uker"}
                one{"{0} uke"}
                other{"{0} uker"}
                per{"{0} per uke"}
            }
            year{
                dnam{"år"}
                one{"{0} år"}
                other{"{0} år"}
                per{"{0} per år"}
            }
        }
        electric{
            ampere{
                dnam{"ampere"}
                one{"{0} ampere"}
                other{"{0} ampere"}
            }
            milliampere{
                dnam{"milliampere"}
                one{"{0} milliampere"}
                other{"{0} milliampere"}
            }
            ohm{
                dnam{"ohm"}
                one{"{0} ohm"}
                other{"{0} ohm"}
            }
            volt{
                dnam{"volt"}
                one{"{0} volt"}
                other{"{0} volt"}
            }
        }
        energy{
            calorie{
                dnam{"kalorier"}
                one{"{0} kalori"}
                other{"{0} kalorier"}
            }
            foodcalorie{
                dnam{"kalorier"}
                one{"{0} kalori"}
                other{"{0} kalorier"}
            }
            joule{
                dnam{"joule"}
                one{"{0} joule"}
                other{"{0} joule"}
            }
            kilocalorie{
                dnam{"kilokalorier"}
                one{"{0} kilokalori"}
                other{"{0} kilokalorier"}
            }
            kilojoule{
                dnam{"kilojoule"}
                one{"{0} kilojoule"}
                other{"{0} kilojoule"}
            }
            kilowatt-hour{
                dnam{"kilowattimer"}
                one{"{0} kilowattime"}
                other{"{0} kilowattimer"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigahertz"}
                one{"{0} gigahertz"}
                other{"{0} gigahertz"}
            }
            hertz{
                dnam{"hertz"}
                one{"{0} hertz"}
                other{"{0} hertz"}
            }
            kilohertz{
                dnam{"kilohertz"}
                one{"{0} kilohertz"}
                other{"{0} kilohertz"}
            }
            megahertz{
                dnam{"megahertz"}
                one{"{0} megahertz"}
                other{"{0} megahertz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomiske enheter"}
                one{"{0} astronomisk enhet"}
                other{"{0} astronomiske enheter"}
            }
            centimeter{
                dnam{"centimeter"}
                one{"{0} centimeter"}
                other{"{0} centimeter"}
                per{"{0} per centimeter"}
            }
            decimeter{
                dnam{"desimeter"}
                one{"{0} desimeter"}
                other{"{0} desimeter"}
            }
            foot{
                dnam{"fot"}
                one{"{0} fot"}
                other{"{0} fot"}
                per{"{0} per fot"}
            }
            inch{
                dnam{"tommer"}
                one{"{0} tomme"}
                other{"{0} tommer"}
                per{"{0} per tomme"}
            }
            kilometer{
                dnam{"kilometer"}
                one{"{0} kilometer"}
                other{"{0} kilometer"}
                per{"{0} per kilometer"}
            }
            light-year{
                dnam{"lysår"}
                one{"{0} lysår"}
                other{"{0} lysår"}
            }
            meter{
                dnam{"meter"}
                one{"{0} meter"}
                other{"{0} meter"}
                per{"{0} per meter"}
            }
            micrometer{
                dnam{"mikrometer"}
                one{"{0} mikrometer"}
                other{"{0} mikrometer"}
            }
            mile{
                dnam{"engelske mil"}
                one{"{0} engelsk mil"}
                other{"{0} engelske mil"}
            }
            mile-scandinavian{
                dnam{"mil"}
                one{"{0} mil"}
                other{"{0} mil"}
            }
            millimeter{
                dnam{"millimeter"}
                one{"{0} millimeter"}
                other{"{0} millimeter"}
            }
            nanometer{
                dnam{"nanometer"}
                one{"{0} nanometer"}
                other{"{0} nanometer"}
            }
            nautical-mile{
                dnam{"nautiske mil"}
                one{"{0} nautisk mil"}
                other{"{0} nautiske mil"}
            }
            parsec{
                dnam{"parsec"}
                one{"{0} parsec"}
                other{"{0} parsec"}
            }
            picometer{
                dnam{"pikometer"}
                one{"{0} pikometer"}
                other{"{0} pikometer"}
            }
            point{
                dnam{"punkter"}
                one{"{0} punkt"}
                other{"{0} punkter"}
            }
            yard{
                dnam{"yard"}
                one{"{0} yard"}
                other{"{0} yard"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lux"}
                other{"{0} lux"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
            gram{
                dnam{"gram"}
                one{"{0} gram"}
                other{"{0} gram"}
                per{"{0} per gram"}
            }
            kilogram{
                dnam{"kilogram"}
                one{"{0} kilogram"}
                other{"{0} kilogram"}
                per{"{0} per kilogram"}
            }
            metric-ton{
                dnam{"tonn"}
                one{"{0} tonn"}
                other{"{0} tonn"}
            }
            microgram{
                dnam{"mikrogram"}
                one{"{0} mikrogram"}
                other{"{0} mikrogram"}
            }
            milligram{
                dnam{"milligram"}
                one{"{0} milligram"}
                other{"{0} milligram"}
            }
            ounce{
                dnam{"unser"}
                one{"{0} unse"}
                other{"{0} unser"}
                per{"{0} per unse"}
            }
            ounce-troy{
                dnam{"troy ounce"}
                one{"{0} troy ounce"}
                other{"{0} troy ounce"}
            }
            pound{
                dnam{"pund"}
                one{"{0} pund"}
                other{"{0} pund"}
                per{"{0} per pund"}
            }
            ton{
                dnam{"amerikanske tonn"}
                one{"{0} amerikansk tonn"}
                other{"{0} amerikanske tonn"}
            }
        }
        power{
            gigawatt{
                dnam{"gigawatt"}
                one{"{0} gigawatt"}
                other{"{0} gigawatt"}
            }
            horsepower{
                dnam{"hestekrefter"}
                one{"{0} hestekraft"}
                other{"{0} hestekrefter"}
            }
            kilowatt{
                dnam{"kilowatt"}
                one{"{0} kilowatt"}
                other{"{0} kilowatt"}
            }
            megawatt{
                dnam{"megawatt"}
                one{"{0} megawatt"}
                other{"{0} megawatt"}
            }
            milliwatt{
                dnam{"milliwatt"}
                one{"{0} milliwatt"}
                other{"{0} milliwatt"}
            }
            watt{
                dnam{"watt"}
                one{"{0} watt"}
                other{"{0} watt"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektopascal"}
                one{"{0} hektopascal"}
                other{"{0} hektopascal"}
            }
            inch-hg{
                dnam{"tommer kvikksølv"}
                one{"{0} tomme kvikksølv"}
                other{"{0} tommer kvikksølv"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} millibar"}
                other{"{0} millibar"}
            }
            millimeter-of-mercury{
                dnam{"millimeter kvikksølv"}
                one{"{0} millimeter kvikksølv"}
                other{"{0} millimeter kvikksølv"}
            }
            pound-per-square-inch{
                dnam{"pund per kvadrattomme"}
                one{"{0} pund per kvadrattomme"}
                other{"{0} pund per kvadrattomme"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometer per time"}
                one{"{0} kilometer per time"}
                other{"{0} kilometer per time"}
            }
            knot{
                dnam{"knop"}
                one{"{0} knop"}
                other{"{0} knop"}
            }
            meter-per-second{
                dnam{"meter per sekund"}
                one{"{0} meter per sekund"}
                other{"{0} meter per sekund"}
            }
            mile-per-hour{
                dnam{"engelske mil per time"}
                one{"{0} engelsk mil per time"}
                other{"{0} engelske mil per time"}
            }
        }
        temperature{
            celsius{
                dnam{"grader celsius"}
                one{"{0} grad celsius"}
                other{"{0} grader celsius"}
            }
            fahrenheit{
                dnam{"grader fahrenheit"}
                one{"{0} grad fahrenheit"}
                other{"{0} grader fahrenheit"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"kelvin"}
                one{"{0} kelvin"}
                other{"{0} kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"acre-fot"}
                one{"{0} acre-fot"}
                other{"{0} acre-fot"}
            }
            centiliter{
                dnam{"centiliter"}
                one{"{0} centiliter"}
                other{"{0} centiliter"}
            }
            cubic-centimeter{
                dnam{"kubikkcentimeter"}
                one{"{0} kubikkcentimeter"}
                other{"{0} kubikkcentimeter"}
                per{"{0} per kubikkcentimeter"}
            }
            cubic-foot{
                dnam{"kubikkfot"}
                one{"{0} kubikkfot"}
                other{"{0} kubikkfot"}
            }
            cubic-inch{
                dnam{"kubikktommer"}
                one{"{0} kubikktomme"}
                other{"{0} kubikktommer"}
            }
            cubic-kilometer{
                dnam{"kubikkilometer"}
                one{"{0} kubikkilometer"}
                other{"{0} kubikkilometer"}
            }
            cubic-meter{
                dnam{"kubikkmeter"}
                one{"{0} kubikkmeter"}
                other{"{0} kubikkmeter"}
                per{"{0} per kubikkmeter"}
            }
            cubic-mile{
                dnam{"engelske kubikkmil"}
                one{"{0} engelsk kubikkmil"}
                other{"{0} engelske kubikkmil"}
            }
            cubic-yard{
                dnam{"kubikkyard"}
                one{"{0} kubikkyard"}
                other{"{0} kubikkyard"}
            }
            cup{
                dnam{"kopper"}
                one{"{0} kopp"}
                other{"{0} kopper"}
            }
            cup-metric{
                dnam{"metriske kopper"}
                one{"{0} metrisk kopp"}
                other{"{0} metriske kopper"}
            }
            deciliter{
                dnam{"desiliter"}
                one{"{0} desiliter"}
                other{"{0} desiliter"}
            }
            fluid-ounce{
                dnam{"væskeunser"}
                one{"{0} væskeunse"}
                other{"{0} væskeunser"}
            }
            gallon{
                dnam{"gallon"}
                one{"{0} gallon"}
                other{"{0} gallon"}
                per{"{0} per gallon"}
            }
            gallon-imperial{
                dnam{"britiske gallon"}
                one{"{0} britisk gallon"}
                other{"{0} britiske gallon"}
                per{"{0} per britisk gallon"}
            }
            hectoliter{
                dnam{"hektoliter"}
                one{"{0} hektoliter"}
                other{"{0} hektoliter"}
            }
            liter{
                dnam{"liter"}
                one{"{0} liter"}
                other{"{0} liter"}
                per{"{0} per liter"}
            }
            megaliter{
                dnam{"megaliter"}
                one{"{0} megaliter"}
                other{"{0} megaliter"}
            }
            milliliter{
                dnam{"milliliter"}
                one{"{0} milliliter"}
                other{"{0} milliliter"}
            }
            pint{
                dnam{"pint"}
                one{"{0} pint"}
                other{"{0} pint"}
            }
            pint-metric{
                dnam{"metriske pint"}
                one{"{0} metrisk pint"}
                other{"{0} metriske pint"}
            }
            quart{
                dnam{"quart"}
                one{"{0} quart"}
                other{"{0} quart"}
            }
            tablespoon{
                dnam{"spiseskjeer"}
                one{"{0} spiseskje"}
                other{"{0} spiseskjeer"}
            }
            teaspoon{
                dnam{"teskjeer"}
                one{"{0} teskje"}
                other{"{0} teskjeer"}
            }
        }
    }
    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{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                one{"{0}ha"}
                other{"{0}ha"}
            }
            square-foot{
                one{"{0}fot²"}
                other{"{0}fot²"}
            }
            square-kilometer{
                one{"{0}km²"}
                other{"{0}km²"}
            }
            square-meter{
                one{"{0}m²"}
                other{"{0}m²"}
            }
            square-mile{
                one{"{0} eng mil²"}
                other{"{0} eng mil²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"l/100km"}
                one{"{0} l/100km"}
                other{"{0} l/100km"}
            }
        }
        coordinate{
            east{"{0}Ø"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}V"}
        }
        duration{
            century{
                dnam{"årh."}
                one{"{0} årh."}
                other{"{0} årh."}
            }
            day{
                dnam{"døgn"}
                one{"{0}d"}
                other{"{0}d"}
                per{"{0}/d"}
            }
            hour{
                dnam{"time"}
                one{"{0}t"}
                other{"{0}t"}
                per{"{0}/t"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0}μs"}
                other{"{0}μs"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                dnam{"min"}
                one{"{0}m"}
                other{"{0}m"}
                per{"{0}/m"}
            }
            month{
                dnam{"måned"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0}ns"}
                other{"{0}ns"}
            }
            second{
                dnam{"sek"}
                one{"{0}s"}
                other{"{0}s"}
                per{"{0}/s"}
            }
            week{
                dnam{"uke"}
                one{"{0}u"}
                other{"{0}u"}
                per{"{0}/u"}
            }
            year{
                dnam{"år"}
                one{"{0}å"}
                other{"{0}å"}
                per{"{0}/år"}
            }
        }
        length{
            astronomical-unit{
                dnam{"au"}
                one{"{0}au"}
                other{"{0}au"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0}cm"}
                other{"{0}cm"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0}dm"}
                other{"{0}dm"}
            }
            foot{
                dnam{"fot"}
                one{"{0} fot"}
                other{"{0} fot"}
            }
            inch{
                dnam{"to"}
                one{"{0} tomme"}
                other{"{0} tommer"}
                per{"{0}to"}
            }
            kilometer{
                dnam{"km"}
                one{"{0}km"}
                other{"{0}km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"ly"}
                one{"{0} lysår"}
                other{"{0} lysår"}
            }
            meter{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0}µm"}
                other{"{0}µm"}
            }
            mile{
                dnam{"mile"}
                one{"{0} eng mil"}
                other{"{0} eng mil"}
            }
            mile-scandinavian{
                dnam{"mil"}
                one{"{0}mil"}
                other{"{0}mil"}
            }
            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} yard"}
                other{"{0} yard"}
            }
        }
        mass{
            gram{
                dnam{"gram"}
                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{"unse"}
                one{"{0} unse"}
                other{"{0} unser"}
            }
            pound{
                dnam{"pund"}
                one{"{0} pund"}
                other{"{0} pund"}
                per{"{0}/pund"}
            }
        }
        power{
            horsepower{
                one{"{0}hk"}
                other{"{0}hk"}
            }
            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{"inHg"}
                one{"{0}ʹʹ Hg"}
                other{"{0}ʹʹ Hg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0}mbar"}
                other{"{0}mbar"}
            }
            millimeter-of-mercury{
                one{"{0}mmHg"}
                other{"{0}mmHg"}
            }
            pound-per-square-inch{
                one{"{0}psi"}
                other{"{0}psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/t"}
                one{"{0}km/t"}
                other{"{0}km/t"}
            }
            knot{
                dnam{"kn"}
                one{"{0}kn"}
                other{"{0}kn"}
            }
            meter-per-second{
                dnam{"m/s"}
                one{"{0}m/s"}
                other{"{0}m/s"}
            }
            mile-per-hour{
                dnam{"mile/t"}
                one{"{0} eng mil/t"}
                other{"{0} eng mil/t"}
            }
        }
        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{
            cubic-kilometer{
                one{"{0}km³"}
                other{"{0}km³"}
            }
            cubic-mile{
                one{"{0} eng mil³"}
                other{"{0} eng mil³"}
            }
            liter{
                dnam{"l"}
                one{"{0}l"}
                other{"{0}l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"g-kraft"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"meter/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"bueminutter"}
                one{"{0} bmin"}
                other{"{0} bmin"}
            }
            arc-second{
                dnam{"buesek"}
                one{"{0} bsek"}
                other{"{0} bsek"}
            }
            degree{
                dnam{"grader"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"radianer"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"omdr."}
                one{"{0} omdr."}
                other{"{0} omdr."}
            }
        }
        area{
            acre{
                dnam{"acre"}
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                dnam{"hektar"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"kvadratfot"}
                one{"{0} fot²"}
                other{"{0} fot²"}
            }
            square-inch{
                dnam{"tommer²"}
                one{"{0} tommer²"}
                other{"{0} tommer²"}
                per{"{0}/tommer²"}
            }
            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{"engelske mil²"}
                one{"{0} mile²"}
                other{"{0} mile²"}
                per{"{0}/mile²"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"karat"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
            milligram-per-deciliter{
                dnam{"mg/dl"}
                one{"{0} mg/dl"}
                other{"{0} mg/dl"}
            }
            millimole-per-liter{
                dnam{"mmol/liter"}
                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{"liter/km"}
                one{"{0} l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"eng. mil/gal"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
            mile-per-gallon-imperial{
                dnam{"mile/brit. gal"}
                one{"{0} mpg brit."}
                other{"{0} mpg brit."}
            }
        }
        coordinate{
            east{"{0} Ø"}
            north{"{0} N"}
            south{"{0} S"}
            west{"{0} V"}
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"byte"}
                one{"{0} B"}
                other{"{0} B"}
            }
            gigabit{
                dnam{"Gbit"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kbit"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mbit"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            century{
                dnam{"årh."}
                one{"{0} årh."}
                other{"{0} årh."}
            }
            day{
                dnam{"døgn"}
                one{"{0} d"}
                other{"{0} d"}
                per{"{0}/d"}
            }
            hour{
                dnam{"timer"}
                one{"{0} t"}
                other{"{0} t"}
                per{"{0}/t"}
            }
            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åneder"}
                one{"{0} md."}
                other{"{0} md."}
                per{"{0}/md."}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sek"}
                one{"{0} sek"}
                other{"{0} sek"}
                per{"{0}/s"}
            }
            week{
                dnam{"uker"}
                one{"{0} u"}
                other{"{0} u"}
                per{"{0}/u"}
            }
            year{
                dnam{"år"}
                one{"{0} år"}
                other{"{0} år"}
                per{"{0}/år"}
            }
        }
        electric{
            ampere{
                dnam{"ampere"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"milliampere"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ohm"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"volt"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            joule{
                dnam{"joule"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"kilojoule"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"au"}
                one{"{0} au"}
                other{"{0} au"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"fot"}
                one{"{0} fot"}
                other{"{0} fot"}
                per{"{0}/fot"}
            }
            inch{
                dnam{"tommer"}
                one{"{0} tomme"}
                other{"{0} tommer"}
                per{"{0}/tomme"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"lysår"}
                one{"{0} ly"}
                other{"{0} ly"}
            }
            meter{
                dnam{"meter"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mile"}
                one{"{0} mile"}
                other{"{0} mile"}
            }
            mile-scandinavian{
                dnam{"mil"}
                one{"{0} mil"}
                other{"{0} mil"}
            }
            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{"parsec"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            point{
                dnam{"punkter"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            yard{
                dnam{"yard"}
                one{"{0} yard"}
                other{"{0} yard"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                one{"{0} c"}
                other{"{0} c"}
            }
            gram{
                dnam{"gram"}
                one{"{0} g"}
                other{"{0} g"}
                per{"{0}/g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
                per{"{0}/kg"}
            }
            metric-ton{
                dnam{"tonn"}
                one{"{0} tonn"}
                other{"{0} tonn"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"unser"}
                one{"{0} unse"}
                other{"{0} unser"}
                per{"{0}/unse"}
            }
            ounce-troy{
                dnam{"oz tr"}
                one{"{0} oz tr"}
                other{"{0} oz tr"}
            }
            pound{
                dnam{"pund"}
                one{"{0} pund"}
                other{"{0} pund"}
                per{"{0}/pund"}
            }
            ton{
                dnam{"am. tonn"}
                one{"{0} am. tonn"}
                other{"{0} am. tonn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"hk"}
                one{"{0} hk"}
                other{"{0} hk"}
            }
            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{"watt"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"inHg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mmHg"}
                one{"{0} mmHg"}
                other{"{0} mmHg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/time"}
                one{"{0} km/t"}
                other{"{0} km/t"}
            }
            knot{
                dnam{"kn"}
                one{"{0} kn"}
                other{"{0} kn"}
            }
            meter-per-second{
                dnam{"meter/s"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"engelske mil/t"}
                one{"{0} mile/t"}
                other{"{0} mile/t"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °C"}
                other{"{0} °C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0} °F"}
                other{"{0} °F"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"acre-fot"}
                one{"{0} ac-fot"}
                other{"{0} ac-fot"}
            }
            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{"fot³"}
                one{"{0} fot³"}
                other{"{0} fot³"}
            }
            cubic-inch{
                dnam{"tommer³"}
                one{"{0} tommer³"}
                other{"{0} tommer³"}
            }
            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{"engelske mil³"}
                one{"{0} mile³"}
                other{"{0} mile³"}
            }
            cubic-yard{
                dnam{"yard³"}
                one{"{0} yard³"}
                other{"{0} yard³"}
            }
            cup{
                dnam{"kopper"}
                one{"{0} k"}
                other{"{0} k"}
            }
            cup-metric{
                dnam{"m. kopper"}
                one{"{0} m. kopp"}
                other{"{0} m. kopper"}
            }
            deciliter{
                dnam{"dl"}
                one{"{0} dl"}
                other{"{0} dl"}
            }
            fluid-ounce{
                dnam{"væskeunse"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
                per{"{0}/gal"}
            }
            gallon-imperial{
                dnam{"brit. gal"}
                one{"{0} brit. gal"}
                other{"{0} brit. gal"}
                per{"{0}/brit. gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"liter"}
                one{"{0} l"}
                other{"{0} l"}
                per{"{0}/l"}
            }
            megaliter{
                dnam{"Ml"}
                one{"{0} Ml"}
                other{"{0} Ml"}
            }
            milliliter{
                dnam{"ml"}
                one{"{0} ml"}
                other{"{0} ml"}
            }
            pint{
                dnam{"pint"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            pint-metric{
                dnam{"mpt"}
                one{"{0} mpt"}
                other{"{0} mpt"}
            }
            quart{
                dnam{"qt"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"ss"}
                one{"{0} ss"}
                other{"{0} ss"}
            }
            teaspoon{
                dnam{"ts"}
                one{"{0} ts"}
                other{"{0} ts"}
            }
        }
    }
}
