﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/gd.xml
// *
// ***************************************************************************
gd{
    Keys{
        calendar{"Mìosachan"}
        collation{"Òrdugh an t-seòrsachaidh"}
        currency{"Airgeadra"}
        numbers{"Àireamhan"}
    }
    Languages{
        aa{"Afar"}
        ab{"Abchasais"}
        ae{"Avestanais"}
        aeb{"Arabais Thuiniseach"}
        af{"Afraganais"}
        agq{"Aghem"}
        ak{"Akan"}
        ale{"Aleutais"}
        am{"Amtharais"}
        an{"Aragonais"}
        ang{"Seann-Bheurla"}
        ar{"Arabais"}
        ar_001{"Nuadh-Arabais Stannardach"}
        arc{"Aramais"}
        arn{"Mapuche"}
        arq{"Arabais Aildireach"}
        ary{"Arabais Mhorocach"}
        arz{"Arabais Èipheiteach"}
        as{"Asamais"}
        asa{"Asu"}
        ase{"Cainnt-shanais na h-Aimeireaga"}
        ast{"Astùrais"}
        av{"Avarais"}
        az{"Asarbaideànais"}
        azb{"Asarbaideànais Dheasach"}
        ba{"Bashkir"}
        bal{"Baluchì"}
        be{"Bealaruisis"}
        bem{"Bemba"}
        bez{"Bena"}
        bg{"Bulgarais"}
        bi{"Bislama"}
        bm{"Bambara"}
        bn{"Beangailis"}
        bo{"Tibeitis"}
        br{"Breatnais"}
        brx{"Bodo"}
        bs{"Bosnais"}
        ca{"Catalanais"}
        ce{"Deideanais"}
        cgg{"Chiga"}
        ch{"Chamorro"}
        chr{"Cherokee"}
        ckb{"Cùrdais Soranî"}
        co{"Corsais"}
        cop{"Coptais"}
        crh{"Turcais Chriomach"}
        cs{"Seacais"}
        csb{"Caisiubais"}
        cu{"Slàbhais na h-Eaglaise"}
        cy{"Cuimris"}
        da{"Danmhairgis"}
        dav{"Taita"}
        de{"Gearmailtis"}
        de_AT{"Gearmailtis na h-Ostaire"}
        de_CH{"Àrd-Ghearmailtis na h-Eilbheise"}
        dje{"Zarma"}
        dsb{"Sòrbais Ìochdarach"}
        dua{"Duala"}
        dum{"Meadhan-Dhuitsis"}
        dv{"Divehi"}
        dyo{"Jola-Fonyi"}
        dz{"Dzongkha"}
        ebu{"Embu"}
        ee{"Ewe"}
        egy{"Èipheitis Àrsaidh"}
        el{"Greugais"}
        elx{"Elamais"}
        en{"Beurla"}
        en_AU{"Beurla Astràilia"}
        en_CA{"Beurla Chanada"}
        en_GB{"Beurla Bhreatainn"}
        en_US{"Beurla na h-Aimeireaga"}
        enm{"Meadhan-Bheurla"}
        eo{"Esperanto"}
        es{"Spàinntis"}
        es_419{"Spàinntis na h-Aimeireaga Laidinneach"}
        es_ES{"Spàinntis Eòrpach"}
        es_MX{"Spàinntis Mheagsagach"}
        et{"Eastoinis"}
        eu{"Basgais"}
        fa{"Farsaidh"}
        fi{"Fionnlannais"}
        fil{"Filipinis"}
        fj{"Fìdis"}
        fo{"Fàrothais"}
        fr{"Fraingis"}
        fr_CA{"Fraingis Chanada"}
        fr_CH{"Fraingis Eilbheiseach"}
        frm{"Meadhan-Fhraingis"}
        fro{"Seann-Fhraingis"}
        frr{"Frìoslannais Thuathach"}
        frs{"Frìoslannais Earach"}
        fur{"Friùilis"}
        fy{"Frìoslannais Siarach"}
        ga{"Gaeilge"}
        gag{"Gagauz"}
        gd{"Gàidhlig"}
        gez{"Ge’ez"}
        gil{"Ciribeasais"}
        gl{"Gailìsis"}
        gmh{"Meadhan-Àrd-Gearmailtis"}
        gn{"Guaraní"}
        goh{"Seann-Àrd-Gearmailtis"}
        got{"Gotais"}
        grc{"Greugais Àrsaidh"}
        gsw{"Gearmailtis Eilbheiseach"}
        gu{"Gujarati"}
        guz{"Gusii"}
        gv{"Gaelg"}
        ha{"Hausa"}
        haw{"Cànan Hawai’i"}
        he{"Eabhra"}
        hi{"Hindis"}
        hif{"Hindis Fhìditheach"}
        ho{"Hiri Motu"}
        hr{"Cròthaisis"}
        hsb{"Sòrbais Uachdarach"}
        ht{"Crìtheol Haidhti"}
        hu{"Ungairis"}
        hy{"Airmeinis"}
        ia{"Interlingua"}
        id{"Innd-Innsis"}
        ie{"Interlingue"}
        ig{"Igbo"}
        ii{"Yi Sichuan"}
        ik{"Inupiaq"}
        io{"Ido"}
        is{"Innis Tìlis"}
        it{"Eadailtis"}
        iu{"Inuktitut"}
        ja{"Seapanais"}
        jam{"Beurla Crìtheolach Diameuga"}
        jgo{"Ngomba"}
        jmc{"Machame"}
        jpr{"Peirsis Iùdhach"}
        jrb{"Arabais Iùdhach"}
        jv{"Deàbhanais"}
        ka{"Cairtbheilis"}
        kab{"Kabyle"}
        kam{"Kamba"}
        kde{"Makonde"}
        kea{"Kabuverdianu"}
        khq{"Koyra Chiini"}
        ki{"Kikuyu"}
        kk{"Casachais"}
        kl{"Kalaallisut"}
        kln{"Kalenjin"}
        km{"Cmèar"}
        kn{"Kannada"}
        ko{"Coirèanais"}
        koi{"Komi-Permyak"}
        kok{"Konkani"}
        ks{"Caismiris"}
        ksb{"Shambala"}
        ksf{"Bafia"}
        ku{"Cùrdais"}
        kw{"Còrnais"}
        ky{"Cìorgasais"}
        la{"Laideann"}
        lad{"Ladino"}
        lag{"Langi"}
        lb{"Lugsamburgais"}
        lg{"Ganda"}
        lij{"Liogùrais"}
        lkt{"Lakhóta"}
        lmo{"Lombardais"}
        ln{"Lingala"}
        lo{"Làtho"}
        lt{"Liotuainis"}
        lu{"Luba-Katanga"}
        luo{"Luo"}
        luy{"Luyia"}
        lv{"Laitbheis"}
        lzh{"Sìnis an Litreachais"}
        mas{"Maasai"}
        mer{"Meru"}
        mfe{"Morisyen"}
        mg{"Malagasais"}
        mga{"Meadhan-Ghaeilge"}
        mgh{"Makhuwa-Meetto"}
        mgo{"Meta’"}
        mh{"Marshallais"}
        mi{"Māori"}
        mk{"Masadonais"}
        ml{"Malayalam"}
        mn{"Mongolais"}
        moh{"Mohawk"}
        mr{"Marathi"}
        ms{"Malaidhis"}
        mt{"Maltais"}
        mua{"Mundang"}
        mul{"Iomadh cànan"}
        my{"Burmais"}
        na{"Nabhru"}
        naq{"Nama"}
        nb{"Bokmål na Nirribhidh"}
        nd{"Ndebele Thuathach"}
        ne{"Neapàilis"}
        nl{"Duitsis"}
        nl_BE{"Flannrais"}
        nmg{"Kwasio"}
        nn{"Nynorsk na Nirribhidh"}
        no{"Nirribhis"}
        non{"Seann-Lochlannais"}
        nqo{"N’Ko"}
        nr{"Ndebele Dheasach"}
        nso{"Leasotais Thuathach"}
        nus{"Nuer"}
        ny{"Chichewa"}
        nyn{"Nyankole"}
        oc{"Ogsatanais"}
        om{"Oromo"}
        or{"Oriya"}
        os{"Ossetic"}
        ota{"Turcais Otomanach"}
        pa{"Panjabi"}
        pau{"Palabhais"}
        pdc{"Gearmailtis Phennsylvania"}
        peo{"Seann-Pheirsis"}
        pi{"Pali"}
        pl{"Pòlainnis"}
        prg{"Pruisis"}
        ps{"Pachtu"}
        pt{"Portagailis"}
        pt_BR{"Portagailis Bhraisileach"}
        pt_PT{"Portagailis Eòrpach"}
        qu{"Ceatsua"}
        quc{"K’iche’"}
        rap{"Rapa Nui"}
        rm{"Rumains"}
        rn{"Kirundi"}
        ro{"Romàinis"}
        ro_MD{"Moldobhais"}
        rof{"Rombo"}
        rom{"Romanais"}
        ru{"Ruisis"}
        rw{"Kinyarwanda"}
        rwk{"Rwa"}
        sa{"Sanskrit"}
        sah{"Sachais"}
        sam{"Aramais Shamaritanach"}
        saq{"Samburu"}
        sbp{"Sangu"}
        sc{"Sàrdais"}
        scn{"Sisilis"}
        sco{"Albais"}
        sd{"Sindhi"}
        se{"Sàmais Thuathach"}
        seh{"Sena"}
        ses{"Koyraboro Senni"}
        sg{"Sango"}
        sga{"Seann-Ghaeilge"}
        shi{"Tachelhit"}
        shu{"Arabais Seàdach"}
        si{"Sinhala"}
        sk{"Slòbhacais"}
        sl{"Slòbhainis"}
        sm{"Samothais"}
        sma{"Sàmais Dheasach"}
        smj{"Sàmais Lule"}
        smn{"Sàmais Inari"}
        sms{"Sàmais Skolt"}
        sn{"Shona"}
        snk{"Soninke"}
        so{"Somàilis"}
        sq{"Albàinis"}
        sr{"Sèirbis"}
        st{"Leasotach Dheasach"}
        su{"Cànan Sunda"}
        sv{"Suainis"}
        sw{"Kiswahili"}
        swb{"Comorais"}
        swc{"Kiswahili na Congo"}
        syc{"Suraidheac Chlasaigeach"}
        syr{"Suraidheac"}
        ta{"Taimilis"}
        te{"Telugu"}
        teo{"Teso"}
        tet{"Tetum"}
        tg{"Taidigis"}
        th{"Tàidh"}
        ti{"Tigrinya"}
        tk{"Turcmanais"}
        tkl{"Tokelau"}
        tl{"Tagalog"}
        to{"Tongais"}
        tog{"Nyasa Tonga"}
        tpi{"Tok Pisin"}
        tr{"Turcais"}
        ts{"Tsonga"}
        tt{"Tatarais"}
        twq{"Tasawaq"}
        tzm{"Tamazight Meadhan na h-Atlas"}
        ug{"Ùigiurais"}
        uk{"Ucràinis"}
        und{"Cànan neo-aithnichte"}
        ur{"Ùrdu"}
        uz{"Usbagais"}
        vai{"Vai"}
        ve{"Venda"}
        vi{"Bhiet-Namais"}
        vls{"Flannrais Siarach"}
        vo{"Volapük"}
        vun{"Vunjo"}
        wo{"Wolof"}
        xh{"Xhosa"}
        xog{"Soga"}
        yi{"Iùdhais"}
        yo{"Ioruba"}
        yue{"Cantonais"}
        zgh{"Tamazight Stannardach Moroco"}
        zh{"Sìnis"}
        zh_Hans{"Sìnis Shimplichte"}
        zh_Hant{"Sìnis Thradaiseanta"}
        zu{"Zulu"}
        zxx{"Susbaint nach eil ‘na chànan"}
    }
    Languages%short{
        az{"Azeri"}
        en_GB{"Beurla na RA"}
        en_US{"Beurla nan SA"}
    }
    Scripts{
        Aghb{"Albàinis Chabhcasach"}
        Arab{"Arabais"}
        Armi{"Aramais impireil"}
        Armn{"Airmeinis"}
        Avst{"Avestanais"}
        Bali{"Bali"}
        Beng{"Beangailis"}
        Bopo{"Bopomofo"}
        Brai{"Braille"}
        Cans{"Sgrìobhadh Lideach Aonaichte nan Tùsanach Canadach"}
        Copt{"Coptais"}
        Cprt{"Cìoprasais"}
        Cyrl{"Cirilis"}
        Cyrs{"Cirilis Seann-Slàbhais na h-Eaglaise"}
        Deva{"Devanagari"}
        Egyp{"Sealbh-sgrìobhadh Èipheiteach"}
        Ethi{"Ge’ez"}
        Geor{"Cairtbheilis"}
        Goth{"Gotais"}
        Grek{"Greugais"}
        Gujr{"Gujarati"}
        Guru{"Gurmukhi"}
        Hang{"Hangul"}
        Hani{"Han"}
        Hans{"Simplichte"}
        Hant{"Tradaiseanta"}
        Hebr{"Eabhra"}
        Hira{"Hiragana"}
        Hluw{"Dealbh-sgrìobhadh Anatolach"}
        Hrkt{"Katakana no Hiragana"}
        Hung{"Seann-Ungarais"}
        Ital{"Seann-Eadailtis"}
        Java{"Deàbhanais"}
        Jpan{"Seapanais"}
        Kana{"Katakana"}
        Khmr{"Cmèar"}
        Knda{"Kannada"}
        Kore{"Coirèanais"}
        Laoo{"Làtho"}
        Latf{"Laideann fraktur"}
        Latg{"Laideann Ghàidhealach"}
        Latn{"Laideann"}
        Maya{"Dealbh-sgrìobhadh Mayach"}
        Mlym{"Malayalam"}
        Mong{"Mongolais"}
        Mymr{"Miànmar"}
        Narb{"Seann-Arabach Thuathach"}
        Ogam{"Ogham-chraobh"}
        Orya{"Oriya"}
        Prti{"Partais snaidh-sgrìobhte"}
        Runr{"Rùn-sgrìobhadh"}
        Sarb{"Seann-Arabais Dheasach"}
        Sinh{"Sinealais"}
        Syrc{"Suraidheac"}
        Syrj{"Suraidheac Siarach"}
        Syrn{"Suraidheac Earach"}
        Taml{"Taimil"}
        Telu{"Telugu"}
        Tfng{"Tifinagh"}
        Tglg{"Tagalog"}
        Thaa{"Thaana"}
        Thai{"Tàidh"}
        Tibt{"Tibeitis"}
        Xpeo{"Seann-Pheirsis"}
        Zmth{"Gnìomhairean matamataig"}
        Zsym{"Samhlaidhean"}
        Zxxx{"Gun sgrìobhadh"}
        Zyyy{"Coitcheann"}
        Zzzz{"Litreadh neo-aithnichte"}
    }
    Scripts%stand-alone{
        Hans{"Han simplichte"}
        Hant{"Han tradaiseanta"}
    }
    Types{
        calendar{
            buddhist{"Am Mìosachan Budach"}
            chinese{"Am Mìosachan Sìneach"}
            coptic{"Am Mìosachan Coptach"}
            dangi{"Mìosachan Dangi"}
            ethiopic{"Mìosachan na h-Itioipe"}
            ethiopic-amete-alem{"Mìosachan Itiopach Amete Alem"}
            gregorian{"Am Mìosachan Griogarach"}
            hebrew{"Am Mìosachan Eabhrach"}
            indian{"Mìosachan Nàiseanta nan Innseachan"}
            islamic{"Am Mìosachan Ioslamach"}
            islamic-civil{"Am Mìosachan Ioslamach (clàrach, linn sìobhalta)"}
            islamic-rgsa{"Am Mìosachan Ioslamach (arabia nan Sabhd, sealladh)"}
            islamic-tbla{"Am Mìosachan Ioslamach (clàrach, linn reul-eòlach)"}
            islamic-umalqura{"Am Mìosachan Ioslamach (Umm al-Qura)"}
            iso8601{"Mìosachan ISO-8601"}
            japanese{"Am Mìosachan Seapanach"}
            persian{"Am Mìosachan Pearsach"}
            roc{"Mìosachan Poblachd na Sìne"}
        }
        collation{
            big5han{"Òrdugh seòrsachaidh na Sìnise Tradaiseanta - Big5"}
            dictionary{"Òrdugh seòrsachaidh an fhaclair"}
            ducet{"Òrdugh seòrsachaidh Unicode bunaiteach"}
            eor{"Òrdugh seòrsachaidh Eòrpach"}
            gb2312han{"Òrdugh seòrsachaidh na Sìnise Simplichte - GB2312"}
            phonebook{"Òrdugh seòrsachaidh nan leabhraichean-fòn"}
            pinyin{"Òrdugh seòrsachaidh Pinyin"}
            reformed{"Òrdugh seòrsachaidh ath-leasaichte"}
            search{"Lorg coitcheann"}
            searchjl{"Lorg leis a’ chiad chonnrag Hangul"}
            standard{"Òrdugh seòrsachaidh stannardach"}
            stroke{"Òrdugh nan stràcan"}
            traditional{"Òrdugh seòrsachaidh tradaiseanta"}
            unihan{"Òrdugh an fhreumha ‘s nan stràcan"}
            zhuyin{"Òrdugh seòrsachaidh Zhuyin"}
        }
        numbers{
            arab{"Àireamhan Arabach-Innseanach"}
            arabext{"Àireamhan Arabach-Innseanach leudaichte"}
            armn{"Àireamhan na h-Airmeinise"}
            armnlow{"Àireamhan beaga na h-Airmeinise"}
            bali{"Àireamhan Bali"}
            beng{"Àireamhan na Beangailise"}
            deva{"Àireamhan Devanagari"}
            ethi{"Àireamhan Itiopach"}
            fullwide{"Àireamhan làn-leud"}
            geor{"Àireamhan na Cairtbheilise"}
            grek{"Àireamhan na Greugaise"}
            greklow{"Àireamhan beaga na Greugaise"}
            gujr{"Àireamhan Gujarati"}
            guru{"Àireamhan Gurmukhi"}
            hanidec{"Àireamhan deicheach na Sìnise"}
            hans{"Àireamhan na Sìnise Shimplichte"}
            hansfin{"Àireamhan ionmhasail na Sìnise Shimplichte"}
            hant{"Àireamhan na Sìnise Thradaiseanta"}
            hantfin{"Àireamhan ionmhasail na Sìnise Thradaiseanta"}
            hebr{"Àireamhan na h-Eabhra"}
            java{"Àireamhan na Deàbhanaise"}
            jpan{"Àireamhan na Seapanaise"}
            jpanfin{"Àireamhan ionmhasail na Seapanaise"}
            khmr{"Àireamhan Cmèar"}
            knda{"Àireamhan Kannada"}
            laoo{"Àireamhan Làtho"}
            latn{"Àireamhan Siarach"}
            mlym{"Aìreamhan Malayalam"}
            mong{"Àireamhan na Mongolaise"}
            mymr{"Àireamhan Miànmar"}
            orya{"Àireamhan Oriya"}
            roman{"Àireamhan Ròmanach"}
            romanlow{"Àireamhan beaga Ròmanach"}
            taml{"Àireamhan na Taimilise Tradaiseanta"}
            tamldec{"Àireamhan na Taimilise"}
            telu{"Àireamhan Telugu"}
            thai{"Àireamhan Tàidh"}
            tibt{"Àireamhan na Tibeitise"}
        }
    }
    Version{"2.1.12.94"}
    codePatterns{
        language{"Cànan: {0}"}
        script{"Litreadh: {0}"}
        territory{"Roinn-dùthcha: {0}"}
    }
    localeDisplayPattern{
        keyTypePattern{"{0}: {1}"}
        pattern{"{0} ({1})"}
        separator{"{0}, {1}"}
    }
}
