<?xml version="1.0" encoding="UTF-8"?>
<!-- 
  ~ Copyright (C) 2019 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">
    <plurals name="notification_new_message" formatted="false" msgid="1631343923556571689">
      <item quantity="one">%d nova mensagem</item>
      <item quantity="other">%d novas mensagens</item>
    </plurals>
    <string name="action_play" msgid="1884580550634079470">"Ouvir"</string>
    <string name="action_mark_as_read" msgid="5185216939940407938">"Marcar como lida"</string>
    <string name="action_repeat" msgid="8184323082093728957">"Repetir"</string>
    <string name="action_reply" msgid="564106590567600685">"Responder"</string>
    <string name="action_stop" msgid="6950369080845695405">"Parar"</string>
    <string name="action_close_messages" msgid="7949295965012770696">"Fechar"</string>
    <string name="auto_reply_failed_message" msgid="6445984971657465627">"Não foi possível enviar a resposta. Tente novamente."</string>
    <string name="auto_reply_device_disconnected" msgid="5861772755278229950">"Não foi possível enviar a resposta. Dispositivo não conectado."</string>
    <string name="tts_sender_says" msgid="5352698006545359668">"%s disse"</string>
    <string name="tts_failed_toast" msgid="1483313550894086353">"Não é possível ler a mensagem em voz alta."</string>
    <string name="reply_message_display_template" msgid="6348622926232346974">"\"%s\""</string>
    <string name="message_sent_notice" msgid="7172592196465284673">"Resposta enviada para %s"</string>
    <string name="name_not_available" msgid="3800013092212550915">"Nome indisponível"</string>
</resources>
