﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/cgg.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/cgg.xml
 */
cgg{
    Languages{
        ak{"Orukani"}
        am{"Orumariki"}
        ar{"Oruharabu"}
        be{"Oruberarusi"}
        bg{"Oruburugariya"}
        bn{"Orubengari"}
        cgg{"Rukiga"}
        cs{"Oruceeki"}
        de{"Orugirimaani"}
        el{"Oruguriiki"}
        en{"Orungyereza"}
        es{"Orusupaani"}
        fa{"Orupaasiya"}
        fr{"Orufaransa"}
        ha{"Oruhausa"}
        hi{"Oruhindi"}
        hu{"Oruhangare"}
        id{"Oruindonezia"}
        ig{"Oruibo"}
        it{"Oruyitare"}
        ja{"Orujapaani"}
        jv{"Orujava"}
        km{"Orukambodiya"}
        ko{"Orukoreya"}
        ms{"Orumalesiya"}
        my{"Oruburuma"}
        ne{"Orunepali"}
        nl{"Orudaaki"}
        pa{"Orupungyabi"}
        pl{"Orupoori"}
        pt{"Orupocugo"}
        ro{"Oruromania"}
        ru{"Orurrasha"}
        rw{"Orunyarwanda"}
        so{"Orusomaari"}
        sv{"Oruswidi"}
        ta{"Orutamiri"}
        th{"Orutailandi"}
        tr{"Orukuruki"}
        uk{"Orukuraini"}
        ur{"Oru-Urudu"}
        vi{"Oruviyetinaamu"}
        yo{"Oruyoruba"}
        zh{"Oruchaina"}
        zu{"Oruzuru"}
    }
    Version{"2.0.92.87"}
}
