// *******************************************************************************
// *
// *   Copyright (C) 1997-2000, International Business Machines
// *   Corporation and others.  All Rights Reserved.
// *
// *******************************************************************************

is {
    CollationElements { "@& A < a\u0301, A\u0301 & D < \u00F0, \u00D0& E < e\u0301"
        ", E\u0301 & I < i\u0301, I\u0301 & O < o\u0301, O\u0301 & U < u\u0301, U\u0301 "
        "& Y < y\u0301, Y\u0301 & Z < \u00fe, \u00DE < \u00E6, \u00C6< o\u0308, O\u0308"
        " ; \u00F8, \u00D8" }
    Countries { 
        IS { "\u00CDsland" }
    }
    DateTimePatterns { 
            "HH:mm:ss z",
            "HH:mm:ss z",
            "HH:mm:ss",
            "HH:mm",
            "d. MMMM yyyy",
            "d. MMMM yyyy",
            "d.M.yyyy",
            "d.M.yyyy",
            "{1} {0}",
    }
    DayAbbreviations { 
            "sun.",
            "m\u00E1n.",
            "\u00FEri.",
            "mi\u00F0.",
            "fim.",
            "f\u00F6s.",
            "lau.",
    }
    DayNames { 
            "sunnudagur",
            "m\u00E1nudagur",
            "\u00FEri\u00F0judagur",
            "mi\u00F0vikudagur",
            "fimmtudagur",
            "f\u00F6studagur",
            "laugardagur",
    }
    Languages { 
        is { "\u00EDslenska" }
    }
    LocaleID { "040f" }
    LocaleString { "is" }
    MonthAbbreviations { 
            "jan.",
            "feb.",
            "mar.",
            "apr.",
            "ma\u00ED",
            "j\u00FAn.",
            "j\u00FAl.",
            "\u00E1g\u00FA.",
            "sep.",
            "okt.",
            "n\u00F3v.",
            "des.",
            "",
    }
    MonthNames { 
            "jan\u00FAar",
            "febr\u00FAar",
            "mars",
            "apr\u00EDl",
            "ma\u00ED",
            "j\u00FAn\u00ED",
            "j\u00FAl\u00ED",
            "\u00E1g\u00FAst",
            "september",
            "okt\u00F3ber",
            "n\u00F3vember",
            "desember",
            "",
    }
    NumberElements { 
            ",",
            ".",
            ";",
            "%",
            "0",
            "#",
            "-",
            "E",
            "\u2030",
            "\u221E",
            "\uFFFD",
    }
    ShortLanguage { "isl" }
    zoneStrings { 
        {
                "Africa/Casablanca",
                "GMT",
                "GMT",
                "GMT",
                "GMT",
        }
    }
}
