<?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="7928959984891140427">"Ընտրեք հեռացվող տարրերը"</string>
    <string name="deletion_helper_app_summary" msgid="1923023368736447552">"<xliff:g id="USED">%1$s</xliff:g> • <xliff:g id="DAYS">%2$d</xliff:g> օր առաջ"</string>
    <string name="deletion_helper_app_summary_never_used" msgid="20287691628145397">"<xliff:g id="USED">%1$s</xliff:g> • Անցյալ տարի չի օգտագործվել"</string>
    <string name="deletion_helper_app_summary_unknown_used" msgid="257918462233851162">"<xliff:g id="USED">%1$s</xliff:g> • Հայտնի չէ, թե վերջին անգամ երբ է օգտագործվել"</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="8694284659307845664">"Լուսանկարներ և տեսանյութեր (<xliff:g id="NUM_ITEMS">%1$d</xliff:g>)"</string>
    <string name="deletion_helper_photos_summary" msgid="2636724338009030470">"<xliff:g id="USED">%1$s</xliff:g> • <xliff:g id="DAYS">%2$d</xliff:g> օրվանից հին"</string>
    <string name="deletion_helper_downloads_title" msgid="2976599380628177756">"Ներբեռնումներ (<xliff:g id="NUMITEMS">%1$d</xliff:g>)"</string>
    <!-- no translation found for deletion_helper_downloads_category_summary (8545989355108311347) -->
    <skip />
    <string name="deletion_helper_downloads_file_summary" msgid="2610952169093565355">"<xliff:g id="USED">%1$s</xliff:g> • <xliff:g id="DAYS">%2$s</xliff:g>"</string>
    <!-- no translation found for deletion_helper_downloads_summary_empty (3988054032360371887) -->
    <skip />
    <string name="deletion_helper_clear_dialog_message" msgid="4896104662649947320">"Ձեր սարքից կհեռացվի <xliff:g id="CLEARABLE_BYTES">%1$s</xliff:g>"</string>
    <string name="deletion_helper_clear_dialog_remove" msgid="3386502418767917932">"Հեռացնել"</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="6554321362396920050">"Հավելվածներ (<xliff:g id="NUM_ITEMS">%1$d</xliff:g>)"</string>
    <string name="deletion_helper_apps_group_summary" msgid="3466154404460006085">"<xliff:g id="USED">%1$s</xliff:g> • Վերջին անգամ օգտագործվել է <xliff:g id="DAYS">%2$d</xliff:g> օր առաջ"</string>
    <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" msgid="8480483265300964701">"Հեռախոսում քիչ տարածք կա"</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="5411813715495227745">"Լուսանկարներ և տեսանյութեր"</string>
    <string name="deletion_helper_photos_loading_summary" msgid="8203033249458245854">"Տարրերի որոնում…"</string>
    <string name="deletion_helper_clear_dialog_message_first_time" msgid="386144597646356521">"Ձեր սարքից կհեռացվի <xliff:g id="CLEARABLE_BYTES">%1$s</xliff:g>"</string>
    <string name="automatic_storage_manager_activation_warning" msgid="7657017408180001078">"Ձեր սարքի հիշողությունն այժմ կառավարվում է հիշողության կառավարիչի կողմից"</string>
</resources>
