<?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="app_name" msgid="1504397077706378597">"Pesquisa"</string>
    <string name="search_widget" msgid="323244086853110381">"Pesquisa"</string>
    <string name="remove_from_history" msgid="6675934305676944437">"Remover do histórico de pesquisa"</string>
    <string name="remove_from_history_failed" msgid="7326173491060133769">"Não foi possível remover o item do histórico"</string>
    <string name="corpus_selection_heading" msgid="6673422146423301360">"Pesquisa"</string>
    <string name="corpus_label_global" msgid="8787849559975296772">"Todos"</string>
    <string name="corpus_label_web" msgid="3551946782975352067">"Web"</string>
    <string name="corpus_description_web" msgid="5553049179123250409">"Pesquisa na web, favoritos e histórico do navegador"</string>
    <string name="corpus_label_apps" msgid="73123028704144731">"Aplicativos"</string>
    <string name="corpus_description_apps" msgid="7434542427108237469">"Nomes dos aplicativos instalados"</string>
    <string name="corpus_hint_apps" msgid="4230401643970165739">"Pesquisar aplicativos"</string>
    <string name="menu_settings" msgid="5600043319144155953">"Configurações de pesquisa"</string>
    <string name="search_settings" msgid="4101951238194600323">"Configurações de pesquisa"</string>
    <string name="google_settings_category_title" msgid="770300575312669210">"Pesquisa do Google"</string>
    <string name="device_settings_category_title" msgid="2378889894648580869">"Limpar atalhos"</string>
    <string name="system_search_category_title" msgid="1507902891285388819">"Telefone"</string>
    <string name="search_sources" msgid="505874718206340313">"Itens pesquisáveis"</string>
    <string name="search_sources_summary" msgid="9181194249796408374">"Escolher o que deve ser pesquisado no telefone"</string>
    <string name="clear_shortcuts" msgid="1964107586205103593">"Limpar atalhos"</string>
    <string name="clear_shortcuts_summary" msgid="7407553488405249541">"Limpar atalhos para sugestões de pesquisa escolhidas recentemente"</string>
    <string name="clear_shortcuts_prompt" msgid="1383427830703301130">"Todos os atalhos para as sugestões de pesquisa escolhidas recentemente serão apagados."\n\n"Para limpar o histórico do seu navegador, use as configurações do navegador."</string>
    <string name="clear_shortcuts_agree" msgid="5623666487205882033">"Limpar atalhos"</string>
    <string name="clear_shortcuts_disagree" msgid="3667707814933648461">"Não limpar os atalhos"</string>
    <string name="menu_help" msgid="8466596486018760239">"Ajuda"</string>
    <string name="google_search_label" msgid="2312345472131797361">"Google"</string>
    <string name="google_app_label" msgid="7877830942664670350">"Pesquisa do Google"</string>
    <string name="google_search_hint" msgid="8374014384681586649">"Pesquisa do Google"</string>
    <string name="google_search_description" msgid="659411505885375623">"Sugestões da pesquisa do Google"</string>
    <string name="voice_search_hint_title" msgid="9160095960228453779">"Tente dizer:"</string>
    <string name="voice_search_hint_quotation_start" msgid="566545847023692214">"“"</string>
    <string name="voice_search_hint_quotation_end" msgid="4840921425933402938">"”"</string>
</resources>
