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

sq {
    AmPmMarkers { 
            "PD",
            "MD",
    }
    CollationElements { 
	    Version { "1.0" }
		Override { "FALSE" }
		Sequence { "@" }
	}
    Countries { 
        AL { "Shqip\u00EBria" }
    }
    DateTimePatterns { 
            "h.mm.ss.a z",
            "h.mm.ss.a z",
            "h:mm:ss.a",
            "h.mm.a",
            "yyyy-MM-dd",
            "yyyy-MM-dd",
            "yy-MM-dd",
            "yy-MM-dd",
            "{1} {0}",
    }
    DayAbbreviations { 
            "Die",
            "H\u00EBn",
            "Mar",
            "M\u00EBr",
            "Enj",
            "Pre",
            "Sht",
    }
    DayNames { 
            "e diel",
            "e h\u00EBn\u00EB",
            "e mart\u00EB",
            "e m\u00EBrkur\u00EB",
            "e enjte",
            "e premte",
            "e shtun\u00EB",
    }
    Eras { 
            "p.e.r.",
            "n.e.r.",
    }
    Languages { 
        sq { "shqipe" }
    }
    LocaleID { "1c" }
    LocaleString { "sq" }
    MonthAbbreviations { 
            "Jan",
            "Shk",
            "Mar",
            "Pri",
            "Maj",
            "Qer",
            "Kor",
            "Gsh",
            "Sht",
            "Tet",
            "N\u00EBn",
            "Dhj",
            "",
    }
    MonthNames { 
            "janar",
            "shkurt",
            "mars",
            "prill",
            "maj",
            "qershor",
            "korrik",
            "gusht",
            "shtator",
            "tetor",
            "n\u00EBntor",
            "dhjetor",
            "",
    }
    NumberElements { 
            ",",
            ".",
            ";",
            "%",
            "0",
            "#",
            "-",
            "E",
            "\u2030",
            "\u221E",
            "\uFFFD",
    }
    ShortLanguage { "sqi" }
    localPatternChars { "GanjkHmsSEDFwWxhKzAe" }
    zoneStrings { 
        {
                "Africa/Casablanca",
                "GMT",
                "GMT",
                "GMT",
                "GMT",
        }
    }
    LocaleScript{ 
                "Latn",  // ISO 15924 Name 

    }
}
