<?xml version="1.0" encoding="UTF-8"?>
<!-- 
    Copyright (C) 2018 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_title" msgid="1995858460392177468">"Automobilio paleidimo priemonė"</string>
    <string name="app_launcher_title_all_apps" msgid="3215107396036838217">"Visos programos"</string>
    <string name="app_launcher_title_media_only" msgid="4400886555907422816">"Medijos programos"</string>
    <string name="driving_toast_text" msgid="149483091947120092">"Vairuojant negalima naudoti „<xliff:g id="APP_NAME">%1$s</xliff:g>“."</string>
    <string name="tap_for_more_info_text" msgid="2043549383814415585">"Palieskite kortelę, kad sužinotumėte daugiau informacijos"</string>
    <string name="tap_to_launch_text" msgid="6910695705119260847">"Palieskite kortelę, kad paleistumėte"</string>
    <string name="ongoing_call_duration_text_separator" msgid="6019453854809413561">" • "</string>
    <string name="ongoing_call_text" msgid="2394626676478708070">"Vykstantis skambutis"</string>
    <string name="dialing_call_text" msgid="415326503409745490">"Renkamas numeris…"</string>
    <string name="projected_launch_text" msgid="5809132353957907500">"Paleisti „Android Auto“"</string>
    <string name="projected_onclick_launch_error_toast_text" msgid="7462478007773137082">"Nepavyko paleisti „Android Auto“. Nerasta jokios veiklos."</string>
    <!-- no translation found for projection_devices (916314090031116598) -->
    <skip />
    <string name="weather_app_name" msgid="8048146303519139993">"Orai"</string>
    <string name="fake_weather_main_text" msgid="8117240999340284429">"--° Daugiausia saulėta"</string>
    <string name="fake_weather_footer_text" msgid="4570172025869749926">"Mauntin Vju • H: --° L: --°"</string>
    <string name="hide_debug_apps" msgid="6128313544379622475">"Slėpti derinimo programas"</string>
    <string name="show_debug_apps" msgid="4521073121286325786">"Rodyti derinimo programas"</string>
</resources>
