﻿// ***************************************************************************
// *
// * Copyright (C) 2011 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/da.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/da.xml
 */
da{
    AuxExemplarCharacters{"[á é è ê ë ü ä ö]"}
    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 æ ø å]"}
    ExemplarCharactersCurrency{"[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"}
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{","}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
            }
        }
    }
    Version{"2.0.58.6"}
    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"}
                Hm{"HH.mm"}
                Hms{"HH.mm.ss"}
                M{"M"}
                MEd{"E. d/M"}
                MMM{"MMM"}
                MMMEd{"E d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMd{"d. MMM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d."}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
                ms{"mm.ss"}
                y{"y G"}
                yM{"M/y G"}
                yMEd{"EEE. d/M/y G"}
                yMMM{"MMM y G"}
                yMMMEd{"EEE. d. MMM y G"}
                yMMMd{"d. MMM y G"}
                yMd{"d/M/y G"}
                yQ{"Q y G"}
                yQQQ{"QQQ y G"}
                yyMM{"MM/y G"}
                yyMMM{"MMM y G"}
                yyQ{"Q. 'kvartal' y G"}
                yyyy{"y G"}
                yyyyMM{"MM/y G"}
                yyyyMMM{"MMM y G"}
            }
        }
        gregorian{
            AmPmMarkers{
                "f.m.",
                "e.m.",
            }
            DateTimePatterns{
                "HH.mm.ss zzzz",
                "HH.mm.ss z",
                "HH.mm.ss",
                "HH.mm",
                "EEEE 'den' d. MMMM y",
                "d. MMM y",
                "dd/MM/yyyy",
                "dd/MM/yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                EEEd{"EEE d"}
                Ed{"E d."}
                H{"HH"}
                Hm{"HH.mm"}
                Hms{"HH.mm.ss"}
                M{"M"}
                MEd{"E. d/M"}
                MMM{"MMM"}
                MMMEd{"E d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMd{"d. MMM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d."}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
                ms{"mm.ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"EEE. d/M/y"}
                yMMM{"MMM y"}
                yMMMEd{"EEE. d. MMM y"}
                yMMMd{"d. MMM y"}
                yMd{"d/M/y"}
                yQ{"Q yyyy"}
                yQQQ{"QQQ y"}
                yyMM{"MM/yy"}
                yyMMM{"MMM yy"}
                yyQ{"Q. 'kvartal' yy"}
                yyyy{"y"}
                yyyyMM{"MM/yyyy"}
                yyyyMMM{"MMM y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "søn",
                        "man",
                        "tir",
                        "ons",
                        "tor",
                        "fre",
                        "lør",
                    }
                    wide{
                        "søndag",
                        "mandag",
                        "tirsdag",
                        "onsdag",
                        "torsdag",
                        "fredag",
                        "lørdag",
                    }
                }
                stand-alone{
                    narrow{
                        "S",
                        "M",
                        "T",
                        "O",
                        "T",
                        "F",
                        "L",
                    }
                }
            }
            eras{
                abbreviated{
                    "f.Kr.",
                    "e.Kr.",
                }
                wide{
                    "f.Kr.",
                    "e.Kr.",
                }
            }
            fields{
                day{
                    dn{"dag"}
                    relative{
                        "-1"{"i går"}
                        "-2"{"i forgårs"}
                        "-3"{"for tre dage siden"}
                        "0"{"i dag"}
                        "1"{"i morgen"}
                        "2"{"i overmorgen"}
                        "3"{"om tre dage"}
                    }
                }
                dayperiod{
                    dn{"dagtid"}
                }
                era{
                    dn{"æra"}
                }
                hour{
                    dn{"time"}
                }
                minute{
                    dn{"minut"}
                }
                month{
                    dn{"måned"}
                    relative{
                        "-1"{"Sidste måned"}
                        "0"{"Denne måned"}
                        "1"{"Næste måned"}
                    }
                }
                second{
                    dn{"sekund"}
                }
                week{
                    dn{"uge"}
                    relative{
                        "-1"{"Sidste uge"}
                        "0"{"Denne uge"}
                        "1"{"Næste uge"}
                    }
                }
                weekday{
                    dn{"ugedag"}
                }
                year{
                    dn{"år"}
                    relative{
                        "-1"{"Sidste år"}
                        "0"{"I år"}
                        "1"{"Næste år"}
                    }
                }
                zone{
                    dn{"tidszone"}
                }
            }
            intervalFormats{
                H{
                    H{"HH-HH"}
                    a{"HH-HH"}
                }
                Hm{
                    H{"HH.mm-HH.mm"}
                    a{"HH.mm-HH.mm"}
                    m{"HH.mm-HH.mm"}
                }
                Hmv{
                    H{"HH.mm-HH.mm v"}
                    a{"HH.mm-HH.mm v"}
                    m{"HH.mm-HH.mm v"}
                }
                Hv{
                    H{"HH-HH v"}
                    a{"HH-HH 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 'den' d. MMM - E 'den' d. MMM"}
                    d{"E 'den' d. - E 'den' 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."}
                }
                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/yyyy - MM/yyyy"}
                    y{"MM/yyyy - MM/yyyy"}
                }
                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 'den' d. MMM - E 'den' d. MMM y"}
                    d{"E 'den' d. - E 'den' d. MMM y"}
                    y{"E 'den' d. MMM y - E 'den' 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.",
                        "mar.",
                        "apr.",
                        "maj",
                        "jun.",
                        "jul.",
                        "aug.",
                        "sep.",
                        "okt.",
                        "nov.",
                        "dec.",
                    }
                    wide{
                        "januar",
                        "februar",
                        "marts",
                        "april",
                        "maj",
                        "juni",
                        "juli",
                        "august",
                        "september",
                        "oktober",
                        "november",
                        "december",
                    }
                }
                stand-alone{
                    abbreviated{
                        "jan",
                        "feb",
                        "mar",
                        "apr",
                        "maj",
                        "jun",
                        "jul",
                        "aug",
                        "sep",
                        "okt",
                        "nov",
                        "dec",
                    }
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "K1",
                        "K2",
                        "K3",
                        "K4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1. kvartal",
                        "2. kvartal",
                        "3. kvartal",
                        "4. kvartal",
                    }
                }
            }
        }
        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."}
                H{"HH"}
                Hm{"HH.mm"}
                Hms{"HH.mm.ss"}
                M{"M"}
                MEd{"E. d/M"}
                MMM{"MMM"}
                MMMEd{"E d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMd{"d. MMM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d."}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
                ms{"mm.ss"}
                yyMM{"MM/y G"}
                yyMMM{"MMM y G"}
                yyQ{"Q. 'kvartal' y G"}
                yyyy{"y G"}
                yyyyM{"M/y G"}
                yyyyMEd{"EEE. d/M/y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"EEE. d. MMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyMd{"d/M/y G"}
                yyyyQ{"Q y G"}
                yyyyQQQ{"QQQ 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"}
                Hm{"HH.mm"}
                Hms{"HH.mm.ss"}
                M{"M"}
                MEd{"E. d/M"}
                MMM{"MMM"}
                MMMEd{"E d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMd{"d. MMM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d."}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
                ms{"mm.ss"}
                y{"y G"}
                yyMM{"MM/y GGGGG"}
                yyMMM{"MMM y G"}
                yyQ{"Q. 'kvartal' y G"}
                yyyy{"y G"}
                yyyyM{"M/y GGGGG"}
                yyyyMEd{"EEE. d/M/y GGGGG"}
                yyyyMM{"MM/y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"EEE. d. MMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyMd{"d/M/y GGGGG"}
                yyyyQ{"Q y G"}
                yyyyQQQ{"QQQ 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"}
                Hm{"HH.mm"}
                Hms{"HH.mm.ss"}
                M{"M"}
                MEd{"E. d/M"}
                MMM{"MMM"}
                MMMEd{"E d. MMM"}
                MMMMEd{"E, d. MMMM"}
                MMMd{"d. MMM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d."}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
                ms{"mm.ss"}
                y{"y G"}
                yyMM{"MM/y GGGGG"}
                yyMMM{"MMM y G"}
                yyQ{"Q. 'kvartal' y G"}
                yyyy{"y G"}
                yyyyM{"M/y GGGGG"}
                yyyyMEd{"EEE. d/M/y GGGGG"}
                yyyyMM{"MM/y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"EEE. d. MMM y G"}
                yyyyMMMd{"d. MMM y G"}
                yyyyMd{"d/M/y GGGGG"}
                yyyyQ{"Q y G"}
                yyyyQQQ{"QQQ y G"}
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"”"}
        quotationEnd{"”"}
        quotationStart{"”"}
    }
    listPattern{
        standard{
            2{"{0} og {1}"}
            end{"{0} og {1}"}
        }
    }
    measurementSystemNames{
        UK{"De britiske målesystemer"}
        US{"De amerikanske målesystemer"}
        metric{"Det metriske system"}
    }
    units{
        day{
            one{"{0} dag"}
            other{"{0} dage"}
        }
        day-future{
            0{"Om 0 dage"}
            1{"Om 1 dag"}
            other{"Om {0} dage"}
        }
        day-past{
            0{"0 dage siden"}
            1{"1 dag siden"}
            other{"{0} dage siden"}
        }
        hour{
            one{"{0} time"}
            other{"{0} timer"}
        }
        hour-future{
            0{"Om 0 timer"}
            1{"Om 1 time"}
            other{"Om {0} timer"}
        }
        hour-past{
            0{"0 timer siden"}
            1{"1 time siden"}
            other{"{0} timer siden"}
        }
        minute{
            one{"{0} minut"}
            other{"{0} minutter"}
        }
        minute-future{
            0{"Om 0 minutter"}
            1{"Om 1 minut"}
            other{"Om {0} minutter"}
        }
        minute-past{
            0{"0 minutter siden"}
            1{"1 minut siden"}
            other{"{0} minutter siden"}
        }
        month{
            one{"{0} måned"}
            other{"{0} måneder"}
        }
        month-future{
            0{"Om 0 måneder"}
            1{"Om 1 måned"}
            other{"Om {0} måneder"}
        }
        month-past{
            0{"0 måneder siden"}
            1{"1 måned siden"}
            other{"{0} måneder siden"}
        }
        second{
            one{"{0} sekund"}
            other{"{0} sekunder"}
        }
        second-future{
            0{"Om 0 sekunder"}
            1{"Om 1 sekund"}
            other{"Om {0} sekunder"}
        }
        second-past{
            0{"0 sekunder siden"}
            1{"1 sekund siden"}
            other{"{0} sekunder siden"}
        }
        week{
            one{"{0} uge"}
            other{"{0} uger"}
        }
        week-future{
            0{"Om 0 uger"}
            1{"om 1 uge"}
            other{"Om {0} uger"}
        }
        week-past{
            0{"0 uger siden"}
            1{"1 uge siden"}
            other{"{0} uger siden"}
        }
        year{
            one{"{0} år"}
            other{"{0} år"}
        }
        year-future{
            0{"Om 0 år"}
            1{"Om 1 år"}
            other{"Om {0} år"}
        }
        year-past{
            0{"0 år siden"}
            1{"1 år siden"}
            other{"{0} år siden"}
        }
    }
    unitsShort{
        day{
            one{"{0} dag"}
            other{"{0} dage"}
        }
        hour{
            one{"{0} t."}
            other{"{0} t."}
        }
        minute{
            one{"{0} min."}
            other{"{0} min."}
        }
        month{
            one{"{0} mdr."}
            other{"{0} mdr."}
        }
        second{
            one{"{0} sek."}
            other{"{0} sek."}
        }
        week{
            one{"{0} uge"}
            other{"{0} uger"}
        }
        year{
            one{"{0} år"}
            other{"{0} år"}
        }
    }
}
