﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/mt.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/mt.xml
 */
mt{
    Keys{
        calendar{"Kalendarju"}
        collation{"Kollazjoni"}
        currency{"Munita"}
    }
    Languages{
        aa{"Afar"}
        ab{"Abkażjan"}
        ace{"Aċiniż"}
        ach{"Akoli"}
        ada{"Adangme"}
        ady{"Adyghe"}
        ae{"Avestan"}
        af{"Afrikans"}
        afa{"Afro-Asjatiku (Oħra)"}
        afh{"Afriħili"}
        ain{"Ajnu"}
        ak{"Akan"}
        akk{"Akkadjen"}
        ale{"Aleut"}
        alg{"Lingwi Algonqwinjani"}
        am{"Amħariku"}
        an{"Aragonese"}
        ang{"Ingliż, Antik"}
        anp{"Angika"}
        apa{"Lingwi Apaċi"}
        ar{"Għarbi"}
        ar_001{"Għarbi Standard Modern"}
        arc{"Aramajk"}
        arn{"Arawkanjan"}
        arp{"Arapaħo"}
        art{"Artifiċjali (Oħra)"}
        arw{"Arawak"}
        as{"Assamese"}
        ast{"Asturian"}
        ath{"Lingwi Atabaskani"}
        aus{"Lingwi Awstraljani"}
        av{"Avarik"}
        awa{"Awadħi"}
        ay{"Ajmara"}
        az{"Ażerbajġani"}
        ba{"Baxkir"}
        bad{"Banda"}
        bai{"Lingwi Bamileke"}
        bal{"Baluċi"}
        ban{"Baliniż"}
        bas{"Basa"}
        bat{"Baltiku (Oħra)"}
        be{"Belarussu"}
        bej{"Beja"}
        bem{"Bemba"}
        ber{"Beber"}
        bg{"Bulgaru"}
        bh{"Biħari"}
        bho{"Bojpuri"}
        bi{"Bislama"}
        bik{"Bikol"}
        bin{"Bini"}
        bla{"Siksika"}
        bm{"Bambara"}
        bn{"Bengali"}
        bnt{"Bantu"}
        bo{"Tibetjan"}
        br{"Brenton"}
        bra{"Braj"}
        bs{"Bosnijan"}
        btk{"Batak"}
        bua{"Burjat"}
        bug{"Buginiż"}
        byn{"Blin"}
        ca{"Katalan"}
        cad{"Kaddo"}
        cai{"Amerika Ċentrali (Oħra)"}
        car{"Karib"}
        cau{"Kawkasu (Oħra)"}
        cch{"Atsam"}
        ce{"Ċeċen"}
        ceb{"Sibwano"}
        cel{"Keltiku (Oħra)"}
        ch{"Ċamorro"}
        chb{"Ċibċa"}
        chg{"Ċagataj"}
        chk{"Ċukese"}
        chm{"Mari"}
        chn{"Ġargon taċ-Ċinuk"}
        cho{"Ċostaw"}
        chp{"Ċipewjan"}
        chr{"Ċerokij"}
        chy{"Xajenn"}
        cmc{"Lingwi Ċamiki"}
        co{"Korsiku"}
        cop{"Koptiku"}
        cpe{"Kreoli u Piġini, Bbażat fuq l-Ingliż (Oħra)"}
        cpf{"Kreoli u Piġini, Bbażat fuq il-Franċiż (Oħra)"}
        cpp{"Kreoli u Piġini, Bbażat fuq il-Portugiż (Oħra)"}
        cr{"Krij"}
        crh{"Crimean Turkish; Crimean Tatar"}
        crp{"Kreoli u Piġini (Oħra)"}
        cs{"Ċek"}
        csb{"Kashubian"}
        cu{"Slaviku tal-Knisja"}
        cus{"Kuxtiku (Oħra)"}
        cv{"Ċuvax"}
        cy{"Welx"}
        da{"Daniż"}
        dak{"Dakota"}
        dar{"Dargwa"}
        day{"Dajak"}
        de{"Ġermaniż"}
        del{"Delawerjan"}
        den{"Slav"}
        dgr{"Dogrib"}
        din{"Dinka"}
        doi{"Dogri"}
        dra{"Dravidjan (Oħra)"}
        dsb{"Lower Sorbian"}
        dua{"Dwala"}
        dum{"Olandiż, Medjevali"}
        dv{"Diveħi"}
        dyu{"Djula"}
        dz{"Dżongka"}
        ee{"Ewe"}
        efi{"Efik"}
        egy{"Eġizzjan (Antik)"}
        eka{"Ekajuk"}
        el{"Grieg"}
        elx{"Elamit"}
        en{"Ingliż"}
        enm{"Ingliż, Medjevali"}
        eo{"Esperanto"}
        es{"Spanjol"}
        et{"Estonjan"}
        eu{"Bask"}
        ewo{"Ewondo"}
        fa{"Persjan"}
        fan{"Fang"}
        fat{"Fanti"}
        ff{"Fulaħ"}
        fi{"Finlandiż"}
        fil{"Filippino"}
        fiu{"Finno - Ugrijan"}
        fj{"Fiġi"}
        fo{"Fawriż"}
        fon{"Fon"}
        fr{"Franċiż"}
        frm{"Franċiż, Medjevali"}
        fro{"Franċiż, Antik"}
        fur{"Frijuljan"}
        fy{"Friżjan"}
        ga{"Irlandiż"}
        gaa{"Ga"}
        gay{"Gajo"}
        gba{"Gbaja"}
        gd{"Galliku Skoċċiż"}
        gem{"Ġermaniku (Oħra)"}
        gez{"Geez"}
        gil{"Gilbertjan"}
        gl{"Gallegjan"}
        gmh{"Ġermaniku, Medjevali Pulit"}
        gn{"Gwarani"}
        goh{"Ġermaniku, Antik Pulit"}
        gon{"Gondi"}
        gor{"Gorontalo"}
        got{"Gotiku"}
        grb{"Ġerbo"}
        grc{"Grieg, Antik"}
        gu{"Guġarati"}
        gv{"Manks"}
        gwi{"Gwiċin"}
        ha{"Ħawsa"}
        hai{"Ħajda"}
        haw{"Ħawajjan"}
        he{"Ebrajk"}
        hi{"Ħindi"}
        hil{"Hiligaynon"}
        him{"Ħimaċali"}
        hit{"Ħittit"}
        hmn{"Ħmong"}
        ho{"Ħiri Motu"}
        hr{"Kroat"}
        hsb{"Upper Sorbian"}
        ht{"Haitian"}
        hu{"Ungeriż"}
        hup{"Ħupa"}
        hy{"Armenjan"}
        hz{"Ħerero"}
        ia{"Interlingua"}
        iba{"Iban"}
        id{"Indoneżjan"}
        ie{"Interlingue"}
        ig{"Igbo"}
        ii{"Sichuan Yi"}
        ijo{"Iġo"}
        ik{"Inupjak"}
        ilo{"Iloko"}
        inc{"Indjan (Oħra)"}
        ine{"Indo-Ewropew"}
        inh{"Ingush"}
        io{"Ido"}
        ira{"Iranjan"}
        iro{"Lingwi Irogwjani"}
        is{"Iżlandiż"}
        it{"Taljan"}
        iu{"Inukitut"}
        ja{"Ġappuniż"}
        jbo{"Lojban"}
        jpr{"Lhudi-Persjan"}
        jrb{"Lhudi-Għarbi"}
        jv{"Ġavaniż"}
        ka{"Ġorġjan"}
        kaa{"Kara-Kalpak"}
        kab{"Kabuljan"}
        kac{"Kaċin"}
        kam{"Kamba"}
        kar{"Karen"}
        kaw{"Kawi"}
        kbd{"Kabardian"}
        kg{"Kongo"}
        kha{"Kasi"}
        khi{"Kojsan"}
        kho{"Kotaniż"}
        ki{"Kikuju"}
        kj{"Kuanyama"}
        kk{"Każak"}
        kl{"Kalallisut"}
        km{"Kmer"}
        kmb{"Kimbundu"}
        kn{"Kannada"}
        ko{"Korejan"}
        kok{"Konkani"}
        kos{"Kosrejan"}
        kpe{"Kpelle"}
        kr{"Kanuri"}
        krc{"Karachay-Balkar"}
        kro{"Kru"}
        kru{"Kurusk"}
        ks{"Kaxmiri"}
        ku{"Kurdiż"}
        kum{"Kumiku"}
        kut{"Kutenaj"}
        kv{"Komi"}
        kw{"Korniku"}
        ky{"Kirgiż"}
        la{"Latin"}
        lad{"Ladino"}
        lah{"Landa"}
        lam{"Lamba"}
        lb{"Letżburgiż"}
        lez{"Leżgjan"}
        lg{"Ganda"}
        li{"Limburgish"}
        ln{"Lingaljan"}
        lo{"Lao"}
        lol{"Mongo"}
        loz{"Lożi"}
        lt{"Litwanjan"}
        lu{"Luba-Katanga"}
        lua{"Luba-Luluwa"}
        lui{"Luwisinuż"}
        lun{"Lunda"}
        luo{"Luwa"}
        lus{"Luxaj"}
        lv{"Latvjan"}
        mad{"Maduriż"}
        mag{"Magaħi"}
        mai{"Majtili"}
        mak{"Makasar"}
        man{"Mandingwan"}
        map{"Awstronesjan"}
        mas{"Masaj"}
        mdf{"Moksha"}
        mdr{"Mandar"}
        men{"Mende"}
        mg{"Malagażi"}
        mga{"Irlandiż, Medjevali"}
        mh{"Marxall"}
        mi{"Maori"}
        mic{"Mikmek"}
        min{"Minangkabaw"}
        mis{"Lingwi Oħra"}
        mk{"Maċedonjan"}
        mkh{"Mon-Kmer (Oħra)"}
        ml{"Malajalam"}
        mn{"Mongoljan"}
        mnc{"Manċurjan"}
        mni{"Manipuri"}
        mno{"Lingwi Manobo"}
        mo{"Moldavjan"}
        moh{"Moħak"}
        mos{"Mossi"}
        mr{"Marati"}
        ms{"Malajan"}
        mt{"Malti"}
        mul{"Lingwi Diversi"}
        mun{"Lingwi tal-Munda"}
        mus{"Kriek"}
        mwl{"Mirandiż"}
        mwr{"Marwari"}
        my{"Burmiż"}
        myn{"Majan"}
        myv{"Erzya"}
        na{"Nawuru"}
        nah{"Naħwatil"}
        nai{"Indjan tal-Amerika ta’ Fuq (Oħra)"}
        nap{"Neapolitan"}
        nb{"Bokmahal Norveġiż"}
        nd{"Ndebele, ta’ Fuq"}
        nds{"Ġermaniż Komuni; Sassonu Komuni"}
        ne{"Nepaliż"}
        new{"Newari"}
        ng{"Ndonga"}
        nia{"Nijas"}
        nic{"Niġerjan - Kordofanjan"}
        niu{"Nijuwejan"}
        nl{"Olandiż"}
        nn{"Ninorsk Norveġiż"}
        no{"Norveġiż"}
        nog{"Nogai"}
        non{"Skandinav, Antik"}
        nr{"Ndebele, t’Isfel"}
        nso{"Soto, ta’ Fuq"}
        nub{"Lingwi Nubjani"}
        nv{"Navaħo"}
        nwc{"Classical Newari"}
        ny{"Ċiċewa; Njanġa"}
        nym{"Njamweżi"}
        nyn{"Nyankole"}
        nyo{"Njoro"}
        nzi{"Nżima"}
        oc{"Oċċitan"}
        oj{"Oġibwa"}
        om{"Oromo (Afan)"}
        or{"Orija"}
        os{"Ossettiku"}
        osa{"Osaġjan"}
        ota{"Tork (Imperu Ottoman)"}
        oto{"Lingwi Otomjani"}
        pa{"Punġabi"}
        paa{"Papwan (Oħra)"}
        pag{"Pangasinjan"}
        pal{"Paħlavi"}
        pam{"Pampamga"}
        pap{"Papjamento"}
        pau{"Palawjan"}
        peo{"Persjan Antik"}
        phi{"Filippin (Oħra)"}
        phn{"Feniċju"}
        pi{"Pali"}
        pl{"Pollakk"}
        pon{"Ponpejan"}
        pra{"Lingwi Prakriti"}
        pro{"Provenzal, Antik"}
        ps{"Paxtun"}
        pt{"Portugiż"}
        qu{"Keċwa"}
        raj{"Raġastani"}
        rap{"Rapanwi"}
        rar{"Rarotongani"}
        rm{"Reto-Romanz"}
        rn{"Rundi"}
        ro{"Rumen"}
        roa{"Romanz (Oħra)"}
        rom{"Żingaru"}
        root{"Għerq"}
        ru{"Russu"}
        rup{"Aromanijan"}
        rw{"Kinjarwanda"}
        sa{"Sanskrit"}
        sad{"Sandawe"}
        sah{"Jakut"}
        sai{"Indjan tal-Amerika t’Isfel (Oħra)"}
        sal{"Salixan"}
        sam{"Samritan"}
        sas{"Saska"}
        sat{"Santali"}
        sc{"Sardinjan"}
        sco{"Skoċċiż"}
        sd{"Sindi"}
        se{"Sami ta’ Fuq"}
        sel{"Selkup"}
        sem{"Semitiku"}
        sg{"Sango"}
        sga{"Irlandiż, Antik"}
        sgn{"Lingwa tas-Sinjali"}
        sh{"Serbo-Kroat"}
        shn{"Xan"}
        si{"Sinħaliż"}
        sid{"Sidamo"}
        sio{"Lingwi Suwjani"}
        sit{"Sino-Tibetjani (Oħra)"}
        sk{"Slovakk"}
        sl{"Sloven"}
        sla{"Slavic (Other)"}
        sm{"Samojan"}
        sma{"Southern Sami"}
        smi{"Sami languages (Other)"}
        smj{"Lule Sami"}
        smn{"Inari Sami"}
        sms{"Skolt Sami"}
        sn{"Xona"}
        snk{"Soninke"}
        so{"Somali"}
        sog{"Sogdien"}
        son{"Songaj"}
        sq{"Albaniż"}
        sr{"Serb"}
        srr{"Serer"}
        ss{"Swati"}
        ssa{"Nilo-Saħaram"}
        st{"Soto, t’Isfel"}
        su{"Sundaniż"}
        suk{"Sukuma"}
        sus{"Susu"}
        sux{"Sumerjan"}
        sv{"Svediż"}
        sw{"Swaħili"}
        syr{"Sirjan"}
        ta{"Tamil"}
        tai{"Tai (Oħra)"}
        te{"Telugu"}
        tem{"Timne"}
        ter{"Tereno"}
        tet{"Tetum"}
        tg{"Taġik"}
        th{"Tajlandiż"}
        ti{"Tigrinja"}
        tig{"Tigre"}
        tiv{"Tiv"}
        tk{"Turkmeni"}
        tkl{"Tokelau"}
        tl{"Tagalog"}
        tlh{"Klingon"}
        tli{"Tlingit"}
        tmh{"Tamaxek"}
        tn{"Zwana"}
        to{"Tongan"}
        tog{"Tonga (Njasa)"}
        tpi{"Tok Pisin"}
        tr{"Tork"}
        ts{"Tsonga"}
        tsi{"Zimxjan"}
        tt{"Tatar"}
        tum{"Tumbuka"}
        tup{"Tupi languages"}
        tut{"Altajk (Oħra)"}
        tvl{"Tuvalu"}
        tw{"Twi"}
        ty{"Taħitjan"}
        tyv{"Tuvinjan"}
        udm{"Udmurt"}
        ug{"Wigur"}
        uga{"Ugaritiku"}
        uk{"Ukranjan"}
        umb{"Umbundu"}
        und{"Indeterminat"}
        ur{"Urdu"}
        uz{"Użbek"}
        vai{"Vai"}
        ve{"Venda"}
        vi{"Vjetnamiż"}
        vo{"Volapuk"}
        vot{"Votik"}
        wa{"Walloon"}
        wak{"Lingwi Wakaxani"}
        wal{"Walamo"}
        war{"Waraj"}
        was{"Waxo"}
        wen{"Lingwi Sorbjani"}
        wo{"Wolof"}
        xal{"Kalmyk"}
        xh{"Ħoża"}
        yao{"Jao"}
        yap{"Japese"}
        yi{"Jiddix"}
        yo{"Joruba"}
        ypk{"Lingwi Jupiċi"}
        za{"Żwang"}
        zap{"Żapotek"}
        zen{"Żenaga"}
        zh{"Ċiniż"}
        znd{"Żande"}
        zu{"Żulu"}
        zun{"Żuni"}
    }
    Scripts{
        Arab{"Għarbi"}
        Grek{"Grieg"}
        Hans{"Sempliċi"}
        Hant{"Tradizzjonali"}
        Latn{"Latin"}
        Xpeo{"Persjan Antik"}
        Zxxx{"Mhux Miktub"}
        Zyyy{"Komuni"}
        Zzzz{"Skritt Mhux Magħruf"}
    }
    Scripts%stand-alone{
        Hans{"Ħan Sempliċi"}
        Hant{"Ħan Tradizzjonali"}
    }
    Types{
        calendar{
            buddhist{"Kalendarju Buddist"}
            chinese{"Kalendarju Ċiniż"}
            gregorian{"Kalendarju Gregorjan"}
            hebrew{"Kalendarju Ebrajk"}
            islamic{"Kalendarju Islamiku"}
            islamic-civil{"Kalendarju Islamiku-Ċivili"}
            japanese{"Kalendarju Ġappuniż"}
        }
        collation{
            big5han{"Ordni Ċiniż Tradizzjonali (Big5)"}
            gb2312han{"Ordni Ċiniż Sempliċi (GB2312)"}
            phonebook{"Ordni Telefonika"}
            pinyin{"Ordni tal-Pinjin"}
            stroke{"Ordni Maħżuża"}
            traditional{"Tradizzjonali"}
        }
    }
    Variants{
        REVISED{"Ortografija Irriveda"}
    }
    Version{"2.0.92.87"}
    codePatterns{
        language{"Lingwa: {0}"}
        script{"Skritt: {0}"}
        territory{"Reġjun: {0}"}
    }
}
