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

en_ZW {
    Version { "x0.0" }
    ///* Discarding duplicate data for tag: AmPmMarkers */
    CurrencyElements {
            "Z$",
            "ZWD ",
            ".",
    }
    DateTimePatterns {
            "h:mm:ss a",
            "h:mm:ss a",
            "h:mm:ss a",
            "h:mm a",
            "EEEE dd MMMM yyyy",
            "dd MMMM yyyy",
            "MMM dd,yy",
            "dd/MM/yy",
            "{1} {0}",
    }
    NumberPatterns {
            "#,##0.###;-#,##0.###",
            "\u00a4#,##0.00;-\u00a4#,##0.00",
            "#,##0%",
    }
    LocaleID{ "3009"}
}
