﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
sg{
    AuxExemplarCharacters{"[c q x]"}
    ExemplarCharacters{"[a â ä b d e ê ë f g h i î ï j k l m n o ô ö p r s t u ù û ü v w y z]"}
    ExemplarCharactersIndex{"[A B D E F G H I J K L M N O P R S T U V W Y Z]"}
    NumberElements{
        latn{
            patterns{
                currencyFormat{"¤#,##0.00;¤-#,##0.00"}
            }
            symbols{
                decimal{","}
                group{"."}
            }
        }
    }
    Version{"2.1.27.40"}
    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",
                "d/M/y GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                M{"M"}
                MMM{"MMM"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMd{"d/MM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                ms{"m:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"E d/M/y"}
                yMMM{"MMM y"}
                yMMMEd{"E d MMM y"}
                yMMMM{"MMMM y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
        }
        gregorian{
            AmPmMarkers{
                "ND",
                "LK",
            }
            AmPmMarkersAbbr{
                "ND",
                "LK",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE d MMMM y",
                "d MMMM y",
                "d MMM, y",
                "d/M/y",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Day{"{0} ({2}: {1})"}
                Day-Of-Week{"{0} {1}"}
                Era{"{1} {0}"}
                Hour{"{0} ({2}: {1})"}
                Minute{"{0} ({2}: {1})"}
                Month{"{0} ({2}: {1})"}
                Quarter{"{0} ({2}: {1})"}
                Second{"{0} ({2}: {1})"}
                Timezone{"{0} {1}"}
                Week{"{0} ({2}: {1})"}
                Year{"{1} {0}"}
            }
            availableFormats{
                M{"M"}
                MMM{"MMM"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMd{"d/MM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                ms{"m:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"E d/M/y"}
                yMMM{"MMM y"}
                yMMMEd{"E d MMM y"}
                yMMMM{"MMMM y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "Bk1",
                        "Bk2",
                        "Bk3",
                        "Bk4",
                        "Bk5",
                        "Lâp",
                        "Lây",
                    }
                    wide{
                        "Bikua-ôko",
                        "Bïkua-ûse",
                        "Bïkua-ptâ",
                        "Bïkua-usïö",
                        "Bïkua-okü",
                        "Lâpôsö",
                        "Lâyenga",
                    }
                }
                stand-alone{
                    narrow{
                        "K",
                        "S",
                        "T",
                        "S",
                        "K",
                        "P",
                        "Y",
                    }
                }
            }
            eras{
                abbreviated{
                    "KnK",
                    "NpK",
                }
                wide{
                    "Kôzo na Krîstu",
                    "Na pekô tî Krîstu",
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Nye",
                        "Ful",
                        "Mbä",
                        "Ngu",
                        "Bêl",
                        "Fön",
                        "Len",
                        "Kük",
                        "Mvu",
                        "Ngb",
                        "Nab",
                        "Kak",
                    }
                    wide{
                        "Nyenye",
                        "Fulundïgi",
                        "Mbängü",
                        "Ngubùe",
                        "Bêläwü",
                        "Föndo",
                        "Lengua",
                        "Kükürü",
                        "Mvuka",
                        "Ngberere",
                        "Nabändüru",
                        "Kakauka",
                    }
                }
                stand-alone{
                    narrow{
                        "N",
                        "F",
                        "M",
                        "N",
                        "B",
                        "F",
                        "L",
                        "K",
                        "M",
                        "N",
                        "N",
                        "K",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "F4–1",
                        "F4–2",
                        "F4–3",
                        "F4–4",
                    }
                    wide{
                        "Fângbisïö ôko",
                        "Fângbisïö ûse",
                        "Fângbisïö otâ",
                        "Fângbisïö usïö",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"“"}
        quotationEnd{"»"}
        quotationStart{"«"}
    }
    fields{
        day{
            dn{"Lâ"}
            relative{
                "-1"{"Bîrï"}
                "0"{"Lâsô"}
                "1"{"Kêkerêke"}
            }
        }
        dayperiod{
            dn{"Na lâ"}
        }
        era{
            dn{"Kùotângo"}
        }
        hour{
            dn{"Ngbonga"}
        }
        minute{
            dn{"Ndurü ngbonga"}
        }
        month{
            dn{"Nze"}
        }
        second{
            dn{"Nzîna ngbonga"}
        }
        week{
            dn{"Dimâsi"}
        }
        weekday{
            dn{"Bïkua"}
        }
        year{
            dn{"Ngû"}
        }
        zone{
            dn{"Zukangbonga"}
        }
    }
}
