<?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">"Пошук"</string>
    <string name="search_widget" msgid="323244086853110381">"Пошук"</string>
    <!-- outdated translation 6675934305676944437 -->     <string name="remove_from_history" msgid="8904048551022097518">"Видалити з історії пошуку"</string>
    <!-- outdated translation 7326173491060133769 -->     <string name="remove_from_history_failed" msgid="1200923379897420942">"Не вдалося видалити елемент з історії"</string>
    <string name="corpus_selection_heading" msgid="6673422146423301360">"Пошук"</string>
    <string name="corpus_label_global" msgid="8787849559975296772">"Усі"</string>
    <string name="corpus_label_web" msgid="3551946782975352067">"Веб"</string>
    <!-- outdated translation 5553049179123250409 -->     <string name="corpus_description_web" msgid="6248923252805408647">"Веб-пошук, закладки й історія переглядача"</string>
    <string name="corpus_label_apps" msgid="73123028704144731">"Служби"</string>
    <string name="corpus_description_apps" msgid="7434542427108237469">"Назви встановлених програм"</string>
    <!-- outdated translation 4230401643970165739 -->     <string name="corpus_hint_apps" msgid="7759612845120599537">"Служби для пош."</string>
    <string name="menu_settings" msgid="5600043319144155953">"Налашт-ня пошуку"</string>
    <string name="search_settings" msgid="4101951238194600323">"Налашт-ня пошуку"</string>
    <string name="google_settings_category_title" msgid="770300575312669210">"Пошук Google"</string>
    <string name="device_settings_category_title" msgid="2378889894648580869">"Видалення ярликів"</string>
    <string name="system_search_category_title" msgid="1507902891285388819">"Телефон"</string>
    <string name="search_sources" msgid="505874718206340313">"Елементи для пошуку"</string>
    <string name="search_sources_summary" msgid="9181194249796408374">"Виберіть що шукати у телефоні"</string>
    <string name="clear_shortcuts" msgid="1964107586205103593">"Видалити ярлики"</string>
    <string name="clear_shortcuts_summary" msgid="7407553488405249541">"Видалити всі ярлики недавно вибраних пропозицій пошуку"</string>
    <!-- outdated translation 1383427830703301130 -->     <string name="clear_shortcuts_prompt" msgid="6487883523491520343">"Це видалить усі ярлики недавно вибраних пропозицій пошуку."\n\n"(Щоб очистити історію переглядача, використ. налаштування переглядача)."</string>
    <string name="clear_shortcuts_agree" msgid="5623666487205882033">"Видалити ярлики"</string>
    <string name="clear_shortcuts_disagree" msgid="3667707814933648461">"Не видаляти ярлики"</string>
    <string name="menu_help" msgid="8466596486018760239">"Довідка"</string>
    <string name="google_search_label" msgid="2312345472131797361">"Google"</string>
    <string name="google_app_label" msgid="7877830942664670350">"Пошук Google"</string>
    <string name="google_search_hint" msgid="8374014384681586649">"Пошук Google"</string>
    <string name="google_search_description" msgid="659411505885375623">"Пропозиції пошуку Google"</string>
    <string name="voice_search_hint_title" msgid="9160095960228453779">"Продиктуйте:"</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>
