<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2007 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="5955735546071433666">"Диктофон"</string>
    <string name="record_your_message" msgid="1583671906691662148">"Запишите сообщение"</string>
    <string name="message_recorded" msgid="381539460921872233">"Сообщение записано"</string>
    <string name="review_message" msgid="201616012287839474">"Просмотреть сообщение"</string>
    <string name="recording" msgid="4426791467211376099">"Запись"</string>
    <string name="recording_stopped" msgid="1580278719585249612">"Запись остановлена"</string>
    <string name="storage_is_full" msgid="416039755956726221">"Память заполнена"</string>
    <string name="max_length_reached" msgid="6398215743584093353">"Достигнута максимальная длина"</string>
    <string name="insert_sd_card" product="nosdcard" msgid="8212754638456591792">"Подключите USB-накопитель"</string>
    <string name="insert_sd_card" product="default" msgid="2251831579676114197">"Вставьте SD-карту"</string>
    <string name="min_available" msgid="5493947690062988925">"Осталось <xliff:g id="MINUTES">%d</xliff:g> мин."</string>
    <string name="sec_available" msgid="2297020788861694399">"Осталось <xliff:g id="SECONDS">%d</xliff:g> сек."</string>
    <!-- outdated translation 7770652589312551402 -->     <string name="accept" msgid="1888285552128743656">"Использовать эту запись"</string>
    <string name="discard" msgid="761613433029406319">"Отменить"</string>
    <string name="button_ok" msgid="3004911343723076226">"ОК"</string>
    <!-- no translation found for audio_db_title_format (7912182366970749312) -->
    <skip />
    <string name="audio_db_artist_name" msgid="961640229118120080">"Ваши записи"</string>
    <string name="audio_db_album_name" msgid="9072588113803264440">"Аудиозаписи"</string>
    <string name="audio_db_playlist_name" msgid="5592939050047058162">"Мои записи"</string>
    <string name="error_sdcard_access" product="nosdcard" msgid="7292601458300337571">"Нет доступа к USB-накопителю"</string>
    <string name="error_sdcard_access" product="default" msgid="8005660724361043509">"Не удалось получить доступ к SD-карте"</string>
    <string name="error_app_internal" msgid="2365923237657572011">"Внутренняя ошибка приложения"</string>
    <string name="error_mediadb_new_record" msgid="2225774949947938064">"Не удалось сохранить аудиозапись"</string>
</resources>
