﻿// ***************************************************************************
// *
// * Copyright (C) 2012 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/seh.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/seh.xml
 */
seh{
    ExemplarCharacters{
        "[a á à â ã b c ç d e é ê f g h i í j k l m n o ó ò ô õ p q r s t u ú v w x y"
        " z]"
    }
    ExemplarCharactersIndex{"[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]"}
    LocaleScript{
        "Latn",
    }
    NumberElements{
        latn{
            patterns{
                currencyFormat{"#,##0.00¤"}
            }
            symbols{
                decimal{","}
                group{"."}
            }
        }
    }
    Version{"2.0.74.79"}
    calendar{
        gregorian{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d 'de' MMMM 'de' y",
                "d 'de' MMMM 'de' y",
                "d 'de' MMM 'de' y",
                "d/M/yyyy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                HHmm{"HH:mm"}
                HHmmss{"HH:mm:ss"}
                Hm{"H:mm"}
                M{"L"}
                MEd{"E, dd/MM"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMEd{"E, d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d"}
                mmss{"mm:ss"}
                ms{"mm:ss"}
                y{"y"}
                yM{"MM/y"}
                yMEd{"E, dd/MM/y"}
                yMMM{"MMM 'de' y"}
                yMMMEd{"E, d 'de' MMM 'de' y"}
                yMMMM{"MMMM 'de' y"}
                yQ{"y Q"}
                yQQQ{"y QQQ"}
                yyMM{"MM/yy"}
                yyMMM{"MMM yy"}
                yyMMMEd{"E, d 'de' MMM 'de' yy"}
                yyMMMd{"d 'de' MMM 'de' yy"}
                yyQ{"Q yy"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Dim",
                        "Pos",
                        "Pir",
                        "Tat",
                        "Nai",
                        "Sha",
                        "Sab",
                    }
                    wide{
                        "Dimingu",
                        "Chiposi",
                        "Chipiri",
                        "Chitatu",
                        "Chinai",
                        "Chishanu",
                        "Sabudu",
                    }
                }
                stand-alone{
                    narrow{
                        "D",
                        "P",
                        "C",
                        "T",
                        "N",
                        "S",
                        "S",
                    }
                }
            }
            eras{
                abbreviated{
                    "AC",
                    "AD",
                }
                wide{
                    "Antes de Cristo",
                    "Anno Domini",
                }
            }
            fields{
                day{
                    dn{"Ntsiku"}
                    relative{
                        "-1"{"Zuro"}
                        "0"{"Lero"}
                        "1"{"Manguana"}
                    }
                }
                hour{
                    dn{"Hora"}
                }
                minute{
                    dn{"Minuto"}
                }
                month{
                    dn{"Mwezi"}
                }
                second{
                    dn{"Segundo"}
                }
                year{
                    dn{"Chaka"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Jan",
                        "Fev",
                        "Mar",
                        "Abr",
                        "Mai",
                        "Jun",
                        "Jul",
                        "Aug",
                        "Set",
                        "Otu",
                        "Nov",
                        "Dec",
                    }
                    wide{
                        "Janeiro",
                        "Fevreiro",
                        "Marco",
                        "Abril",
                        "Maio",
                        "Junho",
                        "Julho",
                        "Augusto",
                        "Setembro",
                        "Otubro",
                        "Novembro",
                        "Decembro",
                    }
                }
                stand-alone{
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
}
