<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2009 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="app_name" msgid="9095072584761066851">"Программа установки сертификата"</string>
    <string name="pick_file_title" msgid="4481949485108233297">"Выбор сертификата"</string>
    <string name="pkcs12_password_dialog_title" msgid="5997624645207427161">"Извлечение сертификата"</string>
    <string name="extracting_pkcs12" msgid="1881267738821799771">"Загрузка..."</string>
    <string name="pkcs12_file_password_dialog_title" msgid="8102721384767269510">"Извлечение из %s"</string>
    <string name="name_credential_dialog_title" msgid="277729846491554437">"Укажите название сертификата"</string>
    <string name="credential_name" msgid="1974979771369744378">"Название сертификата:"</string>
    <string name="credential_password" msgid="3520176519550993326">"Введите пароль для извлечения сертификатов."</string>
    <string name="credential_info" msgid="2436768402308470397">"Пакет содержит:"</string>
    <string name="p12_description" msgid="4128352087331630024">"Сертификат находится в хранилище ключей PKCS12."</string>
    <string name="one_userkey" msgid="3500697912370644881">"один ключ пользователя"</string>
    <string name="one_usercrt" msgid="7690798336332403106">"один пользовательский сертификат"</string>
    <string name="one_cacrt" msgid="2667950425420663146">"один сертификат центра сертификации"</string>
    <string name="n_cacrts" msgid="2141498640685639208">"Сертификатов центра сертификации: %d"</string>
    <string name="password_error" msgid="2042471639556516356">"Введен неверный пароль."</string>
    <string name="password_empty_error" msgid="591713406761723025">"Введите пароль."</string>
    <string name="name_empty_error" msgid="3808800768660110354">"Введите название."</string>
    <string name="name_char_error" msgid="3176618568784938968">"Можно использовать только буквы и цифры."</string>
    <string name="storage_error" msgid="8306802455802770779">"Не удалось сохранить сертификат. Чтобы повторить попытку, нажмите \"ОК\"."</string>
    <string name="unable_to_save_cert" msgid="9178604087335389686">"Не удалось сохранить сертификат, поскольку хранилище учетных данных не включено или не инициализировано."</string>
    <string name="cert_not_saved" msgid="4037698479662830270">"Сертификат не установлен."</string>
    <string name="no_cert_to_saved" msgid="5708884372817309068">"Отсутствует сертификат для установки."</string>
    <string name="invalid_cert" msgid="7704228670980743590">"Сертификат недействителен."</string>
    <string name="cert_is_added" msgid="6996557598167000500">"<xliff:g id="CREDENTIAL">%s</xliff:g> установлен."</string>
    <string name="cert_too_large_error" msgid="8715414972725646285">"Установка не выполнена, поскольку сертификат слишком большой."</string>
    <string name="cert_missing_error" msgid="7040527352278728220">"Установка не выполнена, поскольку не удалось найти файл сертификата."</string>
    <string name="cert_read_error" msgid="7353463360652419796">"Установка не выполнена, поскольку не удалось открыть файл сертификата."</string>
    <string name="no_cert_file_found" product="nosdcard" msgid="3555332946357131929">"На USB-накопителе отсутствует файл сертификата."</string>
    <string name="no_cert_file_found" product="default" msgid="1942077544887243999">"На SD-карте отсутствует файл сертификата."</string>
    <string name="sdcard_not_present" product="nosdcard" msgid="9197143240492611196">"USB-накопитель недоступен."</string>
    <string name="sdcard_not_present" product="default" msgid="3866952732541932947">"SD-карта отсутствует."</string>
    <string name="only_primary_user_allowed" msgid="4005084935023047716">"Сертификаты может устанавливать только владелец устройства."</string>
</resources>
