﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/pt.xml
// *
// ***************************************************************************
pt{
    Keys{
        calendar{"Calendário"}
        colAlternate{"Ignorar classificação de símbolos"}
        colBackwards{"Classificação reversa de acentos"}
        colCaseFirst{"Ordem de maiúsculas/minúsculas"}
        colCaseLevel{"Ordem com diferenciação de maiúsculas e minúsculas"}
        colHiraganaQuaternary{"Classificação kana"}
        colNormalization{"Classificação normalizada"}
        colNumeric{"Classificação numérica"}
        colStrength{"Intensidade da classificação"}
        collation{"Ordenação"}
        currency{"Moeda"}
        hc{"Ciclo de horário (12 vs. 24)"}
        lb{"Estilo de quebra de linha"}
        ms{"Sistema de medição"}
        numbers{"Números"}
        timezone{"Fuso horário"}
        va{"Variante de localidade"}
        variableTop{"Classificar como símbolos"}
        x{"Uso privado"}
    }
    Languages{
        aa{"afar"}
        ab{"abcázio"}
        ace{"achém"}
        ach{"acoli"}
        ada{"adangme"}
        ady{"adigue"}
        ae{"avéstico"}
        af{"africâner"}
        afh{"afrihili"}
        agq{"aghem"}
        ain{"ainu"}
        ak{"akan"}
        akk{"acadiano"}
        ale{"aleúte"}
        alt{"altai do sul"}
        am{"amárico"}
        an{"aragonês"}
        ang{"inglês arcaico"}
        anp{"angika"}
        ar{"árabe"}
        ar_001{"árabe moderno"}
        arc{"aramaico"}
        arn{"mapudungun"}
        arp{"arapaho"}
        arw{"arauaqui"}
        as{"assamês"}
        asa{"asu"}
        ast{"asturiano"}
        av{"avaric"}
        awa{"awadhi"}
        ay{"aimara"}
        az{"azerbaijano"}
        az_Arab{"azeri sul"}
        ba{"bashkir"}
        bal{"balúchi"}
        ban{"balinês"}
        bas{"basa"}
        bax{"bamum"}
        bbj{"ghomala’"}
        be{"bielorrusso"}
        bej{"beja"}
        bem{"bemba"}
        bez{"bena"}
        bfd{"bafut"}
        bg{"búlgaro"}
        bgn{"balúchi ocidental"}
        bho{"bhojpuri"}
        bi{"bislamá"}
        bik{"bikol"}
        bin{"bini"}
        bkm{"kom"}
        bla{"siksika"}
        bm{"bambara"}
        bn{"bengali"}
        bo{"tibetano"}
        br{"bretão"}
        bra{"braj"}
        brx{"bodo"}
        bs{"bósnio"}
        bss{"akoose"}
        bua{"buriat"}
        bug{"buginês"}
        bum{"bulu"}
        byn{"blin"}
        byv{"medumba"}
        ca{"catalão"}
        cad{"caddo"}
        car{"caribe"}
        cay{"cayuga"}
        cch{"atsam"}
        ce{"checheno"}
        ceb{"cebuano"}
        cgg{"chiga"}
        ch{"chamorro"}
        chb{"chibcha"}
        chg{"chagatai"}
        chk{"chuukese"}
        chm{"mari"}
        chn{"chinook jargon"}
        cho{"choctaw"}
        chp{"chipewyan"}
        chr{"cherokee"}
        chy{"cheiene"}
        ckb{"sorâni curdo"}
        co{"córsico"}
        cop{"copta"}
        cr{"cree"}
        crh{"turco da Crimeia"}
        cs{"tcheco"}
        csb{"kashubian"}
        cu{"eslavo eclesiástico"}
        cv{"tchuvache"}
        cy{"galês"}
        da{"dinamarquês"}
        dak{"dacota"}
        dar{"dargwa"}
        dav{"taita"}
        de{"alemão"}
        de_AT{"alemão austríaco"}
        de_CH{"alto alemão suíço"}
        del{"delaware"}
        den{"slave"}
        dgr{"dogrib"}
        din{"dinka"}
        dje{"zarma"}
        doi{"dogri"}
        dsb{"sorábio baixo"}
        dua{"duala"}
        dum{"holandês médio"}
        dv{"divehi"}
        dyo{"jola-fonyi"}
        dyu{"diúla"}
        dz{"dzonga"}
        dzg{"dazaga"}
        ebu{"embu"}
        ee{"eve"}
        efi{"efique"}
        egy{"egípcio arcaico"}
        eka{"ekajuk"}
        el{"grego"}
        elx{"elamite"}
        en{"inglês"}
        en_AU{"inglês australiano"}
        en_CA{"inglês canadense"}
        en_GB{"inglês britânico"}
        en_US{"inglês americano"}
        enm{"inglês médio"}
        eo{"esperanto"}
        es{"espanhol"}
        es_419{"espanhol latino-americano"}
        es_ES{"espanhol europeu"}
        es_MX{"espanhol mexicano"}
        et{"estoniano"}
        eu{"basco"}
        ewo{"ewondo"}
        fa{"persa"}
        fan{"fangue"}
        fat{"fanti"}
        ff{"fula"}
        fi{"finlandês"}
        fil{"filipino"}
        fj{"fijiano"}
        fo{"feroês"}
        fon{"fom"}
        fr{"francês"}
        fr_CA{"francês canadense"}
        fr_CH{"francês suíço"}
        frm{"francês médio"}
        fro{"francês arcaico"}
        frr{"frísio setentrional"}
        frs{"frisão oriental"}
        fur{"friulano"}
        fy{"frísio ocidental"}
        ga{"irlandês"}
        gaa{"ga"}
        gag{"gagauz"}
        gay{"gayo"}
        gba{"gbaia"}
        gd{"gaélico escocês"}
        gez{"geez"}
        gil{"gilbertês"}
        gl{"galego"}
        gmh{"alemão médio-alto"}
        gn{"guarani"}
        goh{"alemão arcaico alto"}
        gon{"gondi"}
        gor{"gorontalo"}
        got{"gótico"}
        grb{"grebo"}
        grc{"grego arcaico"}
        gsw{"alemão suíço"}
        gu{"guzerate"}
        guz{"gusii"}
        gv{"manx"}
        gwi{"gwichʼin"}
        ha{"hauçá"}
        hai{"haida"}
        haw{"havaiano"}
        he{"hebraico"}
        hi{"híndi"}
        hil{"hiligaynon"}
        hit{"hitita"}
        hmn{"hmong"}
        ho{"hiri motu"}
        hr{"croata"}
        hsb{"sorábio alto"}
        ht{"haitiano"}
        hu{"húngaro"}
        hup{"hupa"}
        hy{"armênio"}
        hz{"herero"}
        ia{"interlíngua"}
        iba{"iban"}
        ibb{"ibibio"}
        id{"indonésio"}
        ie{"interlingue"}
        ig{"ibo"}
        ii{"sichuan yi"}
        ik{"inupiaque"}
        ilo{"ilocano"}
        inh{"inguche"}
        io{"ido"}
        is{"islandês"}
        it{"italiano"}
        iu{"inuktitut"}
        ja{"japonês"}
        jbo{"lojban"}
        jgo{"nguemba"}
        jmc{"machame"}
        jpr{"judaico-persa"}
        jrb{"judaico-arábico"}
        jv{"javanês"}
        ka{"georgiano"}
        kaa{"kara-kalpak"}
        kab{"kabyle"}
        kac{"kachin"}
        kaj{"jju"}
        kam{"kamba"}
        kaw{"kawi"}
        kbd{"kabardiano"}
        kbl{"kanembu"}
        kcg{"tyap"}
        kde{"maconde"}
        kea{"kabuverdianu"}
        kfo{"koro"}
        kg{"congolês"}
        kha{"khasi"}
        kho{"khotanês"}
        khq{"koyra chiini"}
        ki{"quicuio"}
        kj{"kuanyama"}
        kk{"cazaque"}
        kkj{"kako"}
        kl{"groenlandês"}
        kln{"kalenjin"}
        km{"khmer"}
        kmb{"quimbundo"}
        kn{"canarês"}
        ko{"coreano"}
        koi{"komi-permyak"}
        kok{"concani"}
        kos{"kosraean"}
        kpe{"kpelle"}
        kr{"canúri"}
        krc{"karachay-balkar"}
        krl{"idioma carélio"}
        kru{"kurukh"}
        ks{"caxemira"}
        ksb{"shambala"}
        ksf{"bafia"}
        ksh{"kölsch"}
        ku{"curdo"}
        kum{"kumyk"}
        kut{"kutenai"}
        kv{"komi"}
        kw{"córnico"}
        ky{"quirguiz"}
        la{"latim"}
        lad{"ladino"}
        lag{"langi"}
        lah{"lahnda"}
        lam{"lamba"}
        lb{"luxemburguês"}
        lez{"lezghian"}
        lg{"luganda"}
        li{"limburguês"}
        lkt{"lacota"}
        ln{"lingala"}
        lo{"laosiano"}
        lol{"mongo"}
        loz{"lozi"}
        lrc{"luri setentrional"}
        lt{"lituano"}
        lu{"luba-catanga"}
        lua{"luba-lulua"}
        lui{"luiseno"}
        lun{"lunda"}
        luo{"luo"}
        lus{"lushai"}
        luy{"luyia"}
        lv{"letão"}
        mad{"madurês"}
        maf{"mafa"}
        mag{"magahi"}
        mai{"maithili"}
        mak{"makasar"}
        man{"mandinga"}
        mas{"massai"}
        mde{"maba"}
        mdf{"mocsa"}
        mdr{"mandar"}
        men{"mende"}
        mer{"meru"}
        mfe{"morisyen"}
        mg{"malgaxe"}
        mga{"irlandês médio"}
        mgh{"macua"}
        mgo{"meta’"}
        mh{"marshalês"}
        mi{"maori"}
        mic{"miquemaque"}
        min{"minangkabau"}
        mk{"macedônio"}
        ml{"malaiala"}
        mn{"mongol"}
        mnc{"manchu"}
        mni{"manipuri"}
        moh{"moicano"}
        mos{"mossi"}
        mr{"marata"}
        ms{"malaio"}
        mt{"maltês"}
        mua{"mundang"}
        mul{"idiomas múltiplos"}
        mus{"creek"}
        mwl{"mirandês"}
        mwr{"marwari"}
        my{"birmanês"}
        mye{"myene"}
        myv{"erzya"}
        mzn{"mazandarani"}
        na{"nauruano"}
        nap{"napolitano"}
        naq{"nama"}
        nb{"bokmål norueguês"}
        nd{"ndebele do norte"}
        nds{"baixo alemão"}
        nds_NL{"baixo-saxão"}
        ne{"nepali"}
        new{"newari"}
        ng{"dongo"}
        nia{"nias"}
        niu{"niueano"}
        nl{"holandês"}
        nl_BE{"flamengo"}
        nmg{"kwasio"}
        nn{"nynorsk norueguês"}
        nnh{"ngiemboon"}
        no{"norueguês"}
        nog{"nogai"}
        non{"nórdico arcaico"}
        nqo{"n’ko"}
        nr{"ndebele do sul"}
        nso{"soto setentrional"}
        nus{"nuer"}
        nv{"navajo"}
        nwc{"newari clássico"}
        ny{"nianja"}
        nym{"nyamwezi"}
        nyn{"nyankole"}
        nyo{"nyoro"}
        nzi{"nzima"}
        oc{"occitânico"}
        oj{"ojibwa"}
        om{"oromo"}
        or{"oriya"}
        os{"ossetic"}
        osa{"osage"}
        ota{"turco otomano"}
        pa{"panjabi"}
        pag{"pangasinã"}
        pal{"pálavi"}
        pam{"pampanga"}
        pap{"papiamento"}
        pau{"palauano"}
        peo{"persa arcaico"}
        phn{"fenício"}
        pi{"páli"}
        pl{"polonês"}
        pon{"pohnpeian"}
        pro{"provençal arcaico"}
        ps{"pashto"}
        pt{"português"}
        pt_BR{"português do Brasil"}
        pt_PT{"português europeu"}
        qu{"quíchua"}
        quc{"quiché"}
        raj{"rajastani"}
        rap{"rapanui"}
        rar{"rarotongano"}
        rm{"romanche"}
        rn{"rundi"}
        ro{"romeno"}
        ro_MD{"moldávio"}
        rof{"rombo"}
        rom{"romani"}
        ru{"russo"}
        rup{"aromeno"}
        rw{"quiniaruanda"}
        rwk{"rwa"}
        sa{"sânscrito"}
        sad{"sandawe"}
        sah{"iacuto"}
        sam{"aramaico samaritano"}
        saq{"samburu"}
        sas{"sasak"}
        sat{"santali"}
        sba{"ngambay"}
        sbp{"sangu"}
        sc{"sardo"}
        scn{"siciliano"}
        sco{"escocês"}
        sd{"sindi"}
        sdh{"curdo meridional"}
        se{"sami do norte"}
        see{"seneca"}
        seh{"sena"}
        sel{"selkup"}
        ses{"koyraboro senni"}
        sg{"sango"}
        sga{"irlandês arcaico"}
        sh{"servo-croata"}
        shi{"tachelhit"}
        shn{"shan"}
        shu{"árabe chadiano"}
        si{"cingalês"}
        sid{"sidamo"}
        sk{"eslovaco"}
        sl{"esloveno"}
        sm{"samoano"}
        sma{"sami do sul"}
        smj{"sami de Lule"}
        smn{"sami de Inari"}
        sms{"sami de Skolt"}
        sn{"shona"}
        snk{"soninquê"}
        so{"somali"}
        sog{"sogdiano"}
        sq{"albanês"}
        sr{"sérvio"}
        srn{"idioma surinamês"}
        srr{"serere"}
        ss{"swati"}
        ssy{"saho"}
        st{"soto do sul"}
        su{"sundanês"}
        suk{"sukuma"}
        sus{"sosso"}
        sux{"sumério"}
        sv{"sueco"}
        sw{"suaíli"}
        sw_CD{"suaíli do Congo"}
        swb{"comoriano"}
        syc{"siríaco clássico"}
        syr{"siríaco"}
        ta{"tâmil"}
        te{"telugu"}
        tem{"timne"}
        teo{"teso"}
        ter{"tereno"}
        tet{"tétum"}
        tg{"tajique"}
        th{"tailandês"}
        ti{"tigrínia"}
        tig{"tigré"}
        tiv{"tiv"}
        tk{"turcomeno"}
        tkl{"toquelauano"}
        tl{"tagalo"}
        tlh{"klingon"}
        tli{"tlinguite"}
        tmh{"tamaxeque"}
        tn{"tswana"}
        to{"tonganês"}
        tog{"tonganês de Nyasa"}
        tpi{"tok pisin"}
        tr{"turco"}
        trv{"taroko"}
        ts{"tsonga"}
        tsi{"tsimshian"}
        tt{"tatar"}
        tum{"tumbuka"}
        tvl{"tuvaluano"}
        tw{"twi"}
        twq{"tasawaq"}
        ty{"taitiano"}
        tyv{"tuviniano"}
        tzm{"tamazight do Atlas Central"}
        udm{"udmurt"}
        ug{"uigur"}
        uga{"ugarítico"}
        uk{"ucraniano"}
        umb{"umbundu"}
        und{"idioma desconhecido"}
        ur{"urdu"}
        uz{"usbeque"}
        vai{"vai"}
        ve{"venda"}
        vi{"vietnamita"}
        vo{"volapuque"}
        vot{"votic"}
        vun{"vunjo"}
        wa{"valão"}
        wae{"walser"}
        wal{"walamo"}
        war{"waray"}
        was{"washo"}
        wbp{"warlpiri"}
        wo{"uólofe"}
        xal{"kalmyk"}
        xh{"xosa"}
        xog{"lusoga"}
        yao{"yao"}
        yap{"yapese"}
        yav{"yangben"}
        ybb{"yemba"}
        yi{"iídiche"}
        yo{"ioruba"}
        yue{"cantonês"}
        za{"zhuang"}
        zap{"zapoteca"}
        zbl{"símbolos blis"}
        zen{"zenaga"}
        zgh{"tamazight marroquino padrão"}
        zh{"chinês"}
        zh_Hans{"chinês simplificado"}
        zh_Hant{"chinês tradicional"}
        zu{"zulu"}
        zun{"zunhi"}
        zxx{"sem conteúdo linguístico"}
        zza{"zaza"}
    }
    Languages%short{
        az{"azeri"}
        en_GB{"inglês do Reino Unido"}
        en_US{"inglês dos Estados Unidos"}
    }
    Languages%variant{
        ps{"pushto"}
    }
    Scripts{
        Arab{"árabe"}
        Armi{"armi"}
        Armn{"armênio"}
        Avst{"avéstico"}
        Bali{"balinês"}
        Bamu{"bamum"}
        Batk{"bataque"}
        Beng{"bengali"}
        Blis{"símbolos bliss"}
        Bopo{"bopomofo"}
        Brah{"brahmi"}
        Brai{"braille"}
        Bugi{"buginês"}
        Buhd{"buhid"}
        Cakm{"cakm"}
        Cans{"escrita silábica unificada dos aborígenes canadenses"}
        Cari{"cariano"}
        Cham{"cham"}
        Cher{"cherokee"}
        Cirt{"cirth"}
        Copt{"cóptico"}
        Cprt{"cipriota"}
        Cyrl{"cirílico"}
        Cyrs{"cirílico eslavo eclesiástico"}
        Deva{"devanágari"}
        Dsrt{"deseret"}
        Egyd{"demótico egípcio"}
        Egyh{"hierático egípcio"}
        Egyp{"hieróglifos egípcios"}
        Ethi{"etiópico"}
        Geok{"khutsuri georgiano"}
        Geor{"georgiano"}
        Glag{"glagolítico"}
        Goth{"gótico"}
        Grek{"grego"}
        Gujr{"gujerati"}
        Guru{"gurmuqui"}
        Hang{"hangul"}
        Hani{"han"}
        Hano{"hanunoo"}
        Hans{"simplificado"}
        Hant{"tradicional"}
        Hebr{"hebraico"}
        Hira{"hiragana"}
        Hmng{"pahawh hmong"}
        Hrkt{"katakana ou hiragana"}
        Hung{"húngaro antigo"}
        Inds{"indo"}
        Ital{"itálico antigo"}
        Java{"javanês"}
        Jpan{"japonês"}
        Kali{"kayah li"}
        Kana{"katakana"}
        Khar{"kharoshthi"}
        Khmr{"khmer"}
        Knda{"kannada"}
        Kore{"coreano"}
        Kthi{"kthi"}
        Lana{"lanna"}
        Laoo{"lao"}
        Latf{"latim fraktur"}
        Latg{"latim gaélico"}
        Latn{"latim"}
        Lepc{"lepcha"}
        Limb{"limbu"}
        Lina{"linear A"}
        Linb{"linear B"}
        Lisu{"lisu"}
        Lyci{"lício"}
        Lydi{"lídio"}
        Mand{"mandaico"}
        Mani{"maniqueano"}
        Maya{"hieróglifos maias"}
        Merc{"meroítico cursivo"}
        Mero{"meroítico"}
        Mlym{"malaiala"}
        Mong{"mongol"}
        Moon{"moon"}
        Mtei{"meitei mayek"}
        Mymr{"birmanês"}
        Nkoo{"n’ko"}
        Ogam{"ogâmico"}
        Olck{"ol chiki"}
        Orkh{"orkhon"}
        Orya{"oriya"}
        Osma{"osmania"}
        Perm{"pérmico antigo"}
        Phag{"phags-pa"}
        Phli{"phli"}
        Phlp{"phlp"}
        Phlv{"pahlavi antigo"}
        Phnx{"fenício"}
        Plrd{"fonético pollard"}
        Prti{"prti"}
        Rjng{"rejang"}
        Roro{"rongorongo"}
        Runr{"rúnico"}
        Samr{"samaritano"}
        Sara{"sarati"}
        Saur{"saurashtra"}
        Sgnw{"signwriting"}
        Shaw{"shaviano"}
        Sinh{"cingalês"}
        Sund{"sundanês"}
        Sylo{"syloti nagri"}
        Syrc{"siríaco"}
        Syre{"siríaco estrangelo"}
        Syrj{"siríaco ocidental"}
        Syrn{"siríaco oriental"}
        Tagb{"tagbanwa"}
        Tale{"tai Le"}
        Talu{"novo tai lue"}
        Taml{"tâmil"}
        Tavt{"tavt"}
        Telu{"télugo"}
        Teng{"tengwar"}
        Tfng{"tifinagh"}
        Tglg{"tagalo"}
        Thaa{"thaana"}
        Thai{"tailandês"}
        Tibt{"tibetano"}
        Ugar{"ugarítico"}
        Vaii{"vai"}
        Visp{"visible speech"}
        Xpeo{"persa antigo"}
        Xsux{"sumério-acadiano cuneiforme"}
        Yiii{"yi"}
        Zinh{"herdado"}
        Zmth{"zmth"}
        Zsym{"zsym"}
        Zxxx{"ágrafo"}
        Zyyy{"comum"}
        Zzzz{"escrita desconhecida"}
    }
    Scripts%stand-alone{
        Hans{"han simplificado"}
        Hant{"han tradicional"}
    }
    Scripts%variant{
        Arab{"perso-árabe"}
    }
    Types{
        calendar{
            buddhist{"Calendário Budista"}
            chinese{"Calendário Chinês"}
            coptic{"Calendário Coptic"}
            dangi{"Calendário Dangi"}
            ethiopic{"Calendário etíope"}
            ethiopic-amete-alem{"Calendário Amete Alem da Etiópia"}
            gregorian{"Calendário Gregoriano"}
            hebrew{"Calendário Hebraico"}
            indian{"Calendário Nacional Indiano"}
            islamic{"Calendário Islâmico"}
            islamic-civil{"Calendário Civil Islâmico"}
            iso8601{"Calendário ISO-8601"}
            japanese{"Calendário Japonês"}
            persian{"Calendário Persa"}
            roc{"Calendário da República da China"}
        }
        colAlternate{
            non-ignorable{"Classificar símbolos"}
            shifted{"Classificar ignorando símbolos"}
        }
        colBackwards{
            no{"Classificar acentos normalmente"}
            yes{"Classificação reversa de acentos"}
        }
        colCaseFirst{
            lower{"Classificar por minúsculas"}
            no{"Classificação normal de maiúsculas e minúsculas"}
            upper{"Classificar por maiúsculas"}
        }
        colCaseLevel{
            no{"Classificação sem diferenciação de maiúsculas e minúsculas"}
            yes{"Classificação com diferenciação de maiúsculas e minúsculas"}
        }
        colHiraganaQuaternary{
            no{"Classificar kana separadamente"}
            yes{"Classificar kana diferentemente"}
        }
        colNormalization{
            no{"Classificar sem normalização"}
            yes{"Classificar Unicode normalizado"}
        }
        colNumeric{
            no{"Classificar dígitos individualmente"}
            yes{"Classificar dígitos numericamente"}
        }
        colStrength{
            identical{"Classificar tudo"}
            primary{"Classificar somente letras básicas"}
            quaternary{"Classificar acentos/maiúsculas e minúsculas/largura/kana"}
            secondary{"Classificar acentos"}
            tertiary{"Classificar acentos/maiúsculas e minúsculas/largura"}
        }
        collation{
            big5han{"Ordem do Chinês Tradicional - Big5"}
            dictionary{"Ordem do dicionário"}
            ducet{"Ordem padrão do Unicode"}
            gb2312han{"Ordem do Chinês Simplificado - GB2312"}
            phonebook{"Ordem de Lista Telefônica"}
            phonetic{"Ordem de classificação fonética"}
            pinyin{"Ordem Pin-yin"}
            reformed{"Ordem reformulada"}
            search{"Pesquisa de uso geral"}
            searchjl{"Pesquisar por consonante inicial hangul"}
            standard{"padrão"}
            stroke{"Ordem dos Traços"}
            traditional{"Ordem Tradicional"}
            unihan{"Ordem por Radical-Traços"}
        }
        hc{
            h11{"Sistema de 12 horas (0–11)"}
            h12{"Sistema de 12 horas (1–12)"}
            h23{"Sistema de 24 horas (0–23)"}
            h24{"Sistema de 24 horas (1–24)"}
        }
        lb{
            loose{"Quebra de linha com estilo solto"}
            normal{"Quebra de linha com estilo normal"}
            strict{"Quebra de linha com estilo estrito"}
        }
        ms{
            metric{"Sistema métrico"}
            uksystem{"Sistema de medição imperial"}
            ussystem{"Sistema de medição americano"}
        }
        numbers{
            arab{"Algarismos indo-arábicos"}
            arabext{"Algarismos indo-arábicos por extenso"}
            armn{"Algarismos armênios"}
            armnlow{"Algarismos armênios minúsculos"}
            beng{"Algarismos Bengali"}
            deva{"Algarismos Devanagari"}
            ethi{"Algarismos etiopianos"}
            finance{"Numerais financeiros"}
            fullwide{"Algarismos em extensão total"}
            geor{"Algarismos georgianos"}
            grek{"Algarismos gregos"}
            greklow{"Algarismos gregos minúsculos"}
            gujr{"Algarismos Gujarati"}
            guru{"Algarismos Gurmukhi"}
            hanidec{"Algarismos decimais chineses"}
            hans{"Algarismos chineses simplificados"}
            hansfin{"Algarismos financeiros chineses simplificados"}
            hant{"Algarismos chineses tradicionais"}
            hantfin{"Algarismos financeiros chineses tradicionais"}
            hebr{"Algarismos hebraicos"}
            jpan{"Algarismos japoneses"}
            jpanfin{"Algarismos financeiros japoneses"}
            khmr{"Algarismos Khmer"}
            knda{"Algarismos Kannada"}
            laoo{"Algarismos laosianos"}
            latn{"Algarismos ocidentais"}
            mlym{"Algarismos Malayalam"}
            mong{"Algarismos mongóis"}
            mymr{"Algarismos Myanmar"}
            native{"Dígitos nativos"}
            orya{"Algarismos Oriya"}
            roman{"Algarismos romanos"}
            romanlow{"Algarismos romanos minúsculos"}
            taml{"Algarismos Tâmil"}
            tamldec{"Algarismos Tâmil"}
            telu{"Algarismos Telugu"}
            thai{"Algarismos tailandeses"}
            tibt{"Algarismos tibetanos"}
            traditional{"Numerais tradicionais"}
            vaii{"Dígitos vai"}
        }
    }
    Variants{
        1606NICT{"francês antigo de 1606"}
        1694ACAD{"francês da idade moderna"}
        1901{"ortografia alemã tradicional"}
        1959ACAD{"acadêmico"}
        1994{"ortografia resiana padronizada"}
        1996{"ortografia alemã de 1996"}
        AREVELA{"armênio oriental"}
        AREVMDA{"armênio ocidental"}
        BAKU1926{"alfabeto latino turco unificado"}
        BISCAYAN{"biscainho"}
        BISKE{"dialeto san giorgio/bila"}
        BOONT{"boontling"}
        FONIPA{"fonética do Alfabeto Fonético Internacional"}
        FONUPA{"fonética do Alfabeto Fonético Urálico"}
        HEPBURN{"romanização hepburn"}
        HOGNORSK{"alto noruego"}
        KKCOR{"ortografia comum"}
        LIPAW{"dialeto lipovaz de Resian"}
        MONOTON{"monotônico"}
        NDYUKA{"dialeto ndyuka"}
        NEDIS{"dialeto natisone"}
        NJIVA{"dialeto gniva/njiva"}
        OSOJS{"dialeto oseacco/osojane"}
        PAMAKA{"dialeto pamaka"}
        PINYIN{"romanização Pinyin"}
        POLYTON{"politônico"}
        POSIX{"computador"}
        REVISED{"ortografia revisada"}
        ROZAJ{"resiano"}
        SAAHO{"saho"}
        SCOTLAND{"inglês padrão escocês"}
        SCOUSE{"scouse"}
        SOLBA{"dialeto stolvizza/solbica"}
        TARASK{"ortografia taraskievica"}
        UCCOR{"ortografia unificada"}
        UCRCOR{"ortografia revisada e unificada"}
        VALENCIA{"valenciano"}
        WADEGILE{"romanização Wade-Giles"}
    }
    Version{"2.1.22.93"}
    codePatterns{
        language{"Idioma: {0}"}
        script{"Alfabeto: {0}"}
        territory{"Região: {0}"}
    }
    localeDisplayPattern{
        keyTypePattern{"{0}: {1}"}
        pattern{"{0} ({1})"}
        separator{"{0}, {1}"}
    }
}
