<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2012 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="abc_action_mode_done" msgid="4076576682505996667">"Listo"</string>
    <string name="abc_action_bar_home_description" msgid="4600421777120114993">"Ir a la pantalla de inicio"</string>
    <string name="abc_action_bar_up_description" msgid="1594238315039666878">"Desplazarse hacia arriba"</string>
    <string name="abc_action_menu_overflow_description" msgid="3588849162933574182">"Más opciones"</string>
    <string name="abc_toolbar_collapse_description" msgid="1603543279005712093">"Contraer"</string>
    <string name="abc_action_bar_home_description_format" msgid="1397052879051804371">"%1$s, %2$s"</string>
    <string name="abc_action_bar_home_subtitle_description_format" msgid="6623331958280229229">"%1$s, %2$s, %3$s"</string>
    <string name="abc_searchview_description_search" msgid="8264924765203268293">"Buscar"</string>
    <string name="abc_search_hint" msgid="7723749260725869598">"Buscar…"</string>
    <string name="abc_searchview_description_query" msgid="2550479030709304392">"Consulta"</string>
    <string name="abc_searchview_description_clear" msgid="3691816814315814921">"Borrar consulta"</string>
    <string name="abc_searchview_description_submit" msgid="8928215447528550784">"Enviar consulta"</string>
    <string name="abc_searchview_description_voice" msgid="893419373245838918">"Búsqueda por voz"</string>
    <string name="abc_activitychooserview_choose_application" msgid="2031811694353399454">"Seleccionar una aplicación"</string>
    <string name="abc_activity_chooser_view_see_all" msgid="7468859129482906941">"Ver todo"</string>
    <string name="abc_shareactionprovider_share_with_application" msgid="7165123711973476752">"Compartir con %s"</string>
    <string name="abc_shareactionprovider_share_with" msgid="3421042268587513524">"Compartir con"</string>
    <string name="status_bar_notification_info_overflow" msgid="2869576371154716097">"+999"</string>
</resources>
