<?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="applicationLabel" msgid="2896013994591816355">"Телефон"</string>
    <string name="launcherDialer" msgid="4812615012439839668">"Телефон"</string>
    <string name="dialerIconLabel" msgid="6452903404967127043">"Телефон"</string>
    <string name="recentCallsIconLabel" msgid="5907257356627356916">"Евиденција позива"</string>
    <string name="menu_sendTextMessage" msgid="3595115037800019790">"Пошаљи текстуалну поруку"</string>
    <string name="recentCalls_callNumber" msgid="3515599302039524481">"Позови <xliff:g id="NAME">%s</xliff:g>"</string>
    <string name="recentCalls_editNumberBeforeCall" msgid="2135159627866994026">"Измени број пре позива"</string>
    <string name="recentCalls_addToContact" msgid="3461703895193177303">"Додај у контакте"</string>
    <string name="recentCalls_removeFromRecentList" msgid="7691127430328165825">"Уклони из евиденције позива"</string>
    <string name="recentCalls_deleteAll" msgid="5940657691419101776">"Обриши евиденцију позива"</string>
    <string name="recentCalls_trashVoicemail" msgid="8564377061038549002">"Избриши говорну поруку"</string>
    <string name="recentCalls_shareVoicemail" msgid="7039805601642115775">"Дели говорну поруку"</string>
    <string name="recentCalls_empty" msgid="2475657296340964771">"Евиденција позива је празна."</string>
    <string name="clearCallLogConfirmation_title" msgid="8437942116681120680">"Обрисати евиденцију позива?"</string>
    <string name="clearCallLogConfirmation" msgid="3049814863802377048">"Све евиденције позива биће избрисане."</string>
    <string name="clearCallLogProgress_title" msgid="4967754518175652306">"Брисање евиденције позива..."</string>
  <plurals name="notification_voicemail_title">
    <item quantity="one" msgid="7337617129792669763">"Говорна порука"</item>
    <item quantity="other" msgid="7909053058399879093">"Говорних порука: <xliff:g id="COUNT">%1$d</xliff:g>"</item>
  </plurals>
    <string name="notification_action_voicemail_play" msgid="6479729974823808963">"Пусти"</string>
    <string name="notification_voicemail_callers_list" msgid="7275857613463950729">"<xliff:g id="NEWER_CALLERS">%1$s</xliff:g>, <xliff:g id="OLDER_CALLER">%2$s</xliff:g>"</string>
    <string name="notification_new_voicemail_ticker" msgid="773612832096153276">"Нова говорна порука од: <xliff:g id="CALLER">%1$s</xliff:g>"</string>
    <string name="voicemail_playback_error" msgid="3745094029143083237">"Није било могуће пустити говорну пошту."</string>
    <string name="voicemail_buffering" msgid="3471857802985075286">"Баферовање…"</string>
    <string name="voicemail_fetching_content" msgid="7304127676344948616">"Преузимање говорне поште..."</string>
    <string name="voicemail_fetching_timout" msgid="6552711420422790440">"Није било могуће преузети говорну пошту."</string>
    <string name="call_log_new_header" msgid="8880520605610950591">"Ново"</string>
    <string name="call_log_old_header" msgid="5378037070074806149">"Старије"</string>
    <string name="call_log_voicemail_header" msgid="1656430490229372168">"Само позиви са говорном поштом"</string>
    <string name="call_log_incoming_header" msgid="4514259481080897711">"Само долазни позиви"</string>
    <string name="call_log_outgoing_header" msgid="378663994725907738">"Само одлазни позиви"</string>
    <string name="call_log_missed_header" msgid="5446439128157203772">"Само пропуштени позиви"</string>
    <string name="voicemail_status_voicemail_not_available" msgid="5416272416842129144">"Није могућа веза са сервером говорне поште."</string>
    <string name="voicemail_status_messages_waiting" msgid="4458458132507579370">"Није могућа веза са сервером. Нове говорне поруке су на чекању."</string>
    <string name="voicemail_status_configure_voicemail" msgid="8634314832269048952">"Подесите говорну пошту."</string>
    <string name="voicemail_status_audio_not_available" msgid="3238711781241004997">"Звук није доступан."</string>
    <string name="voicemail_status_action_configure" msgid="6294251161130772427">"Подеси"</string>
    <string name="voicemail_status_action_call_server" msgid="5905306807691863100">"Позови говорну пошту"</string>
    <string name="voicemail_speed_slowest" msgid="4253243787222323405">"Најмања брзина"</string>
    <string name="voicemail_speed_slower" msgid="4776579878006616930">"Мала брзина"</string>
    <string name="voicemail_speed_normal" msgid="5467566844006749402">"Нормална брзина"</string>
    <string name="voicemail_speed_faster" msgid="533959523242789518">"Велика брзина"</string>
    <string name="voicemail_speed_fastest" msgid="7495589683231751304">"Највећа брзина"</string>
    <string name="call_log_item_count_and_date" msgid="6348558252438448946">"(<xliff:g id="COUNT">%1$d</xliff:g>) <xliff:g id="DATE">%2$s</xliff:g>"</string>
</resources>
