﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/et.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/et.xml
 */
et{
    Keys{
        calendar{"kalender"}
        colAlternate{"Sortimine sümboleid eirates"}
        colBackwards{"Vastupidine sortimine rõhumärkide alusel"}
        colCaseFirst{"Suur-/väiketähtede järjestus"}
        colCaseLevel{"Tõstutundlik sortimine"}
        colHiraganaQuaternary{"Sortimine kana kirjasüsteemi alusel"}
        colNormalization{"Normeeritud sortimine"}
        colNumeric{"Sortimine numbrite alusel"}
        colStrength{"Sortimisalus"}
        collation{"Sortimisjärjestus"}
        currency{"vääring"}
        numbers{"Numbrid"}
        timezone{"Ajavöönd"}
        va{"Lokaadi variant"}
        variableTop{"Sümbolite alusel sortimine"}
        x{"Erakasutus"}
    }
    Languages{
        aa{"afari"}
        ab{"abhaasi"}
        ace{"atšehi"}
        ach{"akoli"}
        ada{"adangme"}
        ady{"adõgee"}
        ae{"avesta"}
        af{"afrikaani"}
        afh{"afrihili"}
        agq{"aghemi"}
        ain{"ainu"}
        ak{"akani"}
        akk{"akadi"}
        ale{"aleuudi"}
        alt{"altai"}
        am{"amhari"}
        an{"aragoni"}
        ang{"vanainglise"}
        anp{"angika"}
        ar{"araabia"}
        ar_001{"araabia (tänapäevane)"}
        arc{"aramea"}
        arn{"araukaani"}
        arp{"arapaho"}
        arw{"aravaki"}
        as{"assami"}
        asa{"asa"}
        ast{"astuuria"}
        av{"avaari"}
        awa{"avadhi"}
        ay{"aimara"}
        az{"aserbaidžaani"}
        ba{"baškiiri"}
        bal{"belutši"}
        ban{"bali"}
        bas{"basa"}
        bax{"bamuni"}
        bbj{"ghomala"}
        be{"valgevene"}
        bej{"bedža"}
        bem{"bemba"}
        bez{"bena"}
        bfd{"bafuti"}
        bg{"bulgaaria"}
        bho{"bhodžpuri"}
        bi{"bislama"}
        bik{"bikoli"}
        bin{"edo"}
        bkm{"itaŋikomi"}
        bla{"siksika"}
        bm{"bambara"}
        bn{"bengali"}
        bo{"tiibeti"}
        br{"bretooni"}
        bra{"bradži"}
        brx{"bodo"}
        bs{"bosnia"}
        bss{"akoose"}
        bua{"burjaadi"}
        bug{"bugi"}
        bum{"bulu"}
        byn{"bilini"}
        byv{"medumba"}
        ca{"katalaani"}
        cad{"kado"}
        car{"kariibi"}
        cay{"cayuga"}
        cch{"atsami"}
        ce{"tšetšeeni"}
        ceb{"sebu"}
        cgg{"chiga"}
        ch{"tšamorro"}
        chb{"tšibtša"}
        chg{"tšagatai"}
        chk{"tšuugi"}
        chm{"mari"}
        chn{"tšinuki žargoon"}
        cho{"tšokto"}
        chp{"tšipevai"}
        chr{"tšerokii"}
        chy{"šaieeni"}
        ckb{"sorani kurdi"}
        co{"korsika"}
        cop{"kopti"}
        cr{"krii"}
        crh{"krimmitatari"}
        cs{"tšehhi"}
        csb{"kašuubi"}
        cu{"kirikuslaavi"}
        cv{"tšuvaši"}
        cy{"kõmri"}
        da{"taani"}
        dak{"siuu"}
        dar{"dargi"}
        dav{"taita"}
        de{"saksa"}
        de_CH{"saksa (kõrgsaksa)"}
        del{"delavari"}
        den{"sleivi"}
        dgr{"dogribi"}
        din{"dinka"}
        dje{"zarma"}
        doi{"dogri"}
        dsb{"alamsorbi"}
        dua{"duala"}
        dum{"keskhollandi"}
        dv{"maldiivi"}
        dyo{"jola-fonyi"}
        dyu{"djula"}
        dz{"bhutani"}
        dzg{"dazaga"}
        ebu{"embu"}
        ee{"eve"}
        efi{"efiki"}
        egy{"muinasegiptuse"}
        eka{"ekadžuki"}
        el{"kreeka"}
        elx{"eelami"}
        en{"inglise"}
        en_GB{"inglise (Briti)"}
        en_US{"inglise (USA)"}
        enm{"keskinglise"}
        eo{"esperanto"}
        es{"hispaania"}
        es_ES{"hispaania (Euroopa)"}
        et{"eesti"}
        eu{"baski"}
        ewo{"evondo"}
        fa{"pärsia"}
        fan{"fangi"}
        fat{"fanti"}
        ff{"fulbe"}
        fi{"soome"}
        fil{"filipino"}
        fj{"fidži"}
        fo{"fääri"}
        fon{"foni"}
        fr{"prantsuse"}
        frm{"keskprantsuse"}
        fro{"vanaprantsuse"}
        frr{"põhjafriisi"}
        frs{"idafriisi"}
        fur{"friuuli"}
        fy{"läänefriisi"}
        ga{"iiri"}
        gaa{"gaa"}
        gay{"gajo"}
        gba{"gbaja"}
        gd{"gaeli"}
        gez{"etioopia"}
        gil{"kiribati"}
        gl{"galeegi"}
        gmh{"keskülemsaksa"}
        gn{"guaranii"}
        goh{"vanaülemsaksa"}
        gon{"gondi"}
        gor{"gorontalo"}
        got{"gooti"}
        grb{"grebo"}
        grc{"vanakreeka"}
        gsw{"alemanni"}
        gu{"gudžarati"}
        guz{"gusii"}
        gv{"mänksi"}
        gwi{"gvitšini"}
        ha{"hausa"}
        hai{"haida"}
        haw{"havai"}
        he{"heebrea"}
        hi{"hindi"}
        hil{"hiligainoni"}
        hit{"heti"}
        hmn{"hmongi"}
        ho{"motu"}
        hr{"horvaadi"}
        hsb{"ülemsorbi"}
        ht{"haiti"}
        hu{"ungari"}
        hup{"hupa"}
        hy{"armeenia"}
        hz{"herero"}
        ia{"interlingua"}
        iba{"ibani"}
        ibb{"ibibio"}
        id{"indoneesia"}
        ie{"interlingue"}
        ig{"ibo"}
        ii{"sichuani jii"}
        ik{"injupiaki"}
        ilo{"iloko"}
        inh{"inguši"}
        io{"ido"}
        is{"islandi"}
        it{"itaalia"}
        iu{"inuktituti"}
        ja{"jaapani"}
        jbo{"lojbani"}
        jgo{"ngomba"}
        jmc{"machame"}
        jpr{"juudipärsia"}
        jrb{"juudiaraabia"}
        jv{"jaava"}
        ka{"gruusia"}
        kaa{"karakalpaki"}
        kab{"kabiili"}
        kac{"katšini"}
        kaj{"jju"}
        kam{"kamba"}
        kaw{"kaavi"}
        kbd{"kabardi-tšerkessi"}
        kbl{"kanembu"}
        kcg{"tyapi"}
        kde{"makonde"}
        kea{"kabuverdianu"}
        kfo{"koro"}
        kg{"kongo"}
        kha{"khasi"}
        kho{"saki"}
        khq{"koyra chiini"}
        ki{"kikuju"}
        kj{"ambo"}
        kk{"kasahhi"}
        kkj{"kako"}
        kl{"grööni"}
        kln{"kaljenjin"}
        km{"khmeeri"}
        kmb{"mbundu"}
        kn{"kannada"}
        ko{"korea"}
        kok{"konkani"}
        kos{"kosrae"}
        kpe{"kpelle"}
        kr{"kanuri"}
        krc{"karatšai-balkaari"}
        krl{"karjala"}
        kru{"oraoni"}
        ks{"kašmiiri"}
        ksb{"shambala"}
        ksf{"bafia"}
        ksh{"cologniani"}
        ku{"kurdi"}
        kum{"kumõki"}
        kut{"kutenai"}
        kv{"komi"}
        kw{"korni"}
        ky{"kirgiisi"}
        la{"ladina"}
        lad{"ladiino"}
        lag{"langi"}
        lah{"lahnda"}
        lam{"lamba"}
        lb{"letseburgi"}
        lez{"lesgi"}
        lg{"ganda"}
        li{"limburgi"}
        ln{"lingala"}
        lo{"lao"}
        lol{"mongo"}
        loz{"lozi"}
        lt{"leedu"}
        lu{"luba"}
        lua{"luba-lulua"}
        lui{"luisenjo"}
        lun{"lunda"}
        luo{"luo"}
        lus{"lušei"}
        luy{"luyia"}
        lv{"läti"}
        mad{"madura"}
        maf{"mafa"}
        mag{"magali"}
        mai{"maithili"}
        mak{"makassari"}
        man{"malinke"}
        mas{"masai"}
        mde{"maba"}
        mdf{"mokša"}
        mdr{"mandari"}
        men{"mende"}
        mer{"meru"}
        mfe{"Mauritaania kreooli"}
        mg{"malagassi"}
        mga{"keskiiri"}
        mgh{"makhuwa-meetto"}
        mgo{"meta'"}
        mh{"maršalli"}
        mi{"maoori"}
        mic{"mikmaki"}
        min{"minangkabau"}
        mk{"makedoonia"}
        ml{"malajalami"}
        mn{"mongoli"}
        mnc{"mandžu"}
        mni{"manipuri"}
        moh{"mohoogi"}
        mos{"more"}
        mr{"marathi"}
        ms{"malai"}
        mt{"malta"}
        mua{"mundangi"}
        mul{"mitu keelt"}
        mus{"maskogi"}
        mwl{"miranda"}
        mwr{"marvari"}
        my{"birma"}
        mye{"myene"}
        myv{"ersa"}
        na{"nauru"}
        nap{"napoli"}
        naq{"nama"}
        nb{"norra bokmål"}
        nd{"põhjandebele"}
        nds{"alamsaksa"}
        ne{"nepali"}
        new{"nevari"}
        ng{"ndonga"}
        nia{"niasi"}
        niu{"niue"}
        nl{"hollandi"}
        nl_BE{"flaami"}
        nmg{"kwasio"}
        nn{"norra nynorsk"}
        nnh{"ngiembooni"}
        no{"norra"}
        nog{"nogai"}
        non{"vanapõhjala"}
        nqo{"nkoo"}
        nr{"lõunandebele"}
        nso{"pedi"}
        nus{"nueri"}
        nv{"navaho"}
        nwc{"vananevari"}
        ny{"njandža"}
        nym{"njamvesi"}
        nyn{"nkole"}
        nyo{"njoro"}
        nzi{"nzima"}
        oc{"provansi"}
        oj{"odžibvei"}
        om{"oromo keel"}
        or{"oria"}
        os{"osseedi"}
        osa{"oseidži"}
        ota{"osmanitürgi"}
        pa{"pandžabi"}
        pag{"pangasinani"}
        pal{"pahlavi"}
        pam{"pampanga"}
        pap{"papiamento"}
        pau{"belau"}
        peo{"vanapärsia"}
        phn{"foiniikia"}
        pi{"paali"}
        pl{"poola"}
        pon{"poonpei"}
        pro{"vanaprovansi"}
        ps{"puštu"}
        pt{"portugali"}
        pt_PT{"portugali (Euroopa)"}
        qu{"ketšua"}
        raj{"radžastani"}
        rap{"rapanui"}
        rar{"rarotonga"}
        rm{"retoromaani"}
        rn{"rundi"}
        ro{"rumeenia"}
        ro_MD{"moldova"}
        rof{"rombo"}
        rom{"mustlaskeel"}
        root{"root"}
        ru{"vene"}
        rup{"aromuuni"}
        rw{"ruanda"}
        rwk{"rwa"}
        sa{"sanskriti"}
        sad{"sandave"}
        sah{"jakuudi"}
        sam{"samaaria aramea"}
        saq{"samburu"}
        sas{"sasaki"}
        sat{"santali"}
        sba{"ngembay"}
        sbp{"sangu"}
        sc{"sardiinia"}
        scn{"sitsiilia"}
        sco{"šoti"}
        sd{"sindhi"}
        se{"põhjasaami"}
        see{"seneca"}
        seh{"sena"}
        sel{"sölkupi"}
        ses{"koyraboro senni"}
        sg{"sango"}
        sga{"vanaiiri"}
        sh{"serbia-horvaadi"}
        shi{"tachelhiti"}
        shn{"šani"}
        shu{"Tšaadi araabia"}
        si{"singali"}
        sid{"sidamo"}
        sk{"slovaki"}
        sl{"sloveeni"}
        sm{"samoa"}
        sma{"lõunasaami"}
        smj{"lule saami"}
        smn{"inari saami"}
        sms{"koltasaami"}
        sn{"šona"}
        snk{"soninke"}
        so{"somaali"}
        sog{"sogdi"}
        sq{"albaania"}
        sr{"serbia"}
        srn{"sranani"}
        srr{"sereri"}
        ss{"svaasi"}
        ssy{"saho"}
        st{"lõunasotho"}
        su{"sunda"}
        suk{"sukuma"}
        sus{"susu"}
        sux{"sumeri"}
        sv{"rootsi"}
        sw{"suahiili"}
        swb{"komoori"}
        swc{"Kongo suahiili"}
        syc{"klassikaline süüria"}
        syr{"süüria"}
        ta{"tamili"}
        te{"telugu"}
        tem{"temne"}
        teo{"teso"}
        ter{"tereno"}
        tet{"tetumi"}
        tg{"tadžiki"}
        th{"tai"}
        ti{"tigrinja"}
        tig{"tigree"}
        tiv{"tivi"}
        tk{"türkmeeni"}
        tkl{"tokelau"}
        tl{"tagalogi"}
        tlh{"klingoni"}
        tli{"tlingiti"}
        tmh{"tamašeki"}
        tn{"tsvana"}
        to{"tonga"}
        tog{"tšitonga"}
        tpi{"uusmelaneesia"}
        tr{"türgi"}
        trv{"taroko"}
        ts{"tsonga"}
        tsi{"tšimši"}
        tt{"tatari"}
        tum{"tumbuka"}
        tvl{"tuvalu"}
        tw{"tvii"}
        twq{"taswaqi"}
        ty{"tahiti"}
        tyv{"tõva"}
        tzm{"Kesk-Maroko tamazighti"}
        udm{"udmurdi"}
        ug{"uiguuri"}
        uga{"ugariti"}
        uk{"ukraina"}
        umb{"umbundu"}
        und{"määramata"}
        ur{"urdu"}
        uz{"usbeki"}
        vai{"vai"}
        ve{"venda"}
        vi{"vietnami"}
        vo{"volapüki"}
        vot{"vadja"}
        vun{"vunjo"}
        wa{"vallooni"}
        wae{"walseri"}
        wal{"volamo"}
        war{"varai"}
        was{"vašo"}
        wo{"volofi"}
        xal{"kalmõki"}
        xh{"koosa"}
        xog{"soga"}
        yao{"jao"}
        yap{"japi"}
        yav{"yangbeni"}
        ybb{"yemba"}
        yi{"jidiši"}
        yo{"joruba"}
        yue{"kantoni"}
        za{"tšuangi"}
        zap{"sapoteegi"}
        zbl{"blissümbolid"}
        zen{"zenaga"}
        zgh{"tamasikti (Maroko)"}
        zh{"hiina"}
        zh_Hans{"hiina keel - lihtsustatud"}
        zh_Hant{"hiina keel - traditsiooniline"}
        zu{"suulu"}
        zun{"sunji"}
        zxx{"mittekeeleline"}
        zza{"zaza"}
    }
    LanguagesShort{
        az{"aseri"}
        en_US{"inglise (USA)"}
    }
    Scripts{
        Arab{"araabia"}
        Armn{"armeenia"}
        Bali{"bali"}
        Batk{"bataki"}
        Beng{"bengali"}
        Blis{"Blissi sümbolid"}
        Bopo{"bopomofo"}
        Brah{"brahmi"}
        Brai{"punktkiri"}
        Bugi{"bugi"}
        Buhd{"buhidi"}
        Cans{"Kanada põlisrahvaste ühtlustatud silpkiri"}
        Cham{"tšami"}
        Cher{"tšerokii"}
        Cirt{"cirth"}
        Copt{"kopti"}
        Cprt{"muinasküprose"}
        Cyrl{"kirillitsa"}
        Cyrs{"kirikuslaavi kirillitsa"}
        Deva{"devanaagari"}
        Dsrt{"deseret"}
        Egyd{"egiptuse demootiline"}
        Egyh{"egiptuse hieraatiline"}
        Egyp{"egiptuse hieroglüüfkiri"}
        Ethi{"etioopia"}
        Geok{"gruusia hutsuri"}
        Geor{"gruusia"}
        Glag{"glagoolitsa"}
        Goth{"gooti"}
        Grek{"kreeka"}
        Gujr{"gudžarati"}
        Guru{"gurmukhi"}
        Hang{"hanguli"}
        Hani{"hiina han"}
        Hano{"hanunoo"}
        Hans{"hiina lihtsustatud"}
        Hant{"hiina traditsiooniline"}
        Hebr{"heebrea"}
        Hira{"hiragana"}
        Hrkt{"katakana või hiragana"}
        Hung{"vanaungari"}
        Inds{"induse"}
        Ital{"vanaitali"}
        Java{"jaava"}
        Jpan{"jaapani"}
        Kali{"kaja li"}
        Kana{"katakana"}
        Khar{"kharoshthi"}
        Khmr{"khmeeri"}
        Knda{"kannada"}
        Kore{"koreani"}
        Laoo{"lao"}
        Latf{"ladina fraktuurkiri"}
        Latg{"ladina keldi kiri"}
        Latn{"ladina"}
        Lepc{"leptša"}
        Limb{"limbu"}
        Lina{"lineaar-A"}
        Linb{"lineaar-B"}
        Mand{"mandea"}
        Maya{"maaja hieroglüüfkiri"}
        Mero{"meroe"}
        Mlym{"malajalami"}
        Mong{"mongoli"}
        Mymr{"birma"}
        Nkoo{"nkoo"}
        Ogam{"ogam"}
        Orkh{"orhoni"}
        Orya{"oria"}
        Osma{"osmanja"}
        Perm{"vanapermi"}
        Phag{"phags-pa"}
        Phnx{"foiniikia"}
        Plrd{"Pollardi miao"}
        Roro{"rongorongo"}
        Runr{"ruunikiri"}
        Sara{"sarati"}
        Shaw{"Shaw tähestik"}
        Sinh{"singali"}
        Sylo{"silotinagri"}
        Syrc{"assüüria"}
        Syre{"assüüria estrangelo"}
        Syrj{"lääneassüüria"}
        Syrn{"idaassüüria"}
        Tagb{"tagbanwa"}
        Tale{"tai le"}
        Talu{"lihtsustatud tai lue"}
        Taml{"tamili"}
        Telu{"telugu"}
        Teng{"tengwar"}
        Tfng{"tifinagi"}
        Tglg{"tagalogi"}
        Thaa{"thaana"}
        Thai{"tai"}
        Tibt{"tiibeti"}
        Ugar{"ugariti"}
        Vaii{"vai"}
        Visp{"häälduskiri"}
        Xpeo{"vanapärsia"}
        Xsux{"sumeri kiilkiri"}
        Yiii{"jii"}
        Zinh{"päritud"}
        Zsym{"sümbolid"}
        Zxxx{"kirjakeeleta"}
        Zyyy{"üldine"}
        Zzzz{"määramata"}
    }
    Scripts%stand-alone{
        Hans{"lihtsustatud han"}
        Hant{"traditsiooniline han"}
    }
    Types{
        calendar{
            buddhist{"budistlik kalender"}
            chinese{"Hiina kalender"}
            coptic{"Kopti kalender"}
            ethiopic{"Etioopia kalender"}
            ethiopic-amete-alem{"Etioopia amete alemi kalender"}
            gregorian{"Gregoriuse kalender"}
            hebrew{"juudi kalender"}
            indian{"India rahvuslik"}
            islamic{"islamikalender"}
            islamic-civil{"islami ilmalik kalender"}
            japanese{"Jaapani kalender"}
            persian{"Pärsia kalender"}
            roc{"Hiina Vabariigi kalender"}
        }
        colAlternate{
            non-ignorable{"Sümbolite sortimine"}
            shifted{"Sordi sümboleid eirates"}
        }
        colBackwards{
            no{"Tavajärjestuses rõhumärkide alusel"}
            yes{"Vastupidine sortimine rõhumärkide alusel"}
        }
        colCaseFirst{
            lower{"Järjestus alates väiketähtedest"}
            no{"Tõstutundlikkuse alusel sortimine"}
            upper{"Järjestus alates suurtähtedest"}
        }
        colCaseLevel{
            no{"Tõstutundlikkuseta sortimine"}
            yes{"Tõstutundlikkuse alusel sortimine"}
        }
        colHiraganaQuaternary{
            no{"Kana-kirjasüsteemi eraldi sortimine"}
            yes{"Kana-kirjasüsteemi sortimine eraldi"}
        }
        colNormalization{
            no{"Normeerimata sortimine"}
            yes{"Normeeritud Unicode'i alusel sortimine"}
        }
        colNumeric{
            no{"Numbrite eraldi sortimine"}
            yes{"Numbrite alusel sortimine"}
        }
        colStrength{
            identical{"Sordi kõik"}
            primary{"Ainult põhitähestiku alusel sortimine"}
            quaternary{"Rõhumärkide/algustähe/laiuse/kana-süsteemi alusel sortimine"}
            secondary{"Rõhumärkide sortimine"}
            tertiary{"Rõhumärkide/algustähe/laiuse alusel sortimine"}
        }
        collation{
            big5han{"hiina traditsiooniline - big5"}
            dictionary{"Sõnastiku sortimisjärjestus"}
            ducet{"Unicode'i sortimise vaikejärjestus"}
            gb2312han{"hiina lihtsustatud - GB2312"}
            phonebook{"telefoniraamat"}
            phonetic{"Foneetiline sortimisjärjestus"}
            pinyin{"hiina lihtsustatud - pinyin järjekorras"}
            reformed{"Reformitud sortimisjärjestus"}
            search{"Üldeesmärgiline otsing"}
            searchjl{"Otsing hanguli alguskonsonandi alusel"}
            standard{"Standardne sortimisjärjestus"}
            stroke{"elementide kirjutamise järjekorras"}
            traditional{"traditsiooniline"}
            unihan{"Radikaal-kriipsude sortimisjärjestus"}
        }
        numbers{
            arab{"Araabia-indic numbrid"}
            arabext{"Laiendatud araabia-indic numbrid"}
            armn{"Armeenia numbrid"}
            armnlow{"Armeenia numbrid väikeste tähtedega"}
            beng{"Bengali numbrid"}
            deva{"Devanagari numbrid"}
            ethi{"Etioopia numbrid"}
            finance{"Finantsarvud"}
            fullwide{"Täislaiusega numbrid"}
            geor{"Gruusia numbrid"}
            grek{"Kreeka numbrid"}
            greklow{"Kreeka väiketähelised numbrid"}
            gujr{"Gudžarati numbrid"}
            guru{"Gurmukhi numbrid"}
            hanidec{"Hiina kümnendnumbrid"}
            hans{"Lihtsustatud hiina keele numbrid"}
            hansfin{"Lihtsustatud hiina keele finantsnumbrid"}
            hant{"Traditsioonilise hiina keele numbrid"}
            hantfin{"Traditsioonilise hiina keele finantsnumbrid"}
            hebr{"Heebrea numbrid"}
            jpan{"Jaapani numbrid"}
            jpanfin{"Jaapani rahandusnumeraalid"}
            khmr{"Khmeri numbrid"}
            knda{"Kannada numbrid"}
            laoo{"Lao numbrid"}
            latn{"Ladina numbrid"}
            mlym{"Malayalami numbrid"}
            mong{"Mongoolia numbrid"}
            mymr{"Myanmari numbrid"}
            native{"Kohalik numbrisüsteem"}
            orya{"Oria numbrid"}
            roman{"Rooma numbrid"}
            romanlow{"Rooma numbrid väikeste tähtedega"}
            taml{"Tamili numbrid"}
            tamldec{"Tamili numbrid"}
            telu{"Telugu numbrid"}
            thai{"Tai numbrid"}
            tibt{"Tiibeti numbrid"}
            traditional{"Traditsiooniline numbrisüsteem"}
            vaii{"Vai numbrisüsteem"}
        }
    }
    Variants{
        1606NICT{"hiline kesk-prantsuse kuni 1606"}
        1694ACAD{"varajane moodne prantsuse"}
        1901{"saksa traditsiooniline kirjaviis"}
        1959ACAD{"akadeemiline"}
        1994{"standardiseeritud Resia ortograafia"}
        1996{"saksa reformitud kirjaviis"}
        AREVELA{"ida-armeenia"}
        AREVMDA{"lääne-armeenia"}
        BAKU1926{"ühtlustatud türgi-ladina tähestik"}
        BISKE{"San Giorgio/Bila murre"}
        BOONT{"boontlingi"}
        FONIPA{"IPA foneetika"}
        FONUPA{"UPA foneetika"}
        KKCOR{"üldlevinud ortograafia"}
        LIPAW{"Resia Lipovaz'i murre"}
        MONOTON{"monotoonne"}
        NEDIS{"Natisone murre"}
        NJIVA{"Gniva/Njiva murre"}
        OSOJS{"Oseacco/Osojane murre"}
        PINYIN{"pinyin"}
        POLYTON{"polütooniline"}
        POSIX{"arvuti"}
        REVISED{"uus kirjaviis"}
        ROZAJ{"Resia murre"}
        SAAHO{"saho murre"}
        SCOTLAND{"šoti tavainglise"}
        SCOUSE{"scouse"}
        SOLBA{"Stolvizza/Solbica murre"}
        TARASK{"Taraskievica ortograafia"}
        UCCOR{"ühtlustatud ortograafia"}
        UCRCOR{"ühtlustatud redigeeritud ortograafia"}
        VALENCIA{"valentsia"}
        WADEGILE{"Wade-Giles"}
    }
    Version{"2.0.98.52"}
    codePatterns{
        language{"Keel: {0}"}
        script{"Skript: {0}"}
        territory{"Regioon: {0}"}
    }
    localeDisplayPattern{
        keyTypePattern{"{0}: {1}"}
        pattern{"{0} ({1})"}
        separator{"{0}, {1}"}
    }
}
