<?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">"Programma\'s kunnen materiaal bevatten dat ongeschikt is voor een publiek jonger dan vijftien jaar. Ouderlijk toezicht is gewenst."</string>
    <string name="description_kr_tv_19" msgid="9197085158053054550">"Programma\'s kunnen materiaal bevatten dat ongeschikt is voor een publiek jonger dan negentien jaar. Ze zijn daarom niet geschikt voor jongeren tot negentien jaar."</string>
    <string name="description_us_tv_d" msgid="12333789157204816">"Suggestieve dialogen"</string>
    <string name="description_us_tv_l" msgid="4105102855627964319">"Grof taalgebruik"</string>
    <string name="description_us_tv_s" msgid="7552447251273237176">"Pornografische inhoud"</string>
    <string name="description_us_tv_v" msgid="4799470820740236198">"Geweld"</string>
    <string name="description_us_tv_fv" msgid="4760884520245003167">"Niet-realistisch geweld"</string>
    <string name="description_us_tv_y" msgid="1352346035366881161">"Dit programma is ontwikkeld voor kinderen van alle leeftijden."</string>
    <string name="description_us_tv_y7" msgid="8074158131815307880">"Dit programma is ontwikkeld voor kinderen van 7 jaar en ouder."</string>
    <string name="description_us_tv_g" msgid="4129784125991285944">"De meeste ouders achten dit programma geschikt voor alle leeftijden."</string>
    <string name="description_us_tv_pg" msgid="5647218792100947596">"Dit programma bevat inhoud die ouders mogelijk ongeschikt achten voor jonge kinderen. Veel ouders willen dit samen met hun jongere kinderen bekijken."</string>
    <string name="description_us_tv_14" msgid="8682987672893857317">"Dit programma bevat inhoud die veel ouders ongeschikt achten voor kinderen die jonger zijn dan 14 jaar."</string>
    <string name="description_us_tv_ma" msgid="8912237130594289176">"Dit programma is speciaal ontwikkeld voor volwassen kijkers en is daarom mogelijk ongeschikt voor kinderen die jonger zijn dan 17 jaar."</string>
    <string name="title_us_mv" msgid="7861766023361439035">"Filmclassificaties"</string>
    <string name="description_us_mv_g" msgid="9185817407450418638">"Geschikt voor alle leeftijden. Niets dat ouders als ongepast voor kinderen zouden beschouwen."</string>
    <string name="description_us_mv_pg" msgid="8578620326248525384">"Ouderlijk toezicht aanbevolen. Kan bepaalde inhoud bevatten die ouders niet geschikt vinden voor jonge kinderen."</string>
    <string name="description_us_mv_pg13" msgid="7077331984538950084">"Ouderlijk toezicht wordt sterk aangeraden. Sommige inhoud is mogelijk ongepast voor kinderen en jonge tieners."</string>
    <string name="description_us_mv_r" msgid="4482914375592527277">"Beperkt, bevat inhoud voor volwassenen. Ouders wordt aangeraden meer informatie over de film te bekijken voordat ze hun jonge kinderen meenemen."</string>
    <string name="description_us_mv_nc17" msgid="1897668555117874369">"Geen toegang voor 17 jaar en jonger. Duidelijk voor volwassenen. Niet toegestaan voor kinderen."</string>
</resources>
