<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2010 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="3070921713463294774">"Lejupielādes"</string>
    <string name="download_title_sorted_by_date" msgid="5898014492155434221">"Lejupielādes — sakārtotas pēc datuma"</string>
    <string name="download_title_sorted_by_size" msgid="1417193166677094813">"Lejupielādes — sakārtotas pēc izmēra"</string>
    <string name="no_downloads" msgid="1029667411186146836">"Nav lejupielāžu."</string>
    <string name="missing_title" msgid="830115697868833773">"&lt;Nezināms&gt;"</string>
    <string name="button_sort_by_size" msgid="7331549713691146251">"Kārtot pēc lieluma"</string>
    <string name="button_sort_by_date" msgid="8800842892684101528">"Kārtot pēc datuma"</string>
    <string name="download_queued" msgid="104973307780629904">"Rindā"</string>
    <string name="download_running" msgid="4656462962155580641">"Augšupiel."</string>
    <string name="download_success" msgid="7006048006543495236">"Pabeigta"</string>
    <string name="download_error" msgid="3107369653921738690">"Neizdevās"</string>
    <string name="dialog_title_not_available" msgid="4479021195995400471">"Lejupielāde neizdevās"</string>
    <string name="dialog_failed_body" msgid="587545111677064427">"Vai vēlaties vēlreiz mēģināt lejupielādēt šo failu vēlāk vai arī dzēst to no rindas?"</string>
    <string name="dialog_title_queued_body" msgid="3062862079904954824">"Fails vēl nav pieejams"</string>
    <string name="dialog_queued_body" msgid="2506935748423351902">"Šis fails ir ievietots rindā vēlākai lejupielādei."</string>
    <string name="dialog_file_missing_body" msgid="2783781332668129395">"Lejupielādēto failu nevar atrast."</string>
    <string name="dialog_insufficient_space_on_external" msgid="7534108515812329821">"Lejupielādi nevar pabeigt. Ārējā krātuvē nepietiek vietas."</string>
    <string name="dialog_insufficient_space_on_cache" msgid="8387210487235302129">"Lejupielādi nevar pabeigt. Iekšējā lejupielādes krātuvē nepietiek vietas."</string>
    <string name="dialog_cannot_resume" msgid="7704082031608361756">"Lejupielāde tika pārtraukta. To nevar atsākt."</string>
    <string name="dialog_file_already_exists" msgid="2663737850617642888">"Nevar lejupielādēt. Galamērķa fails jau pastāv."</string>
    <string name="dialog_media_not_found" msgid="5308602145105720991">"Nevar lejupielādēt. Ārējais datu nesējs nav pieejams."</string>
    <string name="download_no_application_title" msgid="3501359021635168387">"Nevar atvērt failu"</string>
    <string name="remove_download" msgid="6372920256257247857">"Noņemt"</string>
    <string name="delete_download" msgid="76629022653866471">"Dzēst"</string>
    <string name="keep_queued_download" msgid="5144882786014818569">"Paturēt"</string>
    <string name="cancel_running_download" msgid="5232704030969221112">"Atcelt"</string>
    <string name="retry_download" msgid="7617100787922717912">"Mēģināt vēlreiz"</string>
    <string name="deselect_all" msgid="7986832738563338661">"Noņemt visas atzīmes"</string>
    <string name="select_all" msgid="5854385570247421586">"Atlasīt visas"</string>
    <string name="selected_count" msgid="2101564570019753277">"Atlasītas <xliff:g id="NUMBER">%1$d</xliff:g> no <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
    <string name="download_share_dialog" msgid="3355867339806448955">"Kopīgot, izmantojot"</string>
</resources>
