﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/br.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/br.xml
 */
br{
    AuxExemplarCharacters{"[á à ă â å ä ã ā æ c ç é è ĕ ë ē í ì ĭ î ï ī ó ò ŏ ô ö ø ō œ q ú ŭ û ü ū ÿ]"}
    ExemplarCharacters{"[a b {ch} {cʼh} d e ê f g h i j k l m n ñ o p 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 R S T U V W X Y Z]"}
    LocaleScript{
        "Latn",
    }
    MoreInformation{"?"}
    NumberElements{
        default{"latn"}
        latn{
            patterns{
                accountingFormat{"#,##0.00 ¤"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0 %"}
            }
            symbols{
                decimal{","}
                group{" "}
                infinity{"∞"}
                minusSign{"-"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
                timeSeparator{":"}
            }
        }
        native{"latn"}
    }
    Version{"2.1.7.39"}
    calendar{
        gregorian{
            AmPmMarkers{
                "A.M.",
                "G.M.",
            }
            AmPmMarkersNarrow{
                "am",
                "gm",
            }
            NoonMarker{"kreisteiz"}
            NoonMarkerNarrow{"k"}
            availableFormats{
                Ed{"E d"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E d MMM y G"}
                GyMMMd{"d MMM y G"}
                H{"HH"}
                M{"MM"}
                MEd{"E dd/MM"}
                MMMEd{"E d MMM"}
                MMMd{"d MMM"}
                Md{"dd/MM"}
                y{"y"}
                yM{"MM/y"}
                yMEd{"E dd/MM/y"}
                yMMM{"MMM y"}
                yMMMEd{"E d MMM y"}
                yMMMd{"d MMM y"}
                yMd{"dd/MM/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Sul",
                        "Lun",
                        "Meu.",
                        "Mer.",
                        "Yaou",
                        "Gwe.",
                        "Sad.",
                    }
                    narrow{
                        "Su",
                        "L",
                        "Mz",
                        "Mc",
                        "Y",
                        "G",
                        "Sa",
                    }
                    wide{
                        "Sul",
                        "Lun",
                        "Meurzh",
                        "Mercʼher",
                        "Yaou",
                        "Gwener",
                        "Sadorn",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Sul",
                        "Lun",
                        "Meu.",
                        "Mer.",
                        "Yaou",
                        "Gwe.",
                        "Sad.",
                    }
                    narrow{
                        "Su",
                        "L",
                        "Mz",
                        "Mc",
                        "Y",
                        "G",
                        "Sa",
                    }
                    wide{
                        "Sul",
                        "Lun",
                        "Meurzh",
                        "Mercʼher",
                        "Yaou",
                        "Gwener",
                        "Sadorn",
                    }
                }
            }
            intervalFormats{
                M{
                    M{"MM–MM"}
                }
                MEd{
                    M{"E dd/MM - E dd/MM"}
                    d{"E dd/MM - E dd/MM"}
                }
                MMMEd{
                    M{"E d MMM - E d MMM"}
                    d{"E d MMM - E d MMM"}
                }
                MMMd{
                    M{"d MMM - d MMM"}
                    d{"d-d MMM"}
                }
                Md{
                    M{"dd/MM - dd/MM"}
                    d{"dd/MM - dd/MM"}
                }
                d{
                    d{"d–d"}
                }
                y{
                    y{"y–y"}
                }
                yM{
                    M{"MM/y - MM/y"}
                    y{"MM/y - MM/y"}
                }
                yMEd{
                    M{"E dd/MM/y - E dd/MM/y"}
                    d{"E dd/MM/y - E dd/MM/y"}
                    y{"E dd/MM/y - E dd/MM/y"}
                }
                yMMM{
                    M{"MMM - MMM y"}
                    y{"MMM y - MMM y"}
                }
                yMMMEd{
                    M{"E d MMM - E d MMM y"}
                    d{"E d MMM - E d MMM y"}
                    y{"E d MMM y - E d MMM y"}
                }
                yMMMM{
                    M{"MMMM - MMMM y"}
                    y{"MMMM y - MMMM y"}
                }
                yMMMd{
                    M{"d MMM - d MMM y"}
                    d{"d-d MMM y"}
                    y{"d MMM y - d MMM y"}
                }
                yMd{
                    M{"dd/MM/y - dd/MM/y"}
                    d{"dd/MM/y - dd/MM/y"}
                    y{"dd/MM/y - dd/MM/y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Gen",
                        "Cʼhwe",
                        "Meur",
                        "Ebr",
                        "Mae",
                        "Mezh",
                        "Goue",
                        "Eost",
                        "Gwen",
                        "Here",
                        "Du",
                        "Ker",
                    }
                    narrow{
                        "01",
                        "02",
                        "03",
                        "04",
                        "05",
                        "06",
                        "07",
                        "08",
                        "09",
                        "10",
                        "11",
                        "12",
                    }
                    wide{
                        "Genver",
                        "Cʼhwevrer",
                        "Meurzh",
                        "Ebrel",
                        "Mae",
                        "Mezheven",
                        "Gouere",
                        "Eost",
                        "Gwengolo",
                        "Here",
                        "Du",
                        "Kerzu",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Gen",
                        "Cʼhwe",
                        "Meur",
                        "Ebr",
                        "Mae",
                        "Mezh",
                        "Goue",
                        "Eost",
                        "Gwen",
                        "Here",
                        "Du",
                        "Ker",
                    }
                    narrow{
                        "01",
                        "02",
                        "03",
                        "04",
                        "05",
                        "06",
                        "07",
                        "08",
                        "09",
                        "10",
                        "11",
                        "12",
                    }
                    wide{
                        "Genver",
                        "Cʼhwevrer",
                        "Meurzh",
                        "Ebrel",
                        "Mae",
                        "Mezheven",
                        "Gouere",
                        "Eost",
                        "Gwengolo",
                        "Here",
                        "Du",
                        "Kerzu",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "1añ trim.",
                        "2l trim.",
                        "3e trim.",
                        "4e trim.",
                    }
                    wide{
                        "1añ trimiziad",
                        "2l trimiziad",
                        "3e trimiziad",
                        "4e trimiziad",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1añ trim.",
                        "2l trim.",
                        "3e trim.",
                        "4e trim.",
                    }
                    wide{
                        "1añ trimiziad",
                        "2l trimiziad",
                        "3e trimiziad",
                        "4e trimiziad",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"›"}
        alternateQuotationStart{"‹"}
        quotationEnd{"»"}
        quotationStart{"«"}
    }
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    fields{
        day{
            dn{"deiz"}
            relative{
                "-1"{"decʼh"}
                "-2"{"dercʼhent-decʼh"}
                "0"{"hiziv"}
                "1"{"warcʼhoazh"}
            }
        }
        day-short{
            dn{"d"}
        }
        era{
            dn{"amzervezh"}
        }
        hour{
            dn{"eur"}
        }
        hour-narrow{
            dn{"e"}
        }
        hour-short{
            dn{"h"}
        }
        minute{
            dn{"munut"}
        }
        minute-short{
            dn{"min"}
        }
        month{
            dn{"miz"}
        }
        second{
            dn{"eilenn"}
        }
        second-short{
            dn{"s"}
        }
        week{
            dn{"sizhun"}
        }
        year{
            dn{"bloaz"}
            relative{
                "-1"{"warlene"}
            }
        }
    }
    measurementSystemNames{
        UK{"RU"}
        US{"SU"}
        metric{"metrek"}
    }
}
