<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2008 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="exchange_name_alternate" msgid="5772529644749041052">"Microsoft Exchange ActiveSync"</string>
    <string name="meeting_accepted" msgid="8796609373330400268">"Acceptà: <xliff:g id="SUBJECT">%s</xliff:g>"</string>
    <string name="meeting_declined" msgid="6707617183246608552">"Refusà: <xliff:g id="SUBJECT">%s</xliff:g>"</string>
    <string name="meeting_tentative" msgid="8250995722130443785">"Project dad inscunter: <xliff:g id="SUBJECT">%s</xliff:g>"</string>
    <string name="meeting_canceled" msgid="3949893881872084244">"Interrut: <xliff:g id="SUBJECT">%s</xliff:g>"</string>
    <string name="meeting_updated" msgid="8529675857361702860">"Actualisà: <xliff:g id="SUBJECT">%s</xliff:g>"</string>
    <string name="meeting_when" msgid="2765696159697448656">"Cura: <xliff:g id="WHEN">%s</xliff:g>"</string>
    <string name="meeting_where" msgid="5992367535856553079">"Nua: <xliff:g id="WHERE">%s</xliff:g>"</string>
    <string name="meeting_recurring" msgid="3134262212606714023">"Cura: <xliff:g id="EVENTDATE">%s</xliff:g> (periodic)"</string>
    <!-- no translation found for meeting_allday (6696389765484663513) -->
    <skip />
    <!-- no translation found for meeting_allday_recurring (2320264182781062684) -->
    <skip />
    <string name="notification_exchange_calendar_added" msgid="6823659622379350159">"Agiuntà in chalender Exchange"</string>
    <!-- no translation found for app_name (5316597712787122829) -->
    <skip />
    <string name="exception_cancel" msgid="6160117429428313805">"Questa occurrenza è vegnida annullada: <xliff:g id="DATE">%s</xliff:g>"</string>
    <string name="exception_updated" msgid="3397583105901142050">"Ils detagls da questa occurrenza èn vegnids modifitgads: <xliff:g id="DATE">%s</xliff:g>"</string>
    <!-- no translation found for policy_dont_allow_attachments (7924303012593832731) -->
    <skip />
    <!-- no translation found for policy_dont_allow_storage_cards (5600453721690619515) -->
    <skip />
    <!-- no translation found for policy_dont_allow_unsigned_apps (7391405270957498716) -->
    <skip />
    <!-- no translation found for policy_dont_allow_unsigned_installers (8124763529572916905) -->
    <skip />
    <!-- no translation found for policy_dont_allow_wifi (8972952227139360866) -->
    <skip />
    <!-- no translation found for policy_dont_allow_text_messaging (2705534889421216691) -->
    <skip />
    <!-- no translation found for policy_dont_allow_pop_imap (1563948038306495433) -->
    <skip />
    <!-- no translation found for policy_dont_allow_irda (2864744455266260846) -->
    <skip />
    <!-- no translation found for policy_dont_allow_html (5004059292137838041) -->
    <skip />
    <!-- no translation found for policy_dont_allow_browser (1898383003253987916) -->
    <skip />
    <!-- no translation found for policy_dont_allow_consumer_email (4208507021679199773) -->
    <skip />
    <!-- no translation found for policy_dont_allow_internet_sharing (8866772202653485379) -->
    <skip />
    <!-- no translation found for policy_enable_password_recovery (3082147682445934504) -->
    <skip />
    <!-- no translation found for policy_require_smime (8044392674810605617) -->
    <skip />
    <!-- no translation found for policy_require_manual_sync_roaming (7140792029820703854) -->
    <skip />
    <!-- no translation found for policy_bluetooth_restricted (8992284721368381918) -->
    <skip />
    <!-- no translation found for policy_app_blacklist (5997243461425995435) -->
    <skip />
    <!-- no translation found for policy_app_whitelist (8401297908870017913) -->
    <skip />
    <!-- no translation found for policy_max_calendar_age (6394557044887221078) -->
    <skip />
    <!-- no translation found for policy_max_email_age (3303242808829681352) -->
    <skip />
    <!-- no translation found for policy_text_truncation (5800480928209379255) -->
    <skip />
    <!-- no translation found for policy_html_truncation (629030762178870832) -->
    <skip />
    <!-- no translation found for policy_max_attachment_size (6191034264088052742) -->
    <skip />
    <!-- no translation found for policy_require_encryption (1488761894213160246) -->
    <skip />
    <!-- no translation found for policy_require_sd_encryption (2425281481414518903) -->
    <skip />
    <!-- no translation found for account_setup_options_mail_window_auto (4188895354366183790) -->
    <skip />
    <string name="account_setup_options_mail_window_1day" msgid="3965715241135811407">"In di"</string>
    <string name="account_setup_options_mail_window_3days" msgid="736181102295878114">"Trais dis"</string>
    <string name="account_setup_options_mail_window_1week" msgid="5639718031108023741">"Ina emna"</string>
    <string name="account_setup_options_mail_window_2weeks" msgid="4567049268124213035">"Duas emnas"</string>
    <string name="account_setup_options_mail_window_1month" msgid="5846359669750047081">"In mais"</string>
    <!-- no translation found for account_setup_options_mail_window_all (5372861827683632364) -->
    <skip />
</resources>
