﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/mfe.xml
// *
// ***************************************************************************
mfe{
    ExemplarCharacters{"[a b c d e f g h i j k l m n o p 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 R S T U V W X Y Z]"}
    NumberElements{
        latn{
            symbols{
                group{" "}
            }
        }
    }
    Version{"2.1.19.14"}
    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"}
                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"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "dim",
                        "lin",
                        "mar",
                        "mer",
                        "ze",
                        "van",
                        "sam",
                    }
                    wide{
                        "dimans",
                        "lindi",
                        "mardi",
                        "merkredi",
                        "zedi",
                        "vandredi",
                        "samdi",
                    }
                }
                stand-alone{
                    narrow{
                        "d",
                        "l",
                        "m",
                        "m",
                        "z",
                        "v",
                        "s",
                    }
                }
            }
            eras{
                abbreviated{
                    "av. Z-K",
                    "ap. Z-K",
                }
                wide{
                    "avan Zezi-Krist",
                    "apre Zezi-Krist",
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "zan",
                        "fev",
                        "mar",
                        "avr",
                        "me",
                        "zin",
                        "zil",
                        "out",
                        "sep",
                        "okt",
                        "nov",
                        "des",
                    }
                    wide{
                        "zanvie",
                        "fevriye",
                        "mars",
                        "avril",
                        "me",
                        "zin",
                        "zilye",
                        "out",
                        "septam",
                        "oktob",
                        "novam",
                        "desam",
                    }
                }
                stand-alone{
                    narrow{
                        "z",
                        "f",
                        "m",
                        "a",
                        "m",
                        "z",
                        "z",
                        "o",
                        "s",
                        "o",
                        "n",
                        "d",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "T1",
                        "T2",
                        "T3",
                        "T4",
                    }
                    wide{
                        "1e trimes",
                        "2em trimes",
                        "3em trimes",
                        "4em trimes",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    fields{
        day{
            dn{"Zour"}
            relative{
                "-1"{"Yer"}
                "0"{"Zordi"}
                "1"{"Demin"}
            }
        }
        dayperiod{
            dn{"Peryod dan lazourne"}
        }
        era{
            dn{"Lepok"}
        }
        hour{
            dn{"Ler"}
        }
        minute{
            dn{"Minit"}
        }
        month{
            dn{"Mwa"}
        }
        second{
            dn{"Segonn"}
        }
        week{
            dn{"Semenn"}
        }
        weekday{
            dn{"Zour lasemenn"}
        }
        year{
            dn{"Lane"}
        }
        zone{
            dn{"Peryod letan"}
        }
    }
}
