<?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">
    <string name="cmas_amber_alert" msgid="8487743009781574082">"GR-Alert: Amber எச்சரிக்கை"</string>
    <string name="cmas_presidential_level_alert" msgid="6341018911042907130">"GR-Alert: பிரசிடெண்ட்ஷியல் எச்சரிக்கை"</string>
    <string name="cmas_extreme_alert" msgid="7989498696890004631">"GR-Alert: தீவிரமான எச்சரிக்கை"</string>
    <string name="cmas_extreme_immediate_observed_alert" msgid="3810446910355766140">"GR-Alert: தீவிரமான எச்சரிக்கை"</string>
    <string name="cmas_extreme_immediate_likely_alert" msgid="4723844134984591798">"GR-Alert: தீவிரமான எச்சரிக்கை"</string>
    <string name="cmas_severe_alert" msgid="3002006180717551407">"GR-Alert: அதிதீவிர எச்சரிக்கை"</string>
</resources>
