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

pt {
    Countries { 
        PT { "Portugal" }
        BR { "Brasil" }
    }
    DateTimeElements { 
            "2",
            "1",
    }
    DateTimePatterns { 
            "HH'H'mm'm' z",
            "H:mm:ss z",
            "H:mm:ss",
            "H:mm",
            "EEEE, d' de 'MMMM' de 'yyyy",
            "d' de 'MMMM' de 'yyyy",
            "d/MMM/yy",
            "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 { 
        pt { "portugu\u00EAs" }
    }
    LocaleID { "16" }
    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 
    }
}
