<?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="8370856774250260053">"Volver"</string>
    <string name="description_dialpad_overflow" msgid="4853244877599437286">"Más opciones"</string>
    <string name="description_delete_button" msgid="88733669653753441">"retroceso"</string>
    <string name="description_image_button_plus" msgid="7821061347207448362">"más"</string>
    <string name="description_voicemail_button" msgid="6281470684653439120">"buzón de voz"</string>
    <string name="default_notification_description" msgid="6011631627871110785">"Sonido predeterminado (<xliff:g id="DEFAULT_SOUND_TITLE">%1$s</xliff:g>)"</string>
    <string name="callFailed_userBusy" msgid="5163219086553610486">"Línea ocupada"</string>
    <string name="callFailed_congestion" msgid="3645995103907418337">"Red ocupada"</string>
    <string name="callFailed_timedOut" msgid="7772951976278867294">"No hay respuesta; se agotó el tiempo de espera."</string>
    <string name="callFailed_server_unreachable" msgid="4766146133909799091">"Servidor inaccesible"</string>
    <string name="callFailed_number_unreachable" msgid="1243366438388873914">"No se puede establecer conexión con el número."</string>
    <string name="callFailed_invalid_credentials" msgid="6115412108261660271">"Nombre de usuario o contraseña incorrectos"</string>
    <string name="callFailed_out_of_network" msgid="6970725831030399542">"Llamada fuera de la red"</string>
    <string name="callFailed_server_error" msgid="1391421251190688379">"Se produjo un error de servidor. Vuelve a intentarlo más tarde."</string>
    <string name="callFailed_noSignal" msgid="1758972490451048086">"No hay señal."</string>
    <string name="callFailed_limitExceeded" msgid="8796663077702587664">"Se excedió el límite de ACM."</string>
    <string name="callFailed_powerOff" msgid="9179061328562234362">"Radio desactivada"</string>
    <string name="callFailed_simError" msgid="3307159523385380486">"No se encuentra la tarjeta SIM o se produjo un error relacionado con ella."</string>
    <string name="callFailed_outOfService" msgid="4535901975891969115">"Red móvil no disponible"</string>
    <string name="callFailed_fdn_only" msgid="1720606112619022283">"Las llamadas salientes están restringidas por NMF."</string>
    <string name="callFailed_dialToUssd" msgid="2093563828737170617">"La solicitud DIAL cambió por una solicitud USSD."</string>
    <string name="callFailed_dialToSs" msgid="3144952834772702469">"La solicitud DIAL cambió por una solicitud SS."</string>
    <string name="callFailed_dialToDial" msgid="1143052062100334634">"La solicitud DIAL cambió por una solicitud DIAL con un número diferente."</string>
    <string name="callFailed_cb_enabled" msgid="4745550615395092407">"No se puede realizar llamadas salientes mientras está activado el bloqueo de llamadas."</string>
    <string name="callFailed_dsac_restricted" msgid="4087941056515103695">"Llamadas restringidas por el control de acceso"</string>
    <string name="callFailed_dsac_restricted_emergency" msgid="9031535611092828510">"Llamadas de emergencia restringidas por el control de acceso"</string>
    <string name="callFailed_dsac_restricted_normal" msgid="266947632344387216">"Llamadas habituales restringidas por el control de acceso"</string>
    <string name="callFailed_unobtainable_number" msgid="124621797631734731">"El número no es válido."</string>
    <string name="incall_error_missing_voicemail_number" msgid="3651090591812220874">"Número de buzón de voz desconocido"</string>
    <string name="callFailed_video_call_tty_enabled" msgid="186585701668604271">"No es posible hacer videollamadas cuando TTY está habilitado."</string>
    <string name="callEnded_pulled" msgid="437630601519502587">"Llamada transferida a otro dispositivo."</string>
    <string name="ringtone_silent" msgid="249805466934178869">"Ninguno"</string>
    <string name="ringtone_unknown" msgid="2303463713486734520">"Tono desconocido"</string>
    <string name="callFailed_maximum_reached" msgid="4823790040422765056">"Todas las líneas disponibles están en uso. Para realizar una llamada, desconecta una de las llamadas en este dispositivo o en uno de tus otros dispositivos."</string>
    <string name="callFailed_data_disabled" msgid="3885826754435317856">"La llamada terminó porque los datos móviles se inhabilitaron."</string>
    <string name="callFailed_data_limit_reached_description" msgid="1439284832802552582">"La llamada terminó porque se alcanzó el límite de datos móviles."</string>
    <string name="callFailed_data_limit_reached" msgid="7045770594965160282">"Se alcanzó el límite de datos. La llamada terminó."</string>
</resources>
