<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2007 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_label" msgid="5264040740662487684">"Atsisiuntimų tvarkytuvė"</string>
    <string name="storage_description" msgid="169690279447532621">"Atsisiuntimai"</string>
    <string name="permlab_downloadManager" msgid="4241473724446132797">"Pasiekti atsisiuntimo tvarkyklę."</string>
    <string name="permdesc_downloadManager" msgid="5562734314998369030">"Leidžiama programai pasiekti atsisiuntimų tvarkytuvę ir naudoti ją failams atsisiųsti. Kenkėjiškos programos gali naudoti šią funkciją atsisiuntimams stabdyti ir asmeninei informacijai pasiekti."</string>
    <string name="permlab_downloadManagerAdvanced" msgid="2225663947531460795">"Išplėstinės atsisiuntimo tvarkytuvės funkcijos."</string>
    <string name="permdesc_downloadManagerAdvanced" msgid="3902478062563030716">"Leidžiama programai pasiekti išplėstines atsisiuntimų tvarkytuvės funkcijas. Kenkėjiškos programos gali naudoti šią funkciją atsisiuntimams stabdyti ir asmeninei informacijai gauti."</string>
    <string name="permlab_downloadCompletedIntent" msgid="2674407390116052956">"Siųsti atsisiuntimo pranešimus."</string>
    <string name="permdesc_downloadCompletedIntent" msgid="3384693829639860032">"Leidžiama programai siųsti pranešimus apie baigtus atsisiuntimus. Kenkėjiškos programos gali naudoti šią funkciją, kad supainiotų kitas programas, kurias naudojant siunčiami failai."</string>
    <string name="permlab_downloadCacheNonPurgeable" msgid="4538031250425141333">"Rezervuoti vietą atsisiuntimo talpykloje"</string>
    <string name="permdesc_downloadCacheNonPurgeable" msgid="3071381088686444674">"Leidžiama programai atsisiųsti failus į atsisiuntimo talpyklą, kurios negalima automatiškai ištrinti, kai atsisiuntimo tvarkytuvei prireikia daugiau vietos."</string>
    <string name="permlab_downloadWithoutNotification" msgid="4877101864770265405">"atsisiųsti failus be pranešimo"</string>
    <string name="permdesc_downloadWithoutNotification" msgid="7699189763226483523">"Leidžiama programai atsisiųsti failus naudojant atsisiuntimo tvarkytuvę, naudotojui nepateikus jokio pranešimo."</string>
    <string name="permlab_accessAllDownloads" msgid="8227356876527248611">"Pasiekti visus sistemos atsisiuntimus"</string>
    <string name="permdesc_accessAllDownloads" msgid="7541731738152145079">"Leidžiama programai žiūrėti ir keisti visus atsisiuntimus, pradėtus naudojant bet kokią sistemos programą."</string>
    <string name="download_unknown_title" msgid="1017800350818840396">"&lt;Be pavadinimo&gt;"</string>
    <string name="notification_download_complete" msgid="466652037490092787">"Atsisiuntimas baigtas."</string>
    <string name="notification_download_failed" msgid="3932167763860605874">"Atsisiuntimas nesėkmingas."</string>
    <string name="notification_need_wifi_for_size" msgid="4743443900432303646">"Did. f., reikia „Wi-Fi“."</string>
    <string name="notification_paused_in_background" msgid="6393408819031041778">"Pristabdyta fone."</string>
    <string name="wifi_required_title" msgid="7266700488421122218">"Atsisiuntimas per didelis operatoriaus tinklui"</string>
    <string name="wifi_required_body" msgid="4005023496578941958">"Jei norite baigti šį <xliff:g id="SIZE">%1$s </xliff:g> atsisiuntimą, turite naudoti „Wi-Fi“. \n\nPalieskite <xliff:g id="QUEUE_TEXT">%2$s </xliff:g>, jei norite pradėti šį atsisiuntimą kitą kartą prisijungę prie „Wi-Fi“."</string>
    <string name="wifi_recommended_title" msgid="6488158053932133804">"Įtraukti į eilę, norint vėliau atsisiųsti?"</string>
    <string name="wifi_recommended_body" msgid="8710820743211704403">"Siunč. šį <xliff:g id="SIZE">%1$s </xliff:g> failą eikv. daug energ. ir (arba) mob. duom., todėl pagal naud. duom. planą gali būti taik. oper. mokesč.\n\n Palies. <xliff:g id="QUEUE_TEXT">%2$s</xliff:g>, jei nor. siųsti šį failą kitą k. prisij. prie „Wi-Fi“."</string>
    <string name="button_queue_for_wifi" msgid="6650185573566994738">"Eilė"</string>
    <string name="button_cancel_download" msgid="4135046775536601831">"Atšaukti"</string>
    <string name="button_start_now" msgid="3817100969365441730">"Pradėti dabar"</string>
    <plurals name="notif_summary_active" formatted="false" msgid="8652501374845637331">
      <item quantity="one">Atsisiunčiamas <xliff:g id="NUMBER">%d</xliff:g> failas</item>
      <item quantity="few">Atsisiunčiami <xliff:g id="NUMBER">%d</xliff:g> failai</item>
      <item quantity="many">Atsisiunčiama <xliff:g id="NUMBER">%d</xliff:g> failo</item>
      <item quantity="other">Atsisiunčiama <xliff:g id="NUMBER">%d</xliff:g> failų</item>
    </plurals>
    <plurals name="notif_summary_waiting" formatted="false" msgid="1782251721955177526">
      <item quantity="one">Laukiama <xliff:g id="NUMBER">%d</xliff:g> failo</item>
      <item quantity="few">Laukiama <xliff:g id="NUMBER">%d</xliff:g> failų</item>
      <item quantity="many">Laukiama <xliff:g id="NUMBER">%d</xliff:g> failo</item>
      <item quantity="other">Laukiama <xliff:g id="NUMBER">%d</xliff:g> failų</item>
    </plurals>
    <string name="download_remaining" msgid="2313089371178695625">"Liko: <xliff:g id="DURATION">%s</xliff:g>"</string>
    <string name="download_no_application_title" msgid="5780812573953335721">"Nepavyksta atidaryti failo"</string>
    <string name="root_downloads" msgid="8380500940211778491">"Atsisiuntimai"</string>
    <string name="download_queued" msgid="3383844741769045371">"Laukia eilėje"</string>
    <string name="download_running" msgid="774654178925442490">"Vykdoma"</string>
    <string name="download_error" msgid="1857737890005386798">"Nesėkminga"</string>
    <string name="download_running_percent" msgid="3492753569359254730">"Procesas vyksta, <xliff:g id="PERCENTAGE">%s</xliff:g>"</string>
</resources>
