<?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="applicationLabel" msgid="8490255569343340580">"Telèfon"</string>
    <string name="launcherDialer" msgid="8636288196618486553">"Telèfon"</string>
    <string name="dialerIconLabel" msgid="6500826552823403796">"Telèfon"</string>
    <string name="recentCallsIconLabel" msgid="1419116422359067949">"Registre de trucades"</string>
    <string name="menu_sendTextMessage" msgid="6937343460284499306">"Envia un missatge de text"</string>
    <string name="recentCalls_callNumber" msgid="1756372533999226126">"Truca a <xliff:g id="NAME">%s</xliff:g>"</string>
    <string name="recentCalls_editNumberBeforeCall" msgid="7756171675833267857">"Edita el número abans de trucar"</string>
    <string name="recentCalls_addToContact" msgid="1429899535546487008">"Afegeix als contactes"</string>
    <string name="recentCalls_removeFromRecentList" msgid="401662244636511330">"Elimina del registre de trucades"</string>
    <string name="recentCalls_deleteAll" msgid="6352364392762163704">"Esborra el registre de trucades"</string>
    <string name="recentCalls_trashVoicemail" msgid="7604696960787435655">"Suprimeix missatge de veu"</string>
    <string name="recentCalls_shareVoicemail" msgid="1416112847592942840">"Comparteix la bústia de veu"</string>
    <string name="recentCalls_empty" msgid="247053222448663107">"El registre de trucades és buit."</string>
    <string name="clearCallLogConfirmation_title" msgid="6427524640461816332">"Esborrament registre"</string>
    <string name="clearCallLogConfirmation" msgid="5043563133171583152">"Se suprimiran tots els registres de trucades."</string>
    <string name="clearCallLogProgress_title" msgid="8365943000154295771">"Esborrant registre de trucades..."</string>
  <plurals name="notification_voicemail_title">
    <item quantity="one" msgid="1746619685488504230">"Missatge de veu"</item>
    <item quantity="other" msgid="5513481419205061254">"<xliff:g id="COUNT">%1$d</xliff:g> missatges de veu"</item>
  </plurals>
    <string name="notification_action_voicemail_play" msgid="6113133136977996863">"Reprodueix"</string>
    <string name="notification_voicemail_callers_list" msgid="1153954809339404149">"<xliff:g id="NEWER_CALLERS">%1$s</xliff:g>, <xliff:g id="OLDER_CALLER">%2$s</xliff:g>"</string>
    <string name="notification_new_voicemail_ticker" msgid="895342132049452081">"Nou missatge de veu de <xliff:g id="CALLER">%1$s</xliff:g>"</string>
    <string name="voicemail_playback_error" msgid="1811242131549854624">"No s\'ha pogut reproduir correu de veu."</string>
    <string name="voicemail_buffering" msgid="738287747618697097">"S\'està emmagatzemant a mem. intermèd.…"</string>
    <string name="voicemail_fetching_content" msgid="877911315738258780">"S\'està obtenint el correu de veu…"</string>
    <string name="voicemail_fetching_timout" msgid="6691792377574905201">"No s\'ha pogut obtenir el correu de veu."</string>
    <string name="call_log_new_header" msgid="846546437517724715">"Nous"</string>
    <string name="call_log_old_header" msgid="6262205894314263629">"Anteriors"</string>
    <string name="call_log_voicemail_header" msgid="3945407886667089173">"Només trucades amb bústia de veu"</string>
    <string name="call_log_incoming_header" msgid="2787722299753674684">"Només trucades entrants"</string>
    <string name="call_log_outgoing_header" msgid="761009180766735769">"Només trucades sortints"</string>
    <string name="call_log_missed_header" msgid="8017148056610855956">"Només trucades perdudes"</string>
    <string name="voicemail_status_voicemail_not_available" msgid="3021980206152528883">"No es pot connectar amb el servidor de la bústia de veu."</string>
    <string name="voicemail_status_messages_waiting" msgid="7113421459602803605">"No es pot connectar a servidor bústia de veu. Hi ha miss. nous."</string>
    <string name="voicemail_status_configure_voicemail" msgid="3738537770636895689">"Configura la bústia de veu."</string>
    <string name="voicemail_status_audio_not_available" msgid="3369618334553341626">"Àudio no disponible."</string>
    <string name="voicemail_status_action_configure" msgid="8671796489912239589">"Configura"</string>
    <string name="voicemail_status_action_call_server" msgid="1824816252288551794">"Truca a bústia veu"</string>
    <string name="voicemail_speed_slowest" msgid="1733460666177707312">"Velocitat mínima"</string>
    <string name="voicemail_speed_slower" msgid="1508601287347216244">"Velocitat baixa"</string>
    <string name="voicemail_speed_normal" msgid="9033988544627228892">"Velocitat normal"</string>
    <string name="voicemail_speed_faster" msgid="2019965121475935488">"Velocitat alta"</string>
    <string name="voicemail_speed_fastest" msgid="5758712343491183292">"Velocitat màxima"</string>
    <string name="call_log_item_count_and_date" msgid="7641933305703520787">"(<xliff:g id="COUNT">%1$d</xliff:g>) <xliff:g id="DATE">%2$s</xliff:g>"</string>
    <string name="sms_disambig_title" msgid="5846266399240630846">"Tria d\'un número"</string>
    <string name="call_disambig_title" msgid="4392886850104795739">"Tria d\'un número"</string>
    <string name="make_primary" msgid="5829291915305113983">"Recorda aquesta selecció"</string>
</resources>
