<?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">"Soek"</string>
    <string name="search_widget" msgid="323244086853110381">"Soek"</string>
    <string name="remove_from_history" msgid="8904048551022097518">"Wil jy hierdie item uit die soekgeskiedenis verwyder?"</string>
    <string name="remove_from_history_failed" msgid="1200923379897420942">"Kon nie item uit geskiedenis verwyder nie."</string>
    <string name="corpus_selection_heading" msgid="6673422146423301360">"Soek"</string>
    <string name="corpus_label_global" msgid="8787849559975296772">"Alle"</string>
    <string name="corpus_label_web" msgid="3551946782975352067">"Web"</string>
    <string name="corpus_description_web" msgid="6248923252805408647">"Websoektogte, boekmerke en blaaiergeskiedenis"</string>
    <string name="corpus_label_apps" msgid="73123028704144731">"Apps"</string>
    <string name="corpus_description_apps" msgid="7434542427108237469">"Name van geïnstalleerde programme"</string>
    <string name="corpus_hint_apps" msgid="7759612845120599537">"Deursoek programme"</string>
    <string name="menu_settings" msgid="5600043319144155953">"Soekinstellings"</string>
    <string name="search_settings" msgid="4101951238194600323">"Soekinstellings"</string>
    <string name="google_settings_category_title" msgid="770300575312669210">"Google Search"</string>
    <string name="device_settings_category_title" msgid="2378889894648580869">"Vee kortpaaie uit"</string>
    <string name="system_search_category_title" msgid="1507902891285388819">"Foon"</string>
    <string name="search_sources" msgid="505874718206340313">"Soekbare items"</string>
    <string name="search_sources_summary" msgid="9181194249796408374">"Kies wat om te deursoek op die foon"</string>
    <string name="clear_shortcuts" msgid="1964107586205103593">"Vee kortpaaie uit"</string>
    <string name="clear_shortcuts_summary" msgid="7407553488405249541">"Vee kortpaaie na onlangs gekose soekvoorstelle uit"</string>
    <string name="clear_shortcuts_prompt" msgid="6487883523491520343">"Wil jy alle kortpaaie na onlangs gekose soekvoorstelle uitvee?"\n\n"Om jou blaaiergeskiedenis uit te vee, gebruik die blaaier se instellings."</string>
    <string name="clear_shortcuts_agree" msgid="5623666487205882033">"Vee kortpaaie uit"</string>
    <string name="clear_shortcuts_disagree" msgid="3667707814933648461">"Moenie kortpaaie uitvee nie"</string>
    <string name="menu_help" msgid="8466596486018760239">"Hulp"</string>
    <string name="google_search_label" msgid="2312345472131797361">"Google"</string>
    <string name="google_app_label" msgid="7877830942664670350">"Google Search"</string>
    <string name="google_search_hint" msgid="8374014384681586649">"Google Search"</string>
    <string name="google_search_description" msgid="659411505885375623">"Google Search-voorstelle"</string>
    <string name="voice_search_hint_title" msgid="9160095960228453779">"Sê eerder:"</string>
    <string name="voice_search_hint_quotation_start" msgid="5648752104255950621">"\""</string>
    <string name="voice_search_hint_quotation_end" msgid="3400099768332101719">"\""</string>
</resources>
