<?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="description_dialpad_back" msgid="6948371942814365471">"Navega endarrere"</string>
    <string name="description_dialpad_overflow" msgid="386545562915853251">"Més opcions"</string>
    <string name="description_delete_button" msgid="3440492396168418449">"retrocés"</string>
    <string name="description_image_button_plus" msgid="5473715983314974482">"més"</string>
    <string name="description_voicemail_button" msgid="3215317707268642855">"bústia de veu"</string>
    <string name="default_notification_description" msgid="7586091743351742205">"So predeterminat (<xliff:g id="DEFAULT_SOUND_TITLE">%1$s</xliff:g>)"</string>
    <string name="callFailed_userBusy" msgid="8760595520859373561">"Línia ocupada"</string>
    <string name="callFailed_congestion" msgid="660130739882090863">"Xarxa ocupada"</string>
    <string name="callFailed_timedOut" msgid="6780964135550644777">"No hi ha resposta. S\'ha esgotat el temps d\'espera."</string>
    <string name="callFailed_server_unreachable" msgid="7004372091099175338">"No es pot accedir al servidor."</string>
    <string name="callFailed_number_unreachable" msgid="2855741498610643943">"No es pot connectar amb aquest número."</string>
    <string name="callFailed_invalid_credentials" msgid="1915881596632385418">"Nom d\'usuari o contrasenya incorrectes"</string>
    <string name="callFailed_out_of_network" msgid="3725361800376129141">"Trucada des de fora de la xarxa"</string>
    <string name="callFailed_server_error" msgid="8449565039784274698">"S\'ha produït un error del servidor. Torna-ho a provar més tard."</string>
    <string name="callFailed_noSignal" msgid="7700332004458210245">"Sense senyal"</string>
    <string name="callFailed_limitExceeded" msgid="2877263157928717415">"Límit d\'ACM superat"</string>
    <string name="callFailed_powerOff" msgid="2212239757387143765">"Senyal mòbil desactivat"</string>
    <string name="callFailed_simError" msgid="510948380244092037">"Cap SIM o error de la SIM"</string>
    <string name="callFailed_outOfService" msgid="2917536349269880601">"La xarxa mòbil no està disponible."</string>
    <string name="callFailed_fdn_only" msgid="584249308311672690">"FDN restringeix les trucades de sortida."</string>
    <string name="callFailed_dialToUssd" msgid="6794913139176808973">"La trucada s\'ha canviat per una sol·licitud USSD"</string>
    <string name="callFailed_dialToSs" msgid="6749473185855000519">"La trucada s\'ha canviat per una sol·licitud SS"</string>
    <string name="callFailed_dialToDial" msgid="391531243214210803">"S\'ha canviat a un altre número"</string>
    <string name="callFailed_dialToDialVideo" msgid="1405537953282276350">"S\'ha canviat a una videotrucada"</string>
    <string name="callFailed_dialVideoToSs" msgid="4187072851496468440">"La videotrucada s\'ha canviat per una sol·licitud SS"</string>
    <string name="callFailed_dialVideoToUssd" msgid="4479951468674677111">"La videotrucada s\'ha canviat per una sol·licitud USSD"</string>
    <string name="callFailed_dialVideoToDial" msgid="160029277192677751">"S\'ha canviat a una trucada estàndard"</string>
    <string name="callFailed_dialVideoToDialVideo" msgid="3976695729414283836">"S\'ha canviat a un altre número"</string>
    <string name="callFailed_cb_enabled" msgid="3555984829657638323">"No es poden realitzar trucades sortints amb la restricció de trucada activada."</string>
    <string name="callFailed_dsac_restricted" msgid="4073547013432506074">"El control d\'accés restringeix les trucades."</string>
    <string name="callFailed_dsac_restricted_emergency" msgid="3271861683273124458">"El control d\'accés restringeix les trucades d\'emergència."</string>
    <string name="callFailed_dsac_restricted_normal" msgid="2812267231481193715">"El control d\'accés restringeix les trucades estàndard."</string>
    <string name="callFailed_unobtainable_number" msgid="2048455732432022283">"Número no vàlid"</string>
    <string name="incall_error_missing_voicemail_number" msgid="4519524908114719666">"El número de la bústia de veu és desconegut."</string>
    <string name="callFailed_video_call_tty_enabled" msgid="5419496275850000361">"No es poden fer videotrucades quan el dispositiu TTY està activat."</string>
    <string name="callEnded_pulled" msgid="4824518546417807865">"La trucada s\'ha transferit a un altre dispositiu."</string>
    <string name="ringtone_silent" msgid="1173111569760233645">"Cap"</string>
    <string name="ringtone_unknown" msgid="3036191370493284036">"So de trucada desconegut"</string>
    <string name="callFailed_maximum_reached" msgid="6704266142192963900">"Totes les línies disponibles estan en ús. Per fer una trucada, desconnecta una de les trucades en aquest dispositiu o en un altre dels teus dispositius."</string>
    <string name="callFailed_data_disabled" msgid="8592999219489448277">"La trucada ha finalitzat perquè les dades mòbils s\'han desactivat."</string>
    <string name="callFailed_data_limit_reached_description" msgid="3739097798746751739">"La trucada s\'ha penjat perquè s\'ha arribat al límit de dades mòbils."</string>
    <string name="callFailed_data_limit_reached" msgid="3018609096563149722">"S\'ha arribat al límit de dades. S\'ha penjat la trucada."</string>
</resources>
