﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/ca.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/ca.xml
 */
ca{
    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]"}
    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{
        "[\\- ‐ – — , ; \\: ! ¡ ? ¿ . … ' ‘ ’ \u0022 “ ” « » ( ) \\[ \\] § @ * / "
        "\\\\ \\& # † ‡ ′ ″]"
    }
    LocaleScript{
        "Latn",
    }
    NumberElements{
        latn{
            miscPatterns{
                atLeast{"≥ {0}"}
                range{"{0}-{1}"}
            }
            patterns{
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            patternsLong{
                decimalFormat{
                    1000{
                        one{"0 miler"}
                        other{"0 milers"}
                    }
                    10000{
                        one{"00 milers"}
                        other{"00 milers"}
                    }
                    100000{
                        one{"000 milers"}
                        other{"000 milers"}
                    }
                    1000000{
                        one{"0 milió"}
                        other{"0 milions"}
                    }
                    10000000{
                        one{"00 milions"}
                        other{"00 milions"}
                    }
                    100000000{
                        one{"000 milions"}
                        other{"000 milions"}
                    }
                    1000000000{
                        one{"0 miler de milions"}
                        other{"0 milers de milions"}
                    }
                    10000000000{
                        one{"00 milers de milions"}
                        other{"00 milers de milions"}
                    }
                    100000000000{
                        one{"000 milers de milions"}
                        other{"000 milers de milions"}
                    }
                    1000000000000{
                        one{"0 bilió"}
                        other{"0 bilions"}
                    }
                    10000000000000{
                        one{"00 bilions"}
                        other{"00 bilions"}
                    }
                    100000000000000{
                        one{"000 bilions"}
                        other{"000 bilions"}
                    }
                }
            }
            patternsShort{
                decimalFormat{
                    1000{
                        one{"0m"}
                        other{"0m"}
                    }
                    10000{
                        one{"00m"}
                        other{"00m"}
                    }
                    100000{
                        one{"000m"}
                        other{"000m"}
                    }
                    1000000{
                        one{"0M"}
                        other{"0M"}
                    }
                    10000000{
                        one{"00 M"}
                        other{"00 M"}
                    }
                    100000000{
                        one{"000 M"}
                        other{"000 M"}
                    }
                    1000000000{
                        one{"0000 M"}
                        other{"0000 M"}
                    }
                    10000000000{
                        one{"00mM"}
                        other{"00mM"}
                    }
                    100000000000{
                        one{"000mM"}
                        other{"000mM"}
                    }
                    1000000000000{
                        one{"0B"}
                        other{"0B"}
                    }
                    10000000000000{
                        one{"00 B"}
                        other{"00 B"}
                    }
                    100000000000000{
                        one{"000 B"}
                        other{"000 B"}
                    }
                }
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
    }
    Version{"2.0.92.87"}
    calendar{
        buddhist{
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "EEEE, dd MMMM y G",
                "d MMMM y G",
                "d MMM y G",
                "dd/MM/y GGGGG",
                "{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"}
                d{"d"}
                y{"y G"}
            }
            eras{
                abbreviated{
                    "eB",
                }
            }
        }
        chinese{
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "EEEE, dd MMMM UU",
                "d MMMM U",
                "d MMM U",
                "d/M/y",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            cyclicNameSets{
                dayParts{
                    format{
                        abbreviated{
                            "zi",
                            "chou",
                            "yin",
                            "mao",
                            "chen",
                            "si",
                            "wu",
                            "wei",
                            "shen",
                            "you",
                            "xu",
                            "hai",
                        }
                    }
                }
                years{
                    format{
                        abbreviated{
                            "jia-zi",
                            "yi-chou",
                            "bing-yin",
                            "ding-mao",
                            "wu-chen",
                            "ji-si",
                            "geng-wu",
                            "xin-wei",
                            "ren-shen",
                            "gui-you",
                            "jia-xu",
                            "yi-hai",
                            "bing-zi",
                            "ding-chou",
                            "wu-yin",
                            "ji-mao",
                            "geng-chen",
                            "xin-si",
                            "ren-wu",
                            "gui-wei",
                            "jia-shen",
                            "yi-you",
                            "bing-xu",
                            "ding-hai",
                            "wu-zi",
                            "ji-chou",
                            "geng-yin",
                            "xin-mao",
                            "ren-chen",
                            "gui-si",
                            "jia-wu",
                            "yi-wei",
                            "bing-shen",
                            "ding-you",
                            "wu-xu",
                            "ji-hai",
                            "geng-zi",
                            "xin-chou",
                            "ren-yin",
                            "gui-mao",
                            "jia-chen",
                            "yi-si",
                            "bing-wu",
                            "ding-wei",
                            "wu-shen",
                            "ji-you",
                            "geng-xu",
                            "xin-hai",
                            "ren-zi",
                            "gui-chou",
                            "jia-yin",
                            "yi-mao",
                            "bing-chen",
                            "ding-si",
                            "wu-wu",
                            "ji-wei",
                            "geng-shen",
                            "xin-you",
                            "ren-xu",
                            "gui-hai",
                        }
                    }
                }
                zodiacs{
                    format{
                        abbreviated{
                            "zi",
                            "chou",
                            "yin",
                            "mao",
                            "chen",
                            "si",
                            "wu",
                            "wei",
                            "shen",
                            "you",
                            "xu",
                            "hai",
                        }
                    }
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    wide{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    wide{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
            }
        }
        generic{
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "EEEE d MMMM 'de' y G",
                "d MMMM 'de' y G",
                "dd/MM/y G",
                "dd/MM/yy GGGGG",
                "{1}, {0}",
                "{1}, {0}",
                "{1}, {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            availableFormats{
                Ed{"E d"}
                Gy{"y G"}
                GyMMM{"LLL y G"}
                GyMMMEd{"E, d MMM, y G"}
                GyMMMM{"LLLL 'de' y G"}
                GyMMMd{"d MMM y G"}
                H{"H"}
                Hm{"H.mm"}
                Hms{"H.mm.ss"}
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                Md{"d/M"}
                d{"d"}
                h{"h a"}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
                ms{"mm.ss"}
                y{"y G"}
                yyyy{"y G"}
                yyyyM{"M/y G"}
                yyyyMEd{"E, d.M.y G"}
                yyyyMMM{"LLL y G"}
                yyyyMMMEd{"E, d MMM, y G"}
                yyyyMMMM{"LLLL 'de' y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d/M/y G"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            intervalFormats{
                H{
                    H{"H-H"}
                }
                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{"H-H 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{"E d MMM - E d MMM"}
                    d{"E d - E d MMM"}
                }
                MMMd{
                    M{"d MMM - 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 G"}
                }
                yM{
                    M{"MM/y - MM/y GGGG"}
                    y{"MM/y - MM/y GGGG"}
                }
                yMEd{
                    M{"E dd/MM/y - E dd/MM/y GGGG"}
                    d{"E dd/MM/y - E dd/MM/y GGGG"}
                    y{"E dd/MM/y - E dd/MM/y GGGG"}
                }
                yMMM{
                    M{"MMM-MMM 'de' y G"}
                    y{"MMM 'de' y - MMM 'de' y G"}
                }
                yMMMEd{
                    M{"E d MMM - E d MMM 'de' y G"}
                    d{"E d MMM - E d MMM 'de' y G"}
                    y{"E d MMM 'de' y - E d MMM 'de' y G"}
                }
                yMMMM{
                    M{"MMMM-MMMM 'de' y G"}
                    y{"MMMM 'de' y - MMMM 'de' y G"}
                }
                yMMMd{
                    M{"d MMM - d MMM 'de' y G"}
                    d{"d-d MMM 'de' y G"}
                    y{"d MMM 'de' y - d MMM 'de' y G"}
                }
                yMd{
                    M{"dd/MM/y - dd/MM/y GGGG"}
                    d{"dd/MM/y - dd/MM/y GGGG"}
                    y{"dd/MM/y - dd/MM/y GGGG"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "a. m.",
                "p. m.",
            }
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "EEEE, d MMMM 'de' y",
                "d MMMM 'de' y",
                "dd/MM/y",
                "d/M/yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                EHm{"E H:mm"}
                EHms{"E H:mm:ss"}
                Ed{"E d"}
                Ehm{"E h:mm a"}
                Ehms{"E h:mm:ss a"}
                Gy{"y G"}
                GyMMM{"LLL y G"}
                GyMMMEd{"E, d MMM, y G"}
                GyMMMM{"LLLL 'de' y G"}
                GyMMMd{"d MMM y G"}
                H{"H"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E d/M"}
                MMM{"LLL"}
                MMMEd{"E d MMM"}
                MMMMEd{"E d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                Md{"d/M"}
                d{"d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M/y"}
                yMEd{"E, d/M/y"}
                yMMM{"LLL y"}
                yMMMEd{"E, d MMM, y"}
                yMMMM{"LLLL 'de' y"}
                yMMMd{"d MMM y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
            }
            dayNames{
                format{
                    abbreviated{
                        "dg.",
                        "dl.",
                        "dt.",
                        "dc.",
                        "dj.",
                        "dv.",
                        "ds.",
                    }
                    narrow{
                        "dg",
                        "dl",
                        "dt",
                        "dc",
                        "dj",
                        "dv",
                        "ds",
                    }
                    short{
                        "dg.",
                        "dl.",
                        "dt.",
                        "dc.",
                        "dj.",
                        "dv.",
                        "ds.",
                    }
                    wide{
                        "diumenge",
                        "dilluns",
                        "dimarts",
                        "dimecres",
                        "dijous",
                        "divendres",
                        "dissabte",
                    }
                }
                stand-alone{
                    abbreviated{
                        "dg.",
                        "dl.",
                        "dt.",
                        "dc.",
                        "dj.",
                        "dv.",
                        "ds.",
                    }
                    narrow{
                        "dg",
                        "dl",
                        "dt",
                        "dc",
                        "dj",
                        "dv",
                        "ds",
                    }
                    short{
                        "dg.",
                        "dl.",
                        "dm.",
                        "dc.",
                        "dj.",
                        "dv.",
                        "ds.",
                    }
                    wide{
                        "diumenge",
                        "dilluns",
                        "dimarts",
                        "dimecres",
                        "dijous",
                        "divendres",
                        "dissabte",
                    }
                }
            }
            eras{
                abbreviated{
                    "aC",
                    "dC",
                }
                narrow{
                    "aC",
                    "dC",
                }
                wide{
                    "abans de Crist",
                    "després de Crist",
                }
            }
            intervalFormats{
                H{
                    H{"H-H"}
                }
                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{"H-H v"}
                }
                M{
                    M{"M-M"}
                }
                MEd{
                    M{"E dd/MM - E dd/MM"}
                    d{"E dd/MM - E dd/MM"}
                }
                MMM{
                    M{"LLL-LLL"}
                }
                MMMEd{
                    M{"E d MMM - E d MMM"}
                    d{"E d - E d MMM"}
                }
                MMMd{
                    M{"d MMM - 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/y - MM/y"}
                    y{"MM/y - MM/y"}
                }
                yMEd{
                    M{"E dd/MM/y - E dd/MM/y"}
                    d{"E dd/MM/y - E dd/MM/y"}
                    y{"E dd/MM/y - E dd/MM/y"}
                }
                yMMM{
                    M{"LLL-LLL 'de' y"}
                    y{"LLL 'de' y - LLL 'de' y"}
                }
                yMMMEd{
                    M{"E d MMM - E d MMM 'de' y"}
                    d{"E d - E d MMM 'de' y"}
                    y{"E d MMM 'de' y - E d MMM 'de' y"}
                }
                yMMMM{
                    M{"LLLL-LLLL 'de' y"}
                    y{"LLLL 'de' y - LLLL 'de' y"}
                }
                yMMMd{
                    M{"d MMM - d MMM 'de' y"}
                    d{"d-d MMM 'de' y"}
                    y{"d MMM 'de' y - d MMM 'de' y"}
                }
                yMd{
                    M{"dd/MM/y - dd/MM/y"}
                    d{"dd/MM/y - dd/MM/y"}
                    y{"dd/MM/y - dd/MM/y"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "gen.",
                        "feb.",
                        "març",
                        "abr.",
                        "maig",
                        "juny",
                        "jul.",
                        "ag.",
                        "set.",
                        "oct.",
                        "nov.",
                        "des.",
                    }
                    narrow{
                        "GN",
                        "FB",
                        "MÇ",
                        "AB",
                        "MG",
                        "JN",
                        "JL",
                        "AG",
                        "ST",
                        "OC",
                        "NV",
                        "DS",
                    }
                    wide{
                        "gener",
                        "febrer",
                        "març",
                        "abril",
                        "maig",
                        "juny",
                        "juliol",
                        "agost",
                        "setembre",
                        "octubre",
                        "novembre",
                        "desembre",
                    }
                }
                stand-alone{
                    abbreviated{
                        "gen.",
                        "feb.",
                        "març",
                        "abr.",
                        "maig",
                        "juny",
                        "jul.",
                        "ag.",
                        "set.",
                        "oct.",
                        "nov.",
                        "des.",
                    }
                    narrow{
                        "GN",
                        "FB",
                        "MÇ",
                        "AB",
                        "MG",
                        "JN",
                        "JL",
                        "AG",
                        "ST",
                        "OC",
                        "NV",
                        "DS",
                    }
                    wide{
                        "gener",
                        "febrer",
                        "març",
                        "abril",
                        "maig",
                        "juny",
                        "juliol",
                        "agost",
                        "setembre",
                        "octubre",
                        "novembre",
                        "desembre",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "1T",
                        "2T",
                        "3T",
                        "4T",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1r trimestre",
                        "2n trimestre",
                        "3r trimestre",
                        "4t trimestre",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1T",
                        "2T",
                        "3T",
                        "4T",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "1r trimestre",
                        "2n trimestre",
                        "3r trimestre",
                        "4t trimestre",
                    }
                }
            }
        }
        roc{
            DateTimePatterns{
                "H.mm.ss zzzz",
                "H.mm.ss z",
                "H.mm.ss",
                "H.mm",
                "EEEE d MMMM 'de' y G",
                "d MMMM 'de' y G",
                "dd/MM/y G",
                "dd/MM/y GGGGG",
                "{1}, {0}",
                "{1}, {0}",
                "{1}, {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"»"}
        alternateQuotationStart{"«"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    durationUnits{
        hm{"h:mm"}
        hms{"h:mm:ss"}
        ms{"m:ss"}
    }
    fields{
        day{
            dn{"dia"}
            relative{
                "-1"{"ahir"}
                "-2"{"abans-d'ahir"}
                "0"{"avui"}
                "1"{"demà"}
                "2"{"demà passat"}
            }
            relativeTime{
                future{
                    one{"D'aquí a {0} dia"}
                    other{"D'aquí a {0} dies"}
                }
                past{
                    one{"Fa {0} dia"}
                    other{"Fa {0} dies"}
                }
            }
        }
        dayperiod{
            dn{"a. m./p. m."}
        }
        era{
            dn{"era"}
        }
        fri{
            relative{
                "-1"{"divendres passat"}
                "0"{"aquest divendres"}
                "1"{"divendres que ve"}
            }
        }
        hour{
            dn{"hora"}
            relativeTime{
                future{
                    one{"D'aquí a {0} hora"}
                    other{"D'aquí a {0} hores"}
                }
                past{
                    one{"Fa {0} hora"}
                    other{"Fa {0} hores"}
                }
            }
        }
        minute{
            dn{"minut"}
            relativeTime{
                future{
                    one{"D'aquí a {0} minut"}
                    other{"D'aquí a {0} minuts"}
                }
                past{
                    one{"Fa {0} minut"}
                    other{"Fa {0} minuts"}
                }
            }
        }
        mon{
            relative{
                "-1"{"dilluns passat"}
                "0"{"aquest dilluns"}
                "1"{"dilluns que ve"}
            }
        }
        month{
            dn{"mes"}
            relative{
                "-1"{"el mes passat"}
                "0"{"aquest mes"}
                "1"{"el mes que ve"}
            }
            relativeTime{
                future{
                    one{"D'aquí a {0} mes"}
                    other{"D'aquí a {0} mesos"}
                }
                past{
                    one{"Fa {0} mes"}
                    other{"Fa {0} mesos"}
                }
            }
        }
        sat{
            relative{
                "-1"{"dissabte passat"}
                "0"{"aquest dissabte"}
                "1"{"dissabte que ve"}
            }
        }
        second{
            dn{"segon"}
            relative{
                "0"{"ara"}
            }
            relativeTime{
                future{
                    one{"D'aquí a {0} segon"}
                    other{"D'aquí a {0} segons"}
                }
                past{
                    one{"Fa {0} segon"}
                    other{"Fa {0} segons"}
                }
            }
        }
        sun{
            relative{
                "-1"{"diumenge passat"}
                "0"{"aquest diumenge"}
                "1"{"diumenge que ve"}
            }
        }
        thu{
            relative{
                "-1"{"dijous passat"}
                "0"{"aquest dijous"}
                "1"{"dijous que ve"}
            }
        }
        tue{
            relative{
                "-1"{"dimarts passat"}
                "0"{"aquest dimarts"}
                "1"{"dimarts que ve"}
            }
        }
        wed{
            relative{
                "-1"{"dimecres passat"}
                "0"{"aquest dimecres"}
                "1"{"dimecres que ve"}
            }
        }
        week{
            dn{"setmana"}
            relative{
                "-1"{"la setmana passada"}
                "0"{"aquesta setmana"}
                "1"{"la setmana que ve"}
            }
            relativeTime{
                future{
                    one{"D'aquí a {0} setmana"}
                    other{"D'aquí a {0} setmanes"}
                }
                past{
                    one{"Fa {0} setmana"}
                    other{"Fa {0} setmanes"}
                }
            }
        }
        weekday{
            dn{"dia de la setmana"}
        }
        year{
            dn{"any"}
            relative{
                "-1"{"l'any passat"}
                "0"{"enguany"}
                "1"{"l'any que ve"}
            }
            relativeTime{
                future{
                    one{"D'aquí a {0} any"}
                    other{"D'aquí a {0} anys"}
                }
                past{
                    one{"Fa {0} any"}
                    other{"Fa {0} anys"}
                }
            }
        }
        zone{
            dn{"zona"}
        }
    }
    listPattern{
        standard{
            2{"{0} i {1}"}
            end{"{0} i {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit{
            2{"{0} i {1}"}
            end{"{0} i {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
        unit-short{
            2{"{0} i {1}"}
            end{"{0} i {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"anglosaxó"}
        US{"imperial"}
        metric{"mètric"}
    }
    units{
        acceleration{
            g-force{
                one{"{0} força G"}
                other{"{0} força G"}
            }
        }
        angle{
            arc-minute{
                one{"{0} minut"}
                other{"{0} minuts"}
            }
            arc-second{
                one{"{0} segon"}
                other{"{0} segons"}
            }
            degree{
                one{"{0} grau"}
                other{"{0} graus"}
            }
        }
        area{
            acre{
                one{"{0} acre"}
                other{"{0} acres"}
            }
            hectare{
                one{"{0} hectàrea"}
                other{"{0} hectàrees"}
            }
            square-foot{
                one{"{0} peu quadrat"}
                other{"{0} peus quadrats"}
            }
            square-kilometer{
                one{"{0} quilòmetre quadrat"}
                other{"{0} quilòmetres quadrats"}
            }
            square-meter{
                one{"{0} metre quadrat"}
                other{"{0} metres quadrats"}
            }
            square-mile{
                one{"{0} milla quadrada"}
                other{"{0} milles quadrades"}
            }
        }
        duration{
            day{
                one{"{0} dia"}
                other{"{0} dies"}
            }
            hour{
                one{"{0} hora"}
                other{"{0} hores"}
            }
            millisecond{
                one{"{0} mil·lisegon"}
                other{"{0} mil·lisegons"}
            }
            minute{
                one{"{0} minut"}
                other{"{0} minuts"}
            }
            month{
                one{"{0} mes"}
                other{"{0} mesos"}
            }
            second{
                one{"{0} segon"}
                other{"{0} segons"}
            }
            week{
                one{"{0} setmana"}
                other{"{0} setmanes"}
            }
            year{
                one{"{0} any"}
                other{"{0} anys"}
            }
        }
        length{
            centimeter{
                one{"{0} centímetre"}
                other{"{0} centímetres"}
            }
            foot{
                one{"{0} peu"}
                other{"{0} peus"}
            }
            inch{
                one{"{0} polzada"}
                other{"{0} polzades"}
            }
            kilometer{
                one{"{0} quilòmetre"}
                other{"{0} quilòmetres"}
            }
            light-year{
                one{"{0} any llum"}
                other{"{0} anys llum"}
            }
            meter{
                one{"{0} metre"}
                other{"{0} metres"}
            }
            mile{
                one{"{0} milla"}
                other{"{0} milles"}
            }
            millimeter{
                one{"{0} mil·límetre"}
                other{"{0} mil·límetres"}
            }
            picometer{
                one{"{0} picòmetre"}
                other{"{0} picòmetres"}
            }
            yard{
                one{"{0} iarda"}
                other{"{0} iardes"}
            }
        }
        mass{
            gram{
                one{"{0} gram"}
                other{"{0} grams"}
            }
            kilogram{
                one{"{0} quilogram"}
                other{"{0} quilograms"}
            }
            ounce{
                one{"{0} unça"}
                other{"{0} unces"}
            }
            pound{
                one{"{0} lliura"}
                other{"{0} lliures"}
            }
        }
        power{
            horsepower{
                one{"{0} cavall de vapor"}
                other{"{0} cavalls de vapor"}
            }
            kilowatt{
                one{"{0} kilowatt"}
                other{"{0} kilowatts"}
            }
            watt{
                one{"{0} watt"}
                other{"{0} watts"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hectopascal"}
                other{"{0} hectopascals"}
            }
            inch-hg{
                one{"{0} polzada de mercuri"}
                other{"{0} polzades de mercuri"}
            }
            millibar{
                one{"{0} mil·libar"}
                other{"{0} mil·libars"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} quilòmetre per hora"}
                other{"{0} quilòmetres per hora"}
            }
            meter-per-second{
                one{"{0} metre per segon"}
                other{"{0} metres per segon"}
            }
            mile-per-hour{
                one{"{0} milla per hora"}
                other{"{0} milles per hora"}
            }
        }
        temperature{
            celsius{
                one{"{0} grau Celsius"}
                other{"{0} graus Celsius"}
            }
            fahrenheit{
                one{"{0} grau Fahrenheit"}
                other{"{0} graus Fahrenheit"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} quilòmetre cúbic"}
                other{"{0} quilòmetres cúbics"}
            }
            cubic-mile{
                one{"{0} milla cúbica"}
                other{"{0} milles cúbiques"}
            }
            liter{
                one{"{0} litre"}
                other{"{0} litres"}
            }
        }
    }
    unitsShort{
        acceleration{
            g-force{
                one{"{0} G"}
                other{"{0} G"}
            }
        }
        angle{
            degree{
                one{"{0}°"}
                other{"{0}°"}
            }
        }
        area{
            acre{
                one{"{0} ac."}
                other{"{0} ac."}
            }
            hectare{
                one{"{0} ha"}
                other{"{0} ha"}
            }
            square-foot{
                one{"{0} ft²"}
                other{"{0} ft²"}
            }
            square-kilometer{
                one{"{0} km²"}
                other{"{0} km²"}
            }
            square-meter{
                one{"{0} m²"}
                other{"{0} m²"}
            }
            square-mile{
                one{"{0} mi²"}
                other{"{0} mi²"}
            }
        }
        duration{
            day{
                one{"{0} dia"}
                other{"{0} dies"}
            }
            hour{
                one{"{0} h"}
                other{"{0} h"}
            }
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
            minute{
                one{"{0} min"}
                other{"{0} min"}
            }
            month{
                one{"{0} mes"}
                other{"{0} mesos"}
            }
            second{
                one{"{0} s"}
                other{"{0} s"}
            }
            week{
                one{"{0} setm."}
                other{"{0} setm."}
            }
            year{
                one{"{0} any"}
                other{"{0} anys"}
            }
        }
        length{
            centimeter{
                one{"{0} cm"}
                other{"{0} cm"}
            }
            foot{
                one{"{0} ft"}
                other{"{0} ft"}
            }
            inch{
                one{"{0} polz."}
                other{"{0} polz."}
            }
            kilometer{
                one{"{0} km"}
                other{"{0} km"}
            }
            light-year{
                one{"{0} any ll."}
                other{"{0} anys ll."}
            }
            meter{
                one{"{0} m"}
                other{"{0} m"}
            }
            mile{
                one{"{0} mi"}
                other{"{0} mi"}
            }
            millimeter{
                one{"{0} mm"}
                other{"{0} mm"}
            }
            picometer{
                one{"{0} pm"}
                other{"{0} pm"}
            }
            yard{
                one{"{0} yd"}
                other{"{0} yd"}
            }
        }
        mass{
            gram{
                one{"{0} g"}
                other{"{0} g"}
            }
            kilogram{
                one{"{0} kg"}
                other{"{0} kg"}
            }
            ounce{
                one{"{0} oz"}
                other{"{0} oz"}
            }
            pound{
                one{"{0} lb"}
                other{"{0} lb"}
            }
        }
        power{
            horsepower{
                one{"{0} CV"}
                other{"{0} CV"}
            }
            kilowatt{
                one{"{0} kW"}
                other{"{0} kW"}
            }
            watt{
                one{"{0} W"}
                other{"{0} W"}
            }
        }
        pressure{
            hectopascal{
                one{"{0} hPa"}
                other{"{0} hPa"}
            }
            inch-hg{
                one{"{0} inHg"}
                other{"{0} inHg"}
            }
            millibar{
                one{"{0} mb"}
                other{"{0} mb"}
            }
        }
        speed{
            kilometer-per-hour{
                one{"{0} km/h"}
                other{"{0} km/h"}
            }
            meter-per-second{
                one{"{0} m/s"}
                other{"{0} m/s"}
            }
            mile-per-hour{
                one{"{0} mi/h"}
                other{"{0} mi/h"}
            }
        }
        temperature{
            celsius{
                one{"{0} °C"}
                other{"{0} °C"}
            }
            fahrenheit{
                one{"{0} °F"}
                other{"{0} °F"}
            }
        }
        volume{
            cubic-kilometer{
                one{"{0} km³"}
                other{"{0} km³"}
            }
            cubic-mile{
                one{"{0} mi³"}
                other{"{0} mi³"}
            }
            liter{
                one{"{0} l"}
                other{"{0} l"}
            }
        }
    }
}
