<?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">"Terug navigeren"</string>
    <string name="description_dialpad_overflow" msgid="4853244877599437286">"Meer opties"</string>
    <string name="description_delete_button" msgid="88733669653753441">"backspace"</string>
    <string name="description_image_button_plus" msgid="7821061347207448362">"plus"</string>
    <string name="description_voicemail_button" msgid="6281470684653439120">"voicemail"</string>
    <string name="default_notification_description" msgid="6011631627871110785">"Standaardgeluid (<xliff:g id="DEFAULT_SOUND_TITLE">%1$s</xliff:g>)"</string>
    <string name="callFailed_userBusy" msgid="5163219086553610486">"Lijn is bezet"</string>
    <string name="callFailed_congestion" msgid="3645995103907418337">"Netwerk bezet"</string>
    <string name="callFailed_timedOut" msgid="7772951976278867294">"Geen reactie, time-out"</string>
    <string name="callFailed_server_unreachable" msgid="4766146133909799091">"Server niet bereikbaar"</string>
    <string name="callFailed_number_unreachable" msgid="1243366438388873914">"Nummer niet bereikbaar"</string>
    <string name="callFailed_invalid_credentials" msgid="6115412108261660271">"Ongeldige gebruikersnaam of wachtwoord"</string>
    <string name="callFailed_out_of_network" msgid="6970725831030399542">"Gesprek buiten het netwerk"</string>
    <string name="callFailed_server_error" msgid="1391421251190688379">"Fout met server. Probeer het later opnieuw."</string>
    <string name="callFailed_noSignal" msgid="1758972490451048086">"Geen kiestoon"</string>
    <string name="callFailed_limitExceeded" msgid="8796663077702587664">"ACM-limiet overschreden"</string>
    <string name="callFailed_powerOff" msgid="9179061328562234362">"Radio uit"</string>
    <string name="callFailed_simError" msgid="3307159523385380486">"Geen simkaart of fout met simkaart"</string>
    <string name="callFailed_outOfService" msgid="4535901975891969115">"Mobiel netwerk niet beschikbaar"</string>
    <string name="callFailed_fdn_only" msgid="1720606112619022283">"Uitgaande gesprekken worden beperkt door FDN."</string>
    <string name="callFailed_dialToUssd" msgid="2433610980015734954">"Gesprek gewijzigd in USSD-verzoek"</string>
    <string name="callFailed_dialToSs" msgid="1932708241240329683">"Gesprek gewijzigd in SS-verzoek"</string>
    <string name="callFailed_dialToDial" msgid="4383070508519313539">"Gewijzigd in ander nummer"</string>
    <string name="callFailed_dialToDialVideo" msgid="5132568145494398814">"Gewijzigd in videogesprek"</string>
    <string name="callFailed_dialVideoToSs" msgid="4775276313558039477">"Videogesprek gewijzigd in SS-verzoek"</string>
    <string name="callFailed_dialVideoToUssd" msgid="3075648968404725328">"Videogesprek gewijzigd in USSD-verzoek"</string>
    <string name="callFailed_dialVideoToDial" msgid="7758276428184272770">"Gewijzigd in normaal gesprek"</string>
    <string name="callFailed_dialVideoToDialVideo" msgid="5451053686606499859">"Gewijzigd in ander nummer"</string>
    <string name="callFailed_cb_enabled" msgid="4745550615395092407">"Uitgaande gesprekken zijn niet mogelijk als de functie voor gesprekken blokkeren is ingeschakeld."</string>
    <string name="callFailed_dsac_restricted" msgid="4087941056515103695">"Alle gesprekken worden beperkt door toegangsbeheer."</string>
    <string name="callFailed_dsac_restricted_emergency" msgid="9031535611092828510">"Noodoproepen worden beperkt door toegangsbeheer."</string>
    <string name="callFailed_dsac_restricted_normal" msgid="266947632344387216">"Normale gesprekken worden beperkt door toegangsbeheer."</string>
    <string name="callFailed_unobtainable_number" msgid="124621797631734731">"Ongeldig getal"</string>
    <string name="incall_error_missing_voicemail_number" msgid="3651090591812220874">"Voicemailnummer onbekend."</string>
    <string name="callFailed_video_call_tty_enabled" msgid="186585701668604271">"Kan geen videogesprekken voeren wanneer TTY is ingeschakeld."</string>
    <string name="callEnded_pulled" msgid="437630601519502587">"Gesprek doorgeschakeld naar een ander apparaat."</string>
    <string name="ringtone_silent" msgid="249805466934178869">"Geen"</string>
    <string name="ringtone_unknown" msgid="2303463713486734520">"Onbekende beltoon"</string>
    <string name="callFailed_maximum_reached" msgid="4823790040422765056">"Alle beschikbare lijnen zijn in gebruik. Als je wilt bellen, verbreek je de verbinding in een van de gesprekken op dit apparaat of op een van je andere apparaten."</string>
    <string name="callFailed_data_disabled" msgid="3885826754435317856">"Het gesprek is beëindigd omdat mobiele data zijn uitgeschakeld."</string>
    <string name="callFailed_data_limit_reached_description" msgid="1439284832802552582">"Het gesprek is beëindigd omdat de limiet voor mobiele data is bereikt."</string>
    <string name="callFailed_data_limit_reached" msgid="7045770594965160282">"Datalimiet bereikt. Gesprek beëindigd."</string>
</resources>
