﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/sw.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/sw.xml
 */
sw{
    Countries{
        001{"Dunia"}
        002{"Afrika"}
        003{"Amerika Kaskazini"}
        005{"Amerika Kusini"}
        009{"Oceania"}
        011{"Afrika ya Magharibi"}
        013{"Amerika ya Kati"}
        014{"Afrika ya Mashariki"}
        015{"Afrika ya Kaskazini"}
        017{"Afrika ya Kati"}
        018{"Afrika ya Kusini"}
        019{"Amerika"}
        021{"Amerika ya Kaskazini"}
        029{"Karibi"}
        030{"Asia Mashariki"}
        034{"Asia ya Kusini"}
        035{"Asia ya Kusini Mashariki"}
        039{"Ulaya ya Kusini"}
        053{"Australasia"}
        054{"Melanesia"}
        057{"Eneo la Mikronesia"}
        061{"Polynesia"}
        142{"Asia"}
        143{"Asia ya Kati"}
        145{"Asia ya Magharibi"}
        150{"Ulaya"}
        151{"Ulaya ya Mashariki"}
        154{"Ulaya ya Kaskazini"}
        155{"Ulaya ya Magharibi"}
        419{"Amerika ya Kilatini"}
        AC{"Kisiwa cha Ascension"}
        AD{"Andora"}
        AE{"Falme za Kiarabu"}
        AF{"Afuganistani"}
        AG{"Antigua na Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Antili za Uholanzi"}
        AO{"Angola"}
        AQ{"Antaktika"}
        AR{"Ajentina"}
        AS{"Samoa ya Marekani"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Visiwa vya Alandi"}
        AZ{"Azabajani"}
        BA{"Bosnia na Hezegovina"}
        BB{"Babadosi"}
        BD{"Bangladeshi"}
        BE{"Ubelgiji"}
        BF{"Bukinafaso"}
        BG{"Bulgaria"}
        BH{"Bahareni"}
        BI{"Burundi"}
        BJ{"Benini"}
        BL{"Santabathelemi"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BQ{"Uholanzi ya Karibiani"}
        BR{"Brazili"}
        BS{"Bahama"}
        BT{"Butani"}
        BV{"Kisiwa cha Bouvet"}
        BW{"Botswana"}
        BY{"Belarusi"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Visiwa vya Cocos (Keeling)"}
        CD{"Jamhuri ya Kidemokrasia ya Kongo"}
        CF{"Jamhuri ya Afrika ya Kati"}
        CG{"Kongo - Brazzaville"}
        CH{"Uswisi"}
        CI{"Côte d’Ivoire"}
        CK{"Visiwa vya Cook"}
        CL{"Chile"}
        CM{"Kameruni"}
        CN{"China"}
        CO{"Kolombia"}
        CP{"Kisiwa cha Clipperton"}
        CR{"Kostarika"}
        CU{"Kuba"}
        CV{"Kepuvede"}
        CW{"Kurakao"}
        CX{"Kisiwa cha Krismasi"}
        CY{"Kuprosi"}
        CZ{"Jamhuri ya Cheki"}
        DE{"Ujerumani"}
        DG{"Diego Garcia"}
        DJ{"Jibuti"}
        DK{"Denmaki"}
        DM{"Dominika"}
        DO{"Jamhuri ya Dominika"}
        DZ{"Aljeria"}
        EA{"Ceuta na Melilla"}
        EC{"Ekwado"}
        EE{"Estonia"}
        EG{"Misri"}
        EH{"Sahara Magharibi"}
        ER{"Eritrea"}
        ES{"Hispania"}
        ET{"Uhabeshi"}
        EU{"Umoja wa Ulaya"}
        FI{"Ufini"}
        FJ{"Fiji"}
        FK{"Visiwa vya Falkland"}
        FM{"Mikronesia"}
        FO{"Visiwa vya Faroe"}
        FR{"Ufaransa"}
        GA{"Gaboni"}
        GB{"Uingereza"}
        GD{"Grenada"}
        GE{"Jojia"}
        GF{"Gwiyana ya Ufaransa"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Jibralta"}
        GL{"Grinlandi"}
        GM{"Gambia"}
        GN{"Gine"}
        GP{"Gwadelupe"}
        GQ{"Ginekweta"}
        GR{"Ugiriki"}
        GS{"Jojia Kusini na Visiwa vya Sandwich Kusini"}
        GT{"Gwatemala"}
        GU{"Gwam"}
        GW{"Ginebisau"}
        GY{"Guyana"}
        HK{"Hong Kong SAR China"}
        HM{"Kisiwa cha Heard na Visiwa vya McDonald"}
        HN{"Hondurasi"}
        HR{"Korasia"}
        HT{"Haiti"}
        HU{"Hungaria"}
        IC{"Visiwa vya Kanari"}
        ID{"Indonesia"}
        IE{"Ayalandi"}
        IL{"Israeli"}
        IM{"Isle of Man"}
        IN{"India"}
        IO{"Eneo la Uingereza katika Bahari Hindi"}
        IQ{"Iraki"}
        IR{"Uajemi"}
        IS{"Aislandi"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Jamaika"}
        JO{"Yordani"}
        JP{"Japani"}
        KE{"Kenya"}
        KG{"Kirigizistani"}
        KH{"Kambodia"}
        KI{"Kiribati"}
        KM{"Komoro"}
        KN{"Santakitzi na Nevis"}
        KP{"Korea Kaskazini"}
        KR{"Korea Kusini"}
        KW{"Kuwaiti"}
        KY{"Visiwa vya Kayman"}
        KZ{"Kazakistani"}
        LA{"Laosi"}
        LB{"Lebanoni"}
        LC{"Santalusia"}
        LI{"Lishenteni"}
        LK{"Sirilanka"}
        LR{"Liberia"}
        LS{"Lesoto"}
        LT{"Litwania"}
        LU{"Lasembagi"}
        LV{"Lativia"}
        LY{"Libya"}
        MA{"Moroko"}
        MC{"Monako"}
        MD{"Moldova"}
        ME{"Montenegro"}
        MF{"Saint Martin"}
        MG{"Bukini"}
        MH{"Visiwa vya Marshal"}
        MK{"Masedonia"}
        ML{"Mali"}
        MM{"Myanmar (Burma)"}
        MN{"Mongolia"}
        MO{"Macau SAR China"}
        MP{"Visiwa vya Mariana vya Kaskazini"}
        MQ{"Martiniki"}
        MR{"Moritania"}
        MS{"Montserrati"}
        MT{"Malta"}
        MU{"Morisi"}
        MV{"Modivu"}
        MW{"Malawi"}
        MX{"Meksiko"}
        MY{"Malesia"}
        MZ{"Msumbiji"}
        NA{"Namibia"}
        NC{"Nyukaledonia"}
        NE{"Nijeri"}
        NF{"Kisiwa cha Norfok"}
        NG{"Nigeria"}
        NI{"Nikaragwa"}
        NL{"Uholanzi"}
        NO{"Norwe"}
        NP{"Nepali"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nyuzilandi"}
        OM{"Omani"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polinesia ya Ufaransa"}
        PG{"Papua"}
        PH{"Filipino"}
        PK{"Pakistani"}
        PL{"Polandi"}
        PM{"Santapieri na Mikeloni"}
        PN{"Pitkairni"}
        PR{"Pwetoriko"}
        PS{"Maeneo ya Palestina"}
        PT{"Ureno"}
        PW{"Palau"}
        PY{"Paragwai"}
        QA{"Katari"}
        QO{"Oceania ya Nje"}
        RE{"Riyunioni"}
        RO{"Romania"}
        RS{"Serbia"}
        RU{"Urusi"}
        RW{"Rwanda"}
        SA{"Saudi"}
        SB{"Visiwa vya Solomon"}
        SC{"Shelisheli"}
        SD{"Sudani"}
        SE{"Uswidi"}
        SG{"Singapoo"}
        SH{"Santahelena"}
        SI{"Slovenia"}
        SJ{"Svalbard na Jan Mayen"}
        SK{"Slovakia"}
        SL{"Siera Leoni"}
        SM{"Samarino"}
        SN{"Senegali"}
        SO{"Somalia"}
        SR{"Surinamu"}
        SS{"Sudani Kusini"}
        ST{"São Tomé na Príncipe"}
        SV{"Elsavado"}
        SX{"Santamatini"}
        SY{"Siria"}
        SZ{"Uswazi"}
        TA{"Tristan da Cunha"}
        TC{"Visiwa vya Turki na Kaiko"}
        TD{"Chadi"}
        TF{"Maeneo ya Kusini ya Ufaransa"}
        TG{"Togo"}
        TH{"Tailandi"}
        TJ{"Tajikistani"}
        TK{"Tokelau"}
        TL{"Timor ya Mashariki"}
        TM{"Turukimenistani"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Uturuki"}
        TT{"Trinidad na Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwani"}
        TZ{"Tanzania"}
        UA{"Ukraini"}
        UG{"Uganda"}
        UM{"Visiwa Vidogo vya Nje vya Marekani"}
        US{"Marekani"}
        UY{"Urugwai"}
        UZ{"Uzibekistani"}
        VA{"Vatikani"}
        VC{"Santavisenti na Grenadini"}
        VE{"Venezuela"}
        VG{"Visiwa vya Virgin vya Uingereza"}
        VI{"Visiwa vya Virgin vya Marekani"}
        VN{"Vietinamu"}
        VU{"Vanuatu"}
        WF{"Walis na Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Yemeni"}
        YT{"Mayotte"}
        ZA{"Afrika Kusini"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Eneo lisilojulikana"}
    }
    Version{"2.0.92.87"}
}
