﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/yi.xml
// *
// ***************************************************************************
yi{
    Keys{
        numbers{"נומערן"}
    }
    Languages{
        aa{"אַפֿאַר"}
        af{"אַפֿריקאַנס"}
        akk{"אַקאַדיש"}
        am{"אַמהאַריש"}
        an{"אַראַגאניש"}
        ang{"אַלט ענגליש"}
        ar{"אַראַביש"}
        arc{"אַראַמיש"}
        as{"אַסאַמיש"}
        az{"אַזערביידזשאַניש"}
        ban{"באַלינעזיש"}
        bar{"בײַעריש"}
        be{"בעלאַרוסיש"}
        bg{"בולגאַריש"}
        bn{"בענגאַליש"}
        bo{"טיבעטיש"}
        br{"ברעטאניש"}
        bs{"באסניש"}
        ca{"קאַטאַלאניש"}
        ceb{"סעבואַניש"}
        crh{"קרים־טערקיש"}
        cs{"טשעכיש"}
        csb{"קאַשוביש"}
        cu{"קלויסטער־סלאַוויש"}
        cy{"וועלשיש"}
        da{"דעניש"}
        de{"דײַטש"}
        dsb{"אונטער־סארביש"}
        dyo{"זשאלא־פֿאני"}
        el{"גריכיש"}
        en{"ענגליש"}
        enm{"מיטל ענגליש"}
        eo{"עספּעראַנטא"}
        es{"שפּאַניש"}
        et{"עסטיש"}
        eu{"באַסקיש"}
        fa{"פּערסיש"}
        fi{"פֿיניש"}
        fil{"פֿיליפּינא"}
        fj{"פֿידזשי"}
        fo{"פֿאַראיש"}
        fr{"פֿראַנצויזיש"}
        fro{"אַלט־פֿראַנצויזיש"}
        frr{"דרום־פֿריזיש"}
        frs{"מזרח־פֿריזיש"}
        fy{"מערב־פֿריזיש"}
        ga{"איריש"}
        gd{"סקאטיש געליש"}
        gl{"גאַלישיש"}
        gmh{"מיטל הויכדויטש"}
        goh{"אַלט־ הויכדויטש"}
        got{"גאטיש"}
        grc{"אוראַלט־גריכיש"}
        gv{"מאַנקס"}
        ha{"האַוסאַ"}
        he{"העברעאיש"}
        hi{"הינדי"}
        hif{"פידזשי הינדי"}
        hr{"קראאַטיש"}
        hsb{"אייבער־סארביש"}
        hu{"אונגעריש"}
        hy{"אַרמעניש"}
        id{"אינדאנעזיש"}
        io{"אידא"}
        is{"איסלאַנדיש"}
        it{"איטאַליעניש"}
        ja{"יאַפּאַניש"}
        jbo{"לאזשבאָן"}
        jpr{"יידיש־פערסיש"}
        jv{"יאַוואַנעזיש"}
        ka{"גרוזיניש"}
        kk{"קאַזאַכיש"}
        km{"כמער"}
        kn{"קאַנאַדאַ"}
        ko{"קארעאיש"}
        ku{"קורדיש"}
        kw{"קארניש"}
        ky{"קירגיזיש"}
        la{"לאטייניש"}
        lad{"לאַדינא"}
        lb{"לוקסעמבורגיש"}
        liv{"ליוויש"}
        lo{"לאַא"}
        lt{"ליטוויש"}
        lus{"מיזא"}
        lv{"לעטיש"}
        mi{"מאַאריש"}
        mk{"מאַקעדאניש"}
        ml{"מאַלאַיאַלאַם"}
        mn{"מאנגאליש"}
        mt{"מאַלטעזיש"}
        my{"בירמאַניש"}
        nap{"נאַפּאליטַניש"}
        nds{"נידערדײַטש"}
        ne{"נעפּאַליש"}
        nl{"האלענדיש"}
        nl_BE{"פֿלעמיש"}
        nn{"נײַ־נארוועגיש"}
        no{"נארוועגיש"}
        oc{"אקסיטאַניש"}
        os{"אסעטיש"}
        peo{"אַלט פּערסיש"}
        pl{"פּויליש"}
        prg{"פּרייסיש"}
        ps{"פּאַשטאָ"}
        pt{"פּארטוגעזיש"}
        ro{"רומעניש"}
        ru{"רוסיש"}
        rue{"רוסיניש"}
        sa{"סאַנסקריט"}
        sc{"סאַרדיש"}
        scn{"סיציליאַניש"}
        sco{"סקאטס"}
        sd{"סינדהי"}
        se{"נארדסאַמיש"}
        sga{"אַלט־איריש"}
        sh{"סערבא־קראאַטיש"}
        si{"סינהאַליש"}
        sk{"סלאוואַקיש"}
        sl{"סלאוועניש"}
        sli{"אונטער שלעזיש"}
        sly{"sly"}
        sm{"סאַמאאַניש"}
        sn{"שאנאַ"}
        so{"סאמאַליש"}
        sq{"אַלבאַניש"}
        sr{"סערביש"}
        sux{"סומעריש"}
        sv{"שוועדיש"}
        sw{"סוואַהיליש"}
        sw_CD{"קאנגא־סוואַהיליש"}
        swb{"קאמאריש"}
        szl{"שלעזיש"}
        ta{"טאַמיל"}
        tig{"טיגרע"}
        tk{"טורקמעניש"}
        tl{"טאַגאַלאג"}
        tt{"טאָטעריש"}
        uk{"אוקראַאיניש"}
        und{"אומבאַוואוסטע שפּראַך"}
        ur{"אורדו"}
        uz{"אוזבעקיש"}
        vi{"וויעטנאַמעזיש"}
        vls{"מערב פֿלעמיש"}
        vo{"וואלאַפּוק"}
        yi{"ייִדיש"}
        zh{"כינעזיש"}
        zu{"זולו"}
    }
    Languages%short{
        en_GB{"ענגליש (GB)"}
        en_US{"ענגליש (US)"}
    }
    Scripts{
        Arab{"אַראַביש"}
        Cyrl{"ציריליש"}
        Deva{"דעוואַנאַגאַרי"}
        Grek{"גריכיש"}
        Hebr{"Hebr"}
        Latn{"גַלחיש"}
    }
    Types{
        calendar{
            gregorian{"גרעגארישער קאַלענדאַר"}
        }
    }
    Version{"2.1.23.7"}
    codePatterns{
        language{"שפראַך: {0}"}
        script{"שריפֿט: {0}"}
        territory{"ראַיאן: {0}"}
    }
}
