﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/ga.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/ga.xml
 */
ga{
    Keys{
        calendar{"Féilire"}
        collation{"Ord Sórtála"}
        currency{"Airgeadra"}
        numbers{"Uimhreacha"}
    }
    Languages{
        aa{"Afáiris"}
        ab{"Abcáisis"}
        ae{"Aivéistis"}
        af{"Afracáinis"}
        ain{"Aidhniúis"}
        ak{"Acáinis"}
        akk{"Acáidis"}
        am{"Amáiris"}
        an{"Aragóinis"}
        ang{"Sean-Bhéarla"}
        ar{"Araibis"}
        ar_001{"Araibis Chaighdeánach"}
        arc{"Aramais"}
        arn{"Mapúitsis"}
        as{"Asaimis"}
        ast{"Astúiris"}
        av{"Aváiris"}
        ay{"Aidhmiris"}
        az{"Asarbaiseáinis"}
        ba{"Baiscíris"}
        ban{"Bailís"}
        bar{"Baváiris"}
        be{"Bealarúisis"}
        bem{"Beimbis"}
        bg{"Bulgáiris"}
        bi{"Bioslaimis"}
        bn{"Beangáilis"}
        bo{"Tibéidis"}
        br{"Briotáinis"}
        bs{"Boisnis"}
        bua{"Buiriáitis"}
        bug{"Buiginis"}
        ca{"Catalóinis"}
        ce{"Sisinis"}
        ceb{"Seabúáinis"}
        ch{"Seamóiris"}
        chm{"Mairis"}
        chr{"Seiricis"}
        co{"Corsaicis"}
        cop{"Coptais"}
        cr{"Craís"}
        cs{"Seicis"}
        csb{"Caisiúibis"}
        cu{"Slavais na hEaglaise"}
        cv{"Suvaisis"}
        cy{"Breatnais"}
        da{"Danmhairgis"}
        de{"Gearmáinis"}
        de_AT{"Gearmáinis Ostarach"}
        de_CH{"Ard-Ghearmáinis Eilvéiseach"}
        dje{"Zarmais"}
        dsb{"Sorbais Íochtarach"}
        dum{"Meán-Ollainnis"}
        dv{"Divéihis"}
        dz{"Seoinicis"}
        egy{"Sean-Éigiptis"}
        el{"Gréigis"}
        en{"Béarla"}
        en_AU{"Béarla Astrálach"}
        en_CA{"Béarla Ceanadach"}
        en_GB{"Béarla Briotanach"}
        en_US{"Béarla Meiriceánach"}
        enm{"Meán-Bhéarla"}
        eo{"Esperanto"}
        es{"Spáinnis"}
        es_419{"Spáinnis Mheiriceá Laidinigh"}
        es_ES{"Spáinnis Eorpach"}
        es_MX{"Spáinnis Mheicsiceach"}
        et{"Eastóinis"}
        eu{"Bascais"}
        fa{"Peirsis"}
        ff{"Fuláinis"}
        fi{"Fionlainnis"}
        fil{"Filipínis"}
        fj{"Fidsis"}
        fo{"Faróis"}
        fr{"Fraincis"}
        fr_CA{"Fraincis Cheanadach"}
        fr_CH{"Fraincis Eilvéiseach"}
        frm{"Meán-Fhraincis"}
        fro{"Sean-Fhraincis"}
        frr{"Freaslainnis an Tuaiscirt"}
        fur{"Friúilis"}
        fy{"Freaslainnis Iartharach"}
        ga{"Gaeilge"}
        gd{"Gaeilge na hAlban"}
        gez{"Aetóipis"}
        gl{"Gailísis"}
        gmh{"Meán-Ard-Ghearmáinis"}
        gn{"Guaráinis"}
        goh{"Sean-Ard-Ghearmáinis"}
        grc{"Sean-Ghréigis"}
        gsw{"Gearmáinis Eilvéiseach"}
        gu{"Gúisearáitis"}
        guc{"Uaúis"}
        gv{"Manainnis"}
        ha{"Hásais"}
        hak{"Haicéis"}
        haw{"Haváis"}
        he{"Eabhrais"}
        hi{"Hiondúis"}
        hif{"Hiondúis Fhidsí"}
        hil{"Hilgeanóinis"}
        hit{"Hitis"}
        hmn{"Mongais"}
        ho{"Motúis Hírí"}
        hr{"Cróitis"}
        hsb{"Sorbais Uachtarach"}
        ht{"Criól Háítíoch"}
        hu{"Ungáiris"}
        hup{"Húipis"}
        hy{"Airméinis"}
        hz{"Heiréiris"}
        ia{"Interlingua"}
        ibb{"Ibibis"}
        id{"Indinéisis"}
        ie{"Interlingue"}
        ig{"Íogbóis"}
        ik{"Iniúipiaicis"}
        inh{"Iongúis"}
        io{"Ido"}
        is{"Íoslainnis"}
        it{"Iodáilis"}
        iu{"Ionúitis"}
        ja{"Seapáinis"}
        jut{"Iútlainnis"}
        jv{"Iáivis"}
        ka{"Seoirsis"}
        kaa{"Cara-Chalpáis"}
        kg{"Congóis"}
        ki{"Ciocúis"}
        kj{"Cuainiáimis"}
        kk{"Casaicis"}
        kl{"Kalaallisut"}
        km{"Ciméiris"}
        kn{"Cannadais"}
        ko{"Cóiréis"}
        kok{"Concáinis"}
        kr{"Canúiris"}
        krl{"Cairéilis"}
        kru{"Curúicis"}
        ks{"Caismíris"}
        ku{"Coirdis"}
        kv{"Coimis"}
        kw{"Coirnis"}
        ky{"Cirgisis"}
        la{"Laidin"}
        lad{"Laidínis"}
        lah{"Puinseáibis Iartharach"}
        lb{"Lucsambuirgis"}
        lg{"Lugandais"}
        lij{"Liogúiris"}
        liv{"Liovóinis"}
        lmo{"Lombairdis"}
        ln{"Liongáilis"}
        lo{"Laoisis"}
        lt{"Liotuáinis"}
        lu{"Lúba-Cataingis"}
        lv{"Laitvis"}
        men{"Meindis"}
        mg{"Malagáisis"}
        mga{"Meán-Ghaeilge"}
        mh{"Mairsillis"}
        mi{"Maorais"}
        mk{"Macadóinis"}
        ml{"Mailéalaimis"}
        mn{"Mongóilis"}
        mni{"Manapúiris"}
        moh{"Móháicis"}
        mr{"Maraitis"}
        mrj{"Mairis Iartharach"}
        ms{"Malaeis"}
        mt{"Máltais"}
        mwl{"Mioraindéis"}
        mwr{"Marmhairis"}
        my{"Burmais"}
        na{"Nárúis"}
        nb{"Ioruais Bokmål"}
        nd{"Ndeibéilis an Tuaiscirt"}
        nds{"Gearmáinis Íochtarach"}
        ne{"Neipeailis"}
        ng{"Ndongais"}
        niu{"Níobhais"}
        nl{"Ollainnis"}
        nl_BE{"Pléimeannais"}
        nn{"Nua-Ioruais"}
        no{"Ioruais"}
        non{"Sean-Lochlainnis"}
        nr{"Ndeibéilis an Deiscirt"}
        nso{"Sútúis an Tuaiscirt"}
        nv{"Navachóis"}
        ny{"Siséivis"}
        oc{"Ocsatáinis"}
        oj{"Óisibis"}
        om{"Oraimis"}
        or{"Oirísis"}
        os{"Oiséitis"}
        pa{"Puinseáibis"}
        peo{"Sean-Pheirsis"}
        pi{"Páilis"}
        pl{"Polainnis"}
        prg{"Prúisis"}
        ps{"Paistis"}
        pt{"Portaingéilis"}
        pt_BR{"Portaingéilis na Brasaíle"}
        pt_PT{"Portaingéilis Ibéarach"}
        qu{"Ceatsuais"}
        rm{"Rómainis"}
        rn{"Rúindis"}
        ro{"Rómáinis"}
        ro_MD{"Moldáivis"}
        rom{"Romainis"}
        ru{"Rúisis"}
        rup{"Arómáinis"}
        rw{"Ciniaruaindis"}
        sa{"Sanscrait"}
        sah{"Sachais"}
        sam{"Aramais Shamárach"}
        sat{"Santáilis"}
        sc{"Sairdínis"}
        scn{"Sicilis"}
        sco{"Albainis"}
        sd{"Sindis"}
        se{"Sáimis Thuaidh"}
        sg{"Sangóis"}
        sga{"Sean-Ghaeilge"}
        sh{"Seirbea-Chróitis"}
        si{"Siolóinis"}
        sk{"Slóvaicis"}
        sl{"Slóivéinis"}
        sm{"Samóis"}
        smj{"Sáimis Lule"}
        sn{"Seoinis"}
        so{"Somáilis"}
        sog{"Sogdánais"}
        sq{"Albáinis"}
        sr{"Seirbis"}
        ss{"Suaisis"}
        st{"Seasóitis"}
        su{"Sundais"}
        sux{"Suiméiris"}
        sv{"Sualainnis"}
        sw{"Svahaílis"}
        swc{"Svahaílis an Chongó"}
        syr{"Siricis"}
        szl{"Siléisis"}
        ta{"Tamailis"}
        te{"Teileagúis"}
        tg{"Táidsícis"}
        th{"Téalainnis"}
        ti{"Tigrinis"}
        tk{"Tuircméinis"}
        tl{"Tagálaigis"}
        tlh{"Klingon"}
        tn{"Suáinis"}
        to{"Tongais"}
        tr{"Tuircis"}
        ts{"Songais"}
        tt{"Tatairis"}
        tw{"Tíbhis"}
        ty{"Taihítis"}
        udm{"Udmairtis"}
        ug{"Uigiúiris"}
        uk{"Úcráinis"}
        und{"Teanga Anaithnid"}
        ur{"Urdúis"}
        uz{"Úisbéiceastáinis"}
        ve{"Veindis"}
        vec{"Veinéisis"}
        vi{"Vítneaimis"}
        vls{"Pléimeannais Iartharach"}
        vo{"Volapük"}
        wa{"Vallúnais"}
        wo{"Volaifis"}
        xal{"Cailmícis"}
        xh{"Cóisis"}
        yi{"Giúdais"}
        yo{"Iarúibis"}
        yue{"Cantainis"}
        za{"Siuáingis"}
        zea{"Séalainnis"}
        zh{"Sínis"}
        zh_Hans{"Sínis Shimplithe"}
        zh_Hant{"Sínis Thraidisiúnta"}
        zu{"Súlúis"}
        zun{"Zúinis"}
        zxx{"Gan ábhar teangeolaíoch"}
    }
    LanguagesShort{
        en_GB{"Béarla na R.A."}
        en_US{"Béarla S.A.M."}
    }
    Scripts{
        Arab{"Arabach"}
        Armn{"Airméanach"}
        Avst{"Aivéisteach"}
        Bali{"Bailíoch"}
        Batk{"Batacach"}
        Beng{"Beangálach"}
        Bopo{"Bopomofo"}
        Brai{"Braille"}
        Bugi{"Buigineach"}
        Buhd{"Buthaideach"}
        Cher{"Seiricíoch"}
        Copt{"Coptach"}
        Cprt{"Cipireach"}
        Cyrl{"Coireallach"}
        Deva{"Déiveanágrach"}
        Egyd{"Éigipteach coiteann"}
        Egyh{"Éigipteach cliarúil"}
        Egyp{"Iairiglifí Éigipteacha"}
        Ethi{"Aetópach"}
        Geor{"Seoirseach"}
        Glag{"Glagalach"}
        Goth{"Gotach"}
        Grek{"Gréagach"}
        Gujr{"Gúisearátach"}
        Guru{"Gurmúcach"}
        Hang{"Hangalach"}
        Hani{"Han"}
        Hans{"Simplithe"}
        Hant{"Traidisiúnta"}
        Hebr{"Eabhrach"}
        Hira{"Hireagánach"}
        Hluw{"Iairiglifí Anatólacha"}
        Hrkt{"Siollabraí Seapánacha"}
        Hung{"Sean-Ungárach"}
        Ital{"Sean-Iodáilic"}
        Java{"Iávach"}
        Jpan{"Seapánach"}
        Kana{"Catacánach"}
        Khmr{"Ciméarach"}
        Knda{"Cannadach"}
        Kore{"Cóiréach"}
        Laoo{"Laosach"}
        Latg{"Cló Gaelach"}
        Latn{"Laidineach"}
        Limb{"Liombúch"}
        Lina{"Líneach A"}
        Linb{"Líneach B"}
        Lisu{"Fraser"}
        Lyci{"Liciach"}
        Lydi{"Lidiach"}
        Mahj{"Mahasánach"}
        Mani{"Mainicéasach"}
        Maya{"Iairiglifí Máigheacha"}
        Mend{"Meindeach"}
        Mlym{"Mailéalamach"}
        Mong{"Mongólach"}
        Mymr{"Maenmarach"}
        Ogam{"Ogham"}
        Orya{"Oiríseach"}
        Perm{"Sean-Pheirmeach"}
        Phnx{"Féiníceach"}
        Runr{"Rúnach"}
        Samr{"Samárach"}
        Shaw{"Shawach"}
        Sinh{"Siolónach"}
        Syrc{"Siriceach"}
        Taml{"Tamalach"}
        Telu{"Teileagúch"}
        Tfng{"Tifinagh"}
        Tglg{"Tagálagach"}
        Thaa{"Tánach"}
        Thai{"Téalannach"}
        Tibt{"Tibéadach"}
        Xpeo{"Sean-Pheirseach"}
        Xsux{"Dingchruthach Suiméar-Acádach"}
        Zmth{"Nodaireacht Mhatamaiticiúil"}
        Zsym{"Siombailí"}
        Zxxx{"Gan Scríobh"}
        Zyyy{"Coitianta"}
        Zzzz{"Script Anaithnid"}
    }
    Scripts%stand-alone{
        Hans{"Han Simplithe"}
        Hant{"Han Traidisiúnta"}
    }
    Types{
        calendar{
            buddhist{"Féilire Búdaíoch"}
            chinese{"Féilire Síneach"}
            coptic{"Féilire Coptach"}
            ethiopic{"Féilire Aetóipice"}
            gregorian{"Féilire Ghréagóra"}
            hebrew{"Féilire na nEabhrach"}
            islamic{"Féilire Ioslámach"}
            iso8601{"Féilire ISO-8601"}
            japanese{"Féilire Seapánach"}
            persian{"Féilire Peirseach"}
            roc{"Féilire Téavánach"}
        }
        collation{
            ducet{"Ord Réamhshocraithe Sórtála Unicode"}
            search{"Cuardach Ilfhóinteach"}
            standard{"Ord Caighdeánach Sórtála"}
        }
        numbers{
            arab{"Digití Ind-Arabacha"}
            arabext{"Digití Ind-Arabacha Breisithe"}
            armn{"Uimhreacha Airméanacha"}
            bali{"Digití Bailíocha"}
            beng{"Digití Beangálacha"}
            deva{"Digití Déiveanágracha"}
            ethi{"Uimhreacha Aetóipice"}
            fullwide{"Digití Lánleithid"}
            geor{"Uimhreacha Seoirseacha"}
            grek{"Uimhreacha Gréagacha"}
            gujr{"Digití Gúisearátacha"}
            guru{"Digití Gurmúcacha"}
            hanidec{"Uimhreacha Deachúlacha Síneacha"}
            hebr{"Uimhreacha Eabhracha"}
            java{"Digití Iávacha"}
            jpan{"Uimhreacha Seapánacha"}
            khmr{"Digití Ciméaracha"}
            knda{"Digití Cannadacha"}
            laoo{"Digití Laosacha"}
            latn{"Digití Iartharacha"}
            mlym{"Digití Mailéalamacha"}
            mymr{"Digití Maenmaracha"}
            orya{"Digití Oiríseacha"}
            roman{"Uimhreacha Rómhánacha"}
            taml{"Uimhreacha Traidisiúnta Tamalacha"}
            tamldec{"Digití Tamalacha"}
            telu{"Digití Teileagúcha"}
            thai{"Digití Téalannacha"}
            tibt{"Digití Tibéadacha"}
        }
    }
    Variants{
        1959ACAD{"Acadúil"}
        ALALC97{"Rómhánú ALA-LC, eagrán 1997"}
        HEPBURN{"Rómhánú Hepburn"}
        PINYIN{"Rómhánú Pinyin"}
        POSIX{"Ríomhaire"}
        ULSTER{"Cúige Uladh"}
        VALENCIA{"Vaileinsis"}
        WADEGILE{"Rómhánú Wade-Giles"}
    }
    Version{"2.1.8.9"}
    codePatterns{
        language{"Teanga: {0}"}
        script{"Script: {0}"}
        territory{"Réigiún: {0}"}
    }
    localeDisplayPattern{
        keyTypePattern{"{0}: {1}"}
        pattern{"{0} ({1})"}
        separator{"{0}, {1}"}
    }
}
