<?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">"Medien"</string>
    <string name="storage_description" msgid="4081716890357580107">"Lokaler Speicher"</string>
    <string name="app_label" msgid="9035307001052716210">"Medienspeicher"</string>
    <string name="artist_label" msgid="8105600993099120273">"Interpret"</string>
    <string name="ringtone_default" msgid="1744846699922263043">"Standard-Klingelton"</string>
    <string name="notification_sound_default" msgid="6541609166469990135">"Standard-Benachrichtigungston"</string>
    <string name="alarm_sound_default" msgid="5488847775252870314">"Standard-Weckton"</string>
    <string name="root_images" msgid="5861633549189045666">"Bilder"</string>
    <string name="root_videos" msgid="8792703517064649453">"Videos"</string>
    <string name="root_audio" msgid="3505830755201326018">"Audio"</string>
    <string name="sound_name_awaken" msgid="5266892392848526147">"Awaken"</string>
    <string name="sound_name_bounce" msgid="8771447635446665231">"Bounce"</string>
    <string name="sound_name_drip" msgid="1744684469020662152">"Drip"</string>
    <string name="sound_name_gallop" msgid="2664454314532060876">"Gallop"</string>
    <string name="sound_name_nudge" msgid="5445751598250698244">"Nudge"</string>
    <string name="sound_name_orbit" msgid="4623457897813255481">"Orbit"</string>
    <string name="sound_name_rise" msgid="2200258555031675806">"Rise"</string>
    <string name="sound_name_sway" msgid="348448316663085643">"Sway"</string>
    <string name="sound_name_wag" msgid="2730733083078126563">"Wag"</string>
    <string name="add_ringtone_text" msgid="8077717303037760418">"Klingelton hinzufügen"</string>
    <string name="add_alarm_text" msgid="2440919366091720815">"Wecker hinzufügen"</string>
    <string name="add_notification_text" msgid="5013822215567515665">"Benachrichtigung hinzufügen"</string>
    <string name="delete_ringtone_text" msgid="2963662097583300181">"Löschen"</string>
    <string name="unable_to_add_ringtone" msgid="6256097521165711269">"Benutzerdefinierter Klingelton konnte nicht hinzugefügt werden"</string>
    <string name="unable_to_delete_ringtone" msgid="2258180073859253495">"Benutzerdefinierter Klingelton konnte nicht gelöscht werden"</string>
</resources>
