<?xml version="1.0" encoding="UTF-8"?>
<!-- 
  Copyright (c) 2022, 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="5655878067457216814">"DeviceLockController"</string>
    <string name="next_button" msgid="1856423430963548653">"Next"</string>
    <string name="reset_button" msgid="4649354411129240809">"Reset"</string>
    <string name="setup_more_button" msgid="4456370972302510109">"More"</string>
    <string name="setup_info_title_text" msgid="299562193092219293">"How <xliff:g id="CREDITOR_APP">%1$s</xliff:g> can manage this device"</string>
    <string name="setup_failed_title_text" msgid="9045111389981992536">"Can\'t install <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app"</string>
    <string name="setup_failed_reset_device_text" msgid="178419033440060908">"Resetting device to try again."</string>
    <string name="setup_failed_reset_device_timer_text" msgid="5270970227714985986">"{count,plural, =1{Reset this device, then try setting it up again. It will reset automatically in 1 second.}other{Reset this device, then try setting it up again. It will reset automatically in # seconds.}}"</string>
    <string name="setup_progress_title_text" msgid="2388779167610656852">"Installing <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app<xliff:g id="ELLIPSIS">…</xliff:g>"</string>
    <string name="setup_finish_title_text" msgid="2810842695806992743">"Opening <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app<xliff:g id="ELLIPSIS">…</xliff:g>"</string>
    <string name="setup_error_title_text" msgid="1123742279081942535">"Can\'t open <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app"</string>
    <string name="try_again" msgid="5964839819170927721">"Try again"</string>
    <string name="reset_phone" msgid="1161657350311160627">"Reset phone"</string>
    <string name="control_section_title" msgid="2213476068991045785">"What can <xliff:g id="CREDITOR_APP">%1$s</xliff:g> do?"</string>
    <string name="control_lock_device_text" msgid="8253302484073757764">"Restrict this device if you don\'t make a payment"</string>
    <string name="control_download_text" msgid="8514650561843088172">"Download, install and update the <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app"</string>
    <string name="control_disable_debug_text" msgid="8112443250013094442">"Turn off debugging features"</string>
    <string name="locked_section_title" msgid="2748725389334076510">"What works if this device is locked?"</string>
    <string name="locked_emergency_text" msgid="3509216445555779286">"Emergency calling services"</string>
    <string name="locked_phone_usage_text" msgid="1913605870324552847">"Incoming and some outgoing calls"</string>
    <string name="locked_settings_usage_text" msgid="8336476063187737700">"Settings"</string>
    <string name="locked_backup_and_restore_text" msgid="104616318625243429">"&lt;a href=https://support.google.com/android/answer/2819582&gt;Backing up and restoring&lt;/a&gt; your data"</string>
    <string name="exposure_section_title" msgid="2329122144337528752">"What\'s visible to <xliff:g id="CREDITOR_APP">%1$s</xliff:g>?"</string>
    <string name="exposure_install_text" msgid="2631074166447765453">"When the <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app is installed or uninstalled"</string>
    <string name="exposure_lock_unlock_text" msgid="6827412845847260579">"Any lock or unlock requests from <xliff:g id="CREDITOR_APP">%1$s</xliff:g>"</string>
    <string name="exposure_disable_dlc_text" msgid="2898692398106736423">"If the <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app isn\'t available"</string>
    <string name="open_source_licenses" msgid="6464389386262455443">"Open-source licences"</string>
    <string name="footer_notice" msgid="7606898520964750584">"The other management capabilities in "<b>"Settings &gt; Security &gt; Managed device info"</b>" don\'t apply to this device"</string>
    <string name="footer_notice_content_description" msgid="2160540400079419440">"The management capabilities in the financed device section of security settings don\'t apply to this device."</string>
    <string name="device_provided_by_provider" msgid="290593329676291991">"This device is provided by <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>"</string>
    <string name="download_kiosk_app" msgid="1845089944897502656">"The kiosk app will be downloaded and installed automatically"</string>
    <string name="install_kiosk_app_secondary_user" msgid="49911908012320834">"The kiosk app will be installed for this user"</string>
    <string name="restrict_device_if_missing_payment" msgid="5721216628714899148">"<xliff:g id="PROVIDER_NAME">%1$s</xliff:g> can restrict this device if you miss a payment"</string>
    <string name="restrict_device_if_dont_make_payment" msgid="1619095674945507015">"<xliff:g id="PROVIDER_NAME">%1$s</xliff:g> can restrict this device if you don\'t make the necessary payments. For details, view the <xliff:g id="TERMS_AND_CONDITIONS_LINK_START">&lt;a href=%2$s&gt;</xliff:g>Terms &amp; Conditions<xliff:g id="TERMS_AND_CONDITIONS_LINK_END">&lt;/a&gt;</xliff:g>."</string>
    <string name="restrict_device_if_owner_doesnt_make_payment" msgid="3841412765931627895">"<xliff:g id="PROVIDER_NAME">%1$s</xliff:g> can restrict this device if the owner doesn\'t make payments"</string>
    <string name="previous" msgid="5241891780917802570">"Previous"</string>
    <string name="next" msgid="8248291863254324326">"Next"</string>
    <string name="start" msgid="2842214844667658537">"Start"</string>
    <string name="ok" msgid="3568398726528719749">"OK"</string>
    <string name="done" msgid="4507782734740410307">"Done"</string>
    <string name="do_it_in_one_hour" msgid="2727777340568739453">"Do it in one hour"</string>
    <string name="header_icon_content_description" msgid="6069602031334473195">"Info"</string>
    <string name="provision_info_item_icon_content_description" msgid="2306298178610632507">"Provision info"</string>
    <string name="enroll_your_device_header" msgid="2226305405591945098">"Enrol your device"</string>
    <string name="enroll_your_device_financing_subheader" msgid="7378414469334757425">"You can now enrol your device in <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>\'s financing programme"</string>
    <string name="enroll_your_device_subsidy_subheader" msgid="8598730780370624995">"You can now enrol your device in <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>\'s subsidy program"</string>
    <string name="subsidy_program_header" msgid="2321508488856303554">"You\'re on <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>\'s subsidy program"</string>
    <string name="device_enrollment_header_text" msgid="5283341102404741658">"Device enrolment"</string>
    <string name="device_financing_enrollment_body_text" msgid="5506086383249511498">"Your device will be enrolled in <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>\'s finance programme within 30 days"</string>
    <string name="device_subsidy_enrollment_body_text" msgid="3971584929178719388">"Your device will be enrolled in <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>\'s subsidy program within 30 days"</string>
    <string name="device_enrollment_notification_body_text" msgid="8755080244956655854">"Enrolment will resume at <xliff:g id="TIME">%1$s</xliff:g>. You can continue using your device."</string>
    <string name="continue_using_device" msgid="5816570734692191190">"You can continue using your device"</string>
    <string name="device_paid" msgid="6606280698381856804">"You paid for your device"</string>
    <string name="device_removed_from_subsidy_program" msgid="1243434945619071051">"Device removed from <xliff:g id="PROVIDER_NAME">%1$s</xliff:g> subsidy programme"</string>
    <string name="device_removed_from_finance_program" msgid="825548999540107578">"Your device has been removed from <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>\'s finance programme"</string>
    <string name="restrictions_lifted" msgid="5785586265984319396">"All restrictions on your device have been lifted"</string>
    <string name="uninstall_kiosk_app" msgid="3459557395024053988">"You can uninstall the kiosk app from your device"</string>
    <string name="getting_device_ready" msgid="2829009584599871699">"Getting your device ready…"</string>
    <string name="this_may_take_a_few_minutes" msgid="2482876246874429351">"This may take a few minutes"</string>
    <string name="installing_kiosk_app" msgid="324208168205545860">"Installing <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app…"</string>
    <string name="opening_kiosk_app" msgid="2021888641430165654">"Opening <xliff:g id="CREDITOR_APP">%1$s</xliff:g> app…"</string>
    <string name="settings_banner_title" msgid="527041021011279252">"Device provided by <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>"</string>
    <string name="settings_banner_body" msgid="5814902066260202824">"<xliff:g id="PROVIDER_NAME">%1$s</xliff:g> can change settings on this device"</string>
    <string name="settings_banner_button" msgid="1831020849782670907">"Learn more"</string>
    <string name="settings_screen_title" msgid="721470080648091035">"Financed device info"</string>
    <string name="settings_intro" msgid="5809531331925309396">"Your credit provider can change settings and install the kiosk app on the device.\n\n<xliff:g id="PROVIDER_NAME_0">%1$s</xliff:g> may restrict this device if you don’t make the necessary payments or stop using <xliff:g id="PROVIDER_NAME_1">%1$s</xliff:g>’s SIM.\n\nTo learn more, contact <xliff:g id="PROVIDER_NAME_2">%1$s</xliff:g>."</string>
    <string name="settings_intro_preference_key" msgid="6610461073400554162">"settings_intro_preference_key"</string>
    <string name="settings_restrictions_category" msgid="5746868117342406677">"Until you’ve paid for your device, you can’t:"</string>
    <string name="settings_restrictions_category_preference_key" msgid="88318147152676512">"settings_restrictions_category_preference_key"</string>
    <string name="settings_install_apps" msgid="3634279771448183713">"Install apps from outside the Play Store"</string>
    <string name="settings_install_apps_preference_key" msgid="27542314345238427">"settings_install_apps_preference_key"</string>
    <string name="settings_safe_mode" msgid="3035228015586375153">"Reboot your device into safe mode"</string>
    <string name="settings_safe_mode_preference_key" msgid="2106617747358027424">"settings_safe_mode_preference_key"</string>
    <string name="settings_config_date_time" msgid="3406612829802458778">"Change date, time and time zones"</string>
    <string name="settings_config_date_time_preference_key" msgid="1838160765185598823">"settings_config_date_time_preference_key"</string>
    <string name="settings_developer_options" msgid="880701002025216672">"Use developer options"</string>
    <string name="settings_developer_options_preference_key" msgid="6807036808722582954">"settings_developer_options_preference_key"</string>
    <string name="settings_credit_provider_capabilities_category" msgid="1274440595211820868">"If something goes wrong with your device, <xliff:g id="PROVIDER_NAME">%1$s</xliff:g> can:"</string>
    <string name="settings_credit_provider_capabilities_category_preference_key" msgid="4571685720898641262">"settings_credit_provider_capabilities_category_preference_key"</string>
    <string name="settings_IMEI" msgid="697965824361262506">"Access your IMEI number"</string>
    <string name="settings_IMEI_preference_key" msgid="608809590948249412">"settings_IMEI_preference_key"</string>
    <string name="settings_factory_reset" msgid="418045189048067625">"Factory reset your device"</string>
    <string name="settings_factory_reset_preference_key" msgid="2168528486393635382">"settings_factory_reset_preference_key"</string>
    <string name="settings_locked_mode_category" msgid="6307525048618331737">"If your device is restricted, you can only use it to:"</string>
    <string name="settings_locked_mode_category_preference_key" msgid="7202573929427220258">"settings_locked_mode_category_preference_key"</string>
    <string name="settings_emergency_calls" msgid="2460996367176786040">"Make calls to emergency numbers"</string>
    <string name="settings_emergency_calls_preference_key" msgid="737598609727181316">"settings_emergency_calls_preference_key"</string>
    <string name="settings_system_info" msgid="1352629332624774940">"View system info, like date, time, network status and battery"</string>
    <string name="settings_system_info_preference_key" msgid="8607675914059202598">"settings_system_info_preference_key"</string>
    <string name="settings_turn_on_off_device" msgid="5414836621603462439">"Turn your device on or off"</string>
    <string name="settings_turn_on_off_device_preference_key" msgid="5981163790552677734">"settings_turn_on_off_device_preference_key"</string>
    <string name="settings_notifications" msgid="63348993899505034">"View notifications and text messages"</string>
    <string name="settings_notifications_preference_key" msgid="4527872342061056462">"settings_notifications_preference_key"</string>
    <string name="settings_allowlisted_apps" msgid="5531810497056091097">"Access apps that are allowed by <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>"</string>
    <string name="settings_allowlisted_apps_preference_key" msgid="8662705531235468080">"settings_allowlisted_apps_preference_key"</string>
    <string name="settings_fully_paid_category" msgid="2459776591689824433">"Once you pay the full amount:"</string>
    <string name="settings_fully_paid_category_preference_key" msgid="1759690898170600559">"settings_fully_paid_category_preference_key"</string>
    <string name="settings_restrictions_removed" msgid="1398080654904863221">"<xliff:g id="PROVIDER_NAME">%1$s</xliff:g> can’t restrict your device or change device settings"</string>
    <string name="settings_restrictions_removed_preference_key" msgid="7741933477145197391">"settings_restrictions_removed_preference_key"</string>
    <string name="settings_uninstall_kiosk_app" msgid="2611134364295637875">"You can uninstall the <xliff:g id="KIOSK_APP">%1$s</xliff:g> app"</string>
    <string name="settings_uninstall_kiosk_app_preference_key" msgid="5578103644009268125">"settings_uninstall_kiosk_app_preference_key"</string>
    <string name="provision_notification_channel_name" msgid="6123500714047647805">"Provision"</string>
    <string name="device_reset_in_days_notification_title" msgid="920859483535317727">"{count,plural, =1{Device will reset in 1 day}other{Device will reset in # days}}"</string>
    <string name="device_reset_notification_content" msgid="7642367488663440437">"All device data will be deleted. For help enrolling your device, contact <xliff:g id="PROVIDER_NAME">%1$s</xliff:g>"</string>
    <string name="toast_message_grant_notification_permission" msgid="1902770796685661160">"Please allow notification from DeviceLock to continue deferring the enrolment of the device."</string>
</resources>
