<?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">"പ്ലേ ചെയ്യുക"</string>
    <string name="action_mute_short" msgid="5239851786101022633">"മ്യൂട്ട് ചെയ്യുക"</string>
    <string name="action_mute_long" msgid="6846675719189989477">"സംഭാഷണം മ്യൂട്ട് ചെയ്യുക"</string>
    <string name="action_unmute_short" msgid="7157822835069715986">"അൺമ്യൂട്ട് ചെയ്യുക"</string>
    <string name="action_unmute_long" msgid="22482625837159466">"സംഭാഷണം അൺമ്യൂട്ട് ചെയ്യുക"</string>
    <string name="action_canned_reply" msgid="4045960823021872834">"\"ഞാനിപ്പോൾ ഡ്രൈവ് ചെയ്യുകയാണ്.\""</string>
    <string name="canned_reply_message" msgid="7959257272917598063">"ഞാനിപ്പോൾ ഡ്രൈവ് ചെയ്യുകയാണ്."</string>
    <string name="toast_message_sent_success" msgid="1159956191974273064">"സന്ദേശം വിജയകരമായി അയച്ചു."</string>
    <string name="notification_service_label" msgid="7512186049723777468">"കാർ അറിയിപ്പ് ലിസണർ സേവനം"</string>
    <string name="notifications" msgid="2865534625906329283">"അറിയിപ്പ് കേന്ദ്രം"</string>
    <string name="clear_all" msgid="1845314281571237722">"എല്ലാം മായ്‌ക്കുക"</string>
    <string name="ellipsized_string" msgid="6993649229498857557">"…"</string>
    <string name="show_more" msgid="7291378544926443344">"കൂടുതൽ കാണിക്കുക"</string>
    <string name="notification_header" msgid="324550431063568049">"അറിയിപ്പുകൾ"</string>
    <string name="empty_notification_header" msgid="4928379791607839720">"അറിയിപ്പുകൾ ഒന്നുമില്ല"</string>
    <string name="show_less" msgid="7342677676229302829">"കുറച്ച് കാണിക്കുക"</string>
    <string name="show_count_more" msgid="480555295700318609">"<xliff:g id="COUNT">%d</xliff:g> കൂടുതൽ കാണിക്കുക"</string>
    <string name="message_unshown_count" msgid="2234421277246741233">" +<xliff:g id="COUNT">%d</xliff:g> കൂടുതൽ"</string>
    <plurals name="restricted_message_text" formatted="false" msgid="507312322886633308">
      <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> പുതിയ സന്ദേശങ്ങൾ</item>
      <item quantity="one">ഒരു പുതിയ സന്ദേശം</item>
    </plurals>
    <string name="manage_text" msgid="4225197445283791757">"മാനേജ് ചെയ്യുക"</string>
</resources>
