﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/is.xml
// *
// ***************************************************************************
is{
    Version{"2.1.12.94"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    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"}
            }
        }
    }
}
