﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/gl.xml
// *
// ***************************************************************************
gl{
    Version{"2.1.15.60"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"forza G"}
                one{"{0} forza G"}
                other{"{0} forzas G"}
            }
            meter-per-second-squared{
                dnam{"metros por segundo cadrado"}
                one{"{0} metro por segundo cadrado"}
                other{"{0} metros por segundo cadrado"}
            }
        }
        angle{
            arc-minute{
                dnam{"arcominutos"}
                one{"{0} arcominuto"}
                other{"{0} arcominutos"}
            }
            arc-second{
                dnam{"arcosegundos"}
                one{"{0} arcosegundo"}
                other{"{0} arcosegundos"}
            }
            degree{
                dnam{"grados"}
                one{"{0} grado"}
                other{"{0} grados"}
            }
            radian{
                dnam{"radiáns"}
                one{"{0} radián"}
                other{"{0} radiáns"}
            }
        }
        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 cadrados"}
                one{"{0} centímetro cadrado"}
                other{"{0} centímetros cadrados"}
            }
            square-foot{
                dnam{"pés cadrados"}
                one{"{0} pé carado"}
                other{"{0} pés cadrados"}
            }
            square-inch{
                dnam{"polgadas cadradas"}
                one{"{0} polgada cadrada"}
                other{"{0} polgadas cadradas"}
            }
            square-kilometer{
                dnam{"quilómetros cadrados"}
                one{"{0} quilómetro cadrado"}
                other{"{0} quilómetros cadrados"}
            }
            square-meter{
                dnam{"metros cadrados"}
                one{"{0} metro cadrado"}
                other{"{0} metros cadrados"}
            }
            square-mile{
                dnam{"millas cadradas"}
                one{"{0} milla cadrada"}
                other{"{0} millas cadradas"}
            }
            square-yard{
                dnam{"iardas cadradas"}
                one{"{0} iarda cadrada"}
                other{"{0} iardas cadradas"}
            }
        }
        consumption{
            liter-per-kilometer{
                dnam{"litros por quilómetro"}
                one{"{0} litro por quilómetro"}
                other{"{0} litros por quilómetro"}
            }
            mile-per-gallon{
                dnam{"millas por galón"}
                one{"{0} milla por galón"}
                other{"{0} millas por galón"}
            }
        }
        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{"terabyte"}
                one{"{0} terabyte"}
                other{"{0} terabytes"}
            }
        }
        duration{
            day{
                dnam{"días"}
                one{"{0} día"}
                other{"{0} días"}
            }
            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"}
            }
            month{
                dnam{"meses"}
                one{"{0} mes"}
                other{"{0} meses"}
            }
            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"}
            }
            year{
                dnam{"anos"}
                one{"{0} ano"}
                other{"{0} anos"}
            }
        }
        electric{
            ampere{
                dnam{"amperios"}
                one{"{0} amperio"}
                other{"{0} amperios"}
            }
            milliampere{
                dnam{"miliamperios"}
                one{"{0} miliamperio"}
                other{"{0} miliamperios"}
            }
            ohm{
                dnam{"ohms"}
                one{"{0} ohm"}
                other{"{0} ohms"}
            }
            volt{
                dnam{"volts"}
                one{"{0} volt"}
                other{"{0} volts"}
            }
        }
        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{"joules"}
                one{"{0} joule"}
                other{"{0} joules"}
            }
            kilocalorie{
                dnam{"quilocalorías"}
                one{"{0} quilocaloría"}
                other{"{0} quilocalorías"}
            }
            kilojoule{
                dnam{"quilojoules"}
                one{"{0} quilojoule"}
                other{"{0} quilojoules"}
            }
            kilowatt-hour{
                dnam{"quilowatts/hora"}
                one{"{0} quilowatt/hora"}
                other{"{0} quilowatts/hora"}
            }
        }
        frequency{
            gigahertz{
                dnam{"gigahertz"}
                one{"{0} gigahertz"}
                other{"{0} gigahertz"}
            }
            hertz{
                dnam{"hertz"}
                one{"{0} hertz"}
                other{"{0} hertz"}
            }
            kilohertz{
                dnam{"kilohertz"}
                one{"{0} kilohertz"}
                other{"{0} kilohertz"}
            }
            megahertz{
                dnam{"megahertz"}
                one{"{0} megahertz"}
                other{"{0} megahertz"}
            }
        }
        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"}
            }
            decimeter{
                dnam{"decímetros"}
                one{"{0} decímetro"}
                other{"{0} decímetros"}
            }
            foot{
                dnam{"pé"}
                one{"{0} pé"}
                other{"{0} pés"}
            }
            inch{
                dnam{"polgada"}
                one{"{0} polgada"}
                other{"{0} polgadas"}
            }
            kilometer{
                dnam{"quilómetros"}
                one{"{0} quilómetro"}
                other{"{0} quilómetros"}
            }
            light-year{
                dnam{"anos luz"}
                one{"{0} ano luz"}
                other{"{0} anos luz"}
            }
            meter{
                dnam{"metros"}
                one{"{0} metro"}
                other{"{0} metros"}
            }
            micrometer{
                dnam{"micrómetros"}
                one{"{0} micrómetro"}
                other{"{0} micrómetros"}
            }
            mile{
                dnam{"millas"}
                one{"{0} milla"}
                other{"{0} millas"}
            }
            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{"pársecs"}
                one{"{0} pársec"}
                other{"{0} pársecs"}
            }
            picometer{
                dnam{"picómetros"}
                one{"{0} picómetro"}
                other{"{0} picómetros"}
            }
            yard{
                dnam{"iardas"}
                one{"{0} iarda"}
                other{"{0} iardas"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lux"}
                other{"{0} lux"}
            }
        }
        mass{
            carat{
                dnam{"quilates"}
                one{"{0} quilate"}
                other{"{0} quilates"}
            }
            gram{
                dnam{"gramos"}
                one{"{0} gramo"}
                other{"{0} gramos"}
            }
            kilogram{
                dnam{"quilogramos"}
                one{"{0} quilogramo"}
                other{"{0} quilogramos"}
            }
            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"}
            }
            ounce-troy{
                dnam{"onzas troy"}
                one{"{0} onza troy"}
                other{"{0} onzas troy"}
            }
            pound{
                dnam{"libras"}
                one{"{0} libra"}
                other{"{0} libras"}
            }
            ton{
                dnam{"toneladas"}
                one{"{0} tonelada"}
                other{"{0} toneladas"}
            }
        }
        power{
            gigawatt{
                dnam{"gigawatts"}
                one{"{0} gigawatt"}
                other{"{0} gigawatts"}
            }
            horsepower{
                dnam{"cabalo de potencia"}
                one{"{0} cabalo de potencia"}
                other{"{0} cabalos de potencia"}
            }
            kilowatt{
                dnam{"quilowatts"}
                one{"{0} quilowatt"}
                other{"{0} quilowatts"}
            }
            megawatt{
                dnam{"megawatts"}
                one{"{0} megawatt"}
                other{"{0} megawatts"}
            }
            milliwatt{
                dnam{"milliwatts"}
                one{"{0} milliwatt"}
                other{"{0} milliwatts"}
            }
            watt{
                dnam{"watts"}
                one{"{0} watt"}
                other{"{0} watts"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hectopascais"}
                one{"{0} hectopascal"}
                other{"{0} hectopascais"}
            }
            inch-hg{
                dnam{"polgadas de mercurio"}
                one{"{0} polgada de mercurio"}
                other{"{0} polgadas 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 polgada cadrada"}
                one{"{0} libra por polgada cadrada"}
                other{"{0} libras por polgada cadrada"}
            }
        }
        proportion{
            karat{
                dnam{"quilates"}
                one{"{0} quilate"}
                other{"{0} quilates"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"quilómetros por hora"}
                one{"{0} quilómetro por hora"}
                other{"{0} quilómetros por hora"}
            }
            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"}
            }
            kelvin{
                dnam{"grados Kelvin"}
                one{"{0} grado Kelvin"}
                other{"{0} grados Kelvin"}
            }
        }
        volume{
            acre-foot{
                dnam{"acres pés"}
                one{"{0} acre pé"}
                other{"{0} acres pés"}
            }
            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"}
            }
            cubic-foot{
                dnam{"pés cúbicos"}
                one{"{0} pé cúbico"}
                other{"{0} pés cúbicos"}
            }
            cubic-inch{
                dnam{"polgadas cúbicas"}
                one{"{0} polgada cúbica"}
                other{"{0} polgadas cúbicas"}
            }
            cubic-kilometer{
                dnam{"quilómetros cúbicos"}
                one{"{0} quilómetro cúbico"}
                other{"{0} quilómetros cúbicos"}
            }
            cubic-meter{
                dnam{"metros cúbicos"}
                one{"{0} metro cúbico"}
                other{"{0} metros cúbicos"}
            }
            cubic-mile{
                dnam{"millas cúbicas"}
                one{"{0} milla cúbica"}
                other{"{0} millas cúbicas"}
            }
            cubic-yard{
                dnam{"iardas cúbicas"}
                one{"{0} iarda cúbica"}
                other{"{0} iardas cúbicas"}
            }
            cup{
                dnam{"cuncas"}
                one{"{0} cunca"}
                other{"{0} cuncas"}
            }
            deciliter{
                dnam{"decilitros"}
                one{"{0} decilitro"}
                other{"{0} decilitros"}
            }
            fluid-ounce{
                dnam{"onzas líquidas"}
                one{"{0} onza líquida"}
                other{"{0} onzas líquidas"}
            }
            gallon{
                dnam{"galóns"}
                one{"{0} galón"}
                other{"{0} galóns"}
            }
            hectoliter{
                dnam{"hectolitros"}
                one{"{0} hectolitro"}
                other{"{0} hectolitros"}
            }
            liter{
                dnam{"litros"}
                one{"{0} litro"}
                other{"{0} litros"}
            }
            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"}
            }
            quart{
                dnam{"cuartos"}
                one{"{0} cuarto"}
                other{"{0} cuartos"}
            }
            tablespoon{
                dnam{"culleradas"}
                one{"{0} cullerada"}
                other{"{0} culleradas"}
            }
            teaspoon{
                dnam{"culleriñas"}
                one{"{0} culleriña"}
                other{"{0} culleriñas"}
            }
        }
    }
    unitsNarrow{
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
        }
        duration{
            day{
                dnam{"días"}
                one{"{0} d"}
                other{"{0} d"}
            }
            hour{
                dnam{"hora"}
                one{"{0} h"}
                other{"{0} h"}
            }
            millisecond{
                dnam{"miliseg"}
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} m"}
                other{"{0} m"}
            }
            month{
                dnam{"mes"}
                one{"{0} m"}
                other{"{0} m"}
            }
            second{
                dnam{"seg"}
                one{"{0} s"}
                other{"{0} s"}
            }
            week{
                dnam{"sem"}
                one{"{0} s"}
                other{"{0} s"}
            }
            year{
                dnam{"anos"}
                one{"{0} a"}
                other{"{0} a"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            meter{
                dnam{"m"}
                one{"{0} m"}
                other{"{0} m"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
        }
        mass{
            gram{
                dnam{"g"}
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
        }
        temperature{
            celsius{
                dnam{"°C"}
                one{"{0}°C"}
                other{"{0}°C"}
            }
            fahrenheit{
                one{"{0}°F"}
                other{"{0}°F"}
            }
        }
        volume{
            liter{
                dnam{"l"}
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"forzas G"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"metros/seg²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"arcomin"}
                one{"{0} arcomin"}
                other{"{0} arcomin"}
            }
            arc-second{
                dnam{"arcoseg"}
                one{"{0} arcoseg"}
                other{"{0} arcoseg"}
            }
            degree{
                dnam{"º"}
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                dnam{"radiáns"}
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                dnam{"acres"}
                one{"{0} ac"}
                other{"{0} ac"}
            }
            hectare{
                dnam{"hectáreas"}
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
            }
            square-foot{
                dnam{"pé²"}
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"polgadas²"}
                one{"{0} in²"}
                other{"{0} in²"}
            }
            square-kilometer{
                dnam{"km²"}
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                dnam{"metros²"}
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                dnam{"millas²"}
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
            square-yard{
                dnam{"iardas²"}
                one{"{0} yd²"}
                other{"{0} yd²"}
            }
        }
        consumption{
            liter-per-kilometer{
                dnam{"litros/km"}
                one{"{0} l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"millas/galón"}
                one{"{0} mpg"}
                other{"{0} mpg"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"byte"}
                one{"{0} byte"}
                other{"{0} byte"}
            }
            gigabit{
                dnam{"Gb"}
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"kb"}
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                dnam{"kB"}
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                dnam{"Mb"}
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            day{
                dnam{"días"}
                one{"{0} día"}
                other{"{0} días"}
            }
            hour{
                dnam{"horas"}
                one{"{0} hora"}
                other{"{0} horas"}
                per{"{0} ph"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"miliseg"}
                one{"{0} miliseg"}
                other{"{0} miliseg"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                dnam{"meses"}
                one{"{0} m"}
                other{"{0} m"}
            }
            nanosecond{
                dnam{"nanoseg."}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"seg"}
                one{"{0} seg"}
                other{"{0} seg"}
                per{"{0} ps"}
            }
            week{
                dnam{"semanas"}
                one{"{0} sem"}
                other{"{0} sem"}
            }
            year{
                dnam{"anos"}
                one{"{0} ano"}
                other{"{0} anos"}
            }
        }
        electric{
            ampere{
                dnam{"amp"}
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"miliamp"}
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ohms"}
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"volts"}
                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{"joules"}
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"quilojoule"}
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kW/h"}
                one{"{0} kW/h"}
                other{"{0} kW/h"}
            }
        }
        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{"ua"}
                one{"{0} ua"}
                other{"{0} ua"}
            }
            centimeter{
                dnam{"cent"}
                one{"{0} cent"}
                other{"{0} cent"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"pé"}
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                dnam{"polgadas"}
                one{"{0} in"}
                other{"{0} in"}
            }
            kilometer{
                dnam{"quilóm"}
                one{"{0} quilóm"}
                other{"{0} quilóm"}
            }
            light-year{
                dnam{"anos luz"}
                one{"{0} al"}
                other{"{0} al"}
            }
            meter{
                dnam{"met"}
                one{"{0} met"}
                other{"{0} met"}
            }
            micrometer{
                dnam{"µm"}
                one{"{0} µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"millas"}
                one{"{0} mi"}
                other{"{0} mi"}
            }
            millimeter{
                dnam{"milím"}
                one{"{0} milím"}
                other{"{0} milím"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"pársecs"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"iardas"}
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                dnam{"quilate"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
            gram{
                dnam{"gramos"}
                one{"{0} gram"}
                other{"{0} gram"}
            }
            kilogram{
                dnam{"quilog"}
                one{"{0} quilog"}
                other{"{0} quilog"}
            }
            metric-ton{
                dnam{"tm"}
                one{"{0} tm"}
                other{"{0} tm"}
            }
            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{"onza troy"}
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"libras"}
                one{"{0} lb"}
                other{"{0} lb"}
            }
            ton{
                dnam{"toneladas"}
                one{"{0} t"}
                other{"{0} t"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            horsepower{
                dnam{"hp"}
                one{"{0} hp"}
                other{"{0} hp"}
            }
            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{"watts"}
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"in Hg"}
                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{"quilates"}
                one{"{0} ct"}
                other{"{0} ct"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/hora"}
                one{"{0} km por hora"}
                other{"{0} km por hora"}
            }
            meter-per-second{
                dnam{"metros/seg"}
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"millas/hora"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                dnam{"g. Celsius"}
                one{"{0} g Celsius"}
                other{"{0} g Celsius"}
            }
            fahrenheit{
                dnam{"°F"}
                one{"{0}°F"}
                other{"{0}°F"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"acres pés"}
                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³"}
            }
            cubic-foot{
                dnam{"pés³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"polgadas³"}
                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{"iardas³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"cuncas"}
                one{"{0} c"}
                other{"{0} c"}
            }
            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{"lit"}
                one{"{0} lit"}
                other{"{0} lit"}
            }
            megaliter{
                dnam{"Ml"}
                one{"{0} Ml"}
                other{"{0} Ml"}
            }
            milliliter{
                dnam{"ml"}
                one{"{0} ml"}
                other{"{0} ml"}
            }
            pint{
                dnam{"pintas"}
                one{"{0} pt"}
                other{"{0} pt"}
            }
            quart{
                dnam{"cuartos"}
                one{"{0} qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"tbsp"}
                one{"{0} tbsp"}
                other{"{0} tbsp"}
            }
            teaspoon{
                dnam{"tsp"}
                one{"{0} tsp"}
                other{"{0} tsp"}
            }
        }
    }
}
