<?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">"Cell Broadcast-test"</string>
    <string name="button_etws_normal_type" msgid="3852703138521119537">"Skicka en normal sändning från ETWS (Earthquake and Tsunami Warning System)"</string>
    <string name="button_etws_cancel_type" msgid="7194264116649371175">"Skicka ETWS avbryt sändning"</string>
    <string name="button_etws_test_type" msgid="6353906188028139901">"Skicka ETWS testsändning"</string>
    <string name="button_cmas_pres_alert" msgid="5905111586384766558">"Skicka varningar utfärdade av presidenten via CMAS"</string>
    <string name="button_cmas_extreme_alert" msgid="6111658124447111920">"Skicka varningar om extrem fara via CMAS"</string>
    <string name="button_cmas_severe_alert" msgid="9051731172452500819">"Skicka varningar om allvarlig fara via CMAS"</string>
    <string name="button_cmas_amber_alert" msgid="4217147800913845288">"Skicka AMBER-meddelanden via CMAS"</string>
    <string name="button_cmas_monthly_test" msgid="1609320625517248393">"Skicka månatliga testvarningar via CMAS"</string>
    <string name="button_gsm_7bit_type" msgid="4757698592787955850">"Skicka GSM 7-bitars testsändning"</string>
    <string name="button_gsm_7bit_umts_type" msgid="4377077702628367387">"Skicka UMTS 7-bitars testsändning"</string>
    <string name="button_gsm_7bit_nopadding_type" msgid="5289528095948674862">"Skicka GSM 7-bitars fullängdssändning"</string>
    <string name="button_gsm_7bit_nopadding_umts_type" msgid="7953047238483884846">"Skicka UMTS 7-bitars fullängdssändning"</string>
    <string name="button_gsm_7bit_multipage_type" msgid="8516540964071070491">"Skicka GSM 7-bitars flersidig sändning"</string>
    <string name="button_gsm_7bit_multipage_umts_type" msgid="474883728254547100">"Skicka UMTS 7-bitars flersidig sändning"</string>
    <string name="button_gsm_7bit_with_language_type" msgid="7414138913180046493">"Skicka GSM 7-bitars med språk"</string>
    <string name="button_gsm_7bit_with_language_body_gsm_type" msgid="7365993929355114874">"Skicka GSM 7-bitars med språkkoden i brödtexten"</string>
    <string name="button_gsm_7bit_with_language_body_umts_type" msgid="1201329758881885921">"Skicka UMTS 7-bitars med språk"</string>
    <string name="button_gsm_ucs2_type" msgid="6652864601384080678">"Skicka GSM UCS-2 testsändning"</string>
    <string name="button_gsm_ucs2_umts_type" msgid="2985879481785569626">"Skicka UMTS UCS-2 testsändning"</string>
    <string name="button_gsm_ucs2_multipage_umts_type" msgid="4557772309524939206">"Skicka UMTS UCS-2 flersidig sändning"</string>
    <string name="button_gsm_ucs2_with_language_type" msgid="8992961254390480388">"Skicka GSM UCS-2 med språk"</string>
    <string name="button_gsm_ucs2_with_language_umts_type" msgid="1080788762601688380">"Skicka UMTS UCS-2 med språk"</string>
    <string name="button_delay_broadcast" msgid="5138650276363839541">"Fördröj 5 sekunder före sändning"</string>
    <string name="message_id_label" msgid="4365322663037110887">"Meddelande-ID:"</string>
</resources>
