<?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.
-->
<!--
****
**** THIS IS AN AUTOGENERATED FILE.
**** PLEASE DO NOT EDIT IT MANUALLY WITHOUT REMOVING THIS NOTICE.
****
**** To regenerate this file, use:
****       $ tools/get_search_engines.py $locale
**** e.g.  $ tools/get_search_engines.py es-MX
****
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
  <bool   name="engine_1_enabled">true</bool>
  <string name="engine_1_name">yandex_ru</string>
  <string name="engine_1_label">&amp;#x042f&amp;#x043d&amp;#x0434&amp;#x0435&amp;#x043a&amp;#x0441</string>
  <bool   name="engine_2_enabled">true</bool>
  <string name="engine_2_name">rambler</string>
  <string name="engine_2_label">Rambler</string>
  <bool   name="engine_3_enabled">true</bool>
  <string name="engine_3_name">mail_ru</string>
  <string name="engine_3_label">\@MAIL.RU</string>
  <bool   name="engine_4_enabled">true</bool>
  <string name="engine_4_name">yahoo_ru</string>
  <string name="engine_4_label">Yahoo! &amp;#x043f&amp;#x043e-&amp;#x0440&amp;#x0443&amp;#x0441&amp;#x0441&amp;#x043a&amp;#x0438</string>
  <bool   name="engine_5_enabled">true</bool>
  <string name="engine_5_name">live_ru_RU</string>
  <string name="engine_5_label">Live Search</string>
  <bool   name="engine_6_enabled">false</bool>
  <string name="engine_6_name"></string>
  <string name="engine_6_label"></string>
  <bool   name="engine_7_enabled">false</bool>
  <string name="engine_7_name"></string>
  <string name="engine_7_label"></string>
</resources>
