<?xml version="1.0" encoding="UTF-8"?>
<!-- 
    Copyright (C) 2015 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="empty_subject_strings">
    <item msgid="8900116186849071724">"без наслов"</item>
    <item msgid="272485471009191934">"без тема"</item>
  </string-array>
  <string-array name="notification_reply_choices">
    <item msgid="1875991048685328264">"Да"</item>
    <item msgid="6049132459802288033">"Не"</item>
    <item msgid="3084376867445867895">"Во ред"</item>
    <item msgid="3155097332660174689">"Хехе"</item>
    <item msgid="2611328818571146775">"Фала"</item>
    <item msgid="4881335087096496747">"Се согласувам"</item>
    <item msgid="2422296858597420738">"Убаво"</item>
    <item msgid="4805581752819452687">"На пат сум"</item>
    <item msgid="4746700499431366214">"Во ред, ќе ти јавам подоцна"</item>
    <item msgid="4342041517788201970">":)"</item>
    <item msgid="7439437911747961187">":("</item>
  </string-array>
</resources>
