﻿// ***************************************************************************
// *
// * Copyright (C) 2014 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{
    Keys{
        calendar{"Kalenda"}
        colAlternate{"Puuza Upangaji Alama"}
        colBackwards{"Upangaji Uliogeuzwa wa Kiinitoni"}
        colCaseFirst{"Upangaji wa Herufi kubwa/Herufi ndogo"}
        colCaseLevel{"Upangaji Unaoathiriwa na Herufi"}
        colHiraganaQuaternary{"Upangaji wa Kana"}
        colNormalization{"Upangaji wa Kawaida"}
        colNumeric{"Upangaji wa Namba"}
        colStrength{"Nguvu ya Upangaji"}
        collation{"Utaratibu wa Kupanga"}
        currency{"Sarafu"}
        numbers{"Nambari"}
        timezone{"Ukanda Saa"}
        va{"Tofauti ya Mandhari"}
        variableTop{"Panga Kama Alama"}
        x{"Matumizi ya Kibinafsi"}
    }
    Languages{
        ab{"Kiabkhazi"}
        ach{"Kiakoli"}
        af{"Kiafrikana"}
        agq{"Kiaghem"}
        ak{"Kiakani"}
        am{"Kiamhari"}
        ar{"Kiarabu"}
        ar_001{"Kiarabu Sanifu cha Kisasa"}
        arn{"Kimapuche"}
        arq{"Kiarabu cha Kialjeria"}
        arz{"Kiarabu cha Misri"}
        as{"Kiassam"}
        asa{"Kiasu"}
        ay{"Kiaimara"}
        az{"Kiazabajani"}
        ba{"Kibashkir"}
        be{"Kibelarusi"}
        bem{"Kibemba"}
        bez{"Kibena"}
        bg{"Kibulgaria"}
        bm{"Kibambara"}
        bn{"Kibengali"}
        bo{"Kitibeti"}
        br{"Kibretoni"}
        brx{"brx"}
        bs{"Kibosnia"}
        ca{"Kikatalani"}
        cgg{"Kichiga"}
        chr{"Kicherokee"}
        ckb{"Kikurdi cha Sorani"}
        co{"Kikosikani"}
        cs{"Kicheki"}
        cy{"Kiwelisi"}
        da{"Kidenmaki"}
        dav{"Kitaita"}
        de{"Kijerumani"}
        dje{"Kizarma"}
        dsb{"Kidolnoserbski"}
        dua{"Kiduala"}
        dv{"Kidivehi"}
        dyo{"Kijola-Fonyi"}
        dz{"Kizongkha"}
        ebu{"Kiembu"}
        ee{"Kiewe"}
        efi{"Kiefiki"}
        el{"Kigiriki"}
        en{"Kiingereza"}
        eo{"Kiesperanto"}
        es{"Kihispania"}
        es_ES{"Kihispania cha Ulaya"}
        et{"Kiestonia"}
        eu{"Kibasque"}
        fa{"Kiajemi"}
        fi{"Kifinlandi"}
        fil{"Kifilipino"}
        fj{"Kifiji"}
        fo{"Kifaroe"}
        fr{"Kifaransa"}
        fy{"Kifrisia cha Magharibi"}
        ga{"Kiayalandi"}
        gaa{"Kiga"}
        gag{"Kigagauzi"}
        gd{"Kigaeli cha Uskoti"}
        gl{"Kigalisi"}
        gn{"Kiguarani"}
        grc{"Kiyunani"}
        gsw{"Kijerumani cha Uswisi"}
        gu{"Kigujarati"}
        guz{"Kikisii"}
        gv{"Kimanx"}
        ha{"Kihausa"}
        haw{"Kihawai"}
        he{"Kiebrania"}
        hi{"Kihindi"}
        hit{"Kihiti"}
        hr{"Kroeshia"}
        hsb{"hsb"}
        ht{"Kihaiti"}
        hu{"Kihungari"}
        hy{"Kiarmenia"}
        ia{"Kiintalingua"}
        id{"Kiindonesia"}
        ig{"Kiigbo"}
        ii{"Sichuan Yi"}
        is{"Kiaisilandi"}
        it{"Kiitaliano"}
        iu{"iu"}
        ja{"Kijapani"}
        jgo{"Kingomba"}
        jmc{"Kimachame"}
        jv{"Kijava"}
        ka{"Kijojia"}
        kab{"Kikabylia"}
        kam{"Kikamba"}
        kde{"Kimakonde"}
        kea{"Kikabuverdianu"}
        kfo{"Kikoro"}
        kg{"Kikongo"}
        khq{"Kikoyra Chiini"}
        ki{"Kikikuyu"}
        kk{"Kikazaki"}
        kl{"Kikalaallisut"}
        kln{"Kikalenjin"}
        km{"Kikambodia"}
        kn{"Kikannada"}
        ko{"Kikorea"}
        koi{"Kikomipermyak"}
        kok{"kok"}
        ks{"Kikashmiri"}
        ksb{"Kisambaa"}
        ksf{"Kibafia"}
        ku{"Kikurdi"}
        kv{"Kikomi"}
        kw{"Kikorni"}
        ky{"Kikirigizi"}
        la{"Kilatini"}
        lag{"Kirangi"}
        lam{"Chilamba"}
        lb{"Kilasembagi"}
        lg{"Kiganda"}
        lkt{"Kilakota"}
        ln{"Kilingala"}
        lo{"Kilaosi"}
        loz{"Kilozi"}
        lt{"Kilithuania"}
        lu{"Kiluba-Katanga"}
        lua{"Kiluba-Lulua"}
        luo{"Kijaluo"}
        luy{"Kiluhya"}
        lv{"Kilatvia"}
        mag{"Kimagahi"}
        mas{"Kimaasai"}
        mer{"Kimeru"}
        mfe{"Kimoriseni"}
        mg{"Malagasi"}
        mgh{"Kimakhuwa-Meetto"}
        mgo{"Kimeta"}
        mi{"Kimaori"}
        mk{"Kimasedonia"}
        ml{"Kimalayalam"}
        mn{"Kimongolia"}
        moh{"Kimohoki"}
        mr{"Kimarathi"}
        ms{"Kimalesia"}
        mt{"Kimalta"}
        mua{"Kimundang"}
        my{"Kiburma"}
        naq{"Kinama"}
        nb{"Kibokmal cha Norwe"}
        nd{"Kindebele cha Kaskazini"}
        ne{"Kinepali"}
        new{"Kinewari"}
        nl{"Kiholanzi"}
        nmg{"Kikwasio"}
        nn{"Kinorwe Kipya"}
        nqo{"N’Ko"}
        nso{"Kisotho cha Kaskazini"}
        nus{"Kinuer"}
        nwc{"Kinewari cha kale"}
        ny{"Kinyanja"}
        nyn{"Kinyankole"}
        oc{"Kiokitani"}
        om{"Kioromo"}
        or{"Kioriya"}
        os{"Kiosetia"}
        pa{"Kipunjabi"}
        pl{"Kipolandi"}
        ps{"Kipashto"}
        pt{"Kireno"}
        qu{"Kiquechua"}
        quc{"Kʼicheʼ"}
        rm{"Kiromanshi"}
        rn{"Kirundi"}
        ro{"Kiromania"}
        rof{"Kirombo"}
        ru{"Kirusi"}
        rw{"Kinyarwanda"}
        rwk{"Kirwo"}
        sa{"Kisanskriti"}
        saq{"Kisamburu"}
        sbp{"Kisangu"}
        sd{"Kisindhi"}
        se{"Kisami cha Kaskazini"}
        seh{"Kisena"}
        ses{"Koyraboro Senni"}
        sg{"Kisango"}
        shi{"Tachelhit"}
        si{"Kisinhala"}
        sk{"Kislovakia"}
        sl{"Kislovenia"}
        sm{"Kisamoa"}
        sma{"Kisami cha Kusini"}
        smj{"Kisami cha Lule"}
        smn{"Kisami cha Inari"}
        sms{"Kisami cha Skolt"}
        sn{"Kishona"}
        so{"Kisomali"}
        sq{"Kialbania"}
        sr{"Kiserbia"}
        ss{"Kiswati"}
        st{"Kisotho cha Kusini"}
        su{"Kisunda"}
        suk{"Kisukuma"}
        sv{"Kiswidi"}
        sw{"Kiswahili"}
        swc{"Kingwana"}
        ta{"Kitamil"}
        te{"Kitelugu"}
        teo{"Kiteso"}
        tet{"Kitetum"}
        tg{"Kitajiki"}
        th{"Kitailandi"}
        ti{"Kitigrinya"}
        tk{"Kiturukimeni"}
        tlh{"Kiklingoni"}
        tn{"Kitswana"}
        to{"Kitonga"}
        tpi{"Kitokpisin"}
        tr{"Kituruki"}
        ts{"Kitsonga"}
        tt{"Kitatari"}
        tum{"Kitumbuka"}
        twq{"Kitasawaq"}
        ty{"Kitahiti"}
        tzm{"Central Atlas Tamazight"}
        ug{"Kiuiguri"}
        uk{"Kiukrania"}
        und{"Lugha Isiyojulikana"}
        ur{"Kiurdu"}
        uz{"Kiuzbeki"}
        vai{"Kivai"}
        ve{"Kivenda"}
        vi{"Kivietinamu"}
        vun{"Kivunjo"}
        wo{"Kiwolofu"}
        xh{"Kixhosa"}
        xog{"Kisoga"}
        yao{"Kiyao"}
        yi{"Kiyidi"}
        yo{"Kiyoruba"}
        zgh{"Tamaziti Msingi ya Kimoroko"}
        zh{"Kichina"}
        zh_Hant{"Kichina cha Jadi"}
        zu{"Kizulu"}
        zxx{"Hakuna maudhui ya lugha"}
    }
    Languages%variant{
        ps{"Kipushto"}
    }
    LanguagesShort{
        az{"Kiazeri"}
    }
    Scripts{
        Arab{"Kiarabu"}
        Armn{"Kiarmenia"}
        Beng{"Kibengali"}
        Bopo{"Kibopomofo"}
        Brai{"Braille"}
        Cyrl{"Kisiriliki"}
        Deva{"Kidevanagari"}
        Ethi{"Kiethiopia"}
        Geor{"Kijojia"}
        Grek{"Kigiriki"}
        Gujr{"Kigujarati"}
        Guru{"Kigurmukhi"}
        Hang{"Kihangul"}
        Hani{"Kihan"}
        Hans{"Rahisi"}
        Hant{"Kihan cha Jadi"}
        Hebr{"Kiebrania"}
        Hira{"Kihiragana"}
        Jpan{"Kijapani"}
        Kana{"Kikatakana"}
        Khmr{"Kikambodia"}
        Knda{"Kikannada"}
        Kore{"Kikorea"}
        Laoo{"Kilaosi"}
        Latn{"Kilatini"}
        Mlym{"Kimalayalam"}
        Mong{"Mongolia"}
        Mymr{"Myama"}
        Orya{"Kioriya"}
        Sinh{"Kisinhala"}
        Taml{"Kitamil"}
        Telu{"Kitelugu"}
        Thaa{"Kithaana"}
        Thai{"Kitai"}
        Tibt{"Kitibeti"}
        Zsym{"Alama"}
        Zxxx{"Haijaandikwa"}
        Zyyy{"Kawaida"}
        Zzzz{"Hati isiyojulikana"}
    }
    Scripts%stand-alone{
        Hans{"Kihan Rahisi"}
        Hant{"Kihan cha Jadi"}
    }
    Scripts%variant{
        Arab{"Kiajemi/Kiarabu"}
    }
    Types{
        calendar{
            buddhist{"Kalenda ya Kibuddha"}
            chinese{"Kalenda ya Kichina"}
            coptic{"Kalenda ya Koptiki"}
            dangi{"Kalenda ya Dangi"}
            ethiopic{"Kalenda ya Kiethiopia"}
            ethiopic-amete-alem{"Kalenda ya Kiethiopia ya Amete Alem"}
            gregorian{"Kalenda ya Kigregori"}
            hebrew{"Kalenda ya Kihebrania"}
            indian{"Kalenda ya Taifa ya India"}
            islamic{"Kalenda ya Kiislamu"}
            islamic-civil{"Kalenda ya Kiislamu/Rasmi"}
            iso8601{"Kalenda ya ISO-8601"}
            japanese{"Kalenda ya Kijapani"}
            persian{"Kalenda ya Kiajemi"}
            roc{"Kalenda ya Minguo"}
        }
        colAlternate{
            non-ignorable{"Panga Alama"}
            shifted{"Panga Alama za Kupuuza"}
        }
        colBackwards{
            no{"Panga Viinitoni kwa Kawaida"}
            yes{"Panga Viinitoni Kumegeuzwa"}
        }
        colCaseFirst{
            lower{"Panga Herufi ndogo Kwanza"}
            no{"Panga Utaratibu wa Herufi ya Kawaida"}
            upper{"Panga Herufi kubwa Kwanza"}
        }
        colCaseLevel{
            no{"Panga Isiyoathiriwa na Herufi"}
            yes{"Panga kwa Inayoathiriwa na Herufi"}
        }
        colHiraganaQuaternary{
            no{"Panga Kana Kando"}
            yes{"Panga Kana Kitofauti"}
        }
        colNormalization{
            no{"Panga Bila Ukawaida"}
            yes{"Upangaji Msimbosare Umekawaidishwa"}
        }
        colNumeric{
            no{"Panga Tarakimu Kivyake"}
            yes{"Panga Dijiti kwa Namba"}
        }
        colStrength{
            identical{"Panga Zote"}
            primary{"Panga Herufi Msingi Tu"}
            quaternary{"Panga Viinitoni/Herufi/Upana/Kana"}
            secondary{"Panga Viinitoni"}
            tertiary{"Panga Viinitoni/Herufi/Upana"}
        }
        collation{
            big5han{"Mpangilio wa Kichina cha Jadi - Big5"}
            dictionary{"Mpangilio wa Kamusi"}
            ducet{"Mpangilio wa Chaguo-Msingi wa Unicode"}
            gb2312han{"Mpangilio wa Kichina Rahisi - GB2312"}
            phonebook{"Mpangilio wa Orodha za Nambari za Simu"}
            phonetic{"Utaratibu wa Kupanga Fonetiki"}
            pinyin{"Mpangilio wa Kipinyin"}
            reformed{"Mpangilio Uliorekebishwa"}
            search{"Utafutaji wa Kijumla"}
            searchjl{"Tafuta kwa Konsonanti Halisi ya Hangul"}
            standard{"standard"}
            stroke{"Mpangilio wa Mikwaju"}
            traditional{"Mpangilio wa Kawaida"}
            unihan{"Mpangilio wa Mikwaju ya Shina"}
        }
        numbers{
            arab{"Nambari za Kiarabu/Kihindi"}
            arabext{"Nambari za Kiarabu/Kihindi Zilizopanuliwa"}
            armn{"Nambari za Kiarmenia"}
            armnlow{"Nambari Ndogo za Kiamenia"}
            beng{"Nambari za Kibengali"}
            deva{"Nambari za Kidevanagari"}
            ethi{"Nambari za Kiethiopia"}
            finance{"Tarakimu za Kifedha"}
            fullwide{"Nambari za Upana Kamili"}
            geor{"Nambari za Georgia"}
            grek{"Nambari za Kigiriki"}
            greklow{"Nambari Ndogo za Kigiriki"}
            gujr{"Nambari za Kigujarati"}
            guru{"Nambari za Kigurumukhi"}
            hanidec{"Nambari za Desimali za Kichina"}
            hans{"Nambari za Kichina Rahisi"}
            hansfin{"Nambari za Kifedha za Kichina Rahisi"}
            hant{"Nambari za Kichina cha Jadi"}
            hantfin{"Nambari za Kichina za Fedha"}
            hebr{"Nambari za Kihebrania"}
            jpan{"Nambari za Kijapani"}
            jpanfin{"Nambari za Kifedha za Kijapani"}
            khmr{"Nambari za Kikhmeri"}
            knda{"Nambari za Kikannada"}
            laoo{"Nambari za Kilao"}
            latn{"Nambari za Magharibi"}
            mlym{"Nambari za Kimalayamu"}
            mong{"Nambari za Kimongolia"}
            mymr{"Nambari za Myama"}
            native{"Digiti Asili"}
            orya{"Nambari za Kioriya"}
            roman{"Nambari za Kirumi"}
            romanlow{"Nambari Ndogo za Kirumi"}
            taml{"Nambari za Kitamili"}
            tamldec{"Nambari za Kitamili"}
            telu{"Nambari za Kitelugu"}
            thai{"Nambari za Kitai"}
            tibt{"Nambari za Kitibeti"}
            traditional{"Tarakimu za Jadi"}
            vaii{"Dijiti za Vai"}
        }
    }
    Version{"2.1.8.9"}
    codePatterns{
        language{"{0}"}
        script{"{0}"}
        territory{"{0}"}
    }
    localeDisplayPattern{
        keyTypePattern{"{0}: {1}"}
        pattern{"{0} ({1})"}
        separator{"{0}, {1}"}
    }
}
