﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/ksh.xml
// *
// ***************************************************************************
ksh{
    Keys{
        calendar{"dä Kalländer"}
        collation{"de Reijefollsch zom Zotiere"}
        currency{"de Zoot Jeld"}
        numbers{"de Nummere"}
    }
    Languages{
        aa{"Afahresch"}
        ab{"Abchahsesch"}
        ace{"Aschenehsesch"}
        ae{"Avästahnesch"}
        aeb{"Tonehsesch Arahbesch"}
        af{"Afrikaans"}
        afh{"Afrehihlesch"}
        ak{"Akahnesch"}
        akk{"Akahdesch"}
        ale{"Ale’uhtesch"}
        am{"Amhahresch"}
        an{"Arrajonehsesch"}
        ang{"Ahl Änglesch"}
        ar{"Arahbesch"}
        ar_001{"Schtandatt Arahbesch"}
        arq{"Aljehresch Arahbesch"}
        ary{"Marokahnesch Arahbesch"}
        arz{"Äjiptesch Arahbesch"}
        as{"Aßamehsesch"}
        asa{"Pare"}
        ase{"Amärrekahnesche Blendeschprohch"}
        ast{"Astuhrejahnesch"}
        av{"Avahresch"}
        ay{"Aimahresch"}
        az{"Asserbaidschahnesch"}
        az_Arab{"Södasserbaidschahnesch"}
        ba{"Baschkihresch"}
        bal{"Beluhtschesch"}
        ban{"Balinehsesch"}
        bar{"Bairesch"}
        be{"Wiißrußesch"}
        bem{"Bemba"}
        bez{"Bena"}
        bg{"Bulljaaresch"}
        bm{"Bambara"}
        bn{"Bängjaalesch"}
        bo{"Tibehtesch"}
        bpy{"Bischnuprejahnesch"}
        br{"Bettohnesch"}
        bra{"Brajesch"}
        brh{"Brahuijesch"}
        brx{"Boddo"}
        bs{"Boßnesch"}
        bua{"Burejahtesch"}
        bug{"Bujinehsesch"}
        ca{"Kattalahnesch"}
        co{"Korsesch"}
        cop{"Koptesch"}
        cs{"Tschäschesch"}
        csb{"Kaschuhbesch"}
        cu{"Kerscheßlahwesch"}
        cv{"Tschowaschesch"}
        cy{"Wallihsesch"}
        da{"Dähnesch"}
        de{"Deutsch"}
        de_AT{"Deutsch uß Ößterich"}
        de_CH{"Deutsch uß de Schweijz"}
        dsb{"Niddersorbesch"}
        dum{"Meddelnehderlängsch"}
        dv{"Divehjesch"}
        dz{"Butahnesch"}
        dzg{"Dassajahnesch"}
        ebu{"Embu"}
        ee{"Ewe"}
        efi{"Efik"}
        egl{"Emilijahnesch"}
        egy{"Ahl Äjiptesch"}
        el{"Jrihschesch"}
        en{"Änglesch"}
        en_AU{"Änglesch uß Außtraalije"}
        en_CA{"Änglesch uß Kanada"}
        en_GB{"Änglesch uß Jruußbrettannije"}
        en_US{"Amärrekaanesch Änglesch"}
        enm{"Meddelänglesch"}
        eo{"Esperanto"}
        es{"Schpahnesch"}
        es_419{"Schpaanesch uß Latting-Ammärrika"}
        es_ES{"Schpahnesch en Schpahneje"}
        es_MX{"Schpahnesch en Mäxikoh"}
        esu{"Zätrahl-Jupik"}
        et{"Äßnesch"}
        eu{"Baskesch"}
        fa{"Pärsesch"}
        fi{"Finnesch"}
        fil{"fil"}
        fj{"Fidschesch"}
        fo{"Färröeresch"}
        fr{"Franzüüsesch"}
        fr_CA{"Franzüüsesch uß Kanada"}
        fr_CH{"Franzüüsesch uß de Schweijz"}
        fy{"Wäßfriisesch"}
        ga{"Ieresch"}
        gl{"Jalliizesch"}
        gn{"Juwaraanesch"}
        gsw{"Schwitzerdütsch"}
        gu{"Gutscharatesch"}
        ha{"Haußa"}
        haw{"Hauajaanesch"}
        he{"Hebräjesch"}
        hi{"Hindi"}
        hr{"Krowatesch"}
        ht{"Ha’iitesch"}
        hu{"Unjarresch"}
        hy{"Armeenesch"}
        id{"Indoneesesch"}
        ig{"Igbo"}
        inh{"Engjuschesch"}
        io{"Ido"}
        is{"Ißländesch"}
        it{"Etalljänesch"}
        iu{"Inuktitut"}
        izh{"Ingjrijahnesch"}
        ja{"Japaanesch"}
        jam{"Jamaikahnesch-Änglesch"}
        jbo{"Lodschbahn"}
        jpr{"Jühdesch-Pärsesch"}
        jut{"Jütesch"}
        jv{"Javahnesch"}
        ka{"Je’orjesch"}
        kea{"Kapvärdesch"}
        kk{"Kassakesch"}
        km{"Khmer"}
        kn{"Kannada"}
        ko{"Korrejaanesch"}
        ks{"Kaschmieresch"}
        ksh{"Kölsch"}
        ku{"Kurdesch"}
        ky{"Kirjihsesch"}
        la{"Lateijnesch"}
        lah{"de Landa-Schprooche"}
        lb{"Luxemborjesch"}
        ln{"Lingjalla"}
        lo{"Lahootesch"}
        lt{"Littouesch"}
        luy{"Luyjanesch"}
        lv{"Lättesch"}
        mg{"Madajaßkesch"}
        mi{"Maahori"}
        mk{"Mazedoonesch"}
        ml{"Mallajalam"}
        mn{"Mongjolesch"}
        mr{"Marraatesch"}
        ms{"Mallaijesch"}
        mt{"Malteesesch"}
        mul{"-ongerscheidlijje Schprooche-"}
        my{"Burmessesch"}
        nb{"Norrweejesch Bokmål"}
        nd{"Nood-Ndebele"}
        ne{"Nepallessesch"}
        nl{"Holländesch"}
        nl_BE{"Flämesch"}
        nn{"Neu-Norrweejesch"}
        no{"Norrweejesch"}
        nso{"Nood-Sooto"}
        ny{"Schi-Schewa"}
        or{"Oriija"}
        os{"Oßeetesch"}
        pa{"Panschaabesch"}
        pl{"Pollnesch"}
        ps{"Paschtuunesch"}
        pt{"Pochtojesesch"}
        pt_BR{"Brasilljaanesch Pochtojesesch"}
        pt_PT{"Pochtojesesch uß Pochtojall"}
        qu{"Kättschowa"}
        rm{"Rätoromaanesch"}
        rn{"K-Rundesch"}
        ro{"Rumänesch"}
        rof{"Kirombo"}
        ru{"Rußßesch"}
        rw{"Kinja-Ruandesch"}
        sa{"Sanskrit"}
        sah{"Jackutesch"}
        sd{"Sinndi"}
        se{"Nood-Lappländesch"}
        sg{"Sangjo"}
        sh{"Särbokowatesch"}
        si{"Singjaleesesch"}
        sk{"ẞlovakesch"}
        sl{"ẞloveenesch"}
        sm{"Sammohanesch"}
        sn{"Schi-Schona"}
        so{"Somaalesch"}
        sq{"Albaanesch"}
        sr{"Särbesch"}
        ss{"Si-Swatesch"}
        st{"Söd-Sooto"}
        su{"Sindaneesesch"}
        sv{"Schweedesch"}
        sw{"Suaheelesch"}
        swb{"Kommooresch"}
        ta{"Tamiilesch"}
        te{"Telluuju"}
        tet{"Tetumsch"}
        tg{"Tadschiikesch"}
        th{"Tailändesch"}
        ti{"Tijrenejaanesch"}
        tk{"Törkmeenesch"}
        tl{"Tagalog"}
        tn{"Se-Zwaanesch"}
        to{"Tongjaanesch"}
        tpi{"Took Pisin"}
        tr{"Törkesch"}
        ts{"Xi-Zongjanesch"}
        tt{"Tattaaresch"}
        ty{"Tahitesch"}
        ug{"Uj’juuersch"}
        uk{"Ukrainesch"}
        und{"-onbikannte-Schprooch-"}
        ur{"Urdu/Hindi"}
        uz{"Ußbeekesch"}
        ve{"Wenda"}
        vi{"Vijätnammeesesch"}
        wae{"Walserdütsch"}
        wo{"Woloff"}
        xh{"Isi-Khoosa"}
        yo{"Joruuba"}
        yue{"Kanton-Schineesesch"}
        zh{"Schineesesch"}
        zh_Hans{"Schineesesch en de eijfacher Schreff"}
        zh_Hant{"Schineesesch en de tradizjonälle Schreff"}
        zu{"Suulu"}
        zxx{"kein Schprooch"}
    }
    Languages%short{
        en_GB{"Brittesch Änglesch"}
        en_US{"Amärrekaanesch Änglesch"}
    }
    Scripts{
        Arab{"arraabesche Schreff"}
        Armn{"armeenesche Schreff"}
        Beng{"bängjaalesche Schreff"}
        Bopo{"schineeseche Ömschreff Bopomofo"}
        Brai{"Blindeschreff"}
        Cyrl{"kürrellesche Schreff"}
        Deva{"indesche Devanajari-Schreff"}
        Ethi{"ätejoopesche Schreff"}
        Geor{"je’orrjesche Schreff"}
        Grek{"jriischesche Schreff"}
        Gujr{"jujaraatesche Schreff"}
        Guru{"indesche Gurmukhi-Schreff"}
        Hang{"korrejaanesche Schreff"}
        Hani{"en schineesesche Schreff"}
        Hans{"eijfacher"}
        Hant{"tradizjonäll"}
        Hebr{"hebrääjesche Schreff"}
        Hira{"japaanesche Hiddajaana-Schreff"}
        Jpan{"en japaanesche Schreff"}
        Kana{"japaanesche Kattakaana-Schreff"}
        Khmr{"Khmer-Schreff"}
        Knda{"indesche Kannada-Schreff"}
        Kore{"korrejaanesche Schreff udder en schineesesche Schreff"}
        Laoo{"lahootesche Schreff"}
        Latn{"lateinesche Schreff"}
        Mlym{"indesche Malajalam-Schreff"}
        Mong{"mongjoolesche Schreff"}
        Mymr{"birmaanesche Schreff"}
        Orya{"indesche Orija-Schreff"}
        Sinh{"singjaleesesche Schreff"}
        Taml{"tamiilesche Schreff"}
        Telu{"indesche Telugu-Schreff"}
        Thaa{"malledivesche Taana-Schreff"}
        Thai{"tailändesche Schreff"}
        Tibt{"tibeetesche Schreff"}
        Zsym{"-Zeiche ävver kein Schreff-"}
        Zxxx{"-jaa keij Schreff-"}
        Zyyy{"-öhnß en Schreff-"}
        Zzzz{"-onbikannte Schreff-"}
    }
    Scripts%stand-alone{
        Hans{"eijfacher schineesesche Schreff"}
        Hant{"tradizjonäll schineesesche Schreff"}
    }
    Types{
        calendar{
            buddhist{"buddistesche Kaländer"}
            chinese{"schineesesche Kaländer"}
            coptic{"kopttesche Kaländer"}
            ethiopic{"ätejoopesche Kaländer"}
            ethiopic-amete-alem{"ätejoopesche Amete Alem Kaländer"}
            gregorian{"jrejorejaanesche Kaländer"}
            hebrew{"jüdesche Kaländer"}
            indian{"indesche Nazjonahl-Kaländer"}
            islamic{"ißlaamesche Kaländer"}
            islamic-civil{"wältlesche islaamesche Kaländer"}
            japanese{"japaanesche Kaländer"}
            persian{"pärsesche Kaländer"}
            roc{"rotschineesesche Kaländer"}
        }
        collation{
            big5han{"zoteert nohm tradizjonäll schineesesch Big5"}
            dictionary{"zoteert wi em Wööterbooch"}
            ducet{"standattmääßesch zoteert nohm Unicode"}
            gb2312han{"zoteert nohm eijfacher schineesesch GB2312"}
            phonebook{"zoteert wi em Tollefoonbooch"}
            pinyin{"zoteert noh de Pinjin Ömschreff vum Schineesesch"}
            search{"Söhke"}
            standard{"Schtandatt"}
            stroke{"zoteert noh de Stresche vum tradizjonäll schineesesch"}
            traditional{"tradizjonäll zoteert"}
            unihan{"zoteert noh de Radikaale un Stresche vum Schineesesch"}
        }
        numbers{
            arab{"araabesche un indesche Zeffere"}
            arabext{"ußjedehnt araabesche un indesche Zeffere"}
            armn{"armeenesche Zahle"}
            armnlow{"klein jeschrevve armeenesche Zahle"}
            beng{"bängjaalesche Zeffere"}
            deva{"Devanagari-Zeffere"}
            ethi{"ätejoopesche Zahle"}
            fullwide{"janz breede Zeffere"}
            geor{"jeorjeesche Zahle"}
            grek{"jriischesche Zahle"}
            greklow{"klein jeschrevve jriischesche Zahle"}
            gujr{"Jujarati-Zeffere"}
            guru{"Jurmukhi-Zeffere"}
            hanidec{"schineesesche Zehnerzahle"}
            hans{"eijfache schineesesche Zahle"}
            hansfin{"eijfache schineesesche Finanzzahle"}
            hant{"tradizjonälle schineesesche Zahle"}
            hantfin{"tradizjonälle schineesesche Finanzzahle"}
            hebr{"hebräjesche Zahle"}
            jpan{"japanesche Zahle"}
            jpanfin{"japaanesche Finazzahle"}
            khmr{"Khmer-Zeffere"}
            knda{"Kannada-Zeffere"}
            laoo{"laootesche Zeffere"}
            latn{"wäßlejje Zeffere"}
            mlym{"Malayalam-Zeffere"}
            mong{"mongjoolesche Zeffere"}
            mymr{"Myanmar-Zeffere"}
            orya{"Oriya-Zeffere"}
            roman{"römesche Zahle"}
            romanlow{"klein jeschrevve römesche Zahle"}
            taml{"tradizjonälle tamilesche Zahle"}
            tamldec{"tamiilesche Zeffere"}
            telu{"Teluju-Zeffere"}
            thai{"thailändesche Zeffere"}
            tibt{"tibetaanesche Zeffere"}
        }
    }
    Variants{
        1606NICT{"späätmeddelfranzüüsesch vör 1606"}
        1694ACAD{"fröhneufranzüüsesch aff 1694"}
        1901{"Schriefwiiß vun 1901 aff"}
        1959ACAD{"akademesche Schriefwiiß vun 1959"}
        1994{"resijanesch schtandatt Schriefwiiß vun 1994"}
        1996{"Schriefwiiß vun 1996 aff"}
        ALALC97{"de lateinesche Ömschreff ALA-LC vun 1997"}
        AREVELA{"oß-armeensch"}
        AREVMDA{"wäß-armeenesch"}
        BAKU1926{"eijheijtlesch törkesch lateijnesch Allfabeet"}
        BISKE{"zint jorjo’sche uder bila’sche reijanesche Dijaläk"}
        BOONT{"boontlingsche Dijaläk"}
        FONIPA{"IPA-Loutschreff"}
        FONUPA{"UPA-Loutschreff"}
        HEPBURN{"De Lateinesche Ömschreff noh Hepburn"}
        HOGNORSK{"Huhnorrweejesch"}
        KKCOR{"jemeinsam widderbeläf kornesche Schriefwiiß"}
        LIPAW{"lipovazesch resijanesche Dijaläk"}
        MONOTON{"monnotoonesch"}
        NDYUKA{"ndyukanesche Dijaläk"}
        NEDIS{"natisonesche Dijaläk"}
        NJIVA{"gniva’sche uder njiva’sche reijanesche Dijaläk"}
        OSOJS{"oseacco’sche uder osojanesche reijanesche Dijaläk"}
        PAMAKA{"pamakanesche Dijaläk"}
        PINYIN{"Pinjin-Ömschreff"}
        POLYTON{"pollütoonesch"}
        REVISED{"neu opjelate Schriefwiiß"}
        ROZAJ{"resijanesche Dijaläk"}
        SCOTLAND{"schottesche Dijaläk"}
        SCOUSE{"scouse Dijaläk"}
        SOLBA{"stolvizanesche uder solbizanesch reijanesche Dijaläk"}
        TARASK{"Taraskijeviza-Schriefwiiß"}
        UCCOR{"eijheijtlesch Schriefwiiß"}
        UCRCOR{"eijheijtlesch, neu opjelate Schriefwiiß"}
        VALENCIA{"valenzijaanesche Dijaläk"}
        WADEGILE{"lateijnesche Ömschreff noh Wade-Giles"}
    }
    Version{"2.1.19.14"}
    codePatterns{
        language{"de Schprooch afjekööz met „{0}“"}
        script{"de Schreff afjekööz met „{0}“"}
        territory{"de Jääjend afjekööz met „{0}“"}
    }
    localeDisplayPattern{
        keyTypePattern{"{0}: {1}"}
        pattern{"{0} en {1}"}
        separator{"{0} uß {1}"}
    }
}
