﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/fi.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/fi.xml
 */
fi{
    Version{"2.1.8.9"}
    units{
        acceleration{
            g-force{
                dnam{"G-voimat"}
                one{"{0} G-voima"}
                other{"{0} G-voimaa"}
            }
            meter-per-second-squared{
                dnam{"metrit per sekunti toiseen"}
                one{"{0} metri per sekunti toiseen"}
                other{"{0} metriä per sekunti toiseen"}
            }
        }
        angle{
            arc-minute{
                dnam{"kulmaminuutit"}
                one{"{0} kulmaminuutti"}
                other{"{0} kulmaminuuttia"}
            }
            arc-second{
                dnam{"kulmasekunnit"}
                one{"{0} kulmasekunti"}
                other{"{0} kulmasekuntia"}
            }
            degree{
                dnam{"asteet"}
                one{"{0} aste"}
                other{"{0} astetta"}
            }
            radian{
                dnam{"radiaanit"}
                one{"{0} radiaani"}
                other{"{0} radiaania"}
            }
        }
        area{
            acre{
                dnam{"eekkerit"}
                one{"{0} eekkeri"}
                other{"{0} eekkeriä"}
            }
            hectare{
                dnam{"hehtaarit"}
                one{"{0} hehtaari"}
                other{"{0} hehtaaria"}
            }
            square-centimeter{
                dnam{"neliösenttimetrit"}
                one{"{0} neliösenttimetri"}
                other{"{0} neliösenttimetriä"}
            }
            square-foot{
                dnam{"neliöjalat"}
                one{"{0} neliöjalka"}
                other{"{0} neliöjalkaa"}
            }
            square-inch{
                dnam{"neliötuumat"}
                one{"{0} neliötuuma"}
                other{"{0} neliötuumaa"}
            }
            square-kilometer{
                dnam{"neliökilometrit"}
                one{"{0} neliökilometri"}
                other{"{0} neliökilometriä"}
            }
            square-meter{
                dnam{"neliömetrit"}
                one{"{0} neliömetri"}
                other{"{0} neliömetriä"}
            }
            square-mile{
                dnam{"neliömailit"}
                one{"{0} neliömaili"}
                other{"{0} neliömailia"}
            }
            square-yard{
                dnam{"neliöjaardit"}
                one{"{0} neliöjaardi"}
                other{"{0} neliöjaardia"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"litrat per kilometri"}
                one{"{0} litra per kilometri"}
                other{"{0} litraa per kilometri"}
            }
            mile-per-gallon{
                dnam{"mailit per gallona"}
                one{"{0} maili per gallona"}
                other{"{0} mailia per gallona"}
            }
        }
        digital{
            bit{
                dnam{"bitit"}
                one{"{0} bitti"}
                other{"{0} bittiä"}
            }
            byte{
                dnam{"tavut"}
                one{"{0} tavu"}
                other{"{0} tavua"}
            }
            gigabit{
                dnam{"gigabitit"}
                one{"{0} gigabitti"}
                other{"{0} gigabittiä"}
            }
            gigabyte{
                dnam{"gigatavut"}
                one{"{0} gigatavu"}
                other{"{0} gigatavua"}
            }
            kilobit{
                dnam{"kilobitit"}
                one{"{0} kilobitti"}
                other{"{0} kilobittiä"}
            }
            kilobyte{
                dnam{"kilotavut"}
                one{"{0} kilotavu"}
                other{"{0} kilotavua"}
            }
            megabit{
                dnam{"megabitit"}
                one{"{0} megabitti"}
                other{"{0} megabittiä"}
            }
            megabyte{
                dnam{"megatavut"}
                one{"{0} megatavu"}
                other{"{0} megatavua"}
            }
            terabit{
                dnam{"terabitit"}
                one{"{0} terabitti"}
                other{"{0} terabittiä"}
            }
            terabyte{
                dnam{"teratavut"}
                one{"{0} teratavu"}
                other{"{0} teratavua"}
            }
        }
        duration{
            day{
                dnam{"päivät"}
                one{"{0} päivä"}
                other{"{0} päivää"}
            }
            hour{
                dnam{"tunnit"}
                one{"{0} tunti"}
                other{"{0} tuntia"}
                per{"{0} tunnissa"}
            }
            microsecond{
                dnam{"mikrosekunnit"}
                one{"{0} mikrosekunti"}
                other{"{0} mikrosekuntia"}
            }
            millisecond{
                dnam{"millisekunnit"}
                one{"{0} millisekunti"}
                other{"{0} millisekuntia"}
            }
            minute{
                dnam{"minuutit"}
                one{"{0} minuutti"}
                other{"{0} minuuttia"}
            }
            month{
                dnam{"kuukaudet"}
                one{"{0} kuukausi"}
                other{"{0} kuukautta"}
            }
            nanosecond{
                dnam{"nanosekunnit"}
                one{"{0} nanosekunti"}
                other{"{0} nanosekuntia"}
            }
            second{
                dnam{"sekunnit"}
                one{"{0} sekunti"}
                other{"{0} sekuntia"}
                per{"{0} sekunnissa"}
            }
            week{
                dnam{"viikot"}
                one{"{0} viikko"}
                other{"{0} viikkoa"}
            }
            year{
                dnam{"vuodet"}
                one{"{0} vuosi"}
                other{"{0} vuotta"}
            }
        }
        electric{
            ampere{
                dnam{"ampeerit"}
                one{"{0} ampeeri"}
                other{"{0} ampeeria"}
            }
            milliampere{
                dnam{"milliampeerit"}
                one{"{0} milliampeeri"}
                other{"{0} milliampeeria"}
            }
            ohm{
                dnam{"ohmit"}
                one{"{0} ohmi"}
                other{"{0} ohmia"}
            }
            volt{
                dnam{"voltit"}
                one{"{0} voltti"}
                other{"{0} volttia"}
            }
        }
        energy{
            calorie{
                dnam{"kalorit"}
                one{"{0} kalori"}
                other{"{0} kaloria"}
            }
            foodcalorie{
                dnam{"kilokalorit"}
                one{"{0} kilokalori"}
                other{"{0} kilokaloria"}
            }
            joule{
                dnam{"joulet"}
                one{"{0} joule"}
                other{"{0} joulea"}
            }
            kilocalorie{
                dnam{"kilokalorit"}
                one{"{0} kilokalori"}
                other{"{0} kilokaloria"}
            }
            kilojoule{
                dnam{"kilojoulet"}
                one{"{0} kilojoule"}
                other{"{0} kilojoulea"}
            }
            kilowatt-hour{
                dnam{"kilowattitunnit"}
                one{"{0} kilowattitunti"}
                other{"{0} kilowattituntia"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigahertsit"}
                one{"{0} gigahertsi"}
                other{"{0} gigahertsiä"}
            }
            hertz{
                dnam{"hertsit"}
                one{"{0} hertsi"}
                other{"{0} hertsiä"}
            }
            kilohertz{
                dnam{"kilohertsit"}
                one{"{0} kilohertsi"}
                other{"{0} kilohertsiä"}
            }
            megahertz{
                dnam{"megahertsit"}
                one{"{0} megahertsi"}
                other{"{0} megahertsiä"}
            }
        }
        length{
            astronomical-unit{
                dnam{"astronomiset yksiköt"}
                one{"{0} astronominen yksikkö"}
                other{"{0} astronomista yksikköä"}
            }
            centimeter{
                dnam{"senttimetrit"}
                one{"{0} senttimetri"}
                other{"{0} senttimetriä"}
            }
            decimeter{
                dnam{"desimetrit"}
                one{"{0} desimetri"}
                other{"{0} desimetriä"}
            }
            fathom{
                dnam{"sylet"}
                one{"syli"}
                other{"{0} syltä"}
            }
            foot{
                dnam{"jalat"}
                one{"{0} jalka"}
                other{"{0} jalkaa"}
            }
            furlong{
                dnam{"furlongit"}
                one{"{0} furlong"}
                other{"{0} furlongia"}
            }
            inch{
                dnam{"tuumat"}
                one{"{0} tuuma"}
                other{"{0} tuumaa"}
            }
            kilometer{
                dnam{"kilometrit"}
                one{"{0} kilometri"}
                other{"{0} kilometriä"}
            }
            light-year{
                dnam{"valovuodet"}
                one{"{0} valovuosi"}
                other{"{0} valovuotta"}
            }
            meter{
                dnam{"metrit"}
                one{"{0} metri"}
                other{"{0} metriä"}
            }
            micrometer{
                dnam{"mikrometrit"}
                one{"{0} mikrometri"}
                other{"{0} mikrometriä"}
            }
            mile{
                dnam{"mailit"}
                one{"{0} maili"}
                other{"{0} mailia"}
            }
            millimeter{
                dnam{"millimetrit"}
                one{"{0} millimetri"}
                other{"{0} millimetriä"}
            }
            nanometer{
                dnam{"nanometrit"}
                one{"{0} nanometri"}
                other{"{0} nanometriä"}
            }
            nautical-mile{
                dnam{"meripeninkulmat"}
                one{"{0} meripeninkulma"}
                other{"{0} meripeninkulmaa"}
            }
            parsec{
                dnam{"parsekit"}
                one{"{0} parsek"}
                other{"{0} parsekia"}
            }
            picometer{
                dnam{"pikometrit"}
                one{"{0} pikometri"}
                other{"{0} pikometriä"}
            }
            yard{
                dnam{"jaardit"}
                one{"{0} jaardi"}
                other{"{0} jaardia"}
            }
        }
        light{
            lux{
                dnam{"luksit"}
                one{"{0} luksi"}
                other{"{0} luksia"}
            }
        }
        mass{
            carat{
                dnam{"karaatit"}
                one{"{0} karaatti"}
                other{"{0} karaattia"}
            }
            gram{
                dnam{"grammat"}
                one{"{0} gramma"}
                other{"{0} grammaa"}
            }
            kilogram{
                dnam{"kilogrammat"}
                one{"{0} kilogramma"}
                other{"{0} kilogrammaa"}
            }
            metric-ton{
                dnam{"tonnit"}
                one{"{0} tonni"}
                other{"{0} tonnia"}
            }
            microgram{
                dnam{"mikrogrammat"}
                one{"{0} mikrogramma"}
                other{"{0} mikrogrammaa"}
            }
            milligram{
                dnam{"milligrammat"}
                one{"{0} milligramma"}
                other{"{0} milligrammaa"}
            }
            ounce{
                dnam{"unssit"}
                one{"{0} unssi"}
                other{"{0} unssia"}
            }
            ounce-troy{
                dnam{"troy-unssit"}
                one{"{0} troy-unssi"}
                other{"{0} troy-unssia"}
            }
            pound{
                dnam{"paunat"}
                one{"{0} pauna"}
                other{"{0} paunaa"}
            }
            stone{
                dnam{"stonet"}
                one{"{0} stone"}
                other{"{0} stonea"}
            }
            ton{
                dnam{"US-tonnit"}
                one{"{0} US-tonni"}
                other{"{0} US-tonnia"}
            }
        }
        power{
            gigawatt{
                dnam{"gigawatit"}
                one{"{0} gigawatti"}
                other{"{0} gigawattia"}
            }
            horsepower{
                dnam{"hevosvoimat"}
                one{"{0} hevosvoima"}
                other{"{0} hevosvoimaa"}
            }
            kilowatt{
                dnam{"kilowatit"}
                one{"{0} kilowatti"}
                other{"{0} kilowattia"}
            }
            megawatt{
                dnam{"megawatit"}
                one{"{0} megawatti"}
                other{"{0} megawattia"}
            }
            milliwatt{
                dnam{"milliwatit"}
                one{"{0} milliwatti"}
                other{"{0} milliwattia"}
            }
            watt{
                dnam{"watit"}
                one{"{0} watti"}
                other{"{0} wattia"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hehtopascalit"}
                one{"{0} hehtopascal"}
                other{"{0} hehtopascalia"}
            }
            inch-hg{
                dnam{"elohopeatuumat"}
                one{"{0} tuuma elohopeaa"}
                other{"{0} tuumaa elohopeaa"}
            }
            millibar{
                dnam{"millibaarit"}
                one{"{0} millibaari"}
                other{"{0} millibaaria"}
            }
            millimeter-of-mercury{
                dnam{"elohopeamillimetrit"}
                one{"{0} millimetri elohopeaa"}
                other{"{0} millimetriä elohopeaa"}
            }
            pound-per-square-inch{
                dnam{"paunat neliötuumaa kohti"}
                one{"{0} pauna neliötuumaa kohti"}
                other{"{0} paunaa neliötuumaa kohti"}
            }
        }
        proportion{
            karat{
                dnam{"karaatit"}
                one{"{0} karaatti"}
                other{"{0} karaattia"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilometrit tunnissa"}
                one{"{0} kilometri tunnissa"}
                other{"{0} kilometriä tunnissa"}
            }
            meter-per-second{
                dnam{"metrit sekunnissa"}
                one{"{0} metri sekunnissa"}
                other{"{0} metriä sekunnissa"}
            }
            mile-per-hour{
                dnam{"mailit tunnissa"}
                one{"{0} maili tunnissa"}
                other{"{0} mailia tunnissa"}
            }
        }
        temperature{
            celsius{
                dnam{"celsiusasteet"}
                one{"{0} celsiusaste"}
                other{"{0} celsiusastetta"}
            }
            fahrenheit{
                dnam{"fahrenheitasteet"}
                one{"{0} fahrenheitaste"}
                other{"{0} fahrenheitastetta"}
            }
            kelvin{
                dnam{"kelvinit"}
                one{"{0} kelvin"}
                other{"{0} kelviniä"}
            }
        }
        volume{
            acre-foot{
                dnam{"eekkerijalat"}
                one{"{0} eekkerijalka"}
                other{"{0} eekkerijalkaa"}
            }
            bushel{
                dnam{"bushelit"}
                one{"{0} busheli"}
                other{"{0} bushelia"}
            }
            centiliter{
                dnam{"senttilitrat"}
                one{"{0} senttilitra"}
                other{"{0} senttilitraa"}
            }
            cubic-centimeter{
                dnam{"kuutiosenttimetrit"}
                one{"{0} kuutiosenttimetri"}
                other{"{0} kuutiosenttimetriä"}
            }
            cubic-foot{
                dnam{"kuutiojalat"}
                one{"{0} kuutiojalka"}
                other{"{0} kuutiojalkaa"}
            }
            cubic-inch{
                dnam{"kuutiotuumat"}
                one{"{0} kuutiotuuma"}
                other{"{0} kuutiotuumaa"}
            }
            cubic-kilometer{
                dnam{"kuutiokilometrit"}
                one{"{0} kuutiokilometri"}
                other{"{0} kuutiokilometriä"}
            }
            cubic-meter{
                dnam{"kuutiometrit"}
                one{"{0} kuutiometri"}
                other{"{0} kuutiometriä"}
            }
            cubic-mile{
                dnam{"kuutiomailit"}
                one{"{0} kuutiomaili"}
                other{"{0} kuutiomailia"}
            }
            cubic-yard{
                dnam{"kuutiojaardit"}
                one{"{0} kuutiojaardi"}
                other{"{0} kuutiojaardia"}
            }
            cup{
                dnam{"kupit"}
                one{"{0} kuppi"}
                other{"{0} kuppia"}
            }
            deciliter{
                dnam{"desilitrat"}
                one{"{0} desilitra"}
                other{"{0} desilitraa"}
            }
            fluid-ounce{
                dnam{"nesteunssit"}
                one{"{0} nesteunssi"}
                other{"{0} nesteunssia"}
            }
            gallon{
                dnam{"gallonat"}
                one{"{0} gallona"}
                other{"{0} gallonaa"}
            }
            hectoliter{
                dnam{"hehtolitrat"}
                one{"{0} hehtolitra"}
                other{"{0} hehtolitraa"}
            }
            liter{
                dnam{"litrat"}
                one{"{0} litra"}
                other{"{0} litraa"}
            }
            megaliter{
                dnam{"megalitrat"}
                one{"{0} megalitra"}
                other{"{0} megalitraa"}
            }
            milliliter{
                dnam{"millilitrat"}
                one{"{0} millilitra"}
                other{"{0} millilitraa"}
            }
            pint{
                dnam{"pintit"}
                one{"{0} pint"}
                other{"{0} pinttiä"}
            }
            quart{
                dnam{"neljännesgallonat"}
                one{"{0} neljännesgallona"}
                other{"{0} neljännesgallonaa"}
            }
            tablespoon{
                dnam{"ruokalusikat"}
                one{"{0} ruokalusikka"}
                other{"{0} ruokalusikkaa"}
            }
            teaspoon{
                dnam{"teelusikat"}
                one{"{0} teelusikka"}
                other{"{0} teelusikkaa"}
            }
        }
    }
    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{"′"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"″"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0}rad"}
                other{"{0}rad"}
            }
        }
        area{
            acre{
                dnam{"ac"}
                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{"ft²"}
                one{"{0}ft²"}
                other{"{0}ft²"}
            }
            square-inch{
                dnam{"in²"}
                one{"{0}in²"}
                other{"{0}in²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0}km²"}
                other{"{0}km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0}m²"}
                other{"{0}m²"}
            }
            square-mile{
                dnam{"mi²"}
                one{"{0}mi²"}
                other{"{0}mi²"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0}yd²"}
                other{"{0}yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"l/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{"t"}
                one{"{0}t"}
                other{"{0}t"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0}Gb"}
                other{"{0}Gb"}
            }
            gigabyte{
                dnam{"Gt"}
                one{"{0}Gt"}
                other{"{0}Gt"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0}kb"}
                other{"{0}kb"}
            }
            kilobyte{
                dnam{"kt"}
                one{"{0}kt"}
                other{"{0}kt"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0}Mb"}
                other{"{0}Mb"}
            }
            megabyte{
                dnam{"Mt"}
                one{"{0}Mt"}
                other{"{0}Mt"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0}Tb"}
                other{"{0}Tb"}
            }
            terabyte{
                dnam{"Tt"}
                one{"{0}Tt"}
                other{"{0}Tt"}
            }
        }
        duration{
            day{
                dnam{"pv"}
                one{"{0}pv"}
                other{"{0}pv"}
            }
            hour{
                dnam{"t"}
                one{"{0}t"}
                other{"{0}t"}
                per{"{0}/t"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0}μs"}
                other{"{0}μs"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                dnam{"min"}
                one{"{0}min"}
                other{"{0}min"}
            }
            month{
                dnam{"kk"}
                one{"{0}kk"}
                other{"{0}kk"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0}ns"}
                other{"{0}ns"}
            }
            second{
                dnam{"s"}
                one{"{0}s"}
                other{"{0}s"}
                per{"{0}/s"}
            }
            week{
                dnam{"vk"}
                one{"{0}vk"}
                other{"{0}vk"}
            }
            year{
                dnam{"v"}
                one{"{0}v"}
                other{"{0}v"}
            }
        }
        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{"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{"fm"}
                one{"{0}fm"}
                other{"{0}fm"}
            }
            foot{
                dnam{"ft"}
                one{"{0}′"}
                other{"{0}′"}
            }
            furlong{
                dnam{"fur"}
                one{"{0}fur"}
                other{"{0}fur"}
            }
            inch{
                dnam{"in"}
                one{"{0}″"}
                other{"{0}″"}
            }
            kilometer{
                dnam{"km"}
                one{"{0}km"}
                other{"{0}km"}
            }
            light-year{
                dnam{"vv"}
                one{"{0}vv"}
                other{"{0}vv"}
            }
            meter{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0}µm"}
                other{"{0}µm"}
            }
            mile{
                dnam{"mi"}
                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{"mpk"}
                one{"{0}mpk"}
                other{"{0}mpk"}
            }
            parsec{
                dnam{"pc"}
                one{"{0}pc"}
                other{"{0}pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0}pm"}
                other{"{0}pm"}
            }
            yard{
                dnam{"yd"}
                one{"{0}yd"}
                other{"{0}yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0}lx"}
                other{"{0}lx"}
            }
        }
        mass{
            carat{
                dnam{"ka"}
                one{"{0}ka"}
                other{"{0}ka"}
            }
            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{"oz"}
                one{"{0}oz"}
                other{"{0}oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0}oz t"}
                other{"{0}oz t"}
            }
            pound{
                dnam{"lb"}
                one{"{0}lb"}
                other{"{0}lb"}
            }
            stone{
                dnam{"st"}
                one{"{0}st"}
                other{"{0}st"}
            }
            ton{
                dnam{"US-tn"}
                one{"{0}US-tn"}
                other{"{0}US-tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0}GW"}
                other{"{0}GW"}
            }
            horsepower{
                dnam{"hv"}
                one{"{0}hv"}
                other{"{0}hv"}
            }
            kilowatt{
                dnam{"kW"}
                one{"{0}kW"}
                other{"{0}kW"}
            }
            megawatt{
                dnam{"MW"}
                one{"{0}GW"}
                other{"{0}GW"}
            }
            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{"inHg"}
                one{"{0}″ Hg"}
                other{"{0}″ 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{"ka"}
                one{"{0}ka"}
                other{"{0}ka"}
            }
        }
        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{"mi/h"}
                one{"{0}mi/h"}
                other{"{0}mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°"}
                other{"{0}°"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0}K"}
                other{"{0}K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ac ft"}
                one{"{0}ac ft"}
                other{"{0}ac ft"}
            }
            bushel{
                dnam{"bu"}
                one{"{0}bu"}
                other{"{0}bu"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0}cl"}
                other{"{0}cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0}cm³"}
                other{"{0}cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                one{"{0}ft³"}
                other{"{0}ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                one{"{0}in³"}
                other{"{0}in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0}km³"}
                other{"{0}km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0}m³"}
                other{"{0}m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0}mi³"}
                other{"{0}mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0}yd³"}
                other{"{0}yd³"}
            }
            cup{
                dnam{"kp"}
                one{"{0}kp"}
                other{"{0}kp"}
            }
            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"}
                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{"pt"}
                one{"{0}pt"}
                other{"{0}pt"}
            }
            quart{
                dnam{"qt"}
                one{"{0}qt"}
                other{"{0}qt"}
            }
            tablespoon{
                dnam{"rkl"}
                one{"{0}rkl"}
                other{"{0}rkl"}
            }
            teaspoon{
                dnam{"tl"}
                one{"{0}tl"}
                other{"{0}tl"}
            }
        }
    }
    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{"′"}
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                dnam{"″"}
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"ac"}
                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{"ft²"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                one{"{0} in²"}
                other{"{0} in²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"mi²"}
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-kilometer{
                dnam{"l/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{"t"}
                one{"{0} t"}
                other{"{0} t"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"Gt"}
                one{"{0} Gt"}
                other{"{0} Gt"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kt"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"Mt"}
                one{"{0} Mt"}
                other{"{0} Mt"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"Tt"}
                one{"{0} Tt"}
                other{"{0} Tt"}
            }
        }
        duration{
            day{
                dnam{"pv"}
                one{"{0} pv"}
                other{"{0} pv"}
            }
            hour{
                dnam{"t"}
                one{"{0} t"}
                other{"{0} t"}
                per{"{0}/t"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"kk"}
                one{"{0} kk"}
                other{"{0} kk"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sek"}
                one{"{0} s"}
                other{"{0} s"}
                per{"{0}/s"}
            }
            week{
                dnam{"vk"}
                one{"{0} vk"}
                other{"{0} vk"}
            }
            year{
                dnam{"v"}
                one{"{0} v"}
                other{"{0} v"}
            }
        }
        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{"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{"fm"}
                one{"{0} fm"}
                other{"{0} fm"}
            }
            foot{
                dnam{"ft"}
                one{"{0} ft"}
                other{"{0} ft"}
            }
            furlong{
                dnam{"fur"}
                one{"{0} fur"}
                other{"{0} fur"}
            }
            inch{
                dnam{"in"}
                one{"{0} in"}
                other{"{0} in"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                dnam{"vv"}
                one{"{0} vv"}
                other{"{0} vv"}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                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{"mpk"}
                one{"{0} mpk"}
                other{"{0} mpk"}
            }
            parsec{
                dnam{"pc"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"yd"}
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lx"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"ka"}
                one{"{0} ka"}
                other{"{0} ka"}
            }
            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{"oz"}
                one{"{0} oz"}
                other{"{0} oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                one{"{0} lb"}
                other{"{0} lb"}
            }
            stone{
                dnam{"st"}
                one{"{0} st"}
                other{"{0} st"}
            }
            ton{
                dnam{"US-tn"}
                one{"{0} US-tn"}
                other{"{0} US-tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"hv"}
                one{"{0} hv"}
                other{"{0} hv"}
            }
            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{"inHg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            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{"ka"}
                one{"{0} ka"}
                other{"{0} ka"}
            }
        }
        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{"mi/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{"ac ft"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            bushel{
                dnam{"bu"}
                one{"{0} bu"}
                other{"{0} bu"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0} cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                one{"{0} in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"kp"}
                one{"{0} kp"}
                other{"{0} kp"}
            }
            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"}
                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{"pt"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            quart{
                dnam{"qt"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"rkl"}
                one{"{0} rkl"}
                other{"{0} rkl"}
            }
            teaspoon{
                dnam{"tl"}
                one{"{0} tl"}
                other{"{0} tl"}
            }
        }
    }
}
