// ***************************************************************************
// *
// *   Copyright (C) 1997-2003, International Business Machines
// *   Corporation and others.  All Rights Reserved.
// *
// ***************************************************************************

pt {
    Version { "1.0" }
    Countries {
        AE { "Rep\u00fablica \u00c1rabe Unida" }
        AL { "Alb\u00e2nia" }
        AS { "\u00c1sia" }
        AT { "\u00c1ustria" }
        AU { "Austr\u00e1lia" }
        BA { "B\u00f3snia" }
        BE { "B\u00e9lgica" }
        BG { "Bulg\u00e1ria" }
        BH { "Bar\u00e1in" }
        BO { "Bol\u00edvia" }
        BR { "Brasil" }
        CA { "Canad\u00e1" }
        CH { "Su\u00ed\u00e7a" }
        CN { "China (PRC)" }
        CO { "Col\u00f4mbia" }
        CZ { "Rep\u00fablica Tcheca" }
        DE { "Alemanha" }
        DK { "Dinamarca" }
        DO { "Rep\u00fablica Dominicana" }
        DZ { "Arg\u00e9lia" }
        EC { "Equador" }
        EE { "Est\u00f4nia" }
        EG { "Egito" }
        ES { "Espanha" }
        FI { "Finl\u00e2ndia" }
        FR { "Fran\u00e7a" }
        GB { "Reino Unido" }
        GR { "Gr\u00e9cia" }
        HR { "Cro\u00e1cia" }
        HU { "Hungria" }
        ID { "Indon\u00e9sia" }
        IE { "Irlanda" }
        IN { "\u00cdndia" }
        IS { "Isl\u00e2ndia" }
        IT { "It\u00e1lia" }
        JO { "Jord\u00e2nia" }
        JP { "Jap\u00e3o" }
        KR { "Cor\u00e9ia" }
        LA { "Am\u00e9rica Latina" }
        LB { "L\u00edbano" }
        LT { "Litu\u00e2nia" }
        LU { "Luxemburgo" }
        LV { "Let\u00f4nia" }
        MA { "Marrocos" }
        MK { "Maced\u00f4nia FYR" }
        MX { "M\u00e9xico" }
        NI { "Nicar\u00e1gua" }
        NL { "Pa\u00edses Baixos" }
        NO { "Noruega" }
        NZ { "Nova Zel\u00e2ndia" }
        OM { "Om\u00e3" }
        PA { "Panam\u00e1" }
        PK { "Paquist\u00e3o" }
        PL { "Pol\u00f4nia" }
        PY { "Paraguai" }
        QA { "Catar" }
        RO { "Rom\u00eania" }
        RU { "R\u00fassia" }
        SA { "Ar\u00e1bia Saudita" }
        SE { "Su\u00e9cia" }
        SG { "Cingapura" }
        SI { "Eslov\u00eania" }
        SK { "Eslov\u00e1quia" }
        SP { "S\u00e9rvia" }
        SY { "S\u00edria" }
        TH { "Tail\u00e2ndia" }
        TN { "Tun\u00edsia" }
        TR { "Turquia" }
        UA { "Ucr\u00e2nia" }
        US { "Estados Unidos" }
        UY { "Uruguai" }
        ZA { "\u00c1frica do Sul" }
    }
    DateTimeElements:intvector { 
        2,
        1,
    }
    DateTimePatterns { 
        "HH'H'mm'm' z",
        "HH:mm:ss z",
        "HH:mm:ss",
        "HH:mm",
        "EEEE, d' de 'MMMM' de 'yyyy",
        "d' de 'MMMM' de 'yyyy",
        "d/MMM/yyyy",
        "dd-MM-yyyy",
        "{1} {0}",
    }
    DayAbbreviations { 
        "Dom",
        "Seg",
        "Ter",
        "Qua",
        "Qui",
        "Sex",
        "S\u00E1b",
    }
    DayNames { 
        "Domingo",
        "Segunda-feira",
        "Ter\u00E7a-feira",
        "Quarta-feira",
        "Quinta-feira",
        "Sexta-feira",
        "S\u00E1bado",
    }
    Languages { 
        ar { "\u00c1rabe" }
        az { "Azerbaij\u00e3o" }
        ba { "Basco" }
        be { "Bielo-russo" }
        bg { "B\u00falgaro" }
        bn { "Bengala" }
        ca { "Catal\u00e3o" }
        cs { "Tcheco" }
        da { "Dinamarqu\u00eas" }
        de { "Alem\u00e3o" }
        el { "Grego" }
        en { "Ingl\u00eas" }
        es { "Espanhol" }
        et { "Est\u00f4nio" }
        fa { "Farsi" }
        fi { "Finland\u00eas" }
        fr { "Franc\u00eas" }
        gu { "Guzarate" }
        he { "Hebreu" }
        hr { "Croata" }
        hu { "H\u00fangaro" }
        id { "Indon\u00e9sio" }
        it { "Italiano" }
        ja { "Japon\u00eas" }
        ka { "Georgiano" }
        km { "Cmer" }
        kn { "Canad\u00e1" }
        ko { "Coreano" }
        ku { "Curdo" }
        la { "Latino" }
        lt { "Lituano" }
        lv { "Let\u00e3o" }
        mk { "Maced\u00f4nio" }
        mr { "Marati" }
        my { "Birman\u00eas" }
        nl { "Holand\u00eas" }
        no { "Noruegu\u00eas" }
        pl { "Polon\u00eas" }
        pt { "Portugu\u00eas" }
        ro { "Romeno" }
        ru { "Russo" }
        sk { "Eslovaco" }
        sl { "Esloveno" }
        sq { "Alban\u00eas" }
        sr { "S\u00e9rvio" }
        sv { "Su\u00e9co" }
        te { "T\u00e9lugu" }
        th { "Tailand\u00eas" }
        tk { "Tagalo" }
        tr { "Turco" }
        uk { "Ucraniano" }
        uz { "Usbeque" }
        zh { "Chin\u00eas" }
    }
    LocaleID:int { 0x16 }
//    LocaleString { "pt" }
    MonthAbbreviations { 
        "Jan",
        "Fev",
        "Mar",
        "Abr",
        "Mai",
        "Jun",
        "Jul",
        "Ago",
        "Set",
        "Out",
        "Nov",
        "Dez",
    }
    MonthNames { 
        "Janeiro",
        "Fevereiro",
        "Mar\u00E7o",
        "Abril",
        "Maio",
        "Junho",
        "Julho",
        "Agosto",
        "Setembro",
        "Outubro",
        "Novembro",
        "Dezembro",
    }
    NumberElements { 
        ",",
        ".",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "\u2030",
        "\u221E",
        "\uFFFD",
        ",",
    }
//    ShortLanguage { "por" }
    zoneStrings { 
        {
            "Africa/Casablanca",
            "GMT",
            "GMT",
            "GMT",
            "GMT",
        }
    }
//    LocaleScript{
//        "Latn",  // ISO 15924 Name 
//    }
    ExemplarCharacters { "[a-z \u00e3 \u00f5 \u00e7 \u00e1 \u00e9 \u00ed \u00f3 \u00fa \u00e0 \u00e2 \u00ea \u00f4 \u00fc \u00f2]" }

    // Currency display names
    Currencies {
        ADP { "ADP", "Peseta de Andorra" }
        AED { "AED", "Dirham dos Emirados \u00C1rabes Unidos" }
        AFA { "AFA", "Afgani" }
        ALL { "ALL", "Lek Alban\u00EAs" }
        AMD { "AMD", "Dram Arm\u00E9nio" }
        ANG { "ANG", "Guilda da \u00CDndia Ocidental" }
        AOK { "AOK", "Kwanza Angolano" }
        ARA { "ARA", "Austral Argentino" }
        ARS { "ARS", "Peso Argentino" }
        ATS { "ATS", "Schilling Austriaco" }
        AUD { "AUD", "D\u00F3lar Australiano" }
        AWG { "AWG", "Guilda Aruban" }
        AZM { "AZM", "Manat do Azerbeij\u00E3o" }
        BAD { "BAD", "Dinar da B\u00F3snia-Herzgovina" }
        BBD { "BBD", "D\u00F3lar dos Barbados" }
        BDT { "BDT", "Taka do Bangladesh" }
        BEF { "BEF", "Franco B\u00E9lga" }
        BGL { "BGL", "Lev B\u00FAlgaro" }
        BHD { "BHD", "Dinar Bahrain" }
        BIF { "BIF", "Franco do Burundi" }
        BMD { "BMD", "D\u00F3lar das Bermudas" }
        BND { "BND", "D\u00F3lar do Brunei" }
        BOB { "BOB", "Boliviano Boliviano" }
        BRL { "R$", "Real Brasileiro" }
        BRR { "BRR", "Brasil Brasileiro" }
        BSD { "BSD", "D\u00F3lar das Bahamas" }
        BWP { "BWP", "Pula do Bostwana" }
        BYR { "BYR", "Rublo Bielorusso" }
        BZD { "BZD", "D\u00F3lar do Belize" }
        CAD { "CAD", "D\u00F3lar Canadiano" }
        CHF { "CHF", "Franco Sui\u00E7o" }
        CLP { "CLP", "Peso Chileno" }
        COP { "COP", "Peso Colombiano" }
        CRC { "CRC", "Colon da Costa Rica" }
        CUP { "CUP", "Peso Cubano" }
        CVE { "CVE", "Escudo Cabo Verdiano" }
        CYP { "CYP", "Libra de Chipre" }
        CZK { "CZK", "C\u00F4roa Checa" }
        DEM { "DEM", "Marco Alem\u00E3o" }
        DJF { "DJF", "Franco do Djibouti" }
        DKK { "DKK", "C\u00F4roa Dinamarquesa" }
        DOP { "DOP", "Peso Dominicano" }
        // DRP { "DRP", "Peso da Rep\u00FAblica Dominicana" } -- invalid
        DZD { "DZD", "Dinar Argelino" }
        ECS { "ECS", "Sucre Equatorial" }
        // ECU { "ECU", "Unidade de Moeda Europeia" } -- invalid
        EEK { "EEK", "C\u00F4roa Est\u00F3nia" }
        EGP { "EGP", "Libra Eg\u00EDpcia" }
        ESP { "ESP", "Peseta Espanhola" }
        ETB { "ETB", "Birr Et\u00EDope" }
        EUR { "\u20AC", "Moeda dos Estados Membros da UEM" }
        FIM { "FIM", "Marco Finland\u00EAs" }
        FJD { "FJD", "D\u00F3lar das Fiji" }
        FKP { "FKP", "Libra das Maldivas" }
        FRF { "FRF", "Franco Franc\u00EAs" }
        GBP { "\u00A3", "Libra Brit\u00E2nica" }
        GEK { "GEK", "Kupon da Ge\u00F3rgia" }
        GHC { "GHC", "Cedi do Ghana" }
        GIP { "GIP", "Libra de Gibraltar" }
        GMD { "GMD", "Dalasi do Gab\u00E3o" }
        GNF { "GNF", "Franco da Guiana" }
        GRD { "GRD", "Dracma Grego" }
        GTQ { "GTQ", "Quedzal da Guatemala" }
        GWP { "GWP", "Peso da Guiana" }
        GYD { "GYD", "D\u00F3lar de Guyanese" }
        HKD { "HKD", "D\u00F3lar de Hong Kong" }
        HNL { "HNL", "Lempira das Honduras" }
        HRD { "HRD", "Dinar Croata" }
        HTG { "HTG", "Gourde do Haiti" }
        HUF { "HUF", "Forint Hungaro" }
        IDR { "IDR", "Rupia Indon\u00E9sia" }
        IEP { "IEP", "Libra Irlandesa" }
        ILS { "ILS", "Scheckel Israelita" }
        INR { "=0#Rs.|1#Re.|1<Rs.", "Rupia Indiana" }
        IQD { "IQD", "Dinar Iraquiano" }
        IRR { "IRR", "Rial Iraniano" }
        ISK { "ISK", "Coroa Islandesa" }
        ITL { "\u20A4", "Lira Italiana" }
        JMD { "JMD", "D\u00F3lar Jamaicano" }
        JOD { "JOD", "Dinar Jordano" }
        JPY { "\u00A5", "Yen Japon\u00EAs" }
        KES { "KES", "Shilling Queniano" }
        KHR { "KHR", "Riel Cambodjano" }
        // KIS { "KIS", "Som do Kirghizst\u00E3o" } -- invalid
        KMF { "KMF", "Franco dos Comoros" }
        KPW { "KPW", "Won Norte-Coreano" }
        KRW { "KRW", "Won Sul-Coreano" }
        KWD { "KWD", "Dinar do Kuwait" }
        KYD { "KYD", "D\u00F3lar das Caim\u00E3o" }
        KZT { "KZT", "Tenge do Kasaquist\u00E3o" }
        LAK { "LAK", "Kip do Lao" }
        LBP { "LBP", "Libra Libanesa" }
        LKR { "LKR", "Rupia do Sri Lanka" }
        LRD { "LRD", "D\u00F3lar Liberiano" }
        LSL { "LSL", "Loti do Lesoto" }
        LTL { "LTL", "Lita Lituano" }
        LUF { "LUF", "Franco Luxemburgu\u00EAs" }
        LVL { "LVL", "Lat Lituano" }
        LYD { "LYD", "Dinar L\u00EDbio" }
        MAD { "MAD", "Dirham Marroquino" }
        MDL { "MDL", "Lei Moldavo" }
        MGF { "MGF", "Franco de Madagascar" }
        MNT { "MNT", "Tugrik Mong\u00F3l" }
        MOP { "MOP", "Pataca Macaense" }
        MRO { "MRO", "Ouguiya da Maurit\u00E2nia" }
        MTL { "MTL", "Lira Maltesa" }
        MUR { "MUR", "Rupia de Mauritius" }
        MVR { "MVR", "Rufiyaa das Maldivas" }
        MWK { "MWK", "Kwacha do Malaui" }
        MXN { "MXN", "Peso Mexicano (novo)" }
        MXP { "MXP", "Peso Mexicano (antigo)" }
        MYR { "MYR", "Ringgit da Mal\u00E1sia" }
        MZM { "MZM", "Metical Mo\u00E7ambicano" }
        NGN { "NGN", "Naira Nigeriana" }
        //NIC { "NIC", "Cordoba de Nicar\u00E1gua" }
        NIO { "NIO", "Cordoba de Nicar\u00E1gua" }
        // NIS { "NIS", "Novo Shekel Israelita" } -- invalid
        NLG { "NLG", "Guilda Holandesa" }
        NOK { "NOK", "Coroa Norueguesa" }
        NPR { "NPR", "Rupia Nepalesa" }
        NZD { "NZD", "D\u00F3lar da Nova-Zel\u00E2ndia" }
        OMR { "OMR", "Rial de Om\u00E3o" }
        PAB { "PAB", "Balboa Panamiano" }
        PEI { "PEI", "Inti Peruano" }
        PEN { "PEN", "Sol Peruano - Novo" }
        PES { "PES", "Sol Peruano" }
        PGK { "PGK", "Kina da Papua Nova Guin\u00E9" }
        PHP { "PHP", "Peso Filipino" }
        PKR { "PKR", "Rupia Paquistanesa" }
        PLN { "PLN", "Zloty Polaco" }
        PTE { "Esc.", "Escudo Portugues" }
        PYG { "PYG", "Guarani Paraguaio" }
        QAR { "QAR", "Riyal do Quatar" }
        // RMB { "RMB", "Renminbi Yuan Chin\u00EAs" } -- invalid
        ROL { "ROL", "Lei Romeno" }
        RUR { "RUR", "Rublo Russo" }
        RWF { "RWF", "Franco Ruand\u00EAs" }
        SAR { "SAR", "Riyal Saudita" }
        SBD { "SBD", "D\u00F3lar das Ilhas Salom\u00E3o" }
        SCR { "SCR", "Rupia das Seychelles" }
        SDP { "SDP", "Libra do Sud\u00E3o" }
        SEK { "SEK", "Coroa Sueca" }
        SGD { "SGD", "D\u00F3lar de Singapura" }
        SHP { "SHP", "Libra de St.Helena" }
        SIT { "SIT", "Tolar Esloveno" }
        SKK { "SKK", "Coroa Eslovaca" }
        SLL { "SLL", "Le\u00E3o" }
        SOS { "SOS", "Shilling Somal\u00ED" }
        SRG { "SRG", "Guilda do Suriname" }
        STD { "STD", "Dobra de S\u00E3o Tom\u00E9 e Pr\u00EDncepe" }
        SUR { "SUR", "Rublo Russo (antigo)" }
        SVC { "SVC", "Colon El Salvadoranho" }
        SYP { "SYP", "Libra S\u00EDria" }
        SZL { "SZL", "Lilangeni da Swazil\u00E2ndia" }
        THB { "THB", "Baht Tailand\u00EAs" }
        TJR { "TJR", "Rublo do Tadjaquist\u00E3o" }
        TMM { "TMM", "Manat do Turquist\u00E3o" }
        TND { "TND", "Dinar Tunisino" }
        TOP { "TOP", "Pa'anga do Tongo" }
        TPE { "TPE", "Escudo Timor\u00EAnse" }
        TRL { "TRL", "Lira Turca" }
        TTD { "TTD", "D\u00F3lar de Trinidade e Tobago" }
        TWD { "TWD", "Novo D\u00F3lar de Taiwan" }
        TZS { "TZS", "Shilling da Tanz\u00E2nia" }
        UAK { "UAK", "Karbowanez Ucraniano" }
        UGS { "UGS", "Shilling do Uganda" }
        USD { "$", "D\u00F3lar Americano" }
        UYP { "UYP", "Novo Peso Uruguaio" }
        VEB { "VEB", "Bolivar Venezuelano" }
        VND { "\u20AB", "Dong Vietnamita" }
        VUV { "VUV", "Vatu do Vanuatu" }
        WST { "WST", "Tala de Samoa" }
        XAF { "XAF", "Franco do Gab\u00E3o C.f.A" }
        XCD { "XCD", "D\u00F3lar do Cara\u00EDbe Oriental" }
        XOF { "XOF", "Franco do Benin C.f.A." }
        YER { "YER", "Ryal do Yemeni" }
        ZAR { "ZAR", "Rand Sul-Africano" }
        ZMK { "ZMK", "Kwacha da Z\u00E2mbia" }
        ZWD { "ZWD", "D\u00F3lar do Zimbabue" }
    }
}
