﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/sv.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/sv.xml
 */
sv{
    Version{"2.1.8.9"}
    units{
        acceleration{
            g-force{
                dnam{"gånger jordens gravitation"}
                one{"{0} gånger jordens gravitation"}
                other{"{0} gånger jordens gravitation"}
            }
            meter-per-second-squared{
                dnam{"meter per kvadratsekund"}
                one{"{0} meter per kvadratsekund"}
                other{"{0} meter per kvadratsekund"}
            }
        }
        angle{
            arc-minute{
                dnam{"bågminuter"}
                one{"{0} bågminut"}
                other{"{0} bågminuter"}
            }
            arc-second{
                dnam{"bågsekunder"}
                one{"{0} bågsekund"}
                other{"{0} bågsekunder"}
            }
            degree{
                dnam{"grader"}
                one{"{0} grad"}
                other{"{0} grader"}
            }
            radian{
                dnam{"radianer"}
                one{"{0} radian"}
                other{"{0} radianer"}
            }
        }
        area{
            acre{
                dnam{"engelska tunnland"}
                one{"{0} engelskt tunnland"}
                other{"{0} engelska tunnland"}
            }
            hectare{
                dnam{"hektar"}
                one{"{0} hektar"}
                other{"{0} hektar"}
            }
            square-centimeter{
                dnam{"kvadratcentimeter"}
                one{"{0} kvadratcentimeter"}
                other{"{0} kvadratcentimeter"}
            }
            square-foot{
                dnam{"kvadratfot"}
                one{"{0} kvadratfot"}
                other{"{0} kvadratfot"}
            }
            square-inch{
                dnam{"kvadrattum"}
                one{"{0} kvadrattum"}
                other{"{0} kvadrattum"}
            }
            square-kilometer{
                dnam{"kvadratkilometer"}
                one{"{0} kvadratkilometer"}
                other{"{0} kvadratkilometer"}
            }
            square-meter{
                dnam{"kvadratmeter"}
                one{"{0} kvadratmeter"}
                other{"{0} kvadratmeter"}
            }
            square-mile{
                dnam{"engelska kvadratmil"}
                one{"{0} engelsk kvadratmil"}
                other{"{0} engelska kvadratmil"}
            }
            square-yard{
                dnam{"yard²"}
                one{"{0} yard²"}
                other{"{0} yard²"}
            }
        }
        compound{
            per{"{0} per {1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"liter per kilometer"}
                one{"{0} liter per kilometer"}
                other{"{0} liter per kilometer"}
            }
            mile-per-gallon{
                dnam{"miles per gallon"}
                one{"{0} mile per gallon"}
                other{"{0} miles per gallon"}
            }
        }
        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{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kilobit"}
                one{"{0} kilobit"}
                other{"{0} kilobit"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"megabit"}
                one{"{0} megabit"}
                other{"{0} megabit"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"terabit"}
                one{"{0} terabit"}
                other{"{0} terabit"}
            }
            terabyte{
                dnam{"terabyte"}
                one{"{0} terabyte"}
                other{"{0} terabyte"}
            }
        }
        duration{
            day{
                dnam{"dygn"}
                one{"{0} dygn"}
                other{"{0} dygn"}
            }
            hour{
                dnam{"timmar"}
                one{"{0} timme"}
                other{"{0} timmar"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"mikrosekunder"}
                one{"{0} mikrosekund"}
                other{"{0} mikrosekunder"}
            }
            millisecond{
                dnam{"millisekunder"}
                one{"{0} millisekund"}
                other{"{0} millisekunder"}
            }
            minute{
                dnam{"minuter"}
                one{"{0} minut"}
                other{"{0} minuter"}
            }
            month{
                dnam{"månader"}
                one{"{0} månad"}
                other{"{0} månader"}
            }
            nanosecond{
                dnam{"nanosekunder"}
                one{"{0} nanosekund"}
                other{"{0} nanosekunder"}
            }
            second{
                dnam{"sekunder"}
                one{"{0} sekund"}
                other{"{0} sekunder"}
                per{"{0}/s"}
            }
            week{
                dnam{"veckor"}
                one{"{0} vecka"}
                other{"{0} veckor"}
            }
            year{
                dnam{"år"}
                one{"{0} år"}
                other{"{0} år"}
            }
        }
        electric{
            ampere{
                dnam{"ampere"}
                one{"ampere"}
                other{"{0} ampere"}
            }
            milliampere{
                dnam{"milliampere"}
                one{"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{"kilokalorier"}
                one{"{0} kilokalori"}
                other{"{0} kilokalorier"}
            }
            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{"kilowattimmar"}
                one{"{0} kilowattimme"}
                other{"{0} kilowattimmar"}
            }
        }
        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{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomiska enheter"}
                one{"{0} astronomisk enhet"}
                other{"{0} astronomiska enheter"}
            }
            centimeter{
                dnam{"centimeter"}
                one{"{0} centimeter"}
                other{"{0} centimeter"}
            }
            decimeter{
                dnam{"decimeter"}
                one{"{0} decimeter"}
                other{"{0} decimeter"}
            }
            fathom{
                dnam{"famnar"}
                one{"{0} famn"}
                other{"{0} famnar"}
            }
            foot{
                dnam{"fot"}
                one{"{0} fot"}
                other{"{0} fot"}
            }
            furlong{
                dnam{"engelska plogfårelängder"}
                one{"{0} engelsk plogfårelängd"}
                other{"{0} engelska plogfårelängder"}
            }
            inch{
                dnam{"tum"}
                one{"{0} tum"}
                other{"{0} tum"}
            }
            kilometer{
                dnam{"kilometer"}
                one{"{0} kilometer"}
                other{"{0} kilometer"}
            }
            light-year{
                dnam{"ljusår"}
                one{"{0} ljusår"}
                other{"{0} ljusår"}
            }
            meter{
                dnam{"meter"}
                one{"{0} meter"}
                other{"{0} meter"}
            }
            micrometer{
                dnam{"mikrometer"}
                one{"{0} mikrometer"}
                other{"{0} mikrometer"}
            }
            mile{
                dnam{"engelska mil"}
                one{"{0} engelsk mil"}
                other{"{0} engelska mil"}
            }
            millimeter{
                dnam{"millimeter"}
                one{"{0} millimeter"}
                other{"{0} millimeter"}
            }
            nanometer{
                dnam{"nanometer"}
                one{"{0} nanometer"}
                other{"{0} nanometer"}
            }
            nautical-mile{
                dnam{"nautiska mil"}
                one{"{0} nautisk mil"}
                other{"{0} nautiska mil"}
            }
            parsec{
                dnam{"parsec"}
                one{"{0} parsec"}
                other{"{0} parsec"}
            }
            picometer{
                dnam{"pikometer"}
                one{"{0} pikometer"}
                other{"{0} pikometer"}
            }
            yard{
                dnam{"engelska yard"}
                one{"{0} engelsk yard"}
                other{"{0} engelska 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"}
            }
            kilogram{
                dnam{"kilogram"}
                one{"{0} kilogram"}
                other{"{0} kilogram"}
            }
            metric-ton{
                dnam{"ton"}
                one{"{0} ton"}
                other{"{0} ton"}
            }
            microgram{
                dnam{"mikrogram"}
                one{"{0} mikrogram"}
                other{"{0} mikrogram"}
            }
            milligram{
                dnam{"milligram"}
                one{"{0} milligram"}
                other{"{0} milligram"}
            }
            ounce{
                dnam{"uns"}
                one{"{0} uns"}
                other{"{0} uns"}
            }
            ounce-troy{
                dnam{"troy uns"}
                one{"{0} troy uns"}
                other{"{0} troy uns"}
            }
            pound{
                dnam{"pund"}
                one{"{0} pund"}
                other{"{0} pund"}
            }
            stone{
                dnam{"engelska stenar"}
                one{"{0} engelsk sten"}
                other{"{0} engelska stenar"}
            }
            ton{
                dnam{"engelska korta ton"}
                one{"{0} engelskt kort ton"}
                other{"{0} engelska korta ton"}
            }
        }
        power{
            gigawatt{
                dnam{"gigawatt"}
                one{"{0} gigawatt"}
                other{"{0} gigawatt"}
            }
            horsepower{
                dnam{"hästkrafter"}
                one{"{0} hästkraft"}
                other{"{0} hästkrafter"}
            }
            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{"tum kvicksilver"}
                one{"{0} tum kvicksilver"}
                other{"{0} tum kvicksilver"}
            }
            millibar{
                dnam{"millibar"}
                one{"{0} millibar"}
                other{"{0} millibar"}
            }
            millimeter-of-mercury{
                dnam{"millimeter kvicksilver"}
                one{"{0} millimeter kvicksilver"}
                other{"{0} millimeter kvicksilver"}
            }
            pound-per-square-inch{
                dnam{"pund per kvadrattum"}
                one{"{0} pund per kvadrattum"}
                other{"{0} pund per kvadrattum"}
            }
        }
        proportion{
            karat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometer per timme"}
                one{"{0} kilometer per timme"}
                other{"{0} kilometer per timme"}
            }
            meter-per-second{
                dnam{"meter per sekund"}
                one{"{0} meter per sekund"}
                other{"{0} meter per sekund"}
            }
            mile-per-hour{
                dnam{"engelska mil per timme"}
                one{"{0} engelsk mil per timme"}
                other{"{0} engelska mil per timme"}
            }
        }
        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"}
            }
            kelvin{
                dnam{"kelvin"}
                one{"{0} kelvin"}
                other{"{0} kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"engelska tunnland gånger fot"}
                one{"{0} engelskt tunnland gånger fot"}
                other{"{0} engelska tunnland gånger fot"}
            }
            bushel{
                dnam{"skäppor"}
                one{"{0} skäppa"}
                other{"{0} skäppor"}
            }
            centiliter{
                dnam{"centiliter"}
                one{"{0} centiliter"}
                other{"{0} centiliter"}
            }
            cubic-centimeter{
                dnam{"kubikcentimeter"}
                one{"{0} kubikcentimeter"}
                other{"{0} kubikcentimeter"}
            }
            cubic-foot{
                dnam{"kubikfot"}
                one{"{0} kubikfot"}
                other{"{0} kubikfot"}
            }
            cubic-inch{
                dnam{"kubiktum"}
                one{"{0} kubiktum"}
                other{"{0} kubiktum"}
            }
            cubic-kilometer{
                dnam{"kubikkilometer"}
                one{"{0} kubikkilometer"}
                other{"{0} kubikkilometer"}
            }
            cubic-meter{
                dnam{"kubikmeter"}
                one{"{0} kubikmeter"}
                other{"{0} kubikmeter"}
            }
            cubic-mile{
                dnam{"engelska kubikmil"}
                one{"{0} engelsk kubikmil"}
                other{"{0} engelska kubikmil"}
            }
            cubic-yard{
                dnam{"engelska kubikyard"}
                one{"{0} engelsk kubikyard"}
                other{"{0} engelska kubikyard"}
            }
            cup{
                dnam{"koppar"}
                one{"{0} kopp"}
                other{"{0} koppar"}
            }
            deciliter{
                dnam{"deciliter"}
                one{"{0} deciliter"}
                other{"{0} deciliter"}
            }
            fluid-ounce{
                dnam{"fluid ounces"}
                one{"{0} fluid ounce"}
                other{"{0} fluid ounces"}
            }
            gallon{
                dnam{"gallon"}
                one{"{0} gallon"}
                other{"{0} gallon"}
            }
            hectoliter{
                dnam{"hektoliter"}
                one{"{0} hektoliter"}
                other{"{0} hektoliter"}
            }
            liter{
                dnam{"liter"}
                one{"{0} liter"}
                other{"{0} 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"}
            }
            quart{
                dnam{"quart"}
                one{"{0} quart"}
                other{"{0} quart"}
            }
            tablespoon{
                dnam{"matskedar"}
                one{"{0} matsked"}
                other{"{0} matskedar"}
            }
            teaspoon{
                dnam{"teskedar"}
                one{"{0} tesked"}
                other{"{0} teskedar"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                dnam{"G"}
                one{"{0}G"}
                other{"{0}G"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                one{"{0}m/s²"}
                other{"{0}m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"bågmin"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"bågsek"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0}rad"}
                other{"{0}rad"}
            }
        }
        area{
            acre{
                dnam{"eng. tunnland"}
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                dnam{"ha"}
                one{"{0}ha"}
                other{"{0}ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0}cm²"}
                other{"{0}cm²"}
            }
            square-foot{
                dnam{"fot²"}
                one{"{0} fot²"}
                other{"{0} fot²"}
            }
            square-inch{
                dnam{"tum²"}
                one{"{0} tum²"}
                other{"{0} tum²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0}km²"}
                other{"{0}km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0}m²"}
                other{"{0}m²"}
            }
            square-mile{
                dnam{"eng. mil²"}
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"eng. yard²"}
                one{"{0} en. yrd²"}
                other{"{0} en. yrd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"L/km"}
                one{"{0}L/km"}
                other{"{0}L/km"}
            }
            mile-per-gallon{
                dnam{"eng.mil/gallon"}
                one{"{0}e.mil/gn"}
                other{"{0}e.mil/gn"}
            }
        }
        digital{
            bit{
                dnam{"b"}
                one{"{0}b"}
                other{"{0}b"}
            }
            byte{
                dnam{"B"}
                one{"{0}B"}
                other{"{0}B"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0}Gb"}
                other{"{0}Gb"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0}kb"}
                other{"{0}kb"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0}Mb"}
                other{"{0}Mb"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0}Tb"}
                other{"{0}Tb"}
            }
        }
        duration{
            day{
                dnam{"d"}
                one{"{0}d"}
                other{"{0}d"}
            }
            hour{
                dnam{"h"}
                one{"{0}h"}
                other{"{0}h"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0}μs"}
                other{"{0}μs"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
            }
            month{
                dnam{"m"}
                one{"{0}m"}
                other{"{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{"v"}
                one{"{0}v"}
                other{"{0}v"}
            }
            year{
                dnam{"år"}
                one{"{0}å"}
                other{"{0}å"}
            }
        }
        electric{
            ampere{
                dnam{"A"}
                one{"{0}A"}
                other{"{0}A"}
            }
            milliampere{
                dnam{"mA"}
                one{"{0}mA"}
                other{"{0}mA"}
            }
            ohm{
                dnam{"Ω"}
                one{"{0}Ω"}
                other{"{0}Ω"}
            }
            volt{
                dnam{"V"}
                one{"{0}V"}
                other{"{0}V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            joule{
                dnam{"J"}
                one{"{0}J"}
                other{"{0}J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"kJ"}
                one{"{0}kJ"}
                other{"{0}kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                one{"{0}kWh"}
                other{"{0}kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0}GHz"}
                other{"{0}GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0}Hz"}
                other{"{0}Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0}kHz"}
                other{"{0}kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0}MHz"}
                other{"{0}MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"AE"}
                one{"{0}AE"}
                other{"{0}AE"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0}cm"}
                other{"{0}cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0}dm"}
                other{"{0}dm"}
            }
            fathom{
                dnam{"famnar"}
                one{"{0} famn"}
                other{"{0} famnar"}
            }
            foot{
                dnam{"fot"}
                one{"{0} fot"}
                other{"{0} fot"}
            }
            furlong{
                dnam{"eng. plogfårelgd"}
                one{"{0}en.pfrld"}
                other{"{0}en.pfrld"}
            }
            inch{
                dnam{"tum"}
                one{"{0} tum"}
                other{"{0} tum"}
            }
            kilometer{
                dnam{"km"}
                one{"{0}km"}
                other{"{0}km"}
            }
            light-year{
                dnam{"ljusår"}
                one{"{0} ljusår"}
                other{"{0} ljusår"}
            }
            meter{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
            }
            micrometer{
                dnam{"μm"}
                one{"{0}μm"}
                other{"{0}μm"}
            }
            mile{
                dnam{"eng. mil"}
                one{"{0}mi"}
                other{"{0}mi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0}mm"}
                other{"{0}mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0}nm"}
                other{"{0}nm"}
            }
            nautical-mile{
                dnam{"naut. mil"}
                one{"{0}M"}
                other{"{0}M"}
            }
            parsec{
                dnam{"parsek"}
                one{"{0} parsek"}
                other{"{0} parsek"}
            }
            picometer{
                dnam{"pm"}
                one{"{0}pm"}
                other{"{0}pm"}
            }
            yard{
                dnam{"engelska yard"}
                one{"{0}yd"}
                other{"{0}yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                one{"{0} karat"}
                other{"{0} karat"}
            }
            gram{
                dnam{"g"}
                one{"{0}g"}
                other{"{0}g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0}kg"}
                other{"{0}kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0}t"}
                other{"{0}t"}
            }
            microgram{
                dnam{"μg"}
                one{"{0}μg"}
                other{"{0}μg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0}mg"}
                other{"{0}mg"}
            }
            ounce{
                dnam{"uns"}
                one{"{0} uns"}
                other{"{0} uns"}
            }
            ounce-troy{
                one{"{0} tr.uns"}
                other{"{0} tr.uns"}
            }
            pound{
                dnam{"s:pund"}
                one{"{0} skålpund"}
                other{"{0} skålpund"}
            }
            stone{
                dnam{"eng. sten"}
                one{"{0} eng. s:n"}
                other{"{0} eng. s:n"}
            }
            ton{
                dnam{"eng. k. ton"}
                one{"{0} en.k.ton"}
                other{"{0} en.k.ton"}
            }
        }
        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{"W"}
                one{"{0}W"}
                other{"{0}W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0}hPa"}
                other{"{0}hPa"}
            }
            inch-hg{
                dnam{"tum Hg"}
                one{"{0} tum Hg"}
                other{"{0} tum Hg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0}mbar"}
                other{"{0}mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                one{"{0}mm Hg"}
                other{"{0}mm Hg"}
            }
            pound-per-square-inch{
                dnam{"s:d/tum²"}
                one{"{0}s:d/tum²"}
                other{"{0}s:d/tum²"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0}km/h"}
                other{"{0}km/h"}
            }
            meter-per-second{
                dnam{"m/s"}
                one{"{0}m/s"}
                other{"{0}m/s"}
            }
            mile-per-hour{
                dnam{"eng. mil/h"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °C"}
                other{"{0} °C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0}K"}
                other{"{0}K"}
            }
        }
        volume{
            acre-foot{
                dnam{"eng. t:land·fot"}
                one{"{0}en.td·fot"}
                other{"{0}en.td·fot"}
            }
            bushel{
                dnam{"skäppa"}
                one{"{0} skäppa"}
                other{"{0} skäppor"}
            }
            centiliter{
                dnam{"cL"}
                one{"{0}cL"}
                other{"{0}cL"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0}cm³"}
                other{"{0}cm³"}
            }
            cubic-foot{
                dnam{"fot³"}
                one{"{0} fot³"}
                other{"{0} fot³"}
            }
            cubic-inch{
                dnam{"tum³"}
                one{"{0} tum³"}
                other{"{0} tum³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0}km³"}
                other{"{0}km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0}m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"eng. mil³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"eng. yard³"}
                one{"{0} en. yrd³"}
                other{"{0} en. yrd³"}
            }
            cup{
                dnam{"kp·2,5dL"}
                one{"{0}kp·2½dL"}
                other{"{0}kp·2½dL"}
            }
            deciliter{
                dnam{"dL"}
                one{"{0}dL"}
                other{"{0}dL"}
            }
            fluid-ounce{
                dnam{"vätskeuns"}
                one{"{0} v:euns"}
                other{"{0} v:euns"}
            }
            gallon{
                dnam{"USA vätskegallon"}
                one{"{0} v:egal:n"}
                other{"{0} v:egal:n"}
            }
            hectoliter{
                dnam{"hL"}
                one{"{0}hL"}
                other{"{0}hL"}
            }
            liter{
                dnam{"liter"}
                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{"USA vätskepint"}
                one{"{0} v:epint"}
                other{"{0} v:epint"}
            }
            quart{
                dnam{"USA vätskequart"}
                one{"{0} v:equart"}
                other{"{0} v:equart"}
            }
            tablespoon{
                dnam{"msk"}
                one{"{0}msk"}
                other{"{0}msk"}
            }
            teaspoon{
                dnam{"tsk"}
                one{"{0}tsk"}
                other{"{0}tsk"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"G"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"bågminuter"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"bågsekunder"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"grader"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"radianer"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"eng. tunnland"}
                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²"}
            }
            square-foot{
                dnam{"kvadratfot"}
                one{"{0} kvadratfot"}
                other{"{0} kvadratfot"}
            }
            square-inch{
                dnam{"tum²"}
                one{"{0} tum²"}
                other{"{0} tum²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"engelska kvadratmil"}
                one{"{0} eng.mil²"}
                other{"{0} eng.mil²"}
            }
            square-yard{
                dnam{"yard²"}
                one{"{0} yard²"}
                other{"{0} yard²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"liter/km"}
                one{"{0} l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"mpg"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        digital{
            bit{
                dnam{"b"}
                one{"{0} b"}
                other{"{0} b"}
            }
            byte{
                dnam{"byte"}
                one{"{0} B"}
                other{"{0} B"}
            }
            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{"dygn"}
                one{"{0} d"}
                other{"{0} d"}
            }
            hour{
                dnam{"tim"}
                one{"{0} tim"}
                other{"{0} tim"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"mån"}
                one{"{0} mån"}
                other{"{0} mån"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sek"}
                one{"{0} s"}
                other{"{0} s"}
                per{"{0}/s"}
            }
            week{
                dnam{"vkr"}
                one{"{0} v"}
                other{"{0} v"}
            }
            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{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            joule{
                dnam{"J"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"kJ"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                one{"{0} GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                one{"{0} Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                one{"{0} kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                one{"{0} MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"AU"}
                one{"{0} AU"}
                other{"{0} AU"}
            }
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            fathom{
                dnam{"famnar"}
                one{"{0} famn"}
                other{"{0} famnar"}
            }
            foot{
                dnam{"fot"}
                one{"{0} fot"}
                other{"{0} fot"}
            }
            furlong{
                dnam{"eng. plogfårelgd"}
                one{"{0} eng. plogfårelgd"}
                other{"{0} eng. plogfårelgd"}
            }
            inch{
                dnam{"tum"}
                one{"{0} tum"}
                other{"{0} tum"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"ljusår"}
                one{"{0} ly"}
                other{"{0} ly"}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"μm"}
                one{"{0} μm"}
                other{"{0} μm"}
            }
            mile{
                dnam{"eng. mil"}
                one{"{0} eng. mil"}
                other{"{0} eng. mil"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"naut. mil"}
                one{"{0} naut. mil"}
                other{"{0} naut. mil"}
            }
            parsec{
                dnam{"parsec"}
                one{"{0} parsec"}
                other{"{0} parsec"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"engelska yard"}
                one{"{0} eng. yard"}
                other{"{0} eng. yard"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lux"}
                other{"{0} lux"}
            }
        }
        mass{
            carat{
                dnam{"karat"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
            gram{
                dnam{"g"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            metric-ton{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"μg"}
                one{"{0} μg"}
                other{"{0} μg"}
            }
            milligram{
                dnam{"mg"}
                one{"{0} mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"uns"}
                one{"{0} uns"}
                other{"{0} uns"}
            }
            ounce-troy{
                dnam{"ozt"}
                one{"{0} ozt"}
                other{"{0} ozt"}
            }
            pound{
                dnam{"pund"}
                one{"{0} pund"}
                other{"{0} pund"}
            }
            stone{
                dnam{"eng. sten"}
                one{"{0} eng. sten"}
                other{"{0} eng. sten"}
            }
            ton{
                dnam{"eng. k. ton"}
                one{"{0} eng. k. ton"}
                other{"{0} eng. k. ton"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"hästkrafter"}
                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{"W"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"tum Hg"}
                one{"{0} tum Hg"}
                other{"{0} tum Hg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            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{"karat"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                dnam{"m/s"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"eng. mil/h"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0} °C"}
                other{"{0} °C"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0} °F"}
                other{"{0} °F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"eng. t:land·fot"}
                one{"{0} eng. t:d·fot"}
                other{"{0} eng. t:d·fot"}
            }
            bushel{
                dnam{"skäppa"}
                one{"{0} skäppa"}
                other{"{0} skäppor"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0} cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"fot³"}
                one{"{0} fot³"}
                other{"{0} fot³"}
            }
            cubic-inch{
                dnam{"tum³"}
                one{"{0} tum³"}
                other{"{0} tum³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"engelska kubikmil"}
                one{"{0} eng. mil³"}
                other{"{0} eng. mil³"}
            }
            cubic-yard{
                dnam{"eng. yard³"}
                one{"{0} eng. yard³"}
                other{"{0} eng. yard³"}
            }
            cup{
                dnam{"koppar"}
                one{"{0} kopp"}
                other{"{0} koppar"}
            }
            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{"liter"}
                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{"pint"}
                one{"{0} pint"}
                other{"{0} pint"}
            }
            quart{
                dnam{"quart"}
                one{"{0} quart"}
                other{"{0} quart"}
            }
            tablespoon{
                dnam{"msk"}
                one{"{0} msk"}
                other{"{0} msk"}
            }
            teaspoon{
                dnam{"tsk"}
                one{"{0} tsk"}
                other{"{0} tsk"}
            }
        }
    }
}
