<?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">"Storan Kalendar"</string>
    <string name="upgrade_msg" msgid="2792831029435070926">"Menaiktaraf pangkalan data Kalendar."</string>
    <string name="calendar_default_name" msgid="6924293766625167275">"Lalai"</string>
    <string name="calendar_info" msgid="6687678621418059281">"Maklumat kalendar"</string>
    <string name="calendar_info_error" msgid="5575162446528419982">"Ralat"</string>
    <string name="calendar_info_no_calendars" msgid="4287534468186704433">"Tiada kalendar"</string>
    <string name="calendar_info_events" msgid="1805502308105103803">"Acara: <xliff:g id="EVENTS">%1$d</xliff:g>"</string>
    <string name="calendar_info_events_dirty" msgid="8879392112564499515">"Acara: <xliff:g id="EVENTS_0">%1$d</xliff:g>, Tidak disimpan: <xliff:g id="DIRTY_EVENTS">%2$d</xliff:g>"</string>
    <string name="provider_label" msgid="2306513350843464739">"Kalendar"</string>
    <string name="debug_tool_delete_button" msgid="5052706251268452090">"Padam sekarang"</string>
    <string name="debug_tool_start_button" msgid="5384780896342913563">"Mula"</string>
    <string name="debug_tool_message" msgid="4862486669932821937">"Anda akan 1) membuat salinan pangkalan data kalendar anda ke kad SD/storan USB yang boleh dibaca oleh sebarang apl dan 2) menghantarnya melalui e-mel. Jangan lupa untuk memadamkan salinan itu sebaik sahaja anda berjaya menyalinnya dari peranti atau selepas e-mel diterima."</string>
    <string name="debug_tool_email_sender_picker" msgid="2000311987477419397">"Pilih program untuk menghantar fail anda"</string>
    <string name="debug_tool_email_subject" msgid="2403590332256471194">"Db Kalendar dilampirkan"</string>
    <string name="debug_tool_email_body" msgid="4835949635324134017">"Dilampirkan pangkalan data Kalendar saya dengan semua janji temu dan maklumat peribadi. Sila gunakan dengan cermat."</string>
</resources>
