﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/es.xml
// *
// ***************************************************************************
es{
    Version{"2.1.23.18"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"fuerza G"}
                one{"{0} unidad de fuerza gravitacional"}
                other{"{0} unidades de fuerza gravitacional"}
            }
            meter-per-second-squared{
                dnam{"metros por segundo al cuadrado"}
                one{"{0} metro por segundo al cuadrado"}
                other{"{0} metros por segundo al cuadrado"}
            }
        }
        angle{
            arc-minute{
                dnam{"minutos de arco"}
                one{"{0} minuto de arco"}
                other{"{0} minutos de arco"}
            }
            arc-second{
                dnam{"segundos de arco"}
                one{"{0} segundo de arco"}
                other{"{0} segundos de arco"}
            }
            degree{
                dnam{"grados"}
                one{"{0} grado"}
                other{"{0} grados"}
            }
            radian{
                dnam{"radianes"}
                one{"{0} radián"}
                other{"{0} radianes"}
            }
            revolution{
                dnam{"revoluciones"}
                one{"{0} revolución"}
                other{"{0} revoluciones"}
            }
        }
        area{
            acre{
                dnam{"acres"}
                one{"{0} acre"}
                other{"{0} acres"}
            }
            hectare{
                dnam{"hectáreas"}
                one{"{0} hectárea"}
                other{"{0} hectáreas"}
            }
            square-centimeter{
                dnam{"centímetros cuadrados"}
                one{"{0} centímetro cuadrado"}
                other{"{0} centímetros cuadrados"}
                per{"{0} por centímetro cuadrado"}
            }
            square-foot{
                dnam{"pies cuadrados"}
                one{"{0} pie cuadrado"}
                other{"{0} pies cuadrados"}
            }
            square-inch{
                dnam{"pulgadas cuadradas"}
                one{"{0} pulgada cuadrada"}
                other{"{0} pulgadas cuadradas"}
                per{"{0} por pulgada cuadrada"}
            }
            square-kilometer{
                dnam{"kilómetros cuadrados"}
                one{"{0} kilómetro cuadrado"}
                other{"{0} kilómetros cuadrados"}
            }
            square-meter{
                dnam{"metros cuadrados"}
                one{"{0} metro cuadrado"}
                other{"{0} metros cuadrados"}
                per{"{0} por metro cuadrado"}
            }
            square-mile{
                dnam{"millas cuadradas"}
                one{"{0} milla cuadrada"}
                other{"{0} millas cuadradas"}
            }
            square-yard{
                dnam{"yardas cuadradas"}
                one{"{0} yarda cuadrada"}
                other{"{0} yardas cuadradas"}
            }
        }
        compound{
            per{"{0} por {1}"}
        }
        concentr{
            karat{
                dnam{"quilates"}
                one{"{0} quilate"}
                other{"{0} quilates"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"litros por 100 kilómetros"}
                one{"{0} litro por 100 kilómetros"}
                other{"{0} litros por 100 kilómetros"}
            }
            liter-per-kilometer{
                dnam{"litros por kilómetro"}
                one{"{0} litro por kilómetro"}
                other{"{0} litros por kilómetro"}
            }
            mile-per-gallon{
                dnam{"millas por galón"}
                one{"{0} milla por galón"}
                other{"{0} millas por galón"}
            }
        }
        coordinate{
            east{"{0} E"}
            north{"{0} N"}
            south{"{0} S"}
            west{"{0} O"}
        }
        digital{
            bit{
                dnam{"bits"}
                one{"{0} bit"}
                other{"{0} bits"}
            }
            byte{
                dnam{"bytes"}
                one{"{0} byte"}
                other{"{0} bytes"}
            }
            gigabit{
                dnam{"gigabits"}
                one{"{0} gigabit"}
                other{"{0} gigabits"}
            }
            gigabyte{
                dnam{"gigabytes"}
                one{"{0} gigabyte"}
                other{"{0} gigabytes"}
            }
            kilobit{
                dnam{"kilobits"}
                one{"{0} kilobit"}
                other{"{0} kilobits"}
            }
            kilobyte{
                dnam{"kilobytes"}
                one{"{0} kilobyte"}
                other{"{0} kilobytes"}
            }
            megabit{
                dnam{"megabits"}
                one{"{0} megabit"}
                other{"{0} megabits"}
            }
            megabyte{
                dnam{"megabytes"}
                one{"{0} megabyte"}
                other{"{0} megabytes"}
            }
            terabit{
                dnam{"terabits"}
                one{"{0} terabit"}
                other{"{0} terabits"}
            }
            terabyte{
                dnam{"terabytes"}
                one{"{0} terabyte"}
                other{"{0} terabytes"}
            }
        }
        duration{
            century{
                dnam{"siglos"}
                one{"{0} siglo"}
                other{"{0} siglos"}
            }
            day{
                dnam{"días"}
                one{"{0} día"}
                other{"{0} días"}
                per{"{0} por día"}
            }
            hour{
                dnam{"horas"}
                one{"{0} hora"}
                other{"{0} horas"}
                per{"{0} por hora"}
            }
            microsecond{
                dnam{"microsegundos"}
                one{"{0} microsegundo"}
                other{"{0} microsegundos"}
            }
            millisecond{
                dnam{"milisegundos"}
                one{"{0} milisegundo"}
                other{"{0} milisegundos"}
            }
            minute{
                dnam{"minutos"}
                one{"{0} minuto"}
                other{"{0} minutos"}
                per{"{0} por minuto"}
            }
            month{
                dnam{"meses"}
                one{"{0} mes"}
                other{"{0} meses"}
                per{"{0} por mes"}
            }
            nanosecond{
                dnam{"nanosegundos"}
                one{"{0} nanosegundo"}
                other{"{0} nanosegundos"}
            }
            second{
                dnam{"segundos"}
                one{"{0} segundo"}
                other{"{0} segundos"}
                per{"{0} por segundo"}
            }
            week{
                dnam{"semanas"}
                one{"{0} semana"}
                other{"{0} semanas"}
                per{"{0} por semana"}
            }
            year{
                dnam{"años"}
                one{"{0} año"}
                other{"{0} años"}
                per{"{0} por año"}
            }
        }
        electric{
            ampere{
                dnam{"amperios"}
                one{"{0} amperio"}
                other{"{0} amperios"}
            }
            milliampere{
                dnam{"miliamperios"}
                one{"{0} miliamperio"}
                other{"{0} miliamperios"}
            }
            ohm{
                dnam{"ohmios"}
                one{"{0} ohmio"}
                other{"{0} ohmios"}
            }
            volt{
                dnam{"voltios"}
                one{"{0} voltio"}
                other{"{0} voltios"}
            }
        }
        energy{
            calorie{
                dnam{"calorías"}
                one{"{0} caloría"}
                other{"{0} calorías"}
            }
            foodcalorie{
                dnam{"calorías"}
                one{"{0} caloría"}
                other{"{0} calorías"}
            }
            joule{
                dnam{"julios"}
                one{"{0} julio"}
                other{"{0} julios"}
            }
            kilocalorie{
                dnam{"kilocalorías"}
                one{"{0} kilocaloría"}
                other{"{0} kilocalorías"}
            }
            kilojoule{
                dnam{"kilojulios"}
                one{"{0} kilojulio"}
                other{"{0} kilojulios"}
            }
            kilowatt-hour{
                dnam{"kilovatios-hora"}
                one{"{0} kilovatio-hora"}
                other{"{0} kilovatios-hora"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigahercios"}
                one{"{0} gigahercio"}
                other{"{0} gigahercios"}
            }
            hertz{
                dnam{"hercios"}
                one{"{0} hercio"}
                other{"{0} hercios"}
            }
            kilohertz{
                dnam{"kilohercios"}
                one{"{0} kilohercio"}
                other{"{0} kilohercios"}
            }
            megahertz{
                dnam{"megahercios"}
                one{"{0} megahercio"}
                other{"{0} megahercios"}
            }
        }
        length{
            astronomical-unit{
                dnam{"unidades astronómicas"}
                one{"{0} unidad astronómica"}
                other{"{0} unidades astronómicas"}
            }
            centimeter{
                dnam{"centímetros"}
                one{"{0} centímetro"}
                other{"{0} centímetros"}
                per{"{0} por centímetro"}
            }
            decimeter{
                dnam{"decímetros"}
                one{"{0} decímetro"}
                other{"{0} decímetros"}
            }
            foot{
                dnam{"pies"}
                one{"{0} pie"}
                other{"{0} pies"}
                per{"{0} por pie"}
            }
            inch{
                dnam{"pulgadas"}
                one{"{0} pulgada"}
                other{"{0} pulgadas"}
                per{"{0} por pulgada"}
            }
            kilometer{
                dnam{"kilómetros"}
                one{"{0} kilómetro"}
                other{"{0} kilómetros"}
                per{"{0} por kilómetro"}
            }
            light-year{
                dnam{"años luz"}
                one{"{0} año luz"}
                other{"{0} años luz"}
            }
            meter{
                dnam{"metros"}
                one{"{0} metro"}
                other{"{0} metros"}
                per{"{0} por metro"}
            }
            micrometer{
                dnam{"micrómetros"}
                one{"{0} micrómetro"}
                other{"{0} micrómetros"}
            }
            mile{
                dnam{"millas"}
                one{"{0} milla"}
                other{"{0} millas"}
            }
            mile-scandinavian{
                dnam{"millas escandinavas"}
                one{"{0} milla escandinava"}
                other{"{0} millas escandinavas"}
            }
            millimeter{
                dnam{"milímetros"}
                one{"{0} milímetro"}
                other{"{0} milímetros"}
            }
            nanometer{
                dnam{"nanómetros"}
                one{"{0} nanómetro"}
                other{"{0} nanómetros"}
            }
            nautical-mile{
                dnam{"millas náuticas"}
                one{"{0} milla náutica"}
                other{"{0} millas náuticas"}
            }
            parsec{
                dnam{"parsecs"}
                one{"{0} parsec"}
                other{"{0} parsecs"}
            }
            picometer{
                dnam{"picómetros"}
                one{"{0} picómetro"}
                other{"{0} picómetros"}
            }
            yard{
                dnam{"yardas"}
                one{"{0} yarda"}
                other{"{0} yardas"}
            }
        }
        light{
            lux{
                dnam{"luxes"}
                one{"{0} lux"}
                other{"{0} luxes"}
            }
        }
        mass{
            carat{
                dnam{"quilates"}
                one{"{0} quilate"}
                other{"{0} quilates"}
            }
            gram{
                dnam{"gramos"}
                one{"{0} gramo"}
                other{"{0} gramos"}
                per{"{0} por gramo"}
            }
            kilogram{
                dnam{"kilogramos"}
                one{"{0} kilogramo"}
                other{"{0} kilogramos"}
                per{"{0} por kilogramo"}
            }
            metric-ton{
                dnam{"toneladas métricas"}
                one{"{0} tonelada métrica"}
                other{"{0} toneladas métricas"}
            }
            microgram{
                dnam{"microgramos"}
                one{"{0} microgramo"}
                other{"{0} microgramos"}
            }
            milligram{
                dnam{"miligramos"}
                one{"{0} miligramo"}
                other{"{0} miligramos"}
            }
            ounce{
                dnam{"onzas"}
                one{"{0} onza"}
                other{"{0} onzas"}
                per{"{0} por onza"}
            }
            ounce-troy{
                dnam{"onzas troy"}
                one{"{0} onza troy"}
                other{"{0} onzas troy"}
            }
            pound{
                dnam{"libras"}
                one{"{0} libra"}
                other{"{0} libras"}
                per{"{0} por libra"}
            }
            ton{
                dnam{"toneladas"}
                one{"{0} tonelada"}
                other{"{0} toneladas"}
            }
        }
        power{
            gigawatt{
                dnam{"gigavatios"}
                one{"{0} gigavatio"}
                other{"{0} gigavatios"}
            }
            horsepower{
                dnam{"caballos de vapor"}
                one{"{0} caballo de vapor"}
                other{"{0} caballos de vapor"}
            }
            kilowatt{
                dnam{"kilovatios"}
                one{"{0} kilovatio"}
                other{"{0} kilovatios"}
            }
            megawatt{
                dnam{"megavatios"}
                one{"{0} megavatio"}
                other{"{0} megavatios"}
            }
            milliwatt{
                dnam{"milivatios"}
                one{"{0} milivatio"}
                other{"{0} milivatios"}
            }
            watt{
                dnam{"vatios"}
                one{"{0} vatio"}
                other{"{0} vatios"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hectopascales"}
                one{"{0} hectopascal"}
                other{"{0} hectopascales"}
            }
            inch-hg{
                dnam{"pulgadas de mercurio"}
                one{"{0} pulgada de mercurio"}
                other{"{0} pulgadas de mercurio"}
            }
            millibar{
                dnam{"milibares"}
                one{"{0} milibar"}
                other{"{0} milibares"}
            }
            millimeter-of-mercury{
                dnam{"milímetros de mercurio"}
                one{"{0} milímetro de mercurio"}
                other{"{0} milímetros de mercurio"}
            }
            pound-per-square-inch{
                dnam{"libras por pulgada cuadrada"}
                one{"{0} libra por pulgada cuadrada"}
                other{"{0} libras por pulgada cuadrada"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilómetros por hora"}
                one{"{0} kilómetro por hora"}
                other{"{0} kilómetros por hora"}
            }
            knot{
                dnam{"nudos"}
                one{"{0} nudo"}
                other{"{0} nudos"}
            }
            meter-per-second{
                dnam{"metros por segundo"}
                one{"{0} metro por segundo"}
                other{"{0} metros por segundo"}
            }
            mile-per-hour{
                dnam{"millas por hora"}
                one{"{0} milla por hora"}
                other{"{0} millas por hora"}
            }
        }
        temperature{
            celsius{
                dnam{"grados Celsius"}
                one{"{0} grado Celsius"}
                other{"{0} grados Celsius"}
            }
            fahrenheit{
                dnam{"grados Fahrenheit"}
                one{"{0} grado Fahrenheit"}
                other{"{0} grados Fahrenheit"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"kelvin"}
                one{"{0} kelvin"}
                other{"{0} kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"acres-pies"}
                one{"{0} acre-pie"}
                other{"{0} acres-pies"}
            }
            centiliter{
                dnam{"centilitros"}
                one{"{0} centilitro"}
                other{"{0} centilitros"}
            }
            cubic-centimeter{
                dnam{"centímetros cúbicos"}
                one{"{0} centímetro cúbico"}
                other{"{0} centímetros cúbicos"}
                per{"{0} por centímetro cúbico"}
            }
            cubic-foot{
                dnam{"pies cúbicos"}
                one{"{0} pie cúbico"}
                other{"{0} pies cúbicos"}
            }
            cubic-inch{
                dnam{"pulgadas cúbicas"}
                one{"{0} pulgada cúbica"}
                other{"{0} pulgadas cúbicas"}
            }
            cubic-kilometer{
                dnam{"kilómetros cúbicos"}
                one{"{0} kilómetro cúbico"}
                other{"{0} kilómetros cúbicos"}
            }
            cubic-meter{
                dnam{"metros cúbicos"}
                one{"{0} metro cúbico"}
                other{"{0} metros cúbicos"}
                per{"{0} por metro cúbico"}
            }
            cubic-mile{
                dnam{"millas cúbicas"}
                one{"{0} milla cúbica"}
                other{"{0} millas cúbicas"}
            }
            cubic-yard{
                dnam{"yardas cúbicas"}
                one{"{0} yarda cúbica"}
                other{"{0} yardas cúbicas"}
            }
            cup{
                dnam{"tazas"}
                one{"{0} taza"}
                other{"{0} tazas"}
            }
            cup-metric{
                dnam{"tazas métricas"}
                one{"{0} taza métrica"}
                other{"{0} tazas métricas"}
            }
            deciliter{
                dnam{"decilitros"}
                one{"{0} decilitro"}
                other{"{0} decilitros"}
            }
            fluid-ounce{
                dnam{"onzas fluidas"}
                one{"{0} onza fluida"}
                other{"{0} onzas fluidas"}
            }
            gallon{
                dnam{"galones"}
                one{"{0} galón"}
                other{"{0} galones"}
                per{"{0} por galón"}
            }
            hectoliter{
                dnam{"hectolitros"}
                one{"{0} hectolitro"}
                other{"{0} hectolitros"}
            }
            liter{
                dnam{"litros"}
                one{"{0} litro"}
                other{"{0} litros"}
                per{"{0} por litro"}
            }
            megaliter{
                dnam{"megalitros"}
                one{"{0} megalitro"}
                other{"{0} megalitros"}
            }
            milliliter{
                dnam{"mililitros"}
                one{"{0} mililitro"}
                other{"{0} mililitros"}
            }
            pint{
                dnam{"pintas"}
                one{"{0} pinta"}
                other{"{0} pintas"}
            }
            pint-metric{
                dnam{"pintas métricas"}
                one{"{0} pinta métrica"}
                other{"{0} pintas métricas"}
            }
            quart{
                dnam{"cuartos"}
                one{"{0} cuarto"}
                other{"{0} cuartos"}
            }
            tablespoon{
                dnam{"cucharadas"}
                one{"{0} cucharada"}
                other{"{0} cucharadas"}
            }
            teaspoon{
                dnam{"cucharaditas"}
                one{"{0} cucharadita"}
                other{"{0} cucharaditas"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                one{"{0}G"}
                other{"{0}G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}'"}
                other{"{0}'"}
            }
            arc-second{
                one{"{0}\u0022"}
                other{"{0}\u0022"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0}ac"}
                other{"{0}ac"}
            }
            hectare{
                one{"{0}ha"}
                other{"{0}ha"}
            }
            square-foot{
                one{"{0}ft²"}
                other{"{0}ft²"}
            }
            square-kilometer{
                one{"{0}km²"}
                other{"{0}km²"}
            }
            square-meter{
                one{"{0}m²"}
                other{"{0}m²"}
            }
            square-mile{
                one{"{0}mi²"}
                other{"{0}mi²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        consumption{
            liter-per-100kilometers{
                dnam{"l/100km"}
                one{"{0}l/100km"}
                other{"{0}l/100km"}
            }
        }
        coordinate{
            east{"{0}E"}
            north{"{0}N"}
            south{"{0}S"}
            west{"{0}O"}
        }
        duration{
            day{
                dnam{"d"}
                one{"{0}d"}
                other{"{0}d"}
            }
            hour{
                dnam{"h"}
                one{"{0}h"}
                other{"{0}h"}
            }
            millisecond{
                dnam{"ms"}
                one{"{0}ms"}
                other{"{0}ms"}
            }
            minute{
                dnam{"min"}
                one{"{0}min"}
                other{"{0}min"}
            }
            month{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
            }
            second{
                dnam{"s"}
                one{"{0}s"}
                other{"{0}s"}
            }
            week{
                dnam{"sem"}
                one{"{0}sem"}
                other{"{0}sem"}
            }
            year{
                dnam{"a"}
                one{"{0}a"}
                other{"{0}a"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0}cm"}
                other{"{0}cm"}
            }
            foot{
                one{"{0}ft"}
                other{"{0}ft"}
            }
            inch{
                one{"{0}in"}
                other{"{0}in"}
            }
            kilometer{
                dnam{"km"}
                one{"{0}km"}
                other{"{0}km"}
            }
            light-year{
                one{"{0}a.l."}
                other{"{0}a.l."}
            }
            meter{
                dnam{"m"}
                one{"{0}m"}
                other{"{0}m"}
            }
            mile{
                one{"{0}mi"}
                other{"{0}mi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0}mm"}
                other{"{0}mm"}
            }
            picometer{
                one{"{0}pm"}
                other{"{0}pm"}
            }
            yard{
                one{"{0}yd"}
                other{"{0}yd"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                one{"{0}g"}
                other{"{0}g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0}kg"}
                other{"{0}kg"}
            }
            ounce{
                one{"{0}oz"}
                other{"{0}oz"}
            }
            pound{
                one{"{0}lb"}
                other{"{0}lb"}
            }
        }
        power{
            horsepower{
                one{"{0}hp"}
                other{"{0}hp"}
            }
            kilowatt{
                one{"{0}kW"}
                other{"{0}kW"}
            }
            watt{
                one{"{0}W"}
                other{"{0}W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0}hPa"}
                other{"{0}hPa"}
            }
            inch-hg{
                one{"{0}inHg"}
                other{"{0}inHg"}
            }
            millibar{
                one{"{0}mbar"}
                other{"{0}mbar"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0}km/h"}
                other{"{0}km/h"}
            }
            meter-per-second{
                one{"{0}m/s"}
                other{"{0}m/s"}
            }
            mile-per-hour{
                one{"{0}mi/h"}
                other{"{0}mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0}km³"}
                other{"{0}km³"}
            }
            cubic-mile{
                one{"{0}mi³"}
                other{"{0}mi³"}
            }
            liter{
                dnam{"l"}
                one{"{0}l"}
                other{"{0}l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"Fg"}
                one{"{0} Fg"}
                other{"{0} Fg"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"arcmin"}
                one{"{0} arcmin"}
                other{"{0} arcmin"}
            }
            arc-second{
                dnam{"arcsec"}
                one{"{0} arcsec"}
                other{"{0} arcsec"}
            }
            degree{
                dnam{"grad."}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"rev"}
                one{"{0} rev"}
                other{"{0} rev"}
            }
        }
        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²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"ft²"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                one{"{0} in²"}
                other{"{0} in²"}
                per{"{0}/in²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"m²"}
                one{"{0} m²"}
                other{"{0} m²"}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"mi²"}
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"yd²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        compound{
            per{"{0}/{1}"}
        }
        concentr{
            karat{
                dnam{"c"}
                one{"{0} c"}
                other{"{0} c"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"l/100 km"}
                one{"{0} l/100 km"}
                other{"{0} l/100 km"}
            }
            liter-per-kilometer{
                dnam{"l/km"}
                one{"{0} l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"mi/gal"}
                one{"{0} mi/gal"}
                other{"{0} mi/gal"}
            }
        }
        coordinate{
            east{"{0} E"}
            north{"{0} N"}
            south{"{0} S"}
            west{"{0} O"}
        }
        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"}
            }
            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{
            century{
                dnam{"sig."}
                one{"{0} sig."}
                other{"{0} sig."}
            }
            day{
                dnam{"d"}
                one{"{0} d"}
                other{"{0} d"}
                per{"{0}/d"}
            }
            hour{
                dnam{"horas"}
                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{"min"}
                one{"{0} min"}
                other{"{0} min"}
                per{"{0}/min"}
            }
            month{
                dnam{"m."}
                one{"{0} m."}
                other{"{0} m."}
                per{"{0}/m."}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"s"}
                one{"{0} s"}
                other{"{0} s"}
                per{"{0}/s"}
            }
            week{
                dnam{"sem."}
                one{"{0} sem."}
                other{"{0} sem."}
                per{"{0}/sem."}
            }
            year{
                dnam{"a"}
                one{"{0} a"}
                other{"{0} a"}
                per{"{0}/a"}
            }
        }
        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{"voltios"}
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            joule{
                dnam{"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"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"ft"}
                one{"{0} ft"}
                other{"{0} ft"}
                per{"{0}/ft"}
            }
            inch{
                dnam{"in"}
                one{"{0} in"}
                other{"{0} in"}
                per{"{0}/in"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"a. l."}
                one{"{0} a. l."}
                other{"{0} a. l."}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                one{"{0} mi"}
                other{"{0} mi"}
            }
            mile-scandinavian{
                dnam{"mi esc."}
                one{"{0} mi esc."}
                other{"{0} mi esc."}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"M"}
                one{"{0} M"}
                other{"{0} M"}
            }
            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{"c"}
                one{"{0} c"}
                other{"{0} c"}
            }
            gram{
                dnam{"g"}
                one{"{0} g"}
                other{"{0} g"}
                per{"{0}/g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
                per{"{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"}
                per{"{0}/oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                one{"{0} lb"}
                other{"{0} lb"}
                per{"{0}/lb"}
            }
            ton{
                dnam{"ton"}
                one{"{0} ton"}
                other{"{0} ton"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"CV"}
                one{"{0} CV"}
                other{"{0} CV"}
            }
            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{"vatios"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"inHg"}
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mmHg"}
                one{"{0} mmHg"}
                other{"{0} mmHg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            knot{
                dnam{"kn"}
                one{"{0} kn"}
                other{"{0} kn"}
            }
            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"}
            }
            generic{
                dnam{"°"}
                one{"{0}°"}
                other{"{0}°"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ac ft"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            centiliter{
                dnam{"cl"}
                one{"{0} cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
                per{"{0}/cm³"}
            }
            cubic-foot{
                dnam{"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³"}
                per{"{0}/m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"tazas"}
                one{"{0} tza."}
                other{"{0} tza."}
            }
            cup-metric{
                dnam{"mc"}
                one{"{0} mc"}
                other{"{0} mc"}
            }
            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"}
                per{"{0}/gal"}
            }
            hectoliter{
                dnam{"hl"}
                one{"{0} hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"l"}
                one{"{0} l"}
                other{"{0} l"}
                per{"{0}/l"}
            }
            megaliter{
                dnam{"Ml"}
                one{"{0} Ml"}
                other{"{0} Ml"}
            }
            milliliter{
                dnam{"ml"}
                one{"{0} ml"}
                other{"{0} ml"}
            }
            pint{
                dnam{"pt"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            pint-metric{
                dnam{"mpt"}
                one{"{0} mpt"}
                other{"{0} mpt"}
            }
            quart{
                dnam{"qt"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"cda"}
                one{"{0} cda"}
                other{"{0} cda"}
            }
            teaspoon{
                dnam{"cdta"}
                one{"{0} cdta"}
                other{"{0} cdta"}
            }
        }
    }
}
