﻿// ***************************************************************************
// *
// * Copyright (C) 2012 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/fr.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/fr.xml
 */
fr{
    AuxExemplarCharacters{"[á å ä ã ā ē í ì ī ñ ó ò ö ø ú ǔ]"}
    ExemplarCharacters{
        "[a à â æ b c ç d e é è ê ë f g h i î ï j k l m n o ô œ p q r s t u ù û ü v w"
        " x y ÿ z]"
    }
    ExemplarCharactersCurrency{"[a b c d e f g h i j k l m n o p q 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 Q R S T U V W X Y Z]"}
    ExemplarCharactersPunctuation{"[\- ‐ – — , ; \: ! ? . … ’ « » ( ) \[ \] § @ * / \& # † ‡]"}
    LocaleScript{
        "Latn",
    }
    NumberElements{
        latn{
            patterns{
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0 %"}
                scientificFormat{"#E0"}
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{" "}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
            }
        }
    }
    Version{"2.0.66.10"}
    calendar{
        buddhist{
            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/yyyy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d"}
                Gy{"y G"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMd{"d MMM"}
                MMMdd{"dd MMM"}
                MMd{"d/MM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d"}
                ms{"mm:ss"}
                y{"y G"}
                yM{"M/y G"}
                yMEd{"E d/M/y G"}
                yMMM{"MMM y G"}
                yMMMEd{"E d MMM y G"}
                yMd{"d/M/y G"}
                yQ{"'T'Q y G"}
                yQQQ{"QQQ y G"}
                yyMM{"MM/y G"}
                yyMMM{"MMM y G"}
                yyMMMEd{"E d MMM y G"}
                yyMMMd{"d MMM y G"}
                yyQ{"'T'Q y G"}
                yyQQQQ{"QQQQ y G"}
                yyyyMMMM{"MMMM y G"}
            }
            eras{
                abbreviated{
                    "ère b.",
                }
                narrow{
                    "E.B.",
                }
                wide{
                    "ère bouddhiste",
                }
            }
        }
        chinese{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE d MMMM U",
                "d MMMM U",
                "d MMM U",
                "d/M/y",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMd{"d MMM"}
                Md{"d/M"}
                ms{"mm:ss"}
                y{"U"}
                yM{"M/y"}
                yMEd{"E d/M/y"}
                yMMM{"MMM U"}
                yMMMEd{"E d MMM U"}
                yMMMd{"d MMM U"}
                yMd{"d/M/y"}
                yQ{"'T'Q U"}
                yQQQ{"QQQ U"}
            }
            monthNames{
                format{
                    abbreviated{
                        "1yuè",
                        "2yuè",
                        "3yuè",
                        "4yuè",
                        "5yuè",
                        "6yuè",
                        "7yuè",
                        "8yuè",
                        "9yuè",
                        "10yuè",
                        "11yuè",
                        "12yuè",
                    }
                    wide{
                        "zhēngyuè",
                        "èryuè",
                        "sānyuè",
                        "sìyuè",
                        "wǔyuè",
                        "liùyuè",
                        "qīyuè",
                        "bāyuè",
                        "jiǔyuè",
                        "shíyuè",
                        "shíyīyuè",
                        "shí’èryuè",
                    }
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "AM",
                "PM",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE d MMMM y",
                "d MMMM y",
                "d MMM y",
                "dd/MM/yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMd{"d MMM"}
                MMMdd{"dd MMM"}
                MMd{"d/MM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M/yyyy"}
                yMEd{"E d/M/yyyy"}
                yMMM{"MMM y"}
                yMMMEd{"E d MMM y"}
                yMMMd{"d MMM y"}
                yMd{"d/M/yyyy"}
                yQ{"'T'Q y"}
                yQQQ{"QQQ y"}
                yyMM{"MM/yy"}
                yyMMM{"MMM yy"}
                yyMMMEd{"E d MMM yy"}
                yyMMMd{"d MMM yy"}
                yyQ{"'T'Q yy"}
                yyQQQQ{"QQQQ yy"}
                yyyyMMMM{"MMMM y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "dim.",
                        "lun.",
                        "mar.",
                        "mer.",
                        "jeu.",
                        "ven.",
                        "sam.",
                    }
                    wide{
                        "dimanche",
                        "lundi",
                        "mardi",
                        "mercredi",
                        "jeudi",
                        "vendredi",
                        "samedi",
                    }
                }
                stand-alone{
                    abbreviated{
                        "dim.",
                        "lun.",
                        "mar.",
                        "mer.",
                        "jeu.",
                        "ven.",
                        "sam.",
                    }
                    narrow{
                        "D",
                        "L",
                        "M",
                        "M",
                        "J",
                        "V",
                        "S",
                    }
                }
            }
            eras{
                abbreviated{
                    "av. J.-C.",
                    "ap. J.-C.",
                }
                wide{
                    "avant Jésus-Christ",
                    "après Jésus-Christ",
                }
            }
            fields{
                day{
                    dn{"jour"}
                    relative{
                        "-1"{"hier"}
                        "-2"{"avant-hier"}
                        "0"{"aujourd’hui"}
                        "1"{"demain"}
                        "2"{"après-demain"}
                    }
                }
                dayperiod{
                    dn{"cadran"}
                }
                era{
                    dn{"ère"}
                }
                hour{
                    dn{"heure"}
                }
                minute{
                    dn{"minute"}
                }
                month{
                    dn{"mois"}
                    relative{
                        "-1"{"le mois dernier"}
                        "0"{"ce mois-ci"}
                        "1"{"le mois prochain"}
                    }
                }
                second{
                    dn{"seconde"}
                }
                week{
                    dn{"semaine"}
                    relative{
                        "-1"{"la semaine dernière"}
                        "0"{"cette semaine"}
                        "1"{"la semaine prochaine"}
                    }
                }
                weekday{
                    dn{"jour de la semaine"}
                }
                year{
                    dn{"année"}
                    relative{
                        "-1"{"l’année dernière"}
                        "0"{"cette année"}
                        "1"{"l’année prochaine"}
                    }
                }
                zone{
                    dn{"fuseau horaire"}
                }
            }
            intervalFormats{
                H{
                    H{"HH – HH"}
                    a{"HH – HH"}
                }
                Hm{
                    H{"HH:mm – HH:mm"}
                    a{"HH:mm – HH:mm"}
                    m{"HH:mm – HH:mm"}
                }
                Hmv{
                    H{"HH:mm – HH:mm v"}
                    a{"HH:mm – HH:mm v"}
                    m{"HH:mm – HH:mm v"}
                }
                Hv{
                    H{"HH – HH v"}
                    a{"HH – HH v"}
                }
                M{
                    M{"M–M"}
                }
                MEd{
                    M{"E dd/MM - E dd/MM"}
                    d{"E dd/MM - E dd/MM"}
                }
                MMM{
                    M{"MMM–MMM"}
                }
                MMMEd{
                    M{"'du' E d MMM 'au' E d MMM"}
                    d{"'du' E d 'au' E d MMM"}
                }
                MMMd{
                    M{"'du' d MMM 'au' d MMM"}
                    d{"d–d MMM"}
                }
                Md{
                    M{"dd/MM - dd/MM"}
                    d{"dd/MM - dd/MM"}
                }
                d{
                    d{"d-d"}
                }
                fallback{"{0} – {1}"}
                h{
                    a{"h a – h a"}
                    h{"h – h a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm – h:mm a"}
                    m{"h:mm – h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm – h:mm a v"}
                    m{"h:mm – h:mm a v"}
                }
                hv{
                    a{"h a – h a v"}
                    h{"h – h a v"}
                }
                y{
                    y{"y-y"}
                }
                yM{
                    M{"MM/yy – MM/yy"}
                    y{"M/yyyy – M/yyyy"}
                }
                yMEd{
                    M{"E dd/MM/yy – E dd/MM/yy"}
                    d{"E dd/MM/yy – E dd/MM/yy"}
                    y{"E d/M/yyyy – E d/M/yyyy"}
                }
                yMMM{
                    M{"MMM–MMM y"}
                    y{"MMM y – MMM y"}
                }
                yMMMEd{
                    M{"E d MMM – E d MMM y"}
                    d{"E d – E d MMM y"}
                    y{"E d MMM y – E d MMM y"}
                }
                yMMMM{
                    M{"MMMM–MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"d MMM – d MMM y"}
                    d{"d–d MMM y"}
                    y{"d MMM y – d MMM y"}
                }
                yMd{
                    M{"d/M/yy – d/M/yy"}
                    d{"d/M/yy – d/M/yy"}
                    y{"d/M/yyyy – d/M/yyyy"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "janv.",
                        "févr.",
                        "mars",
                        "avr.",
                        "mai",
                        "juin",
                        "juil.",
                        "août",
                        "sept.",
                        "oct.",
                        "nov.",
                        "déc.",
                    }
                    wide{
                        "janvier",
                        "février",
                        "mars",
                        "avril",
                        "mai",
                        "juin",
                        "juillet",
                        "août",
                        "septembre",
                        "octobre",
                        "novembre",
                        "décembre",
                    }
                }
                stand-alone{
                    abbreviated{
                        "janv.",
                        "févr.",
                        "mars",
                        "avr.",
                        "mai",
                        "juin",
                        "juil.",
                        "août",
                        "sept.",
                        "oct.",
                        "nov.",
                        "déc.",
                    }
                    narrow{
                        "J",
                        "F",
                        "M",
                        "A",
                        "M",
                        "J",
                        "J",
                        "A",
                        "S",
                        "O",
                        "N",
                        "D",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "T1",
                        "T2",
                        "T3",
                        "T4",
                    }
                    narrow{
                        "T1",
                        "T2",
                        "T3",
                        "T4",
                    }
                    wide{
                        "1er trimestre",
                        "2e trimestre",
                        "3e trimestre",
                        "4e trimestre",
                    }
                }
            }
        }
        hebrew{
            monthNames{
                format{
                    wide{
                        "Tisseri",
                        "Hesvan",
                        "Kislev",
                        "Tébeth",
                        "Schébat",
                        "Adar I",
                        "Adar",
                        "Nissan",
                        "Iyar",
                        "Sivan",
                        "Tamouz",
                        "Ab",
                        "Elloul",
                        "Adar II",
                    }
                }
            }
        }
        islamic{
            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 G",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E d"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMd{"d MMM"}
                MMMdd{"dd MMM"}
                MMd{"d/MM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d"}
                ms{"mm:ss"}
                yyMM{"MM/y G"}
                yyMMM{"MMM y G"}
                yyMMMEd{"E d MMM y G"}
                yyMMMd{"d MMM y G"}
                yyQ{"'T'Q y G"}
                yyQQQQ{"QQQQ y G"}
                yyyy{"y G"}
                yyyyM{"M/y G"}
                yyyyMEd{"E d/M/y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d/M/y G"}
                yyyyQ{"'T'Q y G"}
                yyyyQQQ{"QQQ y G"}
            }
            eras{
                abbreviated{
                    "AH",
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "Mouh.",
                        "Saf.",
                        "Rabiʻ-oul-A.",
                        "Rabiʻ-out-T.",
                        "Djoum.-l-O.",
                        "Djoum.-t-T.",
                        "Radj.",
                        "Cha.",
                        "Ram.",
                        "Chaou.",
                        "Dou-l-Q.",
                        "Dou-l-H.",
                    }
                    default{"wide"}
                    wide{
                        "Mouharram",
                        "Safar",
                        "Rabiʻ-oul-Aououal",
                        "Rabiʻ-out-Tani",
                        "Djoumada-l-Oula",
                        "Djoumada-t-Tania",
                        "Radjab",
                        "Chaʻban",
                        "Ramadan",
                        "Chaououal",
                        "Dou-l-Qaʻda",
                        "Dou-l-Hidjja",
                    }
                }
                stand-alone{
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
            }
        }
        japanese{
            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{
                Ed{"E d"}
                Gy{"y G"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMd{"d MMM"}
                MMMdd{"dd MMM"}
                MMd{"d/MM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d"}
                ms{"mm:ss"}
                y{"y G"}
                yyMM{"MM/y GGGGG"}
                yyMMM{"MMM y G"}
                yyMMMEd{"E d MMM y G"}
                yyMMMd{"d MMM y G"}
                yyQ{"'T'Q y G"}
                yyQQQQ{"QQQQ y G"}
                yyyy{"y G"}
                yyyyM{"M/y GGGGG"}
                yyyyMEd{"E d/M/y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d/M/y GGGGG"}
                yyyyQ{"'T'Q y G"}
                yyyyQQQ{"QQQ y G"}
            }
        }
        roc{
            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{
                Ed{"E d"}
                Gy{"y G"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMd{"d MMM"}
                MMMdd{"dd MMM"}
                MMd{"d/MM"}
                MMdd{"dd/MM"}
                Md{"d/M"}
                d{"d"}
                ms{"mm:ss"}
                y{"y G"}
                yyMM{"MM/y GGGGG"}
                yyMMM{"MMM y G"}
                yyMMMEd{"E d MMM y G"}
                yyMMMd{"d MMM y G"}
                yyQ{"'T'Q y G"}
                yyQQQQ{"QQQQ y G"}
                yyyy{"y G"}
                yyyyM{"M/y GGGGG"}
                yyyyMEd{"E d/M/y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d/M/y GGGGG"}
                yyyyQ{"'T'Q y G"}
                yyyyQQQ{"QQQ y G"}
            }
            eras{
                abbreviated{
                    "avant RdC",
                    "RdC",
                }
            }
        }
    }
    contextTransforms{
        day-format-except-narrow:intvector{
            0,
            1,
        }
        day-standalone-except-narrow:intvector{
            0,
            1,
        }
        month-format-except-narrow:intvector{
            0,
            1,
        }
        month-standalone-except-narrow:intvector{
            0,
            1,
        }
    }
    delimiters{
        alternateQuotationEnd{"»"}
        alternateQuotationStart{"«"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    listPattern{
        standard{
            2{"{0} et {1}"}
            end{"{0} et {1}"}
        }
    }
    measurementSystemNames{
        UK{"impérial"}
        US{"américain"}
        metric{"métrique"}
    }
    units{
        day{
            one{"{0} jour"}
            other{"{0} jours"}
        }
        day-future{
            0{"dans 0 jour"}
            1{"dans 1 jour"}
            one{"dans {0} jour"}
            other{"dans {0} jours"}
        }
        day-past{
            0{"il y a 0 jour"}
            1{"il y a 1 jour"}
            one{"il y a {0} jour"}
            other{"il y a {0} jours"}
        }
        hour{
            one{"{0} heure"}
            other{"{0} heures"}
        }
        hour-future{
            0{"dans 0 heure"}
            1{"dans 1 heure"}
            one{"dans {0} heure"}
            other{"dans {0} heures"}
        }
        hour-past{
            0{"il y a 0 heure"}
            1{"il y a 1 heure"}
            one{"il y a {0} heure"}
            other{"il y a {0} heures"}
        }
        minute{
            one{"{0} minute"}
            other{"{0} minutes"}
        }
        minute-future{
            0{"dans 0 minute"}
            1{"dans 1 minute"}
            one{"dans {0} minute"}
            other{"dans {0} minutes"}
        }
        minute-past{
            0{"il y a 0 minute"}
            1{"il y a 1 minute"}
            one{"il y a {0} minute"}
            other{"il y a {0} minutes"}
        }
        month{
            one{"{0} mois"}
            other{"{0} mois"}
        }
        month-future{
            0{"dans 0 mois"}
            1{"dans 1 mois"}
            one{"dans {0} mois"}
            other{"dans {0} mois"}
        }
        month-past{
            0{"il y a 0 mois"}
            1{"il y a 1 mois"}
            one{"il y a {0} mois"}
            other{"il y a {0} mois"}
        }
        second{
            one{"{0} seconde"}
            other{"{0} secondes"}
        }
        second-future{
            0{"dans 0 seconde"}
            1{"dans 1 seconde"}
            one{"dans {0} seconde"}
            other{"dans {0} secondes"}
        }
        second-past{
            0{"il y a 0 seconde"}
            1{"il y a 1 seconde"}
            one{"il y a {0} seconde"}
            other{"il y a {0} secondes"}
        }
        week{
            one{"{0} semaine"}
            other{"{0} semaines"}
        }
        week-future{
            0{"dans 0 semaine"}
            1{"dans 1 semaine"}
            one{"dans {0} semaine"}
            other{"dans {0} semaines"}
        }
        week-past{
            0{"il y a 0 semaine"}
            1{"il y a 1 semaine"}
            one{"il y a {0} semaine"}
            other{"il y a {0} semaines"}
        }
        year{
            one{"{0} année"}
            other{"{0} années"}
        }
        year-future{
            0{"dans 0 an"}
            1{"dans 1 an"}
            one{"dans {0} an"}
            other{"dans {0} ans"}
        }
        year-past{
            0{"il y a 0 an"}
            1{"il y a 1 an"}
            one{"il y a {0} an"}
            other{"il y a {0} ans"}
        }
    }
    unitsShort{
        day{
            one{"{0} j"}
            other{"{0} j"}
        }
        hour{
            one{"{0} h"}
            other{"{0} h"}
        }
        minute{
            one{"{0} mn"}
            other{"{0} mn"}
        }
        month{
            one{"{0} mois"}
            other{"{0} mois"}
        }
        second{
            one{"{0} s"}
            other{"{0} s"}
        }
        week{
            one{"{0} sem."}
            other{"{0} sem."}
        }
        year{
            one{"{0} an"}
            other{"{0} ans"}
        }
    }
}
