﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
ee{
    AuxExemplarCharacters{"[ă â å ä ā æ c ç ĕ ê ë ĭ î ï j ñ ŏ ô ö ø œ q ŭ û ü ÿ]"}
    ExemplarCharacters{
        "[a á à ã b d ɖ e é è ẽ ɛ {ɛ\u0301} {ɛ\u0300} {ɛ\u0303} f ƒ g ɣ h x i í ì ĩ k"
        " l m n ŋ o ó ò õ ɔ {ɔ\u0301} {ɔ\u0300} {ɔ\u0303} p r s t u ú ù ũ v ʋ w y z]"
    }
    ExemplarCharactersIndex{"[A B D Ɖ E Ɛ F Ƒ G Ɣ H X I 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]"}
    ExemplarCharactersPunctuation{
        "[\\- ‐ ‑ – — , ; \\: ! ? . … ' ‘ ’ \u0022 “ ” ( ) \\[ \\] \\{ \\} § @ * / "
        "\\& # † ‡ ′ ″]"
    }
    MoreInformation{"..."}
    NumberElements{
        latn{
            miscPatterns{
                atLeast{"{0}+"}
                range{"{0}–{1}"}
            }
            patterns{
                accountingFormat{"¤#,##0.00;(¤#,##0.00)"}
                currencyFormat{"¤#,##0.00"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"akpe 0"}
                        other{"akpe 0"}
                    }
                    10000{
                        one{"akpe 00"}
                        other{"akpe 00"}
                    }
                    100000{
                        one{"akpe 000"}
                        other{"akpe 000"}
                    }
                    1000000{
                        one{"miliɔn 0"}
                        other{"miliɔn 0"}
                    }
                    10000000{
                        one{"miliɔn 00"}
                        other{"miliɔn 00"}
                    }
                    100000000{
                        one{"miliɔn 000"}
                        other{"miliɔn 000"}
                    }
                    1000000000{
                        one{"biliɔn 0"}
                        other{"biliɔn 0"}
                    }
                    10000000000{
                        one{"biliɔn 00"}
                        other{"biliɔn 00"}
                    }
                    100000000000{
                        one{"biliɔn 000"}
                        other{"biliɔn 000"}
                    }
                    1000000000000{
                        one{"0 triliɔn"}
                        other{"0 triliɔn"}
                    }
                    10000000000000{
                        one{"triliɔn 00"}
                        other{"triliɔn 00"}
                    }
                    100000000000000{
                        one{"triliɔn 000"}
                        other{"triliɔn 000"}
                    }
                }
            }
            patternsShort{
                currencyFormat{
                    1000{
                        one{"¤0K"}
                        other{"¤0K"}
                    }
                    10000{
                        one{"¤00K"}
                        other{"¤00K"}
                    }
                    100000{
                        one{"¤000K"}
                        other{"¤000K"}
                    }
                    1000000{
                        one{"¤0M"}
                        other{"¤0M"}
                    }
                    10000000{
                        one{"¤00M"}
                        other{"¤00M"}
                    }
                    100000000{
                        one{"¤000M"}
                        other{"¤000M"}
                    }
                    1000000000{
                        one{"¤0B"}
                        other{"¤0B"}
                    }
                    10000000000{
                        one{"¤00B"}
                        other{"¤00B"}
                    }
                    100000000000{
                        one{"¤000B"}
                        other{"¤000B"}
                    }
                    1000000000000{
                        one{"¤0T"}
                        other{"¤0T"}
                    }
                    10000000000000{
                        one{"¤00T"}
                        other{"¤00T"}
                    }
                    100000000000000{
                        one{"¤000T"}
                        other{"¤000T"}
                    }
                }
                decimalFormat{
                    1000{
                        one{"0K"}
                        other{"0K"}
                    }
                    10000{
                        one{"00K"}
                        other{"00K"}
                    }
                    100000{
                        one{"000K"}
                        other{"000K"}
                    }
                    1000000{
                        one{"0M"}
                        other{"0M"}
                    }
                    10000000{
                        one{"00M"}
                        other{"00M"}
                    }
                    100000000{
                        one{"000M"}
                        other{"000M"}
                    }
                    1000000000{
                        one{"0B"}
                        other{"0B"}
                    }
                    10000000000{
                        one{"00B"}
                        other{"00B"}
                    }
                    100000000000{
                        one{"000B"}
                        other{"000B"}
                    }
                    1000000000000{
                        one{"0T"}
                        other{"0T"}
                    }
                    10000000000000{
                        one{"00T"}
                        other{"00T"}
                    }
                    100000000000000{
                        one{"000T"}
                        other{"000T"}
                    }
                }
            }
            symbols{
                decimal{"."}
                exponential{"E"}
                group{","}
                infinity{"∞"}
                minusSign{"-"}
                nan{"mnn"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
        minimalPairs{
            ordinal{
                other{"{0}lia"}
            }
        }
        minimumGroupingDigits{"3"}
    }
    Version{"37"}
    calendar{
        generic{
            DateTimePatterns{
                "a 'ga' h:mm:ss zzzz",
                "a 'ga' h:mm:ss z",
                "a 'ga' h:mm:ss",
                "a 'ga' h:mm",
                "EEEE, MMMM d 'lia' y G",
                "MMMM d 'lia' y G",
                "MMM d 'lia', y G",
                "M/d/y GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                E{"ccc"}
                Ed{"E d"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, MMM d 'lia' y G"}
                GyMMMd{"MMM d 'lia', y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, M/d"}
                MMM{"LLL"}
                MMMEd{"E, MMM d 'lia'"}
                MMMMEd{"E, MMMM d 'lia'"}
                MMMMd{"MMMM d 'lia'"}
                MMMd{"MMM d 'lia'"}
                Md{"M/d"}
                d{"d"}
                h{"a 'ga' h"}
                hm{"a 'ga' h:mm"}
                hms{"a 'ga' h:mm:ss"}
                ms{"'aɖabaƒoƒo' mm:ss"}
                y{"y G"}
                yyyy{"y G"}
                yyyyM{"M/y G"}
                yyyyMEd{"E, M/d/y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, MMM d 'lia' y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"MMM d 'lia', y G"}
                yyyyMd{"M/d/y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            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{"'ɣleti' M 'lia' – 'ɣleti' M 'lia'"}
                }
                MEd{
                    M{"E, M/d – E, M/d"}
                    d{"E, M/d – E, M/d"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, MMM d 'lia' – E, MMM d 'lia'"}
                    d{"E, MMM d 'lia' – E, MMM d 'lia'"}
                }
                MMMd{
                    M{"MMM d 'lia' – MMM d 'lia'"}
                    d{"MMM d 'lia' – d 'lia'"}
                }
                Md{
                    M{"M/d – M/d"}
                    d{"M/d – M/d"}
                }
                d{
                    d{"d–d"}
                }
                fallback{"{0} - {1}"}
                h{
                    a{"a h – a h"}
                    h{"a h–h"}
                }
                hm{
                    a{"a 'ga' h:mm – a 'ga' h:mm"}
                    h{"a 'ga' h:mm - 'ga' h:mm"}
                    m{"a 'ga' h:mm – 'ga' h:mm"}
                }
                hmv{
                    a{"a 'ga' h:mm – a 'ga' h:mm v"}
                    h{"a 'ga' h:mm–h:mm v"}
                    m{"a h:mm–h:mm v"}
                }
                hv{
                    a{"a h – a h v"}
                    h{"a 'ga' h–h v"}
                }
                y{
                    y{"G y–y"}
                }
                yM{
                    M{"M/y – M/y G"}
                    y{"M/y – M/y G"}
                }
                yMEd{
                    M{"E, M/d/y – E, M/d/y G"}
                    d{"E, M/d/y – E, M/d/y G"}
                    y{"E, M/d/y – E, M/d/y G"}
                }
                yMMM{
                    M{"MMM–MMM y G"}
                    y{"MMM y – MMM y G"}
                }
                yMMMEd{
                    M{"E, MMM d 'lia' – E, MMM d 'lia', y G"}
                    d{"E, MMM d 'lia' – E, MMM d 'lia', y G"}
                    y{"E, MMM d 'lia', y – E, MMM d 'lia', y G"}
                }
                yMMMM{
                    M{"MMMM–MMMM y G"}
                    y{"MMMM y – MMMM y G"}
                }
                yMMMd{
                    M{"MMM d 'lia' – MMM d 'lia', y G"}
                    d{"MMM d 'lia' – d 'lia' , y G"}
                    y{"MMM d 'lia' , y – MMM d 'lia', y G"}
                }
                yMd{
                    M{"M/d/y – M/d/y G"}
                    d{"M/d/y – M/d/y G"}
                    y{"M/d/y – M/d/y G"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "ŋdi",
                "ɣetrɔ",
            }
            AmPmMarkersAbbr{
                "ŋdi",
                "ɣetrɔ",
            }
            AmPmMarkersNarrow{
                "ŋ",
                "ɣ",
            }
            DateTimePatterns{
                "a 'ga' h:mm:ss zzzz",
                "a 'ga' h:mm:ss z",
                "a 'ga' h:mm:ss",
                "a 'ga' h:mm",
                "EEEE, MMMM d 'lia' y",
                "MMMM d 'lia' y",
                "MMM d 'lia', y",
                "M/d/yy",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                Bh{"'ga' h 'le' B 'me'"}
                Bhm{"'ga' h 'aɖabaƒoƒo' mm 'le' B 'me'"}
                Bhms{"h:mm:ss 'le' B 'me'"}
                E{"ccc"}
                EBhm{"'ga' h:mm 'le' E B 'me'"}
                EBhms{"'ga' h:mm:ss 'le' E B 'me'"}
                EHm{"E 'ga' HH:mm"}
                EHms{"E 'ga' HH:mm:ss"}
                Ed{"E d"}
                Ehm{"E a 'ga' h:mm"}
                Ehms{"E a 'ga' h:mm:ss"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, MMM d 'lia' y G"}
                GyMMMd{"MMM d 'lia', y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                Hmsv{"'ga' HH:mm:ss 'le' v"}
                Hmv{"'ga' HH:mm 'le' v"}
                M{"L"}
                MEd{"E, M/d"}
                MMM{"LLL"}
                MMMEd{"E, MMM d 'lia'"}
                MMMMEd{"E, MMMM d 'lia'"}
                MMMMW{
                    one{"MMMM 'ƒe' 'kɔsiɖa' W 'lia'"}
                    other{"MMMM 'ƒe' 'kɔsiɖa' W 'lia'"}
                }
                MMMMd{"MMMM d 'lia'"}
                MMMd{"MMM d 'lia'"}
                Md{"M/d"}
                d{"d"}
                h{"a 'ga' h"}
                hm{"a 'ga' h:mm"}
                hms{"a 'ga' h:mm:ss"}
                hmsv{"a 'ga' h:mm:ss 'le' v"}
                hmv{"a 'ga' h:mm 'le' v"}
                ms{"'aɖabaƒoƒo' mm:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"E, M/d/y"}
                yMMM{"MMM y"}
                yMMMEd{"E, MMM d, y"}
                yMMMM{"MMMM y"}
                yMMMd{"MMM d 'lia', y"}
                yMd{"M/d/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
                yw{
                    one{"'kɔsiɖa' w 'lia' 'le' 'ƒe' Y 'me'"}
                    other{"'kɔsiɖa' w 'lia' 'le' 'ƒe' Y 'me'"}
                }
            }
            dayNames{
                format{
                    abbreviated{
                        "kɔs",
                        "dzo",
                        "bla",
                        "kuɖ",
                        "yaw",
                        "fiɖ",
                        "mem",
                    }
                    narrow{
                        "k",
                        "d",
                        "b",
                        "k",
                        "y",
                        "f",
                        "m",
                    }
                    short{
                        "kɔs",
                        "dzo",
                        "bla",
                        "kuɖ",
                        "yaw",
                        "fiɖ",
                        "mem",
                    }
                    wide{
                        "kɔsiɖa",
                        "dzoɖa",
                        "blaɖa",
                        "kuɖa",
                        "yawoɖa",
                        "fiɖa",
                        "memleɖa",
                    }
                }
                stand-alone{
                    abbreviated{
                        "kɔs",
                        "dzo",
                        "bla",
                        "kuɖ",
                        "yaw",
                        "fiɖ",
                        "mem",
                    }
                    narrow{
                        "k",
                        "d",
                        "b",
                        "k",
                        "y",
                        "f",
                        "m",
                    }
                    short{
                        "kɔs",
                        "dzo",
                        "bla",
                        "kuɖ",
                        "yaw",
                        "fiɖ",
                        "mem",
                    }
                    wide{
                        "kɔsiɖa",
                        "dzoɖa",
                        "blaɖa",
                        "kuɖa",
                        "yawoɖa",
                        "fiɖa",
                        "memleɖa",
                    }
                }
            }
            dayPeriod{
                format{
                    abbreviated{
                        afternoon1{"ŋdɔ"}
                        afternoon2{"ɣetrɔ"}
                        evening1{"fiẽ"}
                        morning1{"fɔŋli"}
                        morning2{"ŋdi"}
                        night1{"zã"}
                    }
                    narrow{
                        afternoon1{"ŋdɔ"}
                        afternoon2{"ɣetrɔ"}
                        evening1{"fiẽ"}
                        morning1{"fɔŋli"}
                        morning2{"ŋdi"}
                        night1{"zã"}
                    }
                    wide{
                        afternoon1{"ŋdɔ"}
                        afternoon2{"ɣetrɔ"}
                        evening1{"fiẽ"}
                        morning1{"fɔŋli"}
                        morning2{"ŋdi"}
                        night1{"zã"}
                    }
                }
                stand-alone{
                    abbreviated{
                        afternoon1{"ŋdɔ"}
                        afternoon2{"ɣetrɔ"}
                        am{"ŋdi"}
                        evening1{"fiẽ"}
                        morning1{"fɔŋli"}
                        morning2{"ŋdi"}
                        night1{"zã"}
                        pm{"ɣetrɔ"}
                    }
                    narrow{
                        afternoon1{"ŋdɔ"}
                        afternoon2{"ɣetrɔ"}
                        am{"ŋ"}
                        evening1{"fiẽ"}
                        morning1{"fɔŋli"}
                        morning2{"ŋdi"}
                        night1{"zã"}
                        pm{"ɣ"}
                    }
                    wide{
                        afternoon1{"ŋdɔ"}
                        afternoon2{"ɣetrɔ"}
                        am{"ŋdi"}
                        evening1{"fiẽ"}
                        morning1{"fɔŋli"}
                        morning2{"ŋdi"}
                        night1{"zã"}
                        pm{"ɣetrɔ"}
                    }
                }
            }
            eras{
                abbreviated{
                    "HYV",
                    "Yŋ",
                }
                abbreviated%variant{
                    "Bŋ",
                    "Eŋ",
                }
                wide{
                    "Hafi Yesu Va",
                    "Yesu ŋɔli",
                }
                wide%variant{
                    "Bŋ",
                    "Eŋ",
                }
            }
            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{"'ɣleti' M 'lia' – 'ɣleti' M 'lia'"}
                }
                MEd{
                    M{"E, M/d – E, M/d"}
                    d{"E, M/d – E, M/d"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"E, MMM d 'lia' – E, MMM d 'lia'"}
                    d{"E, MMM d 'lia' – E, MMM d 'lia'"}
                }
                MMMd{
                    M{"MMM d 'lia' – MMM d 'lia'"}
                    d{"MMM d 'lia' – d 'lia'"}
                }
                Md{
                    M{"M/d – M/d"}
                    d{"M/d – M/d"}
                }
                d{
                    d{"d–d"}
                }
                fallback{"{0} - {1}"}
                h{
                    a{"a h – a h"}
                    h{"a h–h"}
                }
                hm{
                    a{"a 'ga' h:mm – a 'ga' h:mm"}
                    h{"a 'ga' h:mm - 'ga' h:mm"}
                    m{"a 'ga' h:mm – 'ga' h:mm"}
                }
                hmv{
                    a{"a 'ga' h:mm – a 'ga' h:mm v"}
                    h{"a 'ga' h:mm–h:mm v"}
                    m{"a h:mm–h:mm v"}
                }
                hv{
                    a{"a h – a h v"}
                    h{"a 'ga' h–h v"}
                }
                y{
                    y{"y–y"}
                }
                yM{
                    M{"M/y – M/y"}
                    y{"M/y – M/y"}
                }
                yMEd{
                    M{"E, M/d/y – E, M/d/y"}
                    d{"E, M/d/y – E, M/d/y"}
                    y{"E, M/d/y – E, M/d/y"}
                }
                yMMM{
                    M{"MMM–MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMEd{
                    M{"E, MMM d 'lia' – E, MMM d 'lia', y"}
                    d{"E, MMM d 'lia' – E, MMM d 'lia', y"}
                    y{"E, MMM d 'lia', y – E, MMM d 'lia', y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"MMM d 'lia' – MMM d 'lia', y"}
                    d{"MMM d 'lia' – d 'lia' , y"}
                    y{"MMM d 'lia' , y – MMM d 'lia', y"}
                }
                yMd{
                    M{"M/d/y – M/d/y"}
                    d{"M/d/y – M/d/y"}
                    y{"M/d/y – M/d/y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "dzv",
                        "dzd",
                        "ted",
                        "afɔ",
                        "dam",
                        "mas",
                        "sia",
                        "dea",
                        "any",
                        "kel",
                        "ade",
                        "dzm",
                    }
                    narrow{
                        "d",
                        "d",
                        "t",
                        "a",
                        "d",
                        "m",
                        "s",
                        "d",
                        "a",
                        "k",
                        "a",
                        "d",
                    }
                    wide{
                        "dzove",
                        "dzodze",
                        "tedoxe",
                        "afɔfĩe",
                        "dama",
                        "masa",
                        "siamlɔm",
                        "deasiamime",
                        "anyɔnyɔ",
                        "kele",
                        "adeɛmekpɔxe",
                        "dzome",
                    }
                }
                stand-alone{
                    abbreviated{
                        "dzv",
                        "dzd",
                        "ted",
                        "afɔ",
                        "dam",
                        "mas",
                        "sia",
                        "dea",
                        "any",
                        "kel",
                        "ade",
                        "dzm",
                    }
                    narrow{
                        "d",
                        "d",
                        "t",
                        "a",
                        "d",
                        "m",
                        "s",
                        "d",
                        "a",
                        "k",
                        "a",
                        "d",
                    }
                    wide{
                        "dzove",
                        "dzodze",
                        "tedoxe",
                        "afɔfĩe",
                        "dama",
                        "masa",
                        "siamlɔm",
                        "deasiamime",
                        "anyɔnyɔ",
                        "kele",
                        "adeɛmekpɔxe",
                        "dzome",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "k1",
                        "k2",
                        "k3",
                        "k4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "kɔta gbãtɔ",
                        "kɔta evelia",
                        "kɔta etɔ̃lia",
                        "kɔta enelia",
                    }
                }
                stand-alone{
                    abbreviated{
                        "k1",
                        "k2",
                        "k3",
                        "k4",
                    }
                    wide{
                        "kɔta gbãtɔ",
                        "kɔta evelia",
                        "kɔta etɔ̃lia",
                        "kɔta enelia",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            dn{"ŋkeke"}
            relative{
                "-1"{"etsɔ si va yi"}
                "-2"{"nyitsɔ si va yi"}
                "0"{"egbe"}
                "1"{"etsɔ si gbɔna"}
                "2"{"nyitsɔ si gbɔna"}
            }
            relativeTime{
                future{
                    one{"le ŋkeke {0} me"}
                    other{"le ŋkeke {0} wo me"}
                }
                past{
                    one{"ŋkeke {0} si va yi"}
                    other{"ŋkeke {0} si wo va yi"}
                }
            }
        }
        dayperiod{
            dn{"ŋkekea me"}
        }
        era{
            dn{"ŋɔli"}
        }
        fri{
            relative{
                "-1"{"fiɖa si va yi"}
                "0"{"fiɖa sia"}
                "1"{"fiɖa si gbɔ na"}
            }
        }
        hour{
            dn{"gaƒoƒo"}
            relativeTime{
                future{
                    one{"le gaƒoƒo {0} me"}
                    other{"le gaƒoƒo {0} wo me"}
                }
                past{
                    one{"gaƒoƒo {0} si va yi"}
                    other{"gaƒoƒo {0} si wo va yi"}
                }
            }
        }
        minute{
            dn{"aɖabaƒoƒo"}
            relativeTime{
                future{
                    one{"le aɖabaƒoƒo {0} me"}
                    other{"le aɖabaƒoƒo {0} wo me"}
                }
                past{
                    one{"aɖabaƒoƒo {0} si va yi"}
                    other{"aɖabaƒoƒo {0} si wo va yi"}
                }
            }
        }
        mon{
            relative{
                "-1"{"dzoɖa si va yi"}
                "0"{"dzoɖa sia"}
                "1"{"dzoɖa si gbɔ na"}
            }
        }
        month{
            dn{"ɣleti"}
            relative{
                "-1"{"ɣleti si va yi"}
                "0"{"ɣleti sia"}
                "1"{"ɣleti si gbɔ na"}
            }
            relativeTime{
                future{
                    one{"le ɣleti {0} me"}
                    other{"le ɣleti {0} wo me"}
                }
                past{
                    one{"ɣleti {0} si va yi"}
                    other{"ɣleti {0} si wo va yi"}
                }
            }
        }
        month-narrow{
            dn{"ɣleti"}
        }
        month-short{
            dn{"ɣleti"}
        }
        quarter{
            dn{"kɔta"}
            relativeTime{
                future{
                    one{"le kɔta {0} si gbɔ na me"}
                    other{"le kɔta {0} si gbɔ na me"}
                }
                past{
                    one{"kɔta {0} si va yi me"}
                    other{"kɔta {0} si va yi me"}
                }
            }
        }
        quarter-narrow{
            dn{"kɔta"}
            relativeTime{
                future{
                    one{"le kɔta {0} si gbɔna me"}
                    other{"le kɔta {0} si gbɔ na me"}
                }
                past{
                    one{"kɔta {0} si va yi me"}
                    other{"kɔta {0} si va yi me"}
                }
            }
        }
        quarter-short{
            dn{"kɔta"}
            relativeTime{
                future{
                    one{"le kɔta {0} si gbɔ na me"}
                    other{"le kɔta {0} si gbɔ na me"}
                }
                past{
                    one{"kɔta {0} si va yi me"}
                    other{"kɔta {0} si va yi me"}
                }
            }
        }
        sat{
            relative{
                "-1"{"memleɖa si va yi"}
                "0"{"memleɖa sia"}
                "1"{"memleɖa si gbɔ na"}
            }
        }
        second{
            dn{"sekend"}
            relative{
                "0"{"fifi"}
            }
            relativeTime{
                future{
                    one{"le sekend {0} me"}
                    other{"le sekend {0} wo me"}
                }
                past{
                    one{"sekend {0} si va yi"}
                    other{"sekend {0} si wo va yi"}
                }
            }
        }
        sun{
            relative{
                "-1"{"kɔsiɖagbe si va yi"}
                "0"{"kɔsiɖa sia gbe"}
                "1"{"kɔsiɖagbe si gbɔ na"}
            }
        }
        thu{
            relative{
                "-1"{"yawoɖa si va yi"}
                "0"{"yawoɖa sia"}
                "1"{"yawoɖa si gbɔ na"}
            }
        }
        tue{
            relative{
                "-1"{"blaɖa si va yi"}
                "0"{"blaɖa sia"}
                "1"{"blaɖa si gbɔ na"}
            }
        }
        wed{
            relative{
                "-1"{"kuɖa si va yi"}
                "0"{"kuɖa sia"}
                "1"{"kuɖa si gbɔ na"}
            }
        }
        week{
            dn{"kɔsiɖa ɖeka"}
            relative{
                "-1"{"kɔsiɖa si va yi"}
                "0"{"kɔsiɖa sia"}
                "1"{"kɔsiɖa si gbɔ na"}
            }
            relativeTime{
                future{
                    one{"le kɔsiɖa {0} me"}
                    other{"le kɔsiɖa {0} wo me"}
                }
                past{
                    one{"kɔsiɖa {0} si va yi"}
                    other{"kɔsiɖa {0} si wo va yi"}
                }
            }
        }
        weekday{
            dn{"kɔsiɖa me ŋkeke"}
        }
        year{
            dn{"ƒe"}
            relative{
                "-1"{"ƒe si va yi"}
                "0"{"ƒe sia"}
                "1"{"ƒe si gbɔ na"}
            }
            relativeTime{
                future{
                    one{"le ƒe {0} me"}
                    other{"le ƒe {0} me"}
                }
                past{
                    one{"ƒe {0} si va yi"}
                    other{"ƒe {0} si wo va yi"}
                }
            }
        }
        year-narrow{
            dn{"ƒe"}
            relativeTime{
                future{
                    one{"le ƒe {0} si gbɔna me"}
                    other{"le ƒe {0} si gbɔna me"}
                }
                past{
                    one{"ƒe {0} si va yi me"}
                    other{"ƒe {0} si va yi me"}
                }
            }
        }
        year-short{
            dn{"ƒe"}
            relativeTime{
                future{
                    one{"le ƒe {0} me"}
                    other{"le ƒe {0} me"}
                }
                past{
                    one{"le ƒe {0} si va yi me"}
                    other{"le ƒe {0} si va yi me"}
                }
            }
        }
        zone{
            dn{"nutomegaƒoƒo"}
        }
    }
    listPattern{
        standard{
            2{"{0} kple {1}"}
            end{"{0}, kple {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} kple {1}"}
            end{"{0}, kple {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-narrow{
            2{"{0} kple {1}"}
            end{"{0}, kple {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-short{
            2{"{0} kple {1}"}
            end{"{0}, kple {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"uk"}
        US{"us"}
        metric{"metric"}
    }
}
