<?xml version="1.0" encoding="UTF-8"?>
<!-- 
  ~ Copyright (C) 2012 The Android Open Source Project
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~      http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License
   -->

<resources xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="toast_text_copied" msgid="8327159932780920627">"Maandishi yamenakiliwa"</string>
    <string name="call_custom" msgid="2786306789889210756">"Pia simu <xliff:g id="CUSTOM">%s</xliff:g>"</string>
    <string name="call_home" msgid="1479549630992276827">"Piga simu nyumbani"</string>
    <string name="call_mobile" msgid="8618334085824709009">"Piga simu ya mkononi"</string>
    <string name="call_work" msgid="8299062439076337075">"Piga simu kazini"</string>
    <string name="call_fax_work" msgid="3770754834467992571">"Piga simu kwa pepesi ya kazini"</string>
    <string name="call_fax_home" msgid="6219051113573396065">"Piga simu kwa pepesi ya nyumbani"</string>
    <string name="call_pager" msgid="3038080882899955112">"Piga simu kwa peja"</string>
    <string name="call_other" msgid="4472141328347894937">"Piga simu"</string>
    <string name="call_callback" msgid="687494744634190411">"Pigia simu aliyepiga tena"</string>
    <string name="call_car" msgid="9078083109758282133">"Piga simu garini"</string>
    <string name="call_company_main" msgid="8768047233970315359">"Pigia simu kuu ya kampuni"</string>
    <string name="call_isdn" msgid="3342482563847537747">"Piga simu kwa ISDN"</string>
    <string name="call_main" msgid="4640261071249938558">"Piga simu kuu"</string>
    <string name="call_other_fax" msgid="2536328553125487877">"Piga simu ya pepesi"</string>
    <string name="call_radio" msgid="9055749313292712021">"Piga simu redioni"</string>
    <string name="call_telex" msgid="2909886619224843563">"Piga simu ya teleksi"</string>
    <string name="call_tty_tdd" msgid="6704940636171078852">"Piga simu TTY/TDD"</string>
    <string name="call_work_mobile" msgid="4408630608955148641">"Piga simu kwa simu ya mkononi ya kazini"</string>
    <string name="call_work_pager" msgid="3036932765279753793">"Piga simu kwa peja"</string>
    <string name="call_assistant" msgid="5188990854852312696">"Piga simu <xliff:g id="ASSISTANT">%s</xliff:g>"</string>
    <string name="call_mms" msgid="8998771923464696960">"Piga simu kwa MMS"</string>
    <string name="sms_custom" msgid="4601748252470175865">"Tumia <xliff:g id="CUSTOM">%s</xliff:g> ujumbe wa maandishi"</string>
    <string name="sms_home" msgid="7765831490534280540">"Tuma ujumbe wa maandishi nyumbani"</string>
    <string name="sms_mobile" msgid="8387632124165893103">"Tumia simu ya mkononi ujumbe wa maandishi"</string>
    <string name="sms_work" msgid="3910570578912367742">"Tuma ujumbe wa maandishi kazini"</string>
    <string name="sms_fax_work" msgid="909086167151248212">"Tumia pepesi ya kazini ujumbe wa maandishi"</string>
    <string name="sms_fax_home" msgid="4145442497939634875">"Tumia pepesi ya nyumbani ujumbe wa maandishi"</string>
    <string name="sms_pager" msgid="5664381349583724906">"Tumia peja ujumbe wa maandishi"</string>
    <string name="sms_other" msgid="910895193552957097">"Tuma ujumbe wa maandishi"</string>
    <string name="sms_callback" msgid="728414485478941361">"Tuma ujumbe wa maandishi kwa aliyepiga tena"</string>
    <string name="sms_car" msgid="8543669230270954512">"Tuma garini ujumbe wa maandishi"</string>
    <string name="sms_company_main" msgid="5441902128445061862">"Tuma ujumbe wa maandishi kwenye simu kuu ya kampuni"</string>
    <string name="sms_isdn" msgid="7142483128948042667">"Tumia ISDN ujumbe wa maandishi"</string>
    <string name="sms_main" msgid="6815987840926184815">"Tumia simu kuu ujumbe wa maandishi"</string>
    <string name="sms_other_fax" msgid="8649822154879781466">"Tumia pepesi ujumbe wa maandishi"</string>
    <string name="sms_radio" msgid="8750339218480745940">"Tuma redioni ujumbe wa maandishi"</string>
    <string name="sms_telex" msgid="5469333785775443999">"Tumia teleksi ujumbe wa maandishi"</string>
    <string name="sms_tty_tdd" msgid="5057886576150816002">"Tumia TTY/TDD ujumbe wa maandishi"</string>
    <string name="sms_work_mobile" msgid="8426872094268475047">"Tuma ujumbe wa maandishi kwenye simu ya mkononi ya kazini"</string>
    <string name="sms_work_pager" msgid="499303540738557836">"Tuma ujumbe wa maandishi kwenye peja ya kazini"</string>
    <string name="sms_assistant" msgid="2677586547377136683">"Tumia <xliff:g id="ASSISTANT">%s</xliff:g> ujumbe wa maandishi"</string>
    <string name="sms_mms" msgid="4887206338311086612">"Tumia MMS ujmbe wa maandishi"</string>
    <!-- no translation found for clearFrequentsConfirmation_title (1482750234535491083) -->
    <skip />
    <!-- no translation found for clearFrequentsConfirmation (2101370440975269958) -->
    <skip />
    <!-- no translation found for clearFrequentsProgress_title (3738406170865048982) -->
    <skip />
    <!-- no translation found for status_available (4832569677396634846) -->
    <skip />
    <!-- no translation found for status_away (6267905184545881094) -->
    <skip />
    <!-- no translation found for status_busy (7111912905211403545) -->
    <skip />
</resources>
