<?xml version="1.0" encoding="UTF-8"?>
<!-- 
  ~ Copyright (C) 2012 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="description_dialpad_back" msgid="8370856774250260053">"Вернуться"</string>
    <string name="description_dialpad_overflow" msgid="4853244877599437286">"Ещё"</string>
    <string name="description_delete_button" msgid="88733669653753441">"Клавиша Backspace."</string>
    <string name="description_image_button_plus" msgid="7821061347207448362">"плюс"</string>
    <string name="description_voicemail_button" msgid="6281470684653439120">"Голосовая почта."</string>
    <string name="default_notification_description" msgid="6011631627871110785">"Звук по умолчанию (<xliff:g id="DEFAULT_SOUND_TITLE">%1$s</xliff:g>)"</string>
    <string name="callFailed_userBusy" msgid="5163219086553610486">"Линия занята"</string>
    <string name="callFailed_congestion" msgid="3645995103907418337">"Сеть занята"</string>
    <string name="callFailed_timedOut" msgid="7772951976278867294">"Нет ответа, время ожидания истекло"</string>
    <string name="callFailed_server_unreachable" msgid="4766146133909799091">"Сервер недоступен"</string>
    <string name="callFailed_number_unreachable" msgid="1243366438388873914">"Номер недоступен"</string>
    <string name="callFailed_invalid_credentials" msgid="6115412108261660271">"Неверное имя пользователя или пароль"</string>
    <string name="callFailed_out_of_network" msgid="6970725831030399542">"Внешние вызовы запрещены"</string>
    <string name="callFailed_server_error" msgid="1391421251190688379">"Ошибка сервера. Повторите попытку позже."</string>
    <string name="callFailed_noSignal" msgid="1758972490451048086">"Нет сигнала"</string>
    <string name="callFailed_limitExceeded" msgid="8796663077702587664">"Превышен лимит ACM"</string>
    <string name="callFailed_powerOff" msgid="9179061328562234362">"Приемопередатчик выключен"</string>
    <string name="callFailed_simError" msgid="3307159523385380486">"Ошибка SIM-карты или SIM-карта не установлена"</string>
    <string name="callFailed_outOfService" msgid="4535901975891969115">"Мобильная сеть недоступна"</string>
    <string name="callFailed_fdn_only" msgid="1720606112619022283">"Вы можете звонить только на номера из списка разрешенных."</string>
    <string name="callFailed_dialToUssd" msgid="2093563828737170617">"DIAL-запрос преобразован в USSD-запрос."</string>
    <string name="callFailed_dialToSs" msgid="3144952834772702469">"DIAL-запрос преобразован в SS-запрос."</string>
    <string name="callFailed_dialToDial" msgid="1143052062100334634">"DIAL-запрос преобразован в другой DIAL-запрос с измененным номером телефона."</string>
    <string name="callFailed_cb_enabled" msgid="4745550615395092407">"Включен запрет вызовов"</string>
    <string name="callFailed_dsac_restricted" msgid="4087941056515103695">"В вашем домене запрещено выполнять вызовы"</string>
    <string name="callFailed_dsac_restricted_emergency" msgid="9031535611092828510">"В вашем домене запрещено выполнять экстренные вызовы"</string>
    <string name="callFailed_dsac_restricted_normal" msgid="266947632344387216">"В вашем домене запрещено звонить на обычные номера"</string>
    <string name="callFailed_unobtainable_number" msgid="124621797631734731">"Неверный номер"</string>
    <string name="incall_error_missing_voicemail_number" msgid="3651090591812220874">"Неизвестный номер голосовой почты."</string>
    <string name="callFailed_video_call_tty_enabled" msgid="186585701668604271">"Когда телетайп включен, видеозвонки недоступны."</string>
    <string name="callEnded_pulled" msgid="437630601519502587">"Вызов перенесен на другое устройство."</string>
    <string name="ringtone_silent" msgid="249805466934178869">"Нет"</string>
    <string name="ringtone_unknown" msgid="2303463713486734520">"Мелодия не найдена"</string>
    <string name="callFailed_maximum_reached" msgid="4823790040422765056">"Все доступные линии заняты. Чтобы позвонить, отключите один из вызовов на этом или другом устройстве."</string>
    <string name="callFailed_data_disabled" msgid="3885826754435317856">"Звонок завершен, так как отключен режим мобильных данных."</string>
    <string name="callFailed_data_limit_reached_description" msgid="1439284832802552582">"Вызов завершен, так как достигнут лимит трафика мобильных данных."</string>
    <string name="callFailed_data_limit_reached" msgid="7045770594965160282">"Достигнут лимит трафика мобильных данных. Вызов завершен."</string>
</resources>
