﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/nb.xml
// *
// ***************************************************************************
nb{
    Version{"2.1.23.79"}
    durationUnits{
        hm{
            "h.mm",
            "h:mm",
        }
        hms{
            "h.mm.ss",
            "h:mm:ss",
        }
        ms{
            "m.ss",
            "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"}
            }
            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"}
            }
            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"}
            }
        }
        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"}
            }
        }
        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}/min"}
            }
            month{
                dnam{"måneder"}
                one{"{0} måned"}
                other{"{0} måneder"}
                per{"{0}/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"}
            }
            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"}
            }
            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{
                one{"{0}G"}
                other{"{0}G"}
            }
        }
        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{
            centimeter{
                dnam{"cm"}
                one{"{0}cm"}
                other{"{0}cm"}
            }
            foot{
                one{"{0} fot"}
                other{"{0} fot"}
            }
            inch{
                one{"{0} tomme"}
                other{"{0} tommer"}
            }
            kilometer{
                dnam{"km"}
                one{"{0}km"}
                other{"{0}km"}
            }
            light-year{
                one{"{0} lysår"}
                other{"{0} lysår"}
            }
            meter{
                dnam{"meter"}
                one{"{0}m"}
                other{"{0}m"}
            }
            mile{
                one{"{0} eng mil"}
                other{"{0} eng mil"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0}mm"}
                other{"{0}mm"}
            }
            picometer{
                one{"{0}pm"}
                other{"{0}pm"}
            }
            yard{
                one{"{0} yard"}
                other{"{0} yard"}
            }
        }
        mass{
            gram{
                dnam{"gram"}
                one{"{0}g"}
                other{"{0}g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0}kg"}
                other{"{0}kg"}
            }
            ounce{
                one{"{0} unse"}
                other{"{0} unser"}
            }
            pound{
                one{"{0} pund"}
                other{"{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{
                one{"{0}hPa"}
                other{"{0}hPa"}
            }
            inch-hg{
                one{"{0}ʹʹ Hg"}
                other{"{0}ʹʹ Hg"}
            }
            millibar{
                one{"{0}mbar"}
                other{"{0}mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/t"}
                one{"{0}km/t"}
                other{"{0}km/t"}
            }
            meter-per-second{
                one{"{0}m/s"}
                other{"{0}m/s"}
            }
            mile-per-hour{
                one{"{0} eng mil/t"}
                other{"{0} eng mil/t"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°"}
                other{"{0}°"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0}km³"}
                other{"{0}km³"}
            }
            cubic-mile{
                one{"{0} eng mil³"}
                other{"{0} eng mil³"}
            }
            liter{
                dnam{"liter"}
                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{"buesekunder"}
                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²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"engelske mil²"}
                one{"{0} mile²"}
                other{"{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"}
            }
        }
        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"}
            }
        }
        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} lysår"}
                other{"{0} lysår"}
            }
            meter{
                dnam{"meter"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"engelske mil"}
                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"}
            }
            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{"amerikanske 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"}
            }
            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"}
            }
        }
    }
}
