<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2010 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="5128188288358721369">"Tags"</string>
    <string name="title_scanned_tag" msgid="4347835407095551450">"New tag collected"</string>
    <string name="title_existing_tag" msgid="5656560272594190244">"Tag"</string>
    <string name="tag_unknown" msgid="2897956823877728783">"Unknown tag type"</string>
    <string name="tag_empty" msgid="3726529819932095782">"Empty tag"</string>
    <string name="button_done" msgid="7048822758098308158">"Done"</string>
    <string name="action_text" msgid="577417996159152923">"Text <xliff:g id="PHONE_NUMBER">%s</xliff:g>"</string>
    <string name="action_call" msgid="6226253647953184035">"Call <xliff:g id="PHONE_NUMBER">%s</xliff:g>"</string>
    <string name="empty_tag_prompt" msgid="4206394383309956030">"This tag is empty."</string>
    <string name="import_vcard" msgid="5104299047930666528">"Import ^1"</string>
    <string name="mime_display_name" msgid="5926357152623764485">"Data from NFC tag"</string>
    <string name="vcard_title" msgid="7122634780732426007">"Contact info for ^1"</string>
    <string name="call_phone_permission_denied" msgid="8515177111984654599">"This application needs to access Telephone permission in order to make calls. You can manage Tag permission in Settings"</string>
    <string name="external_storage_permission_denied" msgid="7665146019168376837">"This application needs to access External Storage permission in order to access files. You can manage Tag permission in Settings"</string>
</resources>
