﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
ebu{
    ExemplarCharacters{"[a b c d e f g h i ĩ j k l m n o p q r s t u ũ v w x y z]"}
    ExemplarCharactersIndex{"[A B C D E F G H I Ĩ J K L M N O P Q R S T U Ũ V W X Y Z]"}
    NumberElements{
        latn{
            patterns{
                accountingFormat{"¤#,##0.00;(¤#,##0.00)"}
                currencyFormat{"¤#,##0.00"}
            }
        }
    }
    Version{"2.1.25.97"}
    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}",
            }
            availableFormats{
                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"}
                yMMMd{"d MMM y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
        }
        gregorian{
            AmPmMarkers{
                "KI",
                "UT",
            }
            AmPmMarkersAbbr{
                "KI",
                "UT",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d MMMM y",
                "d MMMM y",
                "d MMM y",
                "dd/MM/y",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                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"}
                yMMMd{"d MMM y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Kma",
                        "Tat",
                        "Ine",
                        "Tan",
                        "Arm",
                        "Maa",
                        "NMM",
                    }
                    wide{
                        "Kiumia",
                        "Njumatatu",
                        "Njumaine",
                        "Njumatano",
                        "Aramithi",
                        "Njumaa",
                        "NJumamothii",
                    }
                }
                stand-alone{
                    narrow{
                        "K",
                        "N",
                        "N",
                        "N",
                        "A",
                        "M",
                        "N",
                    }
                }
            }
            eras{
                abbreviated{
                    "MK",
                    "TK",
                }
                wide{
                    "Mbere ya Kristo",
                    "Thutha wa Kristo",
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Mbe",
                        "Kai",
                        "Kat",
                        "Kan",
                        "Gat",
                        "Gan",
                        "Mug",
                        "Knn",
                        "Ken",
                        "Iku",
                        "Imw",
                        "Igi",
                    }
                    wide{
                        "Mweri wa mbere",
                        "Mweri wa kaĩri",
                        "Mweri wa kathatũ",
                        "Mweri wa kana",
                        "Mweri wa gatano",
                        "Mweri wa gatantatũ",
                        "Mweri wa mũgwanja",
                        "Mweri wa kanana",
                        "Mweri wa kenda",
                        "Mweri wa ikũmi",
                        "Mweri wa ikũmi na ũmwe",
                        "Mweri wa ikũmi na Kaĩrĩ",
                    }
                }
                stand-alone{
                    narrow{
                        "M",
                        "K",
                        "K",
                        "K",
                        "G",
                        "G",
                        "M",
                        "K",
                        "K",
                        "I",
                        "I",
                        "I",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "K1",
                        "K2",
                        "K3",
                        "K4",
                    }
                    wide{
                        "Kuota ya mbere",
                        "Kuota ya Kaĩrĩ",
                        "Kuota ya kathatu",
                        "Kuota ya kana",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            dn{"Mũthenya"}
            relative{
                "-1"{"Ĩgoro"}
                "0"{"Ũmũnthĩ"}
                "1"{"Rũciũ"}
            }
        }
        era{
            dn{"Ivinda"}
        }
        hour{
            dn{"Ithaa"}
        }
        minute{
            dn{"Ndagĩka"}
        }
        month{
            dn{"Mweri"}
        }
        second{
            dn{"Sekondi"}
        }
        week{
            dn{"Kiumia"}
        }
        weekday{
            dn{"Mũthenya kiumia-inĩ"}
        }
        year{
            dn{"Mwaka"}
        }
        zone{
            dn{"Gĩthaa"}
        }
    }
}
