﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
kea{
    Version{"2.1.37.1"}
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    units{
        acceleration{
            g-force{
                dnam{"forsa G"}
                other{"{0} forsa G"}
            }
            meter-per-second-squared{
                dnam{"métru pur sigundu kuadradu"}
                other{"{0} métru pur sigundu kuadradu"}
            }
        }
        angle{
            arc-minute{
                dnam{"minutu di arku"}
                other{"{0} minutu di arku"}
            }
            arc-second{
                dnam{"sigundu di arku"}
                other{"{0} sigundu di arku"}
            }
            degree{
                dnam{"grau"}
                other{"{0} grau"}
            }
            radian{
                dnam{"radianu"}
                other{"{0} radianu"}
            }
            revolution{
                dnam{"volta"}
                other{"{0} volta"}
            }
        }
        area{
            acre{
                dnam{"ákri"}
                other{"{0} ákri"}
            }
            hectare{
                dnam{"ektar"}
                other{"{0} ektar"}
            }
            square-centimeter{
                dnam{"sentímetru kuadradu"}
                other{"{0} sentímetru kuadradu"}
                per{"{0} pur sentímetru kuadradu"}
            }
            square-foot{
                dnam{"pe kuadradu"}
                other{"{0} pe kuadradu"}
            }
            square-inch{
                dnam{"pulegada kuadradu"}
                other{"{0} pulegada kuadradu"}
                per{"{0} pur pulegada kuadradu"}
            }
            square-kilometer{
                dnam{"kilómetru kuadradu"}
                other{"{0} kilómetru kuadradu"}
                per{"{0} pur kilómetru kuadradu"}
            }
            square-meter{
                dnam{"metru kuadradu"}
                other{"{0} metru kuadradu"}
                per{"{0} pur metru kuadradu"}
            }
            square-mile{
                dnam{"milha kuadradu"}
                other{"{0} milha kuadradu"}
                per{"{0} pur milha kuadradu"}
            }
            square-yard{
                dnam{"jarda kuadradu"}
                other{"{0} jarda kuadradu"}
            }
        }
        concentr{
            karat{
                dnam{"kilati"}
                other{"{0} kilati"}
            }
            milligram-per-deciliter{
                dnam{"miligrama pur desilitru"}
                other{"{0} miligrama pur desilitru"}
            }
            millimole-per-liter{
                dnam{"milimol pur litru"}
                other{"{0} milimol pur litru"}
            }
            part-per-million{
                dnam{"parti pur milhãu"}
                other{"{0} parti pur milhãu"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"litru pur 100 kilómetru"}
                other{"{0} litru pur 100 kilómetru"}
            }
            liter-per-kilometer{
                dnam{"litru pur kilómetru"}
                other{"{0} litru pur kilómetru"}
            }
            mile-per-gallon{
                dnam{"milha pur galãu"}
                other{"{0} milha pur galãu"}
            }
            mile-per-gallon-imperial{
                dnam{"milha pur galãu imperial"}
                other{"{0} milha pur galãu imperial"}
            }
        }
        digital{
            bit{
                dnam{"bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"byte"}
                other{"{0} byte"}
            }
            gigabit{
                dnam{"jigabit"}
                other{"{0} jigabit"}
            }
            gigabyte{
                dnam{"jigabyte"}
                other{"{0} jigabyte"}
            }
            kilobit{
                dnam{"kilobit"}
                other{"{0} kilobit"}
            }
            kilobyte{
                dnam{"kilobyte"}
                other{"{0} kilobyte"}
            }
            megabit{
                dnam{"megabit"}
                other{"{0} megabit"}
            }
            megabyte{
                dnam{"megabyte"}
                other{"{0} megabyte"}
            }
            terabit{
                dnam{"terabit"}
                other{"{0} terabit"}
            }
            terabyte{
                dnam{"terabyte"}
                other{"{0} terabyte"}
            }
        }
        duration{
            century{
                dnam{"sékulu"}
                other{"{0} sékulu"}
            }
            day{
                dnam{"dia"}
                other{"{0} dia"}
                per{"{0} pur dia"}
            }
            hour{
                dnam{"ora"}
                other{"{0} ora"}
                per{"{0} pur ora"}
            }
            microsecond{
                dnam{"mikrosigundu"}
                other{"{0} mikrosigundu"}
            }
            millisecond{
                dnam{"milisigundu"}
                other{"{0} milisigundu"}
            }
            minute{
                dnam{"minutu"}
                other{"{0} minutu"}
                per{"{0} pur minutu"}
            }
            month{
                dnam{"mes"}
                other{"{0} mes"}
                per{"{0} pur mes"}
            }
            nanosecond{
                dnam{"nanosigundu"}
                other{"{0} nanosigundu"}
            }
            second{
                dnam{"sigundu"}
                other{"{0} sigundu"}
                per{"{0} pur sigundu"}
            }
            week{
                dnam{"simana"}
                other{"{0} simana"}
                per{"{0} pur simana"}
            }
            year{
                dnam{"anu"}
                other{"{0} anu"}
                per{"{0} pur anu"}
            }
        }
        length{
            astronomical-unit{
                dnam{"unidadi astronómiku"}
                other{"{0} unidadi astronómiku"}
            }
            centimeter{
                dnam{"sentímetru"}
                other{"{0} sentímetru"}
                per{"{0} pur sentímetru"}
            }
            decimeter{
                dnam{"desímetru"}
                other{"{0} desímetru"}
            }
            foot{
                dnam{"pe"}
                other{"{0} pe"}
                per{"{0} pur pe"}
            }
            inch{
                dnam{"pulegada"}
                other{"{0} pulegada"}
                per{"{0} pur pulegada"}
            }
            kilometer{
                dnam{"kilómetru"}
                other{"{0} kilómetru"}
                per{"{0} pur kilómetru"}
            }
            light-year{
                dnam{"anu-lus"}
                other{"{0} anu-lus"}
            }
            meter{
                dnam{"metru"}
                other{"{0} metru"}
                per{"{0} pur metru"}
            }
            micrometer{
                dnam{"mikrómetru"}
                other{"{0} mikrómetru"}
            }
            mile{
                dnam{"milha"}
                other{"{0} milha"}
            }
            mile-scandinavian{
                dnam{"milha skandinavu"}
                other{"{0} milha skandinavu"}
            }
            millimeter{
                dnam{"milímetru"}
                other{"{0} milímetru"}
            }
            nanometer{
                dnam{"nanómetru"}
                other{"{0} nanómetru"}
            }
            nautical-mile{
                dnam{"milha náutiku"}
                other{"{0} milha náutiku"}
            }
            parsec{
                dnam{"parsek"}
                other{"{0} parsek"}
            }
            picometer{
                dnam{"pikómetru"}
                other{"{0} pikómetru"}
            }
            yard{
                dnam{"jarda"}
                other{"{0} jarda"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                other{"{0} lux"}
            }
        }
        power{
            watt{
                dnam{"watt"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"kilómetru pur ora"}
                other{"{0} kilómetru pur ora"}
            }
            meter-per-second{
                dnam{"métru pur sigundu"}
                other{"{0} métru pur sigundu"}
            }
            mile-per-hour{
                dnam{"milha pur ora"}
                other{"{0} milha pur ora"}
            }
        }
        volume{
            acre-foot{
                dnam{"ákri-pé"}
                other{"{0} ákri-pé"}
            }
            centiliter{
                dnam{"sentilitru"}
                other{"{0} sentilitru"}
            }
            cubic-centimeter{
                dnam{"sentímetru kúbiku"}
                other{"{0} sentímetru kúbiku"}
            }
            cubic-foot{
                dnam{"pé kúbiku"}
                other{"{0} pé kúbiku"}
            }
            cubic-inch{
                dnam{"pulegada kúbiku"}
                other{"{0} pulegada kúbiku"}
            }
            cubic-kilometer{
                dnam{"kilómetru kúbiku"}
                other{"{0} kilómetru kúbiku"}
            }
            cubic-meter{
                dnam{"métru kúbiku"}
                other{"{0} métru kúbiku"}
            }
            cubic-mile{
                dnam{"milha kúbiku"}
                other{"{0} milha kúbiku"}
            }
            cubic-yard{
                dnam{"jarda kúbiku"}
                other{"{0} jarda kúbiku"}
            }
            cup{
                dnam{"xávina"}
                other{"{0} xávina"}
            }
            deciliter{
                dnam{"desilitru"}
                other{"{0} desilitru"}
            }
            fluid-ounce{
                dnam{"ónsa fluídu"}
                other{"{0} ónsa fluídu"}
            }
            gallon{
                dnam{"galãu"}
                other{"{0} galãu"}
            }
            hectoliter{
                dnam{"ektolitru"}
                other{"{0} ektolitru"}
            }
            liter{
                dnam{"litru"}
                other{"{0} litru"}
            }
            megaliter{
                dnam{"megalitru"}
                other{"{0} megalitru"}
            }
            milliliter{
                dnam{"mililitru"}
                other{"{0} mililitru"}
            }
            pint{
                dnam{"pint"}
                other{"{0} pint"}
            }
            quart{
                dnam{"kuart"}
                other{"{0} kuart"}
            }
            tablespoon{
                dnam{"kudjer di sopa"}
                other{"{0} kudjer di sopa"}
            }
            teaspoon{
                dnam{"kudjer di xá"}
                other{"{0} kudjer di xá"}
            }
        }
    }
    unitsNarrow{
        consumption{
            liter-per-100kilometers{
                dnam{"l/100km"}
                other{"{0} l/100km"}
            }
        }
        duration{
            day{
                dnam{"dia"}
                other{"{0} dia"}
            }
            hour{
                dnam{"ora"}
                other{"{0} h"}
            }
            millisecond{
                dnam{"ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min."}
                other{"{0} min."}
            }
            month{
                dnam{"mes"}
                other{"{0} mes"}
            }
            second{
                dnam{"sig."}
                other{"{0} s"}
            }
            week{
                dnam{"sim."}
                other{"{0} sim."}
            }
            year{
                dnam{"anu"}
                other{"{0} anu"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                other{"{0} cm"}
            }
            kilometer{
                dnam{"km"}
                other{"{0} km"}
            }
            meter{
                dnam{"m"}
                other{"{0} m"}
            }
            millimeter{
                dnam{"mm"}
                other{"{0} mm"}
            }
        }
        mass{
            gram{
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                other{"{0} kg"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                other{"{0} km/h"}
            }
        }
        volume{
            liter{
                dnam{"l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"G"}
                other{"{0} G"}
            }
            meter-per-second-squared{
                dnam{"m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"arkmin"}
                other{"{0} arkmin"}
            }
            arc-second{
                dnam{"arksig"}
                other{"{0} arksig"}
            }
            degree{
                dnam{"grau"}
                other{"{0}°"}
            }
            radian{
                dnam{"rad"}
                other{"{0} rad"}
            }
            revolution{
                dnam{"vol"}
                other{"{0} vol"}
            }
        }
        area{
            acre{
                dnam{"ac"}
                other{"{0} ac"}
            }
            hectare{
                dnam{"ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                other{"{0} cm²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                other{"{0} in²"}
                per{"{0}/in²"}
            }
            square-kilometer{
                dnam{"km²"}
                other{"{0} km²"}
                per{"{0}/km²"}
            }
            square-meter{
                dnam{"m²"}
                other{"{0} m²"}
                per{"{0}/m²"}
            }
            square-mile{
                dnam{"mi²"}
                other{"{0} mi²"}
                per{"{0}/mi²"}
            }
            square-yard{
                dnam{"yd²"}
                other{"{0} yd²"}
            }
        }
        concentr{
            karat{
                dnam{"kt"}
                other{"{0} kt"}
            }
            milligram-per-deciliter{
                dnam{"mg/dl"}
                other{"{0} mg/dl"}
            }
            millimole-per-liter{
                dnam{"milimol/litru"}
                other{"{0} mmol/l"}
            }
            part-per-million{
                dnam{"parti/milhãu"}
                other{"{0} ppm"}
            }
        }
        consumption{
            liter-per-100kilometers{
                dnam{"litru/100km"}
                other{"{0} l/100 km"}
            }
            liter-per-kilometer{
                dnam{"l/km"}
                other{"{0} l/km"}
            }
            mile-per-gallon{
                dnam{"mpg"}
                other{"{0} mpg"}
            }
            mile-per-gallon-imperial{
                dnam{"milha/gal imp."}
                other{"{0} mpg imp."}
            }
        }
        digital{
            bit{
                dnam{"b"}
                other{"{0} b"}
            }
            byte{
                dnam{"B"}
                other{"{0} B"}
            }
            gigabit{
                dnam{"Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                dnam{"GB"}
                other{"{0} GB"}
            }
            kilobit{
                dnam{"Kb"}
                other{"{0} Kb"}
            }
            kilobyte{
                dnam{"KB"}
                other{"{0} KB"}
            }
            megabit{
                dnam{"Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                dnam{"MB"}
                other{"{0} MB"}
            }
            terabit{
                dnam{"Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                dnam{"TB"}
                other{"{0} TB"}
            }
        }
        duration{
            century{
                dnam{"sék."}
                other{"{0} sék."}
            }
            day{
                dnam{"dia"}
                other{"{0} dia"}
                per{"{0}/dia"}
            }
            hour{
                dnam{"ora"}
                other{"{0} h"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                other{"{0} μs"}
            }
            millisecond{
                dnam{"ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min."}
                other{"{0} min."}
                per{"{0}/min."}
            }
            month{
                dnam{"mes"}
                other{"{0} mes"}
                per{"{0}/mes"}
            }
            nanosecond{
                dnam{"ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"sig."}
                other{"{0} sig."}
                per{"{0}/s"}
            }
            week{
                dnam{"sim."}
                other{"{0} sim."}
                per{"{0}/sim."}
            }
            year{
                dnam{"anu"}
                other{"{0} anu"}
                per{"{0}/anu"}
            }
        }
        electric{
            ampere{
                dnam{"amp"}
                other{"{0} A"}
            }
            milliampere{
                dnam{"mA"}
                other{"{0} mA"}
            }
            ohm{
                dnam{"ohm"}
                other{"{0} Ω"}
            }
            volt{
                dnam{"volt"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                other{"{0} cal"}
            }
            foodcalorie{
                dnam{"Cal"}
                other{"{0} Cal"}
            }
            kilocalorie{
                dnam{"kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                dnam{"kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                dnam{"kWh"}
                other{"{0} kWh"}
            }
        }
        frequency{
            gigahertz{
                dnam{"GHz"}
                other{"{0} GHz"}
            }
            hertz{
                dnam{"Hz"}
                other{"{0} Hz"}
            }
            kilohertz{
                dnam{"kHz"}
                other{"{0} kHz"}
            }
            megahertz{
                dnam{"MHz"}
                other{"{0} MHz"}
            }
        }
        length{
            astronomical-unit{
                dnam{"ua"}
                other{"{0} ua"}
            }
            centimeter{
                dnam{"cm"}
                other{"{0} cm"}
                per{"{0}/cm"}
            }
            decimeter{
                dnam{"dm"}
                other{"{0} dm"}
            }
            foot{
                dnam{"pe"}
                other{"{0} pe"}
                per{"{0}/pe"}
            }
            inch{
                dnam{"in"}
                other{"{0} in"}
                per{"{0}/in"}
            }
            kilometer{
                dnam{"km"}
                other{"{0} km"}
                per{"{0}/km"}
            }
            light-year{
                dnam{"anu-lus"}
                other{"{0} anu-lus"}
            }
            meter{
                dnam{"m"}
                other{"{0} m"}
                per{"{0}/m"}
            }
            micrometer{
                dnam{"µm"}
                other{"{0} µm"}
            }
            mile{
                dnam{"mi"}
                other{"{0} mi"}
            }
            mile-scandinavian{
                dnam{"smi"}
                other{"{0} smi"}
            }
            millimeter{
                dnam{"mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                other{"{0} pm"}
            }
            yard{
                dnam{"yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                dnam{"lux"}
                other{"{0} lx"}
            }
        }
        mass{
            carat{
                other{"{0} CD"}
            }
            gram{
                other{"{0} g"}
            }
            metric-ton{
                dnam{"t"}
                other{"{0} t"}
            }
            microgram{
                dnam{"µg"}
                other{"{0} µg"}
            }
            milligram{
                dnam{"mg"}
                other{"{0} mg"}
            }
            ounce{
                dnam{"oz"}
                other{"{0} oz"}
            }
            ounce-troy{
                dnam{"oz t"}
                other{"{0} oz t"}
            }
            pound{
                dnam{"lb"}
                other{"{0} lb"}
            }
            ton{
                dnam{"tn"}
                other{"{0} tn"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                other{"{0} GW"}
            }
            kilowatt{
                dnam{"kW"}
                other{"{0} kW"}
            }
            megawatt{
                dnam{"MW"}
                other{"{0} MW"}
            }
            milliwatt{
                dnam{"mW"}
                other{"{0} mW"}
            }
            watt{
                dnam{"watt"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                dnam{"inHg"}
                other{"{0} inHg"}
            }
            millibar{
                dnam{"mbar"}
                other{"{0} mbar"}
            }
            millimeter-of-mercury{
                dnam{"mm Hg"}
                other{"{0} mm Hg"}
            }
            pound-per-square-inch{
                dnam{"psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                dnam{"m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                dnam{"mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            kelvin{
                dnam{"K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ac ft"}
                other{"{0} ac ft"}
            }
            centiliter{
                dnam{"cl"}
                other{"{0} cl"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"xáv."}
                other{"{0} xáv."}
            }
            deciliter{
                dnam{"dl"}
                other{"{0} dl"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                other{"{0} fl oz"}
            }
            gallon{
                dnam{"gal"}
                other{"{0} gal"}
            }
            hectoliter{
                dnam{"hl"}
                other{"{0} hl"}
            }
            liter{
                dnam{"l"}
                other{"{0} l"}
            }
            megaliter{
                dnam{"Ml"}
                other{"{0} Ml"}
            }
            milliliter{
                dnam{"ml"}
                other{"{0} ml"}
            }
            pint{
                dnam{"pt"}
                other{"{0} pt"}
            }
            quart{
                dnam{"qt"}
                other{"{0} qt"}
            }
            tablespoon{
                dnam{"k.sp."}
                other{"{0} k.sp."}
            }
            teaspoon{
                dnam{"k.xá"}
                other{"{0} k.xá"}
            }
        }
    }
}
