﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml
sn{
    AuxExemplarCharacters{"[q x]"}
    ExemplarCharacters{"[a b c d e f g h i j k l m n o p r s t u v w y z]"}
    ExemplarCharactersIndex{"[A B C D E F G H I J K L M N O P R S T U V W Y Z]"}
    ExemplarCharactersNumbers{"[\\- ‑ , . % ‰ + 0 1 2 3 4 5 6 7 8 9]"}
    NumberElements{
        latn{
            miscPatterns{
                atLeast{"≥{0}"}
                range{"{0}–{1}"}
            }
            patterns{
                accountingFormat{"¤#,##0.00;(¤#,##0.00)"}
                currencyFormat{"¤#,##0.00"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            symbols{
                decimal{"."}
                exponential{"E"}
                group{","}
                infinity{"∞"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
        minimumGroupingDigits{"1"}
    }
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d MMMM y G",
                "d MMMM y G",
                "d MMM y G",
                "dd/MM/y GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            DateTimeSkeletons{
                "HHmmsszzzz",
                "HHmmssz",
                "HHmmss",
                "HHmm",
                "GyMMMMEEEEd",
                "GyMMMMd",
                "GyMMMd",
                "GGGGGyMMdd",
            }
            availableFormats{
                E{"ccc"}
                Ed{"d, E"}
                Gy{"G y"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, M/d"}
                MMM{"LLL"}
                MMMEd{"E, MMM d"}
                MMMMEd{"E, MMMM d"}
                MMMMd{"MMMM d"}
                MMMd{"MMM d"}
                Md{"M/d"}
                d{"d"}
                hm{"h:mm a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"E, M/d/y"}
                yMMM{"MMM y"}
                yMMMEd{"E, MMM d, y"}
                yMMMM{"MMMM y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
        }
        gregorian{
            AmPmMarkers{
                "AM",
                "PM",
            }
            AmPmMarkersAbbr{
                "AM",
                "PM",
            }
            AmPmMarkersNarrow{
                "a",
                "p",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "y MMMM d, EEEE",
                "y MMMM d",
                "y MMM d",
                "y-MM-dd",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            DateTimeSkeletons{
                "HHmmsszzzz",
                "HHmmssz",
                "HHmmss",
                "HHmm",
                "yMMMMEEEEd",
                "yMMMMd",
                "yMMMd",
                "yMMdd",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                E{"ccc"}
                EHm{"E HH:mm"}
                EHms{"E HH:mm:ss"}
                Ed{"d, E"}
                Ehm{"E h:mm a"}
                Ehms{"E h:mm:ss a"}
                Gy{"G y"}
                GyMMM{"G y MMM"}
                GyMMMEd{"G y MMM d, E"}
                GyMMMd{"G y MMM d"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                Hmsv{"HH:mm:ss v"}
                Hmv{"HH:mm v"}
                M{"L"}
                MEd{"MM-dd, E"}
                MMM{"LLL"}
                MMMEd{"MMM d, E"}
                MMMMEd{"E, MMMM d"}
                MMMMd{"MMMM d"}
                MMMd{"MMM d"}
                Md{"MM-dd"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                hmsv{"h:mm:ss a v"}
                hmv{"h:mm a v"}
                ms{"mm:ss"}
                y{"y"}
                yM{"y-MM"}
                yMEd{"y-MM-dd, E"}
                yMMM{"y MMM"}
                yMMMEd{"y MMM d, E"}
                yMMMM{"y MMMM"}
                yMMMd{"y MMM d"}
                yMd{"y-MM-dd"}
                yQQQ{"y QQQ"}
                yQQQQ{"y QQQQ"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Svo",
                        "Muv",
                        "Chp",
                        "Cht",
                        "Chn",
                        "Chs",
                        "Mug",
                    }
                    narrow{
                        "S",
                        "M",
                        "C",
                        "C",
                        "C",
                        "C",
                        "M",
                    }
                    short{
                        "Sv",
                        "Mu",
                        "Cp",
                        "Ct",
                        "Cn",
                        "Cs",
                        "Mg",
                    }
                    wide{
                        "Svondo",
                        "Muvhuro",
                        "Chipiri",
                        "Chitatu",
                        "China",
                        "Chishanu",
                        "Mugovera",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Svo",
                        "Muv",
                        "Chp",
                        "Cht",
                        "Chn",
                        "Chs",
                        "Mug",
                    }
                    narrow{
                        "S",
                        "M",
                        "C",
                        "C",
                        "C",
                        "C",
                        "M",
                    }
                    short{
                        "Sv",
                        "Mu",
                        "Cp",
                        "Ct",
                        "Cn",
                        "Cs",
                        "Mg",
                    }
                    wide{
                        "Svondo",
                        "Muvhuro",
                        "Chipiri",
                        "Chitatu",
                        "China",
                        "Chishanu",
                        "Mugovera",
                    }
                }
            }
            dayPeriod{
                stand-alone{
                    abbreviated{
                        am{"AM"}
                        pm{"PM"}
                    }
                    narrow{
                        am{"AM"}
                        pm{"PM"}
                    }
                    wide{
                        am{"AM"}
                        pm{"PM"}
                    }
                }
            }
            eras{
                abbreviated{
                    "BC",
                    "AD",
                }
                abbreviated%variant{
                    "BCE",
                    "CE",
                }
                wide{
                    "Kristo asati auya",
                    "mugore ramambo vedu",
                }
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"MM–MM"}
                }
                MEd{
                    M{"MM-dd, E – MM-dd, E"}
                    d{"MM-dd, E – MM-dd, E"}
                }
                MMM{
                    M{"LLL–LLL"}
                }
                MMMEd{
                    M{"MMM d, E – MMM d, E"}
                    d{"MMM d, E – MMM d, E"}
                }
                MMMd{
                    M{"MMM d – MMM d"}
                    d{"MMM d–d"}
                }
                Md{
                    M{"MM-dd – MM-dd"}
                    d{"MM-dd – MM-dd"}
                }
                d{
                    d{"d–d"}
                }
                fallback{"{0} – {1}"}
                h{
                    a{"h a – h a"}
                    h{"h–h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm–h:mm a"}
                    m{"h:mm–h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm–h:mm a v"}
                    m{"h:mm–h:mm a v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h–h a v"}
                }
                y{
                    y{"y–y"}
                }
                yM{
                    M{"y-MM – y-MM"}
                    y{"y-MM – y-MM"}
                }
                yMEd{
                    M{"y-MM-dd, E – y-MM-dd, E"}
                    d{"y-MM-dd, E – y-MM-dd, E"}
                    y{"y-MM-dd, E – y-MM-dd, E"}
                }
                yMMM{
                    M{"y MMM–MMM"}
                    y{"y MMM – y MMM"}
                }
                yMMMEd{
                    M{"y MMM d, E – MMM d, E"}
                    d{"y MMM d, E – MMM d, E"}
                    y{"y MMM d, E – y MMM d, E"}
                }
                yMMMM{
                    M{"y MMMM–MMMM"}
                    y{"y MMMM – y MMMM"}
                }
                yMMMd{
                    M{"y MMM d – MMM d"}
                    d{"y MMM d–d"}
                    y{"y MMM d – y MMM d"}
                }
                yMd{
                    M{"y-MM-dd – y-MM-dd"}
                    d{"y-MM-dd – y-MM-dd"}
                    y{"y-MM-dd – y-MM-dd"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Ndi",
                        "Kuk",
                        "Kur",
                        "Kub",
                        "Chv",
                        "Chk",
                        "Chg",
                        "Nya",
                        "Gun",
                        "Gum",
                        "Mbu",
                        "Zvi",
                    }
                    narrow{
                        "N",
                        "K",
                        "K",
                        "K",
                        "C",
                        "C",
                        "C",
                        "N",
                        "G",
                        "G",
                        "M",
                        "Z",
                    }
                    wide{
                        "Ndira",
                        "Kukadzi",
                        "Kurume",
                        "Kubvumbi",
                        "Chivabvu",
                        "Chikumi",
                        "Chikunguru",
                        "Nyamavhuvhu",
                        "Gunyana",
                        "Gumiguru",
                        "Mbudzi",
                        "Zvita",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Ndi",
                        "Kuk",
                        "Kur",
                        "Kub",
                        "Chv",
                        "Chk",
                        "Chg",
                        "Nya",
                        "Gun",
                        "Gum",
                        "Mbu",
                        "Zvi",
                    }
                    narrow{
                        "N",
                        "K",
                        "K",
                        "K",
                        "C",
                        "C",
                        "C",
                        "N",
                        "G",
                        "G",
                        "M",
                        "Z",
                    }
                    wide{
                        "Ndira",
                        "Kukadzi",
                        "Kurume",
                        "Kubvumbi",
                        "Chivabvu",
                        "Chikumi",
                        "Chikunguru",
                        "Nyamavhuvhu",
                        "Gunyana",
                        "Gumiguru",
                        "Mbudzi",
                        "Zvita",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "K1",
                        "K2",
                        "K3",
                        "K4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "Kota 1",
                        "Kota 2",
                        "Kota 3",
                        "Kota 4",
                    }
                }
                stand-alone{
                    abbreviated{
                        "K1",
                        "K2",
                        "K3",
                        "K4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "Kota 1",
                        "Kota 2",
                        "Kota 3",
                        "Kota 4",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"’"}
        quotationEnd{"”"}
        quotationStart{"”"}
    }
    fields{
        day{
            dn{"Zuva"}
            relative{
                "-1"{"Nezuro"}
                "0"{"Nhasi"}
                "1"{"Mangwana"}
            }
        }
        era{
            dn{"Mukore"}
        }
        hour{
            dn{"Awa"}
        }
        minute{
            dn{"Mineti"}
        }
        month{
            dn{"Mwedzi"}
        }
        second{
            dn{"Sekondi"}
        }
        week{
            dn{"Vhiki"}
        }
        weekday{
            dn{"Zuva revhiki"}
        }
        year{
            dn{"Gore"}
        }
        zone{
            dn{"Nguva"}
        }
    }
}
