﻿// ***************************************************************************
// *
// * Copyright (C) 2012 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/so.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/so.xml
 */
so{
    Countries{
        AD{"Andora"}
        AE{"Imaaraadka Carabta ee Midoobay"}
        AF{"Afgaanistaan"}
        AG{"Antigua iyo Barbuda"}
        AI{"Anguilla"}
        AL{"Albaaniya"}
        AM{"Armeeniya"}
        AN{"Netherlands Antilles"}
        AO{"Angoola"}
        AR{"Arjantiin"}
        AS{"Samowa Ameerika"}
        AT{"Awsteriya"}
        AU{"Awstaraaliya"}
        AW{"Aruba"}
        AZ{"Azerbajaan"}
        BA{"Bosniya Hersigoviina"}
        BB{"Baarbadoos"}
        BD{"Bangaaladheesh"}
        BE{"Biljam"}
        BF{"Burkiina Faaso"}
        BG{"Bulgaariya"}
        BH{"Baxreyn"}
        BI{"Burundi"}
        BJ{"Biniin"}
        BM{"Bermuuda"}
        BN{"Buruneeya"}
        BO{"Boliifiya"}
        BR{"Braasiil"}
        BS{"Bahaamas"}
        BT{"Bhutan"}
        BW{"Botuswaana"}
        BY{"Belarus"}
        BZ{"Belize"}
        CA{"Kanada"}
        CD{"Jamhuuriyadda Dimuquraadiga Kongo"}
        CF{"Jamhuuriyadda Afrikada Dhexe"}
        CG{"Kongo"}
        CH{"Swiiserlaand"}
        CI{"Ivory coast"}
        CK{"Jaziiradda Cook"}
        CL{"Jili"}
        CM{"Kaameruun"}
        CN{"Shiinaha"}
        CO{"Kolombiya"}
        CR{"Kosta Riika"}
        CS{"serbiya iyo Monteneegro"}
        CU{"Kuuba"}
        CV{"Cape Verde Islands"}
        CY{"Qubrus"}
        CZ{"Jamhuuriyadda Jek"}
        DE{"Jarmal"}
        DJ{"Jabuuti"}
        DK{"Denmark"}
        DM{"Domeenika"}
        DO{"Jamhuuriyadda Domeenika"}
        DZ{"Aljeeriya"}
        EC{"Ikuwadoor"}
        EE{"Estooniya"}
        EG{"Masar"}
        ER{"Eretereeya"}
        ES{"Isbeyn"}
        ET{"Itoobiya"}
        FI{"Finland"}
        FJ{"Fiji"}
        FK{"Jaziiradaha Fooklaan"}
        FM{"Micronesia"}
        FR{"Faransiis"}
        GA{"Gaaboon"}
        GB{"United Kingdom"}
        GD{"Giriinaada"}
        GE{"Joorjiya"}
        GF{"French Guiana"}
        GH{"Gaana"}
        GI{"Gibraltar"}
        GL{"Greenland"}
        GM{"Gambiya"}
        GN{"Gini"}
        GP{"Guadeloupe"}
        GQ{"Equatorial Guinea"}
        GR{"Giriig"}
        GT{"Guwaatamaala"}
        GU{"Guam"}
        GW{"Gini-Bisaaw"}
        GY{"Guyana"}
        HN{"Honduras"}
        HR{"Korweeshiya"}
        HT{"Hayti"}
        HU{"Hangeri"}
        ID{"Indoneesiya"}
        IE{"Ayrlaand"}
        IL{"Israaʼiil"}
        IN{"Hindiya"}
        IO{"British Indian Ocean Territory"}
        IQ{"Ciraaq"}
        IR{"Iiraan"}
        IS{"Iislaand"}
        IT{"Talyaani"}
        JM{"Jameyka"}
        JO{"Urdun"}
        JP{"Jabaan"}
        KE{"Kiiniya"}
        KG{"Kirgistaan"}
        KH{"Kamboodiya"}
        KI{"Kiribati"}
        KM{"Komooros"}
        KN{"Saint Kitts and Nevis"}
        KP{"Kuuriyada Waqooyi"}
        KR{"Kuuriyada Koonfureed"}
        KW{"Kuwayt"}
        KY{"Cayman Islands"}
        KZ{"Kasaakhistaan"}
        LA{"Laos"}
        LB{"Lubnaan"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sirilaanka"}
        LR{"Laybeeriya"}
        LS{"Losooto"}
        LT{"Lituweeniya"}
        LU{"Luksemboorg"}
        LV{"Latfiya"}
        LY{"Liibiya"}
        MA{"Marooko"}
        MC{"Moonako"}
        MD{"Moldofa"}
        MG{"Madagaskar"}
        MH{"Marshall Islands"}
        MK{"Makadooniya"}
        ML{"Maali"}
        MM{"Myanmar"}
        MN{"Mongooliya"}
        MP{"Northern Mariana Islands"}
        MQ{"Martinique"}
        MR{"Muritaaniya"}
        MS{"Montserrat"}
        MT{"Maalda"}
        MU{"Murishiyoos"}
        MV{"Maaldiqeen"}
        MW{"Malaawi"}
        MX{"Meksiko"}
        MY{"Malaysia"}
        MZ{"Musambiig"}
        NA{"Namiibiya"}
        NC{"New Caledonia"}
        NE{"Nayjer"}
        NF{"Norfolk Island"}
        NG{"Nayjeeriya"}
        NI{"Nikaraaguwa"}
        NL{"Netherlands"}
        NO{"Noorweey"}
        NP{"Nebaal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Neyuusilaand"}
        OM{"Cumaan"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"French Polynesia"}
        PG{"Papua New Guinea"}
        PH{"Filibiin"}
        PK{"Bakistaan"}
        PL{"Booland"}
        PM{"Saint Pierre and Miquelon"}
        PN{"Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Falastiin Daanka galbeed iyo Qasa"}
        PT{"Bortuqaal"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qadar"}
        RE{"Réunion"}
        RO{"Rumaaniya"}
        RU{"Ruush"}
        RW{"Ruwanda"}
        SA{"Sacuudi Carabiya"}
        SB{"Solomon Islands"}
        SC{"Sishelis"}
        SD{"Suudaan"}
        SE{"Iswidhan"}
        SG{"Singaboor"}
        SH{"Saint Helena"}
        SI{"Slovenia"}
        SK{"Slovakia"}
        SL{"Siraaliyoon"}
        SM{"San Marino"}
        SN{"Sinigaal"}
        SO{"Soomaaliya"}
        SR{"Suriname"}
        ST{"São Tomé and Príncipe"}
        SV{"El Salvador"}
        SY{"Suuriya"}
        SZ{"Iswaasilaand"}
        TC{"Turks and Caicos Islands"}
        TD{"Jaad"}
        TG{"Toogo"}
        TH{"Taylaand"}
        TJ{"Tajikistan"}
        TK{"Tokelau"}
        TL{"Timorka bari"}
        TM{"Turkmenistan"}
        TN{"Tuniisiya"}
        TO{"Tonga"}
        TR{"Turki"}
        TT{"Trinidad and Tobago"}
        TV{"Tuvalu"}
        TW{"Taywaan"}
        TZ{"Tansaaniya"}
        UA{"Ukrayn"}
        UG{"Ugaanda"}
        US{"Maraykanka"}
        UY{"Uruguwaay"}
        UZ{"Uusbakistaan"}
        VA{"Faatikaan"}
        VC{"Saint Vincent and the Grenadines"}
        VE{"Fenisuweela"}
        VG{"British Virgin Islands"}
        VI{"U.S. Virgin Islands"}
        VN{"Fiyetnaam"}
        VU{"Vanuatu"}
        WF{"Wallis and Futuna"}
        WS{"Samoa"}
        YE{"Yaman"}
        YT{"Mayotte"}
        ZA{"Koonfur Afrika"}
        ZM{"Saambiya"}
        ZW{"Simbaabwe"}
        ZZ{"Far aan la aqoon amase aan saxnayn"}
    }
    Version{"2.0.65.46"}
}
