<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2013 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_label" msgid="2783841764617238354">"दस्तावेज़"</string>
    <string name="title_open" msgid="4353228937663917801">"यहां से खोलें"</string>
    <string name="title_save" msgid="2433679664882857999">"यहां जोड़ें"</string>
    <string name="menu_create_dir" msgid="5947289605844398389">"फ़ोल्डर बनाएं"</string>
    <string name="menu_grid" msgid="6878021334497835259">"ग्रिड दृश्य"</string>
    <string name="menu_list" msgid="7279285939892417279">"सूची दृश्य"</string>
    <string name="menu_sort" msgid="7677740407158414452">"इससे क्रमित करें"</string>
    <string name="menu_search" msgid="3816712084502856974">"खोजें"</string>
    <string name="menu_settings" msgid="6008033148948428823">"सेटिंग"</string>
    <string name="menu_open" msgid="432922957274920903">"खोलें"</string>
    <string name="menu_save" msgid="2394743337684426338">"जोड़ें"</string>
    <string name="menu_share" msgid="3075149983979628146">"साझा करें"</string>
    <string name="menu_delete" msgid="8138799623850614177">"हटाएं"</string>
    <string name="menu_select" msgid="8711270657353563424">"\"<xliff:g id="DIRECTORY">^1</xliff:g>\" चुनें"</string>
    <string name="menu_select_all" msgid="4320518282375109902">"सभी चुनें"</string>
    <string name="menu_copy" msgid="3612326052677229148">"इनकी कॉपी बनाएं..."</string>
    <string name="menu_advanced_show" product="nosdcard" msgid="4693652895715631401">"आंतरिक मेमोरी दिखाएं"</string>
    <string name="menu_advanced_show" product="default" msgid="5792182900084144261">"SD कार्ड दिखाएं"</string>
    <string name="menu_advanced_hide" product="nosdcard" msgid="4218809952721972589">"आंतरिक मेमोरी छिपाएं"</string>
    <string name="menu_advanced_hide" product="default" msgid="4845869969015718848">"SD कार्ड छिपाएं"</string>
    <string name="menu_file_size_show" msgid="3240323619260823076">"फ़ाइल आकार दिखाएं"</string>
    <string name="menu_file_size_hide" msgid="8881975928502581042">"फ़ाइल आकार छिपाएं"</string>
    <!-- no translation found for button_copy (8706475544635021302) -->
    <skip />
    <string name="mode_selected_count" msgid="459111894725594625">"<xliff:g id="COUNT">%1$d</xliff:g> चयनित"</string>
    <string name="sort_name" msgid="9183560467917256779">"नाम के अनुसार"</string>
    <string name="sort_date" msgid="586080032956151448">"बदलाव के दिनांक के अनुसार"</string>
    <string name="sort_size" msgid="3350681319735474741">"आकार के अनुसार"</string>
    <string name="drawer_open" msgid="4545466532430226949">"रूट दिखाएं"</string>
    <string name="drawer_close" msgid="7602734368552123318">"रूट छिपाएं"</string>
    <string name="save_error" msgid="6167009778003223664">"दस्तावेज़ सहेजने में विफल रहा"</string>
    <string name="create_error" msgid="3735649141335444215">"फ़ोल्डर बनाने में विफल"</string>
    <string name="query_error" msgid="1222448261663503501">"दस्तावेजों के लिए क्वेरी करने में विफल रहा"</string>
    <string name="root_recent" msgid="4470053704320518133">"हाल ही के"</string>
    <string name="root_available_bytes" msgid="8568452858617033281">"<xliff:g id="SIZE">%1$s</xliff:g> खाली"</string>
    <string name="root_type_service" msgid="2178854894416775409">"मेमोरी सेवाएं"</string>
    <string name="root_type_shortcut" msgid="3318760609471618093">"शॉर्टकट"</string>
    <string name="root_type_device" msgid="7121342474653483538">"डिवाइस"</string>
    <string name="root_type_apps" msgid="8838065367985945189">"अधिक ऐप्स"</string>
    <string name="empty" msgid="7858882803708117596">"कोई आइटम नहीं"</string>
    <string name="toast_no_application" msgid="1339885974067891667">"फ़ाइल नहीं खोली जा सकती"</string>
    <string name="toast_failed_delete" msgid="2180678019407244069">"कुछ दस्तावेज़ों को हटाने में अक्षम"</string>
    <string name="share_via" msgid="8966594246261344259">"इसके द्वारा साझा करें"</string>
    <string name="copy_notification_title" msgid="6374299806748219777">"फ़ाइलें कॉपी हो रही हैं"</string>
    <string name="copy_remaining" msgid="6283790937387975095">"<xliff:g id="DURATION">%s</xliff:g> शेष"</string>
    <plurals name="copy_begin" formatted="false" msgid="9071199452634086365">
      <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> फ़ाइलें कॉपी की जा रही हैं.</item>
      <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> फ़ाइलें कॉपी की जा रही हैं.</item>
    </plurals>
    <string name="copy_preparing" msgid="3896202461003039386">"कॉपी करने की तैयारी हो रही है…"</string>
    <!-- no translation found for copy_error_notification_title (4911333304372840735) -->
    <!-- no translation found for notification_touch_for_details (4483108577842961665) -->
    <skip />
    <!-- no translation found for retry (7564024179122207376) -->
    <skip />
    <!-- no translation found for copy_failure_alert_title (616726451967793549) -->
    <skip />
    <!-- no translation found for copy_failure_alert_content (2655232627616241542) -->
    <skip />
</resources>
