<?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">"Downloads"</string>
    <string name="download_title_sorted_by_date" msgid="5898014492155434221">"Downloads – sorteret efter dato"</string>
    <string name="download_title_sorted_by_size" msgid="1417193166677094813">"Downloads – sorter efter størrelse"</string>
    <string name="no_downloads" msgid="1029667411186146836">"Ingen downloads."</string>
    <string name="missing_title" msgid="830115697868833773">"&lt;Ukendt&gt;"</string>
    <string name="button_sort_by_size" msgid="7331549713691146251">"Sortér efter størrelse"</string>
    <string name="button_sort_by_date" msgid="8800842892684101528">"Sorter efter dato"</string>
    <string name="download_queued" msgid="104973307780629904">"I kø"</string>
    <string name="download_running" msgid="4656462962155580641">"I gang"</string>
    <string name="download_success" msgid="7006048006543495236">"Fuldført"</string>
    <string name="download_error" msgid="8081329546008568251">"Mislykkedes"</string>
    <string name="dialog_title_not_available" msgid="5746317632356158515">"Download mislykkedes"</string>
    <string name="dialog_failed_body" msgid="587545111677064427">"Vil du forsøge at downloade filen igen senere eller slette den fra køen?"</string>
    <string name="dialog_title_queued_body" msgid="6760681913815015219">"Fil i kø"</string>
    <string name="dialog_queued_body" msgid="708552801635572720">"Denne fil står i kø til fremtidig download, så den er ikke tilgængelig endnu."</string>
    <string name="dialog_file_missing_body" msgid="3223012612774276284">"Den downloadede fil blev ikke fundet."</string>
    <string name="dialog_insufficient_space_on_external" msgid="8692452156251449195">"Download kan ikke fuldføres. Der er ikke nok plads på det eksterne lager."</string>
    <string name="dialog_insufficient_space_on_cache" msgid="6313630206163908994">"Download kan ikke fuldføres. Der er ikke nok plads på det interne lager."</string>
    <string name="dialog_cannot_resume" msgid="8664509751358983543">"Download blev afbrudt og ikke kan genoptages."</string>
    <string name="dialog_file_already_exists" msgid="8308563940663449590">"Der kan ikke downloades. Destinationsfilen findes allerede."</string>
    <string name="dialog_media_not_found" msgid="4468088418758018765">"Der kan ikke downloades. Det eksterne medie er ikke tilgængeligt."</string>
    <string name="download_no_application_title" msgid="7024782176657362251">"Filen kan ikke åbnes"</string>
    <string name="remove_download" msgid="6372920256257247857">"Fjern"</string>
    <string name="delete_download" msgid="76629022653866471">"Slet"</string>
    <string name="keep_queued_download" msgid="5144882786014818569">"Behold"</string>
    <string name="cancel_running_download" msgid="5232704030969221112">"Annuller"</string>
    <string name="retry_download" msgid="7617100787922717912">"Prøv igen"</string>
    <string name="start_now_download" msgid="1564642872809509681">"Start nu"</string>
    <string name="deselect_all" msgid="6348198946254776764">"Fjern markering af alle"</string>
    <string name="select_all" msgid="634074918366265804">"Markér alle"</string>
    <string name="selected_count" msgid="2101564570019753277">"<xliff:g id="NUMBER">%1$d</xliff:g> valgte ud af <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
    <string name="download_share_dialog" msgid="3355867339806448955">"Del via"</string>
</resources>
