<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2009 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="sharedUserLabel" msgid="8024311725474286801">"Android Core колдонмолору"</string>
    <string name="app_label" msgid="3389954322874982620">"Байланыштар сактагычы"</string>
    <string name="provider_label" msgid="6012150850819899907">"Байланыштар"</string>
    <string name="upgrade_out_of_memory_notification_ticker" msgid="7638747231223520477">"Байланыштарды жаңыртууга көбүрөөк орун керек."</string>
    <string name="upgrade_out_of_memory_notification_title" msgid="8888171924684998531">"Байланыштар үчүн сактагыч жаңыртылууда"</string>
    <string name="upgrade_out_of_memory_notification_text" msgid="2581831842693151968">"Жаңыртууну аягына чыгарыш үчүн таптап коюңуз."</string>
    <string name="default_directory" msgid="93961630309570294">"Байланыштар"</string>
    <string name="local_invisible_directory" msgid="705244318477396120">"Башка"</string>
    <string name="voicemail_from_column" msgid="435732568832121444">"Келген үнкат "</string>
    <string name="debug_dump_title" msgid="4916885724165570279">"Байланыштар корун көчүрүү"</string>
    <string name="debug_dump_database_message" msgid="406438635002392290">"Сиз буларды кылайын деп жатасыз: 1) Ичинде бардык байланыштарга тийиштүү маалыматтар жана чалуу тизмелери бар берилиштер корун сырткы сактагычка  көчүрмөлөө, 2) жана аны эмейлге жөнөтүү. Көчүрмөнү, түзмөктөн ийгиликтүү көчүрүп же эмейлден алаарыңыз менен, жок кылууну унутпаңыз."</string>
    <string name="debug_dump_delete_button" msgid="7832879421132026435">"Азыр жок кылуу"</string>
    <string name="debug_dump_start_button" msgid="2837506913757600001">"Баштоо"</string>
    <string name="debug_dump_email_sender_picker" msgid="3534420908672176460">"Сиздин файлыңызды жөнөтүүчү програмды тандаңыз"</string>
    <string name="debug_dump_email_subject" msgid="108188398416385976">"Байланыштар кору тиркелди"</string>
    <string name="debug_dump_email_body" msgid="4577749800871444318">"Тийиштүү маалыматтарды камтыган менин байланыштар корум тиркелген. Этият болуңуз."</string>
</resources>
