<?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">
  <string-array name="display_mode_labels">
    <item msgid="2259828487212953611">"Normaal"</item>
    <item msgid="2533030282864800794">"Volledig"</item>
    <item msgid="8568284598210500589">"Zoomen"</item>
  </string-array>
  <string-array name="genre_labels">
    <item msgid="3241959001790384341">"Alle kanalen"</item>
    <item msgid="928298872841713530">"Familie/kinderen"</item>
    <item msgid="2751606947569857164">"Sport"</item>
    <item msgid="7345749789651321496">"Winkelen"</item>
    <item msgid="167201149441442173">"Films"</item>
    <item msgid="525966731464264290">"Komedie"</item>
    <item msgid="6096710741527327836">"Reizen"</item>
    <item msgid="2851882187117833883">"Drama"</item>
    <item msgid="78492781188719038">"Onderwijs"</item>
    <item msgid="7221999662426308394">"Dieren/natuur"</item>
    <item msgid="375300513250925001">"Nieuws"</item>
    <item msgid="7746320336582330410">"Games"</item>
    <item msgid="1255741860568329178">"Kunst"</item>
    <item msgid="7603949681065702867">"Amusement"</item>
    <item msgid="4453821994746804366">"Lifestyle"</item>
    <item msgid="3488534597567932843">"Muziek"</item>
    <item msgid="7452153120614274095">"Premier"</item>
    <item msgid="8215762047341133299">"Techniek/wetenschap"</item>
  </string-array>
  <string-array name="welcome_page_titles">
    <item msgid="8322900543391231769">"Live tv"</item>
    <item msgid="7307688057853449735">"Een eenvoudige manier om content te vinden"</item>
    <item msgid="7566838222783641942">"Apps downloaden, meer kanalen krijgen"</item>
    <item msgid="8646630833216197238">"Je kanaalprogrammering aanpassen"</item>
  </string-array>
  <string-array name="welcome_page_descriptions">
    <item msgid="8445334820787831823">"Bekijk content uit je apps op dezelfde manier als je kanalen op tv bekijkt."</item>
    <item msgid="1855708984677953238">"Browse door content uit je apps met een bekende gids en gebruikersvriendelijke interface, \nop dezelfde manier als kanalen op tv."</item>
    <item msgid="3420760668363283731">"Voeg meer kanalen toe door apps te installeren die live tv aanbieden. \nZoek compatibele apps in de Google Play Store via de link in het tv-menu."</item>
    <item msgid="8974157841656828507">"Configureer je net geïnstalleerde kanaalbronnen om je kanaallijst aan te passen. \nKies de kanaalbronnen in het menu Instellingen om aan de slag te gaan."</item>
  </string-array>
</resources>
