<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2011 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="app_name" msgid="170210454004696382">"Key Chain"</string>
    <string name="title_no_certs" msgid="8350009443064722873">"Није пронађен ниједан сертификат"</string>
    <string name="title_select_cert" msgid="3588447616418041699">"Избор сертификата"</string>
    <string name="requesting_application" msgid="1589142627467598421">"Апликација %s је захтевала сертификат. Ако одаберете сертификат, дозволићете апликацији да сада и убудуће користи овај идентитет приликом комуникације са серверима."</string>
    <string name="requesting_server" msgid="5832565605998634370">"Апликација је идентификовала сервер који је упутио захтев као %s, али би приступ сертификату требало да јој одобрите само ако сматрате да је поуздана."</string>
    <string name="install_new_cert_message" msgid="4451971501142085495">"Можете да инсталирате сертификате из PKCS#12 датотеке са екстензијом %1$s или %2$s који се налази у спољној меморији."</string>
    <string name="install_new_cert_button_label" msgid="903474285774077171">"Инсталирај сертификат"</string>
    <string name="allow_button" msgid="3030990695030371561">"Изабери"</string>
    <string name="deny_button" msgid="3766539809121892584">"Одбиј"</string>
</resources>
