<?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">"Multimedia"</string>
    <string name="storage_description" msgid="4081716890357580107">"Almacenamento local"</string>
    <string name="app_label" msgid="9035307001052716210">"Almacenamento multimedia"</string>
    <string name="artist_label" msgid="8105600993099120273">"Artista"</string>
    <string name="ringtone_default" msgid="1744846699922263043">"Ton de chamada predeterminado"</string>
    <string name="notification_sound_default" msgid="6541609166469990135">"Son de notificación predeterminado"</string>
    <string name="alarm_sound_default" msgid="5488847775252870314">"Son de alarma predeterminado"</string>
    <string name="root_images" msgid="5861633549189045666">"Imaxes"</string>
    <string name="root_videos" msgid="8792703517064649453">"Vídeos"</string>
    <string name="root_audio" msgid="3505830755201326018">"Audio"</string>
    <string name="permission_required" msgid="1460820436132943754">"Necesítase permiso para modificar ou eliminar este elemento."</string>
    <string name="permission_required_action" msgid="706370952366113539">"Continuar"</string>
    <string name="permission_audio" msgid="344061911159388398">"Queres que a aplicación "<b>"<xliff:g id="APP_NAME">^1</xliff:g>"</b>" modifique ou elimine esta música?"</string>
    <string name="permission_video" msgid="8188037202573267740">"Queres permitir que a aplicación "<b>"<xliff:g id="APP_NAME">^1</xliff:g>"</b>" modifique ou elimine este vídeo?"</string>
    <string name="permission_images" msgid="6711726334380945124">"Queres permitir que a aplicación "<b>"<xliff:g id="APP_NAME">^1</xliff:g>"</b>" modifique ou quite esta imaxe?"</string>
    <string name="grant_dialog_button_allow" msgid="1644287024501033471">"Permitir"</string>
    <string name="grant_dialog_button_deny" msgid="6190589471415815741">"Denegar"</string>
    <string name="sound_name_awaken" msgid="5266892392848526147">"Espertar"</string>
    <string name="sound_name_bounce" msgid="8771447635446665231">"Rebotar"</string>
    <string name="sound_name_drip" msgid="1744684469020662152">"Gotear"</string>
    <string name="sound_name_gallop" msgid="2664454314532060876">"Galopar"</string>
    <string name="sound_name_nudge" msgid="5445751598250698244">"Impulsar"</string>
    <string name="sound_name_orbit" msgid="4623457897813255481">"Orbitar"</string>
    <string name="sound_name_rise" msgid="2200258555031675806">"Subir"</string>
    <string name="sound_name_sway" msgid="348448316663085643">"Oscilar"</string>
    <string name="sound_name_wag" msgid="2730733083078126563">"Axitar"</string>
    <string name="add_ringtone_text" msgid="8077717303037760418">"Engadir ton de chamada"</string>
    <string name="add_alarm_text" msgid="2440919366091720815">"Engadir alarma"</string>
    <string name="add_notification_text" msgid="5013822215567515665">"Engadir notificación"</string>
    <string name="delete_ringtone_text" msgid="2963662097583300181">"Eliminar"</string>
    <string name="unable_to_add_ringtone" msgid="6256097521165711269">"Non se pode engadir un ton de chamada personalizado"</string>
    <string name="unable_to_delete_ringtone" msgid="2258180073859253495">"Non se pode eliminar un ton de chamada personalizado"</string>
</resources>
