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

sv {
    CollationElements { "& Z < \u00E6 , \u00C6 < a\u030A , A\u030A , aa , aA , A"
        "a , AA< a\u0308 , A\u0308 < o\u0308 , O\u0308 ; u\u030B , U\u030B < o\u030B , O"
        "\u030B ; \u00F8 , \u00D8 & V ; w , W& Y, u\u0308 , U\u0308" }
    Countries { 
        SE { "Sverige" }
    }
    DateTimeElements { 
            "2",
            "4",
    }
    DateTimePatterns { 
            "'kl 'H:mm z",
            "HH:mm:ss z",
            "HH:mm:ss",
            "HH:mm",
            "'den 'd MMMM yyyy",
            "'den 'd MMMM yyyy",
            "yyyy-MMM-dd",
            "yyyy-MM-dd",
            "{1} {0}",
    }
    DayAbbreviations { 
            "s\u00F6",
            "m\u00E5",
            "ti",
            "on",
            "to",
            "fr",
            "l\u00F6",
    }
    DayNames { 
            "s\u00F6ndag",
            "m\u00E5ndag",
            "tisdag",
            "onsdag",
            "torsdag",
            "fredag",
            "l\u00F6rdag",
    }
    Languages { 
        sv { "svenska" }
    }
    LocaleID { "041d" }
    LocaleString { "sv" }
    MonthAbbreviations { 
            "jan",
            "feb",
            "mar",
            "apr",
            "maj",
            "jun",
            "jul",
            "aug",
            "sep",
            "okt",
            "nov",
            "dec",
            "",
    }
    MonthNames { 
            "januari",
            "februari",
            "mars",
            "april",
            "maj",
            "juni",
            "juli",
            "augusti",
            "september",
            "oktober",
            "november",
            "december",
            "",
    }
    NumberElements { 
            ",",
            "\u00A0",
            ";",
            "%",
            "0",
            "#",
            "-",
            "E",
            "\u2030",
            "\u221E",
            "\uFFFD",
    }
    Eras { 
            "f.Kr.",
            "e.Kr.",
    }
    ShortLanguage { "swe" }
    zoneStrings { 
        {
                "Europe/Stockholm",
                "Central European Time",
                "CET",
                "Central European Time (DST)",
                "CET",
             	"Stockholm",
        }
    }
}
