﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/yo_BJ.xml
// *
// ***************************************************************************
yo_BJ{
    ExemplarCharacters{
        "[a á à b d e é è ɛ {ɛ\u0301} {ɛ\u0300} f g {gb} h i í ì j k l m n o ó ò ɔ {ɔ"
        "\u0301} {ɔ\u0300} p r s {sh} t u ú ù w y]"
    }
    Version{"2.1.24.17"}
    calendar{
        gregorian{
            AmPmMarkers{
                "Àárɔ̀",
                "Ɔ̀sán",
            }
            AmPmMarkersAbbr{
                "Àárɔ̀",
                "Ɔ̀sán",
            }
            dayNames{
                format{
                    abbreviated{
                        "Àìkú",
                        "Ajé",
                        "Ìsɛ́gun",
                        "Ɔjɔ́rú",
                        "Ɔjɔ́bɔ",
                        "Ɛtì",
                        "Àbámɛ́ta",
                    }
                    wide{
                        "Ɔjɔ́ Àìkú",
                        "Ɔjɔ́ Ajé",
                        "Ɔjɔ́ Ìsɛ́gun",
                        "Ɔjɔ́rú",
                        "Ɔjɔ́bɔ",
                        "Ɔjɔ́ Ɛtì",
                        "Ɔjɔ́ Àbámɛ́ta",
                    }
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Shɛ́rɛ́",
                        "Èrèlè",
                        "Ɛrɛ̀nà",
                        "Ìgbé",
                        "Ɛ̀bibi",
                        "Òkúdu",
                        "Agɛmɔ",
                        "Ògún",
                        "Owewe",
                        "Ɔ̀wàrà",
                        "Bélú",
                        "Ɔ̀pɛ̀",
                    }
                    wide{
                        "Oshù Shɛ́rɛ́",
                        "Oshù Èrèlè",
                        "Oshù Ɛrɛ̀nà",
                        "Oshù Ìgbé",
                        "Oshù Ɛ̀bibi",
                        "Oshù Òkúdu",
                        "Oshù Agɛmɔ",
                        "Oshù Ògún",
                        "Oshù Owewe",
                        "Oshù Ɔ̀wàrà",
                        "Oshù Bélú",
                        "Oshù Ɔ̀pɛ̀",
                    }
                }
            }
            quarters{
                format{
                    wide{
                        "Kɔ́tà Kínní",
                        "Kɔ́tà Kejì",
                        "Kɔ́à Keta",
                        "Kɔ́tà Kɛrin",
                    }
                }
            }
        }
    }
    fields{
        day{
            dn{"Ɔjɔ́"}
            relative{
                "-1"{"Àná"}
                "-2"{"íjɛta"}
                "0"{"Òní"}
                "1"{"Ɔ̀la"}
                "2"{"òtúùnla"}
            }
        }
        dayperiod{
            dn{"Àárɔ̀/ɔ̀sán"}
        }
        minute{
            dn{"Ìsɛ́jú"}
        }
        second{
            dn{"Ìsɛ́jú Ààyá"}
        }
        week{
            dn{"Ɔ̀sè"}
        }
        weekday{
            dn{"Ɔjɔ́ Ɔ̀sɛ̀"}
        }
        year{
            dn{"Ɔdún"}
        }
    }
}
