<?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">"Date mobile"</string>
    <string name="phoneAppLabel" product="default" msgid="2519341656721644038">"Telefon – Servicii"</string>
    <string name="emergencyDialerIconLabel" msgid="7373355740508369750">"Tastatură de telefon de urgență"</string>
    <string name="fdnListLabel" msgid="5034563979654950274">"Listă NAR"</string>
    <string name="simContacts_title" msgid="4391084959219666947">"Selectați persoane de contact pentru import"</string>
    <string name="gsm_umts_options" msgid="1113500053403490666">"Opțiuni GSM/UMTS"</string>
    <string name="cdma_options" msgid="4492063023149886710">"Opțiuni CDMA"</string>
    <string name="call_settings" msgid="8152058602760531097">"Setări pentru apeluri"</string>
    <string name="labelCF" msgid="2140733390678280443">"Redirecționare apeluri"</string>
    <string name="labelCallBarring" msgid="8300927675522420184">"Restricționarea apelurilor"</string>
    <string name="labelGSMMore" msgid="4048734049263392253">"Setările apelului GSM"</string>
    <string name="fdn" msgid="1080701466751913822">"Numere apeluri restricționate"</string>
    <string name="get_pin2" msgid="5519152040805796508">"Introduceți codul PIN2"</string>
    <string name="delete_fdn_contact" msgid="4232462795352020296">"Ștergeți numărul pentru apeluri restricționate"</string>
    <string name="enable_pin" msgid="5266421421847399987">"Activați/dezactivați codul PIN al cardului SIM"</string>
    <string name="change_pin" msgid="7219696137781706635">"Schimbați codul PIN pentru SIM"</string>
    <string name="accessibility_settings_activity_title" msgid="1948510182681531251">"Accesibilitate"</string>
    <string name="ecm_exit_dialog" msgid="5718252559378968754">"EcmExitDialog"</string>
    <string name="sip_connection_service_label" msgid="6852349516774218961">"Apelare SIP integrată"</string>
    <string name="phone_accounts" msgid="6930293131442022860">"Conturi pentru apelare"</string>
    <string name="voicemail" msgid="9083239047687566742">"Mesagerie vocală"</string>
    <string name="pstn_connection_service_label" msgid="8160589738201280253">"Carduri SIM încorporate"</string>
    <string name="phone_info_label" product="tablet" msgid="8816614547088739126">"Informații tabletă"</string>
    <string name="phone_info_label" product="default" msgid="3123311719257053162">"Informații telefon"</string>
    <string name="band_mode_title" msgid="681256838654706936">"Setați Modul bandă radio"</string>
</resources>
