﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/sk.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/sk.xml
 */
sk{
    Keys{
        calendar{"Kalendár"}
        colAlternate{"Ignorovať radenie symbolov"}
        colBackwards{"Obrátené radenie akcentov"}
        colCaseFirst{"Radenie veľkých a malých písmen"}
        colCaseLevel{"Rozlišovanie veľkých a malých písmen pri radení"}
        colHiraganaQuaternary{"Radenie podľa slabičných písiem (kana)"}
        colNormalization{"Normalizované radenie"}
        colNumeric{"Číselné radenie"}
        colStrength{"Sila radenia"}
        collation{"Triedenie"}
        currency{"Mena"}
        numbers{"Číslice"}
        timezone{"Časové pásmo"}
        va{"Variant miestneho nastavenia"}
        variableTop{"Radiť ako symboly"}
        x{"Súkromné použitie"}
    }
    Languages{
        aa{"afarčina"}
        ab{"abcházština"}
        ace{"acehčina"}
        ach{"ačoli"}
        ada{"adangme"}
        ady{"adygčina"}
        ae{"avestčina"}
        af{"afrikánčina"}
        afa{"afroázijské jazyky"}
        afh{"afrihili"}
        agq{"aghem"}
        ain{"ainčina"}
        ak{"akančina"}
        akk{"akkadčina"}
        ale{"aleutčina"}
        alg{"algonkinské jazyky"}
        alt{"južná altajčina"}
        am{"amharčina"}
        an{"aragónčina"}
        ang{"stará angličtina"}
        anp{"angika"}
        apa{"apačské jazyky"}
        ar{"arabčina"}
        arc{"aramejčina"}
        arn{"araukánčina"}
        arp{"arapaho"}
        art{"umelý jazyk"}
        arw{"arawačtina"}
        as{"ásámčina"}
        asa{"asu"}
        ast{"astúrčina"}
        ath{"athabaské jazyky"}
        aus{"austrálske jazyky"}
        av{"avarčina"}
        awa{"avadhčina"}
        ay{"aymarčina"}
        az{"azerbajdžančina"}
        ba{"baskirčina"}
        bad{"banda"}
        bai{"bamileke"}
        bal{"balúčtina"}
        ban{"balijčina"}
        bas{"basa"}
        bat{"baltské jazyky"}
        bax{"bamun"}
        bbj{"ghomala"}
        be{"bieloruština"}
        bej{"bedža"}
        bem{"bemba"}
        ber{"berberské jazyky"}
        bez{"bena"}
        bfd{"bafut"}
        bg{"bulharčina"}
        bh{"bihárske jazyky"}
        bho{"bhódžpurčina"}
        bi{"bislama"}
        bik{"bikol"}
        bin{"bini"}
        bkm{"kom"}
        bla{"siksika"}
        bm{"bambarčina"}
        bn{"bengálčina"}
        bnt{"bantuské jazyky"}
        bo{"tibetčina"}
        br{"bretónčina"}
        bra{"bradžčina"}
        brx{"bodo"}
        bs{"bosniačtina"}
        bss{"akoose"}
        btk{"batacké jazyky"}
        bua{"buriatčina"}
        bug{"bugiština"}
        bum{"bulu"}
        byn{"blin"}
        byv{"medumba"}
        ca{"katalánčina"}
        cad{"kaddo"}
        cai{"jazyk stredoamerických indiánov"}
        car{"karibský"}
        cau{"kaukazské jazyky"}
        cay{"cayuga"}
        cch{"atsam"}
        ce{"čečenčina"}
        ceb{"cebuánčina"}
        cel{"keltské jazyky"}
        cgg{"čiga"}
        ch{"čamorčina"}
        chb{"čibča"}
        chg{"čagatajčina"}
        chk{"truk"}
        chm{"marijčina"}
        chn{"činucký žargón"}
        cho{"čoktavčina"}
        chp{"čipevajčina"}
        chr{"čerokí"}
        chy{"čejenčina"}
        ckb{"kurdčina (sorání)"}
        cmc{"čamaské jazyky"}
        co{"korzičtina"}
        cop{"koptčina"}
        cpe{"anglická kreolčina alebo pidžin"}
        cpf{"francúzska kreolčina alebo pidžin"}
        cpp{"portugalská kreolčina alebo pidžin"}
        cr{"krí"}
        crh{"krymská turečtina"}
        crp{"kreolčina alebo pidžin"}
        cs{"čeština"}
        csb{"kašubčina"}
        cu{"cirkevná slovančina"}
        cus{"kušitské jazyky"}
        cv{"čuvaština"}
        cy{"waleština"}
        da{"dánčina"}
        dak{"dakotčina"}
        dar{"darginčina"}
        dav{"taita"}
        day{"dajačtina"}
        de{"nemčina"}
        de_AT{"rakúska nemčina"}
        de_CH{"švajčiarska spisovná nemčina"}
        del{"delawarčina"}
        den{"slovančina"}
        dgr{"dogribčina"}
        din{"dinka"}
        dje{"zarma"}
        doi{"dógrí"}
        dra{"drávidské jazyky"}
        dsb{"dolnolužická srbčina"}
        dua{"duala"}
        dum{"stredná holandčina"}
        dv{"divehi"}
        dyo{"jola-fonyi"}
        dyu{"ďula"}
        dz{"dzongkä"}
        dzg{"dazaga"}
        ebu{"embu"}
        ee{"eweština"}
        efi{"efik"}
        egy{"staroegyptský"}
        eka{"ekadžuk"}
        el{"gréčtina"}
        elx{"elamčina"}
        en{"angličtina"}
        en_AU{"austrálska angličtina"}
        en_CA{"kanadská angličtina"}
        en_GB{"britská angličtina"}
        en_US{"americká angličtina"}
        enm{"stredná angličtina"}
        eo{"esperanto"}
        es{"španielčina"}
        es_419{"latinskoamerická španielčina"}
        es_ES{"iberská španielčina"}
        et{"estónčina"}
        eu{"baskičtina"}
        ewo{"ewondo"}
        fa{"perzština"}
        fan{"fangčina"}
        fat{"fanti"}
        ff{"fulbčina"}
        fi{"fínčina"}
        fil{"filipínčina"}
        fiu{"ugrofínske jazyky"}
        fj{"fidžijčina"}
        fo{"faerčina"}
        fon{"fončina"}
        fr{"francúzština"}
        fr_CA{"kanadská francúzština"}
        fr_CH{"švajčiarska francúzština"}
        frm{"stredná francúzština"}
        fro{"stará francúzština"}
        frr{"severná frízština"}
        frs{"východná frízština"}
        fur{"friulčina"}
        fy{"západná frízština"}
        ga{"írčina"}
        gaa{"ga"}
        gay{"gayo"}
        gba{"gbaja"}
        gd{"škótska gaelčina"}
        gem{"germánske jazyky"}
        gez{"etiópčina"}
        gil{"kiribatčina"}
        gl{"galícijčina"}
        gmh{"stredná horná nemčina"}
        gn{"guaraní"}
        goh{"stará horná nemčina"}
        gon{"góndčina"}
        gor{"gorontalo"}
        got{"gótčina"}
        grb{"grebo"}
        grc{"starogréčtina"}
        gsw{"švajčiarska nemčina"}
        gu{"gudžarátčina"}
        guz{"gusii"}
        gv{"mančina"}
        gwi{"gwichʼin"}
        ha{"hauština"}
        hai{"haida"}
        haw{"havajčina"}
        he{"hebrejčina"}
        hi{"hindčina"}
        hil{"hiligajnončina"}
        him{"himachali"}
        hit{"chetitčina"}
        hmn{"hmong"}
        ho{"hiri motu"}
        hr{"chorvátčina"}
        hsb{"hornolužická srbčina"}
        ht{"haitčina"}
        hu{"maďarčina"}
        hup{"hupčina"}
        hy{"arménčina"}
        hz{"herero"}
        ia{"interlingua"}
        iba{"ibančina"}
        ibb{"ibibio"}
        id{"indonézština"}
        ie{"interlingue"}
        ig{"igboština"}
        ii{"s’čchuanská ioština"}
        ijo{"idžo"}
        ik{"inupiaq"}
        ilo{"ilokánčina"}
        inc{"indické jazyky"}
        ine{"indoeurópske jazyky"}
        inh{"inguština"}
        io{"ido"}
        ira{"iránske jazyky"}
        iro{"irokézske jazyky"}
        is{"islandčina"}
        it{"taliančina"}
        iu{"inuktitut"}
        ja{"japončina"}
        jbo{"lojban"}
        jmc{"machame"}
        jpr{"židovská perzština"}
        jrb{"židovská arabčina"}
        jv{"jávčina"}
        ka{"gruzínčina"}
        kaa{"karakalpačtina"}
        kab{"kabylčina"}
        kac{"kačjinčina"}
        kaj{"jju"}
        kam{"kamba"}
        kar{"karenčina"}
        kaw{"kawi"}
        kbd{"kabardčina"}
        kbl{"kanembu"}
        kcg{"tyap"}
        kde{"makonde"}
        kea{"kapverdčina"}
        kfo{"koro"}
        kg{"kongčina"}
        kha{"khasijčina"}
        khi{"kojsanské jazyky"}
        kho{"chotančina"}
        khq{"západná songhajčina"}
        ki{"kikuju"}
        kj{"kuaňama"}
        kk{"kazaština"}
        kkj{"kako"}
        kl{"grónska eskimáčtina"}
        kln{"kalenjin"}
        km{"kambodžská khmérčina"}
        kmb{"kimbundu"}
        kn{"kannadčina"}
        ko{"kórejčina"}
        kok{"kónkánčina"}
        kos{"kusaie"}
        kpe{"kpelle"}
        kr{"kanurijčina"}
        krc{"karačajevsko-balkarský jazyk"}
        krl{"karelčina"}
        kro{"kru"}
        kru{"kurukhčina"}
        ks{"kašmírčina"}
        ksb{"šambala"}
        ksf{"bafia"}
        ksh{"kolínčina"}
        ku{"kurdčina"}
        kum{"kumyčtina"}
        kut{"kutenajčina"}
        kv{"komijčina"}
        kw{"kornčina"}
        ky{"kirgizština"}
        la{"latinčina"}
        lad{"židovská španielčina"}
        lag{"langi"}
        lah{"lahandčina"}
        lam{"lamba"}
        lb{"luxemburčina"}
        lez{"lezginčina"}
        lg{"gandčina"}
        li{"limburčina"}
        ln{"lingalčina"}
        lo{"laoština"}
        lol{"mongo"}
        loz{"lozi"}
        lt{"litovčina"}
        lu{"luba-katanga"}
        lua{"luba-luluánčina"}
        lui{"luiseňo"}
        lun{"lunda"}
        luo{"luo"}
        lus{"mizorámčina"}
        luy{"luyia"}
        lv{"lotyština"}
        mad{"madurčina"}
        maf{"mafa"}
        mag{"magadhčina"}
        mai{"maithilčina"}
        mak{"makasarčina"}
        man{"mandingo"}
        map{"austronézske jazyky"}
        mas{"masajčina"}
        mde{"maba"}
        mdf{"mokšiančina"}
        mdr{"mandarčina"}
        men{"mendi"}
        mer{"meru"}
        mfe{"maurícijská kreolčina"}
        mg{"malgaština"}
        mga{"stredná írčina"}
        mgh{"makhuwa-meetto"}
        mh{"kajin-majol"}
        mi{"maorijčina"}
        mic{"mikmakčina"}
        min{"minangkabaučina"}
        mis{"rôznorodý jazyk"}
        mk{"macedónčina"}
        mkh{"mon-khmérsky jazyk"}
        ml{"malajálamčina"}
        mn{"mongolčina"}
        mnc{"mandžuština"}
        mni{"manípurčina"}
        mno{"jazyk manobo"}
        mo{"moldavčina"}
        moh{"mohawk"}
        mos{"mossi"}
        mr{"maráthčina"}
        ms{"malajčina"}
        mt{"maltčina"}
        mua{"mundang"}
        mul{"viaceré jazyky"}
        mun{"mundský jazyk"}
        mus{"kríkčina"}
        mwl{"mirandčina"}
        mwr{"marawari"}
        my{"barmčina"}
        mye{"myene"}
        myn{"mayské jazyky"}
        myv{"erzjančina"}
        na{"nauru"}
        nah{"nahuaský jazyk"}
        nai{"jazyk severoamerických indiánov"}
        nap{"neapolčina"}
        naq{"nama"}
        nb{"nórsky bokmål"}
        nd{"severné ndbele"}
        nds{"dolná nemčina"}
        ne{"nepálčina"}
        new{"nevárčina"}
        ng{"ndonga"}
        nia{"niasánčina"}
        nic{"nigersko-konžský jazyk"}
        niu{"niueština"}
        nl{"holandčina"}
        nl_BE{"flámčina"}
        nmg{"kwasio"}
        nn{"nórsky nynorsk"}
        nnh{"ngiemboon"}
        no{"nórčina"}
        nog{"nogajčina"}
        non{"stará nórčina"}
        nqo{"n’ko"}
        nr{"južná ndebelčina"}
        nso{"severná sothčina"}
        nub{"núbijský jazyk"}
        nus{"nuer"}
        nv{"navajo"}
        nwc{"klasická nevárčina"}
        ny{"čewa"}
        nym{"ňamwezi"}
        nyn{"ňankole"}
        nyo{"ňoro"}
        nzi{"nzima"}
        oc{"okcitánčina"}
        oj{"odžibva"}
        om{"oromčina"}
        or{"uríjčina"}
        os{"osetčina"}
        osa{"osagčina"}
        ota{"osmanská turečtina"}
        oto{"oto-pameský jazyk"}
        pa{"pandžábčina"}
        paa{"papuánsky"}
        pag{"pangasinančina"}
        pal{"pahlaví"}
        pam{"pampanga"}
        pap{"papiamento"}
        pau{"palaučina"}
        peo{"stará perzština"}
        phi{"filipínsky jazyk"}
        phn{"feničtina"}
        pi{"pálí"}
        pl{"poľština"}
        pon{"pohnpeičina"}
        pra{"prakrity"}
        pro{"stará okcitánčina"}
        ps{"paštúnčina"}
        pt{"portugalčina"}
        pt_BR{"brazílska portugalčina"}
        pt_PT{"iberská portugalčina"}
        qu{"kečuánčina"}
        raj{"radžastančina"}
        rap{"rapanujčina"}
        rar{"rarotongan"}
        rm{"rétorománčina"}
        rn{"rundčina"}
        ro{"rumunčina"}
        roa{"románsky jazyk"}
        rof{"rombo"}
        rom{"rómčina"}
        root{"koreň"}
        ru{"ruština"}
        rup{"arumunčina"}
        rw{"rwandčina"}
        rwk{"rwa"}
        sa{"sanskrit"}
        sad{"sandawe"}
        sah{"jakutčina"}
        sai{"jazyk juhoamerických indiánov"}
        sal{"sališský jazyk"}
        sam{"samaritánska aramejčina"}
        saq{"samburu"}
        sas{"sasačtina"}
        sat{"santalčina"}
        sba{"ngambay"}
        sbp{"sangu"}
        sc{"sardínčina"}
        scn{"sicílčina"}
        sco{"škótčina"}
        sd{"sindhčina"}
        se{"severná saamčina"}
        see{"seneca"}
        seh{"sena"}
        sel{"selkupčina"}
        sem{"semitský jazyk"}
        ses{"koyraboro senni"}
        sg{"sango"}
        sga{"stará írčina"}
        sgn{"znaková reč"}
        sh{"srbochorvátčina"}
        shi{"tachelhit"}
        shn{"šančina"}
        shu{"čadská arabčina"}
        si{"sinhalčina"}
        sid{"sidamo"}
        sio{"siouský jazyk"}
        sit{"sinotibetský jazyk"}
        sk{"slovenčina"}
        sl{"slovinčina"}
        sla{"slovenský jazyk"}
        sm{"samojčina"}
        sma{"južná saamčina"}
        smi{"saamský jazyk"}
        smj{"luleská saamčina"}
        smn{"inariská saamčina"}
        sms{"skolt"}
        sn{"šončina"}
        snk{"soninke"}
        so{"somálčina"}
        sog{"sogdijčina"}
        son{"songhajčina"}
        sq{"albánčina"}
        sr{"srbčina"}
        srn{"sranan"}
        srr{"serer"}
        ss{"svazijčina"}
        ssa{"nilosaharský jazyk"}
        ssy{"saho"}
        st{"južná sothčina"}
        su{"sundčina"}
        suk{"sukuma"}
        sus{"susu"}
        sux{"sumerčina"}
        sv{"švédčina"}
        sw{"swahilčina"}
        swb{"komorčina"}
        swc{"konžská svahilčina"}
        syc{"klasická sýrčina"}
        syr{"sýrčina"}
        ta{"tamilčina"}
        tai{"thajský jazyk"}
        te{"telugčina"}
        tem{"temne"}
        teo{"teso"}
        ter{"tereno"}
        tet{"tetum"}
        tg{"tadžičtina"}
        th{"thajčina"}
        ti{"tigriňa"}
        tig{"tigrejčina"}
        tiv{"tiv"}
        tk{"turkménčina"}
        tkl{"tokelaučina"}
        tl{"tagalčina"}
        tlh{"klingónčina"}
        tli{"tlingitčina"}
        tmh{"tamašek"}
        tn{"tswančina"}
        to{"tongčina"}
        tog{"ňasa tonga"}
        tpi{"tok pisin"}
        tr{"turečtina"}
        trv{"taroko"}
        ts{"tsonga"}
        tsi{"tsimshijské jazyky"}
        tt{"tatárčina"}
        tum{"tumbuka"}
        tup{"jazyk tupi"}
        tut{"altajské jazyky"}
        tvl{"tuvalčina"}
        tw{"twi"}
        twq{"tasawak"}
        ty{"tahitčina"}
        tyv{"tuviančina"}
        tzm{"stredomarocká berberčina"}
        udm{"udmurtčina"}
        ug{"ujgurčina"}
        uga{"ugaritčina"}
        uk{"ukrajinčina"}
        umb{"umbundu"}
        und{"neznámy jazyk"}
        ur{"urdčina"}
        uz{"uzbečtina"}
        vai{"vai"}
        ve{"vendčina"}
        vi{"vietnamčina"}
        vo{"volapük"}
        vot{"vodčina"}
        vun{"vunjo"}
        wa{"valónčina"}
        wae{"walserčina"}
        wak{"wakašský jazyk"}
        wal{"walamo"}
        war{"waray"}
        was{"washo"}
        wen{"lužickosrbský jazyk"}
        wo{"wolof"}
        xal{"kalmyčtina"}
        xh{"xhosa"}
        xog{"soga"}
        yao{"jao"}
        yap{"japčina"}
        yav{"jangben"}
        ybb{"yemba"}
        yi{"jidiš"}
        yo{"jorubčina"}
        ypk{"juitsko-jupický jazyk"}
        yue{"kantončina"}
        za{"čuangčina"}
        zap{"zapotéčtina"}
        zbl{"systém Bliss"}
        zen{"zenaga"}
        zh{"čínština"}
        zh_Hans{"zjednodušená čínština"}
        zh_Hant{"tradičná čínština"}
        znd{"zandský jazyk"}
        zu{"zuluština"}
        zun{"zuniština"}
        zxx{"bez jazykového obsahu"}
        zza{"zázá"}
    }
    LanguagesShort{
        az{"azerčina"}
    }
    Scripts{
        Arab{"arabské"}
        Armn{"Arménsky"}
        Bali{"balijský"}
        Beng{"bengálsky"}
        Bopo{"Bopomofo"}
        Brai{"Braillovo písmo"}
        Cyrl{"Cyrilika"}
        Deva{"Dévanágarí"}
        Egyp{"egyptské hieroglyfy"}
        Ethi{"etiópsky"}
        Geor{"Gruzínčina"}
        Glag{"hlaholika"}
        Goth{"gotický"}
        Grek{"Grécky"}
        Gujr{"Gudžarátčina"}
        Guru{"Gurmukhi"}
        Hang{"Hangul"}
        Hani{"Han"}
        Hans{"zjednodušené"}
        Hant{"tradičné"}
        Hebr{"hebrejský"}
        Hira{"Hiragana"}
        Jpan{"japonské"}
        Kana{"Katakana"}
        Khmr{"kmérsky"}
        Knda{"Kannadčina"}
        Kore{"kórejské"}
        Laoo{"Lao"}
        Latn{"latinka"}
        Lina{"lineárna A"}
        Linb{"lineárna B"}
        Maya{"mayské hieroglyfy"}
        Mlym{"Malajámčina"}
        Mong{"mongolský"}
        Mymr{"Mjanmarsko"}
        Orya{"Oríjčina"}
        Osma{"osmanský"}
        Runr{"Runové písmo"}
        Sinh{"Sinhálske písmo"}
        Taml{"Tamilčina"}
        Telu{"Telugčina"}
        Thaa{"Tána"}
        Thai{"Thajčina"}
        Tibt{"tibetský"}
        Zsym{"Symboly"}
        Zxxx{"Nepísané"}
        Zyyy{"Obecný"}
        Zzzz{"Neznáme písmo"}
    }
    Scripts%stand-alone{
        Hans{"han – zjednodušené"}
        Hant{"han – tradičné"}
    }
    Types{
        calendar{
            buddhist{"Buddhistický kalendár"}
            chinese{"Čínsky kalendár"}
            coptic{"Koptický kalendár"}
            ethiopic{"Etiópsky kalendár"}
            ethiopic-amete-alem{"Etiópsky kalendár Amete Alem"}
            gregorian{"Gregoriánsky kalendár"}
            hebrew{"Židovský kalendár"}
            indian{"Indický národný kalendár"}
            islamic{"Islamský kalendár"}
            islamic-civil{"Islamský občiansky kalendár"}
            japanese{"Japonský kalendár"}
            persian{"Perzský kalendár"}
            roc{"Kalendár Čínskej republiky"}
        }
        collation{
            big5han{"Tradičný čínsky Big5"}
            dictionary{"Usporiadanie slovníka"}
            ducet{"Predvolené usporiadanie unicode"}
            gb2312han{"Zjednodušený čínsky GB2312"}
            phonebook{"Lexikografické triedenie"}
            phonetic{"Fonetické radenie"}
            pinyin{"Triedenie pinyin"}
            reformed{"Reformované usporiadanie"}
            search{"Všeobecné vyhľadávanie"}
            searchjl{"Hľadať podľa počiatočnej spoluhlásky písma Hangul"}
            stroke{"Tiedenie podľa ťahov"}
            traditional{"Tradičné"}
            unihan{"Usporiadanie podľa znakov radikál"}
        }
        numbers{
            arab{"Arabsko-indické číslice"}
            arabext{"Rozšírené arabsko-indické číslice"}
            armn{"Arménske číslice"}
            armnlow{"Arménske číslice (malé písmená)"}
            beng{"Bengálske číslice"}
            deva{"Číslice písma Dévanágarí"}
            ethi{"Etiópske číslice"}
            finance{"Finančnícky zápis čísiel"}
            fullwide{"Číslice s celou šírkou"}
            geor{"Gruzínske číslice"}
            grek{"Grécke číslice"}
            greklow{"Grécke číslice (malé písmená)"}
            gujr{"Gudžarátske číslice"}
            guru{"Číslice Gurmukhi"}
            hanidec{"Čínske desatinné číslice"}
            hans{"Číslice zjednodušenej čínštiny"}
            hansfin{"Finančné číslice zjednodušenej čínštiny"}
            hant{"Číslice tradičnej čínštiny"}
            hantfin{"Finančné číslice tradičnej čínštiny"}
            hebr{"Hebrejské číslice"}
            jpan{"Japonské číslice"}
            jpanfin{"Japonské finančné číslice"}
            khmr{"Khmérske číslice"}
            knda{"Kannadské číslice"}
            laoo{"Číslice písma lao"}
            latn{"Arabské číslice"}
            mlym{"Malajámske číslice"}
            mong{"Mongolské číslice"}
            mymr{"Mjanmarské číslice"}
            native{"Natívne číslice"}
            orya{"Oríjske číslice"}
            roman{"Rímske číslice"}
            romanlow{"Rímske číslice (malé písmená)"}
            taml{"Tamilské číslice"}
            tamldec{"Tamilské číslice"}
            telu{"Telugské číslice"}
            thai{"Thajské číslice"}
            tibt{"Tibetské číslice"}
            traditional{"Tradičné číslovky"}
            vaii{"Vaiské číslice"}
        }
    }
    Variants{
        SCOTLAND{"škótska štandardná angličtina"}
    }
    Version{"2.0.85.93"}
    codePatterns{
        language{"Jazyk: {0}"}
        script{"Písmo: {0}"}
        territory{"Región: {0}"}
    }
    localeDisplayPattern{
        keyTypePattern{"{0}: {1}"}
        pattern{"{0} ({1})"}
        separator{"{0}, {1}"}
    }
}
