<?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="phoneAppLabel" product="tablet" msgid="4304896407232136185">"Мабільная перадача даных"</string>
    <string name="phoneAppLabel" product="default" msgid="2519341656721644038">"Тэлефонныя службы"</string>
    <string name="emergencyDialerIconLabel" msgid="7373355740508369750">"Набіральнік нумара для экстранных сітуацый"</string>
    <string name="fdnListLabel" msgid="5034563979654950274">"Спіс фіксаваных нумароў"</string>
    <string name="simContacts_title" msgid="4391084959219666947">"Выберыце кантакты для імпарту"</string>
    <string name="gsm_umts_options" msgid="1113500053403490666">"Параметры GSM/UMTS"</string>
    <string name="cdma_options" msgid="4492063023149886710">"Параметры CDMA"</string>
    <string name="call_settings" msgid="8152058602760531097">"Налады выклікаў"</string>
    <string name="labelCF" msgid="2140733390678280443">"Пераадрасацыя выкліку"</string>
    <string name="labelCallBarring" msgid="8300927675522420184">"Забарона выкліку"</string>
    <string name="labelGSMMore" msgid="4048734049263392253">"Налады выклікаў GSM"</string>
    <string name="fdn" msgid="1080701466751913822">"Фіксаваныя нумары"</string>
    <string name="get_pin2" msgid="5519152040805796508">"Увядзіце код PIN2"</string>
    <string name="delete_fdn_contact" msgid="4232462795352020296">"Выдаліць фіксаваны нумар"</string>
    <string name="enable_pin" msgid="5266421421847399987">"Уключэнне/адключэнне PIN-коду SIM-карты"</string>
    <string name="change_pin" msgid="7219696137781706635">"Змена PIN-кода SIM-карты"</string>
    <string name="accessibility_settings_activity_title" msgid="1948510182681531251">"Спецыяльныя магчымасці"</string>
    <string name="ecm_exit_dialog" msgid="5718252559378968754">"EcmExitDialog"</string>
    <string name="sip_connection_service_label" msgid="6852349516774218961">"Убудаваная SIP-тэлефанія"</string>
    <string name="phone_accounts" msgid="6930293131442022860">"Уліковыя запісы для выклікаў"</string>
    <string name="voicemail" msgid="9083239047687566742">"Галасавая пошта"</string>
    <string name="pstn_connection_service_label" msgid="8160589738201280253">"Убудаваныя SIM-карты"</string>
    <string name="phone_info_label" product="tablet" msgid="8816614547088739126">"Інфармацыя аб планшэце"</string>
    <string name="phone_info_label" product="default" msgid="3123311719257053162">"Звесткі аб тэлефоне"</string>
    <string name="band_mode_title" msgid="681256838654706936">"Задаць рэжым радыёдыяпазону"</string>
</resources>
