<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2020 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">
    <!-- no translation found for cmas_extreme_alert (8930893242227527613) -->
    <skip />
    <!-- no translation found for cmas_extreme_immediate_observed_alert (3037852378370476280) -->
    <skip />
    <!-- no translation found for cmas_extreme_immediate_likely_alert (5388568769567706023) -->
    <skip />
    <!-- no translation found for enable_cmas_extreme_threat_alerts_title (4190349287603327927) -->
    <skip />
    <string name="alerts_header_summary" msgid="5963536832729208581">"Uporabnik lahko prejme sporočila s kritičnimi opozorili ne glede na svoje nastavitve"</string>
    <string name="enable_cmas_test_alerts_title" msgid="7658007515811137035">"Preizkusna sporočila"</string>
</resources>
