﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml
pt_PT{
    units{
        acceleration{
            g-force{
                dnam{"força G"}
                one{"{0} força G"}
                other{"{0} força G"}
            }
            meter-per-square-second{
                dnam{"metros por segundo quadrado"}
                one{"{0} metro por segundo quadrado"}
                other{"{0} metros por segundo quadrado"}
            }
        }
        area{
            square-kilometer{
                dnam{"quilómetros quadrados"}
                one{"{0} quilómetro quadrado"}
                other{"{0} quilómetros quadrados"}
                per{"{0} por quilómetro quadrado"}
            }
        }
        compound{
            1024p8{"yobe{0}"}
            10p-1{"decí{0}"}
            10p-12{"picó{0}"}
            10p-15{"fentó{0}"}
            10p-18{"ató{0}"}
            10p-2{"centí{0}"}
            10p-21{"zeptó{0}"}
            10p-24{"ioctó{0}"}
            10p-3{"milí{0}"}
            10p-6{"micró{0}"}
            10p-9{"nanó{0}"}
            10p1{"decâ{0}"}
            10p12{"terâ{0}"}
            10p15{"petâ{0}"}
            10p18{"exâ{0}"}
            10p2{"hectó{0}"}
            10p21{"zetâ{0}"}
            10p24{"iotâ{0}"}
            10p3{"quiló{0}"}
            10p6{"megâ{0}"}
            10p9{"gigâ{0}"}
            power2{
                one{
                    _{
                        _{"{0} quadrado"}
                    }
                }
                other{
                    _{
                        _{"{0} quadrados"}
                    }
                }
            }
            power3{
                one{
                    _{
                        _{"{0} cúbico"}
                    }
                }
                other{
                    _{
                        _{"{0} cúbicos"}
                    }
                }
            }
        }
        concentr{
            karat{
                dnam{"quilates"}
                one{"{0} quilate"}
                other{"{0} quilates"}
            }
            millimole-per-liter{
                dnam{"milimoles por litro"}
                one{"{0} milimole por litro"}
                other{"{0} milimoles por litro"}
            }
        }
        consumption{
            liter-per-100-kilometer{
                dnam{"litros por 100 quilómetros"}
                one{"{0} litro por 100 quilómetros"}
                other{"{0} litros por 100 quilómetros"}
            }
            liter-per-kilometer{
                dnam{"litros por quilómetro"}
                one{"{0} litro por quilómetro"}
                other{"{0} litros por quilómetro"}
            }
        }
        coordinate{
            east{"{0} este"}
            west{"{0} Oeste"}
        }
        duration{
            hour{
                per{"{0}/h"}
            }
            second{
                per{"{0}/s"}
            }
        }
        energy{
            electronvolt{
                dnam{"eletrões-volts"}
                one{"{0} eletrão-volt"}
                other{"{0} eletrões-volts"}
            }
            foodcalorie{
                dnam{"quilocalorias"}
                one{"{0} quilocaloria"}
                other{"{0} quilocalorias"}
            }
        }
        force{
            kilowatt-hour-per-100-kilometer{
                dnam{"quilowatt-hora por 100 quilómetros"}
                one{"{0} quilowatt-hora por 100 quilómetros"}
                other{"{0} quilowatts-hora por 100 quilómetros"}
            }
        }
        graphics{
            dot{
                dnam{"pontos"}
                one{"{0} ponto"}
                other{"{0} pontos"}
            }
            megapixel{
                dnam{"megapíxeis"}
                one{"{0} megapíxel"}
                other{"{0} megapíxeis"}
            }
            pixel{
                dnam{"píxeis"}
                one{"{0} píxel"}
                other{"{0} píxeis"}
            }
            pixel-per-centimeter{
                dnam{"píxeis por centímetro"}
                one{"{0} píxel por centímetro"}
                other{"{0} píxeis por centímetro"}
            }
            pixel-per-inch{
                dnam{"píxeis por polegada"}
                one{"{0} píxel por polegada"}
                other{"{0} píxeis por polegada"}
            }
        }
        length{
            astronomical-unit{
                dnam{"unidades astronómicas"}
                one{"{0} unidade astronómica"}
                other{"{0} unidades astronómicas"}
            }
            kilometer{
                dnam{"quilómetros"}
                one{"{0} quilómetro"}
                other{"{0} quilómetros"}
                per{"{0} por quilómetro"}
            }
            micrometer{
                dnam{"micrómetros"}
                one{"{0} micrómetro"}
                other{"{0} micrómetros"}
            }
            mile-scandinavian{
                dnam{"milha escandinava"}
            }
            nanometer{
                dnam{"nanómetros"}
                one{"{0} nanómetro"}
                other{"{0} nanómetros"}
            }
            picometer{
                dnam{"picómetros"}
                one{"{0} picómetro"}
                other{"{0} picómetros"}
            }
            point{
                dnam{"pontos tipográficos"}
                one{"{0} ponto tipográfico"}
                other{"{0} pontos tipográficos"}
            }
        }
        light{
            lumen{
                one{"{0} lúmen"}
                other{"{0} lúmenes"}
            }
        }
        mass{
            earth-mass{
                one{"{0} massa da Terra"}
                other{"{0} massas da Terra"}
            }
        }
        pressure{
            pound-force-per-square-inch{
                dnam{"psi"}
                one{"{0} psi"}
                other{"{0} psi"}
            }
        }
        speed{
            kilometer-per-hour{
                dnam{"quilómetros por hora"}
                one{"{0} quilómetro por hora"}
                other{"{0} quilómetros por hora"}
            }
            knot{
                dnam{"nó"}
            }
        }
        temperature{
            generic{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        volume{
            cubic-kilometer{
                dnam{"quilómetros cúbicos"}
                one{"{0} quilómetro cúbico"}
                other{"{0} quilómetros cúbicos"}
            }
            cup{
                dnam{"chávenas"}
                one{"{0} chávena"}
                other{"{0} chávenas"}
            }
            cup-metric{
                dnam{"chávenas métricas"}
                one{"{0} chávena métrica"}
                other{"{0} chávenas métricas"}
            }
            dessert-spoon-imperial{
                dnam{"colher de sobremesa imperial"}
            }
            dram{
                one{"{0} dracma"}
                other{"{0} dracmas"}
            }
            jigger{
                dnam{"doseador"}
                one{"{0} doseador"}
                other{"{0} doseadores"}
            }
        }
    }
    unitsNarrow{
        acceleration{
            g-force{
                dnam{"força G"}
            }
        }
        angle{
            arc-minute{
                one{"{0}′"}
                other{"{0}′"}
            }
            arc-second{
                one{"{0}″"}
                other{"{0}″"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-inch{
                dnam{"in²"}
                per{"{0}/in²"}
            }
            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}"}
        }
        concentr{
            item{
                one{"{0} item"}
                other{"{0} itens"}
            }
        }
        consumption{
            liter-per-100-kilometer{
                one{"{0}l/100km"}
                other{"{0}l/100km"}
            }
            mile-per-gallon-imperial{
                dnam{"mpg imp."}
            }
        }
        duration{
            day{
                per{"{0}/d"}
            }
            hour{
                one{"{0} h"}
                other{"{0} h"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"min"}
                one{"{0} min"}
                other{"{0} min"}
            }
            second{
                dnam{"s"}
                per{"{0}/s"}
            }
        }
        force{
            kilowatt-hour-per-100-kilometer{
                dnam{"kWh/100 km"}
                one{"{0}kWh/100 km"}
                other{"{0}kWh/100 km"}
            }
        }
        graphics{
            dot{
                dnam{"ponto"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            fathom{
                one{"{0} fth"}
                other{"{0} fth"}
            }
            foot{
                one{"{0}′"}
                other{"{0}′"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            meter{
                dnam{"metro"}
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                dnam{"milha"}
                one{"{0} milha"}
                other{"{0} milhas"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        mass{
            carat{
                one{"{0} ct"}
                other{"{0} ct"}
            }
            gram{
                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{
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            watt{
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-ofhg{
                dnam{"″ Hg"}
                one{"{0}″ Hg"}
                other{"{0}″ Hg"}
            }
        }
        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{
                dnam{"mi/h"}
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                one{"{0}°C"}
                other{"{0}°C"}
            }
        }
        volume{
            barrel{
                dnam{"bbl"}
            }
            cubic-inch{
                dnam{"in³"}
            }
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cup{
                dnam{"chávena"}
            }
            dessert-spoon-imperial{
                dnam{"csb imp."}
                one{"{0} csb imp."}
                other{"{0} csb imp."}
            }
            dram{
                dnam{"dram fl"}
            }
            fluid-ounce{
                dnam{"fl oz"}
                one{"{0} fl oz"}
                other{"{0} fl oz"}
            }
            jigger{
                one{"{0} doseador"}
                other{"{0} doseadores"}
            }
            liter{
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                dnam{"força G"}
                one{"{0} G"}
                other{"{0} G"}
            }
            meter-per-square-second{
                dnam{"m/s²"}
                one{"{0} m/s²"}
                other{"{0} m/s²"}
            }
        }
        angle{
            arc-minute{
                dnam{"minutos de arco"}
            }
            arc-second{
                dnam{"segundos de arco"}
            }
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
            radian{
                one{"{0} rad"}
                other{"{0} rad"}
            }
        }
        area{
            acre{
                one{"{0} acre"}
                other{"{0} acres"}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-centimeter{
                dnam{"cm²"}
                one{"{0} cm²"}
                other{"{0} cm²"}
                per{"{0}/cm²"}
            }
            square-foot{
                dnam{"pés quadrados"}
                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{
            item{
                one{"{0} item"}
                other{"{0} itens"}
            }
            karat{
                dnam{"quilates"}
                one{"{0} kt"}
                other{"{0} kt"}
            }
            millimole-per-liter{
                dnam{"milimole/litro"}
            }
        }
        consumption{
            liter-per-100-kilometer{
                dnam{"l/100km"}
                one{"{0} l/100km"}
                other{"{0} l/100km"}
            }
            mile-per-gallon{
                dnam{"milhas/galão"}
            }
            mile-per-gallon-imperial{
                dnam{"milhas/gal imp."}
            }
        }
        coordinate{
            east{"{0} E"}
        }
        digital{
            bit{
                dnam{"bit"}
                one{"{0} bit"}
                other{"{0} bit"}
            }
            byte{
                dnam{"byte"}
                one{"{0} byte"}
                other{"{0} byte"}
            }
            gigabit{
                one{"{0} Gb"}
                other{"{0} Gb"}
            }
            gigabyte{
                one{"{0} GB"}
                other{"{0} GB"}
            }
            kilobit{
                one{"{0} kb"}
                other{"{0} kb"}
            }
            kilobyte{
                one{"{0} kB"}
                other{"{0} kB"}
            }
            megabit{
                one{"{0} Mb"}
                other{"{0} Mb"}
            }
            megabyte{
                one{"{0} MB"}
                other{"{0} MB"}
            }
            terabit{
                one{"{0} Tb"}
                other{"{0} Tb"}
            }
            terabyte{
                one{"{0} TB"}
                other{"{0} TB"}
            }
        }
        duration{
            hour{
                one{"{0} h"}
                other{"{0} h"}
                per{"{0}/h"}
            }
            microsecond{
                dnam{"μs"}
                one{"{0} μs"}
                other{"{0} μs"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                dnam{"minutos"}
                one{"{0} min"}
                other{"{0} min"}
                per{"{0}/min"}
            }
            nanosecond{
                dnam{"ns"}
                one{"{0} ns"}
                other{"{0} ns"}
            }
            second{
                dnam{"s"}
                one{"{0} s"}
                other{"{0} s"}
            }
        }
        electric{
            ampere{
                one{"{0} A"}
                other{"{0} A"}
            }
            milliampere{
                one{"{0} mA"}
                other{"{0} mA"}
            }
            ohm{
                one{"{0} Ω"}
                other{"{0} Ω"}
            }
            volt{
                one{"{0} V"}
                other{"{0} V"}
            }
        }
        energy{
            calorie{
                dnam{"cal"}
                one{"{0} cal"}
                other{"{0} cal"}
            }
            electronvolt{
                dnam{"eletrão-volt"}
            }
            foodcalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            joule{
                one{"{0} J"}
                other{"{0} J"}
            }
            kilocalorie{
                dnam{"kcal"}
                one{"{0} kcal"}
                other{"{0} kcal"}
            }
            kilojoule{
                one{"{0} kJ"}
                other{"{0} kJ"}
            }
            kilowatt-hour{
                one{"{0} kWh"}
                other{"{0} kWh"}
            }
        }
        force{
            kilowatt-hour-per-100-kilometer{
                dnam{"kWh/100 km"}
                one{"{0} kWh/100 km"}
                other{"{0} kWh/100 km"}
            }
        }
        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"}
            }
        }
        graphics{
            dot{
                dnam{"pontos"}
                one{"{0} p"}
                other{"{0} p"}
            }
            dot-per-inch{
                dnam{"ppp"}
                one{"{0} ppp"}
                other{"{0} ppp"}
            }
            megapixel{
                dnam{"megapíxeis"}
            }
            pixel{
                dnam{"píxeis"}
            }
        }
        length{
            centimeter{
                dnam{"cm"}
                one{"{0} cm"}
                other{"{0} cm"}
            }
            decimeter{
                dnam{"dm"}
                one{"{0} dm"}
                other{"{0} dm"}
            }
            fathom{
                one{"{0} fth"}
                other{"{0} fth"}
            }
            inch{
                dnam{"polegadas"}
            }
            kilometer{
                dnam{"km"}
                one{"{0} km"}
                other{"{0} km"}
            }
            meter{
                dnam{"metros"}
                one{"{0} m"}
                other{"{0} m"}
            }
            micrometer{
                dnam{"μm"}
                one{"{0} μm"}
                other{"{0} μm"}
            }
            mile{
                one{"{0} milha"}
                other{"{0} milhas"}
            }
            mile-scandinavian{
                dnam{"smi"}
                one{"{0} smi"}
                other{"{0} smi"}
            }
            millimeter{
                dnam{"mm"}
                one{"{0} mm"}
                other{"{0} mm"}
            }
            nanometer{
                dnam{"nm"}
                one{"{0} nm"}
                other{"{0} nm"}
            }
            nautical-mile{
                dnam{"nmi"}
                one{"{0} nmi"}
                other{"{0} nmi"}
            }
            parsec{
                dnam{"pc"}
                one{"{0} pc"}
                other{"{0} pc"}
            }
            picometer{
                dnam{"pm"}
                one{"{0} pm"}
                other{"{0} pm"}
            }
            point{
                dnam{"pontos tipográficos"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        light{
            lux{
                one{"{0} lx"}
                other{"{0} lx"}
            }
        }
        mass{
            earth-mass{
                dnam{"massas da Terra"}
            }
            gram{
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                dnam{"kg"}
                one{"{0} kg"}
                other{"{0} kg"}
            }
            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{
                one{"{0} oz t"}
                other{"{0} oz t"}
            }
            pound{
                one{"{0} lb"}
                other{"{0} lb"}
            }
            ton{
                one{"{0} ton"}
                other{"{0} ton"}
            }
        }
        power{
            gigawatt{
                dnam{"GW"}
                one{"{0} GW"}
                other{"{0} GW"}
            }
            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{
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                dnam{"hPa"}
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            millibar{
                dnam{"mbar"}
                one{"{0} mb"}
                other{"{0} mb"}
            }
            pound-force-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"}
            }
            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{"graus Celsius"}
            }
            fahrenheit{
                dnam{"graus Fahrenheit"}
            }
            kelvin{
                dnam{"K"}
                one{"{0} K"}
                other{"{0} K"}
            }
        }
        volume{
            acre-foot{
                dnam{"ac ft"}
                one{"{0} ac ft"}
                other{"{0} ac ft"}
            }
            cubic-centimeter{
                dnam{"cm³"}
                one{"{0} cm³"}
                other{"{0} cm³"}
            }
            cubic-foot{
                dnam{"ft³"}
                one{"{0} ft³"}
                other{"{0} ft³"}
            }
            cubic-inch{
                dnam{"in³"}
                one{"{0} in³"}
                other{"{0} in³"}
            }
            cubic-kilometer{
                dnam{"km³"}
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-meter{
                dnam{"m³"}
                one{"{0} m³"}
                other{"{0} m³"}
            }
            cubic-mile{
                dnam{"mi³"}
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            cubic-yard{
                dnam{"yd³"}
                one{"{0} yd³"}
                other{"{0} yd³"}
            }
            cup{
                dnam{"chávenas"}
                one{"{0} cháv."}
                other{"{0} cháv."}
            }
            cup-metric{
                dnam{"chám"}
                one{"{0} chám"}
                other{"{0} chám"}
            }
            dessert-spoon-imperial{
                dnam{"csb imp."}
                one{"{0} csb imp."}
                other{"{0} csb imp."}
            }
            dram{
                dnam{"dracma fluido"}
                one{"{0} dram fl"}
                other{"{0} dram fl"}
            }
            fluid-ounce-imperial{
                dnam{"onças fluidas imp."}
                one{"{0} onça fluida imp."}
                other{"{0} onças fluidas imp."}
            }
            gallon-imperial{
                dnam{"gal imp."}
                one{"{0} gal imp."}
                other{"{0} gal imp."}
                per{"{0}/gal imp."}
            }
            jigger{
                dnam{"doseador"}
                one{"{0} doseador"}
                other{"{0} doseadores"}
            }
            liter{
                one{"{0} l"}
                other{"{0} l"}
            }
            megaliter{
                dnam{"ML"}
                one{"{0} ML"}
                other{"{0} ML"}
            }
            pint{
                one{"{0} pt"}
                other{"{0} pt"}
            }
            quart{
                one{"{0} qt"}
                other{"{0} qt"}
            }
            quart-imperial{
                dnam{"quarto imp."}
                one{"{0} quarto imp."}
                other{"{0} quartos imp."}
            }
            tablespoon{
                dnam{"cs"}
                one{"{0} cs"}
                other{"{0} cs"}
            }
            teaspoon{
                dnam{"cc"}
                one{"{0} cc"}
                other{"{0} cc"}
            }
        }
    }
}
