<?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="uid_label" msgid="8421971615411294156">"मीडिया"</string>
    <string name="storage_description" msgid="4081716890357580107">"स्थानिक स्टोरेज"</string>
    <string name="app_label" msgid="9035307001052716210">"मीडिया स्टोरेज"</string>
    <string name="artist_label" msgid="8105600993099120273">"कलाकार"</string>
    <string name="ringtone_default" msgid="1744846699922263043">"डीफॉल्ट रिंगटोन"</string>
    <string name="notification_sound_default" msgid="6541609166469990135">"डीफॉल्ट सूचना ध्वनी"</string>
    <string name="alarm_sound_default" msgid="5488847775252870314">"डीफॉल्ट अलार्म ध्वनी"</string>
    <string name="root_images" msgid="5861633549189045666">"इमेज"</string>
    <string name="root_videos" msgid="8792703517064649453">"व्हिडिओ"</string>
    <string name="root_audio" msgid="3505830755201326018">"ऑडिओ"</string>
    <string name="sound_name_awaken" msgid="5266892392848526147">"अवेकन"</string>
    <string name="sound_name_bounce" msgid="8771447635446665231">"बाउन्स"</string>
    <string name="sound_name_drip" msgid="1744684469020662152">"ड्रिप"</string>
    <string name="sound_name_gallop" msgid="2664454314532060876">"गॅलप"</string>
    <string name="sound_name_nudge" msgid="5445751598250698244">"नज"</string>
    <string name="sound_name_orbit" msgid="4623457897813255481">"ऑरबिट"</string>
    <string name="sound_name_rise" msgid="2200258555031675806">"राइज"</string>
    <string name="sound_name_sway" msgid="348448316663085643">"स्वे"</string>
    <string name="sound_name_wag" msgid="2730733083078126563">"वॉग"</string>
    <string name="add_ringtone_text" msgid="8077717303037760418">"रिंगटोन जोडा"</string>
    <string name="add_alarm_text" msgid="2440919366091720815">"अलार्म जोडा"</string>
    <string name="add_notification_text" msgid="5013822215567515665">"सूचना जोडा"</string>
    <string name="delete_ringtone_text" msgid="2963662097583300181">"हटवा"</string>
    <string name="unable_to_add_ringtone" msgid="6256097521165711269">"कस्टम रिंगटोन जोडण्यात अक्षम"</string>
    <string name="unable_to_delete_ringtone" msgid="2258180073859253495">"कस्टम रिंगटोन हटविण्यात अक्षम"</string>
</resources>
