<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2022 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="cmas_presidential_level_alert" msgid="7877341103742233094">"FR-ALERT: Правителствен сигнал"</string>
    <string name="cmas_extreme_alert" msgid="2584151399464241888">"FR-ALERT : Сигнал за извънредна заплаха"</string>
    <string name="cmas_severe_alert" msgid="9149520947951402872">"FR-ALERT: Сигнал за сериозна заплаха"</string>
    <string name="public_safety_message" msgid="5860178069821018697">"FR-ALERT: Предупреждение"</string>
    <string name="cmas_amber_alert" msgid="6428083238223852662">"FR-ALERT: Сигнал за отвличане на човек"</string>
    <string name="cmas_required_monthly_test" msgid="3216225136685938963">"FR-ALERT: Тест"</string>
    <string name="cmas_exercise_alert" msgid="6540820517122545556">"FR-ALERT: Обучение"</string>
    <string name="enable_cmas_extreme_threat_alerts_title" msgid="1268433786689479357">"Сигнали за извънредни заплахи (ниво 2)"</string>
    <string name="enable_cmas_extreme_threat_alerts_summary" msgid="6125474083043183037">"Показване на съобщения за сигнали за извънредни заплахи"</string>
    <string name="enable_cmas_severe_threat_alerts_title" msgid="6185770513604614548">"Сигнали за сериозни заплахи (ниво 3)"</string>
    <string name="enable_cmas_severe_threat_alerts_summary" msgid="3073259381449390054">"Показване на съобщения за сигнали за сериозни заплахи"</string>
    <string name="enable_public_safety_messages_title" msgid="4231398452970069457">"Предупреждения (ниво 4)"</string>
    <string name="enable_public_safety_messages_summary" msgid="1691623841627340948">"Показване на предупредителни съобщения"</string>
    <string name="enable_cmas_amber_alerts_title" msgid="4087727029650572978">"Сигнал за отвличане на човек"</string>
    <string name="enable_cmas_amber_alerts_summary" msgid="2375767662238080247">"Показване на съобщения за сигнали за отвличания на деца"</string>
    <string name="enable_cmas_test_alerts_title" msgid="730591674839718588">"FR-Alert: Тест"</string>
    <string name="enable_cmas_test_alerts_summary" msgid="6208243265914357932">"Показване на тестови съобщения"</string>
    <string name="enable_exercise_test_alerts_title" msgid="8961707963450012289">"Fr-Alert: Обучение"</string>
    <string name="enable_exercise_test_alerts_summary" msgid="8611222204116539840">"Показване на съобщения с цел обучение"</string>
</resources>
