<?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">"جستجوی Apps"</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>
