<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2006 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="voiceDialer" msgid="5948204210436590941">"Галасавы набор"</string>
    <string name="tool_tip_title" msgid="9092247761265706709">"Ці ведаеце вы, што?.."</string>
    <string name="tool_tip_message" msgid="8624998371709530611">"Націсніце і ўтрымлівайце зялёную кнопку выкліку, каб адкрыць галасавы набор."</string>
    <string name="examples" msgid="2100807337052050741">" Прыклады: "<b>" "\n" \"Выклікаць Джона Доу\" "\n" \"Выклікаць хатні нумар Джона Доу?\"? "\n" \"Выклікаць галасавую пошту\" "\n" \"Набраць (866) 555 0123\" "\n" \"Набраць 911, 811,??\" "\n" Раўторна набраць \"+ 44 7333 444 555 \" "\n" \"Паўторна набраць\" "\n" \"Адчыніць каляндар\" "</b></string>
    <string name="title" msgid="60788431860720964">"Галасавы набор"</string>
    <string name="bluetooth_title" msgid="1018603170854746529">"Галасавы набор Bluetooth"</string>
    <string name="initializing" msgid="3146934028021025628">"Стартаванне"</string>
    <string name="listening" msgid="6886486282595802147">"Слухаю??"</string>
    <string name="please_try_again" msgid="1427744152996396950">"Паспрабуйце яшчэ раз."</string>
    <string name="failure" msgid="3985785889820564626">"Памылка"</string>
    <string name="recognition_error" msgid="1807947152844267364">"Вы таксама можаце паспрабаваць перазагрузіць тэлефон."</string>
    <string name="headset_connection_lost" msgid="3809295858472462650">"Падлучэнне да гарнітуры страчанае."</string>
    <string name="at_home" msgid="8478880812967663328">" хатні"</string>
    <string name="on_mobile" msgid="5739841127369724804">" на мабільны"</string>
    <string name="at_work" msgid="2946111016850670818">" працоўны"</string>
    <string name="at_other" msgid="1863773841760953063">" на іншым"</string>
    <string name="logging_enabled" msgid="8702018587287436548">"Вядзенне логу галасавога набору ўключана."</string>
    <string name="logging_disabled" msgid="5992352601321824322">"Галасавы набор адключаны."</string>
    <string name="speak_now_tts" msgid="1343363077871348876">"Гаварыце."</string>
    <string name="no_results_tts" msgid="7292876061536755253">"Вынікаў няма, паспрабуйце яшчэ раз."</string>
    <string name="invalid_choice_tts" msgid="1871918597940504468">"Недапушчальны выбар."</string>
    <string name="goodbye_tts" msgid="2034746843726531134">"Да пабачэння!"</string>
</resources>
