﻿// ***************************************************************************
// *
// * Copyright (C) 2010 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/is.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/is.xml
 */
is{
    AuxExemplarCharacters{"[c q w z]"}
    ExemplarCharacters{"[a á b d ð e é f g h i í j k l m n o ó p r s t u ú v y ý þ æ ö]"}
    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 Þ Æ Ö]"}
    LocaleScript{
        "Latn",
    }
    NumberElements{
        ",",
        ".",
        ";",
        "%",
        "0",
        "#",
        "−",
        "×10^",
        "‰",
        "∞",
        "EiTa",
        "+",
    }
    NumberPatterns{
        "#,##0.###",
        "#,##0.00 ¤",
        "#,##0%",
        "#E0",
    }
    Version{"2.0.47.72"}
    calendar{
        gregorian{
            AmPmMarkers{
                "f.h.",
                "e.h.",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d. MMMM y",
                "d. MMMM y",
                "d.M.yyyy",
                "d.M.yyyy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L."}
                MEd{"E d.M."}
                MMM{"LLL"}
                MMMEd{"E d. MMM"}
                MMMMEd{"E d. MMMM"}
                MMMMd{"d. MMMM"}
                MMMd{"d. MMM"}
                Md{"d.M"}
                d{"d"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M. yyyy"}
                yMEd{"EEE d.M.yyyy"}
                yMMM{"MMM y"}
                yMMMEd{"EEE d. MMM y"}
                yMMMM{"MMMM y"}
                yQ{"Q. yyyy"}
                yQQQ{"QQQ y"}
                yyQ{"Q yy"}
                yyyyM{"M.yyyy"}
                yyyyMMMM{"MMMM y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "sun",
                        "mán",
                        "þri",
                        "mið",
                        "fim",
                        "fös",
                        "lau",
                    }
                    wide{
                        "sunnudagur",
                        "mánudagur",
                        "þriðjudagur",
                        "miðvikudagur",
                        "fimmtudagur",
                        "föstudagur",
                        "laugardagur",
                    }
                }
                stand-alone{
                    narrow{
                        "s",
                        "m",
                        "þ",
                        "m",
                        "f",
                        "f",
                        "l",
                    }
                }
            }
            eras{
                abbreviated{
                    "fyrir Krist",
                    "eftir Krist",
                }
                narrow{
                    "f.k.",
                    "e.k.",
                }
            }
            fields{
                day{
                    dn{"dagur"}
                    relative{
                        "-1"{"í gær"}
                        "-2"{"fyrir tveimur dögum"}
                        "-3"{"fyrir þremur dögum"}
                        "0"{"í dag"}
                        "1"{"á morgun"}
                        "2"{"eftir tvo daga"}
                        "3"{"eftir þrjá daga"}
                    }
                }
                dayperiod{
                    dn{"f.h./e.h."}
                }
                era{
                    dn{"tímabil"}
                }
                hour{
                    dn{"klukkustund"}
                }
                minute{
                    dn{"mínúta"}
                }
                month{
                    dn{"mánuður"}
                }
                second{
                    dn{"sekúnda"}
                }
                week{
                    dn{"vika"}
                }
                weekday{
                    dn{"vikudagur"}
                }
                year{
                    dn{"ár"}
                }
                zone{
                    dn{"svæði"}
                }
            }
            intervalFormats{
                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 v"}
                }
                M{
                    M{"M-M"}
                }
                MEd{
                    M{"E, d.M - E, d.M"}
                    d{"E, d.M - E, d.M"}
                }
                MMM{
                    M{"MMM-MMM"}
                }
                MMMEd{
                    M{"E, d. MMM - E, d. MMM"}
                    d{"E, d. - E, d. MMM"}
                }
                MMMd{
                    M{"d. MMM - d. MMM"}
                    d{"d.-d. MMM"}
                }
                Md{
                    M{"d.M - d.M"}
                    d{"d.M - d.M"}
                }
                fallback{"{0} - {1}"}
                hm{
                    h{"h:mm-h:mm a"}
                    m{"h:mm-h:mm a"}
                }
                hmv{
                    h{"h:mm-h:mm a v"}
                    m{"h:mm-h:mm a v"}
                }
                hv{
                    h{"h-h a v"}
                }
                y{
                    y{"y-y"}
                }
                yM{
                    M{"M.yyyy - M.yyyy"}
                    y{"M.yyyy - M.yyyy"}
                }
                yMEd{
                    M{"E, d.M.yyyy - E, d.M.yyyy"}
                    d{"E, d.M.yyyy - E, d.M.yyyy"}
                    y{"E, d.M.yyyy - E, d.M.yyyy"}
                }
                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"}
                }
                yMMMd{
                    M{"d. MMM - d. MMM y"}
                    d{"d.-d. MMM y"}
                    y{"d. MMM y - d. MMM y"}
                }
                yMd{
                    M{"d.M.yyyy - d.M.yyyy"}
                    d{"d.M.yyyy - d.M.yyyy"}
                    y{"d.M.yyyy - d.M.yyyy"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "jan",
                        "feb",
                        "mar",
                        "apr",
                        "maí",
                        "jún",
                        "júl",
                        "ágú",
                        "sep",
                        "okt",
                        "nóv",
                        "des",
                    }
                    wide{
                        "janúar",
                        "febrúar",
                        "mars",
                        "apríl",
                        "maí",
                        "júní",
                        "júlí",
                        "ágúst",
                        "september",
                        "október",
                        "nóvember",
                        "desember",
                    }
                }
                stand-alone{
                    narrow{
                        "j",
                        "f",
                        "m",
                        "a",
                        "m",
                        "j",
                        "j",
                        "á",
                        "s",
                        "o",
                        "n",
                        "d",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "F1",
                        "F2",
                        "F3",
                        "F4",
                    }
                    wide{
                        "1st fjórðungur",
                        "2nd fjórðungur",
                        "3rd fjórðungur",
                        "4th fjórðungur",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1F",
                        "2F",
                        "3F",
                        "4F",
                    }
                    wide{
                        "1. fjórðungur",
                        "2. fjórðungur",
                        "3. fjórðungur",
                        "4. fjórðungur",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"‘"}
        alternateQuotationStart{"‚"}
        quotationEnd{"“"}
        quotationStart{"„"}
    }
    listPattern{
        standard{
            2{"{0} og {1}"}
            end{"{0} og {1}"}
        }
    }
    measurementSystemNames{
        US{"bandarískt"}
        metric{"metrakerfi"}
    }
    units{
        day{
            one{"{0} dagur"}
            other{"{0} dagar"}
        }
        hour{
            one{"{0} klukkustund"}
            other{"{0} klukkustundir"}
        }
        minute{
            one{"{0} mínúta"}
            other{"{0} mínútur"}
        }
        month{
            one{"{0} mánuður"}
            other{"{0} mánuðir"}
        }
        second{
            one{"{0} sekúnda"}
            other{"{0} sekúndur"}
        }
        week{
            one{"{0} vika"}
            other{"{0} vikur"}
        }
        year{
            one{"{0} ár"}
            other{"{0} ár"}
        }
    }
}
