<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2016 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="963247385700831716">"Менеджер хранилища"</string>
    <string name="cancel" msgid="7021218262867558825">"Отмена"</string>
    <string name="storage_menu_free" msgid="1878247401436882778">"Освободить место"</string>
    <string name="deletion_helper_title" msgid="3526170325226275927">"Удалить элементы"</string>
    <string name="deletion_helper_app_summary" msgid="4904590040180275237">"<xliff:g id="DAYS">%1$d</xliff:g> дн. назад"</string>
    <!-- no translation found for deletion_helper_app_summary_item_size (3770886184921427886) -->
    <skip />
    <string name="deletion_helper_app_summary_never_used" msgid="2695210890063792461">"Не использовалось в течение года"</string>
    <string name="deletion_helper_app_summary_unknown_used" msgid="8576377054665785558">"Нет данных о последнем использовании"</string>
    <string name="deletion_helper_free_button" msgid="1760529213407548661">"Освободить <xliff:g id="FREEABLE">%1$s</xliff:g>"</string>
    <string name="deletion_helper_photos_title" msgid="2602723121486729972">"Резервные копии фото и видео"</string>
    <string name="deletion_helper_photos_age_summary" msgid="1820871709448371984">"Добавленные более 30 дней назад"</string>
    <!-- no translation found for deletion_helper_photos_summary (3194825464552700889) -->
    <skip />
    <string name="deletion_helper_downloads_title" msgid="8002058095019254694">"Скачанные файлы"</string>
    <!-- no translation found for deletion_helper_downloads_category_summary (8545989355108311347) -->
    <skip />
    <!-- no translation found for deletion_helper_downloads_summary_empty (3988054032360371887) -->
    <skip />
    <string name="deletion_helper_clear_dialog_title" msgid="9169670752655850967">"Очистка хранилища"</string>
    <string name="deletion_helper_clear_dialog_message" msgid="5196490478187120700">"С вашего устройства будет удален контент объемом <xliff:g id="CLEARABLE_BYTES">%1$s</xliff:g>."</string>
    <string name="deletion_helper_clear_dialog_remove" msgid="863575755467985516">"Освободить место"</string>
    <string name="deletion_helper_upsell_title" msgid="8512037674466762017">"Включить автоматическую очистку?"</string>
    <string name="deletion_helper_upsell_summary" msgid="2301597713694474407">"Свободно <xliff:g id="USED">%1$s</xliff:g>. Разрешить менеджеру хранилища автоматически удалять с устройства контент, для которого есть резервные копии?"</string>
    <string name="deletion_helper_upsell_cancel" msgid="7084167642850053889">"Нет, спасибо"</string>
    <string name="deletion_helper_upsell_activate" msgid="7157360257760895976">"Включить"</string>
    <string name="deletion_helper_apps_group_title" msgid="2578309121350341258">"Редко исп. приложения"</string>
    <!-- no translation found for deletion_helper_apps_group_summary (360315517252452356) -->
    <skip />
    <string name="deletion_helper_automatic_title" msgid="4610119358490679299">"Автоматически"</string>
    <string name="deletion_helper_manual_title" msgid="3905192395039688529">"Руководство"</string>
    <string name="deletion_helper_preference_title" msgid="803484286872745892">"Освободить место"</string>
    <string name="automatic_storage_manager_service_label" msgid="648592272375278978">"Автоматическое управление хранилищем"</string>
    <string name="automatic_storage_manager_notification_title" product="default" msgid="8480483265300964701">"Недостаточно места"</string>
    <string name="automatic_storage_manager_notification_title" product="tablet" msgid="3150907918531844467">"Недостаточно места"</string>
    <string name="automatic_storage_manager_notification_summary" msgid="2267399886362245822">"Разрешите менеджеру хранилища автоматически удалять старые фото и видео с устройства при нехватке свободного пространства."</string>
    <string name="automatic_storage_manager_cancel_button" msgid="1826365037494962803">"Не включать"</string>
    <string name="automatic_storage_manager_activate_button" msgid="6257070263061898041">"Включить"</string>
    <string name="deletion_helper_photos_loading_title" msgid="2768067991066779772">"Резервные копии фото и видео"</string>
    <string name="deletion_helper_photos_loading_summary" msgid="8203033249458245854">"Поиск…"</string>
    <string name="deletion_helper_no_threshold" msgid="6943179204098250444">"Показать все объекты"</string>
    <string name="deletion_helper_default_threshold" msgid="8410389370069021113">"Скрыть последние объекты"</string>
    <string name="deletion_helper_clear_dialog_message_first_time" msgid="686530413183529901">"С вашего устройства будет удален контент объемом <xliff:g id="CLEARABLE_BYTES">%1$s</xliff:g>."</string>
    <string name="automatic_storage_manager_activation_warning" msgid="7657017408180001078">"Память устройства теперь управляется менеджером хранилища"</string>
    <string name="empty_state_title" msgid="4033285438176545309">"Нечего удалять"</string>
    <string name="empty_state_review_items_link" msgid="8411186441239304545">"Просмотреть последние объекты"</string>
    <string name="empty_state_summary" msgid="8439893007424243790">"Нет старых файлов. Чтобы освободить место, удалите недавние фотографии, видео и приложения."</string>
    <string name="app_requesting_space" msgid="857425181289960167">"Приложению \"<xliff:g id="APP">%1$s</xliff:g>\" требуется <xliff:g id="CLEARABLE_BYTES">%2$s</xliff:g> свободного места"</string>
</resources>
