// ***************************************************************************
// *
// *   Copyright (C) 1997-2003, International Business Machines
// *   Corporation and others.  All Rights Reserved.
// *
// ***************************************************************************

ca {
    Version { "4.0" }
    collations {
      standard { 
        Version { "1.0" }
        Sequence { "[backwards 2]"
        "&C < ch <<< Ch <<< CH"
        "&L < ll <<< l\u00b7l <<< Ll <<< L\u00b7l <<< LL <<< L\u00b7L" }
      }
    }
    Countries { 
        AD { "Andorra" }
        AE { "Uni\u00F3 dels Emirats \u00C0rabs" }
        AF { "Afganistan" }
        AI { "Anguilla" }
        AL { "Alb\u00E0nia" }
        AM { "Arm\u00E8nia" }
        AN { "Antilles Holandeses" }
        AO { "Angola" }
        AR { "Argentina" }
        AT { "\u00C2ustria" }
        AU { "Austr\u00E0lia" }
        AW { "Aruba" }
        AZ { "Azerbaidjan" }
        BA { "B\u00F2snia i Hercegovina" }
        BB { "Barbados" }
        BD { "Bangla Desh" }
        BE { "B\u00E8lgica" }
        BF { "Burkina Faso" }
        BG { "Bulg\u00E0ria" }
        BH { "Bahrain" }
        BI { "Burundi" }
        BJ { "Benin" }
        BM { "Bermudes" }
        BN { "Brunei" }
        BO { "Bol\u00EDvia" }
        BR { "Brasil" }
        BS { "Bahames" }
        BT { "Bhutan" }
        BW { "Botswana" }
        BY { "Bielor\u00FAssia" }
        BZ { "Belize" }
        CA { "Canad\u00E0" }
        CF { "Rep\u00FAblica Centrafricana" }
        CG { "Congo" }
        CH { "Switzerland" }
        CI { "Costa d'Ivori" }
        CL { "Xile" }
        CM { "Camerun" }
        CN { "Xina" }
        CO { "Col\u00F2mbia" }
        CR { "Costa Rica" }
        CU { "Cuba" }
        CV { "Cap Verd" }
        CY { "Xipre" }
        CZ { "Rep\u00FAblica Txeca" }
        DE { "Alemanya" }
        DJ { "Djibouti" }
        DK { "Dinamarca" }
        DM { "Dominica" }
        DO { "Rep\u00FAblica Dominicana" }
        DZ { "Alg\u00E8ria" }
        EC { "Equador" }
        EE { "Est\u00F2nia" }
        EG { "Egipte" }
        EH { "S\u00E0hara Occidental" }
        ER { "Eritrea" }
        ES { "Espanya" }
        ET { "Eti\u00F2pia" }
        FI { "Finl\u00E0ndia" }
        FJ { "Fiji" }
        FM { "Micron\u00E8sia" }
        FR { "Fran\u00E7a" }
        GA { "Gabon" }
        GB { "Regne Unit" }
        GE { "Ge\u00F2rgia" }
        GF { "Guaiana Francesa" }
        GH { "Ghana" }
        GM { "G\u00E0mbia" }
        GN { "Guinea" }
        GP { "Guadeloupe" }
        GQ { "Guinea Equatorial" }
        GR { "Gr\u00E8cia" }
        GT { "Guatemala" }
        GW { "Guinea Bissau" }
        GY { "Guyana" }
        HK { "Hong Kong" }
        HN { "Hondures" }
        HR { "Cro\u00E0cia" }
        HT { "Hait\u00ED" }
        HU { "Hongria" }
        ID { "Indon\u00E8sia" }
        IE { "Irlanda" }
        IL { "Israel" }
        IN { "\u00CDndia" }
        IQ { "Iraq" }
        IR { "Iran" }
        IS { "Isl\u00E0ndia" }
        IT { "It\u00E0lia" }
        JM { "Jamaica" }
        JO { "Jord\u00E0nia" }
        JP { "Jap\u00F3" }
        KE { "Kenya" }
        KG { "Kirgizistan" }
        KH { "Cambodja" }
        KI { "Kiribati" }
        KM { "Comores" }
        KP { "Corea del Nord" }
        KR { "Corea del Sud" }
        KW { "Kuwait" }
        KZ { "Kazakhstan" }
        LA { "Laos" }
        LB { "L\u00EDban" }
        LI { "Liechtenstein" }
        LK { "Sri Lanka" }
        LR { "Lib\u00E8ria" }
        LS { "Lesotho" }
        LT { "Litu\u00E0nia" }
        LU { "Luxemburg" }
        LV { "Let\u00F2nia" }
        LY { "L\u00EDbia" }
        MA { "Marroc" }
        MC { "M\u00F2naco" }
        MD { "Mold\u00E0via" }
        MG { "Madagascar" }
        MK { "Maced\u00F2nia" }
        ML { "Mali" }
        MM { "Myanmar" }
        MN { "Mong\u00F2lia" }
        MQ { "Martinica" }
        MR { "Maurit\u00E0nia" }
        MS { "Montserrat" }
        MT { "Malta" }
        MU { "Maurici" }
        MX { "M\u00E8xic" }
        MY { "Mal\u00E0isia" }
        MZ { "Mo\u00E7ambic" }
        NA { "Nam\u00EDbia" }
        NC { "Nova Caled\u00F2nia" }
        NE { "N\u00EDger" }
        NG { "Nig\u00E8ria" }
        NI { "Nicaragua" }
        NL { "Pa\u00EFsos Baixos" }
        NO { "Noruega" }
        NP { "Nepal" }
        NU { "Niue" }
        NZ { "Nova Zelanda" }
        OM { "Oman" }
        PA { "Panam\u00E0" }
        PE { "Per\u00FA" }
        PF { "Polin\u00E8sia Francesa" }
        PG { "Papua Nova Guinea" }
        PH { "Filipines" }
        PK { "Pakistan" }
        PL { "Pol\u00F2nia" }
        PR { "Puerto Rico" }
        PT { "Portugal" }
        PY { "Paraguai" }
        QA { "Qatar" }
        RO { "Romania" }
        RU { "R\u00FAssia" }
        RW { "Rwanda" }
        SA { "Ar\u00E0bia Saud\u00ED" }
        SC { "Seychelles" }
        SD { "Sudan" }
        SE { "Su\u00E8cia" }
        SG { "Singapur" }
        SI { "Eslov\u00E8nia" }
        SK { "Eslov\u00E0quia" }
        SL { "Sierra Leone" }
        SN { "Senegal" }
        SO { "Som\u00E0lia" }
        SP { "S\u00E8rbia" }
        SR { "Surinam" }
        SV { "El Salvador" }
        SY { "S\u00EDria" }
        SZ { "Swazil\u00E0ndia" }
        TD { "Txad" }
        TF { "Territoris Meridionals Francesos" }
        TG { "Togo" }
        TH { "Tail\u00E0ndia" }
        TJ { "Tadjikistan" }
        TK { "Tokelau" }
        TL { "Timor" }
        TM { "Turkmenistan" }
        TN { "Tun\u00EDsia" }
        TO { "Tonga" }
        TR { "Turquia" }
        TT { "Trinitat i Tobago" }
        TW { "Taiwan" }
        TZ { "Tanz\u00E0nia" }
        UA { "Ucra\u00EFna" }
        UG { "Uganda" }
        US { "Estats Units" }
        UY { "Uruguai" }
        UZ { "Uzbekistan" }
        VA { "Vatic\u00E0" }
        VE { "Vene\u00E7uela" }
        VG { "Illes Verges Brit\u00E0niques" }
        VI { "Illes Verges dels USA" }
        VN { "Vietnam" }
        VU { "Vanuatu" }
        YE { "Iemen" }
        YT { "Mayotte" }
        YU { "Iugosl\u00E0via" }
        ZA { "Sud-\u00E0frica" }
        ZM { "Z\u00E0mbia" }
        ZW { "Zimbabwe" }
    }
    Languages { 
        aa { "\u00E0far" }
        ab { "abkhaz" }
        af { "afrikaans" }
        am { "amh\u00E0ric" }
        ar { "\u00E2rab" }
        as { "assam\u00E8s" }
        ay { "aimara" }
        az { "\u00E0zeri" }
        ba { "baixkir" }
        be { "bielor\u00FAs" }
        bg { "b\u00FAlgar" }
        bh { "bihari" }
        bi { "bislama" }
        bn { "bengal\u00ED" }
        bo { "tibet\u00E0" }
        br { "bret\u00F3" }
        ca { "catal\u00E0" }
        co { "cors" }
        cs { "txec" }
        cy { "gal\u00B7l\u00E8s" }
        da { "dan\u00E8s" }
        de { "alemany" }
        dz { "bhutan\u00E8s" }
        el { "grec" }
        en { "angl\u00E8s" }
        eo { "esperanto" }
        es { "espanyol" }
        et { "estoni\u00E0" }
        eu { "basc" }
        fa { "persa" }
        fi { "fin\u00E8s" }
        fj { "fiji\u00E0" }
        fo { "fero\u00E8s" }
        fr { "franc\u00E8s" }
        fy { "fris\u00F3" }
        ga { "irland\u00E8s" }
        gd { "escoc\u00E8s" }
        gl { "gallec" }
        gn { "guaran\u00ED" }
        gu { "gujarati" }
        ha { "hausa" }
        he { "hebreu" }
        hi { "hindi" }
        hr { "croat" }
        hu { "hongar\u00E8s" }
        hy { "armeni" }
        ia { "interlingua" }
        id { "indonesi" }
        ie { "interlingue" }
        ik { "inupiak" }
        is { "island\u00E8s" }
        it { "itali\u00E0" }
        iu { "inuktitut" }
        ja { "japon\u00E8s" }
        jv { "javan\u00E8s" }
        ka { "georgi\u00E0" }
        kk { "kazakh" }
        kl { "greenland\u00E8s" }
        km { "cambodj\u00E0" }
        kn { "kannada" }
        ko { "core\u00E0" }
        ks { "caixmiri" }
        ku { "kurd" }
        ky { "kirgu\u00EDs" }
        la { "llat\u00ED" }
        ln { "lingala" }
        lo { "laosi\u00E0" }
        lt { "litu\u00E0" }
        lv { "let\u00F3" }
        mg { "malgaix" }
        mi { "maori" }
        mk { "macedoni" }
        ml { "malaialam" }
        mn { "mongol" }
        mo { "moldau" }
        mr { "marathi" }
        ms { "malai" }
        mt { "malt\u00E8s" }
        my { "birm\u00E0" }
        na { "nauru\u00E0" }
        ne { "nepal\u00E8s" }
        nl { "neerland\u00E8s" }
        no { "noruec" }
        oc { "occit\u00E0" }
        om { "oromo (afan)" }
        or { "oriya" }
        pa { "panjabi" }
        pl { "polon\u00E8s" }
        ps { "paixto" }
        pt { "portugu\u00E8s" }
        qu { "qu\u00E8txua" }
        rm { "retorom\u00E0nic" }
        rn { "kirundi" }
        ro { "roman\u00E8s" }
        ru { "rus" }
        rw { "kinyarwanda" }
        sa { "s\u00E0nscrit" }
        sd { "sindhi" }
        sg { "sango" }
        sh { "serbo-croat" }
        si { "sinhal\u00E8s" }
        sk { "eslovac" }
        sl { "eslov\u00E8" }
        sm { "samo\u00E0" }
        sn { "shona" }
        so { "somali" }
        sq { "alban\u00E8s" }
        sr { "serbi" }
        ss { "siswati" }
        st { "sotho" }
        su { "sundan\u00E8s" }
        sv { "suec" }
        sw { "swahili" }
        ta { "t\u00E0mil" }
        te { "telugu" }
        tg { "tadjik" }
        th { "thai" }
        ti { "tigrinya" }
        tk { "turcman" }
        tl { "tag\u00E0log" }
        tn { "tswana" }
        to { "tonga" }
        tr { "turc" }
        ts { "tsonga" }
        tt { "t\u00E0tar" }
        tw { "twi" }
        ug { "uigur" }
        uk { "ucra\u00EFn\u00E8s" }
        ur { "urd\u00FA" }
        uz { "uzbek" }
        vi { "vietnamita" }
        vo { "volapuk" }
        wo { "w\u00F2lof" }
        xh { "xosa" }
        yi { "jiddish" }
        yo { "ioruba" }
        za { "zhuang" }
        zh { "xin\u00E9s" }
        zu { "zulu" }
    }
    DateTimePatterns { 
        "HH:mm:ss z",
        "HH:mm:ss z",
        "HH:mm:ss",
        "HH:mm",
        "EEEE dd MMMM yyyy",
        "d MMMM yyyy",
        "dd/MM/yyyy",
        "dd/MM/yy",
        "{1} {0}",
    }
    DayAbbreviations { 
        "dg.",
        "dl.",
        "dt.",
        "dc.",
        "dj.",
        "dv.",
        "ds.",
    }
    DayNames { 
        "diumenge",
        "dilluns",
        "dimarts",
        "dimecres",
        "dijous",
        "divendres",
        "dissabte",
    }
    MonthAbbreviations { 
        "gen.",
        "feb.",
        "mar\u00E7",
        "abr.",
        "maig",
        "juny",
        "jul.",
        "ag.",
        "set.",
        "oct.",
        "nov.",
        "des.",
    }
    MonthNames { 
        "gener",
        "febrer",
        "mar\u00E7",
        "abril",
        "maig",
        "juny",
        "juliol",
        "agost",
        "setembre",
        "octubre",
        "novembre",
        "desembre",
    }
    NumberElements { 
        ",",
        ".",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "\u2030",
        "\u221E",
        "\uFFFD",
        ",",
        "+",
    }
    localPatternChars { "GuMtkHmsSEDFwWahKzUe" }

    LocaleScript{ 
                "Latn",  // ISO 15924 Name 
    }
    ExemplarCharacters { "[a-z \u00e9 \u00ed \u00f3 \u00fa \u00e0 \u00e8 \u00f2 \u00ef \u00fc \u0140 \u00e7 \u00f1]" }


    // Currency display names
    Currencies {
        ESP { "\u20A7", "ESP" } // Spanish Peseta
    }
}
