<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2011 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="backup_confirm_title" msgid="827563724209303345">"Backup completo"</string>
    <string name="restore_confirm_title" msgid="5469365809567486602">"Ripristino totale"</string>
    <string name="backup_confirm_text" msgid="1878021282758896593">"È stato richiesto un backup completo di tutti i dati su un computer desktop connesso. Consentire l\'operazione?\n\nSe non hai richiesto il backup, non consentire all\'operazione di procedere."</string>
    <string name="allow_backup_button_label" msgid="4217228747769644068">"Effettua backup dei miei dati"</string>
    <string name="deny_backup_button_label" msgid="6009119115581097708">"Non eseguire il backup"</string>
    <string name="restore_confirm_text" msgid="7499866728030461776">"È stato richiesto un ripristino completo di tutti i dati da un computer desktop connesso. Consentire questa operazione?\n\nSe non hai richiesto il ripristino, non consentire all\'operazione di procedere. Questa operazione sostituirà tutti i dati attualmente presenti sul dispositivo."</string>
    <string name="allow_restore_button_label" msgid="3081286752277127827">"Ripristina i miei dati"</string>
    <string name="deny_restore_button_label" msgid="1724367334453104378">"Non ripristinare"</string>
    <string name="current_password_text" msgid="8268189555578298067">"Inserisci la tua password di backup corrente di seguito:"</string>
    <string name="device_encryption_restore_text" msgid="1570864916855208992">"Inserisci la tua password di crittografia dispositivo di seguito."</string>
    <string name="device_encryption_backup_text" msgid="5866590762672844664">"Inserisci la tua password di crittografia dispositivo di seguito. Verrà utilizzata anche per crittografare l\'archivio di backup."</string>
    <string name="backup_enc_password_text" msgid="4981585714795233099">"Inserisci una password da utilizzare per la crittografia dei dati di backup completi. Se non ne inserisci una, verrà utilizzata la tua password di backup corrente:"</string>
    <string name="backup_enc_password_optional" msgid="1350137345907579306">"Se desideri crittografare tutti i dati di backup, inserisci una password qui di seguito:"</string>
    <string name="backup_enc_password_required" msgid="7889652203371654149">"Il dispositivo è crittografato, pertanto devi crittografare il backup. Inserisci una password di seguito:"</string>
    <string name="restore_enc_password_text" msgid="6140898525580710823">"Se i dati di ripristino sono crittografati, inserisci la password qui di seguito:"</string>
    <string name="toast_backup_started" msgid="550354281452756121">"Avvio del backup..."</string>
    <string name="toast_backup_ended" msgid="3818080769548726424">"Backup terminato"</string>
    <string name="toast_restore_started" msgid="7881679218971277385">"Avvio del ripristino..."</string>
    <string name="toast_restore_ended" msgid="1764041639199696132">"Ripristino terminato"</string>
    <string name="toast_timeout" msgid="5276598587087626877">"Timeout dell\'operazione"</string>
</resources>
