﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/khq.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/khq.xml
 */
khq{
    Languages{
        ak{"Akan senni"}
        am{"Amhaarik senni"}
        ar{"Laaraw senni"}
        be{"Belaruus senni"}
        bg{"Bulagaari senni"}
        bn{"Bengali senni"}
        cs{"Cek senni"}
        de{"Almaŋ senni"}
        el{"Grek senni"}
        en{"Inglisi senni"}
        es{"Espaaɲe senni"}
        fa{"Farsi senni"}
        fr{"Fransee senni"}
        ha{"Hawsance senni"}
        hi{"Induu senni"}
        hu{"Hungaari senni"}
        id{"Indoneesi senni"}
        ig{"Iboo senni"}
        it{"Itaali senni"}
        ja{"Japonee senni"}
        jv{"Javanee senni"}
        khq{"Koyra ciini"}
        km{"Kmeer senni, Game here"}
        ko{"Koree senni"}
        ms{"Maleezi senni"}
        my{"Burme senni"}
        ne{"Neepal senni"}
        nl{"Holandee senni"}
        pa{"Punjaabi sennii"}
        pl{"Polonee senni"}
        pt{"Portugee senni"}
        ro{"Rumaani senni"}
        ru{"Ruusi senni"}
        rw{"Rwanda senni"}
        so{"Somaali senni"}
        sv{"Suweede senni"}
        ta{"Tamil senni"}
        th{"Taailandu senni"}
        tr{"Turku senni"}
        uk{"Ukreen senni"}
        ur{"Urdu senni"}
        vi{"Vietnaam senni"}
        yo{"Yorbance senni"}
        zh{"Sinuwa senni, Mandareŋ"}
        zu{"Julu senni"}
    }
    Version{"2.0.82.45"}
}
