diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index dec12ba..5e4f1e8 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -461,6 +461,7 @@
 
         <activity android:name=".bluetooth.DevicePickerActivity"
                 android:label="@string/device_picker"
+                android:configChanges="orientation|keyboardHidden|screenSize"
                 android:clearTaskOnLaunch="true">
             <intent-filter>
                 <action android:name="android.bluetooth.devicepicker.action.LAUNCH" />
diff --git a/res/layout/suggestion_tile.xml b/res/layout/suggestion_tile.xml
index fa3f3af..850e55a 100644
--- a/res/layout/suggestion_tile.xml
+++ b/res/layout/suggestion_tile.xml
@@ -52,6 +52,7 @@
                 android:layout_alignParentEnd="true"
                 android:layout_marginTop="8dp"
                 android:layout_marginEnd="8dp"
+                android:contentDescription="@string/dlg_close"
                 android:src="@drawable/ic_suggestion_close_button"/>
 
         </RelativeLayout>
diff --git a/res/layout/suggestion_tile_with_button.xml b/res/layout/suggestion_tile_with_button.xml
index de3494a..8fb8e84 100644
--- a/res/layout/suggestion_tile_with_button.xml
+++ b/res/layout/suggestion_tile_with_button.xml
@@ -52,6 +52,7 @@
                 android:layout_alignParentEnd="true"
                 android:layout_marginTop="8dp"
                 android:layout_marginEnd="8dp"
+                android:contentDescription="@string/dlg_close"
                 android:src="@drawable/ic_suggestion_close_button"/>
 
         </RelativeLayout>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 9935755..d225295 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -781,9 +781,7 @@
     <string name="wifi_configure_settings_preference_summary_wakeup_on" msgid="646393113104367290">"Le Wi-Fi se réactive automatiquement"</string>
     <string name="wifi_configure_settings_preference_summary_wakeup_off" msgid="2782566279864356713">"Le Wi-Fi ne se réactive pas automatiquement"</string>
     <string name="wifi_access_points" msgid="7053990007031968609">"Réseaux Wi-Fi"</string>
-    <string name="wifi_menu_wps_pbc" msgid="2668564692207863017">"Bouton commande WPS"</string>
     <string name="wifi_menu_more_options" msgid="2448097861752719396">"Plus d\'options"</string>
-    <string name="wifi_menu_wps_pin" msgid="6426448256268695933">"Saisie NIP WPS"</string>
     <string name="wifi_menu_p2p" msgid="7619851399250896797">"Wi-Fi Direct"</string>
     <string name="wifi_menu_scan" msgid="1470911530412095868">"Scanner"</string>
     <string name="wifi_menu_advanced" msgid="7522252991919573664">"Options avancées"</string>
@@ -801,19 +799,6 @@
     <string name="wifi_show_advanced" msgid="3409422789616520979">"Options avancées"</string>
     <string name="wifi_advanced_toggle_description_expanded" msgid="2380600578544493084">"Liste déroulante Options avancées. Touchez deux fois pour la réduire."</string>
     <string name="wifi_advanced_toggle_description_collapsed" msgid="1463812308429197263">"Liste déroulante Options avancées. Touchez deux fois pour la développer."</string>
-    <string name="wifi_wps_setup_title" msgid="8207552222481570175">"Configuration Wi-Fi protégée"</string>
-    <string name="wifi_wps_setup_msg" msgid="315174329121275092">"Démarrage de la configuration WPS…"</string>
-    <string name="wifi_wps_onstart_pbc" msgid="817003360936932340">"Appuyez sur le bouton « Configuration Wi-Fi protégée » de votre routeur. Celui-ci peut s\'appeler « WPS » ou contenir ce symbole :"</string>
-    <string name="wifi_wps_onstart_pin" msgid="223344506445335358">"Saisissez le code d\'accès « <xliff:g id="NUMBER">%1$s</xliff:g> » sur votre routeur Wi-Fi. La configuration peut prendre jusqu\'à deux minutes."</string>
-    <string name="wifi_wps_complete" msgid="2388138550456729134">"Configuration WPS réussie. Connexion au réseau en cours…"</string>
-    <string name="wifi_wps_connected" msgid="7153432445748931183">"Connecté au réseau Wi-Fi « <xliff:g id="NETWORK_NAME">%s</xliff:g> »"</string>
-    <string name="wifi_wps_in_progress" msgid="3372311348221357944">"La configuration WPS est déjà en cours et peut prendre jusqu\'à deux minutes."</string>
-    <string name="wifi_wps_failed_generic" msgid="5668775022238832527">"Échec de la configuration WPS. Veuillez réessayer dans quelques minutes."</string>
-    <string name="wifi_wps_failed_wep" msgid="2702820087105284461">"La configuration de sécurité du routeur sans fil (WEP) n\'est pas compatible."</string>
-    <string name="wifi_wps_failed_tkip" msgid="4282401586860713349">"La configuration de sécurité du routeur sans fil (TKIP) n\'est pas compatible."</string>
-    <string name="wifi_wps_failed_auth" msgid="1174614355181181958">"Échec de l\'authentification. Veuillez réessayer."</string>
-    <string name="wifi_wps_failed_overlap" msgid="5159533685596844778">"Une autre session WPS a été détectée. Veuillez réessayer dans quelques minutes."</string>
-    <string name="wifi_wps_failed_wifi_disconnected" msgid="3829472117754104164">"Wi-Fi déconnecté. La configuration du WPS a été annulée."</string>
     <string name="wifi_ssid" msgid="5519636102673067319">"Nom du réseau"</string>
     <string name="wifi_ssid_hint" msgid="897593601067321355">"Saisissez le SSID"</string>
     <string name="wifi_security" msgid="6603611185592956936">"Sécurité"</string>
@@ -939,8 +924,10 @@
     <string name="wifi_hotspot_configure_ap_text_summary" msgid="5560680057727007011">"Point d\'accès AndroidAP WPA2 PSK"</string>
     <string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
     <string name="wifi_calling_settings_title" msgid="4102921303993404577">"Appels Wi-Fi"</string>
-    <string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Activer les appels Wi-Fi"</string>
-    <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Étendre la couverture avec les appels Wi-Fi"</string>
+    <!-- no translation found for wifi_calling_suggestion_title (7766895085362824508) -->
+    <skip />
+    <!-- no translation found for wifi_calling_suggestion_summary (6460250990899143406) -->
+    <skip />
     <string name="wifi_calling_mode_title" msgid="2164073796253284289">"Préférences d\'appel"</string>
     <string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Mode d\'appel Wi-Fi"</string>
     <string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Préférences d\'itinérance"</string>
@@ -1030,9 +1017,6 @@
     <string name="accessibility_work_account_title" msgid="1231830766637939527">"Compte professionnel - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
     <string name="accessibility_personal_account_title" msgid="2169071663029067826">"Compte personnel - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
     <string name="search_settings" msgid="1910951467596035063">"Rechercher"</string>
-    <string name="search_settings_summary" msgid="9205656546570654169">"Configurer les paramètres et l\'historique de recherche"</string>
-    <string name="search_settings_no_results" msgid="8799027492641230999">"Aucun résultat"</string>
-    <string name="search_clear_history" msgid="4196658962573162457">"Effacer l\'historique"</string>
     <string name="display_settings" msgid="7965901687241669598">"Affichage"</string>
     <string name="accelerometer_title" msgid="7854608399547349157">"Rotation auto de l\'écran"</string>
     <string name="color_mode_title" msgid="9186249332902370471">"Couleurs"</string>
@@ -1891,6 +1875,12 @@
     <string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Pourrait nuire aux performances"</string>
     <string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Cliquer lorsque curseur arrête"</string>
     <string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Délai précédant le clic"</string>
+    <!-- no translation found for accessibility_vibration_settings_title (3453277326300320803) -->
+    <skip />
+    <!-- no translation found for accessibility_notification_vibration_title (660829933960942244) -->
+    <skip />
+    <!-- no translation found for accessibility_touch_vibration_title (7931823772673770492) -->
+    <skip />
     <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Utiliser le service"</string>
     <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Utiliser la correction des couleurs"</string>
     <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Utiliser les légendes"</string>
@@ -1918,6 +1908,22 @@
       <item quantity="one">Très long délai (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
       <item quantity="other">Très long délai (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
     </plurals>
+    <!-- no translation found for accessibility_vibration_summary_off (1753566394591809629) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_low (7628418309029013867) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_medium (3422136736880414093) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_high (3239807793182635729) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_off (4613890213008630847) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_low (2017572546489862987) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_medium (3782136025830279769) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_high (2543921139337952491) -->
+    <skip />
     <string name="accessibility_menu_item_settings" msgid="3344942964710773365">"Paramètres"</string>
     <string name="accessibility_feature_state_on" msgid="2864292320042673806">"Activé"</string>
     <string name="accessibility_feature_state_off" msgid="4172584906487070211">"Désactivé"</string>
@@ -2067,6 +2073,24 @@
     <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Votre téléphone a été utilisé intensément, et cela a consommé beaucoup d\'énergie. Sa pile fonctionne correctement.\n\nVotre téléphone a été utilisé pendant environ <xliff:g id="HOUR">%1$s</xliff:g> depuis sa dernière charge complète.\n\n Usage total :"</string>
     <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Votre tablette a été utilisée intensément, et cela a consommé beaucoup d\'énergie. Sa pile fonctionne correctement.\n\nVotre tablette a été utilisée pendant environ <xliff:g id="HOUR">%1$s</xliff:g> depuis sa dernière charge complète.\n\n Usage total :"</string>
     <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Votre appareil a été utilisé intensément, et cela a consommé beaucoup d\'énergie. Sa pile fonctionne correctement.\n\nVotre appareil a été utilisé pendant environ <xliff:g id="HOUR">%1$s</xliff:g> depuis sa dernière charge complète.\n\n Usage total :"</string>
+    <!-- no translation found for battery_tip_restrict_title (467228882789275512) -->
+    <!-- no translation found for battery_tip_restrict_handled_title (5203646029862183763) -->
+    <!-- no translation found for battery_tip_restrict_summary (9128154370135347093) -->
+    <!-- no translation found for battery_tip_restrict_handled_summary (29466713333477274) -->
+    <skip />
+    <!-- no translation found for battery_tip_restrict_app_dialog_title (8130618585820429591) -->
+    <!-- no translation found for battery_tip_restrict_app_dialog_message (5818730114373015028) -->
+    <skip />
+    <!-- no translation found for battery_tip_restrict_app_dialog_ok (8291115820018013353) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_title (4550106794311784978) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_message (4836135946080501395) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_ok (6022058431218137646) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_cancel (9062797114255859496) -->
+    <skip />
     <string name="smart_battery_manager_title" msgid="5677222263071864438">"Gestionnaire de pile intelligent"</string>
     <string name="smart_battery_title" msgid="7014692334636228916">"Gérer automatiquement la pile"</string>
     <string name="smart_battery_summary" msgid="6435844879637999044">"Ajuster automatiquement la consommation d\'énergie des applications en fonction de l\'utilisation"</string>
@@ -2172,6 +2196,8 @@
     <string name="battery_detail_power_percentage" msgid="8064814503316094497">"<xliff:g id="PERCENT">%1$s</xliff:g> de l\'utilisation totale par les applications (<xliff:g id="POWER">%2$d</xliff:g> mAh)"</string>
     <string name="battery_detail_info_title" msgid="8227822131405620369">"Depuis la charge complète"</string>
     <string name="battery_detail_manage_title" msgid="9094314252105828014">"Gérer l\'utilisation de la pile"</string>
+    <!-- no translation found for advanced_battery_graph_subtext (5621073891377915877) -->
+    <skip />
     <string name="estimated_time_left" msgid="7514194472683370877">"Durée restante estimée"</string>
     <string name="estimated_charging_time_left" msgid="5614442409326164691">"Jusqu\'à la charge complète"</string>
     <string name="estimated_time_description" msgid="8760210909000037089">"La durée estimée peut changer en fonction de l\'utilisation"</string>
@@ -2182,7 +2208,14 @@
     <string name="process_kernel_label" msgid="3916858646836739323">"Système d\'exploitation Android"</string>
     <string name="process_mediaserver_label" msgid="6500382062945689285">"Serveur multimédia"</string>
     <string name="process_dex2oat_label" msgid="2592408651060518226">"Optimisation des applications"</string>
-    <string name="battery_saver" msgid="8172485772238572153">"Économie d\'énergie"</string>
+    <!-- no translation found for battery_saver (6002143200184768727) -->
+    <skip />
+    <!-- no translation found for battery_saver_auto_title (6896506441192920565) -->
+    <skip />
+    <!-- no translation found for battery_saver_auto_summary (8715989830471454219) -->
+    <skip />
+    <!-- no translation found for battery_saver_seekbar_title (3428789387167865312) -->
+    <skip />
     <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Utiliser le mode Économie d\'énergie"</string>
     <string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Activer automatiquement"</string>
     <string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Jamais"</string>
@@ -2425,7 +2458,6 @@
     <string name="misc_files_selected_count" msgid="4647048020823912088">"<xliff:g id="NUMBER">%1$d</xliff:g> fichiers sélectionnés sur <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
     <string name="misc_files_selected_count_bytes" msgid="2876232009069114352">"<xliff:g id="NUMBER">%1$s</xliff:g> sur <xliff:g id="TOTAL">%2$s</xliff:g>"</string>
     <string name="select_all" msgid="1562774643280376715">"Tout sélectionner"</string>
-    <string name="data_plan_usage_manage_plans_button_text" msgid="8997761990902708162">"Gérer les forfaits"</string>
     <string name="data_usage_summary_title" msgid="3804110657238092929">"Utilisation des données"</string>
     <string name="data_usage_app_summary_title" msgid="4147258989837459172">"Util. données aplication"</string>
     <string name="data_usage_accounting" msgid="7170028915873577387">"La manière dont le fournisseur de services effectue les calcul des données peut être différente."</string>
@@ -2472,6 +2504,8 @@
     <string name="data_usage_enable_mobile" msgid="986782622560157977">"Données mobiles"</string>
     <string name="data_usage_enable_3g" msgid="6304006671869578254">"Données 2G-3G"</string>
     <string name="data_usage_enable_4g" msgid="3635854097335036738">"Données 4G"</string>
+    <!-- no translation found for data_roaming_enable_mobile (1523331545457578362) -->
+    <skip />
     <string name="data_usage_forground_label" msgid="7654319010655983591">"Premier plan :"</string>
     <string name="data_usage_background_label" msgid="2722008379947694926">"Arrière-plan :"</string>
     <string name="data_usage_app_settings" msgid="2279171379771253165">"Paramètres de l\'application"</string>
@@ -2815,8 +2849,7 @@
     <string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Applications et notifications"</string>
     <string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Autorisations, applications par défaut"</string>
     <string name="account_dashboard_title" msgid="5895948991491438911">"Comptes"</string>
-    <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
-    <skip />
+    <string name="account_dashboard_default_summary" msgid="3998347400161811075">"Aucun compte ajouté"</string>
     <string name="app_default_dashboard_title" msgid="7342549305933047317">"Applications par défaut"</string>
     <string name="system_dashboard_summary" msgid="5797743225249766685">"Langues, sauvegardes, mises à jour"</string>
     <string name="search_results_title" msgid="1796252422574886932">"Paramètres"</string>
@@ -2943,6 +2976,13 @@
     <string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Le mode Ne pas déranger a été activé par une application (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
     <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Priorités seulement"</string>
     <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
+    <!-- no translation found for zen_mode_sound_summary_on (9067685807840094102) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_off_with_info (2348629457144123849) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_off (4375814717589425561) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_summary_off_info (8115159143760078050) -->
     <string name="sound_work_settings" msgid="6774324553228566442">"Sons du profil professionnel"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Utiliser sons du profil perso"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Les sons du profil professionnel sont les mêmes que ceux du profil personnel"</string>
@@ -2959,20 +2999,22 @@
     <string name="other_sound_category_preference_title" msgid="2521096636124314015">"Autres sons et vibrations"</string>
     <string name="configure_notification_settings" msgid="7616737397127242615">"Notifications"</string>
     <string name="recent_notifications" msgid="5660639387705060156">"Envoyées récemment"</string>
-    <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
-    <skip />
+    <string name="recent_notifications_see_all_title" msgid="3935564140468680831">"Afficher toutes les applications"</string>
     <string name="advanced_section_header" msgid="8833934850242546903">"Paramètres avancés"</string>
     <string name="profile_section_header" msgid="2320848161066912001">"Notifications professionnelles"</string>
     <string name="notification_badging_title" msgid="5938709971403474078">"Autoriser points de notification"</string>
     <string name="notification_pulse_title" msgid="1905382958860387030">"Faire clignoter le voyant"</string>
-    <string name="lock_screen_notifications_title" msgid="6173076173408887213">"À l\'écran de verrouillage"</string>
+    <!-- no translation found for lock_screen_notifications_title (2583595963286467672) -->
+    <skip />
     <string name="lock_screen_notifications_summary_show" msgid="6407527697810672847">"Afficher tout le contenu des notifications"</string>
-    <string name="lock_screen_notifications_summary_hide" msgid="7891552853357258782">"Masquer le contenu sensible des notifications"</string>
+    <!-- no translation found for lock_screen_notifications_summary_hide (8301305044690264958) -->
+    <skip />
     <string name="lock_screen_notifications_summary_disable" msgid="859628910427886715">"N\'afficher aucune notification"</string>
     <string name="lock_screen_notifications_interstitial_message" msgid="6164532459432182244">"Lorsque votre appareil est verrouillé, comment voulez-vous que les notifications s\'affichent?"</string>
     <string name="lock_screen_notifications_interstitial_title" msgid="1416589393106326972">"Notifications"</string>
     <string name="lock_screen_notifications_summary_show_profile" msgid="835870815661120772">"Afficher tout le contenu des notif. professionn."</string>
-    <string name="lock_screen_notifications_summary_hide_profile" msgid="256116258285695645">"Masquer contenu sensible des notif. professionn."</string>
+    <!-- no translation found for lock_screen_notifications_summary_hide_profile (2005907007779384635) -->
+    <skip />
     <string name="lock_screen_notifications_summary_disable_profile" msgid="4080720698960233358">"N\'afficher aucune notification professionnelle"</string>
     <string name="lock_screen_notifications_interstitial_message_profile" msgid="8307705621027472346">"Lorsque votre appareil est verrouillé, comment voulez-vous que les notifications de profil s\'affichent?"</string>
     <string name="lock_screen_notifications_interstitial_title_profile" msgid="3169806586032521333">"Notifications de profil"</string>
@@ -2983,8 +3025,9 @@
     <string name="notification_importance_title" msgid="4368578960344731828">"Comportement"</string>
     <string name="notification_importance_unspecified" msgid="6622173510486113958">"Autoriser le son"</string>
     <string name="notification_importance_blocked" msgid="7938180808339386300">"Ne jamais afficher les notifications"</string>
-    <string name="notification_importance_min" msgid="5455049524984686275">"Aucun son ni interruption visuelle"</string>
-    <string name="notification_importance_low" msgid="8881468429453766553">"Aucun son"</string>
+    <!-- no translation found for notification_importance_min (9054819132085066824) -->
+    <skip />
+    <string name="notification_importance_low" msgid="2445139943005315690">"Affichage silencieux"</string>
     <string name="notification_importance_default" msgid="5958338024601957516">"Émettre un son"</string>
     <string name="notification_importance_high" msgid="2082429479238228527">"Émettre un son et s\'afficher à l\'écran"</string>
     <string name="notification_importance_high_silent" msgid="2667033773703765252">"Afficher sur l\'écran"</string>
@@ -3059,7 +3102,8 @@
     <string name="notification_channel_badge_title" msgid="2240827899882847087">"Afficher le point de notification"</string>
     <string name="app_notification_override_dnd_title" msgid="7867458246395884830">"Ignorer le mode Ne pas déranger"</string>
     <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"Activer les notifications de cette application même lorsque l\'option Ne pas déranger est définie sur Prioritaires uniquement"</string>
-    <string name="app_notification_visibility_override_title" msgid="2187232730902430718">"À l\'écran de verrouillage"</string>
+    <!-- no translation found for app_notification_visibility_override_title (7821124557634786985) -->
+    <skip />
     <string name="app_notification_row_banned" msgid="5983655258784814773">"Bloqué"</string>
     <string name="app_notification_row_priority" msgid="7723839972982746568">"Priorité"</string>
     <string name="app_notification_row_sensitive" msgid="1809610030432329940">"Sensible"</string>
@@ -3324,43 +3368,28 @@
     <string name="decline_remote_bugreport_action" msgid="518720235407565134">"Refuser"</string>
     <string name="usb_use_charging_only" msgid="2180443097365214467">"Charger cet appareil"</string>
     <string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Charger cet appareil seulement"</string>
-    <!-- no translation found for usb_use_power_only (6449381364444187612) -->
-    <skip />
-    <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
-    <skip />
-    <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
-    <skip />
+    <string name="usb_use_power_only" msgid="6449381364444187612">"Chargement de l\'appareil connecté"</string>
+    <string name="usb_use_power_only_desc" msgid="5674490059427055197">"D\'autres paramètres ne sont pas accessibles lorsque l\'appareil est allumé"</string>
+    <string name="usb_use_file_transfers" msgid="1223134119354320726">"Transfert de fichiers"</string>
     <string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transférer des fichiers vers un autre appareil"</string>
-    <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
-    <skip />
+    <string name="usb_use_photo_transfers" msgid="8192719651229326283">"PTP"</string>
     <string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transferer des photos ou des fichiers si MTP n\'est pas pris en charge (PTP)"</string>
-    <!-- no translation found for usb_use_tethering (3944506882789422118) -->
-    <skip />
+    <string name="usb_use_tethering" msgid="3944506882789422118">"Partage de connexion par USB"</string>
     <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
     <string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Utiliser cet appareil en tant que MIDI"</string>
     <string name="usb_use" msgid="3372728031108932425">"Utiliser la connexion USB pour :"</string>
-    <!-- no translation found for usb_use_also (557340935190819370) -->
-    <skip />
+    <string name="usb_use_also" msgid="557340935190819370">"Aussi utiliser la connexion USB pour"</string>
     <string name="usb_pref" msgid="1400617804525116158">"USB"</string>
     <string name="usb_summary_charging_only" msgid="7544327009143659751">"Chargement de l\'appareil"</string>
-    <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
-    <skip />
-    <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
-    <skip />
-    <!-- no translation found for usb_summary_tether (951190049557074535) -->
-    <skip />
-    <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
-    <skip />
-    <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
-    <skip />
-    <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
-    <skip />
-    <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
-    <skip />
-    <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
-    <skip />
-    <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
-    <skip />
+    <string name="usb_summary_power_only" msgid="1996391096369798526">"Chargement de l\'appareil connecté"</string>
+    <string name="usb_summary_file_transfers" msgid="6925168380589489645">"Transfert de fichiers"</string>
+    <string name="usb_summary_tether" msgid="951190049557074535">"Partage de connexion par USB"</string>
+    <string name="usb_summary_photo_transfers" msgid="665584667685030007">"PTP"</string>
+    <string name="usb_summary_MIDI" msgid="2399066753961085360">"MIDI"</string>
+    <string name="usb_summary_file_transfers_power" msgid="7700800611455849806">"Transfert de fichiers et alimentation"</string>
+    <string name="usb_summary_tether_power" msgid="5825335393952752238">"Partage de connexion par USB et alimentation"</string>
+    <string name="usb_summary_photo_transfers_power" msgid="6826058111908423069">"PTP et alimentation"</string>
+    <string name="usb_summary_MIDI_power" msgid="3308250484012677596">"MIDI et alimentation"</string>
     <string name="sms_mirroring_pref" msgid="6475043279147376031">"Duplication de messages texte"</string>
     <string name="background_check_pref" msgid="7550258400138010979">"Vérification en arrière-plan"</string>
     <string name="background_check_title" msgid="4534254315824525593">"Accès complet à l\'arrière-plan"</string>
@@ -3474,10 +3503,8 @@
     <string name="location_on_summary" msgid="4083334422422067511">"ACTIVÉ"</string>
     <string name="location_off_summary" msgid="6474350053215707957">"DÉSACTIVÉ"</string>
     <string name="backup_disabled" msgid="485189128759595412">"Sauvegardes désactivées"</string>
-    <!-- no translation found for android_version_summary (2935995161657697278) -->
-    <skip />
-    <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
-    <skip />
+    <string name="android_version_summary" msgid="2935995161657697278">"Mis à jour vers Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+    <string name="android_version_pending_update_summary" msgid="487831391976523090">"Mise à jour disponible"</string>
     <string name="disabled_by_policy_title" msgid="627023216027648534">"Action interdite"</string>
     <string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Impossible de modifier le volume"</string>
     <string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Les appels sont désactivés"</string>
@@ -3498,8 +3525,7 @@
     <string name="condition_hotspot_summary" msgid="3433182779269409683">"Le point d\'accès Wi-Fi mobile « <xliff:g id="ID_1">%1$s</xliff:g> » est actif. Le Wi-Fi est désactivé pour cet appareil."</string>
     <string name="condition_airplane_title" msgid="287356299107070503">"Le mode Avion est activé"</string>
     <string name="condition_airplane_summary" msgid="3738805058182535606">"Le Wi-Fi, le Bluetooth et le réseau cellulaire sont désactivés. Vous ne pouvez pas faire d\'appels téléphoniques ni vous connecter à Internet."</string>
-    <!-- no translation found for condition_zen_title (2897779738211625) -->
-    <skip />
+    <string name="condition_zen_title" msgid="2897779738211625">"Mode Ne pas déranger activé"</string>
     <string name="condition_battery_title" msgid="3272131008388575349">"Économie d\'énergie activée"</string>
     <string name="condition_battery_summary" msgid="4418839236027977450">"Les performances sont réduites. Les services de localisation et les données en arrière-plan sont désactivés."</string>
     <string name="condition_cellular_title" msgid="1327317003797575735">"Données cellulaires désactivées"</string>
@@ -3564,6 +3590,20 @@
       <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> application est autorisée à ignorer les restrictions lorsque la fonction Économiseur de données est activée</item>
       <item quantity="other"><xliff:g id="COUNT">%1$d</xliff:g> applications sont autorisées à ignorer les restrictions lorsque la fonction Économiseur de données est activée</item>
     </plurals>
+    <!-- no translation found for data_usage_title (3659356290392241789) -->
+    <skip />
+    <!-- no translation found for data_used (5116389957228457203) -->
+    <skip />
+    <!-- no translation found for data_remaining (8998091725895502181) -->
+    <skip />
+    <!-- no translation found for cycle_left_time_text (8501602478371081001) -->
+    <skip />
+    <!-- no translation found for carrier_and_update_text (4534395723031386923) -->
+    <skip />
+    <!-- no translation found for no_carrier_update_text (6879630084452907385) -->
+    <skip />
+    <!-- no translation found for launch_mdp_app_text (7527361210375612985) -->
+    <skip />
     <string name="data_saver_title" msgid="398458827917495765">"Économiseur de données"</string>
     <string name="unrestricted_data_saver" msgid="952796077540228711">"Données sans restrictions"</string>
     <string name="restrict_background_blacklisted" msgid="3995443391711013068">"Les données en arrière-plan sont désactivées"</string>
@@ -3583,6 +3623,10 @@
     <string name="battery_saver_off_summary" msgid="8309471955051162327">"Désactivé : <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="battery_saver_desc_turn_on_auto_never" msgid="6715896635178578813">"Ne jamais activer automatiquement"</string>
     <string name="battery_saver_desc_turn_on_auto_pct" msgid="7472323223085636533">"Activer automatiquement à %1$s de charge restant"</string>
+    <!-- no translation found for battery_saver_button_turn_on (3699954061337848832) -->
+    <skip />
+    <!-- no translation found for battery_saver_button_turn_off (5916996792004611890) -->
+    <skip />
     <string name="not_battery_optimizing" msgid="5362861851864837617">"L\'optimisation de la pile n\'est pas utilisée"</string>
     <string name="lockscreen_remote_input" msgid="969871538778211843">"Si l\'appareil est verrouillé, empêcher l\'entrée de réponses ou de texte dans les notifications"</string>
     <string name="default_spell_checker" msgid="8506899870026026660">"Correcteur ortho par défaut"</string>
@@ -3836,4 +3880,6 @@
     <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Nom de l\'appareil"</string>
     <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Utiliser le Bluetooth lors de la conduite"</string>
     <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Activer automatiquement le Bluetooth lorsque vous conduisez"</string>
+    <!-- no translation found for dev_android_o_battery_settings_title (2926578228655006762) -->
+    <skip />
 </resources>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index 58a06fe..dd52d46 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -781,9 +781,7 @@
     <string name="wifi_configure_settings_preference_summary_wakeup_on" msgid="646393113104367290">"Wi‑Fi се вклучува повторно автоматски"</string>
     <string name="wifi_configure_settings_preference_summary_wakeup_off" msgid="2782566279864356713">"Wi‑Fi не се вклучува повторно автоматски"</string>
     <string name="wifi_access_points" msgid="7053990007031968609">"Wi-Fi мрежи"</string>
-    <string name="wifi_menu_wps_pbc" msgid="2668564692207863017">"Копче WPS Push"</string>
     <string name="wifi_menu_more_options" msgid="2448097861752719396">"Повеќе опции"</string>
-    <string name="wifi_menu_wps_pin" msgid="6426448256268695933">"Запис на PIN за WPS"</string>
     <string name="wifi_menu_p2p" msgid="7619851399250896797">"Wi‑Fi Direct"</string>
     <string name="wifi_menu_scan" msgid="1470911530412095868">"Скенирај"</string>
     <string name="wifi_menu_advanced" msgid="7522252991919573664">"Напредни"</string>
@@ -801,19 +799,6 @@
     <string name="wifi_show_advanced" msgid="3409422789616520979">"Напредни опции"</string>
     <string name="wifi_advanced_toggle_description_expanded" msgid="2380600578544493084">"Паѓачки список „Напредни опции“. Допрете двапати за да се собере."</string>
     <string name="wifi_advanced_toggle_description_collapsed" msgid="1463812308429197263">"Паѓачки список „Напредни опции“. Допрете двапати за да се прошири."</string>
-    <string name="wifi_wps_setup_title" msgid="8207552222481570175">"Заштитено подесување на Wi-Fi"</string>
-    <string name="wifi_wps_setup_msg" msgid="315174329121275092">"Се вклучува WPS…"</string>
-    <string name="wifi_wps_onstart_pbc" msgid="817003360936932340">"Притиснете го копчето „Заштитено поставување на Wi-Fi“ на рутерот. Тоа може да се нарекува „WPS“ или да се означи со овој симбол:"</string>
-    <string name="wifi_wps_onstart_pin" msgid="223344506445335358">"Внесете PIN <xliff:g id="NUMBER">%1$s</xliff:g> на вашиот Wi-Fi насочувач. Подесувањето може да трае и до две минути за да се заврши."</string>
-    <string name="wifi_wps_complete" msgid="2388138550456729134">"WPS успеа. Се поврзува со мрежата…"</string>
-    <string name="wifi_wps_connected" msgid="7153432445748931183">"Поврзано со Wi-Fi мрежа <xliff:g id="NETWORK_NAME">%s</xliff:g>"</string>
-    <string name="wifi_wps_in_progress" msgid="3372311348221357944">"WPS е веќе во тек и може да потрае и до две минути за да се заврши"</string>
-    <string name="wifi_wps_failed_generic" msgid="5668775022238832527">"WPS не успеа. Обидете се повторно за неколку минути."</string>
-    <string name="wifi_wps_failed_wep" msgid="2702820087105284461">"Подесувањето на безбеден безжичен рутер (WEP) не е поддржано"</string>
-    <string name="wifi_wps_failed_tkip" msgid="4282401586860713349">"Подесувањето на безбеден безжичен рутер (TKIP) не е поддржано"</string>
-    <string name="wifi_wps_failed_auth" msgid="1174614355181181958">"Автентикацијата не успеа. Обидете се повторно."</string>
-    <string name="wifi_wps_failed_overlap" msgid="5159533685596844778">"Откриена е друга WPS сесија. Обидете се повторно за неколку минути."</string>
-    <string name="wifi_wps_failed_wifi_disconnected" msgid="3829472117754104164">"Wi‑Fi е исклучена. Поставувањето на WPS е откажано."</string>
     <string name="wifi_ssid" msgid="5519636102673067319">"Име на мрежа"</string>
     <string name="wifi_ssid_hint" msgid="897593601067321355">"Внеси SSID"</string>
     <string name="wifi_security" msgid="6603611185592956936">"Безбедност"</string>
@@ -939,8 +924,10 @@
     <string name="wifi_hotspot_configure_ap_text_summary" msgid="5560680057727007011">"Точка на пристап AndroidAP WPA2 PSK"</string>
     <string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
     <string name="wifi_calling_settings_title" msgid="4102921303993404577">"Повикување преку Wi-Fi"</string>
-    <string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Вклучете Повици преку Wi-Fi"</string>
-    <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Зголемете ја покриеноста со повикување преку Wi-Fi"</string>
+    <!-- no translation found for wifi_calling_suggestion_title (7766895085362824508) -->
+    <skip />
+    <!-- no translation found for wifi_calling_suggestion_summary (6460250990899143406) -->
+    <skip />
     <string name="wifi_calling_mode_title" msgid="2164073796253284289">"Параметар за повикување"</string>
     <string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Режим – повикување преку Wi-Fi"</string>
     <string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Поставки за роаминг"</string>
@@ -1030,9 +1017,6 @@
     <string name="accessibility_work_account_title" msgid="1231830766637939527">"Работна сметка - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
     <string name="accessibility_personal_account_title" msgid="2169071663029067826">"Лична сметка - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
     <string name="search_settings" msgid="1910951467596035063">"Пребарај"</string>
-    <string name="search_settings_summary" msgid="9205656546570654169">"Управувај со подесувањата за пребарување и историја"</string>
-    <string name="search_settings_no_results" msgid="8799027492641230999">"Нема резултати"</string>
-    <string name="search_clear_history" msgid="4196658962573162457">"Исчисти ја историјата"</string>
     <string name="display_settings" msgid="7965901687241669598">"Приказ"</string>
     <string name="accelerometer_title" msgid="7854608399547349157">"Автоматско ротирање на екранот"</string>
     <string name="color_mode_title" msgid="9186249332902370471">"Бои"</string>
@@ -1891,6 +1875,12 @@
     <string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Може да влијае на изведбата"</string>
     <string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Кликнување откако покажувачот ќе престане да се движи"</string>
     <string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Одложување пред кликнување"</string>
+    <!-- no translation found for accessibility_vibration_settings_title (3453277326300320803) -->
+    <skip />
+    <!-- no translation found for accessibility_notification_vibration_title (660829933960942244) -->
+    <skip />
+    <!-- no translation found for accessibility_touch_vibration_title (7931823772673770492) -->
+    <skip />
     <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Користи ја услугата"</string>
     <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Користи корекција на боите"</string>
     <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Користи титлови"</string>
@@ -1918,6 +1908,22 @@
       <item quantity="one">Многу долго задржување (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
       <item quantity="other">Многу долго задржување (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
     </plurals>
+    <!-- no translation found for accessibility_vibration_summary_off (1753566394591809629) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_low (7628418309029013867) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_medium (3422136736880414093) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_high (3239807793182635729) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_off (4613890213008630847) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_low (2017572546489862987) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_medium (3782136025830279769) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_high (2543921139337952491) -->
+    <skip />
     <string name="accessibility_menu_item_settings" msgid="3344942964710773365">"Поставки"</string>
     <string name="accessibility_feature_state_on" msgid="2864292320042673806">"Вклучено"</string>
     <string name="accessibility_feature_state_off" msgid="4172584906487070211">"Исклучено"</string>
@@ -2067,6 +2073,24 @@
     <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Вашиот телефон се користел интензивно што значително ја испразнило батеријата. Батеријата е исправна.\n\n Телефонот се користел околу <xliff:g id="HOUR">%1$s</xliff:g> од последното целосно полнење.\n\n Вкупно користење:"</string>
     <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Вашиот таблет се користел интензивно што значително ја испразнило батеријата. Батеријата е исправна.\n\n Таблетот се користел околу <xliff:g id="HOUR">%1$s</xliff:g> од последното целосно полнење.\n\n Вкупно користење:"</string>
     <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Вашиот уред се користел интензивно што значително ја испразнило батеријата. Батеријата е исправна.\n\n Уредот се користел околу <xliff:g id="HOUR">%1$s</xliff:g> од последното целосно полнење.\n\n Вкупно користење:"</string>
+    <!-- no translation found for battery_tip_restrict_title (467228882789275512) -->
+    <!-- no translation found for battery_tip_restrict_handled_title (5203646029862183763) -->
+    <!-- no translation found for battery_tip_restrict_summary (9128154370135347093) -->
+    <!-- no translation found for battery_tip_restrict_handled_summary (29466713333477274) -->
+    <skip />
+    <!-- no translation found for battery_tip_restrict_app_dialog_title (8130618585820429591) -->
+    <!-- no translation found for battery_tip_restrict_app_dialog_message (5818730114373015028) -->
+    <skip />
+    <!-- no translation found for battery_tip_restrict_app_dialog_ok (8291115820018013353) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_title (4550106794311784978) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_message (4836135946080501395) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_ok (6022058431218137646) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_cancel (9062797114255859496) -->
+    <skip />
     <string name="smart_battery_manager_title" msgid="5677222263071864438">"Паметен управник со батерија"</string>
     <string name="smart_battery_title" msgid="7014692334636228916">"Автоматско управување со батерија"</string>
     <string name="smart_battery_summary" msgid="6435844879637999044">"Автоматски приспособувај го користењето на батеријата по апликација врз основа на користењето"</string>
@@ -2172,6 +2196,8 @@
     <string name="battery_detail_power_percentage" msgid="8064814503316094497">"<xliff:g id="PERCENT">%1$s</xliff:g> од вкупната употреба на апликациите (<xliff:g id="POWER">%2$d</xliff:g>mAh)"</string>
     <string name="battery_detail_info_title" msgid="8227822131405620369">"Употреба по целосно полнење"</string>
     <string name="battery_detail_manage_title" msgid="9094314252105828014">"Управување со употребата на батеријата"</string>
+    <!-- no translation found for advanced_battery_graph_subtext (5621073891377915877) -->
+    <skip />
     <string name="estimated_time_left" msgid="7514194472683370877">"Проценето преостанато време"</string>
     <string name="estimated_charging_time_left" msgid="5614442409326164691">"До целосно полнење"</string>
     <string name="estimated_time_description" msgid="8760210909000037089">"Приближното време може да се промени во зависност од употребата"</string>
@@ -2182,7 +2208,14 @@
     <string name="process_kernel_label" msgid="3916858646836739323">"Оперативен систем Android"</string>
     <string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
     <string name="process_dex2oat_label" msgid="2592408651060518226">"Оптимизација на апликација"</string>
-    <string name="battery_saver" msgid="8172485772238572153">"Штедач на батерија"</string>
+    <!-- no translation found for battery_saver (6002143200184768727) -->
+    <skip />
+    <!-- no translation found for battery_saver_auto_title (6896506441192920565) -->
+    <skip />
+    <!-- no translation found for battery_saver_auto_summary (8715989830471454219) -->
+    <skip />
+    <!-- no translation found for battery_saver_seekbar_title (3428789387167865312) -->
+    <skip />
     <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Користи го штедачот на батерија"</string>
     <string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Вклучи автоматски"</string>
     <string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Никогаш"</string>
@@ -2425,7 +2458,6 @@
     <string name="misc_files_selected_count" msgid="4647048020823912088">"избрани <xliff:g id="NUMBER">%1$d</xliff:g> од <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
     <string name="misc_files_selected_count_bytes" msgid="2876232009069114352">"<xliff:g id="NUMBER">%1$s</xliff:g> од <xliff:g id="TOTAL">%2$s</xliff:g>"</string>
     <string name="select_all" msgid="1562774643280376715">"Избери сè"</string>
-    <string name="data_plan_usage_manage_plans_button_text" msgid="8997761990902708162">"Управувајте со пакетите"</string>
     <string name="data_usage_summary_title" msgid="3804110657238092929">"Потрошен интернет"</string>
     <string name="data_usage_app_summary_title" msgid="4147258989837459172">"Сообраќај по аплик."</string>
     <string name="data_usage_accounting" msgid="7170028915873577387">"Пресметувањето податоци на операторот може да се разликува од вашиот уред."</string>
@@ -2472,6 +2504,8 @@
     <string name="data_usage_enable_mobile" msgid="986782622560157977">"Мобилен интернет"</string>
     <string name="data_usage_enable_3g" msgid="6304006671869578254">"2G-3G податоци"</string>
     <string name="data_usage_enable_4g" msgid="3635854097335036738">"4G податоци"</string>
+    <!-- no translation found for data_roaming_enable_mobile (1523331545457578362) -->
+    <skip />
     <string name="data_usage_forground_label" msgid="7654319010655983591">"Преден план:"</string>
     <string name="data_usage_background_label" msgid="2722008379947694926">"Заднина:"</string>
     <string name="data_usage_app_settings" msgid="2279171379771253165">"Поставки на апликација"</string>
@@ -2815,8 +2849,7 @@
     <string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Апликации и известувања"</string>
     <string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Дозволи, стандардни апликации"</string>
     <string name="account_dashboard_title" msgid="5895948991491438911">"Сметки"</string>
-    <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
-    <skip />
+    <string name="account_dashboard_default_summary" msgid="3998347400161811075">"Нема додадени сметки"</string>
     <string name="app_default_dashboard_title" msgid="7342549305933047317">"Стандардни апликации"</string>
     <string name="system_dashboard_summary" msgid="5797743225249766685">"Јазици, време, бекап и ажурирања"</string>
     <string name="search_results_title" msgid="1796252422574886932">"Поставки"</string>
@@ -2943,6 +2976,13 @@
     <string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Дадена апликација <xliff:g id="APP_NAME">%s</xliff:g> го вклучи режимот „Не вознемирувај“ автоматски"</string>
     <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Само приоритетно"</string>
     <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
+    <!-- no translation found for zen_mode_sound_summary_on (9067685807840094102) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_off_with_info (2348629457144123849) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_off (4375814717589425561) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_summary_off_info (8115159143760078050) -->
     <string name="sound_work_settings" msgid="6774324553228566442">"Звуци на работниот профил"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Користи звуци од личен профил"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Звуците се исти за работниот и личниот профил"</string>
@@ -2959,20 +2999,22 @@
     <string name="other_sound_category_preference_title" msgid="2521096636124314015">"Други звуци и вибрации"</string>
     <string name="configure_notification_settings" msgid="7616737397127242615">"Известувања"</string>
     <string name="recent_notifications" msgid="5660639387705060156">"Неодамна испратени"</string>
-    <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
-    <skip />
+    <string name="recent_notifications_see_all_title" msgid="3935564140468680831">"Приказ на сите апликации"</string>
     <string name="advanced_section_header" msgid="8833934850242546903">"Напредни"</string>
     <string name="profile_section_header" msgid="2320848161066912001">"Известувања за работен профил"</string>
     <string name="notification_badging_title" msgid="5938709971403474078">"Дозволи точки за известување"</string>
     <string name="notification_pulse_title" msgid="1905382958860387030">"Трепкај со сијаличката"</string>
-    <string name="lock_screen_notifications_title" msgid="6173076173408887213">"На заклучениот екран"</string>
+    <!-- no translation found for lock_screen_notifications_title (2583595963286467672) -->
+    <skip />
     <string name="lock_screen_notifications_summary_show" msgid="6407527697810672847">"Прикажи ја целата содржина од известувањето"</string>
-    <string name="lock_screen_notifications_summary_hide" msgid="7891552853357258782">"Сокриј содржина на чувствителни известувања"</string>
+    <!-- no translation found for lock_screen_notifications_summary_hide (8301305044690264958) -->
+    <skip />
     <string name="lock_screen_notifications_summary_disable" msgid="859628910427886715">"Воопшто не прикажувај известувања"</string>
     <string name="lock_screen_notifications_interstitial_message" msgid="6164532459432182244">"Кога уредот е заклучен, како сакате да се прикажуваат известувањата?"</string>
     <string name="lock_screen_notifications_interstitial_title" msgid="1416589393106326972">"Известувања"</string>
     <string name="lock_screen_notifications_summary_show_profile" msgid="835870815661120772">"Прикажи ги известувањата од раб. профил целосно"</string>
-    <string name="lock_screen_notifications_summary_hide_profile" msgid="256116258285695645">"Сокриј чувствителни содржини на извест. од работа"</string>
+    <!-- no translation found for lock_screen_notifications_summary_hide_profile (2005907007779384635) -->
+    <skip />
     <string name="lock_screen_notifications_summary_disable_profile" msgid="4080720698960233358">"Не прикажувај известувања од работниот профил"</string>
     <string name="lock_screen_notifications_interstitial_message_profile" msgid="8307705621027472346">"Кога уредот е заклучен, како сакате да се прикажуваат известувањата на профилот?"</string>
     <string name="lock_screen_notifications_interstitial_title_profile" msgid="3169806586032521333">"Известувања на профилот"</string>
@@ -2983,8 +3025,9 @@
     <string name="notification_importance_title" msgid="4368578960344731828">"Однесување"</string>
     <string name="notification_importance_unspecified" msgid="6622173510486113958">"Дозволете звук"</string>
     <string name="notification_importance_blocked" msgid="7938180808339386300">"Никогаш не прикажувај известувања"</string>
-    <string name="notification_importance_min" msgid="5455049524984686275">"Без звук или визуелен прекин"</string>
-    <string name="notification_importance_low" msgid="8881468429453766553">"Без звук"</string>
+    <!-- no translation found for notification_importance_min (9054819132085066824) -->
+    <skip />
+    <string name="notification_importance_low" msgid="2445139943005315690">"Прикажи тивко"</string>
     <string name="notification_importance_default" msgid="5958338024601957516">"Испушти звук"</string>
     <string name="notification_importance_high" msgid="2082429479238228527">"Испушти звук и прикажи го на екранот"</string>
     <string name="notification_importance_high_silent" msgid="2667033773703765252">"Прикажи го на екранот"</string>
@@ -3059,7 +3102,8 @@
     <string name="notification_channel_badge_title" msgid="2240827899882847087">"Прикажи точка за известување"</string>
     <string name="app_notification_override_dnd_title" msgid="7867458246395884830">"Отфрли го Не вознемирувај"</string>
     <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"Оставете ги известувањава да продолжат да прекинуваат кога опцијата Не вознемирувај е поставена на Само приоритетни"</string>
-    <string name="app_notification_visibility_override_title" msgid="2187232730902430718">"На заклучениот екран"</string>
+    <!-- no translation found for app_notification_visibility_override_title (7821124557634786985) -->
+    <skip />
     <string name="app_notification_row_banned" msgid="5983655258784814773">"Блокирана"</string>
     <string name="app_notification_row_priority" msgid="7723839972982746568">"Приоритет"</string>
     <string name="app_notification_row_sensitive" msgid="1809610030432329940">"Чувствителна"</string>
@@ -3324,43 +3368,28 @@
     <string name="decline_remote_bugreport_action" msgid="518720235407565134">"Одбиј"</string>
     <string name="usb_use_charging_only" msgid="2180443097365214467">"Полнење на уредов"</string>
     <string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Само ја полни батеријата"</string>
-    <!-- no translation found for usb_use_power_only (6449381364444187612) -->
-    <skip />
-    <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
-    <skip />
-    <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
-    <skip />
+    <string name="usb_use_power_only" msgid="6449381364444187612">"Полнење поврзан уред"</string>
+    <string name="usb_use_power_only_desc" msgid="5674490059427055197">"Другите поставки не се достапни кога е вклучено"</string>
+    <string name="usb_use_file_transfers" msgid="1223134119354320726">"Пренос на датотеки"</string>
     <string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Пренесете ги датотеките на друг уред"</string>
-    <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
-    <skip />
+    <string name="usb_use_photo_transfers" msgid="8192719651229326283">"PTP"</string>
     <string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Пренесувај фотографии или датотеки ако не е подржан MTP (PTP)"</string>
-    <!-- no translation found for usb_use_tethering (3944506882789422118) -->
-    <skip />
+    <string name="usb_use_tethering" msgid="3944506882789422118">"Врзување преку USB"</string>
     <string name="usb_use_MIDI" msgid="5116404702692483166">"МИДИ"</string>
     <string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Користете го уредов како MIDI"</string>
     <string name="usb_use" msgid="3372728031108932425">"Користи USB за"</string>
-    <!-- no translation found for usb_use_also (557340935190819370) -->
-    <skip />
+    <string name="usb_use_also" msgid="557340935190819370">"Користење на USB и за"</string>
     <string name="usb_pref" msgid="1400617804525116158">"USB"</string>
     <string name="usb_summary_charging_only" msgid="7544327009143659751">"Полнење на уредот"</string>
-    <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
-    <skip />
-    <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
-    <skip />
-    <!-- no translation found for usb_summary_tether (951190049557074535) -->
-    <skip />
-    <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
-    <skip />
-    <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
-    <skip />
-    <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
-    <skip />
-    <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
-    <skip />
-    <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
-    <skip />
-    <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
-    <skip />
+    <string name="usb_summary_power_only" msgid="1996391096369798526">"Се полни поврзаниот уред"</string>
+    <string name="usb_summary_file_transfers" msgid="6925168380589489645">"Пренос на датотеки"</string>
+    <string name="usb_summary_tether" msgid="951190049557074535">"Врзување преку USB"</string>
+    <string name="usb_summary_photo_transfers" msgid="665584667685030007">"PTP"</string>
+    <string name="usb_summary_MIDI" msgid="2399066753961085360">"MIDI"</string>
+    <string name="usb_summary_file_transfers_power" msgid="7700800611455849806">"Пренос на датотеки и полнење уред"</string>
+    <string name="usb_summary_tether_power" msgid="5825335393952752238">"Врзување преку USB и полнење уред"</string>
+    <string name="usb_summary_photo_transfers_power" msgid="6826058111908423069">"PTP и полнење уред"</string>
+    <string name="usb_summary_MIDI_power" msgid="3308250484012677596">"MIDI и полнење уред"</string>
     <string name="sms_mirroring_pref" msgid="6475043279147376031">"Отсликување SMS-пораки"</string>
     <string name="background_check_pref" msgid="7550258400138010979">"Проверка на заднината"</string>
     <string name="background_check_title" msgid="4534254315824525593">"Целосен пристап до заднината"</string>
@@ -3474,10 +3503,8 @@
     <string name="location_on_summary" msgid="4083334422422067511">"ВКЛУЧЕНО"</string>
     <string name="location_off_summary" msgid="6474350053215707957">"ИСКЛУЧЕНО"</string>
     <string name="backup_disabled" msgid="485189128759595412">"Бекапот е оневозможен"</string>
-    <!-- no translation found for android_version_summary (2935995161657697278) -->
-    <skip />
-    <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
-    <skip />
+    <string name="android_version_summary" msgid="2935995161657697278">"Ажурирано на Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+    <string name="android_version_pending_update_summary" msgid="487831391976523090">"Достапно е ажурирање"</string>
     <string name="disabled_by_policy_title" msgid="627023216027648534">"Дејството не е дозволено"</string>
     <string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Не може да се промени јачината на звукот"</string>
     <string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Повикувањето не е дозволено"</string>
@@ -3498,8 +3525,7 @@
     <string name="condition_hotspot_summary" msgid="3433182779269409683">"Преносливата Wi-Fi-точка на пристап <xliff:g id="ID_1">%1$s</xliff:g> е активна. Wi-Fi за овој уред е исклучен."</string>
     <string name="condition_airplane_title" msgid="287356299107070503">"Авионскиот режим е вклучен"</string>
     <string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth и мобилната мрежа се исклучени. Не може да воспоставувате телефонски повици или да се поврзувате на интернет."</string>
-    <!-- no translation found for condition_zen_title (2897779738211625) -->
-    <skip />
+    <string name="condition_zen_title" msgid="2897779738211625">"Вклучено е „Не вознемирувај“"</string>
     <string name="condition_battery_title" msgid="3272131008388575349">"Штедачот на батерија е вклучен"</string>
     <string name="condition_battery_summary" msgid="4418839236027977450">"Изведбата е намалена. Услугите според локација и податоците од заднина се исклучени."</string>
     <string name="condition_cellular_title" msgid="1327317003797575735">"Мобилниот интернет е исклучен"</string>
@@ -3564,6 +3590,20 @@
       <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> апликација има дозвола да користи неограничен интернет кога е вклучен Штедачот на интернет</item>
       <item quantity="other"><xliff:g id="COUNT">%1$d</xliff:g> апликации имаат дозвола да користат неограничен интернет кога е вклучен Штедачот на интернет</item>
     </plurals>
+    <!-- no translation found for data_usage_title (3659356290392241789) -->
+    <skip />
+    <!-- no translation found for data_used (5116389957228457203) -->
+    <skip />
+    <!-- no translation found for data_remaining (8998091725895502181) -->
+    <skip />
+    <!-- no translation found for cycle_left_time_text (8501602478371081001) -->
+    <skip />
+    <!-- no translation found for carrier_and_update_text (4534395723031386923) -->
+    <skip />
+    <!-- no translation found for no_carrier_update_text (6879630084452907385) -->
+    <skip />
+    <!-- no translation found for launch_mdp_app_text (7527361210375612985) -->
+    <skip />
     <string name="data_saver_title" msgid="398458827917495765">"Штедач на интернет"</string>
     <string name="unrestricted_data_saver" msgid="952796077540228711">"Неограничен интернет"</string>
     <string name="restrict_background_blacklisted" msgid="3995443391711013068">"Исклучен сообраќај во заднина"</string>
@@ -3583,6 +3623,10 @@
     <string name="battery_saver_off_summary" msgid="8309471955051162327">"Исклучен/<xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="battery_saver_desc_turn_on_auto_never" msgid="6715896635178578813">"Никогаш не вклучувај автоматски"</string>
     <string name="battery_saver_desc_turn_on_auto_pct" msgid="7472323223085636533">"Вклучи автоматски при %1$s батерија"</string>
+    <!-- no translation found for battery_saver_button_turn_on (3699954061337848832) -->
+    <skip />
+    <!-- no translation found for battery_saver_button_turn_off (5916996792004611890) -->
+    <skip />
     <string name="not_battery_optimizing" msgid="5362861851864837617">"Не се користи оптимизација на батеријата"</string>
     <string name="lockscreen_remote_input" msgid="969871538778211843">"Ако уредот е заклучен, спречете внесување одговори или друг текст во известувања"</string>
     <string name="default_spell_checker" msgid="8506899870026026660">"Стандард. проверка на правопис"</string>
@@ -3836,4 +3880,6 @@
     <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Име на уред"</string>
     <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Користење Bluetooth при возење"</string>
     <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Вклучување Bluetooth автоматски при возење"</string>
+    <!-- no translation found for dev_android_o_battery_settings_title (2926578228655006762) -->
+    <skip />
 </resources>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 0041d4c..303f7de 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -347,10 +347,8 @@
     <string name="owner_info_settings_title" msgid="5530285568897386122">"Qulflangan ekran ustidagi matn"</string>
     <string name="security_enable_widgets_title" msgid="2754833397070967846">"Vidjetlarni yoqish"</string>
     <string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Administrator tomonidan o‘chirilgan"</string>
-    <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
-    <skip />
-    <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
-    <skip />
+    <string name="lockdown_settings_title" msgid="7393790212603280213">"Qulflash funksiyasini ko‘rsatish"</string>
+    <string name="lockdown_settings_summary" msgid="8678086272188880615">"Kengaytirilgan ruxsat va barmoq izi bilan qulfni ochishni faolsizlantiradigan quvvat tugmasi funksiyasini ko‘rsatish."</string>
     <string name="owner_info_settings_summary" msgid="7472393443779227052">"Yo‘q"</string>
     <string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
     <string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"M-n: Alisherning Android telefoni"</string>
@@ -471,17 +469,14 @@
     <string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Siz kiritgan parol to‘g‘ri, biroq planshetdagi ma’lumotlar shikastlangan.\n\nPlanshetdan foydalanishda davom etish uchun uning zavod sozlamalarini tiklashingiz lozim. Shundan so‘ng, Google hisobingizga zaxiralangan barcha ma’lumotlaringizni qayta tiklab olishingiz mumkin bo‘ladi."</string>
     <string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Siz kiritgan parol to‘g‘ri, biroq telefondagi ma’lumotlar shikastlangan.\n\nTelefondan foydalanishda davom etish uchun uning zavod sozlamalarini tiklashingiz lozim. Shundan so‘ng, Google hisobingizga zaxiralangan barcha ma’lumotlaringizni qayta tiklab olishingiz mumkin bo‘ladi."</string>
     <string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Yozish usulini o‘zgartirish"</string>
-    <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
-    <skip />
-    <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
-    <skip />
-    <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
-    <skip />
-    <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
-    <skip />
-    <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
-    <skip />
-    <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Barmoq izingiz bilan oching"</string>
+    <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Ekran qulfini sozlash"</string>
+    <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Planshetingizni begonalardan himoyalang"</string>
+    <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Qurilmangizni begonalardan himoyalang"</string>
+    <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Telefoningizni begonalardan himoyalang"</string>
+    <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Barmoq izi skaneri"</string>
+    <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Barmoq izingiz bilan oching"</string>
+    <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Barmoq izingiz bilan oching"</string>
+    <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Barmoq izingiz bilan oching"</string>
     <string name="lock_settings_picker_title" msgid="1095755849152582712">"Ekran qulfini tanlang"</string>
     <string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Ishchi profil qulfini tanlang"</string>
     <string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Planshetingizni himoyalang"</string>
@@ -786,9 +781,7 @@
     <string name="wifi_configure_settings_preference_summary_wakeup_on" msgid="646393113104367290">"Wi-Fi avtomatik tarzda qayta yoqiladi"</string>
     <string name="wifi_configure_settings_preference_summary_wakeup_off" msgid="2782566279864356713">"Wi‑Fi avtomatik tarzda qayta yoqilmaydi"</string>
     <string name="wifi_access_points" msgid="7053990007031968609">"Wi‑Fi tarmoqlari"</string>
-    <string name="wifi_menu_wps_pbc" msgid="2668564692207863017">"WPS tugmasi"</string>
     <string name="wifi_menu_more_options" msgid="2448097861752719396">"Ko‘proq tanlamalar"</string>
-    <string name="wifi_menu_wps_pin" msgid="6426448256268695933">"WPS PIN-kodini kiritish"</string>
     <string name="wifi_menu_p2p" msgid="7619851399250896797">"Wi‑Fi Direct"</string>
     <string name="wifi_menu_scan" msgid="1470911530412095868">"Qidiruv"</string>
     <string name="wifi_menu_advanced" msgid="7522252991919573664">"Qo‘shimcha funksiyalar"</string>
@@ -806,19 +799,6 @@
     <string name="wifi_show_advanced" msgid="3409422789616520979">"Kengaytirilgan sozlamalar"</string>
     <string name="wifi_advanced_toggle_description_expanded" msgid="2380600578544493084">"Qo‘shimcha parametrlar pastga ochiluvchi ro‘yxatda joylashgan. Yig‘ish uchun ikki marta bosing."</string>
     <string name="wifi_advanced_toggle_description_collapsed" msgid="1463812308429197263">"Qo‘shimcha parametrlar pastga ochiluvchi ro‘yxatda joylashgan. Yoyish uchun ikki marta bosing."</string>
-    <string name="wifi_wps_setup_title" msgid="8207552222481570175">"Wi‑Fi himoyalangan sozlash"</string>
-    <string name="wifi_wps_setup_msg" msgid="315174329121275092">"WPS‘ni boshlamoqda…"</string>
-    <string name="wifi_wps_onstart_pbc" msgid="817003360936932340">"Routerdagi “Wi‑Fi xavfsiz sozlash” tugmasini bosing. U “WPS” deb nomlangan bo‘lishi yoki quyidagi belgi bilan ko‘rsatilgan bo‘lishi mumkin:"</string>
-    <string name="wifi_wps_onstart_pin" msgid="223344506445335358">"Wi-Fi routerdagi <xliff:g id="NUMBER">%1$s</xliff:g> PIN-kodini kiriting. Sozlash ikki daqiqagacha vaqt oladi."</string>
-    <string name="wifi_wps_complete" msgid="2388138550456729134">"WPS muvaffaqiyatli amalga oshdi. Tarmoqqa ulanmoqda…"</string>
-    <string name="wifi_wps_connected" msgid="7153432445748931183">"<xliff:g id="NETWORK_NAME">%s</xliff:g> Wi-Fi tarmog‘iga ulangan"</string>
-    <string name="wifi_wps_in_progress" msgid="3372311348221357944">"WPS allaqachon bajarilmoqda va u taxminan 2 daqiqada yakunlanadi"</string>
-    <string name="wifi_wps_failed_generic" msgid="5668775022238832527">"WPS bajarilmadi. Iltimos, bir necha daqiqadan so‘ng yana takrorlang."</string>
-    <string name="wifi_wps_failed_wep" msgid="2702820087105284461">"Simsiz router xavfsizlik sozlamasi (WEP) qo‘llab-quvvatlanmaydi"</string>
-    <string name="wifi_wps_failed_tkip" msgid="4282401586860713349">"Simsiz router xavfsizlik sozlamasi (TKIP) qo‘llab-quvvatlanmaydi"</string>
-    <string name="wifi_wps_failed_auth" msgid="1174614355181181958">"Tasdiqlanmadi. Iltimos, yana takrorlang."</string>
-    <string name="wifi_wps_failed_overlap" msgid="5159533685596844778">"Boshqa WPS sessiyasi aniqlandi. Iltimos, bir necha daqiqadan so‘ng yana takrorlang."</string>
-    <string name="wifi_wps_failed_wifi_disconnected" msgid="3829472117754104164">"Wi‑Fi aloqasi uzildi. WPS parametrini sozlash bekor qilindi."</string>
     <string name="wifi_ssid" msgid="5519636102673067319">"Tarmoq nomi"</string>
     <string name="wifi_ssid_hint" msgid="897593601067321355">"Tarmoq nomini (SSID) kiriting"</string>
     <string name="wifi_security" msgid="6603611185592956936">"Himoya"</string>
@@ -944,8 +924,9 @@
     <string name="wifi_hotspot_configure_ap_text_summary" msgid="5560680057727007011">"AndroidAP WPA2 PSK hotspot"</string>
     <string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
     <string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi qo‘ng‘iroq"</string>
-    <string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi qo‘ng‘iroqni yoqing"</string>
-    <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+    <!-- no translation found for wifi_calling_suggestion_title (7766895085362824508) -->
+    <skip />
+    <!-- no translation found for wifi_calling_suggestion_summary (6460250990899143406) -->
     <skip />
     <string name="wifi_calling_mode_title" msgid="2164073796253284289">"Qo‘ng‘iroqlar sozlamalari"</string>
     <string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi qo‘ng‘iroq rejimi"</string>
@@ -1036,9 +1017,6 @@
     <string name="accessibility_work_account_title" msgid="1231830766637939527">"Ishchi hisob – <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
     <string name="accessibility_personal_account_title" msgid="2169071663029067826">"Shaxsiy hisob – <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
     <string name="search_settings" msgid="1910951467596035063">"Qidiruv"</string>
-    <string name="search_settings_summary" msgid="9205656546570654169">"Qidiruv sozlamalari va tarix boshqaruvi"</string>
-    <string name="search_settings_no_results" msgid="8799027492641230999">"Hech narsa topilmadi"</string>
-    <string name="search_clear_history" msgid="4196658962573162457">"Jurnalni tozalash"</string>
     <string name="display_settings" msgid="7965901687241669598">"Ekran"</string>
     <string name="accelerometer_title" msgid="7854608399547349157">"Ekranning avtomatik burilishi"</string>
     <string name="color_mode_title" msgid="9186249332902370471">"Ranglar"</string>
@@ -1199,8 +1177,7 @@
     <string name="status_network_type" msgid="3279383550222116235">"Mobil tarmoq turi"</string>
     <string name="status_latest_area_info" msgid="7222470836568238054">"Operator ma‘lumoti"</string>
     <string name="status_data_state" msgid="5503181397066522950">"Mobil tarmoq ahvoli"</string>
-    <!-- no translation found for status_esim_id (6456255368300906317) -->
-    <skip />
+    <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
     <string name="status_service_state" msgid="2323931627519429503">"Xizmat holati"</string>
     <string name="status_signal_strength" msgid="3732655254188304547">"Signal darajasi"</string>
     <string name="status_roaming" msgid="2638800467430913403">"Rouming"</string>
@@ -1388,8 +1365,7 @@
     <string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi, mobil internet va Bluetooth parametrlarini tiklash"</string>
     <string name="reset_network_desc" msgid="5547979398298881406">"Bu barcha tarmoq sozlamalarini, jumladan, mazkur sozlamalarni asliga qaytaradi:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobil internet"</li>\n<li>"Bluetooth"</li></string>
     <string name="reset_esim_title" msgid="5914265121343650792">"Shuningdek, eSIM kartalar asliga qaytarilsin"</string>
-    <!-- no translation found for reset_esim_desc (6412324670559060446) -->
-    <skip />
+    <string name="reset_esim_desc" msgid="6412324670559060446">"Telefondan barcha eSIM kartalarni tozalash. Bunda mobil xizmat tarif rejalari bekor qilinmaydi. Aloqa operatoriga murojaat qilib eSIMni qayta yuklab olishingiz mumkin."</string>
     <string name="reset_network_button_text" msgid="2035676527471089853">"Sozlamalarni tiklash"</string>
     <string name="reset_network_final_desc" msgid="6388371121099245116">"Barcha tarmoq sozlamalari qayta tiklansinmi? Bu amalni ortga qaytarib bo‘lmaydi!"</string>
     <string name="reset_network_final_button_text" msgid="1797434793741744635">"Sozlamalarni tiklash"</string>
@@ -1899,6 +1875,12 @@
     <string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Unumdorligiga ta’sir qilishi mumkin"</string>
     <string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Kursor harakatlanishdan to‘xtagandan keyin bosing"</string>
     <string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Bosishdan oldin biroz kuting"</string>
+    <!-- no translation found for accessibility_vibration_settings_title (3453277326300320803) -->
+    <skip />
+    <!-- no translation found for accessibility_notification_vibration_title (660829933960942244) -->
+    <skip />
+    <!-- no translation found for accessibility_touch_vibration_title (7931823772673770492) -->
+    <skip />
     <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Xizmatdan foydalanish"</string>
     <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Rangni tuzatish funksiyasidan foydalanish"</string>
     <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Taglavhalardan foydalanish"</string>
@@ -1926,6 +1908,22 @@
       <item quantity="other">Juda uzoq kechikish bilan (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
       <item quantity="one">Juda uzoq kechikish bilan (<xliff:g id="CLICK_DELAY_LABEL_0">%1$d</xliff:g> ms)</item>
     </plurals>
+    <!-- no translation found for accessibility_vibration_summary_off (1753566394591809629) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_low (7628418309029013867) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_medium (3422136736880414093) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_summary_high (3239807793182635729) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_off (4613890213008630847) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_low (2017572546489862987) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_medium (3782136025830279769) -->
+    <skip />
+    <!-- no translation found for accessibility_vibration_intensity_high (2543921139337952491) -->
+    <skip />
     <string name="accessibility_menu_item_settings" msgid="3344942964710773365">"Sozlamalar"</string>
     <string name="accessibility_feature_state_on" msgid="2864292320042673806">"Yoniq"</string>
     <string name="accessibility_feature_state_off" msgid="4172584906487070211">"O‘chiq"</string>
@@ -2089,6 +2087,24 @@
     <!-- String.format failed for translation -->
     <!-- no translation found for battery_tip_dialog_message (7621045312469814256) -->
     <skip />
+    <!-- no translation found for battery_tip_restrict_title (467228882789275512) -->
+    <!-- no translation found for battery_tip_restrict_handled_title (5203646029862183763) -->
+    <!-- no translation found for battery_tip_restrict_summary (9128154370135347093) -->
+    <!-- no translation found for battery_tip_restrict_handled_summary (29466713333477274) -->
+    <skip />
+    <!-- no translation found for battery_tip_restrict_app_dialog_title (8130618585820429591) -->
+    <!-- no translation found for battery_tip_restrict_app_dialog_message (5818730114373015028) -->
+    <skip />
+    <!-- no translation found for battery_tip_restrict_app_dialog_ok (8291115820018013353) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_title (4550106794311784978) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_message (4836135946080501395) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_ok (6022058431218137646) -->
+    <skip />
+    <!-- no translation found for battery_tip_unrestrict_app_dialog_cancel (9062797114255859496) -->
+    <skip />
     <string name="smart_battery_manager_title" msgid="5677222263071864438">"Batareya quvvatini tejash"</string>
     <string name="smart_battery_title" msgid="7014692334636228916">"Energiya iste’molini avtomatik nazorat qilish"</string>
     <string name="smart_battery_summary" msgid="6435844879637999044">"Ilovalarning energiya iste’molini avtomatik nazorat qilish"</string>
@@ -2200,6 +2216,8 @@
     <!-- no translation found for battery_detail_info_title (8227822131405620369) -->
     <skip />
     <string name="battery_detail_manage_title" msgid="9094314252105828014">"Batareya sarfini boshqarish"</string>
+    <!-- no translation found for advanced_battery_graph_subtext (5621073891377915877) -->
+    <skip />
     <string name="estimated_time_left" msgid="7514194472683370877">"Taxminiy qolgan vaqt"</string>
     <string name="estimated_charging_time_left" msgid="5614442409326164691">"Quvvati to‘lishigacha qolgan vaqt"</string>
     <string name="estimated_time_description" msgid="8760210909000037089">"Hisob-kitob natijasi foydalanish intensivligiga qarab o‘zgarishi mumkin"</string>
@@ -2210,7 +2228,14 @@
     <string name="process_kernel_label" msgid="3916858646836739323">"Android OS"</string>
     <string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
     <string name="process_dex2oat_label" msgid="2592408651060518226">"Ilovalarni optimallashtirish"</string>
-    <string name="battery_saver" msgid="8172485772238572153">"Quvvat tejash"</string>
+    <!-- no translation found for battery_saver (6002143200184768727) -->
+    <skip />
+    <!-- no translation found for battery_saver_auto_title (6896506441192920565) -->
+    <skip />
+    <!-- no translation found for battery_saver_auto_summary (8715989830471454219) -->
+    <skip />
+    <!-- no translation found for battery_saver_seekbar_title (3428789387167865312) -->
+    <skip />
     <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Quvvat tejash funksiyasidan foydalanish"</string>
     <string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Avtomatik yoqish"</string>
     <string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Hech qachon"</string>
@@ -2399,12 +2424,9 @@
     <string name="sync_is_failing" msgid="1591561768344128377">"Sinxronizatsiyada muammo bor. Tez orada qayta tiklanadi."</string>
     <string name="add_account_label" msgid="7811707265834013767">"Hisob qo‘shish"</string>
     <string name="managed_profile_not_available_label" msgid="852263300911325904">"Ishchi profil hali mavjud emas"</string>
-    <!-- no translation found for work_mode_label (7157582467956920750) -->
-    <skip />
-    <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
-    <skip />
-    <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
-    <skip />
+    <string name="work_mode_label" msgid="7157582467956920750">"Ishchi profil"</string>
+    <string name="work_mode_on_summary" msgid="3628349169847990263">"Tashkilotingiz tomonidan boshqariladi"</string>
+    <string name="work_mode_off_summary" msgid="2657138190560082508">"Ilovalar va bildirishnomalar o‘chiq"</string>
     <string name="remove_managed_profile_label" msgid="3856519337797285325">"Ishchi profilni o‘chirish"</string>
     <string name="background_data" msgid="5779592891375473817">"Ma’lumotlarni fonda yuklash"</string>
     <string name="background_data_summary" msgid="8328521479872763452">"Ilovalar sinxronlanishi, ma’lumotlarni istalgan paytda jo‘natishi va qabul qilishi mumkin"</string>
@@ -2456,7 +2478,6 @@
     <string name="misc_files_selected_count" msgid="4647048020823912088">"Tanlandi: <xliff:g id="NUMBER">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
     <string name="misc_files_selected_count_bytes" msgid="2876232009069114352">"<xliff:g id="TOTAL">%2$s</xliff:g>dan <xliff:g id="NUMBER">%1$s</xliff:g>tasi"</string>
     <string name="select_all" msgid="1562774643280376715">"Hammasini belgilash"</string>
-    <string name="data_plan_usage_manage_plans_button_text" msgid="8997761990902708162">"Tarif rejalarini boshqarish"</string>
     <string name="data_usage_summary_title" msgid="3804110657238092929">"Trafik sarfi"</string>
     <string name="data_usage_app_summary_title" msgid="4147258989837459172">"Ilova sarflagan trafik"</string>
     <string name="data_usage_accounting" msgid="7170028915873577387">"Aloqa operatorining hisob-kitobi qurilmanikidan farq qilishi mumkin."</string>
@@ -2503,6 +2524,8 @@
     <string name="data_usage_enable_mobile" msgid="986782622560157977">"Mobil trafik"</string>
     <string name="data_usage_enable_3g" msgid="6304006671869578254">"2G-3G trafik"</string>
     <string name="data_usage_enable_4g" msgid="3635854097335036738">"4G trafik"</string>
+    <!-- no translation found for data_roaming_enable_mobile (1523331545457578362) -->
+    <skip />
     <string name="data_usage_forground_label" msgid="7654319010655983591">"Faol rejim:"</string>
     <string name="data_usage_background_label" msgid="2722008379947694926">"Orqa fon rejimi:"</string>
     <string name="data_usage_app_settings" msgid="2279171379771253165">"Ilova sozlamalari"</string>
@@ -2655,8 +2678,7 @@
       <item quantity="other">Sertifikatlarni tekshirish</item>
       <item quantity="one">Sertifikatni tekshirish</item>
     </plurals>
-    <!-- no translation found for user_settings_title (3493908927709169019) -->
-    <skip />
+    <string name="user_settings_title" msgid="3493908927709169019">"Bir nechta foydalanuvchi"</string>
     <string name="user_list_title" msgid="7937158411137563543">"Foydalanuvchilar &amp; profillar"</string>
     <string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Foydalanuvchi yoki profil qo‘shish"</string>
     <string name="user_add_user_menu" msgid="1675956975014862382">"Foydalanuvchi qo‘shish"</string>
@@ -2846,8 +2868,8 @@
     <string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
     <string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Ilovalar va bildirishnomalar"</string>
     <string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Ruxsatnomalar, birlamchi ilovalar"</string>
-    <!-- no translation found for account_dashboard_title (5895948991491438911) -->
-    <skip />
+    <string name="account_dashboard_title" msgid="5895948991491438911">"Hisoblar"</string>
+    <string name="account_dashboard_default_summary" msgid="3998347400161811075">"Hech qanday hisob qo‘shilmagan"</string>
     <string name="app_default_dashboard_title" msgid="7342549305933047317">"Birlamchi ilovalar"</string>
     <string name="system_dashboard_summary" msgid="5797743225249766685">"Tillar, vaqt, zaxira, yangilanishlar"</string>
     <string name="search_results_title" msgid="1796252422574886932">"Sozlamalar"</string>
@@ -2901,6 +2923,7 @@
     <string name="keywords_sim_status" msgid="1474422416860990564">"tarmoq, mobil tarmoq holati, xizmat holati, signal kuchi, mobil tarmoq turi, rouming, iccid"</string>
     <string name="keywords_model_and_hardware" msgid="1459248377212829642">"seriya raqami, apparat versiyasi"</string>
     <string name="keywords_android_version" msgid="9069747153590902819">"android tizimi xavfsizligi uchun yangilanish, aloqa moduli versiyasi, yadro versiyasi"</string>
+    <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Ekranning avtomatik yonishi, ekran qulfi"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi’ni sozlash u-n NFC yorliq"</string>
     <string name="write_tag" msgid="8571858602896222537">"Yozish"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Yozish uchun yorliq ustiga bosing…"</string>
@@ -2954,10 +2977,8 @@
     <string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Avtomatik yoqish"</string>
     <string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Avtomatik qoidalar"</string>
     <string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Avtomatik qoida"</string>
-    <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
-    <skip />
-    <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
-    <skip />
+    <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Muayyan vaqtlarda ovozsiz qilish"</string>
+    <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Bezovta qilmaslik qoidalari"</string>
     <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Qoidadan foydalanish"</string>
     <string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Faqat muhimlari"</string>
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Faqat signallar"</string>
@@ -2975,6 +2996,13 @@
     <string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Bezovta qilinmasin rejimi <xliff:g id="APP_NAME">%s</xliff:g> ilovasi tomonidan yoqilgan"</string>
     <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Faqat muhimlari"</string>
     <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
+    <!-- no translation found for zen_mode_sound_summary_on (9067685807840094102) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_off_with_info (2348629457144123849) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_off (4375814717589425561) -->
+    <skip />
+    <!-- no translation found for zen_mode_sound_summary_summary_off_info (8115159143760078050) -->
     <string name="sound_work_settings" msgid="6774324553228566442">"Ishchi profil ovozlari"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Shaxsiy profil ovozlaridan foydalanish"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Tovushlar ishchi va shaxsiy profillar uchun bir xil"</string>
@@ -2991,18 +3019,22 @@
     <string name="other_sound_category_preference_title" msgid="2521096636124314015">"Boshqa tovush va tebranishlar"</string>
     <string name="configure_notification_settings" msgid="7616737397127242615">"Bildirishnomalar"</string>
     <string name="recent_notifications" msgid="5660639387705060156">"Yaqinda yuborilgan"</string>
+    <string name="recent_notifications_see_all_title" msgid="3935564140468680831">"Barcha ilovalar"</string>
     <string name="advanced_section_header" msgid="8833934850242546903">"Kengaytirilgan sozlamalar"</string>
     <string name="profile_section_header" msgid="2320848161066912001">"Ishga oid bildirishnomalar"</string>
     <string name="notification_badging_title" msgid="5938709971403474078">"Bildirishnoma belgisi"</string>
     <string name="notification_pulse_title" msgid="1905382958860387030">"Indikator"</string>
-    <string name="lock_screen_notifications_title" msgid="6173076173408887213">"Qulflangan ekranda"</string>
+    <!-- no translation found for lock_screen_notifications_title (2583595963286467672) -->
+    <skip />
     <string name="lock_screen_notifications_summary_show" msgid="6407527697810672847">"Bildirishnomalar to‘liq chiqsin"</string>
-    <string name="lock_screen_notifications_summary_hide" msgid="7891552853357258782">"Maxfiy axborotlar berkitilsin"</string>
+    <!-- no translation found for lock_screen_notifications_summary_hide (8301305044690264958) -->
+    <skip />
     <string name="lock_screen_notifications_summary_disable" msgid="859628910427886715">"Bildirishnomalar chiqmasin"</string>
     <string name="lock_screen_notifications_interstitial_message" msgid="6164532459432182244">"Qurilmangiz qulflanganda, bildirishnomalar qanday ko‘rsatilsin?"</string>
     <string name="lock_screen_notifications_interstitial_title" msgid="1416589393106326972">"Bildirishnomalar"</string>
     <string name="lock_screen_notifications_summary_show_profile" msgid="835870815661120772">"Ishchi bildirishnomalar to‘liq ko‘rsatilsin"</string>
-    <string name="lock_screen_notifications_summary_hide_profile" msgid="256116258285695645">"Maxfiy ishchi profil bildirishnomalari berkitilsin"</string>
+    <!-- no translation found for lock_screen_notifications_summary_hide_profile (2005907007779384635) -->
+    <skip />
     <string name="lock_screen_notifications_summary_disable_profile" msgid="4080720698960233358">"Ishchi profil bildirishnomalari ko‘rsatilmasin"</string>
     <string name="lock_screen_notifications_interstitial_message_profile" msgid="8307705621027472346">"Qurilmangiz qulflanganda, profil bildirishnomalari qanday ko‘rsatilsin?"</string>
     <string name="lock_screen_notifications_interstitial_title_profile" msgid="3169806586032521333">"Profil bildirishnomalari"</string>
@@ -3013,8 +3045,9 @@
     <string name="notification_importance_title" msgid="4368578960344731828">"Xatti-harakatlar"</string>
     <string name="notification_importance_unspecified" msgid="6622173510486113958">"Ovozga ruxsat berish"</string>
     <string name="notification_importance_blocked" msgid="7938180808339386300">"Bildirishnomalar hech qachon ko‘rsatilmasin"</string>
-    <string name="notification_importance_min" msgid="5455049524984686275">"Bildirishnomalarsiz"</string>
-    <string name="notification_importance_low" msgid="8881468429453766553">"Ovozsiz"</string>
+    <!-- no translation found for notification_importance_min (9054819132085066824) -->
+    <skip />
+    <string name="notification_importance_low" msgid="2445139943005315690">"Ovozsiz"</string>
     <string name="notification_importance_default" msgid="5958338024601957516">"Ovozli"</string>
     <string name="notification_importance_high" msgid="2082429479238228527">"Ovoz va qalqib chiquvchi oyna"</string>
     <string name="notification_importance_high_silent" msgid="2667033773703765252">"Ekranga qalqib chiqish"</string>
@@ -3089,7 +3122,8 @@
     <string name="notification_channel_badge_title" msgid="2240827899882847087">"Bildirishnoma belgisini ko‘rsatish"</string>
     <string name="app_notification_override_dnd_title" msgid="7867458246395884830">"Bezovta qilinmasin rejimi ustidan yozish"</string>
     <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"Bezovta qilinmasin rejimida faqat muhim bildirishnomalarga ruxsat berilgan bo‘lsa, ushbu bildirishnomalarga ham ruxsat beriladi"</string>
-    <string name="app_notification_visibility_override_title" msgid="2187232730902430718">"Qulflangan ekranda"</string>
+    <!-- no translation found for app_notification_visibility_override_title (7821124557634786985) -->
+    <skip />
     <string name="app_notification_row_banned" msgid="5983655258784814773">"Bloklangan"</string>
     <string name="app_notification_row_priority" msgid="7723839972982746568">"Muhimlik darajasi"</string>
     <string name="app_notification_row_sensitive" msgid="1809610030432329940">"Maxfiy"</string>
@@ -3354,21 +3388,28 @@
     <string name="decline_remote_bugreport_action" msgid="518720235407565134">"Rad etish"</string>
     <string name="usb_use_charging_only" msgid="2180443097365214467">"Shu qurilmani quvvatlash"</string>
     <string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Faqat shu qurilmani quvvatlash"</string>
-    <string name="usb_use_power_only" msgid="6426550616883919530">"Quvvat uzatish"</string>
-    <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Boshqa ulangan qurilmani quvvatlash. Faqat USB orqali quvvatlash mumkin bo‘lgan qurilmalarda ishlaydi."</string>
-    <string name="usb_use_file_transfers" msgid="7409600791007250137">"Fayl uzatish"</string>
+    <string name="usb_use_power_only" msgid="6449381364444187612">"Ulangan qurilma quvvatlanmoqda"</string>
+    <string name="usb_use_power_only_desc" msgid="5674490059427055197">"Yoniqligida boshqa sozlamalar ishlamaydi"</string>
+    <string name="usb_use_file_transfers" msgid="1223134119354320726">"Fayl uzatish"</string>
     <string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Boshqa qurilmaga fayl o‘tkazish"</string>
-    <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Rasm uzatish (PTP)"</string>
+    <string name="usb_use_photo_transfers" msgid="8192719651229326283">"PTP"</string>
     <string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Agar MTP qo‘llab-quvvatlanmasa, surat yoki fayllarni o‘tkazish (PTP)"</string>
-    <string name="usb_use_MIDI" msgid="870922185938298263">"MIDI sifatida foydalanish"</string>
+    <string name="usb_use_tethering" msgid="3944506882789422118">"USB modem"</string>
+    <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
     <string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Bu qurilmadan MIDI sifatida foydalanish"</string>
-    <string name="usb_use" msgid="3256040963685055320">"USB ulanish maqsadi"</string>
+    <string name="usb_use" msgid="3372728031108932425">"USBdan foydalanish"</string>
+    <string name="usb_use_also" msgid="557340935190819370">"USB ulanish maqsadi"</string>
     <string name="usb_pref" msgid="1400617804525116158">"USB"</string>
     <string name="usb_summary_charging_only" msgid="7544327009143659751">"Shu qurilmani quvvatlash"</string>
-    <string name="usb_summary_power_only" msgid="3629517713817003738">"Quvvat uzatish"</string>
-    <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Fayllarni o‘tkazish"</string>
-    <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Rasm uzatish (PTP)"</string>
-    <string name="usb_summary_MIDI" msgid="5687906612187885908">"MIDI sifatida foydalanish"</string>
+    <string name="usb_summary_power_only" msgid="1996391096369798526">"Ulangan qurilma quvvatlanmoqda"</string>
+    <string name="usb_summary_file_transfers" msgid="6925168380589489645">"Fayl uzatish"</string>
+    <string name="usb_summary_tether" msgid="951190049557074535">"USB modem"</string>
+    <string name="usb_summary_photo_transfers" msgid="665584667685030007">"PTP"</string>
+    <string name="usb_summary_MIDI" msgid="2399066753961085360">"MIDI"</string>
+    <string name="usb_summary_file_transfers_power" msgid="7700800611455849806">"Fayl va quvvat uzatish"</string>
+    <string name="usb_summary_tether_power" msgid="5825335393952752238">"USB modem va quvvat uzatish"</string>
+    <string name="usb_summary_photo_transfers_power" msgid="6826058111908423069">"PTP va quvvat uzatish"</string>
+    <string name="usb_summary_MIDI_power" msgid="3308250484012677596">"MIDI va quvvat uzatish"</string>
     <string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS translatsiyasi"</string>
     <string name="background_check_pref" msgid="7550258400138010979">"Fonda tekshirish"</string>
     <string name="background_check_title" msgid="4534254315824525593">"Butun fonga ruxsat"</string>
@@ -3477,14 +3518,13 @@
     <string name="display_dashboard_summary" msgid="4145888780290131488">"Fon rasmi, uyqu rejimi, shrift o‘lchami"</string>
     <string name="display_summary_example" msgid="9102633726811090523">"10 daqiqa nofaollikdan keyin uyqu rejimiga o‘tish"</string>
     <string name="memory_summary" msgid="8080825904671961872">"O‘rtacha <xliff:g id="USED_MEMORY">%1$s</xliff:g> ishlatilmoqda, jami: <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
-    <string name="users_and_accounts_summary" msgid="245282689646897882">"Joriy foydalanuvchi: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
     <string name="users_summary" msgid="1674864467098487328">"Siz <xliff:g id="USER_NAME">%1$s</xliff:g> sifatida kirgansiz"</string>
     <string name="payment_summary" msgid="3472482669588561110">"Birlamchi ilova: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
-    <!-- no translation found for location_on_summary (4083334422422067511) -->
-    <skip />
+    <string name="location_on_summary" msgid="4083334422422067511">"YONIQ"</string>
     <string name="location_off_summary" msgid="6474350053215707957">"O‘CHIQ"</string>
     <string name="backup_disabled" msgid="485189128759595412">"Zaxiralash o‘chirilgan"</string>
-    <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> versiyasiga yangilandi"</string>
+    <string name="android_version_summary" msgid="2935995161657697278">"Android <xliff:g id="VERSION">%1$s</xliff:g> versiyasiga yangilandi"</string>
+    <string name="android_version_pending_update_summary" msgid="487831391976523090">"Yangilanish chiqdi"</string>
     <string name="disabled_by_policy_title" msgid="627023216027648534">"Bu amalga ruxsat berilmagan"</string>
     <string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Tovush balandligini o‘zgartirib bo‘lmadi"</string>
     <string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Chaqiruvga ruxsat berilmagan"</string>
@@ -3505,7 +3545,7 @@
     <string name="condition_hotspot_summary" msgid="3433182779269409683">"Wi-Fi ulanish nuqtasi (<xliff:g id="ID_1">%1$s</xliff:g>) yoniq. Bu qurilmada Wi-Fi aloqasi o‘chiq."</string>
     <string name="condition_airplane_title" msgid="287356299107070503">"Parvoz rejimi yoqilgan"</string>
     <string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth va mobil internet o‘chirilgan. Qo‘ng‘iroqlarni amalga oshira olmaysiz yoki internetga ulana olmaysiz."</string>
-    <string name="condition_zen_title" msgid="2679168532600816392">"Bezovta qilinmasin yoqilgan (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+    <string name="condition_zen_title" msgid="2897779738211625">"Bezovta qilinmasin rejimi yoniq"</string>
     <string name="condition_battery_title" msgid="3272131008388575349">"Quvvat tejash rejimi yoniq"</string>
     <string name="condition_battery_summary" msgid="4418839236027977450">"Unumdorlik kamayadi. Joylashuv xizmatlari va fondagi internet o‘chiriladi."</string>
     <string name="condition_cellular_title" msgid="1327317003797575735">"Mobil internet o‘chiq"</string>
@@ -3515,8 +3555,7 @@
     <string name="condition_work_title" msgid="7293722361184366648">"Ishchi profil o‘chirilgan"</string>
     <string name="condition_work_summary" msgid="7543202177571590378">"Ishchi profil bilan bog‘liq ilovalar, fonda sinxronlash va boshqa funksiyalar o‘chirib qo‘yildi."</string>
     <string name="night_display_suggestion_title" msgid="6602129097059325291">"Tungi rejim jadvalini sozlash"</string>
-    <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
-    <skip />
+    <string name="night_display_suggestion_summary" msgid="228346372178218442">"Har tunda ekran rangini avtomatik o‘zgartirish"</string>
     <string name="condition_night_display_title" msgid="5599814941976856183">"Tungi rejim yoqilgan"</string>
     <string name="condition_night_display_summary" msgid="5443722724310650381">"Ekran qizg‘ish tusga kirdi. Bu osonroq uyquga ketishga yordamlashadi."</string>
     <string name="suggestions_title_v2" msgid="5601181602924147569">"Taklif etiladi"</string>
@@ -3571,6 +3610,20 @@
       <item quantity="other">Trafik tejash rejimi yoniqligida <xliff:g id="COUNT">%1$d</xliff:g> ta ilova internet-trafikdan cheklovsiz foydalanishi mumkin</item>
       <item quantity="one">Trafik tejash rejimi yoniqligida 1 ta ilova internet-trafikdan cheklovsiz foydalanishi mumkin</item>
     </plurals>
+    <!-- no translation found for data_usage_title (3659356290392241789) -->
+    <skip />
+    <!-- no translation found for data_used (5116389957228457203) -->
+    <skip />
+    <!-- no translation found for data_remaining (8998091725895502181) -->
+    <skip />
+    <!-- no translation found for cycle_left_time_text (8501602478371081001) -->
+    <skip />
+    <!-- no translation found for carrier_and_update_text (4534395723031386923) -->
+    <skip />
+    <!-- no translation found for no_carrier_update_text (6879630084452907385) -->
+    <skip />
+    <!-- no translation found for launch_mdp_app_text (7527361210375612985) -->
+    <skip />
     <string name="data_saver_title" msgid="398458827917495765">"Trafik tejash"</string>
     <string name="unrestricted_data_saver" msgid="952796077540228711">"Cheklanmagan mobil internet"</string>
     <string name="restrict_background_blacklisted" msgid="3995443391711013068">"Fondagi internet o‘chiq"</string>
@@ -3590,6 +3643,10 @@
     <string name="battery_saver_off_summary" msgid="8309471955051162327">"O‘chiq / <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="battery_saver_desc_turn_on_auto_never" msgid="6715896635178578813">"Hech qachon avtomatik yoqilmasin"</string>
     <string name="battery_saver_desc_turn_on_auto_pct" msgid="7472323223085636533">"Batareya quvvati %1$s qolganda avtomatik yoqilsin"</string>
+    <!-- no translation found for battery_saver_button_turn_on (3699954061337848832) -->
+    <skip />
+    <!-- no translation found for battery_saver_button_turn_off (5916996792004611890) -->
+    <skip />
     <string name="not_battery_optimizing" msgid="5362861851864837617">"Batareya quvvati tejalmayapti"</string>
     <string name="lockscreen_remote_input" msgid="969871538778211843">"Qurilma qulflangan bo‘lsa, bildirishnomalarda matn kiritish taqiqlansin"</string>
     <string name="default_spell_checker" msgid="8506899870026026660">"Birlamchi imlo tekshirgich"</string>
@@ -3650,6 +3707,7 @@
     <string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Tezkor sozlamalarning dasturchi tugmalari"</string>
     <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Oyna trassirovkasi"</string>
     <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Yuza trassirovkasi"</string>
+    <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
     <string name="managed_profile_settings_title" msgid="2729481936758125054">"Ishchi profil sozlamalari"</string>
     <string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Kontaktlarni qidirish"</string>
     <string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Tashkilot nomi bo‘yicha qidiruvda qo‘ng‘iroq qiluvchi abonent va uning kontaktini aniqlashga ruxsat berish"</string>
@@ -3834,20 +3892,14 @@
     <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Ilova ishdan chiqqanda har safar muloqot oynasi ko‘rsatilsin"</string>
     <string name="directory_access" msgid="4722237210725864244">"Kataloglarga kirish"</string>
     <string name="keywords_directory_access" msgid="360557532842445280">"kataloglarga kirish"</string>
-    <!-- no translation found for directory_on_volume (1246959267814974387) -->
-    <skip />
-    <!-- no translation found for my_device_info_title (5512426315065239032) -->
-    <skip />
-    <!-- no translation found for my_device_info_title (7850936731324591758) -->
-    <skip />
-    <!-- no translation found for my_device_info_title (5512071003076176919) -->
-    <skip />
-    <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
-    <skip />
-    <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
-    <skip />
-    <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
-    <skip />
-    <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
+    <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+    <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Telefonim"</string>
+    <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Planshetim"</string>
+    <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Qurilmam"</string>
+    <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Hisob"</string>
+    <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Qurilma nomi"</string>
+    <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Avtomobilda Bluetoothni yoqish"</string>
+    <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Avtomobilda harakatlanayotganda Bluetooth aloqasini avtomatik ravishda yoqish"</string>
+    <!-- no translation found for dev_android_o_battery_settings_title (2926578228655006762) -->
     <skip />
 </resources>
diff --git a/res/values/bools.xml b/res/values/bools.xml
index 0cf085f..f20b93c 100644
--- a/res/values/bools.xml
+++ b/res/values/bools.xml
@@ -173,4 +173,7 @@
 
     <!-- Whether wifi_mac_address should be shown or not. -->
     <bool name="config_show_wifi_mac_address">true</bool>
+
+    <!-- Whether to disable "Uninstall Updates" menu item for System apps or not.. -->
+    <bool name="config_disable_uninstall_update">false</bool>
 </resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index d7a4586..d16e438 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1154,7 +1154,7 @@
     <string name="setup_lock_settings_picker_title" product="default">Protect your phone</string>
 
     <!-- Message shown when setting up screen lock, prompting user to choose the their backup screen lock method [CHAR LIMIT=NONE] -->
-    <string name="lock_settings_picker_fingerprint_added_security_message">For added security, set a backup screen lock.</string>
+    <string name="lock_settings_picker_fingerprint_added_security_message">For added security, set a backup screen lock</string>
 
     <!-- Description text for screen in setup wizard asking user to set up screen lock, explaining to the user how setting up a screen lock protect them from losing data. (tablet) [CHAR LIMIT=NONE] -->
     <string name="setup_lock_settings_picker_message" product="tablet">Prevent others from using this tablet without your permission by activating device protection features. Choose the screen lock you want to use.</string>
@@ -2142,6 +2142,8 @@
     <string name="wifi_hotspot_configure_ap_text_summary">AndroidAP WPA2 PSK hotspot</string>
     <!-- Default access point SSID used for tethering -->
     <string name="wifi_tether_configure_ssid_default">AndroidHotspot</string>
+    <!-- Summary text when hotspot is disabled because airplane mode is on [CHAR LIMIT=80]-->
+    <string name="wifi_tether_disabled_by_airplane">Unavailable because airplane mode is turned on</string>
 
     <!-- Do not translate. Used for diagnostic screens, precise translation is not necessary
          Wi-Fi Testing on the diagnostic screen-->
@@ -3477,19 +3479,19 @@
 
     <!-- Lock Pattern settings -->
     <!-- Header on first screen of choose password/PIN flow [CHAR LIMIT=40] -->
-    <string name="lockpassword_choose_your_screen_lock_header">Set a screen lock</string>
+    <string name="lockpassword_choose_your_screen_lock_header">Set screen lock</string>
     <!-- Message on first screen of choose password flow [CHAR LIMIT=NONE] -->
-    <string name="lockpassword_choose_your_password_message">For security, set a password</string>
+    <string name="lockpassword_choose_your_password_message">For security, set password</string>
     <!-- Header on first screen of choose password/PIN as backup for fingerprint flow. If this string cannot be translated in under 40 characters, please translate "Set fingerprint backup" [CHAR LIMIT=40] -->
-    <string name="lockpassword_choose_your_password_header_for_fingerprint">To use fingerprint, set a password</string>
+    <string name="lockpassword_choose_your_password_header_for_fingerprint">To use fingerprint, set password</string>
     <!-- Header on first screen of choose pattern as backup for fingerprint flow. If this string cannot be translated in under 40 characters, please translate "Set fingerprint backup" [CHAR LIMIT=40] -->
-    <string name="lockpassword_choose_your_pattern_header_for_fingerprint">To use fingerprint, set a pattern</string>
+    <string name="lockpassword_choose_your_pattern_header_for_fingerprint">To use fingerprint, set pattern</string>
     <!-- Message on first screen of choose PIN flow [CHAR LIMIT=NONE] -->
-    <string name="lockpassword_choose_your_pin_message">For security, set a PIN</string>
+    <string name="lockpassword_choose_your_pin_message">For security, set PIN</string>
     <!-- Header on first screen of choose password/PIN as backup for fingerprint flow. If this string cannot be translated in under 40 characters, please translate "Set fingerprint backup" [CHAR LIMIT=40] -->
-    <string name="lockpassword_choose_your_pin_header_for_fingerprint">To use fingerprint, set a PIN</string>
+    <string name="lockpassword_choose_your_pin_header_for_fingerprint">To use fingerprint, set PIN</string>
     <!-- Message on first screen of choose pattern flow [CHAR LIMIT=NONE] -->
-    <string name="lockpassword_choose_your_pattern_message">For security, set a pattern</string>
+    <string name="lockpassword_choose_your_pattern_message">For security, set pattern</string>
     <!-- Header on password confirm screen [CHAR LIMIT=40] -->
     <string name="lockpassword_confirm_your_password_header">Re-enter your password</string>
     <!-- Header on pattern confirm screen [CHAR LIMIT=30] -->
diff --git a/src/com/android/settings/accessibility/AccessibilitySettings.java b/src/com/android/settings/accessibility/AccessibilitySettings.java
index 7335bae..bd63225 100644
--- a/src/com/android/settings/accessibility/AccessibilitySettings.java
+++ b/src/com/android/settings/accessibility/AccessibilitySettings.java
@@ -470,7 +470,7 @@
         updateServicePreferences();
     }
 
-    private void updateServicePreferences() {
+    protected void updateServicePreferences() {
         // Since services category is auto generated we have to do a pass
         // to generate it since services can come and go and then based on
         // the global accessibility state to decided whether it is enabled.
@@ -611,7 +611,7 @@
         }
     }
 
-    private void updateSystemPreferences() {
+    protected void updateSystemPreferences() {
         // Move color inversion and color correction preferences to Display category if device
         // supports HWC hardware-accelerated color transform.
         if (isColorTransformAccelerated(getContext())) {
diff --git a/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java b/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
index 5790d34..5e12503 100755
--- a/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
+++ b/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
@@ -82,8 +82,8 @@
     private static final String TAG = "AppInfoDashboard";
 
     // Menu identifiers
-    private static final int UNINSTALL_ALL_USERS_MENU = 1;
-    private static final int UNINSTALL_UPDATES = 2;
+    @VisibleForTesting static final int UNINSTALL_ALL_USERS_MENU = 1;
+    @VisibleForTesting static final int UNINSTALL_UPDATES = 2;
     static final int FORCE_STOP_MENU = 3;
 
     // Result code identifiers
@@ -330,7 +330,10 @@
         menu.findItem(UNINSTALL_ALL_USERS_MENU).setVisible(shouldShowUninstallForAll(mAppEntry));
         mUpdatedSysApp = (mAppEntry.info.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0;
         final MenuItem uninstallUpdatesItem = menu.findItem(UNINSTALL_UPDATES);
-        uninstallUpdatesItem.setVisible(mUpdatedSysApp && !mAppsControlDisallowedBySystem);
+        final boolean uninstallUpdateDisabled = getContext().getResources().getBoolean(
+                R.bool.config_disable_uninstall_update);
+        uninstallUpdatesItem.setVisible(
+                mUpdatedSysApp && !mAppsControlDisallowedBySystem && !uninstallUpdateDisabled);
         if (uninstallUpdatesItem.isVisible()) {
             RestrictedLockUtils.setMenuItemAsDisabledByAdmin(getActivity(),
                     uninstallUpdatesItem, mAppsControlDisallowedAdmin);
diff --git a/src/com/android/settings/display/AmbientDisplaySettings.java b/src/com/android/settings/display/AmbientDisplaySettings.java
index 187325c..3cac078 100644
--- a/src/com/android/settings/display/AmbientDisplaySettings.java
+++ b/src/com/android/settings/display/AmbientDisplaySettings.java
@@ -79,7 +79,7 @@
     protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
         return buildPreferenceControllers(context, getLifecycle(),
                 new AmbientDisplayConfiguration(context), mMetricsFeatureProvider,
-                () -> { updatePreferenceStates(); });
+                this::updatePreferenceStates);
     }
 
     @Override
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index 3583b14..659166a 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -86,9 +86,6 @@
     @VisibleForTesting
     static final int BATTERY_TIP_LOADER = 2;
     private static final int MENU_STATS_TYPE = Menu.FIRST;
-    @VisibleForTesting
-    static final int MENU_HIGH_POWER_APPS = Menu.FIRST + 3;
-    private static final int MENU_HELP = Menu.FIRST + 5;
     public static final int DEBUG_INFO_LOADER = 3;
 
     @VisibleForTesting
@@ -257,8 +254,6 @@
                     .setAlphabeticShortcut('t');
         }
 
-        menu.add(Menu.NONE, MENU_HIGH_POWER_APPS, Menu.NONE, R.string.high_power_apps);
-
         super.onCreateOptionsMenu(menu, inflater);
     }
 
@@ -283,15 +278,6 @@
                 }
                 refreshUi();
                 return true;
-            case MENU_HIGH_POWER_APPS:
-                Bundle args = new Bundle();
-                args.putString(ManageApplications.EXTRA_CLASSNAME,
-                        HighPowerApplicationsActivity.class.getName());
-                sa.startPreferencePanel(this, ManageApplications.class.getName(), args,
-                        R.string.high_power_apps, null, null, 0);
-                metricsFeatureProvider.action(context,
-                        MetricsEvent.ACTION_SETTINGS_MENU_BATTERY_OPTIMIZATION);
-                return true;
             default:
                 return super.onOptionsItemSelected(item);
         }
diff --git a/src/com/android/settings/fuelgauge/batterytip/AnomalyDatabaseHelper.java b/src/com/android/settings/fuelgauge/batterytip/AnomalyDatabaseHelper.java
index a13df25..645ba16 100644
--- a/src/com/android/settings/fuelgauge/batterytip/AnomalyDatabaseHelper.java
+++ b/src/com/android/settings/fuelgauge/batterytip/AnomalyDatabaseHelper.java
@@ -19,10 +19,14 @@
 import android.content.Context;
 import android.database.sqlite.SQLiteDatabase;
 import android.database.sqlite.SQLiteOpenHelper;
+import android.support.annotation.IntDef;
 import android.util.Log;
 
 import com.android.settings.fuelgauge.anomaly.Anomaly;
 
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
 /**
  * Database controls the anomaly logging(e.g. packageName, anomalyType and time)
  */
@@ -30,7 +34,17 @@
     private static final String TAG = "BatteryDatabaseHelper";
 
     private static final String DATABASE_NAME = "battery_settings.db";
-    private static final int DATABASE_VERSION = 1;
+    private static final int DATABASE_VERSION = 2;
+
+    @Retention(RetentionPolicy.SOURCE)
+    @IntDef({State.NEW,
+            State.HANDLED,
+            State.AUTO_HANDLED})
+    public @interface State {
+        int NEW = 0;
+        int HANDLED = 1;
+        int AUTO_HANDLED = 2;
+    }
 
     public interface Tables {
         String TABLE_ANOMALY = "anomaly";
@@ -47,6 +61,11 @@
          */
         String ANOMALY_TYPE = "anomaly_type";
         /**
+         * The state of the anomaly app
+         * @see State
+         */
+        String ANOMALY_STATE = "anomaly_state";
+        /**
          * The time when anomaly happens
          */
         String TIME_STAMP_MS = "time_stamp_ms";
@@ -59,6 +78,8 @@
                     " TEXT, " +
                     AnomalyColumns.ANOMALY_TYPE +
                     " INTEGER, " +
+                    AnomalyColumns.ANOMALY_STATE +
+                    " INTEGER, " +
                     AnomalyColumns.TIME_STAMP_MS +
                     " INTEGER)";
 
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryDatabaseManager.java b/src/com/android/settings/fuelgauge/batterytip/BatteryDatabaseManager.java
index f87501f..2019b9d 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryDatabaseManager.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryDatabaseManager.java
@@ -17,6 +17,8 @@
 package com.android.settings.fuelgauge.batterytip;
 
 import static com.android.settings.fuelgauge.batterytip.AnomalyDatabaseHelper.AnomalyColumns
+        .ANOMALY_STATE;
+import static com.android.settings.fuelgauge.batterytip.AnomalyDatabaseHelper.AnomalyColumns
         .PACKAGE_NAME;
 import static com.android.settings.fuelgauge.batterytip.AnomalyDatabaseHelper.AnomalyColumns
         .ANOMALY_TYPE;
@@ -28,8 +30,10 @@
 import android.content.Context;
 import android.database.Cursor;
 import android.database.sqlite.SQLiteDatabase;
+import android.text.TextUtils;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 
 /**
@@ -55,22 +59,24 @@
             values.put(PACKAGE_NAME, packageName);
             values.put(ANOMALY_TYPE, type);
             values.put(TIME_STAMP_MS, timestampMs);
-
+            values.put(ANOMALY_STATE, AnomalyDatabaseHelper.State.NEW);
             db.insert(TABLE_ANOMALY, null, values);
         }
     }
 
     /**
-     * Query all the anomalies that happened after {@code timestampMs}.
+     * Query all the anomalies that happened after {@code timestampMsAfter} and with {@code state}.
      */
-    public List<AppInfo> queryAllAnomaliesAfter(long timestampMs) {
+    public List<AppInfo> queryAllAnomalies(long timestampMsAfter, int state) {
         final List<AppInfo> appInfos = new ArrayList<>();
         try (SQLiteDatabase db = mDatabaseHelper.getReadableDatabase()) {
             final String[] projection = {PACKAGE_NAME, ANOMALY_TYPE};
             final String orderBy = AnomalyDatabaseHelper.AnomalyColumns.TIME_STAMP_MS + " DESC";
 
-            try (Cursor cursor = db.query(TABLE_ANOMALY, projection, TIME_STAMP_MS + " > ?",
-                    new String[]{String.valueOf(timestampMs)}, null, null, orderBy)) {
+            try (Cursor cursor = db.query(TABLE_ANOMALY, projection,
+                    TIME_STAMP_MS + " > ? AND " + ANOMALY_STATE + " = ? ",
+                    new String[]{String.valueOf(timestampMsAfter), String.valueOf(state)}, null,
+                    null, orderBy)) {
                 while (cursor.moveToNext()) {
                     AppInfo appInfo = new AppInfo.Builder()
                             .setPackageName(cursor.getString(cursor.getColumnIndex(PACKAGE_NAME)))
@@ -90,4 +96,26 @@
                     new String[]{String.valueOf(timestampMs)});
         }
     }
+
+    /**
+     * Update the type of anomalies to {@code state}
+     *
+     * @param appInfos represents the anomalies
+     * @param state    which state to update to
+     */
+    public void updateAnomalies(List<AppInfo> appInfos, int state) {
+        if (!appInfos.isEmpty()) {
+            final int size = appInfos.size();
+            final String[] whereArgs = new String[size];
+            for (int i = 0; i < size; i++) {
+                whereArgs[i] = appInfos.get(i).packageName;
+            }
+            try (SQLiteDatabase db = mDatabaseHelper.getWritableDatabase()) {
+                final ContentValues values = new ContentValues();
+                values.put(ANOMALY_STATE, state);
+                db.update(TABLE_ANOMALY, values, PACKAGE_NAME + " IN (" + TextUtils.join(",",
+                        Collections.nCopies(appInfos.size(), "?")) + ")", whereArgs);
+            }
+        }
+    }
 }
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
index a615841..ebb4790 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
@@ -71,7 +71,7 @@
         tips.add(new SmartBatteryDetector(policy, context.getContentResolver()).detect());
         tips.add(new EarlyWarningDetector(policy, context).detect());
         tips.add(new SummaryDetector(policy).detect());
-        tips.add(new RestrictAppDetector(policy).detect());
+        tips.add(new RestrictAppDetector(context, policy).detect());
 
         Collections.sort(tips);
         return tips;
diff --git a/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppAction.java b/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppAction.java
index 9c49822..886a6d5 100644
--- a/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppAction.java
+++ b/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppAction.java
@@ -21,7 +21,9 @@
 import android.support.annotation.VisibleForTesting;
 
 import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.batterytip.AnomalyDatabaseHelper;
 import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.fuelgauge.batterytip.BatteryDatabaseManager;
 import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
 
 import java.util.List;
@@ -32,12 +34,15 @@
 public class RestrictAppAction extends BatteryTipAction {
     private RestrictAppTip mRestrictAppTip;
     @VisibleForTesting
+    BatteryDatabaseManager mBatteryDatabaseManager;
+    @VisibleForTesting
     BatteryUtils mBatteryUtils;
 
     public RestrictAppAction(Context context, RestrictAppTip tip) {
         super(context);
         mRestrictAppTip = tip;
         mBatteryUtils = BatteryUtils.getInstance(context);
+        mBatteryDatabaseManager = new BatteryDatabaseManager(context);
     }
 
     /**
@@ -53,5 +58,7 @@
             mBatteryUtils.setForceAppStandby(mBatteryUtils.getPackageUid(packageName), packageName,
                     AppOpsManager.MODE_IGNORED);
         }
+
+        mBatteryDatabaseManager.updateAnomalies(appInfos, AnomalyDatabaseHelper.State.HANDLED);
     }
 }
diff --git a/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetector.java b/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetector.java
index 46e241a..e3c9b9e 100644
--- a/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetector.java
+++ b/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetector.java
@@ -16,7 +16,13 @@
 
 package com.android.settings.fuelgauge.batterytip.detectors;
 
+import android.content.Context;
+import android.support.annotation.VisibleForTesting;
+import android.text.format.DateUtils;
+
+import com.android.settings.fuelgauge.batterytip.AnomalyDatabaseHelper;
 import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.fuelgauge.batterytip.BatteryDatabaseManager;
 import com.android.settings.fuelgauge.batterytip.BatteryTipPolicy;
 import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
 import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
@@ -29,18 +35,47 @@
  * {@link BatteryTipDetector} since it need the most up-to-date {@code visibleTips}
  */
 public class RestrictAppDetector implements BatteryTipDetector {
+    @VisibleForTesting
+    static final boolean USE_FAKE_DATA = false;
     private BatteryTipPolicy mPolicy;
+    @VisibleForTesting
+    BatteryDatabaseManager mBatteryDatabaseManager;
 
-    public RestrictAppDetector(BatteryTipPolicy policy) {
+    public RestrictAppDetector(Context context, BatteryTipPolicy policy) {
         mPolicy = policy;
+        mBatteryDatabaseManager = new BatteryDatabaseManager(context);
     }
 
     @Override
     public BatteryTip detect() {
-        // TODO(b/70570352): Detect restrict apps here, get data from database
+        if (USE_FAKE_DATA) {
+            return getFakeData();
+        }
+        if (mPolicy.appRestrictionEnabled) {
+            // TODO(b/72385333): hook up the query timestamp to server side
+            final long oneDayBeforeMs = System.currentTimeMillis() - DateUtils.DAY_IN_MILLIS;
+            final List<AppInfo> highUsageApps = mBatteryDatabaseManager.queryAllAnomalies(
+                    oneDayBeforeMs, AnomalyDatabaseHelper.State.NEW);
+            if (!highUsageApps.isEmpty()) {
+                // If there are new anomalies, show them
+                return new RestrictAppTip(BatteryTip.StateType.NEW, highUsageApps);
+            } else {
+                // Otherwise, show auto-handled one if it exists
+                final List<AppInfo> autoHandledApps = mBatteryDatabaseManager.queryAllAnomalies(
+                        oneDayBeforeMs, AnomalyDatabaseHelper.State.AUTO_HANDLED);
+                return new RestrictAppTip(autoHandledApps.isEmpty() ? BatteryTip.StateType.INVISIBLE
+                        : BatteryTip.StateType.HANDLED, autoHandledApps);
+            }
+        } else {
+            return new RestrictAppTip(BatteryTip.StateType.INVISIBLE, new ArrayList<>());
+        }
+    }
+
+    private BatteryTip getFakeData() {
         final List<AppInfo> highUsageApps = new ArrayList<>();
-        return new RestrictAppTip(
-                highUsageApps.isEmpty() ? BatteryTip.StateType.INVISIBLE : BatteryTip.StateType.NEW,
-                highUsageApps);
+        highUsageApps.add(new AppInfo.Builder()
+                .setPackageName("com.android.settings")
+                .build());
+        return new RestrictAppTip(BatteryTip.StateType.NEW, highUsageApps);
     }
 }
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java
index 1d84d7f..a40f292 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java
@@ -81,7 +81,14 @@
 
     @Override
     public void updateState(BatteryTip tip) {
-        mState = tip.mState;
+        if (tip.mState == StateType.NEW) {
+            // Display it if new anomaly comes
+            mState = StateType.NEW;
+            mRestrictAppList = ((RestrictAppTip) tip).mRestrictAppList;
+        } else if (mState == StateType.NEW && tip.mState == StateType.INVISIBLE) {
+            // If anomaly becomes invisible, show it as handled
+            mState = StateType.HANDLED;
+        }
     }
 
     public List<AppInfo> getRestrictAppList() {
diff --git a/src/com/android/settings/gestures/DoubleTapScreenPreferenceController.java b/src/com/android/settings/gestures/DoubleTapScreenPreferenceController.java
index 5412f36..aa08e6f 100644
--- a/src/com/android/settings/gestures/DoubleTapScreenPreferenceController.java
+++ b/src/com/android/settings/gestures/DoubleTapScreenPreferenceController.java
@@ -102,4 +102,9 @@
         return new InlineSwitchPayload(SECURE_KEY, ResultPayload.SettingsSource.SECURE,
                 ON /* onValue */, intent, isAvailable(), ON /* defaultValue */);
     }
+
+    @Override
+    protected boolean canHandleClicks() {
+        return !mAmbientConfig.alwaysOnEnabled(mUserId);
+    }
 }
\ No newline at end of file
diff --git a/src/com/android/settings/wifi/tether/WifiTetherPreferenceController.java b/src/com/android/settings/wifi/tether/WifiTetherPreferenceController.java
index 826ed42..058ba5f 100644
--- a/src/com/android/settings/wifi/tether/WifiTetherPreferenceController.java
+++ b/src/com/android/settings/wifi/tether/WifiTetherPreferenceController.java
@@ -202,7 +202,7 @@
         boolean isAirplaneMode = Settings.Global.getInt(mContext.getContentResolver(),
                 Settings.Global.AIRPLANE_MODE_ON, 0) != 0;
         if (isAirplaneMode) {
-            mPreference.setSummary(R.string.summary_placeholder);
+            mPreference.setSummary(R.string.wifi_tether_disabled_by_airplane);
         }
     }
     //
diff --git a/tests/robotests/res/values-mcc999/config.xml b/tests/robotests/res/values-mcc999/config.xml
index f43e39c..01bfa51 100644
--- a/tests/robotests/res/values-mcc999/config.xml
+++ b/tests/robotests/res/values-mcc999/config.xml
@@ -62,4 +62,5 @@
     <bool name="config_show_device_model">false</bool>
     <bool name="config_show_wifi_ip_address">false</bool>
     <bool name="config_show_wifi_mac_address">false</bool>
+    <bool name="config_disable_uninstall_update">true</bool>
 </resources>
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java
index b7e414c..d721e17 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java
@@ -16,6 +16,10 @@
 
 package com.android.settings.applications.appinfo;
 
+import static com.android.settings.applications.appinfo.AppInfoDashboardFragment
+        .UNINSTALL_ALL_USERS_MENU;
+import static com.android.settings.applications.appinfo.AppInfoDashboardFragment.UNINSTALL_UPDATES;
+
 import static com.google.common.truth.Truth.assertThat;
 
 import static org.mockito.ArgumentMatchers.any;
@@ -25,6 +29,7 @@
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
@@ -36,6 +41,8 @@
 import android.content.pm.PackageManager;
 import android.content.pm.UserInfo;
 import android.os.UserManager;
+import android.view.Menu;
+import android.view.MenuItem;
 
 import com.android.settings.SettingsActivity;
 import com.android.settings.TestConfig;
@@ -129,6 +136,42 @@
     }
 
     @Test
+    public void onPrepareOptionsMenu_setUpdateMenuVisible_byDefaultForSystemApps_shouldBeTrue() {
+        Menu menu = onPrepareOptionsMenuTestsSetup();
+        mFragment.onPrepareOptionsMenu(menu);
+
+        verify(menu.findItem(UNINSTALL_UPDATES), times(1)).setVisible(true);
+    }
+
+    @Test
+    @Config(qualifiers = "mcc999")
+    public void onPrepareOptionsMenu_setUpdateMenuVisible_ifDisabledByDevice_shouldBeFalse() {
+        Menu menu = onPrepareOptionsMenuTestsSetup();
+        mFragment.onPrepareOptionsMenu(menu);
+
+        verify(menu.findItem(UNINSTALL_UPDATES), times(1)).setVisible(false);
+    }
+
+    private Menu onPrepareOptionsMenuTestsSetup() {
+        // Menu mocking
+        Menu menu = mock(Menu.class);
+        final MenuItem uninstallUpdatesMenuItem = mock(MenuItem.class);
+        final MenuItem uninstallForAllMenuItem = mock(MenuItem.class);
+        when(menu.findItem(UNINSTALL_UPDATES)).thenReturn(uninstallUpdatesMenuItem);
+        when(menu.findItem(UNINSTALL_ALL_USERS_MENU)).thenReturn(uninstallForAllMenuItem);
+
+        // Setup work to prevent NPE
+        final ApplicationInfo info = new ApplicationInfo();
+        info.flags = ApplicationInfo.FLAG_UPDATED_SYSTEM_APP;
+        info.enabled = true;
+        final AppEntry appEntry = mock(AppEntry.class);
+        appEntry.info = info;
+        mFragment.setAppEntry(appEntry);
+
+        return menu;
+    }
+
+    @Test
     public void launchFragment_hasNoPackageInfo_shouldFinish() {
         ReflectionHelpers.setField(mFragment, "mPackageInfo", null);
 
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java
index bac02d3..4ff09c1 100644
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java
@@ -295,6 +295,19 @@
     }
 
     @Test
+    public void onBindViewHolder_closeButtonShouldHaveContentDescription()
+        throws PendingIntent.CanceledException {
+        final List<Suggestion> suggestions = makeSuggestions("pkg1");
+        setupSuggestions(mActivity, suggestions);
+
+        mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
+
+        assertThat(
+            mSuggestionHolder.itemView.findViewById(R.id.close_button).getContentDescription())
+            .isNotNull();
+    }
+
+    @Test
     public void setCardLayout_oneCard_shouldSetCardWidthToMatchParent() {
         final List<Suggestion> suggestions = makeSuggestions("pkg1");
         setupSuggestions(mContext, suggestions);
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryDatabaseManagerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryDatabaseManagerTest.java
index ac8800e..92332f2 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryDatabaseManagerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryDatabaseManagerTest.java
@@ -24,6 +24,7 @@
 import android.text.format.DateUtils;
 
 import com.android.settings.TestConfig;
+import com.android.settings.fuelgauge.batterytip.AnomalyDatabaseHelper;
 import com.android.settings.fuelgauge.batterytip.AppInfo;
 import com.android.settings.fuelgauge.batterytip.BatteryDatabaseManager;
 import com.android.settings.testutils.DatabaseTestUtils;
@@ -37,6 +38,7 @@
 import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
 
+import java.util.ArrayList;
 import java.util.List;
 
 @RunWith(RobolectricTestRunner.class)
@@ -71,28 +73,54 @@
         mBatteryDatabaseManager.insertAnomaly(PACKAGE_NAME_OLD, TYPE_OLD, TWO_DAYS_BEFORE);
 
         // In database, it contains two record
-        List<AppInfo> totalAppInfos = mBatteryDatabaseManager.queryAllAnomaliesAfter(0);
+        List<AppInfo> totalAppInfos = mBatteryDatabaseManager.queryAllAnomalies(0 /* timeMsAfter */,
+                AnomalyDatabaseHelper.State.NEW);
         assertThat(totalAppInfos).hasSize(2);
-        verifyAppInfo(totalAppInfos.get(0), PACKAGE_NAME_NEW, TYPE_NEW);
-        verifyAppInfo(totalAppInfos.get(1), PACKAGE_NAME_OLD, TYPE_OLD);
+        assertAppInfo(totalAppInfos.get(0), PACKAGE_NAME_NEW, TYPE_NEW);
+        assertAppInfo(totalAppInfos.get(1), PACKAGE_NAME_OLD, TYPE_OLD);
 
         // Only one record shows up if we query by timestamp
-        List<AppInfo> appInfos = mBatteryDatabaseManager.queryAllAnomaliesAfter(ONE_DAY_BEFORE);
+        List<AppInfo> appInfos = mBatteryDatabaseManager.queryAllAnomalies(ONE_DAY_BEFORE,
+                AnomalyDatabaseHelper.State.NEW);
         assertThat(appInfos).hasSize(1);
-        verifyAppInfo(appInfos.get(0), PACKAGE_NAME_NEW, TYPE_NEW);
+        assertAppInfo(appInfos.get(0), PACKAGE_NAME_NEW, TYPE_NEW);
 
         mBatteryDatabaseManager.deleteAllAnomaliesBeforeTimeStamp(ONE_DAY_BEFORE);
 
         // The obsolete record is removed from database
-        List<AppInfo> appInfos1 = mBatteryDatabaseManager.queryAllAnomaliesAfter(0);
+        List<AppInfo> appInfos1 = mBatteryDatabaseManager.queryAllAnomalies(0 /* timeMsAfter */,
+                AnomalyDatabaseHelper.State.NEW);
         assertThat(appInfos1).hasSize(1);
-        verifyAppInfo(appInfos1.get(0), PACKAGE_NAME_NEW, TYPE_NEW);
-
+        assertAppInfo(appInfos1.get(0), PACKAGE_NAME_NEW, TYPE_NEW);
     }
 
-    private void verifyAppInfo(final AppInfo appInfo, String packageName, int type) {
+    @Test
+    public void testUpdateAnomalies_updateSuccessfully() {
+        mBatteryDatabaseManager.insertAnomaly(PACKAGE_NAME_NEW, TYPE_NEW, NOW);
+        mBatteryDatabaseManager.insertAnomaly(PACKAGE_NAME_OLD, TYPE_OLD, NOW);
+        final AppInfo appInfo = new AppInfo.Builder().setPackageName(PACKAGE_NAME_OLD).build();
+        final List<AppInfo> updateAppInfos = new ArrayList<>();
+        updateAppInfos.add(appInfo);
+
+        // Change state of PACKAGE_NAME_OLD to handled
+        mBatteryDatabaseManager.updateAnomalies(updateAppInfos,
+                AnomalyDatabaseHelper.State.HANDLED);
+
+        // The state of PACKAGE_NAME_NEW is still new
+        List<AppInfo> newAppInfos = mBatteryDatabaseManager.queryAllAnomalies(ONE_DAY_BEFORE,
+                AnomalyDatabaseHelper.State.NEW);
+        assertThat(newAppInfos).hasSize(1);
+        assertAppInfo(newAppInfos.get(0), PACKAGE_NAME_NEW, TYPE_NEW);
+
+        // The state of PACKAGE_NAME_OLD is changed to handled
+        List<AppInfo> handledAppInfos = mBatteryDatabaseManager.queryAllAnomalies(ONE_DAY_BEFORE,
+                AnomalyDatabaseHelper.State.HANDLED);
+        assertThat(handledAppInfos).hasSize(1);
+        assertAppInfo(handledAppInfos.get(0), PACKAGE_NAME_OLD, TYPE_OLD);
+    }
+
+    private void assertAppInfo(final AppInfo appInfo, String packageName, int type) {
         assertThat(appInfo.packageName).isEqualTo(packageName);
         assertThat(appInfo.anomalyType).isEqualTo(type);
     }
-
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
index 35af8bb..32e2b0b 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
@@ -15,8 +15,6 @@
  */
 package com.android.settings.fuelgauge;
 
-import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_HIGH_POWER_APPS;
-
 import static com.google.common.truth.Truth.assertThat;
 
 import static org.mockito.Matchers.any;
@@ -108,14 +106,6 @@
 
     @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private Context mContext;
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Menu mMenu;
-    @Mock
-    private MenuItem mToggleAppsMenu;
-    @Mock
-    private MenuItem mHighPowerMenu;
-    @Mock
-    private MenuInflater mMenuInflater;
     @Mock
     private BatterySipper mNormalBatterySipper;
     @Mock
@@ -169,7 +159,6 @@
         doReturn(mock(LoaderManager.class)).when(mFragment).getLoaderManager();
 
         when(mFragment.getActivity()).thenReturn(mSettingsActivity);
-        when(mHighPowerMenu.getItemId()).thenReturn(MENU_HIGH_POWER_APPS);
         when(mFeatureFactory.powerUsageFeatureProvider.getAdditionalBatteryInfoIntent())
                 .thenReturn(sAdditionalBatteryInfoIntent);
         when(mBatteryHelper.getTotalPower()).thenReturn(TOTAL_POWER);
@@ -205,14 +194,6 @@
     }
 
     @Test
-    public void testOptionsMenu_menuHighPower_metricEventInvoked() {
-        mFragment.onOptionsItemSelected(mHighPowerMenu);
-
-        verify(mFeatureFactory.metricsFeatureProvider).action(mContext,
-                MetricsProto.MetricsEvent.ACTION_SETTINGS_MENU_BATTERY_OPTIMIZATION);
-    }
-
-    @Test
     public void testUpdateLastFullChargePreference_showCorrectSummary() {
         doReturn(mRealContext).when(mFragment).getContext();
 
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppActionTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppActionTest.java
index 47785d5..728bbff 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppActionTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppActionTest.java
@@ -27,8 +27,10 @@
 import com.android.settings.fuelgauge.batterytip.AppInfo;
 import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
 import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
+import com.android.settings.testutils.DatabaseTestUtils;
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 
+import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -69,6 +71,11 @@
         mRestrictAppAction.mBatteryUtils = mBatteryUtils;
     }
 
+    @After
+    public void cleanUp() {
+        DatabaseTestUtils.clearDb(mContext);
+    }
+
     @Test
     public void testHandlePositiveAction() {
         mRestrictAppAction.handlePositiveAction();
@@ -79,5 +86,4 @@
                 eq(AppOpsManager.MODE_IGNORED));
     }
 
-
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetectorTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetectorTest.java
new file mode 100644
index 0000000..6a25c6d
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetectorTest.java
@@ -0,0 +1,113 @@
+/*
+ * Copyright (C) 2018 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.
+ */
+
+package com.android.settings.fuelgauge.batterytip.detectors;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Matchers.anyInt;
+import static org.mockito.Matchers.anyLong;
+import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+
+import android.content.Context;
+
+import com.android.settings.TestConfig;
+import com.android.settings.fuelgauge.batterytip.AnomalyDatabaseHelper;
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.fuelgauge.batterytip.BatteryDatabaseManager;
+import com.android.settings.fuelgauge.batterytip.BatteryTipPolicy;
+import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
+import com.android.settings.testutils.DatabaseTestUtils;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class RestrictAppDetectorTest {
+    private static final String PACKAGE_NAME = "com.android.app";
+    private Context mContext;
+    private BatteryTipPolicy mPolicy;
+    private RestrictAppDetector mRestrictAppDetector;
+    private List<AppInfo> mAppInfoList;
+    @Mock
+    private BatteryDatabaseManager mBatteryDatabaseManager;
+
+    @Before
+    public void setUp() {
+        MockitoAnnotations.initMocks(this);
+
+        mAppInfoList = new ArrayList<>();
+        mAppInfoList.add(new AppInfo.Builder()
+                .setPackageName(PACKAGE_NAME)
+                .build());
+
+        mContext = RuntimeEnvironment.application;
+        mPolicy = spy(new BatteryTipPolicy(mContext));
+        mRestrictAppDetector = new RestrictAppDetector(mContext, mPolicy);
+        mRestrictAppDetector.mBatteryDatabaseManager = mBatteryDatabaseManager;
+    }
+
+    @After
+    public void cleanUp() {
+        DatabaseTestUtils.clearDb(mContext);
+    }
+
+    @Test
+    public void testDetect_hasAnomaly_tipNew() {
+        doReturn(mAppInfoList).when(mBatteryDatabaseManager).queryAllAnomalies(anyLong(),
+                eq(AnomalyDatabaseHelper.State.NEW));
+
+        assertThat(mRestrictAppDetector.detect().getState()).isEqualTo(BatteryTip.StateType.NEW);
+    }
+
+    @Test
+    public void testDetect_hasAutoHandledAnomaly_tipHandled() {
+        doReturn(new ArrayList<AppInfo>()).when(mBatteryDatabaseManager).queryAllAnomalies(
+                anyLong(), eq(AnomalyDatabaseHelper.State.NEW));
+        doReturn(mAppInfoList).when(mBatteryDatabaseManager).queryAllAnomalies(anyLong(),
+                eq(AnomalyDatabaseHelper.State.AUTO_HANDLED));
+
+        assertThat(mRestrictAppDetector.detect().getState()).isEqualTo(
+                BatteryTip.StateType.HANDLED);
+    }
+
+    @Test
+    public void testDetect_noAnomaly_tipInvisible() {
+        doReturn(new ArrayList<AppInfo>()).when(mBatteryDatabaseManager).queryAllAnomalies(
+                anyLong(), anyInt());
+
+        assertThat(mRestrictAppDetector.detect().getState()).isEqualTo(
+                BatteryTip.StateType.INVISIBLE);
+    }
+
+    @Test
+    public void testUseFakeData_alwaysFalse() {
+        assertThat(RestrictAppDetector.USE_FAKE_DATA).isFalse();
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java
index e1dea17..74536a5 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java
@@ -49,6 +49,7 @@
     private Context mContext;
     private RestrictAppTip mNewBatteryTip;
     private RestrictAppTip mHandledBatteryTip;
+    private RestrictAppTip mInvisibleBatteryTip;
     private List<AppInfo> mUsageAppList;
     @Mock
     private ApplicationInfo mApplicationInfo;
@@ -71,6 +72,7 @@
                 .build());
         mNewBatteryTip = new RestrictAppTip(BatteryTip.StateType.NEW, mUsageAppList);
         mHandledBatteryTip = new RestrictAppTip(BatteryTip.StateType.HANDLED, mUsageAppList);
+        mInvisibleBatteryTip = new RestrictAppTip(BatteryTip.StateType.INVISIBLE, mUsageAppList);
     }
 
     @Test
@@ -108,4 +110,20 @@
         assertThat(mHandledBatteryTip.getSummary(mContext)).isEqualTo(
                 "App changes are in progress");
     }
+
+    @Test
+    public void testUpdate_anomalyBecomeInvisible_stateHandled() {
+        mNewBatteryTip.updateState(mInvisibleBatteryTip);
+
+        assertThat(mNewBatteryTip.getState()).isEqualTo(BatteryTip.StateType.HANDLED);
+    }
+
+    @Test
+    public void testUpdate_newAnomalyComes_stateNew() {
+        mInvisibleBatteryTip.updateState(mNewBatteryTip);
+        assertThat(mInvisibleBatteryTip.getState()).isEqualTo(BatteryTip.StateType.NEW);
+
+        mHandledBatteryTip.updateState(mNewBatteryTip);
+        assertThat(mHandledBatteryTip.getState()).isEqualTo(BatteryTip.StateType.NEW);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenPreferenceControllerTest.java
index 8f06c40..74e1e5d 100644
--- a/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenPreferenceControllerTest.java
@@ -161,4 +161,16 @@
         assertThat(DoubleTapScreenPreferenceController.isSuggestionComplete(
                 mAmbientDisplayConfiguration, prefs)).isTrue();
     }
+
+    @Test
+    public void canHandleClicks_falseWhenAlwaysOnEnabled() {
+        when(mAmbientDisplayConfiguration.alwaysOnEnabled(anyInt())).thenReturn(true);
+        assertThat(mController.canHandleClicks()).isFalse();
+    }
+
+    @Test
+    public void canHandleClicks_trueWhenAlwaysOnDisabled() {
+        when(mAmbientDisplayConfiguration.alwaysOnEnabled(anyInt())).thenReturn(false);
+        assertThat(mController.canHandleClicks()).isTrue();
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/tether/WifiTetherPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/tether/WifiTetherPreferenceControllerTest.java
index 4b18fcf..92303e0 100644
--- a/tests/robotests/src/com/android/settings/wifi/tether/WifiTetherPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/tether/WifiTetherPreferenceControllerTest.java
@@ -185,7 +185,7 @@
         receiver.onReceive(RuntimeEnvironment.application, broadcast);
 
         assertThat(mPreference.getSummary().toString()).isEqualTo(
-                RuntimeEnvironment.application.getString(R.string.summary_placeholder));
+                "Unavailable because airplane mode is turned on");
     }
 
     @Test
