﻿// ***************************************************************************
// *
// * Copyright (C) 2008 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/pt_PT.xml
// *
// ***************************************************************************
pt_PT{
    Countries{
        035{"Sudeste Asiático"}
        154{"Europa do Norte"}
        AE{"Emiratos Árabes Unidos"}
        AM{"Arménia"}
        AQ{"Antárctica"}
        AZ{"Azerbeijão"}
        BD{"Bangladeche"}
        BH{"Bareine"}
        BJ{"Benim"}
        BY{"Bielorrússia"}
        CD{"República Democrática do Congo"}
        CX{"Ilha do Natal"}
        CZ{"República Checa"}
        EE{"Estónia"}
        EG{"Egipto"}
        ER{"Eritreia"}
        FM{"Estados Federados da Micronésia"}
        GL{"Gronelândia"}
        GW{"Guiné-Bissau"}
        HK{"Hong Kong - Região Administrativa Especial da China"}
        IR{"Irão"}
        KE{"Quénia"}
        KG{"Quirguizistão"}
        KN{"Saint Kitts e Nevis"}
        KP{"Coreia do Norte"}
        KR{"Coreia do Sul"}
        KY{"Ilhas Caimão"}
        KZ{"Cazaquistão"}
        LA{"Lao, República Popular Democrática"}
        LV{"Letónia"}
        MC{"Mónaco"}
        MD{"Moldávia, República da"}
        MG{"Madagáscar"}
        MK{"Macedónia, República da"}
        MO{"Macau - Região Administrativa Especial da China"}
        MP{"Ilhas Mariana do Norte"}
        MU{"Maurícias"}
        NC{"Nova Caledónia"}
        NL{"Países Baixos"}
        PG{"Papua Nova Guiné"}
        PL{"Polónia"}
        PS{"Território Palestiniano"}
        QU{"União Europeia"}
        RO{"Roménia"}
        SC{"Seicheles"}
        SG{"Singapura"}
        SI{"Eslovénia"}
        SM{"São Marino"}
        TC{"Ilhas Turcas e Caicos"}
        TJ{"Tajiquistão"}
        TM{"Turquemenistão"}
        UM{"Ilhas Minor Outlying (E.U.A)"}
        VI{"Ilhas Virgin E.U.A."}
        VN{"Vietname"}
        YE{"Iémen"}
    }
    Currencies{
        AFA{
            "AFA",
            "Afeghani (1927-2002)",
        }
        BAD{
            "BAD",
            "Dinar da Bósnia-Herzegóvina",
        }
        BAM{
            "BAM",
            "Marco bósnio-herzegóvino conversível",
        }
        CYP{
            "CYP",
            "Libra de Chipre",
        }
        CZK{
            "CZK",
            "Coroa da República Checa",
        }
        ECV{
            "ECV",
            "Unidad de Valor Constante (UVC) do Equador",
        }
        KYD{
            "KYD",
            "Dólar das Ilhas Caimão",
        }
        MXP{
            "MXP",
            "Peso Plata mexicano (1861-1992)",
        }
        MXV{
            "MXV",
            "Unidad de Inversion (UDI) mexicana",
        }
        NIC{
            "NIC",
            "Córdoba nicaraguano",
        }
        NIO{
            "NIO",
            "Córdoba Ouro nicaraguano",
        }
        PTE{
            "Esc.",
            "Escudo português",
            {
                /**
                 * Duplicated from NumberPatterns resource
                 */
                "#,##0.00 ¤",
                "$",
                ",",
            }
        }
        TZS{
            "TZS",
            "Xelim de Tanzânia",
        }
        WST{
            "WST",
            "Tala de Samoa Ocidental",
        }
    }
    Languages{
        ang{"inglês, arcaico (aprox. 450-1100)"}
        awa{"Awadhi"}
        bai{"bamileke Languages"}
        bug{"Buginese"}
        ce{"chechene"}
        cs{"checo"}
        dum{"holandês, medieval (aprox. 1050-1350)"}
        enm{"inglês, medieval (1100-1500)"}
        et{"estónio"}
        frm{"francês, medieval (aprox.1400-1600)"}
        fro{"francês, arcaico (842-aprox.1400)"}
        gmh{"alemão, medieval alto (aprox.1050-1500)"}
        goh{"alemão, arcaico alto (aprox.750-1050)"}
        grc{"grego clássico"}
        hy{"arménio"}
        iba{"Iban"}
        ik{"Inupiaq"}
        jv{"jv"}
        mga{"irlandês, medieval (900-1200)"}
        mkh{"mon-khmer (other)"}
        non{"norse, old"}
        nso{"soto, setentrional"}
        peo{"persa arcaico (aprox. 600-400 a.C.)"}
        pl{"polaco"}
        pro{"provençal, arcaico (até 1500)"}
        sal{"salishan languages"}
        sgn{"linguages de sinais"}
        to{"tonga"}
        wak{"wakashan languages"}
        zh_Hans{"chinês simplificado"}
        zh_Hant{"chinês tradicional"}
    }
    NumberPatterns{
        "#,##0.###",
        "#,##0.00 ¤",
        "#,##0%",
        "#E0",
    }
    Scripts{
        Armn{"arménio"}
        Blis{"símbolos Bliss"}
        Inds{"indus"}
        Linb{"linear B"}
        Sylo{"siloti nagri"}
        Tale{"tai le"}
        Taml{"tamil"}
        Telu{"telugu"}
        Xsux{"cuneiforme sumero-acadiano"}
        Zxxx{"não escrito"}
        Zzzz{"inválido ou desconhecido"}
    }
    Types{
        collation{
            direct{"Ordem Directa"}
            phonebook{"Ordem da Lista Telefónica"}
        }
    }
    Version{"1.128"}
    calendar{
        buddhist{
            DateTimePatterns{
                "HH'H'mm'm'ss's' v",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, MMMM d, yyyy G",
                "MMMM d, yyyy G",
                "MMM d, yyyy G",
                "M/d/yyyy",
                "{1} {0}",
            }
        }
        gregorian{
            AmPmMarkers{
                "Antes do meio-dia",
                "Depois do meio-dia",
            }
            DateTimePatterns{
                "HH'H'mm'm'ss's' v",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d 'de' MMMM 'de' yyyy",
                "d 'de' MMMM 'de' yyyy",
                "yyyy/MM/dd",
                "yy/MM/dd",
                "{1} {0}",
            }
            availableFormats{
                MMMEd{"E d MMM"}
            }
            eras{
                wide{
                    "a.C.",
                    "d.C.",
                }
            }
            fields{
                day{
                    relative{
                        "-2"{"Anteontem"}
                        "-3"{"Trás-anteontem"}
                        "3"{"Em três dias"}
                    }
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Jan",
                        "Fev",
                        "Mar",
                        "Abr",
                        "Mai",
                        "Jun",
                        "Jul",
                        "Ago",
                        "Set",
                        "Out",
                        "Nov",
                        "Dez",
                    }
                    wide{
                        "Janeiro",
                        "Fevereiro",
                        "Março",
                        "Abril",
                        "Maio",
                        "Junho",
                        "Julho",
                        "Agosto",
                        "Setembro",
                        "Outubro",
                        "Novembro",
                        "Dezembro",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Jan",
                        "Fev",
                        "Mar",
                        "Abr",
                        "Mai",
                        "Jun",
                        "Jul",
                        "Ago",
                        "Set",
                        "Out",
                        "Nov",
                        "Dez",
                    }
                    wide{
                        "Janeiro",
                        "Fevereiro",
                        "Março",
                        "Abril",
                        "Maio",
                        "Junho",
                        "Julho",
                        "Agosto",
                        "Setembro",
                        "Outubro",
                        "Novembro",
                        "Dezembro",
                    }
                }
            }
        }
        japanese{
            DateTimePatterns{
                "HH'H'mm'm'ss's' v",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, MMMM d, y G",
                "MMMM d, y G",
                "MMM d, y G",
                "M/d/yy",
                "{1} {0}",
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"“"}
        quotationEnd{"’"}
        quotationStart{"‘"}
    }
    measurementSystemNames{
        metric{"Métrico"}
    }
    zoneStrings{
        "America:Araguaina"{
            ec{"Araguaina"}
        }
        "America:Argentina:Tucuman"{
            ec{"Tucumán"}
        }
        "America:Bahia"{
            ec{"Baía"}
        }
        "America:Cancun"{
            ec{"Cancun"}
        }
        "America:Cuiaba"{
            ec{"Cuibá"}
        }
        "America:North_Dakota:Center"{
            ec{"Center"}
        }
        "Asia:Sakhalin"{
            ec{"Sacalina"}
        }
        "Asia:Ulaanbaatar"{
            ec{"Ulan Bator"}
        }
        "Europe:Kaliningrad"{
            ec{"Kaliningrado"}
        }
        "Europe:Madrid"{
            ec{"Madrid"}
        }
        "Europe:Moscow"{
            ec{"Moscovo"}
        }
        "meta:Acre"{
            cu:int{0}
        }
        "meta:Amazon"{
            cu:int{0}
        }
        "meta:Brasilia"{
            cu:int{0}
        }
        "meta:Europe_Central"{
            ls{"Horário Padrão da Europa Central"}
        }
        "meta:Newfoundland"{
            ld{"Horário de Verão da Terra Nova"}
            ls{"Horário Padrão da Terra Nova"}
        }
    }
}
