<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2009 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="calendar_storage" msgid="5387668002987562770">"Emmagatzematge del calendari"</string>
    <string name="upgrade_msg" msgid="2792831029435070926">"S\'està actualitzant la base de dades de Calendar."</string>
    <string name="calendar_default_name" msgid="6924293766625167275">"Predeterminat"</string>
    <string name="calendar_info" msgid="6687678621418059281">"Informació del calendari"</string>
    <string name="calendar_info_error" msgid="5575162446528419982">"Error"</string>
    <string name="calendar_info_no_calendars" msgid="4287534468186704433">"No hi ha cap calendari"</string>
    <string name="calendar_info_events" msgid="1805502308105103803">"Esdeveniments: <xliff:g id="EVENTS">%1$d</xliff:g>"</string>
    <string name="calendar_info_events_dirty" msgid="8879392112564499515">"Esdeveniments: <xliff:g id="EVENTS_0">%1$d</xliff:g>, no desats: <xliff:g id="DIRTY_EVENTS">%2$d</xliff:g>"</string>
    <string name="provider_label" msgid="2306513350843464739">"Calendari"</string>
    <string name="debug_tool_delete_button" msgid="5052706251268452090">"Suprimeix ara"</string>
    <string name="debug_tool_start_button" msgid="5384780896342913563">"Inici"</string>
    <string name="debug_tool_message" msgid="4414152820946316089">"Estàs a punt de 1) fer una còpia de la base de dades del teu calendari a l\'emmagatzematge USB/targeta SD, llegible per qualsevol aplicació, i 2) enviar-la per correu electrònic. Recorda suprimir-la tan bon punt l\'hagis copiat correctament al dispositiu o s\'hagi rebut el correu electrònic."</string>
    <string name="debug_tool_email_sender_picker" msgid="4418621476577347562">"Selecciona un programa per enviar el fitxer"</string>
    <string name="debug_tool_email_subject" msgid="2403590332256471194">"Calendari Db adjunt"</string>
    <string name="debug_tool_email_body" msgid="740309162644398319">"La base de dades del meu calendari amb totes les meves cites i informació personal es troba adjunta. Tracta-la amb cura."</string>
</resources>
