<?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">"Szukaj"</string>
    <string name="search_widget" msgid="323244086853110381">"Szukaj"</string>
    <!-- outdated translation 6675934305676944437 -->     <string name="remove_from_history" msgid="8904048551022097518">"Usuń z historii wyszukiwania"</string>
    <!-- outdated translation 7326173491060133769 -->     <string name="remove_from_history_failed" msgid="1200923379897420942">"Nie można usunąć pozycji z historii"</string>
    <string name="corpus_selection_heading" msgid="6673422146423301360">"Przeszukuj"</string>
    <string name="corpus_label_global" msgid="8787849559975296772">"Wszystko"</string>
    <string name="corpus_label_web" msgid="3551946782975352067">"Sieć"</string>
    <!-- outdated translation 5553049179123250409 -->     <string name="corpus_description_web" msgid="6248923252805408647">"Wyszukiwarka, zakładki i historia przeglądarki"</string>
    <string name="corpus_label_apps" msgid="73123028704144731">"Aplikacje"</string>
    <string name="corpus_description_apps" msgid="7434542427108237469">"Nazwy zainstalowanych aplikacji"</string>
    <!-- outdated translation 4230401643970165739 -->     <string name="corpus_hint_apps" msgid="7759612845120599537">"Szukaj w aplikacjach"</string>
    <string name="menu_settings" msgid="5600043319144155953">"Ustawienia wyszukiwania"</string>
    <string name="search_settings" msgid="4101951238194600323">"Ustawienia wyszukiwania"</string>
    <string name="google_settings_category_title" msgid="770300575312669210">"Wyszukiwarka Google"</string>
    <string name="device_settings_category_title" msgid="2378889894648580869">"Wyczyść skróty"</string>
    <string name="system_search_category_title" msgid="1507902891285388819">"Telefon"</string>
    <string name="search_sources" msgid="505874718206340313">"Przeszukiwane elementy"</string>
    <string name="search_sources_summary" msgid="9181194249796408374">"Wybierz elementy przeszukiwane w telefonie"</string>
    <string name="clear_shortcuts" msgid="1964107586205103593">"Wyczyść skróty"</string>
    <string name="clear_shortcuts_summary" msgid="7407553488405249541">"Wyczyść skróty do ostatnio wybranych sugestii wyszukiwania"</string>
    <!-- outdated translation 1383427830703301130 -->     <string name="clear_shortcuts_prompt" msgid="6487883523491520343">"Spowoduje to wyczyszczenie wszystkich skrótów do ostatnio wybranych sugestii wyszukiwania."\n\n"(Aby wyczyścić historię przeglądarki, użyj ustawień tej przeglądarki)."</string>
    <string name="clear_shortcuts_agree" msgid="5623666487205882033">"Wyczyść skróty"</string>
    <string name="clear_shortcuts_disagree" msgid="3667707814933648461">"Nie czyść skrótów"</string>
    <string name="menu_help" msgid="8466596486018760239">"Pomoc"</string>
    <string name="google_search_label" msgid="2312345472131797361">"Google"</string>
    <string name="google_app_label" msgid="7877830942664670350">"Wyszukiwarka Google"</string>
    <string name="google_search_hint" msgid="8374014384681586649">"Wyszukiwarka Google"</string>
    <string name="google_search_description" msgid="659411505885375623">"Sugestie wyszukiwania Google"</string>
    <string name="voice_search_hint_title" msgid="9160095960228453779">"Powiedz np.:"</string>
    <!-- outdated translation 566545847023692214 -->     <string name="voice_search_hint_quotation_start" msgid="5648752104255950621">"“"</string>
    <!-- outdated translation 4840921425933402938 -->     <string name="voice_search_hint_quotation_end" msgid="3400099768332101719">"”"</string>
</resources>
