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

it_CH {
    CurrencyElements { 
            "SFr.",
            "CHF",
            ".",
    }
    DateTimePatterns { 
            "H.mm' h' z",
            "HH:mm:ss z",
            "HH:mm:ss",
            "HH:mm",
            "EEEE, d. MMMM yyyy",
            "d. MMMM yyyy",
            "d-MMM-yy",
            "dd.MM.yy",
            "{1} {0}",
    }
    LocaleID { "0810" }
    LocaleString { "it_CH" }
    NumberElements { 
            ".",
            "'",
            ";",
            "%",
            "0",
            "#",
            "-",
            "E",
            "\u2030",
            "\u221E",
            "\uFFFD",
    }
    NumberPatterns { 
            "#,##0.###;-#,##0.###",
            "\u00A4 #,##0.00;\u00A4-#,##0.00",
            "#,##0%",
    }
    ShortCountry { "CHE" }
    zoneStrings { 
        {
                "Europe/Zurich",
                "CET",
                "CET",
                "CET",
                "CET",
        }
    }
}
