<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2007 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="reminder_methods_labels">
    <item msgid="5172236776878811487">"Pemberitahuan"</item>
    <item msgid="1751151680520784746">"Email"</item>
    <item msgid="2658001219380695677">"SMS"</item>
    <item msgid="7926918288165444873">"Alarm"</item>
  </string-array>
  <string-array name="reminder_minutes_labels">
    <item msgid="2416970002377237011">"0 menit"</item>
    <item msgid="6681865010714743948">"1 menit"</item>
    <item msgid="2327505114623595779">"5 menit"</item>
    <item msgid="1657410063332547113">"10 menit"</item>
    <item msgid="366087535181197780">"15 menit"</item>
    <item msgid="6252612791145061929">"20 menit"</item>
    <item msgid="7896694531989090700">"25 menit"</item>
    <item msgid="8754510169374808607">"30 menit"</item>
    <item msgid="3113380274218454394">"45 menit"</item>
    <item msgid="8546646645868526283">"1 jam"</item>
    <item msgid="6467845211024768872">"2 jam"</item>
    <item msgid="8201677619511076575">"3 jam"</item>
    <item msgid="7172504281650128893">"12 jam"</item>
    <item msgid="9114286702181482496">"24 jam"</item>
    <item msgid="3107009344872997366">"2 hari"</item>
    <item msgid="6135563708172153696">"1 minggu"</item>
  </string-array>
  <string-array name="preferences_default_reminder_labels">
    <item msgid="7495163916242649023">"Tak Satu Pun"</item>
    <item msgid="5883344836499335043">"0 menit"</item>
    <item msgid="4354350447805231188">"1 menit"</item>
    <item msgid="265674592625309858">"5 menit"</item>
    <item msgid="8011089417728419666">"10 menit"</item>
    <item msgid="6177098581805412986">"15 menit"</item>
    <item msgid="356346660503078923">"20 menit"</item>
    <item msgid="992592434377054063">"25 menit"</item>
    <item msgid="9191353668596201944">"30 menit"</item>
    <item msgid="1192985682962908244">"45 menit"</item>
    <item msgid="1694315499429259938">"1 jam"</item>
    <item msgid="8281019320591769635">"2 jam"</item>
    <item msgid="2062931719019287773">"3 jam"</item>
    <item msgid="4086495711621133006">"12 jam"</item>
    <item msgid="3172669681920709561">"24 jam"</item>
    <item msgid="5557836606782821910">"2 hari"</item>
    <item msgid="8336577387266744930">"1 minggu"</item>
  </string-array>
  <string-array name="preferences_week_start_day_labels">
    <item msgid="986150274035512339">"Lokal default"</item>
    <item msgid="134027225275475280">"Sabtu"</item>
    <item msgid="95029346069903091">"Minggu"</item>
    <item msgid="5840983116375063739">"Senin"</item>
  </string-array>
  <string-array name="availability">
    <item msgid="454869065893453189">"Sibuk"</item>
    <item msgid="6228387173725732140">"Tersedia"</item>
    <item msgid="2064426942462573474">"Sementara"</item>
  </string-array>
  <string-array name="visibility">
    <item msgid="3035788428581513163">"Default"</item>
    <item msgid="5200216103966973369">"Pribadi"</item>
    <item msgid="9182342638433672664">"Umum"</item>
  </string-array>
  <string-array name="ordinal_labels">
    <item msgid="2693927956303125332">"pertama"</item>
    <item msgid="5631923029483854900">"kedua"</item>
    <item msgid="148935502975250973">"ketiga"</item>
    <item msgid="5124200797326669172">"keempat"</item>
    <item msgid="7564374178324652137">"terakhir"</item>
  </string-array>
  <string-array name="response_labels1">
    <item msgid="5605392595848194997">"Tidak ada tanggapan"</item>
    <item msgid="3724434080904437698">"Ya"</item>
    <item msgid="8854145743148992583">"Mungkin"</item>
    <item msgid="6174292185978948873">"Tidak"</item>
  </string-array>
  <string-array name="delete_repeating_labels">
    <item msgid="4208432367651646938">"Hanya acara ini"</item>
    <item msgid="1536401639805370405">"Acara saat ini dan di masa mendatang"</item>
    <item msgid="7833229563617435430">"Semua acara"</item>
  </string-array>
  <string-array name="delete_repeating_labels_no_selected">
    <item msgid="1341910309321756150">"Acara &amp; mendatang ini"</item>
    <item msgid="6315440193748139854">"Semua acara"</item>
  </string-array>
  <string-array name="change_response_labels">
    <item msgid="3466644709343519437">"Hanya acara ini"</item>
    <item msgid="140670561403965380">"Semua acara dalam rangkaian"</item>
  </string-array>
  <string-array name="buttons_list">
    <item msgid="5917946202321434335">"Hari"</item>
    <item msgid="6248480754959562740">"Minggu"</item>
    <item msgid="4298472806133153766">"Bulan"</item>
    <item msgid="5033084974413793845">"Agenda"</item>
  </string-array>
  <string-array name="preferences_skip_reminders_labels">
    <item msgid="2285927842308686988">"Hanya jika ditolak"</item>
    <item msgid="6367412240524984286">"Jika ditolak atau tidak ditanggapi"</item>
  </string-array>
  <string-array name="recurrence_freq">
    <item msgid="3388478383574917007">"PENGULANGAN HARIAN"</item>
    <item msgid="6300824484048337842">"PENGULANGAN MINGGUAN"</item>
    <item msgid="189361731610816256">"PENGULANGAN BULANAN"</item>
    <item msgid="8714177874112569158">"PENGULANGAN TAHUNAN"</item>
  </string-array>
</resources>
