<?xml version="1.0" encoding="UTF-8"?>
<!-- 
    Copyright (C) 2018 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="assist_action_play_label" msgid="6278705468288338172">"Luaj"</string>
    <string name="action_mute_short" msgid="5239851786101022633">"Pa zë"</string>
    <string name="action_mute_long" msgid="6846675719189989477">"Çaktivizo bisedën"</string>
    <string name="action_unmute_short" msgid="7157822835069715986">"Aktivizo audion"</string>
    <string name="action_unmute_long" msgid="22482625837159466">"Anulo heqjen e zërit të bisedës"</string>
    <string name="action_canned_reply" msgid="4045960823021872834">"\"Jam në timon tani.\""</string>
    <string name="canned_reply_message" msgid="7959257272917598063">"Jam në timon tani."</string>
    <string name="toast_message_sent_success" msgid="1159956191974273064">"Mesazhi u dërgua me sukses."</string>
    <string name="notification_service_label" msgid="7512186049723777468">"Shërbimi i dëgjuesit të njoftimit të makinës"</string>
    <string name="notifications" msgid="2865534625906329283">"Qendra e njoftimeve"</string>
    <string name="clear_all" msgid="1845314281571237722">"Pastro të gjitha"</string>
    <string name="ellipsized_string" msgid="6993649229498857557">"…"</string>
    <string name="show_more" msgid="7291378544926443344">"Shfaq më shumë"</string>
    <string name="notification_header" msgid="324550431063568049">"Njoftime"</string>
    <string name="empty_notification_header" msgid="4928379791607839720">"Asnjë njoftim"</string>
    <string name="show_less" msgid="7342677676229302829">"Shfaq më pak"</string>
    <string name="show_count_more" msgid="480555295700318609">"Shfaq <xliff:g id="COUNT">%d</xliff:g> më shumë"</string>
    <string name="message_unshown_count" msgid="2234421277246741233">" +<xliff:g id="COUNT">%d</xliff:g> më shumë"</string>
    <plurals name="restricted_message_text" formatted="false" msgid="507312322886633308">
      <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> mesazhe të reja</item>
      <item quantity="one">1 mesazh i ri</item>
    </plurals>
    <string name="manage_text" msgid="4225197445283791757">"Menaxho"</string>
</resources>
