<?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">"Balss numura sastādītājs"</string>
    <string name="tool_tip_title" msgid="9092247761265706709">"Vai zinājāt..."</string>
    <string name="tool_tip_message" msgid="8624998371709530611">"Nospiežot un turot zaļo zvanīšanas pogu, tiek atvērts Balss numura sastādītājs."</string>
    <string name="examples" msgid="2100807337052050741">" Piemēri: "<b>" "\n"“Zvanīt Jānim Bērziņam” "\n"“Zvanīt Jānim Bērziņam uz mājām, ...” "\n"“Zvanīt uz balss pastu”·"\n"“Sastādīt numuru (866) 555 0123” "\n"“Sastādīt numuru 112, 02, …” "\n"“Sastādīt numuru +44 7333 444 555” "\n"“Zvanīt vēlreiz” "\n"“Atvērt kalendāru” "</b></string>
    <string name="title" msgid="60788431860720964">"Balss numura sastādītājs"</string>
    <string name="bluetooth_title" msgid="1018603170854746529">"Bluetooth balss numuru sastādītājs"</string>
    <string name="initializing" msgid="1455696989718692334">"Notiek palaišana..."</string>
    <string name="listening" msgid="6886486282595802147">"Notiek klausīšanās..."</string>
    <string name="please_try_again" msgid="6612157920739645345">"Mēģiniet vēlreiz."</string>
    <string name="failure" msgid="4363633038755445209">"Nevarēja inicializēt."</string>
    <string name="recognition_error" msgid="6171111971593859630">"Restartējiet tālruni un pēc tam mēģiniet vēlreiz."</string>
    <string name="headset_connection_lost" msgid="3809295858472462650">"Savienojums ar austiņām ir zaudēts."</string>
    <string name="at_home" msgid="8478880812967663328">" mājās"</string>
    <string name="on_mobile" msgid="5739841127369724804">" mobilajā tālrunī"</string>
    <string name="at_work" msgid="2946111016850670818">" darbā"</string>
    <string name="at_other" msgid="1863773841760953063">" citā vietā"</string>
    <string name="logging_enabled" msgid="1797105104286961324">"Balss numura sastādītāja reģistrēšana ir ieslēgta."</string>
    <string name="logging_disabled" msgid="5851271054900000063">"Balss numura sastādītāja reģistrēšana ir izslēgta."</string>
    <string name="speak_now_tts" msgid="1343363077871348876">"Runājiet tagad."</string>
    <string name="no_results_tts" msgid="7292876061536755253">"Rezultātu nav, mēģiniet vēlreiz."</string>
    <string name="invalid_choice_tts" msgid="1871918597940504468">"Nederīga izvēle."</string>
    <string name="goodbye_tts" msgid="2034746843726531134">"Uz redzēšanos."</string>
</resources>
