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

hu {
    AmPmMarkers { 
            "DE",
            "DU",
    }
    CollationElements { 
	    Version { "1.0" }
		Override { "FALSE" }
		Sequence { "& C < cs , cS , Cs , CS & D < \u0111, \u0110 & G < gy, "
        "Gy, gY, GY & L < ly, Ly, lY, LY & O < o\u0308 , O\u0308 < o\u030B , O\u030B & S"
        " < sz , sZ , Sz , SZ & U < u\u0308 , U\u0308 < u\u030B , U\u030B & Z < zs , zS "
        ", Zs , ZS " }
	}
    Countries { 
        HU { "Magyarorsz\u00E1g" }
    }
    DateTimePatterns { 
            "H:mm:ss z",
            "H:mm:ss z",
            "H:mm:ss",
            "H:mm",
            "yyyy. MMMM d.",
            "yyyy. MMMM d.",
            "yyyy.MM.dd.",
            "yyyy.MM.dd.",
            "{1} {0}",
    }
    DayAbbreviations { 
            "V",
            "H",
            "K",
            "Sze",
            "Cs",
            "P",
            "Szo",
    }
    DayNames { 
            "vas\u00E1rnap",
            "h\u00E9tf\u0151",
            "kedd",
            "szerda",
            "cs\u00FCt\u00F6rt\u00F6k",
            "p\u00E9ntek",
            "szombat",
    }
    Eras { 
            "i.e.",
            "i.u.",
    }
    Languages { 
        hu { "magyar" }
    }
    LocaleID { "0e" }
    LocaleString { "hu" }
    MonthAbbreviations { 
            "jan.",
            "febr.",
            "m\u00E1rc.",
            "\u00E1pr.",
            "m\u00E1j.",
            "j\u00FAn.",
            "j\u00FAl.",
            "aug.",
            "szept.",
            "okt.",
            "nov.",
            "dec.",
            "",
    }
    MonthNames { 
            "janu\u00E1r",
            "febru\u00E1r",
            "m\u00E1rcius",
            "\u00E1prilis",
            "m\u00E1jus",
            "j\u00FAnius",
            "j\u00FAlius",
            "augusztus",
            "szeptember",
            "okt\u00F3ber",
            "november",
            "december",
            "",
    }
    NumberElements { 
            ",",
            "\u00A0",
            ";",
            "%",
            "0",
            "#",
            "-",
            "E",
            "\u2030",
            "\u221E",
            "\uFFFD",
    }
    ShortLanguage { "hun" }
    localPatternChars { "GanjkHmsSEDFwWxhKzAe" }
    zoneStrings { 
        {
                "Africa/Casablanca",
                "GMT",
                "GMT",
                "GMT",
                "GMT",
        }
    }
}
