<?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">"Paziņojums"</item>
    <item msgid="1751151680520784746">"E-pasts"</item>
    <item msgid="2658001219380695677">"Īsziņa"</item>
    <item msgid="7926918288165444873">"Signāls"</item>
  </string-array>
  <string-array name="reminder_minutes_labels">
    <item msgid="2416970002377237011">"0 minūšu"</item>
    <item msgid="6681865010714743948">"1 minūte"</item>
    <item msgid="2327505114623595779">"5 minūtes"</item>
    <item msgid="1657410063332547113">"10 minūtes"</item>
    <item msgid="366087535181197780">"15 minūtes"</item>
    <item msgid="6252612791145061929">"20 minūtes"</item>
    <item msgid="7896694531989090700">"25 minūtes"</item>
    <item msgid="8754510169374808607">"30 minūtes"</item>
    <item msgid="3113380274218454394">"45 minūtes"</item>
    <item msgid="8546646645868526283">"1 stunda"</item>
    <item msgid="6467845211024768872">"2 stundas"</item>
    <item msgid="8201677619511076575">"3 stundas"</item>
    <item msgid="7172504281650128893">"12 stundas"</item>
    <item msgid="9114286702181482496">"24 stundas"</item>
    <item msgid="3107009344872997366">"2 dienas"</item>
    <item msgid="6135563708172153696">"1 nedēļa"</item>
  </string-array>
  <string-array name="preferences_default_reminder_labels">
    <item msgid="7495163916242649023">"Nav"</item>
    <item msgid="5883344836499335043">"0 minūšu"</item>
    <item msgid="4354350447805231188">"1 minūte"</item>
    <item msgid="265674592625309858">"5 minūtes"</item>
    <item msgid="8011089417728419666">"10 minūtes"</item>
    <item msgid="6177098581805412986">"15 minūtes"</item>
    <item msgid="356346660503078923">"20 minūtes"</item>
    <item msgid="992592434377054063">"25 minūtes"</item>
    <item msgid="9191353668596201944">"30 minūtes"</item>
    <item msgid="1192985682962908244">"45 minūtes"</item>
    <item msgid="1694315499429259938">"1 stunda"</item>
    <item msgid="8281019320591769635">"2 stundas"</item>
    <item msgid="2062931719019287773">"3 stundas"</item>
    <item msgid="4086495711621133006">"12 stundas"</item>
    <item msgid="3172669681920709561">"24 stundas"</item>
    <item msgid="5557836606782821910">"2 dienas"</item>
    <item msgid="8336577387266744930">"1 nedēļa"</item>
  </string-array>
  <string-array name="preferences_week_start_day_labels">
    <item msgid="986150274035512339">"Lokalizācijas noklusējums"</item>
    <item msgid="134027225275475280">"Sestdiena"</item>
    <item msgid="95029346069903091">"Svētdiena"</item>
    <item msgid="5840983116375063739">"Pirmdiena"</item>
  </string-array>
  <string-array name="availability">
    <item msgid="454869065893453189">"Aizņemts"</item>
    <item msgid="6228387173725732140">"Pieejams"</item>
    <item msgid="2064426942462573474">"Pagaidu"</item>
  </string-array>
  <string-array name="visibility">
    <item msgid="3035788428581513163">"Noklusējums"</item>
    <item msgid="5200216103966973369">"Privāts"</item>
    <item msgid="9182342638433672664">"Publisks"</item>
  </string-array>
  <string-array name="ordinal_labels">
    <item msgid="2693927956303125332">"pirmā"</item>
    <item msgid="5631923029483854900">"otrā"</item>
    <item msgid="148935502975250973">"trešā"</item>
    <item msgid="5124200797326669172">"ceturtā"</item>
    <item msgid="7564374178324652137">"pēdējā"</item>
  </string-array>
  <string-array name="response_labels1">
    <item msgid="5605392595848194997">"Nav atbildes"</item>
    <item msgid="3724434080904437698">"Jā"</item>
    <item msgid="8854145743148992583">"Varbūt"</item>
    <item msgid="6174292185978948873">"Nē"</item>
  </string-array>
  <string-array name="delete_repeating_labels">
    <item msgid="4208432367651646938">"Tikai šo pasākumu"</item>
    <item msgid="1536401639805370405">"Šis un nākamie pasākumi"</item>
    <item msgid="7833229563617435430">"Visus pasākumus"</item>
  </string-array>
  <string-array name="delete_repeating_labels_no_selected">
    <item msgid="1341910309321756150">"Šo un nākamos pasākumus"</item>
    <item msgid="6315440193748139854">"Visus pasākumus"</item>
  </string-array>
  <string-array name="change_response_labels">
    <item msgid="3466644709343519437">"Tikai šis pasākums"</item>
    <item msgid="140670561403965380">"Visus virknes pasākumus"</item>
  </string-array>
  <string-array name="buttons_list">
    <item msgid="5917946202321434335">"Diena"</item>
    <item msgid="6248480754959562740">"Nedēļa"</item>
    <item msgid="4298472806133153766">"Mēnesis"</item>
    <item msgid="5033084974413793845">"Darba kārtība"</item>
  </string-array>
  <string-array name="preferences_skip_reminders_labels">
    <item msgid="2285927842308686988">"Tikai tad, ja tiek noraidīti"</item>
    <item msgid="6367412240524984286">"Ja tiek noraidīti vai ignorēti"</item>
  </string-array>
  <string-array name="recurrence_freq">
    <item msgid="3388478383574917007">"ATKĀRTOT KATRU DIENU"</item>
    <item msgid="6300824484048337842">"ATKĀRTOT KATRU NED."</item>
    <item msgid="189361731610816256">"ATKĀRTOT KATRU MĒN."</item>
    <item msgid="8714177874112569158">"ATKĀRTOT KATRU GADU"</item>
  </string-array>
</resources>
