<?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">"Kiezer"</string>
    <string name="launcherDialer" msgid="4812615012439839668">"Telefoon"</string>
    <string name="dialerIconLabel" msgid="6452903404967127043">"Telefoon"</string>
    <string name="recentCallsIconLabel" msgid="5907257356627356916">"Oproeplogboek"</string>
    <string name="menu_sendTextMessage" msgid="3595115037800019790">"Sms verzenden"</string>
    <string name="recentCalls_callNumber" msgid="3515599302039524481">"<xliff:g id="NAME">%s</xliff:g> bellen"</string>
    <string name="recentCalls_editNumberBeforeCall" msgid="2135159627866994026">"Nummer bewerken voor bellen"</string>
    <string name="recentCalls_addToContact" msgid="3461703895193177303">"Toevoegen aan contacten"</string>
    <string name="recentCalls_removeFromRecentList" msgid="7691127430328165825">"Verwijderen uit oproeplogboek"</string>
    <string name="recentCalls_deleteAll" msgid="5940657691419101776">"Oproeplogboek wissen"</string>
    <string name="recentCalls_trashVoicemail" msgid="8564377061038549002">"Voicemail verwijderen"</string>
    <string name="recentCalls_shareVoicemail" msgid="7039805601642115775">"Voicemail delen"</string>
    <string name="recentCalls_empty" msgid="2475657296340964771">"Oproeplogboek is leeg."</string>
    <string name="clearCallLogConfirmation_title" msgid="8437942116681120680">"Oproeplogboek wissen?"</string>
    <string name="clearCallLogConfirmation" msgid="3049814863802377048">"Al uw oproepgegevens worden verwijderd."</string>
    <string name="clearCallLogProgress_title" msgid="4967754518175652306">"Oproeplogboek wissen..."</string>
  <plurals name="notification_voicemail_title">
    <item quantity="one" msgid="7337617129792669763">"Voicemail"</item>
    <item quantity="other" msgid="7909053058399879093">"<xliff:g id="COUNT">%1$d</xliff:g> voicemails"</item>
  </plurals>
    <string name="notification_action_voicemail_play" msgid="6479729974823808963">"Afspelen"</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">"Nieuwe voicemail van <xliff:g id="CALLER">%1$s</xliff:g>"</string>
    <string name="voicemail_playback_error" msgid="3745094029143083237">"Kan voicemail niet afspelen."</string>
    <string name="voicemail_buffering" msgid="3471857802985075286">"In buffer opslaan..."</string>
    <string name="voicemail_fetching_content" msgid="7304127676344948616">"Voicemail ophalen…"</string>
    <string name="voicemail_fetching_timout" msgid="6552711420422790440">"Kan voicemail niet ophalen."</string>
    <string name="call_log_new_header" msgid="8880520605610950591">"Nieuw"</string>
    <string name="call_log_old_header" msgid="5378037070074806149">"Ouder"</string>
    <string name="call_log_voicemail_header" msgid="1656430490229372168">"Alleen oproepen met voicemail"</string>
    <string name="call_log_incoming_header" msgid="4514259481080897711">"Alleen inkomende oproepen"</string>
    <string name="call_log_outgoing_header" msgid="378663994725907738">"Alleen uitgaande oproepen"</string>
    <string name="call_log_missed_header" msgid="5446439128157203772">"Alleen gemiste oproepen"</string>
    <string name="voicemail_status_voicemail_not_available" msgid="5416272416842129144">"Kan geen verbinding maken met de voicemailserver."</string>
    <string name="voicemail_status_messages_waiting" msgid="4458458132507579370">"Kan niet verbinden met voicemailservers. Er is nieuwe voicemail."</string>
    <string name="voicemail_status_configure_voicemail" msgid="8634314832269048952">"Stel uw voicemail in."</string>
    <string name="voicemail_status_audio_not_available" msgid="3238711781241004997">"Audio niet beschikbaar."</string>
    <string name="voicemail_status_action_configure" msgid="6294251161130772427">"Instellen"</string>
    <string name="voicemail_status_action_call_server" msgid="5905306807691863100">"Bellen met voicemail"</string>
    <string name="voicemail_speed_slowest" msgid="4253243787222323405">"Laagste snelheid"</string>
    <string name="voicemail_speed_slower" msgid="4776579878006616930">"Lage snelheid"</string>
    <string name="voicemail_speed_normal" msgid="5467566844006749402">"Normale snelheid"</string>
    <string name="voicemail_speed_faster" msgid="533959523242789518">"Hoge snelheid"</string>
    <string name="voicemail_speed_fastest" msgid="7495589683231751304">"Hoogste snelheid"</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>
