<?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">"Texten har kopierats"</string>
    <string name="call_custom" msgid="2786306789889210756">"Ring <xliff:g id="CUSTOM">%s</xliff:g>"</string>
    <string name="call_home" msgid="1479549630992276827">"Ring hem"</string>
    <string name="call_mobile" msgid="8618334085824709009">"Ring mobilen"</string>
    <string name="call_work" msgid="8299062439076337075">"Ring arbete"</string>
    <string name="call_fax_work" msgid="3770754834467992571">"Ring upp arbetsfax"</string>
    <string name="call_fax_home" msgid="6219051113573396065">"Ring upp hemfax"</string>
    <string name="call_pager" msgid="3038080882899955112">"Ring personsökare"</string>
    <string name="call_other" msgid="4472141328347894937">"Ring"</string>
    <string name="call_callback" msgid="687494744634190411">"Ring upp återuppringningsnummer"</string>
    <string name="call_car" msgid="9078083109758282133">"Ring bilen"</string>
    <string name="call_company_main" msgid="8768047233970315359">"Ring företag"</string>
    <string name="call_isdn" msgid="3342482563847537747">"Ring upp ISDN"</string>
    <string name="call_main" msgid="4640261071249938558">"Ring upp primärt nummer"</string>
    <string name="call_other_fax" msgid="2536328553125487877">"Ring upp fax"</string>
    <string name="call_radio" msgid="9055749313292712021">"Ring radio"</string>
    <string name="call_telex" msgid="2909886619224843563">"Ring upp telex"</string>
    <string name="call_tty_tdd" msgid="6704940636171078852">"Ring upp TTY/TDD"</string>
    <string name="call_work_mobile" msgid="4408630608955148641">"Ring upp jobbmobil"</string>
    <string name="call_work_pager" msgid="3036932765279753793">"Ring upp jobbpersonsökare"</string>
    <string name="call_assistant" msgid="5188990854852312696">"Ring <xliff:g id="ASSISTANT">%s</xliff:g>"</string>
    <string name="call_mms" msgid="8998771923464696960">"Ring upp MMS"</string>
    <string name="sms_custom" msgid="4601748252470175865">"Skicka SMS till <xliff:g id="CUSTOM">%s</xliff:g>"</string>
    <string name="sms_home" msgid="7765831490534280540">"Skicka SMS till hem"</string>
    <string name="sms_mobile" msgid="8387632124165893103">"Skicka SMS till mobil"</string>
    <string name="sms_work" msgid="3910570578912367742">"Skicka SMS till arbete"</string>
    <string name="sms_fax_work" msgid="909086167151248212">"Skicka SMS till arbetsfax"</string>
    <string name="sms_fax_home" msgid="4145442497939634875">"Skicka SMS till hemfax"</string>
    <string name="sms_pager" msgid="5664381349583724906">"Skicka SMS till personsökare"</string>
    <string name="sms_other" msgid="910895193552957097">"SMS"</string>
    <string name="sms_callback" msgid="728414485478941361">"Skicka SMS till återuppringningsnummer"</string>
    <string name="sms_car" msgid="8543669230270954512">"Skicka SMS till bil"</string>
    <string name="sms_company_main" msgid="5441902128445061862">"Skicka SMS till företag"</string>
    <string name="sms_isdn" msgid="7142483128948042667">"Skicka SMS till ISDN"</string>
    <string name="sms_main" msgid="6815987840926184815">"Skicka SMS till primärt nummer"</string>
    <string name="sms_other_fax" msgid="8649822154879781466">"Skicka SMS till fax"</string>
    <string name="sms_radio" msgid="8750339218480745940">"Skicka SMS till radio"</string>
    <string name="sms_telex" msgid="5469333785775443999">"Skicka SMS till telex"</string>
    <string name="sms_tty_tdd" msgid="5057886576150816002">"Skicka SMS till TTY/TDD"</string>
    <string name="sms_work_mobile" msgid="8426872094268475047">"Skicka SMS till jobbmobil"</string>
    <string name="sms_work_pager" msgid="499303540738557836">"Skicka SMS till jobbpersonsökare"</string>
    <string name="sms_assistant" msgid="2677586547377136683">"Skicka SMS till <xliff:g id="ASSISTANT">%s</xliff:g>"</string>
    <string name="sms_mms" msgid="4887206338311086612">"Skicka SMS till MMS"</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>
