<?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">1ଟି ନୂଆ ମେସେଜ୍</item>
    </plurals>
    <string name="manage_text" msgid="4225197445283791757">"ପରିଚାଳନା କରନ୍ତୁ"</string>
</resources>
