﻿// ***************************************************************************
// *
// * Copyright (C) 2012 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/de.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/de.xml
 */
de{
    AuxExemplarCharacters{
        "[á à ă â å ã ā æ ç é è ĕ ê ë ē ğ í ì ĭ î ï {i\u0307} ī ı ñ ó ò ŏ ô ø ō œ ş ú"
        " ù ŭ û ū ÿ]"
    }
    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]"}
    ExemplarCharactersPunctuation{"[\- ‐ – — , ; \: ! ? . … ' ‘ ‚ \" “ „ « » ( ) \[ \] \{ \} § @ * / \& #]"}
    LocaleScript{
        "Latn",
    }
    NumberElements{
        latn{
            patterns{
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0 %"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 Tausend"}
                        other{"0 Tausend"}
                    }
                    10000{
                        one{"00 Tausend"}
                        other{"00 Tausend"}
                    }
                    100000{
                        one{"000 Tausend"}
                        other{"000 Tausend"}
                    }
                    1000000{
                        one{"0 Million"}
                        other{"0 Millionen"}
                    }
                    10000000{
                        one{"00 Millionen"}
                        other{"00 Millionen"}
                    }
                    100000000{
                        one{"000 Millionen"}
                        other{"000 Millionen"}
                    }
                    1000000000{
                        one{"0 Milliarde"}
                        other{"0 Milliarden"}
                    }
                    10000000000{
                        one{"00 Milliarden"}
                        other{"00 Milliarden"}
                    }
                    100000000000{
                        one{"000 Milliarden"}
                        other{"000 Milliarden"}
                    }
                    1000000000000{
                        one{"0 Billion"}
                        other{"0 Billionen"}
                    }
                    10000000000000{
                        one{"00 Billionen"}
                        other{"00 Billionen"}
                    }
                    100000000000000{
                        one{"000 Billionen"}
                        other{"000 Billionen"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0"}
                        other{"0"}
                    }
                    10000{
                        one{"0"}
                        other{"0"}
                    }
                    100000{
                        one{"0"}
                        other{"0"}
                    }
                    1000000{
                        one{"0 Mio"}
                        other{"0 Mio"}
                    }
                    10000000{
                        one{"00 Mio"}
                        other{"00 Mio"}
                    }
                    100000000{
                        one{"000 Mio"}
                        other{"000 Mio"}
                    }
                    1000000000{
                        one{"0 Mrd"}
                        other{"0 Mrd"}
                    }
                    10000000000{
                        one{"00 Mrd"}
                        other{"00 Mrd"}
                    }
                    100000000000{
                        one{"000 Mrd"}
                        other{"000 Mrd"}
                    }
                    1000000000000{
                        one{"0 Bio"}
                        other{"0 Bio"}
                    }
                    10000000000000{
                        one{"00 Bio"}
                        other{"00 Bio"}
                    }
                    100000000000000{
                        one{"000 Bio"}
                        other{"000 Bio"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
            }
        }
    }
    Version{"2.0.78.47"}
    calendar{
        buddhist{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE d. MMMM y G",
                "d. MMMM y G",
                "d. MMM y G",
                "d.M.yyyy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d."}
                Gy{"y G"}
                H{"HH 'Uhr'"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d.M."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMdd{"dd. MMMM"}
                MMMd{"d. MMM"}
                MMd{"d.MM."}
                MMdd{"dd.MM."}
                Md{"d.M."}
                d{"d"}
                ms{"mm:ss"}
                y{"y G"}
                yM{"M.y G"}
                yMEd{"E, d.M.y G"}
                yMMM{"MMM y G"}
                yMMMEd{"E, d. MMM y G"}
                yMMMd{"d. MMM y G"}
                yMd{"d.M.y G"}
                yQQQ{"QQQ y G"}
                yQQQQ{"QQQQ y G"}
                yyMM{"MM.y G"}
                yyMMM{"MMM y G"}
                yyMMdd{"dd.MM.y G"}
                yyQQQ{"QQQ y G"}
                yyQQQQ{"QQQQ y G"}
                yyyy{"y G"}
                yyyyMMMM{"MMMM y G"}
            }
        }
        gregorian{
            AmPmMarkers{
                "vorm.",
                "nachm.",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d. MMMM y",
                "d. MMMM y",
                "dd.MM.yyyy",
                "dd.MM.yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E, d."}
                H{"HH 'Uhr'"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d.M."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMMdd{"dd. MMMM"}
                MMMd{"d. MMM"}
                MMd{"d.MM."}
                MMdd{"dd.MM."}
                Md{"d.M."}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M.y"}
                yMEd{"E, d.M.y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d. MMM y"}
                yMMMd{"d. MMM y"}
                yMd{"d.M.y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
                yyMM{"MM.yy"}
                yyMMM{"MMM yy"}
                yyMMdd{"dd.MM.yy"}
                yyQQQ{"QQQ yy"}
                yyQQQQ{"QQQQ yy"}
                yyyy{"y"}
                yyyyMMMM{"MMMM y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "So.",
                        "Mo.",
                        "Di.",
                        "Mi.",
                        "Do.",
                        "Fr.",
                        "Sa.",
                    }
                    narrow{
                        "S",
                        "M",
                        "D",
                        "M",
                        "D",
                        "F",
                        "S",
                    }
                    short{
                        "So.",
                        "Mo.",
                        "Di.",
                        "Mi.",
                        "Do.",
                        "Fr.",
                        "Sa.",
                    }
                    wide{
                        "Sonntag",
                        "Montag",
                        "Dienstag",
                        "Mittwoch",
                        "Donnerstag",
                        "Freitag",
                        "Samstag",
                    }
                }
                stand-alone{
                    abbreviated{
                        "So",
                        "Mo",
                        "Di",
                        "Mi",
                        "Do",
                        "Fr",
                        "Sa",
                    }
                    narrow{
                        "S",
                        "M",
                        "D",
                        "M",
                        "D",
                        "F",
                        "S",
                    }
                    short{
                        "So.",
                        "Mo.",
                        "Di.",
                        "Mi.",
                        "Do.",
                        "Fr.",
                        "Sa.",
                    }
                    wide{
                        "Sonntag",
                        "Montag",
                        "Dienstag",
                        "Mittwoch",
                        "Donnerstag",
                        "Freitag",
                        "Samstag",
                    }
                }
            }
            eras{
                abbreviated{
                    "v. Chr.",
                    "n. Chr.",
                }
                wide{
                    "v. Chr.",
                    "n. Chr.",
                }
            }
            fields{
                day{
                    dn{"Tag"}
                    relative{
                        "-1"{"Gestern"}
                        "-2"{"Vorgestern"}
                        "0"{"Heute"}
                        "1"{"Morgen"}
                        "2"{"Übermorgen"}
                    }
                }
                dayperiod{
                    dn{"Tageshälfte"}
                }
                era{
                    dn{"Epoche"}
                }
                hour{
                    dn{"Stunde"}
                }
                minute{
                    dn{"Minute"}
                }
                month{
                    dn{"Monat"}
                    relative{
                        "-1"{"Letzter Monat"}
                        "0"{"Dieser Monat"}
                        "1"{"Nächster Monat"}
                    }
                }
                second{
                    dn{"Sekunde"}
                }
                week{
                    dn{"Woche"}
                    relative{
                        "-1"{"Letzte Woche"}
                        "0"{"Diese Woche"}
                        "1"{"Nächste Woche"}
                    }
                }
                weekday{
                    dn{"Wochentag"}
                }
                year{
                    dn{"Jahr"}
                    relative{
                        "-1"{"Letztes Jahr"}
                        "0"{"Dieses Jahr"}
                        "1"{"Nächstes Jahr"}
                    }
                }
                zone{
                    dn{"Zone"}
                }
            }
            intervalFormats{
                H{
                    H{"HH-HH 'Uhr'"}
                }
                Hm{
                    H{"HH:mm-HH:mm"}
                    m{"HH:mm-HH:mm"}
                }
                Hmv{
                    H{"HH:mm-HH:mm v"}
                    m{"HH:mm-HH:mm v"}
                }
                Hv{
                    H{"HH-HH 'Uhr' v"}
                }
                M{
                    M{"M.-M."}
                }
                MEd{
                    M{"E, dd.MM. - E, dd.MM."}
                    d{"E, dd.MM. - E, dd.MM."}
                }
                MMM{
                    M{"MMM-MMM"}
                }
                MMMEd{
                    M{"E, d. MMM - E, d. MMM"}
                    d{"E, d. - E, d. MMM"}
                }
                MMMM{
                    M{"LLLL-LLLL"}
                }
                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."}
                }
                fallback{"{0} - {1}"}
                h{
                    a{"h a - h a"}
                    h{"h-h a"}
                }
                hm{
                    a{"h:mm a - h:mm a"}
                    h{"h:mm-h:mm a"}
                    m{"h:mm-h:mm a"}
                }
                hmv{
                    a{"h:mm a - h:mm a v"}
                    h{"h:mm-h:mm a v"}
                    m{"h:mm-h:mm a v"}
                }
                hv{
                    a{"h a - h a v"}
                    h{"h-h a v"}
                }
                y{
                    y{"y-y"}
                }
                yM{
                    M{"MM.yy - MM.yy"}
                    y{"MM.yy - MM.yy"}
                }
                yMEd{
                    M{"E, dd.MM.yy - E, dd.MM.yy"}
                    d{"E, dd.MM.yy - E, dd.MM.yy"}
                    y{"E, dd.MM.yy - E, dd.MM.yy"}
                }
                yMMM{
                    M{"MMM-MMM y"}
                    y{"MMM y - MMM y"}
                }
                yMMMEd{
                    M{"E, d. MMM - E, d. MMM y"}
                    d{"E, d. - 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.yy - dd.MM.yy"}
                    d{"dd.MM.yy - dd.MM.yy"}
                    y{"dd.MM.yy - dd.MM.yy"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Jan.",
                        "Feb.",
                        "Mär.",
                        "Apr.",
                        "Mai",
                        "Juni",
                        "Juli",
                        "Aug.",
                        "Sep.",
                        "Okt.",
                        "Nov.",
                        "Dez.",
                    }
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "Januar",
                        "Februar",
                        "März",
                        "April",
                        "Mai",
                        "Juni",
                        "Juli",
                        "August",
                        "September",
                        "Oktober",
                        "November",
                        "Dezember",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Jan",
                        "Feb",
                        "Mär",
                        "Apr",
                        "Mai",
                        "Jun",
                        "Jul",
                        "Aug",
                        "Sep",
                        "Okt",
                        "Nov",
                        "Dez",
                    }
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                    wide{
                        "Januar",
                        "Februar",
                        "März",
                        "April",
                        "Mai",
                        "Juni",
                        "Juli",
                        "August",
                        "September",
                        "Oktober",
                        "November",
                        "Dezember",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. Quartal",
                        "2. Quartal",
                        "3. Quartal",
                        "4. Quartal",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. Quartal",
                        "2. Quartal",
                        "3. Quartal",
                        "4. Quartal",
                    }
                }
            }
        }
        islamic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE d. MMMM y G",
                "d. MMMM y G",
                "d. MMM y G",
                "d.M.y G",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d."}
                Gy{"y G"}
                H{"HH 'Uhr'"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d.M."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMdd{"dd. MMMM"}
                MMMd{"d. MMM"}
                MMd{"d.MM."}
                MMdd{"dd.MM."}
                Md{"d.M."}
                d{"d"}
                ms{"mm:ss"}
                y{"y G"}
                yyMM{"MM.y G"}
                yyMMM{"MMM y G"}
                yyMMdd{"dd.MM.y G"}
                yyQQQ{"QQQ y G"}
                yyQQQQ{"QQQQ y G"}
                yyyy{"y G"}
                yyyyM{"M.y G"}
                yyyyMEd{"E, d.M.y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d. MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyMd{"d.M.y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
        }
        japanese{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE d. MMMM y G",
                "d. MMMM y G",
                "d. MMM y G",
                "d.M.y GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d."}
                Gy{"y G"}
                H{"HH 'Uhr'"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d.M."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMdd{"dd. MMMM"}
                MMMd{"d. MMM"}
                MMd{"d.MM."}
                MMdd{"dd.MM."}
                Md{"d.M."}
                d{"d"}
                ms{"mm:ss"}
                y{"y G"}
                yyMM{"MM.y GGGGG"}
                yyMMM{"MMM y G"}
                yyMMdd{"dd.MM.y GGGGG"}
                yyQQQ{"QQQ y G"}
                yyQQQQ{"QQQQ y G"}
                yyyy{"y G"}
                yyyyM{"M.y GGGGG"}
                yyyyMEd{"E, d.M.y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d. MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
        }
        roc{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE d. MMMM y G",
                "d. MMMM y G",
                "d. MMM y G",
                "d.M.y GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d."}
                Gy{"y G"}
                H{"HH 'Uhr'"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d.M."}
                MMM{"LLL"}
                MMMEd{"E, d. MMM"}
                MMMMdd{"dd. MMMM"}
                MMMd{"d. MMM"}
                MMd{"d.MM."}
                MMdd{"dd.MM."}
                Md{"d.M."}
                d{"d"}
                ms{"mm:ss"}
                y{"y G"}
                yyMM{"MM.y GGGGG"}
                yyMMM{"MMM y G"}
                yyMMdd{"dd.MM.y GGGGG"}
                yyQQQ{"QQQ y G"}
                yyQQQQ{"QQQQ y G"}
                yyyy{"y G"}
                yyyyM{"M.y GGGGG"}
                yyyyMEd{"E, d.M.y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d. MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"‘"}
        alternateQuotationStart{"‚"}
        quotationEnd{"“"}
        quotationStart{"„"}
    }
    listPattern{
        standard{
            2{"{0} und {1}"}
            end{"{0} und {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"Englisches Einheitensystem"}
        US{"Angloamerikanisches Einheitsystem"}
        metric{"Metrisch"}
    }
    units{
        day{
            one{"{0} Tag"}
            other{"{0} Tage"}
        }
        day-future{
            one{"In {0} Tag"}
            other{"In {0} Tagen"}
        }
        day-past{
            one{"Vor {0} Tag"}
            other{"Vor {0} Tagen"}
        }
        hour{
            one{"{0} Stunde"}
            other{"{0} Stunden"}
        }
        hour-future{
            one{"In {0} Stunde"}
            other{"In {0} Stunden"}
        }
        hour-past{
            one{"Vor {0} Stunde"}
            other{"Vor {0} Stunden"}
        }
        minute{
            one{"{0} Minute"}
            other{"{0} Minuten"}
        }
        minute-future{
            one{"In {0} Minute"}
            other{"In {0} Minuten"}
        }
        minute-past{
            one{"Vor {0} Minute"}
            other{"Vor {0} Minuten"}
        }
        month{
            one{"{0} Monat"}
            other{"{0} Monate"}
        }
        month-future{
            one{"In {0} Monat"}
            other{"In {0} Monaten"}
        }
        month-past{
            one{"Vor {0} Monat"}
            other{"Vor {0} Monaten"}
        }
        second{
            one{"{0} Sekunde"}
            other{"{0} Sekunden"}
        }
        second-future{
            one{"In {0} Sekunde"}
            other{"In {0} Sekunden"}
        }
        second-past{
            one{"Vor {0} Sekunde"}
            other{"Vor {0} Sekunden"}
        }
        week{
            one{"{0} Woche"}
            other{"{0} Wochen"}
        }
        week-future{
            one{"In {0} Woche"}
            other{"In {0} Wochen"}
        }
        week-past{
            one{"Vor {0} Woche"}
            other{"Vor {0} Wochen"}
        }
        year{
            one{"{0} Jahr"}
            other{"{0} Jahre"}
        }
        year-future{
            one{"In {0} Jahr"}
            other{"In {0} Jahren"}
        }
        year-past{
            one{"Vor {0} Jahr"}
            other{"Vor {0} Jahren"}
        }
    }
    unitsShort{
        day{
            one{"{0} Tag"}
            other{"{0} Tage"}
        }
        hour{
            one{"{0} Std."}
            other{"{0} Std."}
        }
        minute{
            one{"{0} Min."}
            other{"{0} Min."}
        }
        month{
            one{"{0} Monat"}
            other{"{0} Monate"}
        }
        second{
            one{"{0} Sek."}
            other{"{0} Sek."}
        }
        week{
            one{"{0} Woche"}
            other{"{0} Wochen"}
        }
        year{
            one{"{0} Jahr"}
            other{"{0} Jahre"}
        }
    }
}
