<?xml version="1.0" encoding="UTF-8"?>
<!-- 
  ~ Copyright (C) 2015 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">
    <!-- no translation found for description_age_4 (2260506104299774027) -->
    <skip />
    <!-- no translation found for description_age_5 (312882360850848623) -->
    <skip />
    <!-- no translation found for description_age_6 (7780895021659413979) -->
    <skip />
    <!-- no translation found for description_age_7 (7465836675187750087) -->
    <skip />
    <!-- no translation found for description_age_8 (8518389733138803056) -->
    <skip />
    <!-- no translation found for description_age_9 (1963837231871036561) -->
    <skip />
    <!-- no translation found for description_age_10 (9199865628328446876) -->
    <skip />
    <!-- no translation found for description_age_11 (1056140065021078183) -->
    <skip />
    <!-- no translation found for description_age_12 (2523883089926997157) -->
    <skip />
    <!-- no translation found for description_age_13 (4539863086843940979) -->
    <skip />
    <!-- no translation found for description_age_14 (276938165219847540) -->
    <skip />
    <!-- no translation found for description_age_15 (3875804533354572649) -->
    <skip />
    <!-- no translation found for description_age_16 (7068358107904351707) -->
    <skip />
    <!-- no translation found for description_age_17 (6090244054207338066) -->
    <skip />
    <!-- no translation found for description_age_18 (7827138562117972763) -->
    <skip />
    <!-- no translation found for description_age_19 (5739639668332937969) -->
    <skip />
    <!-- no translation found for description_age_20 (8099318760823109592) -->
    <skip />
    <!-- no translation found for description_ca_tv_en_exempt (3869530797231884669) -->
    <skip />
    <!-- no translation found for description_ca_tv_en_c (6170724506314571912) -->
    <skip />
    <!-- no translation found for description_ca_tv_en_c8 (7942870097063909046) -->
    <skip />
    <!-- no translation found for description_ca_tv_en_g (7893908216230285607) -->
    <skip />
    <!-- no translation found for description_ca_tv_en_pg (2736709384517099303) -->
    <skip />
    <!-- no translation found for description_ca_tv_en_14 (8063534593921657009) -->
    <skip />
    <!-- no translation found for description_ca_tv_en_18 (3552078692829803323) -->
    <skip />
    <!-- no translation found for description_fr_dvb_u (8232083238497153682) -->
    <skip />
    <!-- no translation found for description_es_dvb_all (4821183217465284547) -->
    <skip />
    <!-- no translation found for description_es_dvb_c (1367395312248365855) -->
    <skip />
    <!-- no translation found for description_es_dvb_x (438890727939582714) -->
    <skip />
    <!-- no translation found for description_kr_tv_all (3048365195196820853) -->
    <skip />
    <!-- no translation found for description_kr_tv_7 (5892929693766504059) -->
    <skip />
    <!-- no translation found for description_kr_tv_12 (1883893246941826597) -->
    <skip />
    <string name="description_kr_tv_15" msgid="5888141153573158322">"Programmerne kan have indhold, der er upassende for børn under 15 år, og forældrene bør beslutte, om indholdet er passende for deres barn."</string>
    <string name="description_kr_tv_19" msgid="9197085158053054550">"Programmerne kan have indehold, der er upassende for personer under 19 år, og de er derfor ikke passende for unge under 19 år."</string>
    <string name="description_us_tv_d" msgid="12333789157204816">"Dialog med seksuelt orienteret indhold"</string>
    <string name="description_us_tv_l" msgid="4105102855627964319">"Groft sprogbrug"</string>
    <string name="description_us_tv_s" msgid="7552447251273237176">"Seksuelt indhold"</string>
    <string name="description_us_tv_v" msgid="4799470820740236198">"Vold"</string>
    <string name="description_us_tv_fv" msgid="4760884520245003167">"Fantasivold"</string>
    <string name="description_us_tv_y" msgid="1352346035366881161">"Dette program er beregnet til børn i alle aldre."</string>
    <string name="description_us_tv_y7" msgid="8074158131815307880">"Dette program er beregnet til børn på syv år og op."</string>
    <string name="description_us_tv_g" msgid="4129784125991285944">"De fleste forældre vil finde dette program passende for alle aldre."</string>
    <string name="description_us_tv_pg" msgid="5647218792100947596">"Dette program indeholder materiale, som forældre kan finde upassende for mindre børn. Det kan være en god idé for forældre at se programmet sammen med deres mindre børn."</string>
    <string name="description_us_tv_14" msgid="8682987672893857317">"Dette program indeholder materiale, som mange forældre finder upassende for børn under 14 år."</string>
    <string name="description_us_tv_ma" msgid="8912237130594289176">"Dette program er beregnet til voksne og kan derfor være upassende for børn under 17 år."</string>
    <string name="title_us_mv" msgid="7861766023361439035">"Filmklassificering"</string>
    <string name="description_us_mv_g" msgid="9185817407450418638">"Generelle målgrupper. Indeholder ikke materiale, der kan støde forældre i forbindelse med visning for børn."</string>
    <string name="description_us_mv_pg" msgid="8578620326248525384">"Forældrevejledning anbefales. Indeholder materiale, som forældre muligvis ikke vil have, at deres mindre børn skal se."</string>
    <string name="description_us_mv_pg13" msgid="7077331984538950084">"Forældre advares kraftigt. Indeholder materiale, som kan være upassende for børn under 13 år."</string>
    <string name="description_us_mv_r" msgid="4482914375592527277">"Begrænset. Indeholder materiale for voksne. Forældre opfordres til at indhente flere oplysninger om filmen, før de tager mindre børn med ind at se den."</string>
    <string name="description_us_mv_nc17" msgid="1897668555117874369">"Personer på 17 år eller yngre nægtes adgang. Kun for voksne. Børn nægtes adgang."</string>
</resources>
