<?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">"Torna indietro"</string>
    <string name="description_dialpad_overflow" msgid="386545562915853251">"Altre opzioni"</string>
    <string name="description_delete_button" msgid="3440492396168418449">"backspace"</string>
    <string name="description_image_button_plus" msgid="5473715983314974482">"più"</string>
    <string name="description_voicemail_button" msgid="3215317707268642855">"messaggio vocale"</string>
    <string name="default_notification_description" msgid="7586091743351742205">"Suono predefinito (<xliff:g id="DEFAULT_SOUND_TITLE">%1$s</xliff:g>)"</string>
    <string name="callFailed_userBusy" msgid="8760595520859373561">"Linea occupata"</string>
    <string name="callFailed_congestion" msgid="660130739882090863">"Rete occupata"</string>
    <string name="callFailed_timedOut" msgid="6780964135550644777">"Nessuna risposta, timeout"</string>
    <string name="callFailed_server_unreachable" msgid="7004372091099175338">"Server non raggiungibile"</string>
    <string name="callFailed_number_unreachable" msgid="2855741498610643943">"Numero non raggiungibile"</string>
    <string name="callFailed_invalid_credentials" msgid="1915881596632385418">"Password o nome utente errato"</string>
    <string name="callFailed_out_of_network" msgid="3725361800376129141">"Chiamata fuori rete"</string>
    <string name="callFailed_server_error" msgid="8449565039784274698">"Errore del server. Riprova più tardi."</string>
    <string name="callFailed_noSignal" msgid="7700332004458210245">"Nessun segnale"</string>
    <string name="callFailed_limitExceeded" msgid="2877263157928717415">"Limite ACM superato"</string>
    <string name="callFailed_powerOff" msgid="2212239757387143765">"Segnale cellulare disattivato"</string>
    <string name="callFailed_simError" msgid="510948380244092037">"Nessuna SIM o errore della SIM"</string>
    <string name="callFailed_outOfService" msgid="2917536349269880601">"Rete cellulare non disponibile"</string>
    <string name="callFailed_fdn_only" msgid="584249308311672690">"Chiamate in uscita limitate dai numeri consentiti."</string>
    <string name="callFailed_dialToUssd" msgid="6794913139176808973">"Chiamata modificata in richiesta USSD"</string>
    <string name="callFailed_dialToSs" msgid="6749473185855000519">"Chiamata modificata in richiesta SS"</string>
    <string name="callFailed_dialToDial" msgid="391531243214210803">"Modificata cambiando il numero"</string>
    <string name="callFailed_dialToDialVideo" msgid="1405537953282276350">"Modificata in una videochiamata"</string>
    <string name="callFailed_dialVideoToSs" msgid="4187072851496468440">"Videochiamata modificata in richiesta SS"</string>
    <string name="callFailed_dialVideoToUssd" msgid="4479951468674677111">"Videochiamata modificata in richiesta USSD"</string>
    <string name="callFailed_dialVideoToDial" msgid="160029277192677751">"Modificata in chiamata normale"</string>
    <string name="callFailed_dialVideoToDialVideo" msgid="3976695729414283836">"Modificata cambiando il numero"</string>
    <string name="callFailed_cb_enabled" msgid="3555984829657638323">"Impossibile effettuare chiamate in uscita con il divieto chiamate attivo."</string>
    <string name="callFailed_dsac_restricted" msgid="4073547013432506074">"Chiamate limitate per controllo dell\'accesso."</string>
    <string name="callFailed_dsac_restricted_emergency" msgid="3271861683273124458">"Chiamate di emergenza limitate per controllo dell\'accesso."</string>
    <string name="callFailed_dsac_restricted_normal" msgid="2812267231481193715">"Chiamate normali limitate per controllo dell\'accesso."</string>
    <string name="callFailed_unobtainable_number" msgid="2048455732432022283">"Numero non valido"</string>
    <string name="incall_error_missing_voicemail_number" msgid="4519524908114719666">"Numero segreteria sconosciuto."</string>
    <string name="callFailed_video_call_tty_enabled" msgid="5419496275850000361">"Impossibile fare videochiamate con TTY attivo."</string>
    <string name="callEnded_pulled" msgid="4824518546417807865">"Chiamata trasferita a un altro dispositivo."</string>
    <string name="ringtone_silent" msgid="1173111569760233645">"Nessuno"</string>
    <string name="ringtone_unknown" msgid="3036191370493284036">"Suoneria sconosciuta"</string>
    <string name="callFailed_maximum_reached" msgid="6704266142192963900">"Tutte le linee disponibili sono in uso. Per effettuare una chiamata, scollega una delle chiamate su questo dispositivo o uno dei tuoi altri dispositivi."</string>
    <string name="callFailed_data_disabled" msgid="8592999219489448277">"La chiamata è stata terminata perché la rete dati è stata disattivata."</string>
    <string name="callFailed_data_limit_reached_description" msgid="3739097798746751739">"La chiamata è stata terminata perché è stato raggiunto il limite di dati del cellulare."</string>
    <string name="callFailed_data_limit_reached" msgid="3018609096563149722">"Limite di dati raggiunto. Chiamata terminata."</string>
</resources>
