﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
bm{
    AuxExemplarCharacters{"[q v x]"}
    ExemplarCharacters{"[a b c d e ɛ f g h i j k l m n ɲ ŋ o ɔ p r s t u w y z]"}
    ExemplarCharactersIndex{"[A B C D E Ɛ F G H I J K L M N Ɲ Ŋ O Ɔ P R S T U W 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",
                "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"}
                yMM{"MM/y"}
                yMMM{"MMM y"}
                yMMMEd{"E d MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d MMM y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
        }
        gregorian{
            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}",
            }
            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"}
                yMM{"MM/y"}
                yMMM{"MMM y"}
                yMMMEd{"E d MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d MMM y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "kar",
                        "ntɛ",
                        "tar",
                        "ara",
                        "ala",
                        "jum",
                        "sib",
                    }
                    wide{
                        "kari",
                        "ntɛnɛ",
                        "tarata",
                        "araba",
                        "alamisa",
                        "juma",
                        "sibiri",
                    }
                }
                stand-alone{
                    narrow{
                        "K",
                        "N",
                        "T",
                        "A",
                        "A",
                        "J",
                        "S",
                    }
                }
            }
            eras{
                abbreviated{
                    "J.-C. ɲɛ",
                    "ni J.-C.",
                }
                wide{
                    "jezu krisiti ɲɛ",
                    "jezu krisiti minkɛ",
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "zan",
                        "feb",
                        "mar",
                        "awi",
                        "mɛ",
                        "zuw",
                        "zul",
                        "uti",
                        "sɛt",
                        "ɔku",
                        "now",
                        "des",
                    }
                    wide{
                        "zanwuye",
                        "feburuye",
                        "marisi",
                        "awirili",
                        "mɛ",
                        "zuwɛn",
                        "zuluye",
                        "uti",
                        "sɛtanburu",
                        "ɔkutɔburu",
                        "nowanburu",
                        "desanburu",
                    }
                }
                stand-alone{
                    narrow{
                        "Z",
                        "F",
                        "M",
                        "A",
                        "M",
                        "Z",
                        "Z",
                        "U",
                        "S",
                        "Ɔ",
                        "N",
                        "D",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "KS1",
                        "KS2",
                        "KS3",
                        "KS4",
                    }
                    wide{
                        "kalo saba fɔlɔ",
                        "kalo saba filanan",
                        "kalo saba sabanan",
                        "kalo saba naaninan",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"“"}
        quotationEnd{"»"}
        quotationStart{"«"}
    }
    fields{
        day{
            dn{"don"}
            relative{
                "-1"{"kunu"}
                "0"{"bi"}
                "1"{"sini"}
            }
        }
        dayperiod{
            dn{"sɔgɔma/tile/wula/su"}
        }
        era{
            dn{"tile"}
        }
        hour{
            dn{"lɛrɛ"}
        }
        minute{
            dn{"miniti"}
        }
        month{
            dn{"kalo"}
        }
        second{
            dn{"sekondi"}
        }
        week{
            dn{"dɔgɔkun"}
        }
        year{
            dn{"san"}
        }
        zone{
            dn{"sigikun tilena"}
        }
    }
}
