<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2014 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="sleep_timeout_entries">
    <item msgid="1213527366819650274">"5 minuts"</item>
    <item msgid="6561800022721381078">"15 minuts"</item>
    <item msgid="7718735533503035428">"30 minuts"</item>
    <item msgid="8784595382489738498">"1 hora"</item>
    <item msgid="1529312035777735084">"2 hores"</item>
  </string-array>
  <string-array name="screen_off_timeout_entries">
    <item msgid="8244337465472020927">"30 minuts"</item>
    <item msgid="1001586019759702505">"1 hora"</item>
    <item msgid="5216959047515554188">"3 hores"</item>
    <item msgid="4152882798140628647">"6 hores"</item>
    <item msgid="412984226950404956">"12 hores"</item>
    <item msgid="2178434662173258997">"Mai"</item>
  </string-array>
  <string-array name="captioning_typeface_selector_titles">
    <item msgid="4410581208185456276">"Predeterminat"</item>
    <item msgid="9033306684422202101">"Sans-serif"</item>
    <item msgid="1864985245839120339">"Sans-serif condensada"</item>
    <item msgid="2707402752636362906">"Sans serif monoespaiada"</item>
    <item msgid="4549910217342216388">"Serif"</item>
    <item msgid="4764344884232052861">"Serif monoespaiada"</item>
    <item msgid="8561996903323025702">"Informal"</item>
    <item msgid="8403638572764467550">"Cursiva"</item>
    <item msgid="5560655268137500927">"Versaletes"</item>
  </string-array>
  <string-array name="captioning_font_size_selector_titles">
    <item msgid="4304493614734189861">"Molt petit"</item>
    <item msgid="1694402928400844023">"Petit"</item>
    <item msgid="1235495470844109970">"Normal"</item>
    <item msgid="481223375568095790">"Gran"</item>
    <item msgid="8614563351231073075">"Molt gran"</item>
  </string-array>
  <string-array name="captioning_edge_type_selector_titles">
    <item msgid="5333047169042840730">"Cap"</item>
    <item msgid="7663488423233018922">"Contorn"</item>
    <item msgid="7891048730741670843">"Ombra"</item>
    <item msgid="6613725572146700438">"Elevat"</item>
    <item msgid="1007736533206905292">"Enfonsat"</item>
  </string-array>
  <string-array name="captioning_opacity_selector_titles">
    <item msgid="7311196539184412021">"25%"</item>
    <item msgid="4609292560884303243">"50%"</item>
    <item msgid="1626485489418859846">"75%"</item>
    <item msgid="1811192455405034366">"100%"</item>
  </string-array>
  <string-array name="surround_sound_entries">
    <item msgid="5639265918353416799">"Automàtic"</item>
    <item msgid="5990497479384785807">"Sempre"</item>
    <item msgid="6178602073308944697">"Mai"</item>
  </string-array>
</resources>
