﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/is.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/is.xml
 */
is{
    Version{"2.1.8.9"}
    units{
        acceleration{
            g-force{
                dnam{"þyngdarhröðun"}
                one{"{0} þyngdarhröðun"}
                other{"{0} þyngdarhröðun"}
            }
            meter-per-second-squared{
                dnam{"metrar á sekúndu, á sekúndu"}
                one{"{0} metri á sekúndu, á sekúndu"}
                other{"{0} metrar á sekúndu, á sekúndu"}
            }
        }
        angle{
            arc-minute{
                dnam{"bogamínútur"}
                one{"{0} bogamínúta"}
                other{"{0} bogamínútur"}
            }
            arc-second{
                dnam{"bogasekúndur"}
                one{"{0} bogasekúnda"}
                other{"{0} bogasekúndur"}
            }
            degree{
                dnam{"gráður"}
                one{"{0} gráða"}
                other{"{0} gráður"}
            }
            radian{
                dnam{"bogaeiningar"}
                one{"{0} bogaeining"}
                other{"{0} bogaeiningar"}
            }
        }
        area{
            acre{
                dnam{"ekrur"}
                one{"{0} ekra"}
                other{"{0} ekrur"}
            }
            hectare{
                dnam{"hektarar"}
                one{"{0} hektari"}
                other{"{0} hektarar"}
            }
            square-centimeter{
                dnam{"fersentimetrar"}
                one{"{0} fersentimetri"}
                other{"{0} fersentimetrar"}
            }
            square-foot{
                dnam{"ferfet"}
                one{"{0} ferfet"}
                other{"{0} ferfet"}
            }
            square-inch{
                dnam{"fertommur"}
                one{"{0} fertomma"}
                other{"{0} fertommur"}
            }
            square-kilometer{
                dnam{"ferkílómetrar"}
                one{"{0} ferkílómetri"}
                other{"{0} ferkílómetrar"}
            }
            square-meter{
                dnam{"fermetrar"}
                one{"{0} fermetri"}
                other{"{0} fermetrar"}
            }
            square-mile{
                dnam{"fermílur"}
                one{"{0} fermíla"}
                other{"{0} fermílur"}
            }
            square-yard{
                dnam{"feryardar"}
                one{"{0} feryard"}
                other{"{0} feryardar"}
            }
        }
        compound{
            per{"{0} á {1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"lítrar á kílómetra"}
                one{"{0} lítri á kílómetra"}
                other{"{0} lítrar á kílómetra"}
            }
            mile-per-gallon{
                dnam{"mílur á gallon"}
                one{"{0} míla á gallon"}
                other{"{0} mílur á gallon"}
            }
        }
        digital{
            bit{
                dnam{"bitar"}
                one{"{0} biti"}
                other{"{0} bitar"}
            }
            byte{
                dnam{"bæti"}
                one{"{0} bæti"}
                other{"{0} bæti"}
            }
            gigabit{
                dnam{"gígabitar"}
                one{"{0} gígabiti"}
                other{"{0} gígabitar"}
            }
            gigabyte{
                dnam{"gígabæti"}
                one{"{0} gígabæti"}
                other{"{0} gígabæti"}
            }
            kilobit{
                dnam{"kílóbitar"}
                one{"{0} kílóbiti"}
                other{"{0} kílóbitar"}
            }
            kilobyte{
                dnam{"kílóbæti"}
                one{"{0} kílóbæti"}
                other{"{0} kílóbæti"}
            }
            megabit{
                dnam{"megabitar"}
                one{"{0} megabiti"}
                other{"{0} megabitar"}
            }
            megabyte{
                dnam{"megabæti"}
                one{"{0} megabæti"}
                other{"{0} megabæti"}
            }
            terabit{
                dnam{"terabitar"}
                one{"{0} terabiti"}
                other{"{0} terabitar"}
            }
            terabyte{
                dnam{"terabæti"}
                one{"{0} terabæti"}
                other{"{0} terabæti"}
            }
        }
        duration{
            day{
                dnam{"dagar"}
                one{"{0} dagur"}
                other{"{0} dagar"}
            }
            hour{
                dnam{"klukkustundir"}
                one{"{0} klukkustund"}
                other{"{0} klukkustundir"}
                per{"{0} á klst."}
            }
            microsecond{
                dnam{"míkrósekúndur"}
                one{"{0} míkrósekúnda"}
                other{"{0} míkrósekúndur"}
            }
            millisecond{
                dnam{"millisekúndur"}
                one{"{0} millisekúnda"}
                other{"{0} millisekúndur"}
            }
            minute{
                dnam{"mínútur"}
                one{"{0} mínúta"}
                other{"{0} mínútur"}
            }
            month{
                dnam{"mánuðir"}
                one{"{0} mánuður"}
                other{"{0} mánuðir"}
            }
            nanosecond{
                dnam{"nanósekúndur"}
                one{"{0} nanósekúnda"}
                other{"{0} nanósekúndur"}
            }
            second{
                dnam{"sekúndur"}
                one{"{0} sekúnda"}
                other{"{0} sekúndur"}
                per{"{0} á sekúndu"}
            }
            week{
                dnam{"vikur"}
                one{"{0} vika"}
                other{"{0} vikur"}
            }
            year{
                dnam{"ár"}
                one{"{0} ár"}
                other{"{0} ár"}
            }
        }
        electric{
            ampere{
                dnam{"amper"}
                one{"{0} amper"}
                other{"{0} amper"}
            }
            milliampere{
                dnam{"milliamper"}
                one{"{0} milliamper"}
                other{"{0} milliamper"}
            }
            ohm{
                dnam{"ohm"}
                one{"{0} ohm"}
                other{"{0} ohm"}
            }
            volt{
                dnam{"volt"}
                one{"{0} volt"}
                other{"{0} volt"}
            }
        }
        energy{
            calorie{
                dnam{"kaloríur"}
                one{"{0} kaloría"}
                other{"{0} kaloríur"}
            }
            foodcalorie{
                dnam{"hitaeiningar"}
                one{"{0} hitaeining"}
                other{"{0} hitaeiningar"}
            }
            joule{
                dnam{"júl"}
                one{"{0} júl"}
                other{"{0} júl"}
            }
            kilocalorie{
                dnam{"kílókaloríur"}
                one{"{0} kílókaloría"}
                other{"{0} kílókaloríur"}
            }
            kilojoule{
                dnam{"kílójúl"}
                one{"{0} kílójúl"}
                other{"{0} kílójúl"}
            }
            kilowatt-hour{
                dnam{"kílóvattstundir"}
                one{"{0} kílóvattstund"}
                other{"{0} kílóvattstundir"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gígahertz"}
                one{"{0} gígahertz"}
                other{"{0} gígahertz"}
            }
            hertz{
                dnam{"hertz"}
                one{"{0} hertz"}
                other{"{0} hertz"}
            }
            kilohertz{
                dnam{"kílóhertz"}
                one{"{0} kílóhertz"}
                other{"{0} kílóhertz"}
            }
            megahertz{
                dnam{"megahertz"}
                one{"{0} megahertz"}
                other{"{0} megahertz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"stjarnfræðieiningar"}
                one{"{0} stjarnfræðieining"}
                other{"{0} stjarnfræðieiningar"}
            }
            centimeter{
                dnam{"sentimetrar"}
                one{"{0} sentimetri"}
                other{"{0} sentimetrar"}
            }
            decimeter{
                dnam{"desimetrar"}
                one{"{0} desimetri"}
                other{"{0} desimetrar"}
            }
            foot{
                dnam{"fet"}
                one{"{0} fet"}
                other{"{0} fet"}
            }
            inch{
                dnam{"tommur"}
                one{"{0} tomma"}
                other{"{0} tommur"}
            }
            kilometer{
                dnam{"kílómetrar"}
                one{"{0} kílómetri"}
                other{"{0} kílómetrar"}
            }
            light-year{
                dnam{"ljósár"}
                one{"{0} ljósár"}
                other{"{0} ljósár"}
            }
            meter{
                dnam{"metrar"}
                one{"{0} metri"}
                other{"{0} metrar"}
            }
            micrometer{
                dnam{"míkrómetrar"}
                one{"{0} míkrómetri"}
                other{"{0} míkrómetrar"}
            }
            mile{
                dnam{"mílur"}
                one{"{0} míla"}
                other{"{0} mílur"}
            }
            millimeter{
                dnam{"millimetrar"}
                one{"{0} millimetri"}
                other{"{0} millimetrar"}
            }
            nanometer{
                dnam{"nanómetrar"}
                one{"{0} nanómetri"}
                other{"{0} nanómetrar"}
            }
            nautical-mile{
                dnam{"sjómílur"}
                one{"{0} sjómíla"}
                other{"{0} sjómílur"}
            }
            parsec{
                dnam{"parsek"}
                one{"{0} parsek"}
                other{"{0} parsek"}
            }
            picometer{
                dnam{"píkómetrar"}
                one{"{0} píkómetri"}
                other{"{0} píkómetrar"}
            }
            yard{
                dnam{"yardar"}
                one{"{0} yard"}
                other{"{0} yardar"}
            }
        }
        light{
            lux{
                dnam{"lúx"}
                one{"{0} lúx"}
                other{"{0} lúx"}
            }
        }
        mass{
            carat{
                dnam{"karöt"}
                one{"{0} karat"}
                other{"{0} karöt"}
            }
            gram{
                dnam{"grömm"}
                one{"{0} gramm"}
                other{"{0} grömm"}
            }
            kilogram{
                dnam{"kílógrömm"}
                one{"{0} kílógramm"}
                other{"{0} kílógrömm"}
            }
            metric-ton{
                dnam{"tonn"}
                one{"{0} tonn"}
                other{"{0} tonn"}
            }
            microgram{
                dnam{"míkrógrömm"}
                one{"{0} míkrógramm"}
                other{"{0} míkrógrömm"}
            }
            milligram{
                dnam{"milligrömm"}
                one{"{0} milligramm"}
                other{"{0} milligrömm"}
            }
            ounce{
                dnam{"únsur"}
                one{"{0} únsa"}
                other{"{0} únsur"}
            }
            ounce-troy{
                dnam{"troyesúnsur"}
                one{"{0} troyesúnsa"}
                other{"{0} troyesúnsur"}
            }
            pound{
                dnam{"pund"}
                one{"{0} pund"}
                other{"{0} pund"}
            }
            ton{
                dnam{"bandarískt tonn"}
                one{"{0} bandarískt tonn"}
                other{"{0} bandarísk tonn"}
            }
        }
        power{
            gigawatt{
                dnam{"gígavött"}
                one{"{0} gígavatt"}
                other{"{0} gígavött"}
            }
            horsepower{
                dnam{"hestöfl"}
                one{"{0} hestafl"}
                other{"{0} hestöfl"}
            }
            kilowatt{
                dnam{"kílóvött"}
                one{"{0} kílóvatt"}
                other{"{0} kílóvött"}
            }
            megawatt{
                dnam{"megavött"}
                one{"{0} megavatt"}
                other{"{0} megavött"}
            }
            milliwatt{
                dnam{"millivött"}
                one{"{0} millivatt"}
                other{"{0} millivött"}
            }
            watt{
                dnam{"vött"}
                one{"{0} vatt"}
                other{"{0} vött"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hektópasköl"}
                one{"{0} hektópaskal"}
                other{"{0} hektópasköl"}
            }
            inch-hg{
                dnam{"tommur af kvikvasilfri"}
                one{"{0} tomma af kvikasilfri"}
                other{"{0} tommur af kvikvasilfri"}
            }
            millibar{
                dnam{"millibör"}
                one{"{0} millibar"}
                other{"{0} millibör"}
            }
            millimeter-of-mercury{
                dnam{"millimetrar af kvikasilfri"}
                one{"{0} millimetrar af kvikasilfri"}
                other{"{0} millimetrar af kvikasilfri"}
            }
            pound-per-square-inch{
                dnam{"pund á fertommu"}
                one{"{0} pund á fertommu"}
                other{"{0} pund á fertommu"}
            }
        }
        proportion{
            karat{
                dnam{"karöt"}
                one{"{0} karat"}
                other{"{0} karöt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kílómetrar á klukkustund"}
                one{"{0} kílómetri á klukkustund"}
                other{"{0} kílómetrar á klukkustund"}
            }
            meter-per-second{
                dnam{"metrar á sekúndu"}
                one{"{0} metri á sekúndu"}
                other{"{0} metrar á sekúndu"}
            }
            mile-per-hour{
                dnam{"mílur á klukkustund"}
                one{"{0} míla á klukkustund"}
                other{"{0} mílur á klukkustund"}
            }
        }
        temperature{
            celsius{
                dnam{"gráður á Celsíus"}
                one{"{0} gráða á Celsíus"}
                other{"{0} gráður á Celsíus"}
            }
            fahrenheit{
                dnam{"gráður á Fahrenheit"}
                one{"{0} gráða á Fahrenheit"}
                other{"{0} gráður á Fahrenheit"}
            }
            kelvin{
                dnam{"kelvin"}
                one{"{0} kelvin"}
                other{"{0} kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"ekrufet"}
                one{"{0} ekrufet"}
                other{"{0} ekrufet"}
            }
            centiliter{
                dnam{"sentilítrar"}
                one{"{0} sentilítri"}
                other{"{0} sentilítrar"}
            }
            cubic-centimeter{
                dnam{"rúmsentimetrar"}
                one{"{0} rúmsentimetri"}
                other{"{0} rúmsentimetrar"}
            }
            cubic-foot{
                dnam{"rúmfet"}
                one{"{0} rúmfet"}
                other{"{0} rúmfet"}
            }
            cubic-inch{
                dnam{"rúmtommur"}
                one{"{0} rúmtomma"}
                other{"{0} rúmtommur"}
            }
            cubic-kilometer{
                dnam{"rúmkílómetrar"}
                one{"{0} rúmkílómetri"}
                other{"{0} rúmkílómetrar"}
            }
            cubic-meter{
                dnam{"rúmmetrar"}
                one{"{0} rúmmetri"}
                other{"{0} rúmmetrar"}
            }
            cubic-mile{
                dnam{"rúmmílur"}
                one{"{0} rúmmíla"}
                other{"{0} rúmmílur"}
            }
            cubic-yard{
                dnam{"rúmyardar"}
                one{"{0} rúmyard"}
                other{"{0} rúmyardar"}
            }
            cup{
                dnam{"bollar"}
                one{"{0} bolli"}
                other{"{0} bollar"}
            }
            deciliter{
                dnam{"desilítrar"}
                one{"{0} desilítri"}
                other{"{0} desilítrar"}
            }
            fluid-ounce{
                dnam{"vökvaúnsur"}
                one{"{0} vökvaúnsa"}
                other{"{0} vökvaúnsur"}
            }
            gallon{
                dnam{"gallon"}
                one{"{0} gallon"}
                other{"{0} gallon"}
            }
            hectoliter{
                dnam{"hektólítrar"}
                one{"{0} hektólítri"}
                other{"{0} hektólítrar"}
            }
            liter{
                dnam{"lítrar"}
                one{"{0} lítri"}
                other{"{0} lítrar"}
            }
            megaliter{
                dnam{"megalítrar"}
                one{"{0} megalítri"}
                other{"{0} megalítrar"}
            }
            milliliter{
                dnam{"millilítrar"}
                one{"{0} millilítri"}
                other{"{0} millilítrar"}
            }
            pint{
                dnam{"hálfpottar"}
                one{"{0} hálfpottur"}
                other{"{0} hálfpottar"}
            }
            quart{
                dnam{"kvartar"}
                one{"{0} kvart"}
                other{"{0} kvartar"}
            }
            tablespoon{
                dnam{"matskeiðar"}
                one{"{0} matskeið"}
                other{"{0} matskeiðar"}
            }
            teaspoon{
                dnam{"teskeiðar"}
                one{"{0} teskeið"}
                other{"{0} teskeiðar"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}G"}
            }
        }
        angle{
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ek."}
                other{"{0} ek."}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ferfet"}
                other{"{0} ferfet"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0}mí²"}
                other{"{0}mí²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        duration{
            day{
                dnam{"dagur"}
                one{"{0} d."}
                other{"{0} d."}
            }
            hour{
                dnam{"klukkustund"}
                one{"{0} klst."}
                other{"{0} klst."}
            }
            millisecond{
                dnam{"millisek."}
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                dnam{"mín."}
                one{"{0} mín."}
                other{"{0} mín."}
            }
            month{
                dnam{"mánuður"}
                one{"{0} mán."}
                other{"{0} mán."}
            }
            second{
                dnam{"sek."}
                one{"{0} sek."}
                other{"{0} sek."}
            }
            week{
                dnam{"vika"}
                one{"{0} v."}
                other{"{0} v."}
            }
            year{
                dnam{"ár"}
                one{"{0}á"}
                other{"{0}á"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} fet"}
                other{"{0} fet"}
            }
            inch{
                one{"{0}″"}
                other{"{0}″"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} lj."}
                other{"{0} lj."}
            }
            meter{
                dnam{"metri"}
                one{"{0}m"}
                other{"{0}m"}
            }
            mile{
                one{"{0} mí"}
                other{"{0} mí"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0}mm"}
                other{"{0}mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} únsa"}
                other{"{0} únsur"}
            }
            pound{
                dnam{"pund"}
                one{"{0} p."}
                other{"{0} p."}
            }
            ton{
                dnam{"BNA tonn"}
                one{"{0} BNA tn"}
                other{"{0} BNA tn"}
            }
        }
        power{
            horsepower{
                one{"{0} ek"}
                other{"{0} ek"}
            }
            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}\u0022 Hg"}
                other{"{0}\u0022 Hg"}
            }
            millibar{
                one{"{0} mbar"}
                other{"{0} mbör"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/klst."}
                one{"{0} km/klst."}
                other{"{0} km/klst."}
            }
            meter-per-second{
                dnam{"m/sek."}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                one{"{0} míla/klst."}
                other{"{0} míl./klst."}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0}mi³"}
                other{"{0}mi³"}
            }
            liter{
                dnam{"lítri"}
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"g-hröðun"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"metrar/sek²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"bogamín."}
                one{"{0} bogamín."}
                other{"{0} bogamín."}
            }
            arc-second{
                dnam{"bogasek."}
                one{"{0} bogasek."}
                other{"{0} bogasek."}
            }
            degree{
                dnam{"gráður"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"ekrur"}
                one{"{0} ek."}
                other{"{0} ek."}
            }
            hectare{
                dnam{"hektarar"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                dnam{"ferfet"}
                one{"{0} ferfet"}
                other{"{0} ferfet"}
            }
            square-inch{
                dnam{"tommur²"}
                one{"{0} t²"}
                other{"{0} t²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"fermetrar"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"fermílur"}
                one{"{0} fermíla"}
                other{"{0} fermílur"}
            }
            square-yard{
                dnam{"yardar²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"lítrar/km"}
                one{"{0} l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"mílur/gallon"}
                one{"{0} mí./gal."}
                other{"{0} mí./gal."}
            }
        }
        digital{
            bit{
                dnam{"biti"}
                one{"{0} biti"}
                other{"{0} bitar"}
            }
            byte{
                dnam{"bæti"}
                one{"{0} bæti"}
                other{"{0} bæti"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mb"}
                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{
            day{
                dnam{"dagar"}
                one{"{0} dagur"}
                other{"{0} dagar"}
            }
            hour{
                dnam{"klukkustundir"}
                one{"{0} klst."}
                other{"{0} klst."}
                per{"{0}/klst."}
            }
            microsecond{
                dnam{"μsek."}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"millisek."}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"mín."}
                one{"{0} mín."}
                other{"{0} mín."}
            }
            month{
                dnam{"mánuðir"}
                one{"{0} mán."}
                other{"{0} mán."}
            }
            nanosecond{
                dnam{"nanósek."}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sek."}
                one{"{0} sek."}
                other{"{0} sek."}
                per{"{0}/sek."}
            }
            week{
                dnam{"vikur"}
                one{"{0} vika"}
                other{"{0} vikur"}
            }
            year{
                dnam{"ár"}
                one{"{0} ár"}
                other{"{0} ár"}
            }
        }
        electric{
            ampere{
                dnam{"A"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                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{"kal"}
                one{"{0} kal"}
                other{"{0} kal"}
            }
            joule{
                dnam{"júl"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"kílójúl"}
                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{"se"}
                one{"{0} se"}
                other{"{0} se"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"fet"}
                one{"{0} fet"}
                other{"{0} fet"}
            }
            inch{
                dnam{"tommur"}
                one{"{0} t."}
                other{"{0} t."}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"ljósár"}
                one{"{0} ljósár"}
                other{"{0} ljósár"}
            }
            meter{
                dnam{"metrar"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µmetrar"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mílur"}
                one{"{0} mí"}
                other{"{0} mí"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"sml"}
                one{"{0} sml"}
                other{"{0} sml"}
            }
            parsec{
                dnam{"parsek"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"yardar"}
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lúx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"karöt"}
                one{"{0} kt."}
                other{"{0} kt."}
            }
            gram{
                dnam{"grömm"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            metric-ton{
                dnam{"tonn"}
                one{"{0} tn"}
                other{"{0} tn"}
            }
            microgram{
                dnam{"µg"}
                one{"{0} µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"únsur"}
                one{"{0} únsa"}
                other{"{0} únsur"}
            }
            ounce-troy{
                dnam{"troyesoz"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"pund"}
                one{"{0} p."}
                other{"{0} p."}
            }
            ton{
                dnam{"BNA tonn"}
                one{"{0} BNA tn"}
                other{"{0} BNA tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"hö"}
                one{"{0} hö"}
                other{"{0} hö"}
            }
            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{"vött"}
                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} mbör"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0} mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        proportion{
            karat{
                dnam{"kt"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kílómetrar á klukkustund"}
                one{"{0} km/klst."}
                other{"{0} km/klst."}
            }
            meter-per-second{
                dnam{"metrar/sek."}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mílur/klst."}
                one{"{0} míla/klst."}
                other{"{0} mílur/klst."}
            }
        }
        temperature{
            celsius{
                dnam{"gráður á Celsíus"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ekrufet"}
                one{"{0} ekrufet"}
                other{"{0} ekrufet"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0} cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"fet³"}
                one{"{0} fet³"}
                other{"{0} fet³"}
            }
            cubic-inch{
                dnam{"tommur³"}
                one{"{0} t³"}
                other{"{0} t³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mí³"}
                one{"{0} rúmmíla"}
                other{"{0} rúmmílur"}
            }
            cubic-yard{
                dnam{"yardar³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"bollar"}
                one{"{0} bolli"}
                other{"{0} bollar"}
            }
            deciliter{
                dnam{"dl"}
                one{"{0} dl"}
                other{"{0} dl"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                one{"{0} gal"}
                other{"{0} gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"lítrar"}
                one{"{0} l"}
                other{"{0} l"}
            }
            megaliter{
                dnam{"Ml"}
                one{"{0} Ml"}
                other{"{0} Ml"}
            }
            milliliter{
                dnam{"ml"}
                one{"{0} ml"}
                other{"{0} ml"}
            }
            pint{
                dnam{"hálfp."}
                one{"{0} hálfp."}
                other{"{0} hálfp."}
            }
            quart{
                dnam{"qts"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"msk"}
                one{"{0} msk"}
                other{"{0} msk"}
            }
            teaspoon{
                dnam{"tsk"}
                one{"{0} tsk"}
                other{"{0} tsk"}
            }
        }
    }
}
