<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2011 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="app_label" msgid="2102435118079140813">"Тестове на клетъчното излъчване"</string>
    <string name="button_etws_normal_type" msgid="3852703138521119537">"Изпращане на нормално излъчване от системата за предупреждение за земетресения и цунами"</string>
    <string name="button_etws_cancel_type" msgid="7194264116649371175">"Изпращане на анулиращо излъчване от системата за предупреждение за земетресения и цунами"</string>
    <string name="button_etws_test_type" msgid="6353906188028139901">"Изпращане на тестово излъчване от системата за предупреждение за земетресения и цунами"</string>
    <string name="button_cmas_pres_alert" msgid="5905111586384766558">"Изпращане на сигнал от президента чрез системата за сигнали чрез мобилните мрежи"</string>
    <string name="button_cmas_extreme_alert" msgid="6111658124447111920">"Изпращане на сигнал за извънредна заплаха чрез системата за сигнали чрез мобилните мрежи"</string>
    <string name="button_cmas_severe_alert" msgid="9051731172452500819">"Изпращане на сигнал за сериозна заплаха чрез системата за сигнали чрез мобилните мрежи"</string>
    <string name="button_cmas_amber_alert" msgid="4217147800913845288">"Изпращане на сигнал за изчезнало дете чрез системата за сигнали чрез мобилните мрежи"</string>
    <string name="button_cmas_monthly_test" msgid="1609320625517248393">"Изпращане на месечен тестов сигнал чрез системата за сигнали чрез мобилните мрежи"</string>
    <string name="button_gsm_7bit_type" msgid="4757698592787955850">"Изпращане на 7-битово тестово излъчване чрез GSM"</string>
    <string name="button_gsm_7bit_umts_type" msgid="4377077702628367387">"Изпращане на 7-битово тестово излъчване чрез универсална мобилна телекомуникационна услуга"</string>
    <string name="button_gsm_7bit_nopadding_type" msgid="5289528095948674862">"Изпращане на 7-битово пълнометражно излъчване чрез GSM"</string>
    <string name="button_gsm_7bit_nopadding_umts_type" msgid="7953047238483884846">"Изпращане на 7-битово пълнометражно излъчване чрез универсална мобилна телекомуникационна услуга"</string>
    <string name="button_gsm_7bit_multipage_type" msgid="8516540964071070491">"Изпращане на 7-битово излъчване в няколко страници чрез GSM"</string>
    <string name="button_gsm_7bit_multipage_umts_type" msgid="474883728254547100">"Изпращане на 7-битово излъчване в няколко страници чрез универсална мобилна телекомуникационна услуга"</string>
    <string name="button_gsm_7bit_with_language_type" msgid="7414138913180046493">"Изпращане на 7-битов SMS на даден език чрез GSM"</string>
    <string name="button_gsm_7bit_with_language_body_gsm_type" msgid="7365993929355114874">"Изпращане на 7-битов SMS в основния текст на даден език чрез GSM"</string>
    <string name="button_gsm_7bit_with_language_body_umts_type" msgid="1201329758881885921">"Изпращане на 7-битов SMS на даден език чрез универсална мобилна телекомуникационна услуга"</string>
    <string name="button_gsm_ucs2_type" msgid="6652864601384080678">"Изпращане на тестово излъчване в UCS-2 чрез GSM"</string>
    <string name="button_gsm_ucs2_umts_type" msgid="2985879481785569626">"Изпращане на тестово излъчване в UCS-2 чрез универсална мобилна телекомуникационна услуга"</string>
    <string name="button_gsm_ucs2_multipage_umts_type" msgid="4557772309524939206">"Изпращане на излъчване в няколко страници в UCS-2 чрез универсална мобилна телекомуникационна услуга"</string>
    <string name="button_gsm_ucs2_with_language_type" msgid="8992961254390480388">"Изпращане на SMS в UCS-2 на даден език"</string>
    <string name="button_gsm_ucs2_with_language_umts_type" msgid="1080788762601688380">"Изпращане на SMS в UCS-2 на даден език чрез универсална мобилна телекомуникационна услуга (UMTS)"</string>
    <string name="button_delay_broadcast" msgid="5138650276363839541">"5-секундно забавяне преди изпращане"</string>
    <string name="message_id_label" msgid="4365322663037110887">"Идент. № на съобщението:"</string>
</resources>
