diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 0c4e25b..7e67962 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -2422,7 +2422,7 @@
                 <category android:name="com.android.settings.SHORTCUT" />
             </intent-filter>
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.DreamSettings" />
+                android:value="com.android.settings.dream.DreamSettings" />
             <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
                 android:value="true" />
         </activity>
@@ -3074,7 +3074,7 @@
         <activity android:name=".support.SupportDashboardActivity"
                   android:label="@string/page_tab_title_support"
                   android:icon="@drawable/ic_help"
-                  android:theme="@android:style/Theme.NoDisplay"
+                  android:theme="@android:style/Theme.DeviceDefault.Light.Panel"
                   android:enabled="@bool/config_support_enabled">
             <intent-filter android:priority="-2">
                 <action android:name="com.android.settings.action.SETTINGS"/>
diff --git a/res/drawable/ic_bt_imaging.xml b/res/drawable/ic_bt_imaging.xml
deleted file mode 100644
index 01e78c0..0000000
--- a/res/drawable/ic_bt_imaging.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<!--
-     Copyright (C) 2016 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.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="24dp"
-    android:height="24dp"
-    android:viewportWidth="24.0"
-    android:viewportHeight="24.0"
-    android:tint="?android:attr/colorAccent">
-    <path
-        android:fillColor="#FF000000"
-        android:pathData="M19,8L5,8c-1.66,0 -3,1.34 -3,3v6h4v4h12v-4h4v-6c0,-1.66 -1.34,-3
-            -3,-3zM16,19L8,19v-5h8v5zM19,12c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1 1,0.45 1,1 -0.45,1
-            -1,1zM18,3L6,3v4h12L18,3z"/>
-</vector>
\ No newline at end of file
diff --git a/res/layout/condition_tile_new_ui.xml b/res/layout/condition_tile.xml
similarity index 100%
rename from res/layout/condition_tile_new_ui.xml
rename to res/layout/condition_tile.xml
diff --git a/res/layout/search_panel.xml b/res/layout/search_panel.xml
index 6d76001..48a1d4c 100644
--- a/res/layout/search_panel.xml
+++ b/res/layout/search_panel.xml
@@ -22,6 +22,7 @@
     android:orientation="vertical">
 
     <FrameLayout
+        android:id="@+id/search_bar_container"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:background="@color/suggestion_condition_background">
diff --git a/res/layout/settings_entity_header.xml b/res/layout/settings_entity_header.xml
index ce81b49..9c4ca93 100644
--- a/res/layout/settings_entity_header.xml
+++ b/res/layout/settings_entity_header.xml
@@ -102,6 +102,7 @@
             android:gravity="start"
             android:singleLine="true"
             android:ellipsize="marquee"
+            android:textAlignment="viewStart"
             android:textAppearance="@android:style/TextAppearance.Material.Body1"
             android:textColor="?android:attr/textColorSecondary" />
 
diff --git a/res/layout/settings_main_dashboard.xml b/res/layout/settings_main_dashboard.xml
index d62ae1d..95299ae 100644
--- a/res/layout/settings_main_dashboard.xml
+++ b/res/layout/settings_main_dashboard.xml
@@ -23,6 +23,7 @@
     android:layout_height="match_parent"
     android:orientation="vertical">
     <FrameLayout
+        android:id="@+id/search_bar_container"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:background="@color/suggestion_condition_background">
diff --git a/res/layout/suggestion_condition_container.xml b/res/layout/suggestion_condition_container.xml
index d9b4d6b..a4c60ad 100644
--- a/res/layout/suggestion_condition_container.xml
+++ b/res/layout/suggestion_condition_container.xml
@@ -35,6 +35,7 @@
             android:id="@+id/data"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
+            android:background="@color/material_grey_300"
             android:scrollbars="none"/>
 
     </android.support.v7.widget.CardView>
diff --git a/res/layout/suggestion_tile_new_ui.xml b/res/layout/suggestion_tile.xml
similarity index 100%
rename from res/layout/suggestion_tile_new_ui.xml
rename to res/layout/suggestion_tile.xml
diff --git a/res/layout/suggestion_tile_card.xml b/res/layout/suggestion_tile_remote_container.xml
similarity index 100%
rename from res/layout/suggestion_tile_card.xml
rename to res/layout/suggestion_tile_remote_container.xml
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 3ec18db..c5f1269 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Net wekkers"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Volkome stilte"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokkeer visuele steurings"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Werkprofielklanke"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Gebruik persoonlike profiel se klanke"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Klanke is dieselfde vir werk- en persoonlike profiele"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Net van gesterde kontakte af"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Geen"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Wekkers"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Onthounotas"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Geleenthede"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Alle bellers"</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 8572aff..b7e562d 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"ማንቂያዎች ብቻ"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ሙሉ ለሙሉ ጸጥታ"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>፦ <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ምስላዊ ረብሻዎችን አግድ"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"ኮከብ ከተደረገባቸው እውቂያዎች ብቻ"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ምንም"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"ማንቂያዎች"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"አስታወሾች"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ክስተቶች"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"ሁሉም ደዋዮች"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 4103f3e..64efe7b 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -2954,7 +2954,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"التنبيهات فقط"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"كتم الصوت تمامًا"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"حظر الإشعارات المرئية"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3127,6 +3128,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"من جهات الاتصال المميزة بنجمة فقط"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ولا أي رسالة"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"التنبيهات"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"التذكيرات"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"الأحداث"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"جميع المتصلين"</string>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index 06e19c3..fa50b1c 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Yalnız alarmlar"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Tam sakitlik"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Vizual fəsadları blok edin"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"İş profili səsləri"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Şəxsi profil səslərini istifadə edin"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"İş və şəxsi profil səsləri eynidir"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Yalnız ulduzlanmış kontaktlardan"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Heç biri"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Siqnallar"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Xatırlamalar"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Tədbirlər"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Bütün zəng edənlər"</string>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index 6197dd4..0f2a382 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -2870,7 +2870,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Samo alarmi"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Potpuna tišina"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokiraj vizuelna ometanja"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Zvuci za profil za Work"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Koristi zvuke ličnog profila"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvukovi profila za Work su isti kao i zvukovi za lične profile"</string>
@@ -3034,6 +3035,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Samo od kontakata sa zvezdicom"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Niko"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmi"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Podsetnici"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Događaji"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Svi pozivaoci"</string>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index 03ef06a..95933b0 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -1086,15 +1086,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Аўтаматычная яркасць"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Абуджэнне пры падняцці"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Неактыўны рэжым экрана"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Заўсёды ўключаны / павышае спажыванне зараду"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Новыя апавяшчэнні"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Калі паказваць"</string>
     <string name="doze_title" msgid="2375510714460456687">"Новыя апавяшчэнні"</string>
     <string name="doze_summary" msgid="3846219936142814032">"Абуджаць экран, калі вы атрымліваеце апавяшчэнні"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Заўсёды ўключана"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Паказваць час, значкі паведамленняў і іншую інфармацыю. Павышае спажыванне зараду."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Памер шрыфта"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Павялічыць або паменшыць тэкст"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"Налады блакіроўкі SIM-карты"</string>
@@ -2847,8 +2845,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"жэсты"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"плаціць, дакранацца, плацяжы"</string>
     <string name="keywords_backup" msgid="470070289135403022">"рэзервовае капіраванне, стварыць рэзервовую копію"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"жэст"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Усталяваць Wi-Fi NFC-метку"</string>
     <string name="write_tag" msgid="8571858602896222537">"Запісаць"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Для завяршэння дакраніцеся да меткі..."</string>
@@ -2902,7 +2899,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Толькі будзільнікі"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Поўная цішыня"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блакіроўка візуальных апавяшчэнняў"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3069,6 +3067,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Толькі ад кантактаў, пазначаных зоркай"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ні ад каго"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Будзільнікі"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Напаміны"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Падзеі"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Усе абаненты"</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 3f74d1a..0c1a2d3 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Само будилници"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Пълна тишина"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Виз. предупрежд.: Блокиране"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Само от контакти със звезда"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Никакви"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Будилници"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Напомняния"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Събития"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Всички обаждащи се"</string>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index dd97fbf..155c02c 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"অ্যাকাউন্টগুলি"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"অবস্থান"</string>
     <string name="account_settings_title" msgid="626177544686329806">"অ্যাকাউন্টগুলি"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"নিরাপত্তা এবং অবস্থান"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"এনক্রিপশান ও শংসাপত্র"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"ফোন এনক্রিপশন"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"ডিভাইসটি এনক্রিপ্টেড"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"স্বয়ংক্রিয় উজ্জ্বলতা"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"সক্রিয় করতে লিফ্ট করুন"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"অ্যাম্বিয়েন্ট ডিসপ্লে"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"সর্বদা চালু / ব্যাটারির ব্যবহার বেড়ে যায়"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"নতুন বিজ্ঞপ্তি"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"কখন দেখানো হবে"</string>
     <string name="doze_title" msgid="2375510714460456687">"নতুন বিজ্ঞপ্তি"</string>
     <string name="doze_summary" msgid="3846219936142814032">"যখন আপনি বিজ্ঞপ্তিগুলি পাবেন তখন স্ক্রীন জাগায়"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"সর্বদা চালু"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"সময়, বিজ্ঞপ্তির আইকন ও অন্যান্য তথ্য দেখানো হবে। ব্যাটারির ব্যবহার বেড়ে যায়।"</string>
     <string name="title_font_size" msgid="4405544325522105222">"হরফের আকার"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"পাঠ্য বড় বা ছোট করুন"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"সিম কার্ড লক সেটিংস"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"অঙ্গভঙ্গি"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"অর্থপ্রদান, আলতো চাপা, পেমেন্ট"</string>
     <string name="keywords_backup" msgid="470070289135403022">"ব্যাকআপ, ব্যাক আপ"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"অঙ্গভঙ্গি"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ওয়াই-ফাই NFC ট্যাগ সেটআপ করুন"</string>
     <string name="write_tag" msgid="8571858602896222537">"লিখুন"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"লিখতে একটি ট্যাগে আলতো চাপুন..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"শুধুমাত্র অ্যালার্মগুলি"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"একদম নিরব"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ভিজ্যুয়াল ব্যাঘাতগুলিকে ব্লক করুন"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"শুধুমাত্র তারকাচিহ্নিত পরিচিতিদের থেকে"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"কোনো কিছুই নয়"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"অ্যালার্মগুলি"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"অনুস্মারকগুলি"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ইভেন্টগুলি"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"সমস্ত কলার"</string>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index 57f2b16..4374e13 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -127,7 +127,7 @@
     <string name="bluetooth_unknown" msgid="644716244548801421"></string>
     <string name="bluetooth_device" msgid="5291950341750186887">"Neimenovani Bluetooth uređaj"</string>
     <string name="progress_scanning" msgid="192587958424295789">"Pretraživanje"</string>
-    <string name="bluetooth_no_devices_found" msgid="1085232930277181436">"Nije pronađen nijedan obližnji Bluetooth uređaj."</string>
+    <string name="bluetooth_no_devices_found" msgid="1085232930277181436">"Nema Bluetooth uređaja u blizini."</string>
     <string name="bluetooth_notif_ticker" msgid="4726721390078512173">"Zahtjev za Bluetooth uparivanje"</string>
     <string name="bluetooth_notif_title" msgid="2485175521845371514">"Zahtjev za uparivanje"</string>
     <string name="bluetooth_notif_message" msgid="5057417127600942904">"Dodirnite za spajanje s uređajem <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string>
@@ -344,8 +344,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Računi"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Lokacija"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Računi"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Sigurnost i lokacija"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Šifriranje i akreditivi"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Telefon je šifriran"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"Uređaj je šifriran"</string>
@@ -2884,7 +2883,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Samo alarmi"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Potpuna tišina"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokiranje vizuelnih ometanja"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Zvukovi radnog profila"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Koristite zvukove ličnog profila"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvukovi su isti za radni i lični profil"</string>
@@ -3048,6 +3048,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Samo od kontakata označenih zvjezdicom"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ništa"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmi"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Podsjetnici"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Događaji"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Svi pozivi"</string>
@@ -3563,7 +3565,7 @@
     <string name="support_international_phone_title" msgid="1308334014138718455">"Putujete u inostranstvo?"</string>
     <string name="support_international_phone_summary" msgid="208231793637026927">"Mogući su troškovi za međunarodne pozive"</string>
     <string name="support_escalation_by_phone" msgid="4843223043487058711">"Pozovi"</string>
-    <string name="support_escalation_by_chat" msgid="977019859110763749">"Pokreni razgovor"</string>
+    <string name="support_escalation_by_chat" msgid="977019859110763749">"Pokreni chat"</string>
     <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Istraživanje savjeta i trikova"</string>
     <string name="support_help_feedback_title" msgid="693440287222186718">"Pomoć i slanje povratnih informacija"</string>
     <string name="support_sign_in_required_title" msgid="1367187789121480440">"Kontaktirajte podršku korisnicima"</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index b031915..f1891e9 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -1061,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Brillantor automàtica"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Aixeca el dispositiu per activar-lo"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Pantalla ambient"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Sempre activada / Consumeix més bateria"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Notificacions noves"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Quan es mostra"</string>
     <string name="doze_title" msgid="2375510714460456687">"Notificacions noves"</string>
     <string name="doze_summary" msgid="3846219936142814032">"La pantalla s\'activa quan arriben notificacions"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Sempre activat"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Mostra l\'hora, les icones de notificació i altres dades. Consumeix més bateria."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Mida de la lletra"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Amplia o redueix el text"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"Config. de bloqueig de SIM"</string>
@@ -2792,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"gestos"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"paga, toca, pagaments"</string>
     <string name="keywords_backup" msgid="470070289135403022">"còpia de seguretat, crear una còpia de seguretat"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"gest"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Configura l\'etiqueta d\'NFC per a Wi-Fi"</string>
     <string name="write_tag" msgid="8571858602896222537">"Escriu-hi"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Toca una etiqueta per escriure..."</string>
@@ -2845,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Només alarmes"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silenci total"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloqueja interrupcions visuals"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sons del perfil professional"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Utilitza sons del perfil pers."</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Els sons del perfil professional i personal són els mateixos"</string>
@@ -3006,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Només dels contactes destacats"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Cap"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmes"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Recordatoris"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Esdeveniments"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Totes les trucades"</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 7391bd4..d2a42e8 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -2898,7 +2898,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Pouze budíky"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Úplné ticho"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokovat vizuální vyrušení"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Zvuky pracovního profilu"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Použít zvuky osobního profilu"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvuky pracovního a osobního profilu jsou stejné"</string>
@@ -3065,6 +3066,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Pouze od oblíbených kontaktů"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Žádné"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Budíky"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Připomenutí"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Události"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Všichni volající"</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index cf873ff..0d73529 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Kun alarmer"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total stilhed"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloker visuelle forstyrrelser"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Lyde for arbejdsprofil"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Brug lyde fra privat profil"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Lydene er de samme for din arbejdsprofil og din personlige profil"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Kun fra stjernemarkerede kontaktpersoner"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ingen"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmer"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Påmindelser"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Begivenheder"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Alle opkaldere"</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index ff1532f..1fc6703 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Nur Wecker"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Lautlos"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Visuelle Störungen blockieren"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Töne für Arbeitsprofil"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Töne vom persönlichen Profil verwenden"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Töne in Arbeits- und privaten Profilen stimmen überein"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Nur von markierten Kontakten"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Keine"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Wecker"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Erinnerungen"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Termine"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Alle Anrufer"</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 9adf070..d68cd31 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Μόνο ειδοποιήσεις"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Πλήρης σίγαση"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Αποκλ. οπτικών αντιπ/σμών"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Μόνο από τις επαφές με αστέρι"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Κανένα"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Ξυπνητήρια"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Υπενθυμίσεις"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Συμβάντα"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Όλοι οι καλούντες"</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 8c99a4e..2d9aab5 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarms only"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total silence"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Block visual disturbances"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Work profile sounds"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Use personal profile sounds"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sounds are the same for work and personal profiles"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"From starred contacts only"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"None"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarms"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Reminders"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Events"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"All callers"</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 8c99a4e..2d9aab5 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarms only"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total silence"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Block visual disturbances"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Work profile sounds"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Use personal profile sounds"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sounds are the same for work and personal profiles"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"From starred contacts only"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"None"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarms"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Reminders"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Events"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"All callers"</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 8c99a4e..2d9aab5 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarms only"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total silence"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Block visual disturbances"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Work profile sounds"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Use personal profile sounds"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sounds are the same for work and personal profiles"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"From starred contacts only"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"None"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarms"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Reminders"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Events"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"All callers"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 05f0c46..3053e55 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Solo alarmas"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silencio total"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear alteraciones visuales"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sonidos del perfil de trabajo"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usa los sonidos del perfil personal"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Los sonidos de los perfiles de trabajo y personal son iguales"</string>
@@ -3001,6 +3002,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Solo de contactos destacados"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ninguno"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmas"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Recordatorios"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Eventos"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Todos los emisores"</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 154e0c7..541615d 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -1485,7 +1485,7 @@
     <string name="lockpassword_strong_auth_required_reason_restart_device_password" msgid="9007679426540259125">"Introduce la contraseña del dispositivo para continuar (paso necesario después de reiniciar)."</string>
     <string name="lockpassword_strong_auth_required_reason_restart_work_pattern" msgid="7462071286473121099">"Utiliza el patrón de tu perfil de trabajo para continuar (paso necesario después de reiniciar)."</string>
     <string name="lockpassword_strong_auth_required_reason_restart_work_pin" msgid="809763184419127790">"Introduce el PIN de tu perfil de trabajo para continuar (paso necesario después de reiniciar)."</string>
-    <string name="lockpassword_strong_auth_required_reason_restart_work_password" msgid="8923861444535970646">"Escribe la contraseña del perfil de trabajo para continuar (paso necesario después de reiniciar)."</string>
+    <string name="lockpassword_strong_auth_required_reason_restart_work_password" msgid="8923861444535970646">"Introduce la contraseña del perfil de trabajo para continuar (paso necesario después de reiniciar)."</string>
     <string name="lockpassword_invalid_pin" msgid="15588049067548470">"PIN incorrecto"</string>
     <string name="lockpassword_invalid_password" msgid="4038507398784975200">"Contraseña incorrecta"</string>
     <string name="lockpattern_need_to_unlock_wrong" msgid="1745247595356012176">"Patrón incorrecto"</string>
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Solo alarmas"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silencio total"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear interrupciones visuales"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sonidos del perfil de trabajo"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Utilizar sonidos del perfil personal"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Los sonidos de los perfiles personal y de trabajo son los mismos"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Solo de contactos destacados"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ninguno"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmas"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Recordatorios"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Eventos"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Todas las llamadas"</string>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index a285373..6bbbcb9 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Ainult alarmid"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Täielik vaikus"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Visuaalsete häirimiste blok."</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Tööprofiili helid"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Kasuta isikl. profiili helisid"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Isikliku ja tööprofiili helid on samad"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Ainult tärniga tähistatud kontaktidelt"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Mitte kelleltki"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmid"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Meeldetuletused"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Sündmused"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Kõik helistajad"</string>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index 36c7188..53259c6 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Kontuak"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Kokapena"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Kontuak"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Segurtasuna eta kokapena"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Enkriptatzea eta kredentzialak"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Enkriptatuta dago telefonoa"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"Enkriptatuta dago gailua"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Distira automatikoa"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Aktibatu eskuetan hartzen denean"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Pantaila iluna"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Beti aktibatuta. Bateria gehiago kontsumitzen du."</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Jakinarazpen berriak"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Noiz erabili"</string>
     <string name="doze_title" msgid="2375510714460456687">"Jakinarazpen berriak"</string>
     <string name="doze_summary" msgid="3846219936142814032">"Argitu pantaila jakinarazpenak jasotzen dituzunean"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Beti aktibatuta"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Erakutsi ordua, jakinarazpenen ikonoak eta bestelako informazioa. Bateria gehiago kontsumitzen du."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Letra-tipoaren tamaina"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Handitu edo txikitu testua"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"SIM txartelaren blokeo-ezarpenak"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"keinuak"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"ordaindu, ukitu, ordainketak"</string>
     <string name="keywords_backup" msgid="470070289135403022">"babeskopia, segurtasun kopia"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"keinua"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Konfiguratu Wi-Fi NFC etiketa"</string>
     <string name="write_tag" msgid="8571858602896222537">"Idatzi"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Ukitu etiketa bat bertan idazteko…"</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarmak soilik"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Isiltasun osoa"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokeatu oztopo bisualak"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Laneko profilaren soinuak"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Erabili profil pertsonalaren soinuak"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Soinu berberak erabiltzen dira laneko profilean nahiz profil pertsonalean"</string>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Kontaktu izardunetakoak soilik"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Bat ere ez"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmak"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Abisuak"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Gertaerak"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Deitzaile guztiak"</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 726e0b2..6824d75 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -769,14 +769,14 @@
     <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 را در رهیابتان فشار دهید. این دکمه ممکن است Wi‑Fi Protected Setup یا WPS نامیده شود یا دارای این نماد باشد:"</string>
+    <string name="wifi_wps_onstart_pbc" msgid="817003360936932340">"‏دکمه راه‌اندازی حفاظت‌شده Wi‑Fi را در رهیاب فشار دهید. این دکمه ممکن است Wi‑Fi Protected Setup یا WPS نامیده شود یا دارای این نماد باشد:"</string>
     <string name="wifi_wps_onstart_pin" msgid="223344506445335358">"‏پین <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_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_ssid" msgid="5519636102673067319">"نام شبکه"</string>
@@ -1061,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"روشنایی خودکار"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"بیدار شدن با بالا بردن"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"نمایشگر محیط"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"همیشه روشن / مصرف شارژ بالا"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"اعلان‌های جدید"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"زمان نمایش دادن"</string>
     <string name="doze_title" msgid="2375510714460456687">"اعلان‌های جدید"</string>
     <string name="doze_summary" msgid="3846219936142814032">"روشن شدن صفحه‌نمایش هنگامی که اعلانی دریافت می‌کنید"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"همیشه روشن"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"نمایش زمان، نمادهای اعلان و سایر اطلاعات. مصرف شارژ بالا."</string>
     <string name="title_font_size" msgid="4405544325522105222">"اندازه قلم"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"نوشتار را بزرگ‌تر یا کوچک‌تر کنید"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"تنظیمات قفل سیم کارت"</string>
@@ -2792,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"اشاره‌ها"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"پرداخت کردن، ضربه زدن، پرداخت‌ها"</string>
     <string name="keywords_backup" msgid="470070289135403022">"پشتیبان‌گیری، پشتیبان"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"اشاره"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"‏تنظیم برچسب NFC برای Wi-Fi"</string>
     <string name="write_tag" msgid="8571858602896222537">"نوشتن"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"ضربه زدن روی یک برچسب برای نوشتن..."</string>
@@ -2845,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"فقط هشدارها"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"سکوت کامل"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: ‏<xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"مسدود کردن مزاحمت‌های بصری"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3006,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"تنها از مخاطین ستاره‌دار"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"هیچ‌کدام"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"هشدارها"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"یادآوری‌ها"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"رویدادها"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"همه تماس‌گیرندگان"</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index a7bb88c..d10d86b 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Vain herätykset"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Täydellinen hiljaisuus"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Estä näkyvät häiriötekijät"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Työprofiilin äänet"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Käytä henk. koht. prof. ääniä"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Työ- ja henkilökohtaisessa profiilissa käytetään samoja ääniä."</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Vain tähdellä merkityiltä kontakteilta"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ei keneltäkään"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Herätykset"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Muistutukset"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Tapahtumat"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Kaikki soittajat"</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index c2dfea9..47726d2 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarmes uniquement"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Aucune interruption"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g> : <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquer dérangements visuels"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Des contacts favoris seulement"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Aucun"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmes"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Rappels"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Événements"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Tous les appelants"</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 7bc21bb..cba5136 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarmes uniquement"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Aucune interruption"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g> : <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquer nuisances visuelles"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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 des profils professionnel et personnel sont identiques"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Des contacts favoris uniquement"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Aucun"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmes"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Rappels"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Événements"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Tous les appelants"</string>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index 04f46bd..82d8466 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Contas"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Localización"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Contas"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Seguranza e localización"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Encriptación e credenciais"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Teléfono encriptado"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"O dispositivo está encriptado"</string>
@@ -473,13 +472,13 @@
     <string name="unlock_set_unlock_off_title" msgid="7117155352183088342">"Ningún"</string>
     <string name="unlock_set_unlock_off_summary" msgid="94361581669110415"></string>
     <string name="unlock_set_unlock_none_title" msgid="5679243878975864640">"Pasar o dedo"</string>
-    <string name="unlock_set_unlock_none_summary" msgid="8914673583104628191">"Sen seguridade"</string>
+    <string name="unlock_set_unlock_none_summary" msgid="8914673583104628191">"Sen seguranza"</string>
     <string name="unlock_set_unlock_pattern_title" msgid="2912067603917311700">"Padrón"</string>
-    <string name="unlock_set_unlock_pattern_summary" msgid="7062696666227725593">"Seguridade media"</string>
+    <string name="unlock_set_unlock_pattern_summary" msgid="7062696666227725593">"Seguranza media"</string>
     <string name="unlock_set_unlock_pin_title" msgid="5846029709462329515">"PIN"</string>
-    <string name="unlock_set_unlock_pin_summary" msgid="907878650556383388">"Seguridade de media a alta"</string>
+    <string name="unlock_set_unlock_pin_summary" msgid="907878650556383388">"Seguranza de media a alta"</string>
     <string name="unlock_set_unlock_password_title" msgid="8775603825675090937">"Contrasinal"</string>
-    <string name="unlock_set_unlock_password_summary" msgid="8856220848940929546">"Alta seguridade"</string>
+    <string name="unlock_set_unlock_password_summary" msgid="8856220848940929546">"Alta seguranza"</string>
     <string name="unlock_set_do_later_title" msgid="4894767558414979243">"Agora non"</string>
     <string name="current_screen_lock" msgid="4104091715420072219">"Bloqueo de pantalla actual"</string>
     <string name="fingerprint_unlock_set_unlock_pattern" msgid="4939057588092120368">"Impresión dixital + padrón"</string>
@@ -776,8 +775,8 @@
     <string name="wifi_wps_connected" msgid="7153432445748931183">"Conectado coa rede wifi <xliff:g id="NETWORK_NAME">%s</xliff:g>"</string>
     <string name="wifi_wps_in_progress" msgid="3372311348221357944">"WPS xa está en curso e pode tardar ata dos minutos en completarse"</string>
     <string name="wifi_wps_failed_generic" msgid="5668775022238832527">"Fallo de WPS. Téntao de novo nuns minutos."</string>
-    <string name="wifi_wps_failed_wep" msgid="2702820087105284461">"Non se admite a configuración de seguridade do router sen fíos (WEP)"</string>
-    <string name="wifi_wps_failed_tkip" msgid="4282401586860713349">"Non se admite a configuración de seguridade do router sen fíos (TKIP)"</string>
+    <string name="wifi_wps_failed_wep" msgid="2702820087105284461">"Non se admite a configuración de seguranza do router sen fíos (WEP)"</string>
+    <string name="wifi_wps_failed_tkip" msgid="4282401586860713349">"Non se admite a configuración de seguranza do router sen fíos (TKIP)"</string>
     <string name="wifi_wps_failed_auth" msgid="1174614355181181958">"Fallo de autenticación. Téntao de novo."</string>
     <string name="wifi_wps_failed_overlap" msgid="5159533685596844778">"Detectouse outra sesión WPS. Téntao de novo nuns minutos."</string>
     <string name="wifi_ssid" msgid="5519636102673067319">"Nome da rede"</string>
@@ -1169,7 +1168,7 @@
     <string name="sd_eject" product="nosdcard" msgid="4988563376492400073">"Desactivar almacenamento"</string>
     <string name="sd_eject" product="default" msgid="6915293408836853020">"Desactivar tarxeta SD"</string>
     <string name="sd_eject_summary" product="nosdcard" msgid="5009296896648072891">"Desactivar almac. USB interno"</string>
-    <string name="sd_eject_summary" product="default" msgid="3300599435073550246">"Desactiva a tarxeta SD para poder extraela con seguridade"</string>
+    <string name="sd_eject_summary" product="default" msgid="3300599435073550246">"Desactiva a tarxeta SD para poder extraela con seguranza"</string>
     <string name="sd_insert_summary" product="nosdcard" msgid="5264016886409577313">"Inserir almacenamento USB"</string>
     <string name="sd_insert_summary" product="default" msgid="2048640010381803841">"Inserir unha tarxeta SD"</string>
     <string name="sd_mount" product="nosdcard" msgid="8966695015677343116">"Inserir almacenamento USB"</string>
@@ -1226,8 +1225,8 @@
     <string name="storage_volume_used_total" msgid="6113121714019000244">"Total usado de <xliff:g id="TOTAL">%1$s</xliff:g>"</string>
     <string name="storage_mount_success" msgid="687641090137253647">"Inseriuse <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="storage_mount_failure" msgid="1042621107954547316">"Non se puido inserir <xliff:g id="NAME">%1$s</xliff:g>"</string>
-    <string name="storage_unmount_success" msgid="5737203344673441677">"Expulsouse <xliff:g id="NAME">%1$s</xliff:g> con seguridade"</string>
-    <string name="storage_unmount_failure" msgid="5758387106579519489">"Non se puido expulsar <xliff:g id="NAME">%1$s</xliff:g> con seguridade"</string>
+    <string name="storage_unmount_success" msgid="5737203344673441677">"Expulsouse <xliff:g id="NAME">%1$s</xliff:g> con seguranza"</string>
+    <string name="storage_unmount_failure" msgid="5758387106579519489">"Non se puido expulsar <xliff:g id="NAME">%1$s</xliff:g> con seguranza"</string>
     <string name="storage_format_success" msgid="3023144070597190555">"Formatouse <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="storage_format_failure" msgid="6032640952779735766">"Non se puido formatar <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="storage_rename_title" msgid="8242663969839491485">"Cambiar o nome do almacenamento"</string>
@@ -1456,8 +1455,8 @@
     <string name="settings_license_activity_title" msgid="8525014571806471216">"Licenzas de terceiros"</string>
     <string name="settings_license_activity_unavailable" msgid="4210539215951487627">"Hai un problema para cargar as licenzas."</string>
     <string name="settings_license_activity_loading" msgid="3337535809093591740">"Cargando..."</string>
-    <string name="settings_safetylegal_title" msgid="1289483965535937431">"Información de seguridade"</string>
-    <string name="settings_safetylegal_activity_title" msgid="6901214628496951727">"Información de seguridade"</string>
+    <string name="settings_safetylegal_title" msgid="1289483965535937431">"Información de seguranza"</string>
+    <string name="settings_safetylegal_activity_title" msgid="6901214628496951727">"Información de seguranza"</string>
     <string name="settings_safetylegal_activity_unreachable" msgid="250674109915859456">"Non tes conexión de datos. Para ver esta información agora, accede a %s desde calquera ordenador conectado a Internet."</string>
     <string name="settings_safetylegal_activity_loading" msgid="8059022597639516348">"Cargando..."</string>
     <string name="lockpassword_choose_your_password_header" msgid="8624900666929394990">"Escolle o teu contrasinal"</string>
@@ -2843,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Só alarmas"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silencio total"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear ruído visual"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sons do perfil de traballo"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usar sons do perfil persoal"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Os sons son iguais para o perfil persoal e o de traballo"</string>
@@ -3004,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Só dos contactos marcados con estrela"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ningunha"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmas"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Recordatorios"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Eventos"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Todos os emisores de chamadas"</string>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index a063ace..8d3c85a 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"એકાઉન્ટ્સ"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"સ્થાન"</string>
     <string name="account_settings_title" msgid="626177544686329806">"એકાઉન્ટ્સ"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"સુરક્ષા અને સ્થાન"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"એન્ક્રિપ્શન અને ઓળખપત્રો"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"ફોન એન્ક્રિપ્ટ કર્યો"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"ઉપકરણ એન્ક્રિપ્ટેડ છે"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"સ્વચલિત તેજ"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"જાગૃત કરવા માટે લિફ્ટ કરો"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"ઍમ્બિઅન્ટ પ્રદર્શન"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"હંમેશા ચાલુ / વધારેલ બૅટરી વપરાશ"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"નવી સૂચનાઓ"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"ક્યારે બતાવવું"</string>
     <string name="doze_title" msgid="2375510714460456687">"નવી સૂચનાઓ"</string>
     <string name="doze_summary" msgid="3846219936142814032">"જ્યારે તમને સૂચનાઓ પ્રાપ્ત થાય ત્યારે સ્ક્રીન સક્રિય કરો"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"હંમેશાં ચાલુ"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"સમય, નોટિફિકેશનના આઇકન અને અન્ય માહિતી બતાવો. વધારેલ બૅટરી વપરાશ."</string>
     <string name="title_font_size" msgid="4405544325522105222">"ફોન્ટનું કદ"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"ટેક્સ્ટને નાની અથવા મોટી કરો"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"SIM કાર્ડ લૉક સેટિંગ્સ"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"સંકેતો"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"ચુકવણી કરો, ટૅપ કરો, ચુકવણીઓ"</string>
     <string name="keywords_backup" msgid="470070289135403022">"બૅકઅપ, બૅક અપ"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"સંકેત"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC ટેગ સેટ કરો"</string>
     <string name="write_tag" msgid="8571858602896222537">"લખો"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"લખવા માટે ટેગ પર ટેપ કરો..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"ફક્ત એલાર્મ્સ"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"સાવ શાંતિ"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"દૃશ્ય વિક્ષેપોને અવરોધિત કરો"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"ફક્ત તારાંકિત સંપર્કોના"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"કોઈ નહીં"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"એલાર્મ્સ"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"સ્મૃતિપત્રો"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ઇવેન્ટ્સ"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"બધા કૉલર્સ"</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 148cd7a..3b7bd69 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -944,12 +944,12 @@
     <string name="musicfx_title" msgid="3415566786340790345">"संगीत प्रभाव"</string>
     <string name="ring_volume_title" msgid="5592466070832128777">"रिंग वॉल्यूम"</string>
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"मौन होने पर कंपन करें"</string>
-    <string name="notification_sound_title" msgid="5137483249425507572">"साधारण नोटिफिकेशन ध्वनी"</string>
+    <string name="notification_sound_title" msgid="5137483249425507572">"साधारण नोटिफ़िकेशन ध्वनी"</string>
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"रिंगटोन"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"नोटिफ़िकेशन"</string>
-    <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"नोटिफिकेशन के लिए इनकमिंग कॉल वॉल्‍यूम का उपयोग करें"</string>
+    <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"नोटिफ़िकेशन के लिए इनकमिंग कॉल वॉल्‍यूम का उपयोग करें"</string>
     <string name="home_work_profile_not_supported" msgid="1357721012342357037">"कार्य प्रोफ़ाइल का समर्थन नहीं करता है"</string>
-    <string name="notification_sound_dialog_title" msgid="3805140135741385667">"साधारण नोटिफिकेशन ध्वनी"</string>
+    <string name="notification_sound_dialog_title" msgid="3805140135741385667">"साधारण नोटिफ़िकेशन ध्वनी"</string>
     <string name="media_volume_title" msgid="3576565767317118106">"मीडिया"</string>
     <string name="media_volume_summary" msgid="5363248930648849974">"संगीत और वीडियो के लिए वॉल्‍यूम सेट करें"</string>
     <string name="alarm_volume_title" msgid="2285597478377758706">"अलार्म"</string>
@@ -960,12 +960,12 @@
     <string name="haptic_feedback_enable_title" msgid="7152163068278526530">"टैप करने पर कंपन करें"</string>
     <string name="audio_record_proc_title" msgid="4271091199976457534">"शोर रद्दीकरण"</string>
     <string name="volume_media_description" msgid="7949355934788807863">"संगीत, वीडियो,गेमऔर अन्‍य मीडिया"</string>
-    <string name="volume_ring_description" msgid="5936851631698298989">"रिंगटोन और नोटिफिकेशन"</string>
+    <string name="volume_ring_description" msgid="5936851631698298989">"रिंगटोन और नोटिफ़िकेशन"</string>
     <string name="volume_notification_description" msgid="5810902320215328321">"नोटिफ़िकेशन"</string>
     <string name="volume_alarm_description" msgid="8322615148532654841">"अलार्म"</string>
-    <string name="volume_ring_mute" msgid="3018992671608737202">"रिंगटोन और नोटिफिकेशन म्‍यूट करें"</string>
+    <string name="volume_ring_mute" msgid="3018992671608737202">"रिंगटोन और नोटिफ़िकेशन म्‍यूट करें"</string>
     <string name="volume_media_mute" msgid="3399059928695998166">"संगीत और अन्‍य मीडिया म्‍यूट करें"</string>
-    <string name="volume_notification_mute" msgid="7955193480006444159">"नोटिफिकेशन म्‍यूट करें"</string>
+    <string name="volume_notification_mute" msgid="7955193480006444159">"नोटिफ़िकेशन म्‍यूट करें"</string>
     <string name="volume_alarm_mute" msgid="4452239420351035936">"अलार्म म्‍यूट करें"</string>
     <string name="dock_settings" msgid="1820107306693002541">"डॉक"</string>
     <string name="dock_settings_title" msgid="9161438664257429372">"डॉक सेटिंग"</string>
@@ -1584,7 +1584,7 @@
     <string name="default_emergency_app" msgid="1951760659640369980">"आपातकालीन ऐप"</string>
     <string name="reset_app_preferences" msgid="1321050641018356925">"ऐप्स प्राथमिकताएं रीसेट करें"</string>
     <string name="reset_app_preferences_title" msgid="6093179367325336662">"ऐप्स प्राथमिकताएं रीसेट करें?"</string>
-    <string name="reset_app_preferences_desc" msgid="4822447731869201512">"इससे निम्न की सभी प्राथमिकताएं रीसेट हो जाएंगी:\n\n "<li>"अक्षम ऐप्स "</li>\n" "<li>"अक्षम ऐप्स  नोटिफिकेशन"</li>\n" "<li>"कार्यवाहियों के लिए डिफ़ॉल्ट ऐप्स "</li>\n" "<li>"ऐप्स  के लिए पृष्ठभूमि डेटा प्रतिबंध"</li>\n" "<li>"अनुमति के कोई भी प्रतिबंध"</li>\n\n" आपका सभी ऐप्स  डेटा बना रहेगा."</string>
+    <string name="reset_app_preferences_desc" msgid="4822447731869201512">"इससे निम्न की सभी प्राथमिकताएं रीसेट हो जाएंगी:\n\n "<li>"अक्षम ऐप्स "</li>\n" "<li>"अक्षम ऐप्स  नोटिफ़िकेशन"</li>\n" "<li>"कार्यवाहियों के लिए डिफ़ॉल्ट ऐप्स "</li>\n" "<li>"ऐप्स  के लिए पृष्ठभूमि डेटा प्रतिबंध"</li>\n" "<li>"अनुमति के कोई भी प्रतिबंध"</li>\n\n" आपका सभी ऐप्स  डेटा बना रहेगा."</string>
     <string name="reset_app_preferences_button" msgid="2559089511841281242">"ऐप्स  रीसेट करें"</string>
     <string name="manage_space_text" msgid="8852711522447794676">"स्‍थान प्रबंधित करें"</string>
     <string name="filter" msgid="2018011724373033887">"फ़िल्टर"</string>
@@ -1651,8 +1651,8 @@
     <string name="app_disable_dlg_text" msgid="5632072173181990531">"अगर आप इस ऐप्लिकेशन को अक्षम करते हैं, तो हो सकता है कि Android और दूसरे ऐप्लिकेशन अपेक्षित रूप से काम ना कर पाएं."</string>
     <string name="app_special_disable_dlg_title" msgid="2690148680327142674">"डेटा हटाएं और ऐप्स  को अक्षम करें?"</string>
     <string name="app_special_disable_dlg_text" msgid="5832078825810635913">"यदि आप इस ऐप्लिकेशन को अक्षम करते हैं, तो हो सकता है कि दूसरे ऐप्लिकेशन अपेक्षित रूप से काम ना कर पाएं. आपका डेटा भी हटा दिया जाएगा."</string>
-    <string name="app_disable_notifications_dlg_title" msgid="7669264654851761857">"नोटिफिकेशन बंद करें?"</string>
-    <string name="app_disable_notifications_dlg_text" msgid="5088484670924769845">"यदि आप इस ऐप्स के लिए नोटिफिकेशन बंद करते हैं, तो आप महत्‍वपूर्ण अलर्ट और नई जानकारी खो देंगे."</string>
+    <string name="app_disable_notifications_dlg_title" msgid="7669264654851761857">"नोटिफ़िकेशन बंद करें?"</string>
+    <string name="app_disable_notifications_dlg_text" msgid="5088484670924769845">"यदि आप इस ऐप्स के लिए नोटिफ़िकेशन बंद करते हैं, तो आप महत्‍वपूर्ण अलर्ट और नई जानकारी खो देंगे."</string>
     <string name="app_install_details_group_title" msgid="7084623031296083574">"स्टोर"</string>
     <string name="app_install_details_title" msgid="6905279702654975207">"ऐप्लिकेशन का विवरण"</string>
     <string name="app_install_details_summary" msgid="6464796332049327547">"<xliff:g id="APP_STORE">%1$s</xliff:g> से इंस्टॉल किया गया ऐप्लिकेशन"</string>
@@ -1910,7 +1910,7 @@
     <string name="enable_service_pin_reason" msgid="7882035264853248228">"क्‍योंकि <xliff:g id="SERVICE">%1$s</xliff:g> को चालू करने से डेटा एेन्‍क्रिप्‍शन प्रभावित होता है, इसलिए आपको अपने पिन की पुष्‍टि करनी होगी"</string>
     <string name="enable_service_password_reason" msgid="1224075277603097951">"क्‍योंकि <xliff:g id="SERVICE">%1$s</xliff:g> को चालू करने से डेटा एेन्‍क्रिप्‍शन प्रभावित होता है, इसलिए आपको अपने पासवर्ड की पुष्‍टि करनी होगी."</string>
     <string name="capability_title_receiveAccessibilityEvents" msgid="1869032063969970755">"अपनी कार्यवाही ध्यान से देखें"</string>
-    <string name="capability_desc_receiveAccessibilityEvents" msgid="6640333613848713883">"किसी ऐप्स  से सहभागिता करते समय नोटिफिकेशन प्राप्त करें."</string>
+    <string name="capability_desc_receiveAccessibilityEvents" msgid="6640333613848713883">"किसी ऐप्स  से सहभागिता करते समय नोटिफ़िकेशन प्राप्त करें."</string>
     <string name="disable_service_title" msgid="3624005212728512896">"<xliff:g id="SERVICE">%1$s</xliff:g> को रोकें?"</string>
     <string name="disable_service_message" msgid="2247101878627941561">"ठीक टैप करने से <xliff:g id="SERVICE">%1$s</xliff:g> बंद हो जाएगी."</string>
     <string name="accessibility_no_services_installed" msgid="7200948194639038807">"कोई सेवा इंस्‍टॉल नहीं है"</string>
@@ -2260,7 +2260,7 @@
     <string name="admin_more_details" msgid="7901420667346456102">"अधिक विवरण"</string>
     <string name="untitled_apn" msgid="1230060359198685513">"शीर्षक-रहित"</string>
     <string name="sound_category_sound_title" msgid="1488759370067953996">"सामान्य"</string>
-    <string name="notification_log_title" msgid="3766148588239398464">"नोटिफिकेशन लॉग"</string>
+    <string name="notification_log_title" msgid="3766148588239398464">"नोटिफ़िकेशन लॉग"</string>
     <string name="sound_category_call_ringtone_vibrate_title" msgid="1543777228646645163">"कॉल की रिंगटोन और कंपन"</string>
     <string name="sound_category_system_title" msgid="1480844520622721141">"सिस्टम"</string>
     <string name="wifi_setup_title" msgid="2970260757780025029">"वाई-फ़ाई  सेटअप"</string>
@@ -2411,8 +2411,8 @@
     <string name="data_usage_app_restrict_dialog" msgid="1466689968707308512">"यह सुविधा केवल मोबाइल नेटवर्क उपलब्ध होने पर उस एप्ल‍िकेशन को कार्य करने से रोक सकती है जो पृष्ठभूमि डेटा पर निर्भर है.\n\nआपको एप्ल‍िकेशन में उपलब्ध सेटिंग में अधिक उपयुक्त डेटा उपयोग नियंत्रण मिल सकते हैं."</string>
     <string name="data_usage_restrict_denied_dialog" msgid="55012417305745608">"बैकग्राउंड डेटा प्रतिबंधित करना तभी संभव है जब आपने कोई नेटवर्क डेटा सीमा सेट की हुई हो."</string>
     <string name="data_usage_auto_sync_on_dialog_title" msgid="2438617846762244389">"अपने आप डेटा सिंक चालू करें?"</string>
-    <string name="data_usage_auto_sync_on_dialog" product="tablet" msgid="8581983093524041669">"आपके द्वारा वेब पर अपने खातों में किए जाने वाले किसी भी बदलाव की प्रतिलिपि आपके टेबलेट में अपने आप बन जाएगी.\n\nकुछ खाते आपके द्वारा टेबलेट पर किए जाने वाले किसी भी बदलाव की प्रतिलिपि वेब पर भी बना सकते हैं. Google खाता इसी तरह काम करता है."</string>
-    <string name="data_usage_auto_sync_on_dialog" product="default" msgid="8651376294887142858">"आपके द्वारा वेब पर अपने खातों में किए जाने वाले किसी भी बदलाव की प्रतिलिपि आपके फ़ोन में अपने आप बन जाएगी.\n\nकुछ खाते आपके द्वारा फ़ोन पर किए जाने वाले किसी भी बदलाव की प्रतिलिपि वेब पर भी बना सकते हैं. Google खाता इसी तरह काम करता है."</string>
+    <string name="data_usage_auto_sync_on_dialog" product="tablet" msgid="8581983093524041669">"आपने वेब पर अपने खातों में जो भी बदलाव किए हैं उनकी कॉपी आपके टेबलेट में अपने आप बन जाएगी.\n\nआपने जो भी बदलाव टेबलेट पर किए हैं, उन्हें कुछ खाते वेब पर भी कॉपी कर सकते हैं. Google खाता इसी तरह काम करता है."</string>
+    <string name="data_usage_auto_sync_on_dialog" product="default" msgid="8651376294887142858">"आपने वेब पर अपने खातों में जो भी बदलाव किए हैं उनकी कॉपी आपके फ़ोन में अपने आप बन जाएगी.\n\nआपने जो भी बदलाव फ़ोन पर किए हैं, उन्हें कुछ खाते वेब पर भी कॉपी कर सकते हैं. Google खाता इसी तरह काम करता है."</string>
     <string name="data_usage_auto_sync_off_dialog_title" msgid="9013139130490125793">"अपने आप डेटा सिंक बंद करें?"</string>
     <string name="data_usage_auto_sync_off_dialog" msgid="4025938250775413864">"यह डेटा और बैटरी उपयोग को संरक्षित करेगा, लेकिन हाल की जानकारी इकट्ठा करने के लिए आपको हर खाते का सिंक मैन्‍युअल रूप से करना होगा. और जब नई जानकारी मिलेगी तो आपको नोटिफ़िकेशन नहीं आएगा."</string>
     <string name="data_usage_cycle_editor_title" msgid="1373797281540188533">"उपयोग चक्र रीसेट दिनांक"</string>
@@ -2640,16 +2640,16 @@
     <string name="restriction_settings_title" msgid="4233515503765879736">"प्रतिबंध"</string>
     <string name="restriction_menu_reset" msgid="2067644523489568173">"प्रतिबंधों को निकालें"</string>
     <string name="restriction_menu_change_pin" msgid="740081584044302775">"पिन बदलें"</string>
-    <string name="app_notifications_switch_label" msgid="9124072219553687583">"नोटिफिकेशन दिखाएं"</string>
+    <string name="app_notifications_switch_label" msgid="9124072219553687583">"नोटिफ़िकेशन दिखाएं"</string>
     <string name="help_label" msgid="6886837949306318591">"सहायता और फ़ीडबैक"</string>
     <string name="support_summary" msgid="2705726826263742491">"सहायता लेख, फ़ोन और चैट, शुरू करना"</string>
     <string name="user_account_title" msgid="1127193807312271167">"सामग्री के लिए खाता"</string>
     <string name="user_picture_title" msgid="7297782792000291692">"फ़ोटो आईडी"</string>
     <string name="extreme_threats_title" msgid="6549541803542968699">"गंभीर धमकियां"</string>
-    <string name="extreme_threats_summary" msgid="8777860706500920667">"जान और माल की गंभीर धमकियों की नोटिफिकेशन प्राप्त करें"</string>
+    <string name="extreme_threats_summary" msgid="8777860706500920667">"जान और माल की गंभीर धमकियों की नोटिफ़िकेशन प्राप्त करें"</string>
     <string name="severe_threats_title" msgid="8362676353803170963">"गंभीर धमकियां"</string>
-    <string name="severe_threats_summary" msgid="8848126509420177320">"जान और माल की गंभीर धमकियों के लिए नोटिफिकेशन प्राप्त करें"</string>
-    <string name="amber_alerts_title" msgid="2772220337031146529">"AMBER नोटिफिकेशन"</string>
+    <string name="severe_threats_summary" msgid="8848126509420177320">"जान और माल की गंभीर धमकियों के लिए नोटिफ़िकेशन प्राप्त करें"</string>
+    <string name="amber_alerts_title" msgid="2772220337031146529">"AMBER नोटिफ़िकेशन"</string>
     <string name="amber_alerts_summary" msgid="4312984614037904489">"बाल अपहरणों के बारे में बुलेटिन प्राप्त करें"</string>
     <string name="repeat_title" msgid="6473587828597786996">"दोहराएं"</string>
     <string name="call_manager_enable_title" msgid="7718226115535784017">"कॉल प्रबंधक सक्षम करें"</string>
@@ -2807,7 +2807,7 @@
     <string name="media_volume_option_title" msgid="2811531786073003825">"मीडिया वॉल्‍यूम"</string>
     <string name="alarm_volume_option_title" msgid="8219324421222242421">"अलार्म वॉल्‍यूम"</string>
     <string name="ring_volume_option_title" msgid="6767101703671248309">"रिंग का वॉल्यूम"</string>
-    <string name="notification_volume_option_title" msgid="6064656124416882130">"नोटिफिकेशन वॉल्‍यूम"</string>
+    <string name="notification_volume_option_title" msgid="6064656124416882130">"नोटिफ़िकेशन वॉल्‍यूम"</string>
     <string name="ringtone_title" msgid="5379026328015343686">"फ़ोन रिंगटोन"</string>
     <string name="notification_ringtone_title" msgid="4468722874617061231">"डिफ़ॉल्ट नोटिफ़िकेशन ध्वनि"</string>
     <string name="notification_unknown_sound_title" msgid="2535027767851838335">"ऐप की ओर से दी जाने वाली ध्वनि"</string>
@@ -2825,7 +2825,7 @@
     <string name="dock_audio_media_disabled" msgid="3430953622491538080">"सभी ऑडियो"</string>
     <string name="dock_audio_media_enabled" msgid="667849382924908673">"केवल मीडिया ऑडियो"</string>
     <string name="emergency_tone_silent" msgid="1067515631635824291">"मौन"</string>
-    <string name="emergency_tone_alert" msgid="8941852695428130667">"नोटिफिकेशन"</string>
+    <string name="emergency_tone_alert" msgid="8941852695428130667">"नोटिफ़िकेशन"</string>
     <string name="emergency_tone_vibrate" msgid="8281126443204950847">"कंपन"</string>
     <string name="boot_sounds_title" msgid="567029107382343709">"चालू होने की ध्वनि"</string>
     <string name="zen_mode_settings_summary_off" msgid="1857165567766351925">"कोई भी ऑटोमैटिक नियम चालू नहीं है"</string>
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"केवल अलार्म"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"पूरी तरह शांत"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"दृश्य संबंधी गड़बड़ी अवरुद्ध करें"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -2864,17 +2865,17 @@
     <string name="notification_pulse_title" msgid="1905382958860387030">"ब्लिंक लाइट"</string>
     <string name="lock_screen_notifications_title" msgid="6173076173408887213">"लॉक स्क्रीन पर"</string>
     <string name="lock_screen_notifications_summary_show" msgid="6407527697810672847">"सभी नोटिफ़िकेशन सामग्री दिखाएं"</string>
-    <string name="lock_screen_notifications_summary_hide" msgid="7891552853357258782">"संवेदनशील नोटिफिकेशन सामग्री छिपाएं"</string>
+    <string name="lock_screen_notifications_summary_hide" msgid="7891552853357258782">"संवेदनशील नोटिफ़िकेशन सामग्री छिपाएं"</string>
     <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_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>
     <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>
+    <string name="lock_screen_notifications_interstitial_message_profile" msgid="8307705621027472346">"जब आपका डिवाइस लॉक हो, तो आप प्रोफ़ाइल नोटिफ़िकेशन को किस प्रकार दिखाया जाना चाहेंगे?"</string>
+    <string name="lock_screen_notifications_interstitial_title_profile" msgid="3169806586032521333">"प्रोफ़ाइल नोटिफ़िकेशन"</string>
     <string name="notifications_title" msgid="8086372779371204971">"नोटिफ़िकेशन"</string>
-    <string name="app_notifications_title" msgid="5810577805218003760">"ऐप्स नोटिफिकेशन"</string>
+    <string name="app_notifications_title" msgid="5810577805218003760">"ऐप्स नोटिफ़िकेशन"</string>
     <string name="notification_channel_title" msgid="2260666541030178452">"नोटिफ़िकेशन की श्रेणी"</string>
     <string name="notification_importance_title" msgid="848692592679312666">"महत्‍व"</string>
     <string name="notification_importance_unspecified" msgid="2196023702875112081">"ऐप्लिकेशन को तय करने दें"</string>
@@ -2888,21 +2889,21 @@
     <string name="notification_importance_default_title" msgid="9120383978536089489">"उच्च"</string>
     <string name="notification_importance_high_title" msgid="3058778300264746473">"बहुत ज़रूरी"</string>
     <string name="allow_sound" msgid="1820188704793497324">"ध्वनि की अनुमति दें"</string>
-    <string name="show_silently_summary" msgid="7616604629123146565">"वर्तमान स्क्रीन पर इन नोटिफिकेशन के लिए ना तो ध्वनि करें, ना कंपन करें और ना ही झलक दिखाएं."</string>
+    <string name="show_silently_summary" msgid="7616604629123146565">"वर्तमान स्क्रीन पर इन नोटिफ़िकेशन के लिए ना तो ध्वनि करें, ना कंपन करें और ना ही झलक दिखाएं."</string>
     <string name="notification_channel_summary_min" msgid="5401718014765921892">"कम महत्व"</string>
     <string name="notification_channel_summary_low" msgid="322317684244981244">"मध्यम महत्व"</string>
     <string name="notification_channel_summary_default" msgid="1111749130423589931">"बहुत अधिक महत्व"</string>
     <string name="notification_channel_summary_high" msgid="2085017556511003283">"तत्काल महत्व"</string>
-    <string name="default_notification_assistant" msgid="7631945224761430146">"नोटिफिकेशन सहायक"</string>
+    <string name="default_notification_assistant" msgid="7631945224761430146">"नोटिफ़िकेशन सहायक"</string>
     <string name="manage_notification_access_title" msgid="7510080164564944891">"एक्सेस नोटिफ़िकेशन"</string>
     <string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"कार्य प्रोफ़ाइल नोटिफ़िकेशन का एक्सेस अवरोधित है"</string>
-    <string name="manage_notification_access_summary_zero" msgid="2409912785614953348">"ऐप्स  नोटिफिकेशन नहीं पढ़ सकते"</string>
+    <string name="manage_notification_access_summary_zero" msgid="2409912785614953348">"ऐप्स  नोटिफ़िकेशन नहीं पढ़ सकते"</string>
     <plurals name="manage_notification_access_summary_nonzero" formatted="false" msgid="7930130030691218387">
-      <item quantity="one">%d ऐप्‍स नोटिफिकेशन पढ़ सकते हैं</item>
-      <item quantity="other">%d ऐप्‍स नोटिफिकेशन पढ़ सकते हैं</item>
+      <item quantity="one">%d ऐप्‍स नोटिफ़िकेशन पढ़ सकते हैं</item>
+      <item quantity="other">%d ऐप्‍स नोटिफ़िकेशन पढ़ सकते हैं</item>
     </plurals>
-    <string name="no_notification_listeners" msgid="3487091564454192821">"इंस्टॉल किए गए किसी भी ऐप द्वारा नोटिफिकेशन ऐक्सेस का अनुरोध नहीं किया गया."</string>
-    <string name="notification_listener_security_warning_title" msgid="5522924135145843279">"<xliff:g id="SERVICE">%1$s</xliff:g> के लिए नोटिफिकेशन ऐक्सेस की अनुमति दें?"</string>
+    <string name="no_notification_listeners" msgid="3487091564454192821">"इंस्टॉल किए गए किसी भी ऐप द्वारा नोटिफ़िकेशन ऐक्सेस का अनुरोध नहीं किया गया."</string>
+    <string name="notification_listener_security_warning_title" msgid="5522924135145843279">"<xliff:g id="SERVICE">%1$s</xliff:g> के लिए नोटिफ़िकेशन ऐक्सेस की अनुमति दें?"</string>
     <string name="notification_listener_security_warning_summary" msgid="119203147791040151">"<xliff:g id="NOTIFICATION_LISTENER_NAME">%1$s</xliff:g> संपर्क नामों तथा आपको प्राप्त होने वाले संदेशों के लेख जैसी व्यक्तिगत जानकारी सहित, सभी नोटिफ़िकेशन पढ़ सकता है. वह नोटिफ़िकेशन खारिज कर सकेगा और उनमें शामिल कार्रवाई बटनों को ट्रिगर भी कर सकेगा. \n\nइससे ऐप्लिकेशन को परेशान न करें सेवा को चालू या बंद करने और संबंधित सेटिंग को बदलने की क्षमता भी मिल जाएगी."</string>
     <string name="notification_listener_disable_warning_summary" msgid="6738915379642948000">"यदि आप <xliff:g id="NOTIFICATION_LISTENER_NAME">%1$s</xliff:g> के लिए नोटिफ़िकेशन का एक्सेस बंद करते हैं, तो परेशान न करें सेवा का एक्सेस भी बंद हो सकता है."</string>
     <string name="notification_listener_disable_warning_confirm" msgid="8333442186428083057">"बंद करें"</string>
@@ -2941,13 +2942,13 @@
     <string name="notification_toggle_on" msgid="650145396718191048">"चालू"</string>
     <string name="notification_toggle_off" msgid="2142010737190671762">"बंद"</string>
     <string name="app_notification_block_title" msgid="4069351066849087649">"सभी रोक दें"</string>
-    <string name="app_notification_block_summary" msgid="4744020456943215352">"ये नोटिफिकेशन कभी ना दिखाएं"</string>
+    <string name="app_notification_block_summary" msgid="4744020456943215352">"ये नोटिफ़िकेशन कभी ना दिखाएं"</string>
     <string name="notification_content_block_title" msgid="5854232570963006360">"नोटिफ़िकेशन दिखाएं"</string>
     <string name="notification_content_block_summary" msgid="7746185794438882389">"नोटिफ़िकेशन कभी भी शेड में या पेरिफ़ेरल डिवाइस पर ना दिखाएं"</string>
     <string name="notification_badge_title" msgid="6370122441168519809">"सूचना बिंदुु की अनुमति दें"</string>
     <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_override_dnd_summary" msgid="3516007157020189746">"जब परेशान ना करें को केवल प्राथमिकता पर सेट किया गया हो, तब इन नोटिफ़िकेशन को बाधित करते रहने दें"</string>
     <string name="app_notification_visibility_override_title" msgid="2187232730902430718">"लॉक स्क्रीन पर"</string>
     <string name="app_notification_row_banned" msgid="5983655258784814773">"अवरोधित"</string>
     <string name="app_notification_row_priority" msgid="7723839972982746568">"प्राथमिकता"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"केवल तारांकित संपर्कों से"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"कोई नहीं"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"अलार्म"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"रिमाइंडर्स"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"इवेंट"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"सभी कॉलर"</string>
@@ -3028,15 +3031,15 @@
     <string name="zen_mode_summary_alarms_only_by_time" msgid="7465525754879341907">"केवल <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> तक के लिए अलार्म को बदलें"</string>
     <string name="zen_mode_summary_always" msgid="6172985102689237703">"हमेशा बाधित करें में बदलें"</string>
     <string name="zen_mode_screen_on" msgid="7712038508173845101">"स्क्रीन के चालू होने पर अवरुद्ध करें"</string>
-    <string name="zen_mode_screen_on_summary" msgid="6444425984146305149">"परेशान न करें द्वारा मौन किए गए नोटिफिकेशन को स्क्रीन पर तांक-झांक करने या पॉप अप होने से रोकें"</string>
+    <string name="zen_mode_screen_on_summary" msgid="6444425984146305149">"परेशान न करें द्वारा मौन किए गए नोटिफ़िकेशन को स्क्रीन पर तांक-झांक करने या पॉप अप होने से रोकें"</string>
     <string name="zen_mode_screen_off" msgid="5026854939192419879">"स्क्रीन बंद होने पर अवरुद्ध करें"</string>
-    <string name="zen_mode_screen_off_summary" msgid="6490932947651798094">"परेशान न करें द्वारा मौन किए गए नोटिफिकेशन को स्क्रीन को चालू करने से या नोटिफिकेशन की रोशनी को पल्स करने से रोकें"</string>
+    <string name="zen_mode_screen_off_summary" msgid="6490932947651798094">"परेशान न करें द्वारा मौन किए गए नोटिफ़िकेशन को स्क्रीन को चालू करने से या नोटिफ़िकेशन की रोशनी को पल्स करने से रोकें"</string>
     <string name="zen_mode_screen_off_summary_no_led" msgid="3758698381956461866">"परेशान न करें द्वारा मौन किए गए नोटिफ़िकेशन को स्क्रीन चालू करने से रोकें"</string>
     <string name="zen_mode_all_visual_interruptions" msgid="2851308980832487411">"बंद"</string>
     <string name="zen_mode_screen_on_visual_interruptions" msgid="7373348148129140528">"स्क्रीन के चालू होने पर"</string>
     <string name="zen_mode_screen_off_visual_interruptions" msgid="4850792880144382633">"स्क्रीन के बंद होने पर"</string>
     <string name="zen_mode_no_visual_interruptions" msgid="8742776003822778472">"स्क्रीन के चालू या बंद होने पर"</string>
-    <string name="notification_app_settings_button" msgid="6685640230371477485">"नोटिफिकेशन सेटिंग"</string>
+    <string name="notification_app_settings_button" msgid="6685640230371477485">"नोटिफ़िकेशन सेटिंग"</string>
     <string name="device_feedback" msgid="3238056036766293294">"इस डिवाइस के बारे में फ़ीडबैक भेजें"</string>
     <string name="restr_pin_enter_admin_pin" msgid="1085834515677448072">"व्यवस्थापक पिन डालें"</string>
     <string name="switch_on_text" msgid="1124106706920572386">"चालू"</string>
@@ -3423,9 +3426,9 @@
     <string name="home_app" msgid="4066188520886810030">"होम ऐप"</string>
     <string name="no_default_home" msgid="7184117487704520238">"कोई डिफ़ॉल्‍ट होम नहीं"</string>
     <string name="lockpattern_settings_require_cred_before_startup" msgid="3832020101401318248">"सुरक्षित स्‍टार्ट-अप"</string>
-    <string name="lockpattern_settings_require_pattern_before_startup_summary" msgid="7873036097628404476">"अपना डिवाइस प्रारंभ करने के लिए पैटर्न आवश्‍यक बनाएं. बंद होने पर, यह डिवाइस कॉल, संदेश, नोटिफिकेशन, या अलार्म प्राप्‍त नहीं कर सकता है."</string>
-    <string name="lockpattern_settings_require_pin_before_startup_summary" msgid="6022831284097476933">"अपना डिवाइस प्रारंभ करने के लिए पिन आवश्‍यक बनाएं. बंद होने पर, यह डिवाइस कॉल, संदेश, नोटिफिकेशन, या अलार्म प्राप्‍त नहीं कर सकता है."</string>
-    <string name="lockpattern_settings_require_password_before_startup_summary" msgid="6818285221244966231">"अपना डिवाइस प्रारंभ करने के लिए पासवर्ड आवश्‍यक बनाएं. बंद होने पर, यह डिवाइस कॉल, संदेश, नोटिफिकेशन, या अलार्म प्राप्‍त नहीं कर सकता है."</string>
+    <string name="lockpattern_settings_require_pattern_before_startup_summary" msgid="7873036097628404476">"अपना डिवाइस प्रारंभ करने के लिए पैटर्न आवश्‍यक बनाएं. बंद होने पर, यह डिवाइस कॉल, संदेश, नोटिफ़िकेशन, या अलार्म प्राप्‍त नहीं कर सकता है."</string>
+    <string name="lockpattern_settings_require_pin_before_startup_summary" msgid="6022831284097476933">"अपना डिवाइस प्रारंभ करने के लिए पिन आवश्‍यक बनाएं. बंद होने पर, यह डिवाइस कॉल, संदेश, नोटिफ़िकेशन, या अलार्म प्राप्‍त नहीं कर सकता है."</string>
+    <string name="lockpattern_settings_require_password_before_startup_summary" msgid="6818285221244966231">"अपना डिवाइस प्रारंभ करने के लिए पासवर्ड आवश्‍यक बनाएं. बंद होने पर, यह डिवाइस कॉल, संदेश, नोटिफ़िकेशन, या अलार्म प्राप्‍त नहीं कर सकता है."</string>
     <string name="suggestion_additional_fingerprints" msgid="2214281455363797037">"अन्य फ़िंगरप्रिंट जोड़ें"</string>
     <string name="suggestion_additional_fingerprints_summary" msgid="5471253233176471245">"किसी दूसरी अंगुली से अनलॉक करें"</string>
     <string name="battery_saver_on_summary" msgid="9072203872401530722">"चालू / <xliff:g id="ID_1">%1$s</xliff:g>"</string>
@@ -3433,7 +3436,7 @@
     <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>
     <string name="not_battery_optimizing" msgid="5362861851864837617">"बैटरी ऑप्टिमाइज़ेशन का उपयोग नहीं कर रहा है"</string>
-    <string name="lockscreen_remote_input" msgid="969871538778211843">"यदि डिवाइस लॉक है, तो नोटिफिकेशन का जवाब या अन्य लेख लिखने से रोकें"</string>
+    <string name="lockscreen_remote_input" msgid="969871538778211843">"यदि डिवाइस लॉक है, तो नोटिफ़िकेशन का जवाब या अन्य लेख लिखने से रोकें"</string>
     <string name="default_spell_checker" msgid="8506899870026026660">"डिफ़ॉल्ट वर्तनी-जांचकर्ता"</string>
     <string name="choose_spell_checker" msgid="6596539862291699367">"वर्तनी-जांचकर्ता चुनें"</string>
     <string name="spell_checker_not_selected" msgid="8871083796179200696">"नहीं चुना गया"</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 80382f5..b25e5d3 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -2870,7 +2870,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Samo alarmi"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Potpuna tišina"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokiranje vizualnih ometanja"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Zvukovi radnog profila"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Upotreba zvuka osobnog profila"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvukovi su isti za radni i osobni profil"</string>
@@ -3034,6 +3035,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Samo od kontakata sa zvjezdicom"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ništa"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmi"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Podsjetnici"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Događaji"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Svi pozivatelji"</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 79ae4b3..f3e5bc7 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -2844,7 +2844,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Csak ébresztések"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Teljes némítás"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Megjelenő értesítések tiltása"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Munkaprofil hangebállításai"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Személyes profil hangjainak használata"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"A munkahelyi és a személyes profil hangjai megegyeznek"</string>
@@ -3005,6 +3006,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Csak a megcsillagozott névjegyektől"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Senkitől"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Riasztások"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Emlékeztetők"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Események"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Minden hívó"</string>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index b0a5fd0..abe1715 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -1837,7 +1837,7 @@
     <string name="accessibility_power_button_ends_call_prerefence_title" msgid="6673851944175874235">"Սնուցման կոճակը ավարտում է զանգը"</string>
     <string name="accessibility_toggle_large_pointer_icon_title" msgid="535173100516295580">"Մկնիկի խոշոր նշորդ"</string>
     <string name="accessibility_toggle_master_mono_title" msgid="4363806997971905302">"Մոնո ձայն"</string>
-    <string name="accessibility_toggle_master_mono_summary" msgid="5634277025251530927">"Ձայնանյութ նվագարկելիս միավորել ալիքները"</string>
+    <string name="accessibility_toggle_master_mono_summary" msgid="5634277025251530927">"Աուդիո նվագարկելիս միավորել ալիքները"</string>
     <string name="accessibility_long_press_timeout_preference_title" msgid="6708467774619266508">"Սեղմելու և պահելու հապաղումը"</string>
     <string name="accessibility_display_inversion_preference_title" msgid="2119647786141420802">"Գունաշրջում"</string>
     <string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Կարող է ազդել սարքի աշխատանքի վրա"</string>
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Միայն զարթուցիչը"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Կատարյալ լռություն"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>՝ <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Արգելափակել տեսողական ծանուցումները"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Միայն աստղանշված կոնտակտներից"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ոչ ոքից"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Զարթուցիչ"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Հիշեցումներ"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Միջոցառումներ"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Բոլոր զանգողները"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 4291929..a988846 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Hanya alarm"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Senyap total"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokir gangguan visual"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Suara profil kerja"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Gunakan suara profil pribadi"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Suara profil kerja dan pribadi sama"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Hanya dari kontak berbintang"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Tidak ada"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarm"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Pengingat"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Acara"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Semua penelepon"</string>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index d8bd37d..e59029b 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Reikningar"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Staðsetning"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Reikningar"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Öryggi og staðsetning"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Dulkóðun og skilríki"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Sími dulkóðaður"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"Tæki dulkóðað"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Sjálfvirk birtustilling"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Lyfta til að vekja"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Umhverfisskjár"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Alltaf kveikt / aukin rafhlöðunotkun"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Nýjar tilkynningar"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Sýnt hvenær"</string>
     <string name="doze_title" msgid="2375510714460456687">"Nýjar tilkynningar"</string>
     <string name="doze_summary" msgid="3846219936142814032">"Vekja skjáinn þegar þú færð tilkynningar"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Alltaf kveikt"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Sýna tíma, tilkynningartákn og aðrar upplýsingar. Aukin rafhlöðunotkun."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Leturstærð"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Gera texta stærri eða minni"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"Stillingar SIM-kortaláss"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"bendingar"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"borga, ýta, greiðslur"</string>
     <string name="keywords_backup" msgid="470070289135403022">"afrita, afritun"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"bendingar"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Setja upp Wi-Fi NFC-merki"</string>
     <string name="write_tag" msgid="8571858602896222537">"Skrifa"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Snertu merki til að skrifa..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Aðeins vekjarar"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Algjör þögn"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Útiloka sjónrænt áreiti"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Hljóð vinnuprófils"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Nota hljóð úr persónulegum prófíl"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Hljóð vinnuprófíls eru þau sömu og í persónulegum prófíl"</string>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Aðeins frá stjörnumerktum tengiliðum"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ekkert"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Vekjarar"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Áminningar"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Viðburðir"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Allir hringjendur"</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 8d4d72b..82fd91a 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Solo sveglie"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silenzio totale"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blocca interruzioni visive"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Suoni profilo di lavoro"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usa suoni profilo personale"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"I suoni dei profili di lavoro e personale sono gli stessi"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Solo da contatti Speciali"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Nessuno"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Sveglie"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Promemoria"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Eventi"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Tutti i chiamanti"</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 6360c5a..419e7aa 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -1085,15 +1085,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"בהירות אוטומטית"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"הרם כדי להוציא ממצב שינה"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"תצוגה סביבתית"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"פועל תמיד / צריכה מוגברת של הסוללה"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"הודעות חדשות"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"מתי להציג"</string>
     <string name="doze_title" msgid="2375510714460456687">"הודעות חדשות"</string>
     <string name="doze_summary" msgid="3846219936142814032">"המסך יתעורר כשמתקבלות הודעות"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"פועל תמיד"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"הצגה של השעה, סמלי ההודעות ופרטים אחרים. צריכה מוגברת של הסוללה."</string>
     <string name="title_font_size" msgid="4405544325522105222">"גודל גופן"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"הגדלה או הקטנה של גודל הטקסט"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"‏הגדרות נעילת כרטיס SIM"</string>
@@ -2848,8 +2846,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"תנועות"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"שלם, הקש, תשלומים"</string>
     <string name="keywords_backup" msgid="470070289135403022">"‏גיבוי, לגבות, backup, back up"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"תנועה"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"‏הגדר תג NFC של Wi-Fi"</string>
     <string name="write_tag" msgid="8571858602896222537">"כתוב"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"הקש על תג כדי לכתוב..."</string>
@@ -2903,7 +2900,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"רק התראות"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"שקט מוחלט"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"חסימת הפרעות חזותיות"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3070,6 +3068,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"רק מאלו שמסומנים בכוכב"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"אף אחד"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"התראות"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"תזכורות"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"אירועים"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"כל המתקשרים"</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index b295b38..8ec49ca 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -2846,7 +2846,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"アラームのみ"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"サイレント"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"視覚的な通知のブロック"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3008,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"スター付きの連絡先のみ"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"なし"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"アラーム"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"リマインダー"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"予定"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"すべての発信者"</string>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index f38d23a..19ad646 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"მხოლოდ მაღვიძარები"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"სრული სიჩუმე"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ვიზუალური სიგნალების დაბლოკვა"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"მხოლოდ ვარსკვლავიანი კონტაქტებისგან"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"არავისგან"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"მაღვიძარები"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"შეხსენებები"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ღონისძიებები"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"ყველა აბონენტი"</string>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index 407cd30..e7ea96b 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Есептік жазбалар"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Орын"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Есептік жазбалар"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Қауіпсіздік және орналасқан жер"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Шифрлау және тіркелу деректері"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Телефон шифрланған"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"Құрылғы шифрланған"</string>
@@ -2843,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Тек дабылдар"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Толық тыныштық"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Көрнекі мазалағыштарды бөгеу"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3004,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Тек жұлдызша қойылған контактілерден"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ешқандай"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Дабылдар"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Еске салғыштар"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Оқиғалар"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Барлық қоңырау шалушылар"</string>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index 905598c..dbcb75c 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -1061,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"ពន្លឺ​ស្វ័យ​ប្រវត្តិ"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"លើក​ដៃ​ដើម្បី​ឲ្យ​ភ្ញាក់"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"មុខងារអេក្រង់សម្ងំ"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"បើក​ជានិច្ច / ប្រើ​ថាមពលថ្ម​ច្រើន​ជាងមុន"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"ការជូនដំណឹងថ្មីៗ"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"ពេលដែលត្រូវ​បង្ហាញ"</string>
     <string name="doze_title" msgid="2375510714460456687">"ការជូនដំណឹងថ្មីៗ"</string>
     <string name="doze_summary" msgid="3846219936142814032">"ដាស់អេក្រង់នៅពេលដែលអ្នកទទួលបានការជូនដំណឹង"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"បើក​ជា​និច្ច"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"បង្ហាញ​ម៉ោង រូប​តំណាង​ការជូន​ដំណឹង និង​ព័ត៌មាន​ផ្សេងទៀត។ ប្រើ​ថាមពលថ្ម​ច្រើន​ជាងមុន។"</string>
     <string name="title_font_size" msgid="4405544325522105222">"ទំហំពុម្ពអក្សរ"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"ធ្វើឲ្យអក្សរធំជាងមុន ឬតូចជាងមុន"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"កំណត់​ការ​ចាក់សោ​ស៊ីម​កាត"</string>
@@ -2792,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"ចលនា"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"បង់​ប្រាក់, ចុច, ការ​បង់​ប្រាក់"</string>
     <string name="keywords_backup" msgid="470070289135403022">"ការបម្រុងទុក បម្រុងទុក"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"ចលនា"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"រៀបចំ​ស្លាក​អិនអេហ្វ​ស៊ី​វ៉ាយហ្វាយ"</string>
     <string name="write_tag" msgid="8571858602896222537">"សរសេរ"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"ប៉ះ​ស្លាក​ដើម្បី​សរសេរ..."</string>
@@ -2845,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"សំឡេងរោទ៍ប៉ុណ្ណោះ"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ស្ងៀមស្ងាត់ទាំងស្រុង"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>៖ <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"រារាំងការរំខានក្នុងការមើល"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3006,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"ពីទំនាក់ទំនងមានផ្កាយតែប៉ុណ្ណោះ"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"គ្មាន"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"សំឡេងរោទ៍"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"កម្មវិធីរំលឹក"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ព្រឹត្តិការណ៍"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"អ្នកហៅទូរស័ព្ទទាំងអស់"</string>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index d193e0e..d9fa8b8 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"ಖಾತೆಗಳು"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"ಸ್ಥಳ"</string>
     <string name="account_settings_title" msgid="626177544686329806">"ಖಾತೆಗಳು"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"ಭದ್ರತೆ ಮತ್ತು ಸ್ಥಳ"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"ಎನ್‌ಕ್ರಿಪ್ಶನ್ ಮತ್ತು ರುಜುವಾತುಗಳು"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"ಫೋನ್ ಎನ್‌ಕ್ರಿಪ್ಟ್ ಮಾಡಲಾಗಿದೆ"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"ಸಾಧನ ಎನ್‌ಕ್ರಿಪ್ಟ್ ಆಗಿದೆ"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"ಸ್ವಯಂಚಾಲಿತ ಪ್ರಖರತೆ"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"ಎಬ್ಬಿಸಲು ಎತ್ತಿರಿ"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"ಆಂಬಿಯೆಂಟ್ ಡಿಸ್‌ಪ್ಲೇ"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"ಯಾವಾಗಲೂ ಆನ್ / ಅಧಿಕ ಬ್ಯಾಟರಿ ಬಳಕೆ"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"ಹೊಸ ಅಧಿಸೂಚನೆಗಳು"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"ಯಾವಾಗ ತೋರಿಸಬೇಕು"</string>
     <string name="doze_title" msgid="2375510714460456687">"ಹೊಸ ಅಧಿಸೂಚನೆಗಳು"</string>
     <string name="doze_summary" msgid="3846219936142814032">"ಅಧಿಸೂಚನೆಗಳನ್ನು ನೀವು ಸ್ವೀಕರಿಸಿದಾಗ ಪರದೆಯನ್ನು ಎಚ್ಚರಗೊಳಿಸಿ"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"ಯಾವಾಗಲೂ ಆನ್"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"ಸಮಯ, ಅಧಿಸೂಚನೆ ಐಕಾನ್‌ಗಳು ಮತ್ತು ಇತರ ಮಾಹಿತಿಯನ್ನು ತೋರಿಸಿ. ಅಧಿಕ ಬ್ಯಾಟರಿ ಬಳಕೆ."</string>
     <string name="title_font_size" msgid="4405544325522105222">"ಫಾಂಟ್ ಗಾತ್ರ"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"ಪಠ್ಯವನ್ನು ಸಣ್ಣದು ಅಥವಾ ದೊಡ್ಡದು ಮಾಡಿ"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"ಸಿಮ್‌ ಕಾರ್ಡ್ ಲಾಕ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"ಗೆಸ್ಚರ್‌ಗಳು"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"ಪಾವತಿಸಿ, ಟ್ಯಾಪ್ ಮಾಡಿ, ಪಾವತಿಗಳು"</string>
     <string name="keywords_backup" msgid="470070289135403022">"ಬ್ಯಾಕಪ್, ಬ್ಯಾಕ್ ಅಪ್"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"ಗೆಸ್ಚರ್"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ವೈ-ಫೈ NFC ಟ್ಯಾಗ್‌ ಹೊಂದಿಸಿ"</string>
     <string name="write_tag" msgid="8571858602896222537">"ಬರೆಯಿರಿ"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"ಬರೆಯಲು ಟ್ಯಾಗ್‌ ಅನ್ನು ಟ್ಯಾಪ್‌ ಮಾಡಿ..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"ಅಲಾರಮ್‌ಗಳು ಮಾತ್ರ"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ಸಂಪೂರ್ಣ ನಿಶ್ಯಬ್ಧ"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ದೃಶ್ಯ ಅಡಚಣೆಗಳನ್ನು ನಿರ್ಬಂಧಿಸಿ"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"ನಕ್ಷತ್ರ ಹಾಕಲಾದ ಸಂಪರ್ಕಗಳಿಂದ ಮಾತ್ರ"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ಯಾವುದೂ ಇಲ್ಲ"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"ಅಲಾರಮ್‌ಗಳು"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"ಜ್ಞಾಪನೆಗಳು"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ಈವೆಂಟ್‌ಗಳು"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"ಎಲ್ಲ ಕರೆದಾರರು"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 7fee236..f5b8e2f 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"알람만"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"모두 차단"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"시각적 방해 차단"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"별표 표시한 연락처만"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"없음"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"알람"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"알림"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"이벤트"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"모든 발신자"</string>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index 7079998..6a0d47b 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -340,8 +340,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Каттоо эсептери"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Жайгашкан жер"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Каттоо эсептери"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Коопсуздук жана жайгашкан жер"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Шифрлөө жана эсептик дайындар"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Телефон шифрленген"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"Түзмөк шифрленген"</string>
@@ -2846,7 +2845,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Ойготкучтар гана"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Тымтырс"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Визуалдык эскертмелерди бөгөттөө"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3007,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Жылдызчаланган байланыштардан гана"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Эч бир"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Ойготкучтар"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Эстеткичтер"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Окуялар"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Бардык чалуучулар"</string>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index 33b710a..3d8b6a2 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -1061,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"ປັບຄວາມແຈ້ງອັດຕະໂນມັດ"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"ຍົກ​ເພື່ອ​ເປີດ​ໜ້າ​ຈໍ"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"ການສະແດງຜົນສະພາບແວດລ້ອມ"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"ເປີດຕະຫຼອດເວລາ / ໃຊ້ແບັດເຕີຣີຫຼາຍຂຶ້ນ"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"ການແຈ້ງເຕືອນໃໝ່"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"ສະແດງຕອນໃດ"</string>
     <string name="doze_title" msgid="2375510714460456687">"ການແຈ້ງເຕືອນໃໝ່"</string>
     <string name="doze_summary" msgid="3846219936142814032">"ເປີດໜ້າຈໍເມື່ອທ່ານໄດ້ຮັບການແຈ້ງເຕືອນ"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"ເປີດຕະຫຼອດ"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"ສະແດງເວລາ, ໄອຄອນການແຈ້ງເຕືອນ ແລະ ຂໍ້ມູນອື່ນໆ. ເພີ່ມການໃຊ້ແບັດເຕີຣີ."</string>
     <string name="title_font_size" msgid="4405544325522105222">"ຂະໜາດຕົວອັກສອນ"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"ເຮັດໃຫ້ຂໍ້ຄວາມໃຫຍ່ຂຶ້ນ ຫຼື ນ້ອຍລົງ"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"ການຕັ້ງຄ່າການລັອກ SIM card"</string>
@@ -2792,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"ທ່າທາງ"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"pay, tap, payments"</string>
     <string name="keywords_backup" msgid="470070289135403022">"ສຳຮອງຂໍ້ມູນ, ສຳຮອງ ຂໍ້ມູນ"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"ທ່າທາງ"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ຕັ້ງ​ຄ່າ​ແທັກ Wi-Fi NFC"</string>
     <string name="write_tag" msgid="8571858602896222537">"ຂຽນ"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"​ແ​ຕະ​ທີ່​ແທັກ​ເພື່ອ​ຂຽນ..."</string>
@@ -2845,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"ໂມງ​ປຸກ​ເທົ່າ​ນັ້ນ"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ຄວາມງຽບ​ທັງ​ໝົດ"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ບລັອກການລົບກວນທາງພາບ"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3006,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"ຈາກ​ລາຍ​ຊື່​ຕິດ​ຕໍ່​ໃສ່​ດາວ​ໄວ້​ເທົ່າ​ນັ້ນ"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ບໍ່ມີ"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"ໂມງປຸກ"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"ການແຈ້ງເຕືອນ"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ກິດຈະກຳ"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"ຜູ້​ໂທທັງ​ໝົດ"</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 5f2a95e..6840aad 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -1085,15 +1085,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Automatinis šviesumas"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Pakelti ir pažadinti"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Adaptyvusis vaizdas"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Visada įjungta / eikvojama daugiau akum. energijos"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Nauji pranešimai"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Kada rodyti"</string>
     <string name="doze_title" msgid="2375510714460456687">"Nauji pranešimai"</string>
     <string name="doze_summary" msgid="3846219936142814032">"Pažadinti ekraną, kai gaunamas pranešimas"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Visada įjungta"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Rodomas laikas, pranešimų piktogramos ir kita informacija. Eikvojama daugiau akumuliatoriaus energijos."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Šrifto dydis"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Padidinkite arba sumažinkite tekstą"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"SIM kortelės užrakto nustatymai"</string>
@@ -2846,8 +2844,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"gestai"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"mokėti, paliesti, mokėjimai"</string>
     <string name="keywords_backup" msgid="470070289135403022">"atsarginė kopija, kurti atsarginę kopiją"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"gestas"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Nustatyti „Wi-Fi“ ALR žymą"</string>
     <string name="write_tag" msgid="8571858602896222537">"Rašyti"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Palieskite žymą, kad galėtumėte rašyti..."</string>
@@ -2901,7 +2898,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Tik įspėjimai"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Visiška tyla"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokuoti vaizdinius trikdžius"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Darbo profilio garsai"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Naudoti asmen. profilio garsus"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Darbo ir asmeniniame profiliuose nustatyti tokius pat garsus"</string>
@@ -3068,6 +3066,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Tik iš žvaigždutėmis pažymėtų kontaktų"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Nėra"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Signalai"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Priminimai"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Įvykiai"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Visi skambintojai"</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index cb2e2ee..e878383 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -2870,7 +2870,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Tikai signāli"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Pilnīgs klusums"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloķēt vizuālos traucējumus"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Darba profila signāli"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Personiskā profila signāli"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Darba profila signāli ir tādi paši kā personiskā profila signāli."</string>
@@ -3034,6 +3035,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Tikai no kontaktpersonām ar zvaigznīti"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Nav"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Signāli"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Atgādinājumi"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Notikumi"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Visi zvanītāji"</string>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index cda0363..a4dabc3 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Сметки"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Локација"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Сметки"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Безбедност и локација"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Шифрирање и акредитиви"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Телефонот е шифриран"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"Уредот е шифриран"</string>
@@ -2843,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Само аларми"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Целосна тишина"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блокирајте визуелни нарушувања"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3004,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Само од контактите со ѕвезда"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Никој"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Аларми"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Потсетници"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Настани"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Сите повикувачи"</string>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index 7f527b7..2b76651 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"അക്കൗണ്ടുകൾ"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"ലൊക്കേഷൻ"</string>
     <string name="account_settings_title" msgid="626177544686329806">"അക്കൗണ്ടുകൾ"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"സുരക്ഷയും ലൊക്കേഷനും"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"എൻക്രിപ്‌ഷനും ക്രെഡന്‍ഷ്യലുകളും"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"ഫോൺ എൻക്രിപ്‌റ്റ് ചെയ്‌തു"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"ഉപകരണം എൻക്രിപ്റ്റ് ചെയ്തു"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"യാന്ത്രിക തെളിച്ചം"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"സജീവമാക്കാൻ ലിഫ്റ്റുചെയ്യുക"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"അറിയിപ്പിനു സ്ക്രീൻ ഓണാക്കുക"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"എപ്പോഴും ഓണാണ് / ഉയർന്ന ബാറ്ററി ഉപയോഗം"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"പുതിയ അറിയിപ്പുകൾ"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"കാണിക്കേണ്ട സമയം"</string>
     <string name="doze_title" msgid="2375510714460456687">"പുതിയ അറിയിപ്പുകൾ"</string>
     <string name="doze_summary" msgid="3846219936142814032">"നിങ്ങൾക്ക് അറിയിപ്പുകൾ ലഭിക്കുന്ന സമയത്ത് സ്ക്രീൻ സജീവമാക്കുക"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"എല്ലായ്‌പ്പോഴും ഓണാണ്"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"സമയം, അറിയിപ്പ് ഐക്കണുകൾ എന്നിവയും മറ്റ് വിവരങ്ങളും കാണിക്കുക. ഉയർന്ന ബാറ്ററി ഉപയോഗം."</string>
     <string name="title_font_size" msgid="4405544325522105222">"ഫോണ്ട് വലുപ്പം"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"ടെക്സ്റ്റ് ചെറുതോ വലുതോ ആക്കുക"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"സിം കാർഡ് ലോക്ക് ക്രമീകരണങ്ങൾ"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"ജെസ്‌റ്ററുകൾ"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"പണമടയ്ക്കുക. ടാപ്പുചെയ്യുക, പേയ്‌മെന്റുകൾ"</string>
     <string name="keywords_backup" msgid="470070289135403022">"ബാക്കപ്പ് ചെയ്യൂ"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"ജെസ്‌റ്റർ"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"വൈഫൈ NFC ടാഗ് സജ്ജമാക്കുക"</string>
     <string name="write_tag" msgid="8571858602896222537">"റൈറ്റുചെയ്യുക"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"റൈറ്റുചെയ്യാൻ ഒരു ടാഗ് ടാപ്പുചെയ്യുക..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"അലാറങ്ങൾ മാത്രം"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"പൂർണ്ണ നിശബ്‌ദത"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ദൃശ്യതടസങ്ങൾ ബ്ലോക്കുചെയ്യൂ"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"നക്ഷത്രമിട്ട കോൺടാക്‌റ്റിൽ നിന്നുമാത്രം"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ആരിൽ നിന്നും വേണ്ട"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"അലാറങ്ങൾ"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"റിമൈൻഡറുകൾ"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ഇവന്റുകൾ"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"കോൾ ചെയ്യുന്ന എല്ലാവരും"</string>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 1b865d1..710af86 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Зөвхөн сэрүүлэг"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Дуугүй болгох"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Харааны саадыг блоклох"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3001,6 +3002,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Зөвхөн одтой харилцагчаас"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Байхгүй"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Сэрүүлэг"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Сануулагч"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Үйл явдал"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Бүх дуудлага"</string>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index 01d191a..1265c3c 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"खाती"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"स्थान"</string>
     <string name="account_settings_title" msgid="626177544686329806">"खाती"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"सुरक्षितता आणि स्थान"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"कूटबद्धीकरण आणि क्रेडेन्शियल"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"फोन कूटबद्ध केला"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"डिव्‍हाइस एन्क्रिप्‍ट केले"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"स्वयंचलित चकाकी"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"सक्रिय करण्‍यासाठी लिफ्‍ट"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"अँबियन्ट डिसप्ले"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"नेहमी चालू / बॅटरीचा वाढलेला वापर"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"नवीन सूचना"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"कधी दाखवायचे"</string>
     <string name="doze_title" msgid="2375510714460456687">"नवीन सूचना"</string>
     <string name="doze_summary" msgid="3846219936142814032">"सूचना प्राप्त केल्यावर स्क्रीन सक्रिय करा"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"नेहमी चालू"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"वेळ, सूचना आयकॉन आणि इतर माहिती दाखवा. बॅटरीचा वाढलेला वापर."</string>
     <string name="title_font_size" msgid="4405544325522105222">"फॉन्ट आकार"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"मजकूर आणखी मोठा किंवा आणखी लहान करा"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"सिम कार्ड लॉक सेटिंग्ज"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"जेश्चर"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"देय द्या, टॅप करा, पेमेंट"</string>
     <string name="keywords_backup" msgid="470070289135403022">"बॅकअप, बॅक अप"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"जेश्चर"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"वाय-फाय NFC टॅग सेट अप"</string>
     <string name="write_tag" msgid="8571858602896222537">"लिहा"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"लिहिण्यासाठी एक टॅग टॅप करा..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"केवळ अलार्म"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"संपूर्ण शांतता"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"दृश्यमान व्यत्यय अवरोधित करा"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"केवळ तारांकित संपर्कांकडून"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"काहीही नाही"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"अलार्म"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"स्मरणपत्रे"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"इव्हेंट"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"सर्व कॉलकर्ता"</string>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index c5b96c4..813e6f3 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Penggera sahaja"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Senyap sepenuhnya"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Sekat gangguan visual"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Bunyi profil kerja"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Gunakan bunyi profil peribadi"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Bunyi yang digunakan sama untuk profil kerja dan peribadi"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Daripada kenalan dibintangkan sahaja"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Tiada"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Penggera"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Peringatan"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Acara"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Semua pemanggil"</string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 58e2280..47bc950 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"အကောင့်များ"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"တည်နေရာ"</string>
     <string name="account_settings_title" msgid="626177544686329806">"အကောင့်များ"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"လုံခြုံရေးနှင့် တည်နေရာ"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"အသွင်ဝှက်ခြင်းနှင့် အထောက်အထားများ"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"ဖုန်းကို အသွင်ဝှက်ထားသည်"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"စက်ပစ္စည်းကို အသွင်ဝှက်ထားသည်"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"အလိုအလျောက်အလင်းချိန်ခြင်း။"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"နှိုးပေးဖို့ မ’ယူရန်"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"ဝန်းကျင်ပြသမှု"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"အမြဲဖွင့်ထားရန် / ဘက်ထရီအသုံးပြုမှု တိုးလာသည်"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"အကြောင်းကြားချက်အသစ်များ"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"ပြသရမည့်အချိန်"</string>
     <string name="doze_title" msgid="2375510714460456687">"အကြောင်းကြားချက်အသစ်များ"</string>
     <string name="doze_summary" msgid="3846219936142814032">"အကြောင်းကြားချက်များ သင်လက်ခံရရှိချိန်တွင် ဖန်သားပြင်ကို ဖွင့်ခိုင်းပါ"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"အမြဲတမ်း ဖွင့်ထားရန်"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"အချိန်၊ အကြောင်းကြားချက်သင်္ကေတများနှင့် အခြားအချက်အလက်များကို ပြသပါ။ ဘက်ထရီအသုံးပြုမှု တိုးလာသည်။"</string>
     <string name="title_font_size" msgid="4405544325522105222">"စာလုံးအရွယ်အစား"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"စာလုံးကို ပိုကြီးအောင် သို့မဟုတ် ပိုသေးအောင်ပြုလုပ်ပါ"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"ဆင်းမ်ကဒ် လော့ခ်ဆက်တင်များ"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"ဟန်များ"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"ပေးချေမှု၊ တို့ခြင်း၊ ငွေပေးချေခြင်းများ"</string>
     <string name="keywords_backup" msgid="470070289135403022">"မိတ္တူ၊ မိတ္တူကူးပါ"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"ဟန်"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ကြိုးမဲ့ NFC တဲဂ်ကို စဖွင့်သတ်မှတ်ရန်"</string>
     <string name="write_tag" msgid="8571858602896222537">"ရေးရန်"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"ရေးရန် တဲဂ် တစ်ခုကို ပုပ်ပါ..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"နှိုးစက်များသာ"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"လုံးဝ တိတ်ဆိတ်ခြင်း"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"မြင်ကွင်းပိတ်ခြင်းမှတားဆီးပါ"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"ကြယ်ပွင့်ပြ အဆက်အသွယ်များဆီမှသာ"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"မရှိ"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"နှိုးစက်များ"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"သတိပေးချက်များ"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"အစီအစဉ်များ"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"ခေါ်ဆိုသူ အားလုံး"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 37f567b..c498275 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -1061,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Automatisk lysstyrke"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Aktiver enheten med løftebevegelser"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Passiv skjerm"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Alltid på / økt batteribruk"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Nye varsler"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Når det skal vises"</string>
     <string name="doze_title" msgid="2375510714460456687">"Nye varsler"</string>
     <string name="doze_summary" msgid="3846219936142814032">"Skjermen slås på når du mottar varsler"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Alltid på"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Vis klokkeslett, varselikoner og annen informasjon. Økt batteribruk."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Skriftstørrelse"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Gjør teksten større eller mindre"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"Innstillinger for SIM-kort-lås"</string>
@@ -2792,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"bevegelser"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"betal, trykk på, betalinger"</string>
     <string name="keywords_backup" msgid="470070289135403022">"sikkerhetskopi, sikkerhetskopiér"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"bevegelse"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Konfigurer NFC-tag for Wi-Fi"</string>
     <string name="write_tag" msgid="8571858602896222537">"Skriv"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Trykk på en brikke for å skrive"</string>
@@ -2845,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Bare alarmer"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total stillhet"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokkér visuelle forstyrrelser"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Lyder i jobbprofilen"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Bruk personlig profil-lyder"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Lydene er like for jobbprofilen og den personlige profilen"</string>
@@ -3006,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Bare fra stjernemerkede kontakter"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ingen"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmer"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Påminnelser"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Hendelser"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Alle oppringere"</string>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index 64ab494..9c0e929 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -1061,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"स्वचालित उज्यालोपना"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"चालु गर्न उठाउनुहोस्"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"एम्बियन्ट प्रदर्शन"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"सधैँ सक्रिय / ब्याट्रीको बढेको उपयोग"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"नयाँ सूचनाहरू"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"देखाउने समय"</string>
     <string name="doze_title" msgid="2375510714460456687">"नयाँ सूचनाहरू"</string>
     <string name="doze_summary" msgid="3846219936142814032">"सूचनाहरू प्राप्त हुँदा स्क्रिनलाई सक्रिय गर्नुहोस्"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"सधैँ सक्रिय"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"समय, सूचनाका आइकनहरू र अन्य जानकारी देखाउनुहोस्। ब्याट्रीको बढेको उपयोग।"</string>
     <string name="title_font_size" msgid="4405544325522105222">"फन्ट आकार"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"पाठ सन्देश अझ ठूलो वा सानो पार्नुहोस्"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"SIM कार्ड लक सेटिङहरू"</string>
@@ -2792,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"इसाराहरू"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"भुक्तानी गर्नुहोस्, ट्याप गर्नुहोस्, भुक्तानी"</string>
     <string name="keywords_backup" msgid="470070289135403022">"ब्याकअप, ब्याकअप गर्नुहोस्"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"इसारा"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC ट्याग सेट गर्नुहोस्"</string>
     <string name="write_tag" msgid="8571858602896222537">"लेख्नुहोस्"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"लेख्न ट्याग छुनुहोस्..."</string>
@@ -2845,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"अलार्महरू मात्र"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"पूरै शान्त"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"दृश्य सम्बन्धी बाधालाई रोक्नु"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3006,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"ताराङ्कित सम्पर्कहरूबाट मात्र"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"कुनै पनि होइन"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"अलार्महरू"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"रिमान्डरहरू"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"घटनाहरू"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"सबै कल गर्ने व्यक्तिहरू"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 771e78a..4796803 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alleen alarmen"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Totale stilte"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokkeer visuele onderbreking"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Geluiden voor werkprofiel"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Gebruik geluid persoonsprofiel"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Geluiden voor werkprofielen en persoonlijke profielen komen overeen"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Alleen van contacten met ster"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Geen"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmen"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Herinneringen"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Evenementen"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Alle bellers"</string>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index fc70bb8..e26ebb2 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"ਖਾਤੇ"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"ਟਿਕਾਣਾ"</string>
     <string name="account_settings_title" msgid="626177544686329806">"ਖਾਤੇ"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"ਸੁਰੱਖਿਆ ਅਤੇ ਟਿਕਾਣਾ"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"ਇਨਕ੍ਰਿਪਸ਼ਨ ਅਤੇ ਕ੍ਰੀਡੈਂਸ਼ੀਅਲ"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"ਫ਼ੋਨ ਇਨਕ੍ਰਿਪਟ ਕੀਤਾ ਗਿਆ"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"ਡੀਵਾਈਸ ਇਨਕ੍ਰਿਪਟ ਕੀਤੀ ਗਈ"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"ਸਵੈਚਲਿਤ ਚਮਕ"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"ਸਕਿਰਿਆ ਕਰਨ ਲਈ ਚੁੱਕੋ"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"ਤੱਕਣੀਯੋਗ ਡਿਸਪਲੇ"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"ਹਮੇਸ਼ਾ ਚਾਲੂ / ਬੈਟਰੀ ਵਰਤੋਂ ਵਧ ਜਾਵੇਗੀ"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"ਨਵੀਆਂ ਸੁਚਨਾਵਾਂ"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"ਦਿਖਾਉਣ ਦਾ ਸਮਾਂ"</string>
     <string name="doze_title" msgid="2375510714460456687">"ਨਵੀਆਂ ਸੁਚਨਾਵਾਂ"</string>
     <string name="doze_summary" msgid="3846219936142814032">"ਜਦ ਤੁਹਾਨੂੰ ਸੂਚਨਾਵਾਂ ਪ੍ਰਾਪਤ ਹੋਣ ਤਾਂ ਸਕ੍ਰੀਨ ਨੂੰ ਸਜੀਵ ਕਰੋ"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"ਹਮੇਸ਼ਾ ਚਾਲੂ"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"ਸਮਾਂ, ਸੂਚਨਾ ਪ੍ਰਤੀਕ, ਅਤੇ ਹੋਰ ਜਾਣਕਾਰੀ ਦਿਖਾਓ। ਬੈਟਰੀ ਵਰਤੋਂ ਵਧ ਜਾਵੇਗੀ।"</string>
     <string name="title_font_size" msgid="4405544325522105222">"ਫੌਂਟ ਦਾ ਆਕਾਰ"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"ਲਿਖਤ ਨੂੰ ਵੱਡਾ ਜਾਂ ਛੋਟਾ ਕਰੋ"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"SIM ਕਾਰਡ ਲੌਕ ਸੈਟਿੰਗਾਂ"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"ਸੰਕੇਤ"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"ਭੁਗਤਾਨ ਕਰੋ, ਟੈਪ ਕਰੋ, ਭੁਗਤਾਨ"</string>
     <string name="keywords_backup" msgid="470070289135403022">"ਬੈਕਅੱਪ, ਬੈਕ ਅੱਪ"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"ਸੰਕੇਤ"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC ਟੈਗ ਸੈਟ ਅਪ ਕਰੋ"</string>
     <string name="write_tag" msgid="8571858602896222537">"ਲਿਖੋ"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"ਲਿਖਣ ਲਈ ਇੱਕ ਟੈਗ ਟੈਪ ਕਰੋ..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"ਕੇਵਲ ਅਲਾਰਮ"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ਸੰਪੂਰਨ ਖਾਮੋਸ਼ੀ"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ਦ੍ਰਿਸ਼ਟੀਗਤ ਗੜਬੜੀਆਂ ਬਲੌਕ ਕਰੋ"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"ਸਿਰਫ਼ ਸਿਤਾਰੇ ਵਾਲੇ ਸੰਪਰਕਾਂ ਤੋਂ"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ਕੋਈ ਨਹੀਂ"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"ਅਲਾਰਮ"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"ਯਾਦ-ਦਹਾਨੀਆਂ"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ਵਰਤਾਰੇ"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"ਸਾਰੇ ਕਾਲਰ"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 2fcf14a..17f748b 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -2900,7 +2900,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Tylko alarmy"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Całkowita cisza"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokuj wyświetlanie"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Dźwięki w profilu do pracy"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Użyj dźwięków z profilu osobistego"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Dźwięki są takie same w profilu osobistym i do pracy"</string>
@@ -3067,6 +3068,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Tylko od kontaktów z gwiazdką"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Żadne"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmy"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Przypomnienia"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Wydarzenia"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Wszyscy rozmówcy"</string>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index c23b26b..37c79f7 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -1061,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Brilho automático"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Levantar para ativar"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Exibição de ambiente"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Sempre ativado / Aumento do uso da bateria"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Novas notificações"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Quando mostrar"</string>
     <string name="doze_title" msgid="2375510714460456687">"Novas notificações"</string>
     <string name="doze_summary" msgid="3846219936142814032">"Ativar a tela ao receber notificações"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Sempre ativado"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Mostrar horário, ícones de notificação e outras informações. Aumento do uso da bateria."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Tamanho da fonte"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Tornar o texto maior ou menor"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"Bloqueio do SIM"</string>
@@ -2792,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"gestos"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"pagar, tocar, pagamentos"</string>
     <string name="keywords_backup" msgid="470070289135403022">"backup, back up"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"gesto"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Configurar etiqueta NFC Wi-Fi"</string>
     <string name="write_tag" msgid="8571858602896222537">"Gravar"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Toque em uma marca para gravar…"</string>
@@ -2845,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Somente alarmes"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silêncio total"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear perturbações visuais"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sons do perfil de trabalho"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usar sons do perfil pessoal"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Os sons são os mesmos para os perfis pessoal e de trabalho"</string>
@@ -3006,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Apenas de contatos marcados com estrela"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Nenhuma"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmes"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Lembretes"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Eventos"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Todos os autores de chamadas"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 6d9e723..90baf20 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -25,7 +25,7 @@
     <string name="dlg_switch" msgid="6243971420240639064">"Alternar"</string>
     <string name="device_info_default" msgid="7847265875578739287">"Desconhecido"</string>
     <plurals name="show_dev_countdown" formatted="false" msgid="7201398282729229649">
-      <item quantity="one">You are now <xliff:g id="STEP_COUNT_1">%1$d</xliff:g> steps away from being a developer.</item>
+      <item quantity="one">Está agora a <xliff:g id="STEP_COUNT_1">%1$d</xliff:g> passo de se tornar um programador.</item>
       <item quantity="other">Está agora a <xliff:g id="STEP_COUNT_1">%1$d</xliff:g> passos de se tornar um programador.</item>
     </plurals>
     <string name="show_dev_on" msgid="1110711554982716293">"Agora é um programador!"</string>
@@ -254,7 +254,7 @@
     <string name="locale_remove_menu" msgid="7651301406723638854">"Remover"</string>
     <string name="add_a_language" msgid="2330538812283783022">"Adicionar um idioma"</string>
     <plurals name="dlg_remove_locales_title" formatted="false" msgid="4276642359346122396">
-      <item quantity="one">Remove selected languages?</item>
+      <item quantity="one">Pretende remover o idioma selecionado?</item>
       <item quantity="other">Pretende remover os idiomas selecionados?</item>
     </plurals>
     <string name="dlg_remove_locales_message" msgid="1361354927342876114">"O texto será apresentado noutro idioma."</string>
@@ -359,7 +359,7 @@
     <string name="fingerprint_add_title" msgid="1926752654454033904">"Adicionar impressão digital"</string>
     <string name="fingerprint_enable_keyguard_toggle_title" msgid="5078060939636911795">"bloqueio de ecrã"</string>
     <plurals name="security_settings_fingerprint_preference_summary" formatted="false" msgid="624961700033979880">
-      <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> fingerprints set up</item>
+      <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> impressão digital configurada</item>
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> impressões digitais configuradas</item>
     </plurals>
     <string name="security_settings_fingerprint_preference_summary_none" msgid="1507739327565151923"></string>
@@ -559,27 +559,27 @@
     <string name="lockpassword_password_requires_digit" msgid="5140062925787058765">"Tem de incluir, pelo menos, um dígito"</string>
     <string name="lockpassword_password_requires_symbol" msgid="5944350865681510893">"Tem de incluir, pelo menos, um símbolo"</string>
     <plurals name="lockpassword_password_requires_letters" formatted="false" msgid="9013132344745898400">
-      <item quantity="one">Must contain at least <xliff:g id="COUNT">%d</xliff:g> letters</item>
+      <item quantity="one">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> letra</item>
       <item quantity="other">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> letras</item>
     </plurals>
     <plurals name="lockpassword_password_requires_lowercase" formatted="false" msgid="2626327674921055486">
-      <item quantity="one">Must contain at least <xliff:g id="COUNT">%d</xliff:g> lowercase letters</item>
+      <item quantity="one">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> letra minúscula</item>
       <item quantity="other">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> letras minúsculas</item>
     </plurals>
     <plurals name="lockpassword_password_requires_uppercase" formatted="false" msgid="7860796359913920356">
-      <item quantity="one">Must contain at least <xliff:g id="COUNT">%d</xliff:g> uppercase letters</item>
+      <item quantity="one">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> letra minúscula</item>
       <item quantity="other">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> letras maiúsculas</item>
     </plurals>
     <plurals name="lockpassword_password_requires_numeric" formatted="false" msgid="1967587658356336828">
-      <item quantity="one">Must contain at least <xliff:g id="COUNT">%d</xliff:g> numerical digits</item>
+      <item quantity="one">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> dígito numérico</item>
       <item quantity="other">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> dígitos numéricos</item>
     </plurals>
     <plurals name="lockpassword_password_requires_symbols" formatted="false" msgid="6751305770863640574">
-      <item quantity="one">Must contain at least <xliff:g id="COUNT">%d</xliff:g> special symbols</item>
+      <item quantity="one">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> símbolo especial</item>
       <item quantity="other">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> símbolos especiais</item>
     </plurals>
     <plurals name="lockpassword_password_requires_nonletter" formatted="false" msgid="4440596998172043055">
-      <item quantity="one">Must contain at least <xliff:g id="COUNT">%d</xliff:g> non-letter characters</item>
+      <item quantity="one">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> caráter que não seja uma letra</item>
       <item quantity="other">Tem de incluir, pelo menos, <xliff:g id="COUNT">%d</xliff:g> carateres que não sejam letras</item>
     </plurals>
     <string name="lockpassword_password_recently_used" msgid="942665351220525547">"O admin. do disp. não permite a utilização de uma palavra-passe recente"</string>
@@ -592,14 +592,14 @@
     <string name="manage_device_admin" msgid="537804979483211453">"Aplicações de administrador do dispositivo"</string>
     <string name="number_of_device_admins_none" msgid="7185056721919496069">"Sem aplicações ativas"</string>
     <plurals name="number_of_device_admins" formatted="false" msgid="3361891840111523393">
-      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> active apps</item>
+      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> aplicação ativa</item>
       <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> aplicações ativas</item>
     </plurals>
     <string name="manage_trust_agents" msgid="4629279457536987768">"Agentes fidedignos"</string>
     <string name="disabled_because_no_backup_security" msgid="6877660253409580377">"Para utilizar, defina primeiro um bloqueio de ecrã"</string>
     <string name="manage_trust_agents_summary" msgid="1475819820389620546">"Nenhum"</string>
     <plurals name="manage_trust_agents_summary_on" formatted="false" msgid="3935182396726101824">
-      <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> active trust agents</item>
+      <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> agente fidedigno ativo</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> agentes fidedignos ativos</item>
     </plurals>
     <string name="bluetooth_quick_toggle_title" msgid="1037056952714061893">"Bluetooth"</string>
@@ -838,7 +838,7 @@
     <string name="wifi_cancel" msgid="6763568902542968964">"Cancelar"</string>
     <string name="wifi_saved_access_points_titlebar" msgid="2996149477240134064">"Redes guardadas"</string>
     <plurals name="wifi_saved_access_points_summary" formatted="false" msgid="6094679048871529675">
-      <item quantity="one">%d networks</item>
+      <item quantity="one">%d rede</item>
       <item quantity="other">%d redes</item>
     </plurals>
     <string name="wifi_advanced_titlebar" msgid="4485841401774142908">"Wi-Fi Avançada"</string>
@@ -1103,7 +1103,7 @@
     <string name="sim_preferred_message" msgid="8466930554330635780">"O <xliff:g id="NEW_SIM">%1$s</xliff:g> é o único cartão SIM no dispositivo. Pretende utilizar este cartão SIM para os dados móveis, as chamadas e as mensagens SMS?"</string>
     <string name="wrong_pin_code_pukked" msgid="4003655226832658066">"Código PIN do cartão SIM incorreto. Tem de contactar o seu operador para desbloquear o dispositivo."</string>
     <plurals name="wrong_pin_code" formatted="false" msgid="1582398808893048097">
-      <item quantity="one">Incorrect SIM PIN code, you have <xliff:g id="NUMBER_1">%d</xliff:g> remaining attempts.</item>
+      <item quantity="one">Código PIN do cartão SIM incorreto. Tem mais <xliff:g id="NUMBER_1">%d</xliff:g> tentativa.</item>
       <item quantity="other">Código PIN do cartão SIM incorreto. Tem mais <xliff:g id="NUMBER_1">%d</xliff:g> tentativas.</item>
     </plurals>
     <string name="pin_failed" msgid="1848423634948587645">"Falha ao introduzir o PIN do cartão SIM!"</string>
@@ -1334,7 +1334,7 @@
     <string name="reset_network_complete_toast" msgid="787829973559541880">"As definições de rede foram repostas"</string>
     <string name="master_clear_title" msgid="5907939616087039756">"Repos. dados/fábrica"</string>
     <plurals name="master_clear_with_account_summary" formatted="false" msgid="5911377203778818712">
-      <item quantity="one"><xliff:g id="ACCOUNT_COUNT">%1$d</xliff:g> accounts will be reset</item>
+      <item quantity="one"><xliff:g id="ACCOUNT_COUNT">%1$d</xliff:g> conta será reposta</item>
       <item quantity="other"><xliff:g id="ACCOUNT_COUNT">%1$d</xliff:g> contas serão repostas</item>
     </plurals>
     <string name="master_clear_summary" msgid="6902443944660426951">"A memória de armazenamento interno e todos os dados serão repostos"</string>
@@ -1550,7 +1550,7 @@
     <string name="clear_cache_btn_text" msgid="5756314834291116325">"Limpar cache"</string>
     <string name="cache_size_label" msgid="7505481393108282913">"Cache"</string>
     <plurals name="uri_permissions_text" formatted="false" msgid="3983110543017963732">
-      <item quantity="one">%d items</item>
+      <item quantity="one">%d item</item>
       <item quantity="other">%d itens</item>
     </plurals>
     <string name="clear_uri_btn_text" msgid="8575655132961012158">"Limpar acesso"</string>
@@ -1849,23 +1849,23 @@
     <string name="enable_quick_setting" msgid="2366999897816894536">"Mostrar nas Definições rápidas"</string>
     <string name="daltonizer_type" msgid="1124178250809091080">"Modo de correção"</string>
     <plurals name="accessibilty_autoclick_preference_subtitle_extremely_short_delay" formatted="false" msgid="7340347830562315800">
-      <item quantity="one">Extremely short delay (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
+      <item quantity="one">Atraso extremamente curto (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
       <item quantity="other">Atraso extremamente curto (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
     </plurals>
     <plurals name="accessibilty_autoclick_preference_subtitle_very_short_delay" formatted="false" msgid="5589565607652364932">
-      <item quantity="one">Very short delay (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
+      <item quantity="one">Atraso muito curto (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
       <item quantity="other">Atraso muito curto (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
     </plurals>
     <plurals name="accessibilty_autoclick_preference_subtitle_short_delay" formatted="false" msgid="5887754135102768400">
-      <item quantity="one">Short delay (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
+      <item quantity="one">Atraso curto (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
       <item quantity="other">Atraso curto (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
     </plurals>
     <plurals name="accessibilty_autoclick_preference_subtitle_long_delay" formatted="false" msgid="6340683412750219405">
-      <item quantity="one">Long delay (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
+      <item quantity="one">Atraso longo (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
       <item quantity="other">Atraso longo (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
     </plurals>
     <plurals name="accessibilty_autoclick_preference_subtitle_very_long_delay" formatted="false" msgid="3503199424330634970">
-      <item quantity="one">Very long delay (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
+      <item quantity="one">Atraso muito longo (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
       <item quantity="other">Atraso muito longo (<xliff:g id="CLICK_DELAY_LABEL_1">%1$d</xliff:g> ms)</item>
     </plurals>
     <string name="accessibility_menu_item_settings" msgid="3344942964710773365">"Configurações"</string>
@@ -1920,11 +1920,11 @@
     <string name="print_settings" msgid="4742428530112487843">"Impressão"</string>
     <string name="print_settings_summary_no_service" msgid="6354322414246865875">"Desativado"</string>
     <plurals name="print_settings_summary" formatted="false" msgid="6005468025646083029">
-      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> print services on</item>
+      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> serviço de impressão ativado</item>
       <item quantity="other"><xliff:g id="COUNT">%1$d</xliff:g> serviços de impressão ativados</item>
     </plurals>
     <plurals name="print_jobs_summary" formatted="false" msgid="5810106725778525400">
-      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> print jobs</item>
+      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> tarefa de impressão</item>
       <item quantity="other"><xliff:g id="COUNT">%1$d</xliff:g> tarefas de impressão</item>
     </plurals>
     <string name="print_settings_title" msgid="3685449667822217816">"Serviços de impressão"</string>
@@ -2537,20 +2537,20 @@
     <string name="ssl_ca_cert_warning" msgid="2045866713601984673">"A rede pode ser monitorizada"</string>
     <string name="done_button" msgid="1991471253042622230">"Concluído"</string>
     <plurals name="ssl_ca_cert_dialog_title" formatted="false" msgid="7145092748045794650">
-      <item quantity="one">Trust or remove certificates</item>
+      <item quantity="one">Confiar ou remover o certificado</item>
       <item quantity="other">Confiar ou remover os certificados</item>
     </plurals>
     <plurals name="ssl_ca_cert_info_message_device_owner" formatted="false" msgid="1489335297837656666">
-      <item quantity="one"><xliff:g id="MANAGING_DOMAIN_1">%s</xliff:g> has installed certificate authorities on your device, which may allow them to monitor your device network activity, including emails, apps, and secure websites.\n\nFor more information about these certificates, contact your admin.</item>
-      <item quantity="other"><xliff:g id="MANAGING_DOMAIN_1">%s</xliff:g> instalou autoridades de certificação no seu dispositivo que podem permitir monitorizar a atividade na rede do dispositivo, incluindo emails, aplicações e Sites seguros.\n\nPara obter mais informações acerca destes certificados, contacte o administrador.</item>
+      <item quantity="one"><xliff:g id="MANAGING_DOMAIN_1">%s</xliff:g> instalou autoridades de certificação no seu dispositivo que podem permitir monitorizar a atividade na rede do dispositivo, incluindo emails, aplicações e Websites seguros.\n\nPara obter mais informações acerca destes certificados, contacte o administrador.</item>
+      <item quantity="other"><xliff:g id="MANAGING_DOMAIN_1">%s</xliff:g> instalou autoridades de certificação no seu dispositivo que podem permitir monitorizar a atividade na rede do dispositivo, incluindo emails, aplicações e Websites seguros.\n\nPara obter mais informações acerca destes certificados, contacte o administrador.</item>
     </plurals>
     <plurals name="ssl_ca_cert_info_message" formatted="false" msgid="30645643499556573">
-      <item quantity="one"><xliff:g id="MANAGING_DOMAIN_1">%s</xliff:g> has installed certificate authorities for your work profile, which may allow them to monitor work network activity, including emails, apps, and secure websites.\n\nFor more information about these certificates, contact your admin.</item>
-      <item quantity="other"><xliff:g id="MANAGING_DOMAIN_1">%s</xliff:g> instalou autoridades de certificação para o seu perfil de trabalho que podem permitir monitorizar a atividade na rede de trabalho, incluindo emails, aplicações e Sites seguros.\n\nPara obter mais informações acerca destes certificados, contacte o administrador.</item>
+      <item quantity="one"><xliff:g id="MANAGING_DOMAIN_1">%s</xliff:g> instalou autoridades de certificação para o seu perfil de trabalho que podem permitir monitorizar a atividade na rede de trabalho, incluindo emails, aplicações e Websites seguros.\n\nPara obter mais informações acerca destes certificados, contacte o administrador.</item>
+      <item quantity="other"><xliff:g id="MANAGING_DOMAIN_1">%s</xliff:g> instalou autoridades de certificação para o seu perfil de trabalho que podem permitir monitorizar a atividade na rede de trabalho, incluindo emails, aplicações e Websites seguros.\n\nPara obter mais informações acerca destes certificados, contacte o administrador.</item>
     </plurals>
     <string name="ssl_ca_cert_warning_message" msgid="8216218659139190498">"A sua atividade de rede, incluindo emails, aplicações e Sites seguros, pode ser monitorizada por terceiros.\n\nIsto é possível através de uma credencial fidedigna instalada no seu dispositivo."</string>
     <plurals name="ssl_ca_cert_settings_button" formatted="false" msgid="2426799352517325228">
-      <item quantity="one">Check certificates</item>
+      <item quantity="one">Verificar certificado</item>
       <item quantity="other">Verificar certificados</item>
     </plurals>
     <string name="user_settings_title" msgid="6151874007858148344">"Utilizadores"</string>
@@ -2728,7 +2728,7 @@
     <string name="sim_selection_required_pref" msgid="3446721423206414652">"A seleção é necessária"</string>
     <string name="dashboard_title" msgid="5453710313046681820">"Definições"</string>
     <plurals name="settings_suggestion_header_summary_hidden_items" formatted="false" msgid="5597356221942118048">
-      <item quantity="one">Show %d hidden items</item>
+      <item quantity="one">Mostrar %d item oculto</item>
       <item quantity="other">Mostrar %d itens ocultos</item>
     </plurals>
     <string name="network_dashboard_title" msgid="4771589228992391573">"Rede e Internet"</string>
@@ -2830,7 +2830,7 @@
     <string name="boot_sounds_title" msgid="567029107382343709">"Ativar sons"</string>
     <string name="zen_mode_settings_summary_off" msgid="1857165567766351925">"Nenhuma regra automática ativada"</string>
     <plurals name="zen_mode_settings_summary_on" formatted="false" msgid="1216562765753405784">
-      <item quantity="one"><xliff:g id="ON_COUNT">%d</xliff:g> automatic rules turned on</item>
+      <item quantity="one"><xliff:g id="ON_COUNT">%d</xliff:g> regra automática ativada</item>
       <item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> regras automáticas ativadas</item>
     </plurals>
     <string name="zen_mode_settings_title" msgid="842308776768942600">"Preferências de Não incomodar"</string>
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Apenas alarmes"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silêncio total"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear perturbações visuais"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sons do perfil de trabalho"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Util. sons do perfil pessoal"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Os sons são iguais para os perfis de trabalho e pessoal"</string>
@@ -2898,8 +2899,8 @@
     <string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"O acesso às notificações do perfil de trabalho está bloqueado"</string>
     <string name="manage_notification_access_summary_zero" msgid="2409912785614953348">"As aplicações não podem ler notificações"</string>
     <plurals name="manage_notification_access_summary_nonzero" formatted="false" msgid="7930130030691218387">
-      <item quantity="one">%d apps can read notifications</item>
-      <item quantity="other">%d aplicações conseguem ler notificações</item>
+      <item quantity="one">%d aplicação pode ler notificações</item>
+      <item quantity="other">%d aplicações podem ler notificações</item>
     </plurals>
     <string name="no_notification_listeners" msgid="3487091564454192821">"Nenhuma aplicação instalada solicitou acesso a notificações"</string>
     <string name="notification_listener_security_warning_title" msgid="5522924135145843279">"Pretende permitir o acesso a notificações de <xliff:g id="SERVICE">%1$s</xliff:g>?"</string>
@@ -2931,11 +2932,11 @@
     <string name="app_settings_link" msgid="8894946007543660906">"Definições adicionais na aplicação"</string>
     <string name="app_notification_listing_summary_zero" msgid="6482582965081108108">"Ativadas para todas as aplicações"</string>
     <plurals name="app_notification_listing_summary_others" formatted="false" msgid="5668835155965827890">
-      <item quantity="one">Turned off for <xliff:g id="COUNT_1">%d</xliff:g> apps</item>
+      <item quantity="one">Desativado para <xliff:g id="COUNT_1">%d</xliff:g> aplicação</item>
       <item quantity="other">Desativado para <xliff:g id="COUNT_1">%d</xliff:g> aplicações</item>
     </plurals>
     <plurals name="deleted_channels" formatted="false" msgid="8028574302599397935">
-      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> categories deleted</item>
+      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> categoria eliminada</item>
       <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> categorias eliminadas</item>
     </plurals>
     <string name="notification_toggle_on" msgid="650145396718191048">"Ativadas"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Apenas de contactos com estrela"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Nenhuma"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmes"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Lembretes"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Eventos"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Todos os autores de chamadas"</string>
@@ -3018,12 +3021,12 @@
     <string name="zen_mode_end_time_next_day_summary_format" msgid="4201521691238728701">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> do dia seguinte"</string>
     <string name="zen_mode_summary_alarms_only_indefinite" msgid="2061973221027570123">"Alterar para alarmes apenas, indefinidamente"</string>
     <plurals name="zen_mode_summary_alarms_only_by_minute" formatted="false" msgid="6122003583875424601">
-      <item quantity="one">Change to alarms only for <xliff:g id="DURATION">%1$d</xliff:g> minutes (until <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
-      <item quantity="other">Alterar para alarmes apenas durante <xliff:g id="DURATION">%1$d</xliff:g> minutos, até às <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g></item>
+      <item quantity="one">Alterar para alarmes apenas durante <xliff:g id="DURATION">%1$d</xliff:g> minuto (até à(s) <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
+      <item quantity="other">Alterar para alarmes apenas durante <xliff:g id="DURATION">%1$d</xliff:g> minutos (até à(s) <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
     </plurals>
     <plurals name="zen_mode_summary_alarms_only_by_hour" formatted="false" msgid="2407703455581767748">
-      <item quantity="one">Change to alarms only for <xliff:g id="DURATION">%1$d</xliff:g> hours until <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g></item>
-      <item quantity="other">Alterar para alarmes apenas durante <xliff:g id="DURATION">%1$d</xliff:g> horas até às <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g></item>
+      <item quantity="one">Alterar para alarmes apenas durante <xliff:g id="DURATION">%1$d</xliff:g> hora até à(s) <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g></item>
+      <item quantity="other">Alterar para alarmes apenas durante <xliff:g id="DURATION">%1$d</xliff:g> horas até à(s) <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g></item>
     </plurals>
     <string name="zen_mode_summary_alarms_only_by_time" msgid="7465525754879341907">"Alterar para alarmes apenas, até <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
     <string name="zen_mode_summary_always" msgid="6172985102689237703">"Alterar para interromper sempre"</string>
@@ -3096,15 +3099,15 @@
     <string name="notification_summary_level" msgid="2726571692704140826">"Nível %d"</string>
     <string name="notification_summary_channel" msgid="5831124672372023524">"<xliff:g id="CHANNEL_NAME">%1$s</xliff:g> • <xliff:g id="GROUP_NAME">%2$s</xliff:g>"</string>
     <plurals name="permissions_summary" formatted="false" msgid="6402730318075959117">
-      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> permissions granted</item>
+      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> autorização concedida</item>
       <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> autorizações concedidas</item>
     </plurals>
     <plurals name="runtime_permissions_summary" formatted="false" msgid="1564663886246010959">
-      <item quantity="one"><xliff:g id="COUNT_2">%d</xliff:g> of <xliff:g id="COUNT_3">%d</xliff:g> permissions granted</item>
+      <item quantity="one"><xliff:g id="COUNT_2">%d</xliff:g> de <xliff:g id="COUNT_3">%d</xliff:g> autorização concedida</item>
       <item quantity="other"><xliff:g id="COUNT_2">%d</xliff:g> de <xliff:g id="COUNT_3">%d</xliff:g> autorizações concedidas</item>
     </plurals>
     <plurals name="runtime_permissions_additional_count" formatted="false" msgid="931276038884210752">
-      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> additional permissions</item>
+      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> permissão adicional</item>
       <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> permissões adicionais</item>
     </plurals>
     <string name="runtime_permissions_summary_no_permissions_granted" msgid="1679758182657005375">"Nenhuma permissão concedida"</string>
@@ -3133,7 +3136,7 @@
     <string name="domain_urls_summary_some" msgid="3950089361819428455">"Abrir <xliff:g id="DOMAIN">%s</xliff:g> e outros URLs"</string>
     <string name="domain_urls_apps_summary_off" msgid="1833056772600031220">"Nenhum aplicação abre links compatíveis"</string>
     <plurals name="domain_urls_apps_summary_on" formatted="false" msgid="240214361240709399">
-      <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> apps opening supported links</item>
+      <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> aplicação que abre links compatíveis</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> aplicações que abrem links compatíveis</item>
     </plurals>
     <string name="app_link_open_always" msgid="2474058700623948148">"Abrir com esta aplicação"</string>
@@ -3177,7 +3180,7 @@
     <string name="hide_extra_apps" msgid="5016497281322459633">"Mostrar utilização de aplic."</string>
     <string name="power_high_usage_title" msgid="6027369425057347826">"Utilização elevada"</string>
     <plurals name="power_high_usage_summary" formatted="false" msgid="467347882627862744">
-      <item quantity="one"><xliff:g id="NUMBER">%2$d</xliff:g> apps behaving abnormally</item>
+      <item quantity="one"><xliff:g id="NUMBER">%2$d</xliff:g> aplicação está a apresentar um comportamento anormal</item>
       <item quantity="other"><xliff:g id="NUMBER">%2$d</xliff:g> aplicações estão a apresentar um comportamento anormal</item>
     </plurals>
     <plurals name="power_high_usage_title" formatted="false" msgid="3826660033363082922">
@@ -3245,7 +3248,7 @@
     <string name="free_memory" msgid="4003936141603549746">"Disponível"</string>
     <string name="memory_usage_apps" msgid="5650192998273294098">"Memória utilizada pelas aplicações"</string>
     <plurals name="memory_usage_apps_summary" formatted="false" msgid="6089210945574265774">
-      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> apps used memory in the last <xliff:g id="DURATION_1">%2$s</xliff:g></item>
+      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> aplicação utilizou a memória nos(as) últimos(as) <xliff:g id="DURATION_1">%2$s</xliff:g></item>
       <item quantity="other"><xliff:g id="COUNT">%1$d</xliff:g> aplicações utilizaram a memória nos(as) últimos(as) <xliff:g id="DURATION_1">%2$s</xliff:g></item>
     </plurals>
     <string name="running_frequency" msgid="6622624669948277693">"Frequência"</string>
@@ -3316,7 +3319,7 @@
     <string name="disconnected" msgid="4836600637485526329">"Sem ligação"</string>
     <string name="data_usage_summary_format" msgid="7507047900192160585">"<xliff:g id="AMOUNT">%1$s</xliff:g> dos dados utilizados"</string>
     <plurals name="notification_summary" formatted="false" msgid="3941492005316143599">
-      <item quantity="one">Off for <xliff:g id="COUNT">%d</xliff:g> apps</item>
+      <item quantity="one">Desativadas para <xliff:g id="COUNT">%d</xliff:g> aplicação</item>
       <item quantity="other">Desativadas para <xliff:g id="COUNT">%d</xliff:g> aplicações</item>
     </plurals>
     <string name="notification_summary_none" msgid="4586376436702610">"Ativadas para todas as aplicações"</string>
@@ -3397,7 +3400,7 @@
     <string name="billing_cycle_fragment_summary" msgid="8231066353654583106">"Mensalmente no dia <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="network_restrictions" msgid="8234695294536675380">"Restrições de rede"</string>
     <plurals name="network_restrictions_summary" formatted="false" msgid="4301618027244595839">
-      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> restrictions</item>
+      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> restrição</item>
       <item quantity="other"><xliff:g id="COUNT">%1$d</xliff:g> restrições</item>
     </plurals>
     <string name="operator_warning" msgid="1862988028996859195">"A contagem de dados do operador pode ser diferente da contagem do dispositivo"</string>
@@ -3410,7 +3413,7 @@
     <string name="configure" msgid="1029654422228677273">"Configurar"</string>
     <string name="data_usage_other_apps" msgid="3272872663517382050">"Outras aplicações incluídas na utilização"</string>
     <plurals name="data_saver_unrestricted_summary" formatted="false" msgid="2635267833484232703">
-      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> apps allowed to use unrestricted data when Data Saver is on</item>
+      <item quantity="one"><xliff:g id="COUNT">%1$d</xliff:g> aplicação autorizada a utilizar dados sem restrições quando a Poupança de dados está ativada</item>
       <item quantity="other"><xliff:g id="COUNT">%1$d</xliff:g> aplicações autorizadas a utilizar dados sem restrições quando a Poupança de dados está ativada</item>
     </plurals>
     <string name="data_saver_title" msgid="398458827917495765">"Poupança de dados"</string>
@@ -3468,7 +3471,7 @@
     <string name="notification_log_details_ranking_none" msgid="599607025882587844">"O objeto de classificação não contém esta chave."</string>
     <string name="special_access" msgid="3458780842491881155">"Acesso especial a aplicações"</string>
     <plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
-      <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> apps can use unrestricted data</item>
+      <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> aplicação pode utilizar dados sem restrições</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> aplicações podem utilizar dados sem restrições</item>
     </plurals>
     <string name="confirm_convert_to_fbe_warning" msgid="1487005506049137659">"Pretende mesmo limpar os dados do utilizador e converter para a encriptação de ficheiros?"</string>
@@ -3517,15 +3520,15 @@
     <string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Pesquisa de contactos"</string>
     <string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Permitir pesquisa de contactos por parte da sua entidade para identificar autores das chamadas e contactos"</string>
     <plurals name="hours" formatted="false" msgid="7020844602875333472">
-      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> hours</item>
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> hora</item>
       <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> horas</item>
     </plurals>
     <plurals name="minutes" formatted="false" msgid="4666832442068789413">
-      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> minutes</item>
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> minuto</item>
       <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> minutos</item>
     </plurals>
     <plurals name="seconds" formatted="false" msgid="3876307354560025025">
-      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> seconds</item>
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> segundo</item>
       <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> segundos</item>
     </plurals>
     <string name="support_estimated_wait_time" msgid="6523081420029378051">"Tempo de espera de ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
@@ -3615,7 +3618,7 @@
     <string name="enterprise_privacy_enterprise_installed_packages" msgid="6353757812144878828">"Aplicações instaladas"</string>
     <string name="enterprise_privacy_apps_count_estimation_info" msgid="7433213592572082606">"O número de aplicações é uma estimativa. Pode não incluir as aplicações instaladas fora da Play Store."</string>
     <plurals name="enterprise_privacy_number_packages_lower_bound" formatted="false" msgid="3005116533873542976">
-      <item quantity="one">Minimum <xliff:g id="COUNT_1">%d</xliff:g> apps</item>
+      <item quantity="one">No mínimo, <xliff:g id="COUNT_1">%d</xliff:g> aplicação</item>
       <item quantity="other">No mínimo, <xliff:g id="COUNT_1">%d</xliff:g> aplicações</item>
     </plurals>
     <string name="enterprise_privacy_location_access" msgid="4158197200885270634">"Autorizações de acesso à localização"</string>
@@ -3623,7 +3626,7 @@
     <string name="enterprise_privacy_camera_access" msgid="4858146118537519375">"Autorizações da câmara"</string>
     <string name="enterprise_privacy_enterprise_set_default_apps" msgid="3288495615791128724">"Aplicações predefinidas"</string>
     <plurals name="enterprise_privacy_number_packages" formatted="false" msgid="2765037387436064893">
-      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> apps</item>
+      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> aplicação</item>
       <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> aplicações</item>
     </plurals>
     <string name="enterprise_privacy_input_method" msgid="6531350246850814920">"Teclado predefinido"</string>
@@ -3634,7 +3637,7 @@
     <string name="enterprise_privacy_global_http_proxy" msgid="7936664553416257333">"Proxy HTTP global definido"</string>
     <string name="enterprise_privacy_ca_certs" msgid="5885892204903688909">"Credenciais fidedignas"</string>
     <plurals name="enterprise_privacy_number_ca_certs" formatted="false" msgid="526375234629534165">
-      <item quantity="one">Minimum <xliff:g id="COUNT_1">%d</xliff:g> CA certificates</item>
+      <item quantity="one">No mínimo, <xliff:g id="COUNT_1">%d</xliff:g> certificado da AC</item>
       <item quantity="other">No mínimo, <xliff:g id="COUNT_1">%d</xliff:g> certificados da AC</item>
     </plurals>
     <string name="enterprise_privacy_lock_device" msgid="8791656477097208540">"O administrador pode bloquear o dispositivo e repor a palavra-passe"</string>
@@ -3642,7 +3645,7 @@
     <string name="enterprise_privacy_failed_password_wipe_device" msgid="1001255609345002878">"Tentativas de introdução da palavra-passe falhadas antes da eliminação de todos os dados do dispositivo"</string>
     <string name="enterprise_privacy_failed_password_wipe_work" msgid="4040565826652951057">"Tentativas de introdução da palavra-passe falhadas antes da eliminação de todos os dados do perfil de trabalho"</string>
     <plurals name="enterprise_privacy_number_failed_password_wipe" formatted="false" msgid="5279099270351036696">
-      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> attempts</item>
+      <item quantity="one"><xliff:g id="COUNT_1">%d</xliff:g> tentativa</item>
       <item quantity="other"><xliff:g id="COUNT_1">%d</xliff:g> tentativas</item>
     </plurals>
     <string name="do_disclosure_generic" msgid="8653670456990823307">"Este dispositivo é gerido pela sua entidade."</string>
@@ -3650,18 +3653,18 @@
     <string name="do_disclosure_learn_more_separator" msgid="3558079393757238670">" "</string>
     <string name="do_disclosure_learn_more" msgid="2416766240581561009">"Saiba mais"</string>
     <plurals name="default_camera_app_title" formatted="false" msgid="1134677050353971363">
-      <item quantity="one">Camera apps</item>
+      <item quantity="one">Aplicação de câmara</item>
       <item quantity="other">Aplicações de câmara</item>
     </plurals>
     <string name="default_calendar_app_title" msgid="3545972964391065220">"Aplicação de calendário"</string>
     <string name="default_contacts_app_title" msgid="3497370557378660098">"Aplicação de contactos"</string>
     <plurals name="default_email_app_title" formatted="false" msgid="42826975161049245">
-      <item quantity="one">Email client apps</item>
+      <item quantity="one">Aplicação de cliente de email</item>
       <item quantity="other">Aplicações de cliente de email</item>
     </plurals>
     <string name="default_map_app_title" msgid="7560143381633608567">"Aplicação de mapas"</string>
     <plurals name="default_phone_app_title" formatted="false" msgid="6714041230953195024">
-      <item quantity="one">Phone apps</item>
+      <item quantity="one">Aplicação de telefone</item>
       <item quantity="other">Aplicações de telefone</item>
     </plurals>
     <string name="app_names_concatenation_template_2" msgid="4309216198909946380">"<xliff:g id="FIRST_APP_NAME">%1$s</xliff:g>, <xliff:g id="SECOND_APP_NAME">%2$s</xliff:g>"</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index c23b26b..37c79f7 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -1061,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Brilho automático"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Levantar para ativar"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Exibição de ambiente"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Sempre ativado / Aumento do uso da bateria"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Novas notificações"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Quando mostrar"</string>
     <string name="doze_title" msgid="2375510714460456687">"Novas notificações"</string>
     <string name="doze_summary" msgid="3846219936142814032">"Ativar a tela ao receber notificações"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Sempre ativado"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Mostrar horário, ícones de notificação e outras informações. Aumento do uso da bateria."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Tamanho da fonte"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Tornar o texto maior ou menor"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"Bloqueio do SIM"</string>
@@ -2792,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"gestos"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"pagar, tocar, pagamentos"</string>
     <string name="keywords_backup" msgid="470070289135403022">"backup, back up"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"gesto"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Configurar etiqueta NFC Wi-Fi"</string>
     <string name="write_tag" msgid="8571858602896222537">"Gravar"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Toque em uma marca para gravar…"</string>
@@ -2845,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Somente alarmes"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silêncio total"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear perturbações visuais"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sons do perfil de trabalho"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usar sons do perfil pessoal"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Os sons são os mesmos para os perfis pessoal e de trabalho"</string>
@@ -3006,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Apenas de contatos marcados com estrela"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Nenhuma"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmes"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Lembretes"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Eventos"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Todos os autores de chamadas"</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 48637e5..da46213 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -2870,7 +2870,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Numai alarme"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Niciun sunet"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blocați întreruperile vizuale"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sunetele profilului de serviciu"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Folosiți sunetele profilului personal"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sunetele profilului de serviciu sunt aceleași ca la profilul personal"</string>
@@ -3034,6 +3035,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Doar de la persoanele de contact cu stea"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Niciunul"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarme"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Mementouri"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Evenimente"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Toți apelanții"</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 35f9193..f3f20ff 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -2898,7 +2898,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Только будильник"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Полная тишина"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блокировка визуального оповещения"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3065,6 +3066,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Только от помеченных контактов"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ни от кого"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Будильник"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Напоминания"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Мероприятия"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Все абоненты"</string>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index d1824ba..3782ab3 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"එලාම පමණයි"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"සම්පූර්ණ නිහඬතාව"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g> : <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"දෘශ්‍ය බාධක අවහිර කරන්න"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"තරු ලකුණු කළ සම්බන්ධතා වෙතින් පමණි"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"කිසිවක් නැත"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"ඇඟවීම්"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"සිහිකැඳවීම්"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"සිදුවීම්"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"සියලු අමතන්නන්"</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index b1a8daa..835b707 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -2898,7 +2898,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Iba budíky"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Úplné ticho"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokovať vizuálne vyrušenia"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Zvuky pracovného profilu"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Použiť zvuky osobného profilu"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvuky sú rovnaké pre pracovný aj osobný profil"</string>
@@ -3065,6 +3066,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Iba od kontaktov s hviezdičkou"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Žiadne"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Budíky"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Pripomenutia"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Udalosti"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Všetci volajúci"</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 7438640..460f5e9 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -1085,15 +1085,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"Samodejna svetlost"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"Preklop iz stanja pripravlj. z dviganjem"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"Prikaz na podlagi okolja"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"Vedno vključeno/višja poraba energije akumulatorja"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"Nova obvestila"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"Nastavitve prikaza"</string>
     <string name="doze_title" msgid="2375510714460456687">"Nova obvestila"</string>
     <string name="doze_summary" msgid="3846219936142814032">"Preklop zaslona iz stanja pripravljenosti, ko prejmete obvestila"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"Vedno vklopljeno"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"Prikaz ure, ikon obvestil in drugih informacij. Višja poraba energije akumulatorja."</string>
     <string name="title_font_size" msgid="4405544325522105222">"Velikost pisave"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"Pomanjšava ali povečava besedila"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"Nastavitve zaklepanja kartice SIM"</string>
@@ -2846,8 +2844,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"poteze"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"plačaj, dotakni se, plačevanje z dotikom, plačila"</string>
     <string name="keywords_backup" msgid="470070289135403022">"varnostna kopija, varnostno kopiranje, varnostno kopirati"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"poteza"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Nastavitev brezžič. oznake NFC"</string>
     <string name="write_tag" msgid="8571858602896222537">"Zapiši"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"Dotaknite se oznake za zapisovanje ..."</string>
@@ -2901,7 +2898,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Samo alarmi"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Popolna tišina"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokiranje vizualnih motenj"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Zvoki v delovnem profilu"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Uporaba zvokov iz os. profila"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvoki v delovnem in osebnem profilu so enaki"</string>
@@ -3068,6 +3066,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Samo od stikov, označenih z zvezdico"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Brez"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmi"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Opomniki"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Dogodki"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Vsi klicatelji"</string>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index f606681..27ceee5 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Llogaritë"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Vendndodhja"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Llogaritë"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Siguria dhe vendndodhja"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Enkriptimi dhe kredencialet"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Telefoni është i enkriptuar"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"Pajisja është e enkriptuar"</string>
@@ -2843,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Vetëm alarmet"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Heshtje e plotë"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blloko shqetësimet vizuale"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Tingujt e profilit të punës"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Përdor tingujt e profilit personal"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Tingujt janë të njëjtë për profilin tënd personal dhe atë të punës"</string>
@@ -3004,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Vetëm nga kontaktet me yll"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Asnjë"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmet"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Alarmet rikujtuese"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Ngjarjet"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Të gjithë telefonuesit"</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 7a1fbb0..cc96d96 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -2870,7 +2870,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Само аларми"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Потпуна тишина"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блокирај визуелна ометања"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Звуци за профил за Work"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Користи звуке личног профила"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Звукови профила за Work су исти као и звукови за личне профиле"</string>
@@ -3034,6 +3035,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Само од контаката са звездицом"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Нико"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Аларми"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Подсетници"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Догађаји"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Сви позиваоци"</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 24df86b..974505c 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Endast alarm"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Helt tyst"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blockera synliga störningar"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Jobbprofilens ljud"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Använd pers. profilens ljud"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Samma ljud används i jobbprofilen och den personliga profilen"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Endast från stjärnmärkta kontakter"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ingen"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarm"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Påminnelser"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Händelser"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Alla ringande"</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 9592724..fcc4b9c 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -990,7 +990,7 @@
     <string name="accessibility_personal_account_title" msgid="2169071663029067826">"Akaunti ya binafsi- <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
     <string name="search_settings" msgid="1910951467596035063">"Tafuta"</string>
     <string name="search_settings_summary" msgid="9205656546570654169">"Simamia mipangilio ya utafutaji na historia"</string>
-    <string name="search_settings_no_results" msgid="8799027492641230999">"Haikupata matokeo"</string>
+    <string name="search_settings_no_results" msgid="8799027492641230999">"Hakuna matokeo yoyote yaliyopatikana"</string>
     <string name="display_settings" msgid="7965901687241669598">"Kwenye Skrini"</string>
     <string name="accelerometer_title" msgid="7854608399547349157">"Skrini ijizungushe kiotomatiki"</string>
     <string name="color_mode_title" msgid="3159275920408338215">"Rangi dhahiri"</string>
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Kengele pekee"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Kimya kabisa"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Zuia ukatizaji wa maonyesho"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Sauti za wasifu wa kazi"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Tumia sauti za wasifu wako binafsi"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sauti za wasifu wa binafsi na wa kazini ni sawa"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Kutoka kwa anwani zenye nyota pekee"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Hamna"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Kengele"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Vikumbusho"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Matukio"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Wapiga simu wote"</string>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index 1c72006..f57661f 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"கணக்குகள்"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"இருப்பிடம்"</string>
     <string name="account_settings_title" msgid="626177544686329806">"கணக்குகள்"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"பாதுகாப்பு &amp; இருப்பிடம்"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"என்கிரிப்ஷன் &amp; அனுமதிச் சான்றுகள்"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"ஃபோன் என்கிரிப்ட் செய்யப்பட்டது"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"சாதனம் என்கிரிப்ட் செய்யப்பட்டது"</string>
@@ -2843,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"அலாரங்கள் மட்டும்"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"அறிவிப்புகள் வேண்டாம்"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"விஷுவல் குறுக்கீடுகளைத் தடு"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3004,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"நட்சத்திரமிட்ட தொடர்புகளிலிருந்து மட்டுமே"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ஏதுமில்லை"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"அலாரங்கள்"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"நினைவூட்டல்கள்"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"நிகழ்வுகள்"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"எல்லா அழைப்பாளர்களும்"</string>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 454f241..6b2943a 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"ఖాతాలు"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"స్థానం"</string>
     <string name="account_settings_title" msgid="626177544686329806">"ఖాతాలు"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"భద్రత &amp; స్థానం"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"గుప్తీకరణ &amp; ఆధారాలు"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"ఫోన్ గుప్తీకరించబడింది"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"డివైజ్ గుప్తీకరించబడింది"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"స్వయంచాలక ప్రకాశం"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"సక్రియం చేయడానికి వేళ్లను తీసివేయండి"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"యాంబియంట్ డిస్‌ప్లే"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"ఎల్లప్పుడూ ఆన్‌లో ఉంచు / బ్యాటరీ వినియోగం పెరుగుతుంది"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"కొత్త నోటిఫికేషన్‌లు"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"ఎప్పుడు చూపాలి"</string>
     <string name="doze_title" msgid="2375510714460456687">"కొత్త నోటిఫికేషన్‌లు"</string>
     <string name="doze_summary" msgid="3846219936142814032">"మీరు నోటిఫికేషన్‌లను స్వీకరించినప్పుడు స్క్రీన్‌ను సక్రియం చేస్తుంది"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"ఎల్లప్పుడూ ఆన్‌లో ఉంచు"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"ప్రదర్శన సమయం, నోటిఫికేషన్ చిహ్నాలు మరియు ఇతర సమాచారం. బ్యాటరీ వినియోగం పెరుగుతుంది."</string>
     <string name="title_font_size" msgid="4405544325522105222">"ఫాంట్ పరిమాణం"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"వచనాన్ని పెద్దదిగా లేదా చిన్నదిగా చేస్తుంది"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"సిమ్ కార్డు లాక్ సెట్టింగ్‌లు"</string>
@@ -2793,8 +2790,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"సంజ్ఞలు"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"చెల్లించడం, నొక్కడం, చెల్లింపులు"</string>
     <string name="keywords_backup" msgid="470070289135403022">"బ్యాకప్, బ్యాకప్"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"సంజ్ఞ"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC ట్యాగ్‌ను సెటప్ చేయండి"</string>
     <string name="write_tag" msgid="8571858602896222537">"వ్రాయి"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"వ్రాయడానికి ట్యాగ్‌ను నొక్కండి..."</string>
@@ -2846,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"అలారాలు మాత్రమే"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"మొత్తం నిశ్శబ్దం"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"దృశ్య అంతరాయాలను బ్లాక్ చేయండి"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3007,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"నక్షత్రం గల పరిచయాల నుండి మాత్రమే"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ఏవీ వద్దు"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"అలారాలు"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"రిమైండర్‌లు"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ఈవెంట్‌లు"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"అందరు కాలర్‌లు"</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 0fa20c9..bdfa6f2 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"เฉพาะปลุกเท่านั้น"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ปิดเสียงทั้งหมด"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"บล็อกสิ่งรบกวนการมองเห็น"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"จากรายชื่อติดต่อที่ติดดาวเท่านั้น"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"ไม่มี"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"การปลุก"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"การช่วยเตือน"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"กิจกรรม"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"ผู้โทรทั้งหมด"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 0866719..a56f90c 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Mga alarm lang"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Ganap na katahimikan"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"I-block ang mga visual na abala"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Mga tunog sa profile sa trabaho"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Gamitin tunog sa personal na profile"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Pareho ang mga tunog para sa personal na profile at profile sa trabaho"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Mula sa mga contact na may star lang"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Wala"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Mga Alarm"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Mga Paalala"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Mga Kaganapan"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Lahat ng tumatawag"</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index a86f3e5..8130ae3 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Yalnızca alarmlar"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Tamamen sessiz"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Görsel bildirimleri engelle"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"İş profili sesleri"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Kişi. profil seslerini kullan"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sesler, iş profili ve kişisel profil için aynıdır"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Yalnızca yıldızlı kişilerden"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Hiçbiri"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Alarmlar"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Hatırlatıcılar"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Etkinlikler"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Tüm arayanlar"</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index dc1ef81..5de14b5 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -2898,7 +2898,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Лише будильник"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Без сигналів"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блокувати візуальні сповіщення"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3065,6 +3066,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Лише від позначених контактів"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Ні від кого"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Будильник"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Нагадування"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Події"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Усі абоненти"</string>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index 27e2086..773dc0b 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"اکاؤنٹس"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"مقام"</string>
     <string name="account_settings_title" msgid="626177544686329806">"اکاؤنٹس"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"سیکیورٹی اور مقام"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"مرموز کاری اور اسناد"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"فون مرموز کیا گيا"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"آلہ کی مرموز کاری ہو گئی"</string>
@@ -1062,15 +1061,13 @@
     <string name="automatic_brightness" msgid="5014143533884135461">"خود کار چمک"</string>
     <string name="lift_to_wake_title" msgid="4555378006856277635">"جگانے کیلئے اٹھائیں"</string>
     <string name="ambient_display_screen_title" msgid="4252755516328775766">"ايمبيئنٹ ڈسپلے"</string>
-    <!-- no translation found for ambient_display_screen_summary_always_on (7337555569694794132) -->
-    <skip />
+    <string name="ambient_display_screen_summary_always_on" msgid="7337555569694794132">"ہمیشہ آن/اضافی بیٹری کا استعمال"</string>
     <string name="ambient_display_screen_summary_notifications" msgid="1449570742600868654">"نئی اطلاعات"</string>
     <string name="ambient_display_category_triggers" msgid="4359289754456268573">"دکھانے کا وقت"</string>
     <string name="doze_title" msgid="2375510714460456687">"نئی اطلاعات"</string>
     <string name="doze_summary" msgid="3846219936142814032">"اطلاعات موصول ہونے پر اسکرین کو جگائیں"</string>
     <string name="doze_always_on_title" msgid="1046222370442629646">"ہمیشہ آن"</string>
-    <!-- no translation found for doze_always_on_summary (6978257596231155345) -->
-    <skip />
+    <string name="doze_always_on_summary" msgid="6978257596231155345">"وقت، اطلاعاتی آئیکنز اور دیگر معلومات دکھائیں۔ اضافی بیٹری کا استعمال۔"</string>
     <string name="title_font_size" msgid="4405544325522105222">"فونٹ سائز"</string>
     <string name="short_summary_font_size" msgid="6819778801232989076">"متن کو چھوٹا یا بڑا کریں"</string>
     <string name="sim_lock_settings" msgid="3392331196873564292">"‏SIM کارڈ لاک کی ترتیبات"</string>
@@ -2791,8 +2788,7 @@
     <string name="keywords_gesture" msgid="3526905012224714078">"اشارے"</string>
     <string name="keywords_payment_settings" msgid="5220104934130446416">"ادائیگی کریں، تھپتھپائیں، ادائیگیاں"</string>
     <string name="keywords_backup" msgid="470070289135403022">"بیک اپ، بیک اپ لیں"</string>
-    <!-- no translation found for keywords_assist_gesture_launch (813968759791342591) -->
-    <skip />
+    <string name="keywords_assist_gesture_launch" msgid="813968759791342591">"اشارہ"</string>
     <string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"‏Wi-Fi NFC ٹیگ ترتیب دیں"</string>
     <string name="write_tag" msgid="8571858602896222537">"تحریر کریں"</string>
     <string name="status_awaiting_tap" msgid="2130145523773160617">"لکھنے کیلئے ایک ٹیگ کو تھپتھپائیں…"</string>
@@ -2844,7 +2840,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"صرف الارمز"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"مکمل خاموشی"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"بصری مداخلتیں مسدود کریں"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3005,6 +3002,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"صرف ستارہ کے نشان والے رابطوں سے"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"کوئی نہیں"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"الارمز"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"یاد دہانیاں"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"ایونٹس"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"تمام کال کرنے والے"</string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 7465555..c33ecf8 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -341,8 +341,7 @@
     <string name="Accounts_settings_title" msgid="1643879107901699406">"Hisoblar"</string>
     <string name="location_settings_title" msgid="1369675479310751735">"Joylashuv"</string>
     <string name="account_settings_title" msgid="626177544686329806">"Hisoblar"</string>
-    <!-- no translation found for security_settings_title (4918904614964215087) -->
-    <skip />
+    <string name="security_settings_title" msgid="4918904614964215087">"Xavfsizlik va joylashuv"</string>
     <string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Shifrlash va hisob ma’lumotlari"</string>
     <string name="encryption_and_credential_settings_summary" product="default" msgid="8721883002237981248">"Telefon shifrlangan"</string>
     <string name="encryption_and_credential_settings_summary" product="tablet" msgid="7200428573872395685">"Qurilma shifrlangan"</string>
@@ -2855,7 +2854,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Faqat signallar"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Jimjitlik"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Visual bildirishnomalarni bloklash"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3016,6 +3016,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Faqat sevimli kontaktlardan"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Hech kimdan"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Signallar"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Eslatmalar"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Tadbirlar"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Barcha abonentlar"</string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index a6b6893..7af1882 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Chỉ báo thức"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Hoàn toàn tắt tiếng"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Ngăn gián đoạn hình ảnh"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Âm thanh hồ sơ công việc"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Sử dụng âm thanh hồ sơ cá nhân"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Âm thanh giống nhau cho hồ sơ cá nhân và công việc"</string>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Chỉ từ các liên hệ có gắn dấu sao"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Không có"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Báo thức"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Lời nhắc"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Sự kiện"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Tất cả người gọi"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 939a6af..a228d2a 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -2842,7 +2842,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"仅限闹钟"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"完全阻止"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>：<xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"屏蔽视觉打扰"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3003,6 +3004,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"仅限来自收藏的联系人"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"无"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"闹钟"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"提醒"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"活动"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"所有来电者"</string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 157e4b7..da7542e 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -2845,7 +2845,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"只限鬧鐘"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"完全靜音"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>：<xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"封鎖視覺干擾"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <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>
@@ -3006,6 +3007,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"只限已加星號的聯絡人"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"無"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"鬧鐘"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"提醒"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"活動"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"所有來電者"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index c3e321b..e9f5370 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -2846,7 +2846,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"僅限鬧鐘"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"完全靜音"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>：<xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"封鎖視覺干擾"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Work 設定檔音效"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"使用個人設定檔音效"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Work 設定檔和個人設定檔使用相同的音效"</string>
@@ -3007,6 +3008,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"來自已加星號的聯絡人"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"無"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"鬧鐘"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"提醒"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"活動"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"所有來電者"</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 113036f..db5f3a3 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -2843,7 +2843,8 @@
     <string name="zen_mode_option_alarms" msgid="5785372117288803600">"Ama-alamu kuphela"</string>
     <string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Ukuthula okuphelele"</string>
     <string name="zen_mode_summary_combination" msgid="8715563402849273459">"<xliff:g id="MODE">%1$s</xliff:g>: <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
-    <string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Vimbela ukuphazamiseka okubonakalayo"</string>
+    <!-- no translation found for zen_mode_visual_interruptions_settings_title (7738713773934576844) -->
+    <skip />
     <string name="sound_work_settings" msgid="6774324553228566442">"Imisindo yephrofayela yomsebenzi"</string>
     <string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Sebenzisa imisindo yephrofayela yomuntu siqu"</string>
     <string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Imisindo iyefana yomsebenzi namaphrofayela omuntu siqu"</string>
@@ -3004,6 +3005,8 @@
     <string name="zen_mode_from_starred" msgid="2678345811950997027">"Kusukela koxhumana nabo abanenkanyezi kuphela"</string>
     <string name="zen_mode_from_none" msgid="8219706639954614136">"Lutho"</string>
     <string name="zen_mode_alarms" msgid="2165302777886552926">"Ama-alamu"</string>
+    <!-- no translation found for zen_mode_alarms_summary (3774926045611788635) -->
+    <skip />
     <string name="zen_mode_reminders" msgid="5458502056440485730">"Izikhumbuzi"</string>
     <string name="zen_mode_events" msgid="7914446030988618264">"Imibuthano"</string>
     <string name="zen_mode_all_callers" msgid="584186167367236922">"Bonke abafonayo"</string>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index ec21ff8..bcaaf63 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -6249,6 +6249,8 @@
     <string name="help_url_double_tap_screen" translatable="false"></string>
     <string name="help_url_account_detail" translatable="false"></string>
     <string name="help_url_icc_lock" translatable="false"></string>
+    <string name="help_uri_process_stats_summary" translatable="false"></string>
+    <string name="help_uri_process_stats_apps" translatable="false"></string>
 
     <!-- User account title [CHAR LIMIT=30] -->
     <string name="user_account_title">Account for content</string>
@@ -6671,7 +6673,7 @@
     <string name="zen_mode_summary_combination"><xliff:g id="mode" example="Priority only">%1$s</xliff:g>: <xliff:g id="exit condition" example="Until you turn this off">%2$s</xliff:g></string>
 
     <!--  Do not disturb: Title for the Visual interruptions option and associated settings page. [CHAR LIMIT=30] -->
-    <string name="zen_mode_visual_interruptions_settings_title">Block visual disturbances</string>
+    <string name="zen_mode_visual_interruptions_settings_title">Block visual signals</string>
 
     <!-- Work Sounds: Work sound settings section header.  [CHAR LIMIT=50] -->
     <string name="sound_work_settings">Work profile sounds</string>
@@ -7166,6 +7168,9 @@
     <!-- [CHAR LIMIT=50] Zen mode settings: Alarms option -->
     <string name="zen_mode_alarms">Alarms</string>
 
+    <!-- [CHAR LIMIT=50] Zen mode settings: Alarms option summary -->
+    <string name="zen_mode_alarms_summary">Alarms are always a priority and make sound</string>
+
     <!-- [CHAR LIMIT=50] Zen mode settings: Reminders option -->
     <string name="zen_mode_reminders">Reminders</string>
 
diff --git a/res/xml/zen_mode_priority_settings.xml b/res/xml/zen_mode_priority_settings.xml
index e2b8f48..e4f8f5e 100644
--- a/res/xml/zen_mode_priority_settings.xml
+++ b/res/xml/zen_mode_priority_settings.xml
@@ -19,13 +19,6 @@
     android:key="zen_mode_priority_settings"
     android:title="@string/zen_mode_priority_settings_title" >
 
-    <!-- Alarms -->
-    <SwitchPreference
-        android:key="alarms"
-        android:title="@string/zen_mode_alarms"
-        android:enabled="false"
-        android:defaultValue="true"/>
-
     <!-- Reminders -->
     <SwitchPreference
         android:key="reminders"
@@ -36,6 +29,14 @@
         android:key="events"
         android:title="@string/zen_mode_events"/>
 
+    <!-- Alarms -->
+    <SwitchPreference
+        android:key="alarms"
+        android:title="@string/zen_mode_alarms"
+        android:summary="@string/zen_mode_alarms_summary"
+        android:enabled="false"
+        android:defaultValue="true"/>
+
     <!-- Messages -->
     <DropDownPreference
         android:key="messages"
diff --git a/src/com/android/settings/ApnEditor.java b/src/com/android/settings/ApnEditor.java
index ba160ab..196fec8 100644
--- a/src/com/android/settings/ApnEditor.java
+++ b/src/com/android/settings/ApnEditor.java
@@ -147,7 +147,8 @@
             Telephony.Carriers.ROAMING_PROTOCOL, // 20
             Telephony.Carriers.MVNO_TYPE,   // 21
             Telephony.Carriers.MVNO_MATCH_DATA,  // 22
-            Telephony.Carriers.EDITED   // 23
+            Telephony.Carriers.EDITED,   // 23
+            Telephony.Carriers.USER_EDITABLE    //24
     };
 
     private static final int ID_INDEX = 0;
@@ -173,6 +174,7 @@
     private static final int MVNO_TYPE_INDEX = 21;
     private static final int MVNO_MATCH_DATA_INDEX = 22;
     private static final int EDITED_INDEX = 23;
+    private static final int USER_EDITABLE_INDEX = 24;
 
 
     @Override
@@ -284,7 +286,8 @@
         Log.d(TAG, "onCreate: EDITED " + mCursor.getInt(EDITED_INDEX));
         // if it's not a USER_EDITED apn, check if it's read-only
         if (mCursor.getInt(EDITED_INDEX) != Telephony.Carriers.USER_EDITED &&
-                apnTypesMatch(mReadOnlyApnTypes, mCursor.getString(TYPE_INDEX))) {
+                (mCursor.getInt(USER_EDITABLE_INDEX) == 0 ||
+                apnTypesMatch(mReadOnlyApnTypes, mCursor.getString(TYPE_INDEX)))) {
             Log.d(TAG, "onCreate: apnTypesMatch; read-only APN");
             mReadOnlyApn = true;
             disableAllFields();
diff --git a/src/com/android/settings/MasterClear.java b/src/com/android/settings/MasterClear.java
index fe0111b..1bdd6f4 100644
--- a/src/com/android/settings/MasterClear.java
+++ b/src/com/android/settings/MasterClear.java
@@ -22,7 +22,7 @@
 import android.accounts.AccountManager;
 import android.accounts.AuthenticatorDescription;
 import android.app.Activity;
-import android.app.FragmentManager;
+import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.Context;
 import android.content.Intent;
@@ -38,6 +38,7 @@
 import android.provider.Settings;
 import android.support.annotation.VisibleForTesting;
 import android.telephony.euicc.EuiccManager;
+import android.text.TextUtils;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -54,7 +55,6 @@
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.settings.password.ChooseLockSettingsHelper;
 import com.android.settings.password.ConfirmLockPattern;
-import com.android.settings.widget.CarrierDemoPasswordDialogFragment;
 import com.android.settingslib.RestrictedLockUtils;
 
 import java.util.List;
@@ -69,8 +69,7 @@
  *
  * This is the initial screen.
  */
-public class MasterClear extends OptionsMenuFragment
-        implements CarrierDemoPasswordDialogFragment.Callback {
+public class MasterClear extends OptionsMenuFragment {
     private static final String TAG = "MasterClear";
 
     private static final int KEYGUARD_REQUEST = 55;
@@ -137,15 +136,21 @@
      * If the user clicks to begin the reset sequence, we next require a
      * keyguard confirmation if the user has currently enabled one.  If there
      * is no keyguard available, we simply go to the final confirmation prompt.
+     *
+     * If the user is in demo mode, route to the demo mode app for confirmation.
      */
-    private final Button.OnClickListener mInitiateListener = new Button.OnClickListener() {
+    @VisibleForTesting
+    protected final Button.OnClickListener mInitiateListener = new Button.OnClickListener() {
 
-        public void onClick(View v) {
-            if ( Utils.isCarrierDemoUser(v.getContext())) {
-                // Require the carrier password before displaying the final confirmation.
-                final FragmentManager fm = getChildFragmentManager();
-                if (fm != null && !fm.isDestroyed()) {
-                    new CarrierDemoPasswordDialogFragment().show(fm, null /* tag */);
+        public void onClick(View view) {
+            final Context context = view.getContext();
+            if (Utils.isDemoUser(context)) {
+                final String packageName = Utils.getDemoModePackageName(context);
+                if (!TextUtils.isEmpty(packageName)) {
+                    final Intent requestFactoryReset = new Intent()
+                            .setPackage(packageName)
+                            .setAction(Intent.ACTION_FACTORY_RESET);
+                    context.startActivity(requestFactoryReset);
                 }
             } else if (!runKeyguardConfirmation(KEYGUARD_REQUEST)) {
                 showFinalConfirmation();
@@ -153,11 +158,6 @@
         }
     };
 
-    @Override
-    public void onPasswordVerified() {
-        showFinalConfirmation();
-    }
-
     /**
      * In its initial state, the activity presents a button for the user to
      * click in order to initiate a confirmation sequence.  This method is
@@ -395,7 +395,7 @@
         final UserManager um = UserManager.get(context);
         final boolean disallow = !um.isAdminUser() || RestrictedLockUtils.hasBaseUserRestriction(
                 context, UserManager.DISALLOW_FACTORY_RESET, UserHandle.myUserId());
-        if (disallow && !Utils.isCarrierDemoUser(context)) {
+        if (disallow && !Utils.isDemoUser(context)) {
             return inflater.inflate(R.layout.master_clear_disallowed_screen, null);
         } else if (admin != null) {
             View view = inflater.inflate(R.layout.admin_support_details_empty_view, null);
diff --git a/src/com/android/settings/MasterClearConfirm.java b/src/com/android/settings/MasterClearConfirm.java
index 7a85dbe..39bf01a 100644
--- a/src/com/android/settings/MasterClearConfirm.java
+++ b/src/com/android/settings/MasterClearConfirm.java
@@ -24,7 +24,6 @@
 import android.os.Bundle;
 import android.os.UserHandle;
 import android.os.UserManager;
-import android.provider.Settings;
 import android.service.oemlock.OemLockManager;
 import android.service.persistentdata.PersistentDataBlockManager;
 import android.view.LayoutInflater;
diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java
index cfa8377..2b2ca8c 100644
--- a/src/com/android/settings/Utils.java
+++ b/src/com/android/settings/Utils.java
@@ -74,6 +74,7 @@
 import android.provider.ContactsContract.Profile;
 import android.provider.ContactsContract.RawContacts;
 import android.provider.Settings;
+import android.provider.Settings.Secure;
 import android.support.annotation.StringRes;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceGroup;
@@ -1252,6 +1253,11 @@
         }
     }
 
+    public static boolean hasFingerprintHardware(Context context) {
+        FingerprintManager fingerprintManager = getFingerprintManagerOrNull(context);
+        return fingerprintManager != null && fingerprintManager.isHardwareDetected();
+    }
+
     /**
      * Launches an intent which may optionally have a user id defined.
      * @param fragment Fragment to use to launch the activity.
@@ -1271,14 +1277,13 @@
         }
     }
 
-    public static boolean isCarrierDemoUser(Context context) {
-        final String carrierDemoModeSetting =
-                context.getString(com.android.internal.R.string.config_carrierDemoModeSetting);
-        return UserManager.isDeviceInDemoMode(context)
-                && getUserManager(context).isDemoUser()
-                && !TextUtils.isEmpty(carrierDemoModeSetting)
-                && (Settings.Secure.getInt(context.getContentResolver(),
-                        carrierDemoModeSetting, 0) == 1);
+    public static boolean isDemoUser(Context context) {
+        return UserManager.isDeviceInDemoMode(context) && getUserManager(context).isDemoUser();
+    }
+
+    public static String getDemoModePackageName(Context context) {
+        return context.getResources().getString(
+                com.android.internal.R.string.config_demoModePackage);
     }
 
     /**
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
index b3aacb2..a1b69d7 100755
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ b/src/com/android/settings/applications/InstalledAppDetails.java
@@ -209,7 +209,7 @@
 
                 @Override
                 public Loader<BatteryStatsHelper> onCreateLoader(int id, Bundle args) {
-                    return new BatteryStatsHelperLoader(getContext(), args);
+                    return new BatteryStatsHelperLoader(getContext());
                 }
 
                 @Override
diff --git a/src/com/android/settings/applications/ProcessStatsSummary.java b/src/com/android/settings/applications/ProcessStatsSummary.java
index c00cd5f..cdb8a4c 100644
--- a/src/com/android/settings/applications/ProcessStatsSummary.java
+++ b/src/com/android/settings/applications/ProcessStatsSummary.java
@@ -103,6 +103,11 @@
     }
 
     @Override
+    protected int getHelpResource() {
+        return R.string.help_uri_process_stats_summary;
+    }
+
+    @Override
     public boolean onPreferenceClick(Preference preference) {
         if (preference == mAppListPreference) {
             Bundle args = new Bundle();
diff --git a/src/com/android/settings/applications/ProcessStatsUi.java b/src/com/android/settings/applications/ProcessStatsUi.java
index 72238f6..9f76fb2 100644
--- a/src/com/android/settings/applications/ProcessStatsUi.java
+++ b/src/com/android/settings/applications/ProcessStatsUi.java
@@ -96,6 +96,11 @@
     }
 
     @Override
+    protected int getHelpResource() {
+        return R.string.help_uri_process_stats_apps;
+    }
+
+    @Override
     public void onSaveInstanceState(Bundle outState) {
         super.onSaveInstanceState(outState);
     }
diff --git a/src/com/android/settings/bluetooth/BluetoothDeviceNamePreferenceController.java b/src/com/android/settings/bluetooth/BluetoothDeviceNamePreferenceController.java
index bd771e7..f156a5d 100644
--- a/src/com/android/settings/bluetooth/BluetoothDeviceNamePreferenceController.java
+++ b/src/com/android/settings/bluetooth/BluetoothDeviceNamePreferenceController.java
@@ -24,10 +24,8 @@
 import android.support.annotation.VisibleForTesting;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceScreen;
-import android.text.Spannable;
-import android.text.SpannableString;
+import android.text.BidiFormatter;
 import android.text.TextUtils;
-import android.text.style.ForegroundColorSpan;
 import android.util.Log;
 
 import com.android.settings.R;
@@ -48,11 +46,11 @@
 
     public static final String KEY_DEVICE_NAME = "device_name";
 
-    private final int mAccentColor;
 
+    @VisibleForTesting
+    Preference mPreference;
     private LocalBluetoothManager mLocalManager;
     private LocalBluetoothAdapter mLocalAdapter;
-    private Preference mPreference;
 
     public BluetoothDeviceNamePreferenceController(Context context, Lifecycle lifecycle) {
         this(context, (LocalBluetoothAdapter) null);
@@ -69,13 +67,12 @@
     @VisibleForTesting
     BluetoothDeviceNamePreferenceController(Context context, LocalBluetoothAdapter localAdapter) {
         super(context);
-        mAccentColor = com.android.settingslib.Utils.getColorAccent(context);
         mLocalAdapter = localAdapter;
     }
 
     @Override
     public void displayPreference(PreferenceScreen screen) {
-        mPreference = screen.findPreference(KEY_DEVICE_NAME);
+        mPreference = screen.findPreference(getPreferenceKey());
         super.displayPreference(screen);
     }
 
@@ -132,12 +129,10 @@
             // TODO: show error message in preference subtitle
             return;
         }
-        final Spannable spannableName = new SpannableString(deviceName);
-        spannableName.setSpan(new ForegroundColorSpan(mAccentColor), 0,
-                spannableName.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
         final CharSequence summary = TextUtils.expandTemplate(
-                mContext.getText(R.string.bluetooth_device_name_summary), spannableName);
-
+                mContext.getText(R.string.bluetooth_device_name_summary),
+                BidiFormatter.getInstance().unicodeWrap(deviceName));
+        preference.setSelectable(false);
         preference.setSummary(summary);
     }
 
diff --git a/src/com/android/settings/bluetooth/Utils.java b/src/com/android/settings/bluetooth/Utils.java
index b370c11..26edd84 100755
--- a/src/com/android/settings/bluetooth/Utils.java
+++ b/src/com/android/settings/bluetooth/Utils.java
@@ -169,7 +169,7 @@
                                     R.string.bluetooth_talkback_input_peripheral));
 
                 case BluetoothClass.Device.Major.IMAGING:
-                    return new Pair<Integer, String>(R.drawable.ic_bt_imaging,
+                    return new Pair<Integer, String>(R.drawable.ic_settings_print,
                             r.getString(R.string.bluetooth_talkback_imaging));
 
                 default:
diff --git a/src/com/android/settings/dashboard/DashboardSummary.java b/src/com/android/settings/dashboard/DashboardSummary.java
index 809b83d..4d2bd66 100644
--- a/src/com/android/settings/dashboard/DashboardSummary.java
+++ b/src/com/android/settings/dashboard/DashboardSummary.java
@@ -40,6 +40,7 @@
 import com.android.settings.dashboard.suggestions.SuggestionFeatureProvider;
 import com.android.settings.dashboard.suggestions.SuggestionsChecks;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.widget.ActionBarShadowController;
 import com.android.settingslib.drawer.CategoryKey;
 import com.android.settingslib.drawer.DashboardCategory;
 import com.android.settingslib.drawer.SettingsDrawerActivity;
@@ -192,12 +193,14 @@
         mDashboard.setHasFixedSize(true);
         mDashboard.addItemDecoration(new DashboardDecorator(getContext()));
         mDashboard.setListener(this);
-        Log.d(TAG, "adapter created");
         mAdapter = new DashboardAdapter(getContext(), bundle, mConditionManager.getConditions(),
             mSuggestionParser, this /* SuggestionDismissController.Callback */);
         mDashboard.setAdapter(mAdapter);
         mDashboard.setItemAnimator(new DashboardItemAnimator());
         mSummaryLoader.setSummaryConsumer(mAdapter);
+        ActionBarShadowController.attachToRecyclerView(
+                getActivity().findViewById(R.id.search_bar_container), getLifecycle(), mDashboard);
+
         if (DEBUG_TIMING) {
             Log.d(TAG, "onViewCreated took "
                     + (System.currentTimeMillis() - startTime) + " ms");
diff --git a/src/com/android/settings/dashboard/conditional/CellularDataCondition.java b/src/com/android/settings/dashboard/conditional/CellularDataCondition.java
index 6842422..64d263f 100644
--- a/src/com/android/settings/dashboard/conditional/CellularDataCondition.java
+++ b/src/com/android/settings/dashboard/conditional/CellularDataCondition.java
@@ -44,7 +44,7 @@
             setActive(false);
             return;
         }
-        setActive(!telephony.getDataEnabled());
+        setActive(!telephony.isDataEnabled());
     }
 
     @Override
diff --git a/src/com/android/settings/dashboard/conditional/ConditionAdapter.java b/src/com/android/settings/dashboard/conditional/ConditionAdapter.java
index 5a12f9d..eb768e5 100644
--- a/src/com/android/settings/dashboard/conditional/ConditionAdapter.java
+++ b/src/com/android/settings/dashboard/conditional/ConditionAdapter.java
@@ -70,7 +70,7 @@
 
         @Override
         public int getSwipeDirs(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
-            return viewHolder.getItemViewType() == R.layout.condition_tile_new_ui
+            return viewHolder.getItemViewType() == R.layout.condition_tile
                     ? super.getSwipeDirs(recyclerView, viewHolder) : 0;
         }
 
@@ -121,7 +121,7 @@
 
     @Override
     public int getItemViewType(int position) {
-        return R.layout.condition_tile_new_ui;
+        return R.layout.condition_tile;
     }
 
     @Override
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java b/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
index 3a6582f..7a2ab2d 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
@@ -115,8 +115,8 @@
     public int getItemViewType(int position) {
         Tile suggestion = getSuggestion(position);
         return suggestion.remoteViews != null
-                ? R.layout.suggestion_tile_card
-                : R.layout.suggestion_tile_new_ui;
+                ? R.layout.suggestion_tile_remote_container
+                : R.layout.suggestion_tile;
     }
 
     @Override
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionDismissController.java b/src/com/android/settings/dashboard/suggestions/SuggestionDismissController.java
index 618b6df..100c955 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionDismissController.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionDismissController.java
@@ -66,8 +66,8 @@
     @Override
     public int getSwipeDirs(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
         final int layoutId = viewHolder.getItemViewType();
-        if (layoutId == R.layout.suggestion_tile_new_ui
-                || layoutId == R.layout.suggestion_tile_card) {
+        if (layoutId == R.layout.suggestion_tile
+                || layoutId == R.layout.suggestion_tile_remote_container) {
             // Only return swipe direction for suggestion tiles. All other types are not swipeable.
             return super.getSwipeDirs(recyclerView, viewHolder);
         }
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
index d9feae9..2171c2a 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
@@ -25,7 +25,6 @@
 import android.support.annotation.NonNull;
 import android.util.Log;
 
-import com.android.internal.hardware.AmbientDisplayConfiguration;
 import com.android.internal.logging.nano.MetricsProto;
 import com.android.settings.Settings.AmbientDisplayPickupSuggestionActivity;
 import com.android.settings.Settings.AmbientDisplaySuggestionActivity;
@@ -54,7 +53,6 @@
 
     private final SuggestionRanker mSuggestionRanker;
     private final MetricsFeatureProvider mMetricsFeatureProvider;
-    private final AmbientDisplayConfiguration mAmbientDisplayConfig;
 
     @Override
     public boolean isSmartSuggestionEnabled(Context context) {
@@ -96,7 +94,6 @@
                 new SuggestionFeaturizer(new EventStore(appContext)));
         mMetricsFeatureProvider = FeatureFactory.getFactory(appContext)
                 .getMetricsFeatureProvider();
-        mAmbientDisplayConfig = new AmbientDisplayConfiguration(appContext);
     }
 
     @Override
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionsChecks.java b/src/com/android/settings/dashboard/suggestions/SuggestionsChecks.java
index 3e85d2c..6ff0413 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionsChecks.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionsChecks.java
@@ -65,12 +65,14 @@
         } else if (className.equals(WifiCallingSuggestionActivity.class.getName())) {
             return isWifiCallingUnavailableOrEnabled();
         } else if (className.equals(FingerprintSuggestionActivity.class.getName())) {
-            return isNotSingleFingerprintEnrolled() || !isFingerprintEnabled();
+            return !Utils.hasFingerprintHardware(mContext) || !isFingerprintEnabled()
+                    || isNotSingleFingerprintEnrolled();
         } else if (className.equals(ScreenLockSuggestionActivity.class.getName())) {
             return isDeviceSecured();
         } else if (className.equals(FingerprintEnrollSuggestionActivity.class.getName())) {
-            FingerprintManager manager = Utils.getFingerprintManagerOrNull(mContext);
-            if (manager == null || !isFingerprintEnabled()) {
+            final FingerprintManager manager = Utils.getFingerprintManagerOrNull(mContext);
+            if (manager == null || !isFingerprintEnabled()
+                    || !Utils.hasFingerprintHardware(mContext)) {
                 return true;
             }
             return manager.hasEnrolledFingerprints();
diff --git a/src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceController.java b/src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceController.java
index 5f97608..e062276 100644
--- a/src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceController.java
+++ b/src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceController.java
@@ -15,21 +15,26 @@
  */
 package com.android.settings.display;
 
-import static android.provider.Settings.Secure.DOZE_ALWAYS_ON;
-
-
 import android.content.Context;
+import android.content.Intent;
 import android.os.UserHandle;
 import android.provider.Settings;
 import android.support.v14.preference.SwitchPreference;
 import android.support.v7.preference.Preference;
 
 import com.android.internal.hardware.AmbientDisplayConfiguration;
+import com.android.settings.R;
 import com.android.settings.core.PreferenceController;
+import com.android.settings.search.DatabaseIndexingUtils;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 
 public class AmbientDisplayAlwaysOnPreferenceController extends PreferenceController
         implements Preference.OnPreferenceChangeListener {
 
+    private final int ON = 1;
+    private final int OFF = 0;
+
     private static final String KEY_ALWAYS_ON = "ambient_display_always_on";
     private static final int MY_USER = UserHandle.myUserId();
 
@@ -59,8 +64,9 @@
 
     @Override
     public boolean onPreferenceChange(Preference preference, Object newValue) {
-        int enabled = (boolean) newValue ? 1 : 0;
-        Settings.Secure.putInt(mContext.getContentResolver(), DOZE_ALWAYS_ON, enabled);
+        int enabled = (boolean) newValue ? ON : OFF;
+        Settings.Secure.putInt(
+                mContext.getContentResolver(), Settings.Secure.DOZE_ALWAYS_ON, enabled);
         if (mCallback != null) {
             mCallback.onPreferenceChanged();
         }
@@ -71,4 +77,14 @@
     public boolean isAvailable() {
         return mConfig.alwaysOnAvailable();
     }
+
+    @Override
+    public ResultPayload getResultPayload() {
+        final Intent intent = DatabaseIndexingUtils.buildSubsettingIntent(mContext,
+                AmbientDisplaySettings.class.getName(), KEY_ALWAYS_ON,
+                mContext.getString(R.string.ambient_display_screen_title));
+
+        return new InlineSwitchPayload(Settings.Secure.DOZE_ALWAYS_ON,
+                ResultPayload.SettingsSource.SECURE, ON, intent, isAvailable());
+    }
 }
diff --git a/src/com/android/settings/display/BrightnessLevelPreferenceController.java b/src/com/android/settings/display/BrightnessLevelPreferenceController.java
index 3436d2d..a8ad8c6 100644
--- a/src/com/android/settings/display/BrightnessLevelPreferenceController.java
+++ b/src/com/android/settings/display/BrightnessLevelPreferenceController.java
@@ -142,7 +142,7 @@
             final float value = Settings.System.getFloat(mContentResolver,
                     System.SCREEN_AUTO_BRIGHTNESS_ADJ, 0);
             // auto brightness is between -1 and 1
-            return ((value + 1)) / 2;
+            return getPercentage(value, -1, 1);
         }
         final double value = Settings.System.getInt(mContentResolver, System.SCREEN_BRIGHTNESS,
                 mMinBrightness);
@@ -150,6 +150,12 @@
     }
 
     private double getPercentage(double value, int min, int max) {
+        if (value > max) {
+            return 1.0;
+        }
+        if (value < min) {
+            return 0.0;
+        }
         return (value - min) / (max - min);
     }
 
diff --git a/src/com/android/settings/fuelgauge/BatteryBroadcastReceiver.java b/src/com/android/settings/fuelgauge/BatteryBroadcastReceiver.java
index 9d37333..f7a2b9a 100644
--- a/src/com/android/settings/fuelgauge/BatteryBroadcastReceiver.java
+++ b/src/com/android/settings/fuelgauge/BatteryBroadcastReceiver.java
@@ -50,11 +50,7 @@
 
     @Override
     public void onReceive(Context context, Intent intent) {
-        String action = intent.getAction();
-        if (mBatteryListener != null && Intent.ACTION_BATTERY_CHANGED.equals(action)
-                && updateBatteryStatus(intent)) {
-            mBatteryListener.onBatteryChanged();
-        }
+        updateBatteryStatus(intent, false /* forceUpdate */);
     }
 
     public void setBatteryChangedListener(OnBatteryChangedListener lsn) {
@@ -62,26 +58,28 @@
     }
 
     public void register() {
-        mContext.registerReceiver(this,
+        final Intent intent = mContext.registerReceiver(this,
                 new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
+        updateBatteryStatus(intent, true /* forceUpdate */);
     }
 
     public void unRegister() {
         mContext.unregisterReceiver(this);
     }
 
-    private boolean updateBatteryStatus(Intent intent) {
-        if (intent != null) {
+    private void updateBatteryStatus(Intent intent, boolean forceUpdate) {
+        if (intent != null && mBatteryListener != null && Intent.ACTION_BATTERY_CHANGED.equals(
+                intent.getAction())) {
             String batteryLevel = Utils.getBatteryPercentage(intent);
             String batteryStatus = Utils.getBatteryStatus(
                     mContext.getResources(), intent);
-            if (!batteryLevel.equals(mBatteryLevel) || !batteryStatus.equals(mBatteryStatus)) {
+            if (forceUpdate || !batteryLevel.equals(mBatteryLevel) || !batteryStatus.equals(
+                    mBatteryStatus)) {
                 mBatteryLevel = batteryLevel;
                 mBatteryStatus = batteryStatus;
-                return true;
+                mBatteryListener.onBatteryChanged();
             }
         }
-        return false;
     }
 
 }
\ No newline at end of file
diff --git a/src/com/android/settings/fuelgauge/BatteryHistoryPreference.java b/src/com/android/settings/fuelgauge/BatteryHistoryPreference.java
index a966beb..b944577 100644
--- a/src/com/android/settings/fuelgauge/BatteryHistoryPreference.java
+++ b/src/com/android/settings/fuelgauge/BatteryHistoryPreference.java
@@ -32,6 +32,7 @@
  * subsystem/app type.
  */
 public class BatteryHistoryPreference extends Preference {
+    private static final String TAG = "BatteryHistoryPreference";
 
     private CharSequence mSummary;
     private TextView mSummaryView;
@@ -73,6 +74,7 @@
     @Override
     public void onBindViewHolder(PreferenceViewHolder view) {
         super.onBindViewHolder(view);
+        final long startTime = System.currentTimeMillis();
         if (mBatteryInfo == null) {
             return;
         }
@@ -88,5 +90,6 @@
         UsageView usageView = (UsageView) view.findViewById(R.id.battery_usage);
         usageView.findViewById(R.id.label_group).setAlpha(.7f);
         mBatteryInfo.bindHistory(usageView);
+        BatteryUtils.logRuntime(TAG, "onBindViewHolder", startTime);
     }
 }
diff --git a/src/com/android/settings/fuelgauge/BatteryInfo.java b/src/com/android/settings/fuelgauge/BatteryInfo.java
index 0a9cfd3..a0e56c1 100644
--- a/src/com/android/settings/fuelgauge/BatteryInfo.java
+++ b/src/com/android/settings/fuelgauge/BatteryInfo.java
@@ -136,14 +136,19 @@
 
     public static void getBatteryInfo(final Context context, final Callback callback,
             boolean shortString) {
+        final long startTime = System.currentTimeMillis();
         BatteryStatsHelper statsHelper = new BatteryStatsHelper(context, true);
         statsHelper.create((Bundle) null);
+        BatteryUtils.logRuntime(LOG_TAG, "time to make batteryStatsHelper", startTime);
         BatteryInfo.getBatteryInfo(context, callback, statsHelper, shortString);
     }
 
     public static void getBatteryInfo(final Context context, final Callback callback,
             BatteryStatsHelper statsHelper, boolean shortString) {
-        getBatteryInfo(context, callback, statsHelper.getStats(), shortString);
+        final long startTime = System.currentTimeMillis();
+        BatteryStats stats = statsHelper.getStats();
+        BatteryUtils.logRuntime(LOG_TAG, "time for getStats", startTime);
+        getBatteryInfo(context, callback, stats, shortString);
     }
 
     public static void getBatteryInfo(final Context context, final Callback callback,
@@ -181,7 +186,9 @@
 
             @Override
             protected void onPostExecute(BatteryInfo batteryInfo) {
+                final long startTime = System.currentTimeMillis();
                 callback.onBatteryInfoLoaded(batteryInfo);
+                BatteryUtils.logRuntime(LOG_TAG, "time for callback", startTime);
             }
         }.execute();
     }
diff --git a/src/com/android/settings/fuelgauge/BatteryStatsHelperLoader.java b/src/com/android/settings/fuelgauge/BatteryStatsHelperLoader.java
index bc166c3..b81f282 100644
--- a/src/com/android/settings/fuelgauge/BatteryStatsHelperLoader.java
+++ b/src/com/android/settings/fuelgauge/BatteryStatsHelperLoader.java
@@ -31,12 +31,13 @@
 public class BatteryStatsHelperLoader extends AsyncLoader<BatteryStatsHelper> {
     @VisibleForTesting
     UserManager mUserManager;
-    private Bundle mBundle;
+    @VisibleForTesting
+    BatteryUtils mBatteryUtils;
 
-    public BatteryStatsHelperLoader(Context context, Bundle bundle) {
+    public BatteryStatsHelperLoader(Context context) {
         super(context);
-        mBundle = bundle;
         mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE);
+        mBatteryUtils = BatteryUtils.getInstance(context);
     }
 
     @Override
@@ -44,9 +45,8 @@
         Context context = getContext();
         final BatteryStatsHelper statsHelper = new BatteryStatsHelper(context,
                 true /* collectBatteryBroadcast */);
+        mBatteryUtils.initBatteryStatsHelper(statsHelper, null /* bundle */, mUserManager);
 
-        BatteryUtils.getInstance(context).initBatteryStatsHelper(statsHelper, mBundle,
-                mUserManager);
         return statsHelper;
     }
 
@@ -55,5 +55,4 @@
 
     }
 
-
 }
diff --git a/src/com/android/settings/fuelgauge/BatteryUtils.java b/src/com/android/settings/fuelgauge/BatteryUtils.java
index e98ed82..a041543 100644
--- a/src/com/android/settings/fuelgauge/BatteryUtils.java
+++ b/src/com/android/settings/fuelgauge/BatteryUtils.java
@@ -370,6 +370,7 @@
     public void initBatteryStatsHelper(BatteryStatsHelper statsHelper, Bundle bundle,
             UserManager userManager) {
         statsHelper.create(bundle);
+        statsHelper.clearStats();
         statsHelper.refreshStats(BatteryStats.STATS_SINCE_CHARGED, userManager.getUserProfiles());
     }
 
diff --git a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
index 90344ce..712b9ad 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
@@ -167,6 +167,7 @@
 
     @Override
     protected void refreshUi() {
+        final long startTime = System.currentTimeMillis();
         final Context context = getContext();
         if (context == null) {
             return;
@@ -186,6 +187,7 @@
         }
 
         BatteryEntry.startRequestQueue();
+        BatteryUtils.logRuntime(TAG, "refreshUI", startTime);
     }
 
     @VisibleForTesting
diff --git a/src/com/android/settings/fuelgauge/PowerUsageBase.java b/src/com/android/settings/fuelgauge/PowerUsageBase.java
index 060abdd..88edb7a 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageBase.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageBase.java
@@ -37,6 +37,7 @@
     // +1 to allow ordering for PowerUsageSummary.
     @VisibleForTesting
     static final int MENU_STATS_REFRESH = Menu.FIRST + 1;
+    private static final String TAG = "PowerUsageBase";
 
     protected BatteryStatsHelper mStatsHelper;
     protected UserManager mUm;
@@ -82,19 +83,6 @@
         mBatteryBroadcastReceiver.unRegister();
     }
 
-    @Override
-    public void onStop() {
-        super.onStop();
-    }
-
-    @Override
-    public void onDestroy() {
-        super.onDestroy();
-        if (getActivity().isChangingConfigurations()) {
-            mStatsHelper.storeState();
-        }
-    }
-
     protected void restartBatteryStatsLoader() {
         getLoaderManager().restartLoader(0, Bundle.EMPTY, this);
     }
@@ -102,13 +90,15 @@
     protected abstract void refreshUi();
 
     protected void updatePreference(BatteryHistoryPreference historyPref) {
+        final long startTime = System.currentTimeMillis();
         historyPref.setStats(mStatsHelper);
+        BatteryUtils.logRuntime(TAG, "updatePreference", startTime);
     }
 
     @Override
     public Loader<BatteryStatsHelper> onCreateLoader(int id,
             Bundle args) {
-        return new BatteryStatsHelperLoader(getContext(), args);
+        return new BatteryStatsHelperLoader(getContext());
     }
 
     @Override
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index 963dbeb..b10a1df 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -231,13 +231,7 @@
 
         initFeatureProvider();
         mBatteryLayoutPref = (LayoutPreference) findPreference(KEY_BATTERY_HEADER);
-        View header = mBatteryLayoutPref.findViewById(R.id.summary1);
-        // Unfortunately setting a long click listener on a means it will no longer pass the regular
-        // click event to the parent, so we have to register a regular click listener as well.
-        if (mPowerFeatureProvider.isEstimateDebugEnabled()) {
-            header.setOnLongClickListener(this);
-            header.setOnClickListener(this);
-        }
+
         mAppListGroup = (PreferenceGroup) findPreference(KEY_APP_LIST);
         mScreenUsagePref = (PowerGaugePreference) findPreference(KEY_SCREEN_USAGE);
         mLastFullChargePref = (PowerGaugePreference) findPreference(
@@ -528,7 +522,7 @@
             return;
         }
 
-        initAnomalyDetectionIfPossible();
+        restartAnomalyDetectionIfPossible();
 
         // reload BatteryInfo and updateUI
         restartBatteryInfoLoader();
@@ -653,9 +647,9 @@
     }
 
     @VisibleForTesting
-    void initAnomalyDetectionIfPossible() {
+    void restartAnomalyDetectionIfPossible() {
         if (getAnomalyDetectionPolicy().isAnomalyDetectionEnabled()) {
-            getLoaderManager().initLoader(ANOMALY_LOADER, Bundle.EMPTY, mAnomalyLoaderCallbacks);
+            getLoaderManager().restartLoader(ANOMALY_LOADER, Bundle.EMPTY, mAnomalyLoaderCallbacks);
         }
     }
 
@@ -772,6 +766,14 @@
     void restartBatteryInfoLoader() {
         getLoaderManager().restartLoader(BATTERY_INFO_LOADER, Bundle.EMPTY,
                 mBatteryInfoLoaderCallbacks);
+        if (mPowerFeatureProvider.isEstimateDebugEnabled()) {
+            // Unfortunately setting a long click listener on a view means it will no
+            // longer pass the regular click event to the parent, so we have to register
+            // a regular click listener as well.
+            View header = mBatteryLayoutPref.findViewById(R.id.summary1);
+            header.setOnLongClickListener(this);
+            header.setOnClickListener(this);
+        }
     }
 
     private static List<BatterySipper> getFakeStats() {
diff --git a/src/com/android/settings/fuelgauge/anomaly/Anomaly.java b/src/com/android/settings/fuelgauge/anomaly/Anomaly.java
index dba964f..b070b26 100644
--- a/src/com/android/settings/fuelgauge/anomaly/Anomaly.java
+++ b/src/com/android/settings/fuelgauge/anomaly/Anomaly.java
@@ -68,6 +68,8 @@
     public final int uid;
     public final int targetSdkVersion;
     public final long wakelockTimeMs;
+    public final long bluetoothScanningTimeMs;
+    public final int wakeupAlarmCount;
     /**
      * {@code true} if background restriction is enabled
      *
@@ -88,6 +90,8 @@
         wakelockTimeMs = builder.mWakeLockTimeMs;
         targetSdkVersion = builder.mTargetSdkVersion;
         backgroundRestrictionEnabled = builder.mBgRestrictionEnabled;
+        bluetoothScanningTimeMs = builder.mBluetoothScanningTimeMs;
+        wakeupAlarmCount = builder.mWakeupAlarmCount;
     }
 
     private Anomaly(Parcel in) {
@@ -98,6 +102,8 @@
         wakelockTimeMs = in.readLong();
         targetSdkVersion = in.readInt();
         backgroundRestrictionEnabled = in.readBoolean();
+        wakeupAlarmCount = in.readInt();
+        bluetoothScanningTimeMs = in.readLong();
     }
 
     @Override
@@ -114,6 +120,8 @@
         dest.writeLong(wakelockTimeMs);
         dest.writeInt(targetSdkVersion);
         dest.writeBoolean(backgroundRestrictionEnabled);
+        dest.writeInt(wakeupAlarmCount);
+        dest.writeLong(bluetoothScanningTimeMs);
     }
 
     @Override
@@ -132,13 +140,36 @@
                 && TextUtils.equals(displayName, other.displayName)
                 && TextUtils.equals(packageName, other.packageName)
                 && targetSdkVersion == other.targetSdkVersion
-                && backgroundRestrictionEnabled == other.backgroundRestrictionEnabled;
+                && backgroundRestrictionEnabled == other.backgroundRestrictionEnabled
+                && wakeupAlarmCount == other.wakeupAlarmCount
+                && bluetoothScanningTimeMs == other.bluetoothScanningTimeMs;
     }
 
     @Override
     public int hashCode() {
         return Objects.hash(type, uid, displayName, packageName, wakelockTimeMs, targetSdkVersion,
-                backgroundRestrictionEnabled);
+                backgroundRestrictionEnabled, wakeupAlarmCount, bluetoothScanningTimeMs);
+    }
+
+    @Override
+    public String toString() {
+        return "type=" + toAnomalyTypeText(type) + " uid=" + uid + " package=" + packageName +
+                " displayName=" + displayName + " wakelockTimeMs=" + wakelockTimeMs +
+                " wakeupAlarmCount=" + wakeupAlarmCount + " bluetoothTimeMs="
+                + bluetoothScanningTimeMs;
+    }
+
+    private String toAnomalyTypeText(@AnomalyType int type) {
+        switch (type) {
+            case AnomalyType.WAKEUP_ALARM:
+                return "wakeupAlarm";
+            case AnomalyType.WAKE_LOCK:
+                return "wakelock";
+            case AnomalyType.BLUETOOTH_SCAN:
+                return "unoptimizedBluetoothScan";
+        }
+
+        return "";
     }
 
     public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
@@ -160,6 +191,8 @@
         private String mPackageName;
         private long mWakeLockTimeMs;
         private boolean mBgRestrictionEnabled;
+        private int mWakeupAlarmCount;
+        private long mBluetoothScanningTimeMs;
 
         public Builder setType(@AnomalyType int type) {
             mType = type;
@@ -196,6 +229,16 @@
             return this;
         }
 
+        public Builder setWakeupAlarmCount(int wakeupAlarmCount) {
+            mWakeupAlarmCount = wakeupAlarmCount;
+            return this;
+        }
+
+        public Builder setBluetoothScanningTimeMs(long bluetoothScanningTimeMs) {
+            mBluetoothScanningTimeMs = bluetoothScanningTimeMs;
+            return this;
+        }
+
         public Anomaly build() {
             return new Anomaly(this);
         }
diff --git a/src/com/android/settings/fuelgauge/anomaly/AnomalyLoader.java b/src/com/android/settings/fuelgauge/anomaly/AnomalyLoader.java
index 03d4d23..eb125ad 100644
--- a/src/com/android/settings/fuelgauge/anomaly/AnomalyLoader.java
+++ b/src/com/android/settings/fuelgauge/anomaly/AnomalyLoader.java
@@ -25,8 +25,11 @@
 import android.util.Log;
 
 import com.android.internal.os.BatteryStatsHelper;
+import com.android.internal.util.ArrayUtils;
 import com.android.settings.utils.AsyncLoader;
 
+import java.io.FileDescriptor;
+import java.io.PrintWriter;
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/src/com/android/settings/fuelgauge/anomaly/checker/BluetoothScanAnomalyDetector.java b/src/com/android/settings/fuelgauge/anomaly/checker/BluetoothScanAnomalyDetector.java
index f66c61c..9fb4496 100644
--- a/src/com/android/settings/fuelgauge/anomaly/checker/BluetoothScanAnomalyDetector.java
+++ b/src/com/android/settings/fuelgauge/anomaly/checker/BluetoothScanAnomalyDetector.java
@@ -93,6 +93,7 @@
                         .setType(Anomaly.AnomalyType.BLUETOOTH_SCAN)
                         .setDisplayName(displayName)
                         .setPackageName(packageName)
+                        .setBluetoothScanningTimeMs(bluetoothTimeMs)
                         .build();
 
                 if (mAnomalyUtils.getAnomalyAction(anomaly).isActionActive(anomaly)) {
diff --git a/src/com/android/settings/fuelgauge/anomaly/checker/WakeLockAnomalyDetector.java b/src/com/android/settings/fuelgauge/anomaly/checker/WakeLockAnomalyDetector.java
index 959ceb5..c2bcd9a 100644
--- a/src/com/android/settings/fuelgauge/anomaly/checker/WakeLockAnomalyDetector.java
+++ b/src/com/android/settings/fuelgauge/anomaly/checker/WakeLockAnomalyDetector.java
@@ -91,17 +91,13 @@
                 final String packageName = mBatteryUtils.getPackageName(uid.getUid());
                 final CharSequence displayName = Utils.getApplicationLabel(mContext,
                         packageName);
-                final int targetSdkVersion = mBatteryUtils.getTargetSdkVersion(packageName);
 
                 Anomaly anomaly = new Anomaly.Builder()
                         .setUid(uid.getUid())
                         .setType(Anomaly.AnomalyType.WAKE_LOCK)
                         .setDisplayName(displayName)
                         .setPackageName(packageName)
-                        .setTargetSdkVersion(targetSdkVersion)
-                        .setBackgroundRestrictionEnabled(
-                                mBatteryUtils.isBackgroundRestrictionEnabled(targetSdkVersion,
-                                        uid.getUid(), packageName))
+                        .setWakeLockTimeMs(backgroundDurationMs)
                         .build();
 
                 if (mAnomalyUtils.getAnomalyAction(anomaly).isActionActive(anomaly)) {
diff --git a/src/com/android/settings/fuelgauge/anomaly/checker/WakeupAlarmAnomalyDetector.java b/src/com/android/settings/fuelgauge/anomaly/checker/WakeupAlarmAnomalyDetector.java
index f6ff7aa..8823a17 100644
--- a/src/com/android/settings/fuelgauge/anomaly/checker/WakeupAlarmAnomalyDetector.java
+++ b/src/com/android/settings/fuelgauge/anomaly/checker/WakeupAlarmAnomalyDetector.java
@@ -84,17 +84,24 @@
                     continue;
                 }
 
-                final int wakeups = getWakeupAlarmCountFromUid(uid);
-                if ((wakeups / totalRunningHours) > mWakeupAlarmThreshold) {
+                final int wakeupAlarmCount = (int) (getWakeupAlarmCountFromUid(uid)
+                        / totalRunningHours);
+                if (wakeupAlarmCount > mWakeupAlarmThreshold) {
                     final String packageName = mBatteryUtils.getPackageName(uid.getUid());
                     final CharSequence displayName = Utils.getApplicationLabel(mContext,
                             packageName);
+                    final int targetSdkVersion = mBatteryUtils.getTargetSdkVersion(packageName);
 
                     Anomaly anomaly = new Anomaly.Builder()
                             .setUid(uid.getUid())
                             .setType(Anomaly.AnomalyType.WAKEUP_ALARM)
                             .setDisplayName(displayName)
                             .setPackageName(packageName)
+                            .setTargetSdkVersion(targetSdkVersion)
+                            .setBackgroundRestrictionEnabled(
+                                    mBatteryUtils.isBackgroundRestrictionEnabled(targetSdkVersion,
+                                            uid.getUid(), packageName))
+                            .setWakeupAlarmCount(wakeupAlarmCount)
                             .build();
 
                     if (mAnomalyUtils.getAnomalyAction(anomaly).isActionActive(anomaly)) {
diff --git a/src/com/android/settings/gestures/AssistGesturePreferenceController.java b/src/com/android/settings/gestures/AssistGesturePreferenceController.java
index a3d4ec1..da25ce1 100644
--- a/src/com/android/settings/gestures/AssistGesturePreferenceController.java
+++ b/src/com/android/settings/gestures/AssistGesturePreferenceController.java
@@ -17,6 +17,7 @@
 package com.android.settings.gestures;
 
 import android.content.Context;
+import android.content.Intent;
 import android.provider.Settings;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceScreen;
@@ -25,12 +26,18 @@
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.settings.R;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.search.DatabaseIndexingUtils;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 import com.android.settingslib.core.lifecycle.events.OnResume;
 
 public class AssistGesturePreferenceController extends GesturePreferenceController
         implements OnResume {
 
+    private final int ON = 1;
+    private final int OFF = 0;
+
     private static final String PREF_KEY_VIDEO = "gesture_assist_video";
     private final String mAssistGesturePrefKey;
 
@@ -136,7 +143,7 @@
     public boolean onPreferenceChange(Preference preference, Object newValue) {
         final boolean enabled = (boolean) newValue;
         Settings.Secure.putInt(mContext.getContentResolver(),
-                Settings.Secure.ASSIST_GESTURE_ENABLED, enabled ? 1 : 0);
+                Settings.Secure.ASSIST_GESTURE_ENABLED, enabled ? ON : OFF);
         updateState(preference);
         return true;
     }
@@ -157,4 +164,14 @@
                 Settings.Secure.ASSIST_GESTURE_ENABLED, 1);
         return assistGestureEnabled != 0;
     }
+
+    @Override
+    public ResultPayload getResultPayload() {
+        final Intent intent = DatabaseIndexingUtils.buildSubsettingIntent(mContext,
+                AssistGestureSettings.class.getName(), mAssistGesturePrefKey,
+                mContext.getString(R.string.display_settings));
+
+        return new InlineSwitchPayload(Settings.Secure.ASSIST_GESTURE_ENABLED,
+                ResultPayload.SettingsSource.SECURE, ON, intent, isAvailable());
+    }
 }
diff --git a/src/com/android/settings/gestures/DoubleTapPowerPreferenceController.java b/src/com/android/settings/gestures/DoubleTapPowerPreferenceController.java
index 0cfa007..8d4116a 100644
--- a/src/com/android/settings/gestures/DoubleTapPowerPreferenceController.java
+++ b/src/com/android/settings/gestures/DoubleTapPowerPreferenceController.java
@@ -17,15 +17,24 @@
 package com.android.settings.gestures;
 
 import android.content.Context;
+import android.content.Intent;
 import android.content.SharedPreferences;
 import android.provider.Settings;
 import android.support.v7.preference.Preference;
 
+import com.android.settings.DisplaySettings;
+import com.android.settings.R;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.search.DatabaseIndexingUtils;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 
 public class DoubleTapPowerPreferenceController extends GesturePreferenceController {
 
+    private final int ON = 0;
+    private final int OFF = 1;
+
     private static final String PREF_KEY_VIDEO = "gesture_double_tap_power_video";
     private final String mDoubleTapPowerKey;
 
@@ -63,7 +72,7 @@
     public boolean onPreferenceChange(Preference preference, Object newValue) {
         boolean enabled = (boolean) newValue;
         Settings.Secure.putInt(mContext.getContentResolver(),
-                Settings.Secure.CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED, enabled ? 0 : 1);
+                Settings.Secure.CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED, enabled ? ON : OFF);
         return true;
     }
 
@@ -73,4 +82,14 @@
                 Settings.Secure.CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED, 0);
         return cameraDisabled == 0;
     }
+
+    @Override
+    public ResultPayload getResultPayload() {
+        final Intent intent = DatabaseIndexingUtils.buildSubsettingIntent(mContext,
+                DoubleTapPowerSettings.class.getName(), mDoubleTapPowerKey,
+                mContext.getString(R.string.display_settings));
+
+        return new InlineSwitchPayload(Settings.Secure.CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED,
+                ResultPayload.SettingsSource.SECURE, ON, intent, isAvailable());
+    }
 }
diff --git a/src/com/android/settings/gestures/DoubleTapScreenPreferenceController.java b/src/com/android/settings/gestures/DoubleTapScreenPreferenceController.java
index e671f60..4de6e14 100644
--- a/src/com/android/settings/gestures/DoubleTapScreenPreferenceController.java
+++ b/src/com/android/settings/gestures/DoubleTapScreenPreferenceController.java
@@ -18,16 +18,24 @@
 
 import android.annotation.UserIdInt;
 import android.content.Context;
+import android.content.Intent;
 import android.content.SharedPreferences;
 import android.provider.Settings;
 import android.support.v7.preference.Preference;
 
 import com.android.internal.hardware.AmbientDisplayConfiguration;
+import com.android.settings.R;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.search.DatabaseIndexingUtils;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 
 public class DoubleTapScreenPreferenceController extends GesturePreferenceController {
 
+    private final int ON = 1;
+    private final int OFF = 0;
+
     private static final String PREF_KEY_VIDEO = "gesture_double_tap_screen_video";
     private final String mDoubleTapScreenPrefKey;
 
@@ -63,7 +71,7 @@
     public boolean onPreferenceChange(Preference preference, Object newValue) {
         final boolean enabled = (boolean) newValue;
         Settings.Secure.putInt(mContext.getContentResolver(),
-                Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP, enabled ? 1 : 0);
+                Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP, enabled ? ON : OFF);
         return true;
     }
 
@@ -76,4 +84,14 @@
     protected boolean isSwitchPrefEnabled() {
         return mAmbientConfig.pulseOnDoubleTapEnabled(mUserId);
     }
+
+    @Override
+    public ResultPayload getResultPayload() {
+        final Intent intent = DatabaseIndexingUtils.buildSubsettingIntent(mContext,
+                DoubleTapScreenSettings.class.getName(), mDoubleTapScreenPrefKey,
+                mContext.getString(R.string.display_settings));
+
+        return new InlineSwitchPayload(Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP,
+                ResultPayload.SettingsSource.SECURE, ON, intent, isAvailable());
+    }
 }
diff --git a/src/com/android/settings/gestures/DoubleTwistPreferenceController.java b/src/com/android/settings/gestures/DoubleTwistPreferenceController.java
index c07a37b..ac050be 100644
--- a/src/com/android/settings/gestures/DoubleTwistPreferenceController.java
+++ b/src/com/android/settings/gestures/DoubleTwistPreferenceController.java
@@ -30,11 +30,13 @@
 
 import com.android.settings.R;
 import com.android.settings.Utils;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 
 public class DoubleTwistPreferenceController extends GesturePreferenceController {
 
+    private final int ON = 1;
+    private final int OFF = 0;
+
     private static final String PREF_KEY_VIDEO = "gesture_double_twist_video";
     private final String mDoubleTwistPrefKey;
     private final UserManager mUserManager;
@@ -83,7 +85,7 @@
 
     @Override
     public boolean onPreferenceChange(Preference preference, Object newValue) {
-        final int enabled = (boolean) newValue ? 1 : 0;
+        final int enabled = (boolean) newValue ? ON : OFF;
         Settings.Secure.putInt(mContext.getContentResolver(),
                 Settings.Secure.CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, enabled);
         final int managedProfileUserId = getManagedProfileUserId();
diff --git a/src/com/android/settings/gestures/PickupGesturePreferenceController.java b/src/com/android/settings/gestures/PickupGesturePreferenceController.java
index 9b36b7c..9a4c846 100644
--- a/src/com/android/settings/gestures/PickupGesturePreferenceController.java
+++ b/src/com/android/settings/gestures/PickupGesturePreferenceController.java
@@ -18,17 +18,24 @@
 
 import android.annotation.UserIdInt;
 import android.content.Context;
+import android.content.Intent;
 import android.content.SharedPreferences;
 import android.provider.Settings;
 import android.support.v7.preference.Preference;
 
 import com.android.internal.hardware.AmbientDisplayConfiguration;
-import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.R;
+import com.android.settings.search.DatabaseIndexingUtils;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 
 public class PickupGesturePreferenceController extends GesturePreferenceController {
 
-    private static final String PREF_VIDEO_KEY = "gesture_pick_up_video";
+    private final int ON = 1;
+    private final int OFF = 0;
+
+    private static final String PREF_KEY_VIDEO = "gesture_pick_up_video";
     private final String mPickUpPrefKey;
 
     private final AmbientDisplayConfiguration mAmbientConfig;
@@ -56,7 +63,7 @@
 
     @Override
     protected String getVideoPrefKey() {
-        return PREF_VIDEO_KEY;
+        return PREF_KEY_VIDEO;
     }
 
     @Override
@@ -73,7 +80,7 @@
     public boolean onPreferenceChange(Preference preference, Object newValue) {
         final boolean enabled = (boolean) newValue;
         Settings.Secure.putInt(mContext.getContentResolver(),
-                Settings.Secure.DOZE_PULSE_ON_PICK_UP, enabled ? 1 : 0);
+                Settings.Secure.DOZE_PULSE_ON_PICK_UP, enabled ? ON : OFF);
         return true;
     }
 
@@ -81,4 +88,14 @@
     public boolean canHandleClicks() {
         return mAmbientConfig.pulseOnPickupCanBeModified(mUserId);
     }
+
+    @Override
+    public ResultPayload getResultPayload() {
+        final Intent intent = DatabaseIndexingUtils.buildSubsettingIntent(mContext,
+                PickupGestureSettings.class.getName(), mPickUpPrefKey,
+                mContext.getString(R.string.display_settings));
+
+        return new InlineSwitchPayload(Settings.Secure.DOZE_PULSE_ON_PICK_UP,
+                ResultPayload.SettingsSource.SECURE, ON, intent, isAvailable());
+    }
 }
diff --git a/src/com/android/settings/gestures/SwipeToNotificationPreferenceController.java b/src/com/android/settings/gestures/SwipeToNotificationPreferenceController.java
index d71c076..05c6461 100644
--- a/src/com/android/settings/gestures/SwipeToNotificationPreferenceController.java
+++ b/src/com/android/settings/gestures/SwipeToNotificationPreferenceController.java
@@ -17,15 +17,23 @@
 package com.android.settings.gestures;
 
 import android.content.Context;
+import android.content.Intent;
 import android.content.SharedPreferences;
 import android.provider.Settings;
 import android.support.v7.preference.Preference;
 
-import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.R;
+import com.android.settings.Utils;
+import com.android.settings.search.DatabaseIndexingUtils;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 
 public class SwipeToNotificationPreferenceController extends GesturePreferenceController {
 
+    private final int ON = 1;
+    private final int OFF = 0;
+
     private static final String PREF_KEY_VIDEO = "gesture_swipe_down_fingerprint_video";
     private final String mSwipeDownFingerPrefKey;
 
@@ -42,7 +50,7 @@
     }
 
     private static boolean isGestureAvailable(Context context) {
-        return context.getResources()
+        return Utils.hasFingerprintHardware(context) && context.getResources()
                 .getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys);
     }
 
@@ -64,14 +72,24 @@
     @Override
     public boolean onPreferenceChange(Preference preference, Object newValue) {
         Settings.Secure.putInt(mContext.getContentResolver(),
-                Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED, (boolean) newValue ? 1 : 0);
+                Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED, (boolean) newValue ? ON : OFF);
         return true;
     }
 
     @Override
     protected boolean isSwitchPrefEnabled() {
         return Settings.Secure.getInt(mContext.getContentResolver(),
-                Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED, 1)
+                Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED, 0)
                 == 1;
     }
+
+    @Override
+    public ResultPayload getResultPayload() {
+        final Intent intent = DatabaseIndexingUtils.buildSubsettingIntent(mContext,
+                SwipeToNotificationSettings.class.getName(), mSwipeDownFingerPrefKey,
+                mContext.getString(R.string.display_settings));
+
+        return new InlineSwitchPayload(Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED,
+                ResultPayload.SettingsSource.SECURE, ON, intent, isAvailable());
+    }
 }
diff --git a/src/com/android/settings/graph/UsageGraph.java b/src/com/android/settings/graph/UsageGraph.java
index b4c4501..5a4a9cd 100644
--- a/src/com/android/settings/graph/UsageGraph.java
+++ b/src/com/android/settings/graph/UsageGraph.java
@@ -29,15 +29,18 @@
 import android.graphics.Shader.TileMode;
 import android.graphics.drawable.Drawable;
 import android.util.AttributeSet;
+import android.util.Log;
 import android.util.SparseIntArray;
 import android.util.TypedValue;
 import android.view.View;
 
+import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settingslib.R;
 
 public class UsageGraph extends View {
 
     private static final int PATH_DELIM = -1;
+    public static final String LOG_TAG = "UsageGraph";
 
     private final Paint mLinePaint;
     private final Paint mFillPaint;
@@ -108,10 +111,12 @@
     }
 
     void setMax(int maxX, int maxY) {
+        final long startTime = System.currentTimeMillis();
         mMaxX = maxX;
         mMaxY = maxY;
         calculateLocalPaths();
         postInvalidate();
+        BatteryUtils.logRuntime(LOG_TAG, "setMax", startTime);
     }
 
     void setDividerLoc(int height) {
@@ -133,6 +138,7 @@
 
     private void addPathAndUpdate(SparseIntArray points, SparseIntArray paths,
             SparseIntArray localPaths) {
+        final long startTime = System.currentTimeMillis();
         for (int i = 0, size = points.size(); i < size; i++) {
             paths.put(points.keyAt(i), points.valueAt(i));
         }
@@ -140,6 +146,7 @@
         paths.put(points.keyAt(points.size() - 1) + 1, PATH_DELIM);
         calculateLocalPaths(paths, localPaths);
         postInvalidate();
+        BatteryUtils.logRuntime(LOG_TAG, "addPathAndUpdate", startTime);
     }
 
     void setAccentColor(int color) {
@@ -151,9 +158,11 @@
 
     @Override
     protected void onSizeChanged(int w, int h, int oldw, int oldh) {
+        final long startTime = System.currentTimeMillis();
         super.onSizeChanged(w, h, oldw, oldh);
         updateGradient();
         calculateLocalPaths();
+        BatteryUtils.logRuntime(LOG_TAG, "onSizeChanged", startTime);
     }
 
     private void calculateLocalPaths() {
@@ -162,6 +171,7 @@
     }
 
     private void calculateLocalPaths(SparseIntArray paths, SparseIntArray localPaths) {
+        final long startTime = System.currentTimeMillis();
         if (getWidth() == 0) {
             return;
         }
@@ -194,6 +204,7 @@
                 localPaths.put(lx, ly);
             }
         }
+        BatteryUtils.logRuntime(LOG_TAG,"calculateLocalPaths", startTime);
     }
 
     private boolean hasDiff(int x1, int x2) {
@@ -220,6 +231,7 @@
 
     @Override
     protected void onDraw(Canvas canvas) {
+        final long startTime = System.currentTimeMillis();
         // Draw lines across the top, middle, and bottom.
         if (mMiddleDividerLoc != 0) {
             drawDivider(0, canvas, mTopDividerTint);
@@ -235,6 +247,7 @@
         drawLinePath(canvas, mLocalProjectedPaths, mDottedPaint);
         drawFilledPath(canvas, mLocalPaths, mFillPaint);
         drawLinePath(canvas, mLocalPaths, mLinePaint);
+        BatteryUtils.logRuntime(LOG_TAG, "onDraw", startTime);
     }
 
     private void drawLinePath(Canvas canvas, SparseIntArray localPaths, Paint paint) {
diff --git a/src/com/android/settings/notification/ZenModeSettings.java b/src/com/android/settings/notification/ZenModeSettings.java
index a23eff9..e6b10c3 100644
--- a/src/com/android/settings/notification/ZenModeSettings.java
+++ b/src/com/android/settings/notification/ZenModeSettings.java
@@ -45,6 +45,7 @@
 
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.settings.R;
+import com.android.settingslib.TwoTargetPreference;
 
 import java.lang.ref.WeakReference;
 import java.util.Arrays;
@@ -171,9 +172,7 @@
                 ? getString(R.string.switch_off_text)
                 : getString(R.string.zen_mode_rule_summary_enabled_combination, mode);
 
-        return isSystemRule ? ruleState
-                : getString(R.string.zen_mode_rule_summary_provider_combination,
-                        providerLabel, ruleState);
+        return ruleState;
     }
 
     private static ManagedServiceSettings.Config getConditionProviderConfig() {
@@ -286,7 +285,7 @@
         return R.string.help_uri_interruptions;
     }
 
-    private class ZenRulePreference extends Preference {
+    private class ZenRulePreference extends TwoTargetPreference {
         final CharSequence mName;
         final String mId;
         final boolean appExists;
@@ -322,8 +321,11 @@
             ComponentName settingsActivity = getSettingsActivity(si);
             setIntent(getRuleIntent(action, settingsActivity, mId));
             setSelectable(settingsActivity != null || isSystemRule);
+        }
 
-            setWidgetLayoutResource(R.layout.zen_rule_widget);
+        @Override
+        protected int getSecondTargetResId() {
+            return R.layout.zen_rule_widget;
         }
 
         @Override
@@ -354,10 +356,10 @@
 
         String getPrioritySettingSummary(Policy policy) {
             String s = mContext.getString(R.string.zen_mode_alarms);
-            s = append(s, isCategoryEnabled(policy, Policy.PRIORITY_CATEGORY_REMINDERS),
+            s = prepend(s, isCategoryEnabled(policy, Policy.PRIORITY_CATEGORY_EVENTS),
+                    R.string.zen_mode_events);
+            s = prepend(s, isCategoryEnabled(policy, Policy.PRIORITY_CATEGORY_REMINDERS),
                 R.string.zen_mode_reminders);
-            s = append(s, isCategoryEnabled(policy, Policy.PRIORITY_CATEGORY_EVENTS),
-                R.string.zen_mode_events);
             if (isCategoryEnabled(policy, Policy.PRIORITY_CATEGORY_MESSAGES)) {
                 if (policy.priorityMessageSenders == Policy.PRIORITY_SENDERS_ANY) {
                     s = append(s, true, R.string.zen_mode_all_messages);
@@ -422,6 +424,15 @@
             return s;
         }
 
+        @VisibleForTesting
+        String prepend(String s, boolean condition, int resId) {
+            if (condition) {
+                return mContext.getString(
+                        R.string.join_many_items_middle, mContext.getString(resId), s);
+            }
+            return s;
+        }
+
         private boolean isCategoryEnabled(Policy policy, int categoryType) {
             return (policy.priorityCategories & categoryType) != 0;
         }
diff --git a/src/com/android/settings/search/DatabaseIndexingManager.java b/src/com/android/settings/search/DatabaseIndexingManager.java
index 6a6c737..d2b2d23 100644
--- a/src/com/android/settings/search/DatabaseIndexingManager.java
+++ b/src/com/android/settings/search/DatabaseIndexingManager.java
@@ -166,18 +166,22 @@
      */
     public void performIndexing() {
         final Intent intent = new Intent(SearchIndexablesContract.PROVIDER_INTERFACE);
-        final List<ResolveInfo> list =
+        final List<ResolveInfo> providers =
                 mContext.getPackageManager().queryIntentContentProviders(intent, 0);
 
-        String localeStr = Locale.getDefault().toString();
-        String fingerprint = Build.FINGERPRINT;
-        final boolean isFullIndex = isFullIndex(localeStr, fingerprint);
+        final String localeStr = Locale.getDefault().toString();
+        final String fingerprint = Build.FINGERPRINT;
+        final String providerVersionedNames =
+                IndexDatabaseHelper.buildProviderVersionedNames(providers);
+
+        final boolean isFullIndex = IndexDatabaseHelper.isFullIndex(mContext, localeStr,
+                fingerprint, providerVersionedNames);
 
         if (isFullIndex) {
             rebuildDatabase();
         }
 
-        for (final ResolveInfo info : list) {
+        for (final ResolveInfo info : providers) {
             if (!DatabaseIndexingUtils.isWellKnownProvider(info, mContext)) {
                 continue;
             }
@@ -192,24 +196,10 @@
 
         updateDatabase(isFullIndex, localeStr);
 
+        //TODO(63922686): Setting indexed should be a single method, not 3 separate setters.
         IndexDatabaseHelper.setLocaleIndexed(mContext, localeStr);
         IndexDatabaseHelper.setBuildIndexed(mContext, fingerprint);
-    }
-
-    /**
-     * Perform a full index on an OTA or when the locale has changed
-     *
-     * @param locale is the default for the device
-     * @param fingerprint id for the current build.
-     * @return true when the locale or build has changed since last index.
-     */
-    @VisibleForTesting
-    boolean isFullIndex(String locale, String fingerprint) {
-        final boolean isLocaleIndexed = IndexDatabaseHelper.getInstance(mContext)
-                .isLocaleAlreadyIndexed(mContext, locale);
-        final boolean isBuildIndexed = IndexDatabaseHelper.getInstance(mContext)
-                .isBuildIndexed(mContext, fingerprint);
-        return !isLocaleIndexed || !isBuildIndexed;
+        IndexDatabaseHelper.setProvidersIndexed(mContext, providerVersionedNames);
     }
 
     /**
@@ -1318,4 +1308,4 @@
             }
         }
     }
-}
\ No newline at end of file
+}
diff --git a/src/com/android/settings/search/DatabaseIndexingUtils.java b/src/com/android/settings/search/DatabaseIndexingUtils.java
index a6f3cb1..40ba7ee 100644
--- a/src/com/android/settings/search/DatabaseIndexingUtils.java
+++ b/src/com/android/settings/search/DatabaseIndexingUtils.java
@@ -174,7 +174,7 @@
      * - have read/write {@link Manifest.permission#READ_SEARCH_INDEXABLES}
      * - be from a privileged package
      */
-    public static boolean isWellKnownProvider(ResolveInfo info, Context context) {
+    static boolean isWellKnownProvider(ResolveInfo info, Context context) {
         final String authority = info.providerInfo.authority;
         final String packageName = info.providerInfo.applicationInfo.packageName;
 
@@ -197,7 +197,22 @@
         return isPrivilegedPackage(packageName, context);
     }
 
-    public static boolean isPrivilegedPackage(String packageName, Context context) {
+    static String normalizeHyphen(String input) {
+        return (input != null) ? input.replaceAll(NON_BREAKING_HYPHEN, HYPHEN) : EMPTY;
+    }
+
+    static String normalizeString(String input) {
+        final String nohyphen = (input != null) ? input.replaceAll(HYPHEN, EMPTY) : EMPTY;
+        final String normalized = Normalizer.normalize(nohyphen, Normalizer.Form.NFD);
+
+        return REMOVE_DIACRITICALS_PATTERN.matcher(normalized).replaceAll("").toLowerCase();
+    }
+
+    static String normalizeKeywords(String input) {
+        return (input != null) ? input.replaceAll(LIST_DELIMITERS, SPACE) : EMPTY;
+    }
+
+    private static boolean isPrivilegedPackage(String packageName, Context context) {
         final PackageManager pm = context.getPackageManager();
         try {
             PackageInfo packInfo = pm.getPackageInfo(packageName, 0);
@@ -207,19 +222,4 @@
             return false;
         }
     }
-
-    public static String normalizeHyphen(String input) {
-        return (input != null) ? input.replaceAll(NON_BREAKING_HYPHEN, HYPHEN) : EMPTY;
-    }
-
-    public static String normalizeString(String input) {
-        final String nohyphen = (input != null) ? input.replaceAll(HYPHEN, EMPTY) : EMPTY;
-        final String normalized = Normalizer.normalize(nohyphen, Normalizer.Form.NFD);
-
-        return REMOVE_DIACRITICALS_PATTERN.matcher(normalized).replaceAll("").toLowerCase();
-    }
-
-    public static String normalizeKeywords(String input) {
-        return (input != null) ? input.replaceAll(LIST_DELIMITERS, SPACE) : EMPTY;
-    }
 }
diff --git a/src/com/android/settings/search/IndexDatabaseHelper.java b/src/com/android/settings/search/IndexDatabaseHelper.java
index 76346ec..d78b611 100644
--- a/src/com/android/settings/search/IndexDatabaseHelper.java
+++ b/src/com/android/settings/search/IndexDatabaseHelper.java
@@ -17,12 +17,17 @@
 package com.android.settings.search;
 
 import android.content.Context;
+import android.content.pm.ResolveInfo;
 import android.database.Cursor;
 import android.database.sqlite.SQLiteDatabase;
 import android.database.sqlite.SQLiteOpenHelper;
 import android.os.Build;
+import android.support.annotation.VisibleForTesting;
+import android.text.TextUtils;
 import android.util.Log;
 
+import java.util.List;
+
 public class IndexDatabaseHelper extends SQLiteOpenHelper {
 
     private static final String TAG = "IndexDatabaseHelper";
@@ -32,6 +37,8 @@
 
     private static final String INDEX = "index";
 
+    private static final String PREF_KEY_INDEXED_PROVIDERS = "indexed_providers";
+
     public interface Tables {
         String TABLE_PREFS_INDEX = "prefs_index";
         String TABLE_SITE_MAP = "site_map";
@@ -245,23 +252,69 @@
         return version;
     }
 
-    public static void clearCachedIndexed(Context context) {
-        context.getSharedPreferences(INDEX, 0).edit().clear().commit();
+    /**
+     * Perform a full index on an OTA or when the locale has changed
+     *
+     * @param locale      is the default for the device
+     * @param fingerprint id for the current build.
+     * @return true when the locale or build has changed since last index.
+     */
+    @VisibleForTesting
+    static boolean isFullIndex(Context context, String locale, String fingerprint,
+            String providerVersionedNames) {
+        final boolean isLocaleIndexed = IndexDatabaseHelper.isLocaleAlreadyIndexed(context, locale);
+        final boolean isBuildIndexed = IndexDatabaseHelper.isBuildIndexed(context, fingerprint);
+        final boolean areProvidersIndexed = IndexDatabaseHelper
+                .areProvidersIndexed(context, providerVersionedNames);
+
+        return !(isLocaleIndexed && isBuildIndexed && areProvidersIndexed);
     }
 
-    public static void setLocaleIndexed(Context context, String locale) {
-        context.getSharedPreferences(INDEX, 0).edit().putBoolean(locale, true).commit();
+    @VisibleForTesting
+    static String buildProviderVersionedNames(List<ResolveInfo> providers) {
+        StringBuilder sb = new StringBuilder();
+        for (ResolveInfo info : providers) {
+            sb.append(info.providerInfo.packageName)
+                    .append(':')
+                    .append(info.providerInfo.applicationInfo.versionCode)
+                    .append(',');
+        }
+        return sb.toString();
     }
 
-    public static boolean isLocaleAlreadyIndexed(Context context, String locale) {
-        return context.getSharedPreferences(INDEX, 0).getBoolean(locale, false);
+    static void clearCachedIndexed(Context context) {
+        context.getSharedPreferences(INDEX, Context.MODE_PRIVATE).edit().clear().commit();
     }
 
-    public static boolean isBuildIndexed(Context context, String buildNo) {
-        return context.getSharedPreferences(INDEX, 0).getBoolean(buildNo, false);
+    static void setLocaleIndexed(Context context, String locale) {
+        context.getSharedPreferences(INDEX, Context.MODE_PRIVATE)
+                .edit()
+                .putBoolean(locale, true)
+                .apply();
     }
 
-    public static void setBuildIndexed(Context context, String buildNo) {
+    static void setProvidersIndexed(Context context, String providerVersionedNames) {
+        context.getSharedPreferences(INDEX, Context.MODE_PRIVATE)
+                .edit()
+                .putString(PREF_KEY_INDEXED_PROVIDERS, providerVersionedNames)
+                .apply();
+    }
+
+    static boolean isLocaleAlreadyIndexed(Context context, String locale) {
+        return context.getSharedPreferences(INDEX, Context.MODE_PRIVATE).getBoolean(locale, false);
+    }
+
+    static boolean areProvidersIndexed(Context context, String providerVersionedNames) {
+        final String indexedProviders = context.getSharedPreferences(INDEX, Context.MODE_PRIVATE)
+                .getString(PREF_KEY_INDEXED_PROVIDERS, null);
+        return TextUtils.equals(indexedProviders, providerVersionedNames);
+    }
+
+    static boolean isBuildIndexed(Context context, String buildNo) {
+        return context.getSharedPreferences(INDEX, Context.MODE_PRIVATE).getBoolean(buildNo, false);
+    }
+
+    static void setBuildIndexed(Context context, String buildNo) {
         context.getSharedPreferences(INDEX, 0).edit().putBoolean(buildNo, true).commit();
     }
 
diff --git a/src/com/android/settings/search/SearchFragment.java b/src/com/android/settings/search/SearchFragment.java
index 7ceec62..69c2062 100644
--- a/src/com/android/settings/search/SearchFragment.java
+++ b/src/com/android/settings/search/SearchFragment.java
@@ -47,6 +47,7 @@
 import com.android.settings.core.InstrumentedFragment;
 import com.android.settings.core.instrumentation.MetricsFeatureProvider;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.widget.ActionBarShadowController;
 
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -202,6 +203,8 @@
             params.setMarginStart(0);
             editFrame.setLayoutParams(params);
         }
+        ActionBarShadowController.attachToRecyclerView(
+                view.findViewById(R.id.search_bar_container), getLifecycle(), mResultsRecyclerView);
         return view;
     }
 
diff --git a/src/com/android/settings/support/SupportDashboardActivity.java b/src/com/android/settings/support/SupportDashboardActivity.java
index d3fcf9a..819d5f7 100644
--- a/src/com/android/settings/support/SupportDashboardActivity.java
+++ b/src/com/android/settings/support/SupportDashboardActivity.java
@@ -47,8 +47,8 @@
             supportFeatureProvider.startSupportV2(this);
         } else {
             startActivity(new Intent(this, LegacySupportActivity.class));
+            finish();
         }
-        finish();
     }
 
     /**
diff --git a/src/com/android/settings/system/FactoryResetPreferenceController.java b/src/com/android/settings/system/FactoryResetPreferenceController.java
index a3cf10a..4379105 100644
--- a/src/com/android/settings/system/FactoryResetPreferenceController.java
+++ b/src/com/android/settings/system/FactoryResetPreferenceController.java
@@ -45,7 +45,7 @@
     /** Hide "Factory reset" settings for secondary users, except demo users. */
     @Override
     public boolean isAvailable() {
-        return mUm.isAdminUser() || Utils.isCarrierDemoUser(mContext);
+        return mUm.isAdminUser() || Utils.isDemoUser(mContext);
     }
 
     @Override
diff --git a/src/com/android/settings/widget/ActionBarShadowController.java b/src/com/android/settings/widget/ActionBarShadowController.java
index 75bdf0e..0c6b02f 100644
--- a/src/com/android/settings/widget/ActionBarShadowController.java
+++ b/src/com/android/settings/widget/ActionBarShadowController.java
@@ -18,6 +18,7 @@
 
 import android.app.ActionBar;
 import android.app.Activity;
+import android.support.annotation.VisibleForTesting;
 import android.support.v7.widget.RecyclerView;
 import android.view.View;
 
@@ -26,9 +27,20 @@
 import com.android.settingslib.core.lifecycle.events.OnStart;
 import com.android.settingslib.core.lifecycle.events.OnStop;
 
+/**
+ * A controller that adds shadow to actionbar when content view scrolls.
+ * <p/>
+ * It also works on custom views acting as an actionbar.
+ */
 public class ActionBarShadowController implements LifecycleObserver, OnStart, OnStop {
 
-    private ScrollChangeWatcher mScrollChangeWatcher;
+    @VisibleForTesting
+    static final float ELEVATION_HIGH = 8;
+    @VisibleForTesting
+    static final float ELEVATION_LOW = 0;
+
+    @VisibleForTesting
+    ScrollChangeWatcher mScrollChangeWatcher;
     private RecyclerView mRecyclerView;
     private boolean isScrollWatcherAttached;
 
@@ -37,6 +49,11 @@
         return new ActionBarShadowController(activity, lifecycle, recyclerView);
     }
 
+    public static ActionBarShadowController attachToRecyclerView(View anchorView,
+            Lifecycle lifecycle, RecyclerView recyclerView) {
+        return new ActionBarShadowController(anchorView, lifecycle, recyclerView);
+    }
+
     private ActionBarShadowController(Activity activity, Lifecycle lifecycle,
             RecyclerView recyclerView) {
         mScrollChangeWatcher = new ScrollChangeWatcher(activity);
@@ -45,6 +62,14 @@
         lifecycle.addObserver(this);
     }
 
+    private ActionBarShadowController(View anchorView, Lifecycle lifecycle,
+            RecyclerView recyclerView) {
+        mScrollChangeWatcher = new ScrollChangeWatcher(anchorView);
+        mRecyclerView = recyclerView;
+        attachScrollWatcher();
+        lifecycle.addObserver(this);
+    }
+
     @Override
     public void onStop() {
         detachScrollWatcher();
@@ -71,12 +96,19 @@
     /**
      * Update the drop shadow as the scrollable entity is scrolled.
      */
-    private final class ScrollChangeWatcher extends RecyclerView.OnScrollListener {
+    final class ScrollChangeWatcher extends RecyclerView.OnScrollListener {
 
-        private Activity mActivity;
+        private final Activity mActivity;
+        private final View mAnchorView;
 
         public ScrollChangeWatcher(Activity activity) {
             mActivity = activity;
+            mAnchorView = null;
+        }
+
+        public ScrollChangeWatcher(View anchorView) {
+            mAnchorView = anchorView;
+            mActivity = null;
         }
 
         // RecyclerView scrolled.
@@ -87,9 +119,13 @@
 
         public void updateDropShadow(View view) {
             final boolean shouldShowShadow = view.canScrollVertically(-1);
-            final ActionBar actionBar = mActivity.getActionBar();
-            if (actionBar != null) {
-                actionBar.setElevation(shouldShowShadow ? 8 : 0);
+            if (mAnchorView != null) {
+                mAnchorView.setElevation(shouldShowShadow ? ELEVATION_HIGH : ELEVATION_LOW);
+            } else {
+                final ActionBar actionBar = mActivity.getActionBar();
+                if (actionBar != null) {
+                    actionBar.setElevation(shouldShowShadow ? ELEVATION_HIGH : ELEVATION_LOW);
+                }
             }
         }
     }
diff --git a/src/com/android/settings/widget/CarrierDemoPasswordDialogFragment.java b/src/com/android/settings/widget/CarrierDemoPasswordDialogFragment.java
deleted file mode 100644
index 8482b9f..0000000
--- a/src/com/android/settings/widget/CarrierDemoPasswordDialogFragment.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright (C) 2017 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.widget;
-
-import android.app.AlertDialog;
-import android.app.Dialog;
-import android.app.Fragment;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.content.res.TypedArray;
-import android.os.Bundle;
-import android.text.Editable;
-import android.text.InputType;
-import android.text.TextUtils;
-import android.text.TextWatcher;
-import android.util.Log;
-import android.view.inputmethod.InputMethodManager;
-import android.widget.Button;
-import android.widget.EditText;
-
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.internal.util.HexDump;
-import com.android.settings.R;
-
-import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-
-public class CarrierDemoPasswordDialogFragment extends InstrumentedDialogFragment {
-
-    private static final String TAG = "CarrierDemoPasswordDF";
-
-    private MessageDigest mMessageDigest;
-
-    public CarrierDemoPasswordDialogFragment() {
-        try {
-            mMessageDigest = MessageDigest.getInstance("SHA-256");
-        } catch (NoSuchAlgorithmException e) {
-            Log.e(TAG, "Unable to verify demo mode password", e);
-        }
-    }
-
-    @Override
-    public Dialog onCreateDialog(Bundle savedInstanceState) {
-        final AlertDialog dialog = new AlertDialog.Builder(getContext())
-                .setPositiveButton(R.string.retail_demo_reset_next,
-                        new DialogInterface.OnClickListener() {
-                    @Override
-                    public void onClick(DialogInterface dialog, int which) {
-                        final Fragment parentFragment = getParentFragment();
-                        if (parentFragment instanceof Callback
-                                && which == DialogInterface.BUTTON_POSITIVE) {
-                            ((Callback) parentFragment).onPasswordVerified();
-                        }
-                    }
-                })
-                .setNegativeButton(android.R.string.cancel, null)
-                .setMessage(R.string.retail_demo_reset_message)
-                .setTitle(R.string.retail_demo_reset_title)
-                .create();
-
-        final Context context = dialog.getContext();
-        final EditText passwordField = new EditText(context);
-        passwordField.setSingleLine();
-        passwordField.setInputType(InputType.TYPE_CLASS_TEXT
-                | InputType.TYPE_TEXT_VARIATION_PASSWORD);
-        passwordField.addTextChangedListener(new TextWatcher() {
-            @Override
-            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
-                // no-op
-            }
-
-            @Override
-            public void onTextChanged(CharSequence s, int start, int before, int count) {
-                verifyPassword(dialog, passwordField.getText().toString());
-            }
-
-            @Override
-            public void afterTextChanged(Editable s) {
-                // no-op
-            }
-        });
-
-        dialog.setOnShowListener(new DialogInterface.OnShowListener() {
-            @Override
-            public void onShow(DialogInterface dialogInterface) {
-                verifyPassword(dialog, passwordField.getText().toString());
-                passwordField.requestFocus();
-                final InputMethodManager imm = (InputMethodManager) getContext().getSystemService(
-                        Context.INPUT_METHOD_SERVICE);
-                imm.showSoftInput(passwordField, InputMethodManager.SHOW_IMPLICIT);
-            }
-        });
-        dialog.setCanceledOnTouchOutside(false);
-
-        final TypedArray a = context.obtainStyledAttributes(
-                new int[] { android.R.attr.dialogPreferredPadding });
-        final int sidePadding = a.getDimensionPixelSize(0, 0);
-        dialog.setView(passwordField, sidePadding, 0, sidePadding, 0);
-        a.recycle();
-
-        return dialog;
-    }
-
-    private void verifyPassword(AlertDialog dialog, String input) {
-        final Button positiveButton = dialog.getButton(DialogInterface.BUTTON_POSITIVE);
-        if (mMessageDigest == null || TextUtils.isEmpty(input)) {
-            positiveButton.setEnabled(false);
-            return;
-        }
-        final String passwordHash = getContext().getString(
-                com.android.internal.R.string.config_carrierDemoModePassword);
-        if (passwordHash == null || TextUtils.isEmpty(passwordHash)) {
-            // This device does not support carrier demo mode.
-            return;
-        }
-        final byte[] inputDigest = mMessageDigest.digest(input.getBytes());
-        final String inputHash = HexDump.toHexString(inputDigest, 0, inputDigest.length, false);
-        positiveButton.setEnabled(TextUtils.equals(passwordHash, inputHash));
-    }
-
-    @Override
-    public int getMetricsCategory() {
-        return MetricsEvent.CARRIER_DEMO_MODE_PASSWORD;
-    }
-
-    public interface Callback {
-        void onPasswordVerified();
-    }
-}
diff --git a/src/com/android/settings/widget/SeekBarPreference.java b/src/com/android/settings/widget/SeekBarPreference.java
index 6c08e3d..ee7d4b8 100644
--- a/src/com/android/settings/widget/SeekBarPreference.java
+++ b/src/com/android/settings/widget/SeekBarPreference.java
@@ -46,6 +46,7 @@
     private int mDefaultProgress = -1;
 
     private SeekBar mSeekBar;
+    private boolean mShouldBlink;
 
     public SeekBarPreference(
             Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
@@ -80,6 +81,11 @@
         this(context, null);
     }
 
+    public void setShouldBlink(boolean shouldBlink) {
+        mShouldBlink = shouldBlink;
+        notifyChanged();
+    }
+
     @Override
     public void onBindViewHolder(PreferenceViewHolder view) {
         super.onBindViewHolder(view);
@@ -97,6 +103,19 @@
         if (mSeekBar instanceof DefaultIndicatorSeekBar) {
             ((DefaultIndicatorSeekBar) mSeekBar).setDefaultProgress(mDefaultProgress);
         }
+        if (mShouldBlink) {
+            View v = view.itemView;
+            v.post(() -> {
+                if (v.getBackground() != null) {
+                    final int centerX = v.getWidth() / 2;
+                    final int centerY = v.getHeight() / 2;
+                    v.getBackground().setHotspot(centerX, centerY);
+                }
+                v.setPressed(true);
+                v.setPressed(false);
+                mShouldBlink = false;
+            });
+        }
     }
 
     @Override
diff --git a/tests/robotests/src/com/android/settings/MasterClearTest.java b/tests/robotests/src/com/android/settings/MasterClearTest.java
index 8e8578f..edad391 100644
--- a/tests/robotests/src/com/android/settings/MasterClearTest.java
+++ b/tests/robotests/src/com/android/settings/MasterClearTest.java
@@ -27,6 +27,7 @@
 import android.app.Activity;
 import android.app.Fragment;
 import android.content.ContentResolver;
+import android.content.Intent;
 import android.os.Bundle;
 import android.provider.Settings;
 import android.view.LayoutInflater;
@@ -36,6 +37,8 @@
 import android.widget.ScrollView;
 
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.shadow.SettingsShadowResources;
+import com.android.settings.testutils.shadow.ShadowUtils;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -43,11 +46,10 @@
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.Robolectric;
+import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowActivity;
 
-
-
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class MasterClearTest {
@@ -167,6 +169,22 @@
         assertThat(mMasterClear.hasReachedBottom(mScrollView)).isTrue();
     }
 
+    @Test
+    @Config(shadows = { ShadowUtils.class, SettingsShadowResources.class })
+    public void testInitiateMasterClear_inDemoMode_sendsIntent() {
+        SettingsShadowResources.overrideResource(
+            com.android.internal.R.string.config_demoModePackage, "package");
+
+        ShadowUtils.setIsDemoUser(true);
+
+        mMasterClear.mInitiateListener.onClick(
+                mContentView.findViewById(R.id.initiate_master_clear));
+        final Intent intent = mShadowActivity.getNextStartedActivity();
+        assertThat(Intent.ACTION_FACTORY_RESET).isEqualTo(intent.getAction());
+        final String packageName = Utils.getDemoModePackageName(RuntimeEnvironment.application);
+        assertThat(packageName).isEqualTo(intent.getPackage());
+    }
+
     private void initScrollView(int height, int scrollY, int childBottom) {
         when(mScrollView.getHeight()).thenReturn(height);
         when(mScrollView.getScrollY()).thenReturn(scrollY);
diff --git a/tests/robotests/src/com/android/settings/UtilsTest.java b/tests/robotests/src/com/android/settings/UtilsTest.java
index 93ab406..eaa380c 100644
--- a/tests/robotests/src/com/android/settings/UtilsTest.java
+++ b/tests/robotests/src/com/android/settings/UtilsTest.java
@@ -16,15 +16,18 @@
 import android.net.Network;
 import android.net.wifi.WifiManager;
 import android.os.Bundle;
+import android.os.UserManager;
 import android.os.storage.DiskInfo;
 import android.os.storage.StorageManager;
 import android.os.storage.VolumeInfo;
+import android.provider.Settings;
 import android.text.SpannableStringBuilder;
 import android.text.format.DateUtils;
 import android.text.style.TtsSpan;
 
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 
+import com.android.settings.testutils.shadow.ShadowSecureSettings;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDeviceNamePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDeviceNamePreferenceControllerTest.java
index 41fe2c2..0aeff2d 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDeviceNamePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDeviceNamePreferenceControllerTest.java
@@ -26,8 +26,6 @@
 import android.content.Context;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceScreen;
-import android.text.SpannableStringBuilder;
-import android.text.style.ForegroundColorSpan;
 
 import com.android.settings.TestConfig;
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
@@ -74,14 +72,9 @@
         mController.updateDeviceName(mPreference, DEVICE_NAME);
 
         final CharSequence summary = mPreference.getSummary();
-        final Object[] spans = ((SpannableStringBuilder) summary).getSpans(0, summary.length(),
-                Object.class);
         assertThat(summary.toString())
                 .isEqualTo("Visible as 'Nightshade' to other devices");
-
-        // Test summary only has one color span
-        assertThat(spans).asList().hasSize(1);
-        assertThat(spans[0]).isInstanceOf(ForegroundColorSpan.class);
+        assertThat(mPreference.isSelectable()).isFalse();
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDevicePreferenceTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDevicePreferenceTest.java
index 8a651a7..d60571c 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDevicePreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDevicePreferenceTest.java
@@ -15,6 +15,7 @@
  */
 package com.android.settings.bluetooth;
 
+import android.bluetooth.BluetoothClass;
 import android.bluetooth.BluetoothDevice;
 import android.content.Context;
 import android.os.UserManager;
@@ -136,4 +137,13 @@
 
         assertThat(mPreference.shouldHideSecondTarget()).isFalse();
     }
+
+    @Test
+    public void imagingDeviceIcon_isICSettingsPrint() {
+        when(mCachedBluetoothDevice.getBtClass()).thenReturn(
+                new BluetoothClass(BluetoothClass.Device.Major.IMAGING));
+        mPreference.onDeviceAttributesChanged();
+        assertThat(mPreference.getIcon()).isEqualTo(
+                mContext.getDrawable(R.drawable.ic_settings_print));
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDeviceRenamePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDeviceRenamePreferenceControllerTest.java
index f046096..cde95cd 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDeviceRenamePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDeviceRenamePreferenceControllerTest.java
@@ -24,10 +24,10 @@
 import static org.mockito.Mockito.when;
 
 import android.app.Fragment;
-import android.app.FragmentManager;
 import android.app.FragmentTransaction;
 import android.content.Context;
 import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceScreen;
 
 import com.android.settings.TestConfig;
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
@@ -53,9 +53,9 @@
     @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private Fragment mFragment;
     @Mock
-    private FragmentManager mFragmentManager;
-    @Mock
     private FragmentTransaction mFragmentTransaction;
+    @Mock
+    private PreferenceScreen mScreen;
     private Context mContext;
     private Preference mPreference;
     private BluetoothDeviceRenamePreferenceController mController;
@@ -90,4 +90,13 @@
         verify(mFragmentTransaction).add(any(), anyString());
         verify(mFragmentTransaction).commit();
     }
+
+    @Test
+    public void displayPreference_shouldFindPreferenceWithMatchingPrefKey() {
+        when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
+
+        mController.displayPreference(mScreen);
+
+        assertThat(mController.mPreference.getKey()).isEqualTo(mController.getPreferenceKey());
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterTest.java b/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterTest.java
index c651132..d943fe3 100644
--- a/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterTest.java
@@ -99,13 +99,13 @@
     public void getItemViewType_shouldReturnConditionTile() {
         mConditionAdapter = new ConditionAdapter(
             mContext, mTwoConditions, DashboardData.HEADER_MODE_FULLY_EXPANDED);
-        assertThat(mConditionAdapter.getItemViewType(0)).isEqualTo(R.layout.condition_tile_new_ui);
+        assertThat(mConditionAdapter.getItemViewType(0)).isEqualTo(R.layout.condition_tile);
     }
 
     @Test
     public void onBindViewHolder_shouldSetListener() {
         final View view = LayoutInflater.from(mContext).inflate(
-            R.layout.condition_tile_new_ui, new LinearLayout(mContext), true);
+            R.layout.condition_tile, new LinearLayout(mContext), true);
         final DashboardAdapter.DashboardItemHolder viewHolder =
             new DashboardAdapter.DashboardItemHolder(view);
         mConditionAdapter = new ConditionAdapter(
@@ -119,7 +119,7 @@
     @Test
     public void viewClick_shouldInvokeConditionPrimaryClick() {
         final View view = LayoutInflater.from(mContext).inflate(
-            R.layout.condition_tile_new_ui, new LinearLayout(mContext), true);
+            R.layout.condition_tile, new LinearLayout(mContext), true);
         final DashboardAdapter.DashboardItemHolder viewHolder =
             new DashboardAdapter.DashboardItemHolder(view);
         mConditionAdapter = new ConditionAdapter(
@@ -135,7 +135,7 @@
     public void onSwiped_nullCondition_shouldNotCrash() {
         final RecyclerView recyclerView = new RecyclerView(mContext);
         final View view = LayoutInflater.from(mContext).inflate(
-                R.layout.condition_tile_new_ui, new LinearLayout(mContext), true);
+                R.layout.condition_tile, new LinearLayout(mContext), true);
         final DashboardAdapter.DashboardItemHolder viewHolder =
                 new DashboardAdapter.DashboardItemHolder(view);
         mConditionAdapter = new ConditionAdapter(
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 c9e3815..bd3650b 100644
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java
@@ -105,13 +105,13 @@
     public void getItemViewType_shouldReturnSuggestionTile() {
         mSuggestionAdapter = new SuggestionAdapter(mContext, mOneSuggestion, new ArrayList<>());
         assertThat(mSuggestionAdapter.getItemViewType(0))
-            .isEqualTo(R.layout.suggestion_tile_new_ui);
+            .isEqualTo(R.layout.suggestion_tile);
     }
 
     @Test
     public void onBindViewHolder_shouldSetListener() {
         final View view = spy(LayoutInflater.from(mContext).inflate(
-            R.layout.suggestion_tile_new_ui, new LinearLayout(mContext), true));
+            R.layout.suggestion_tile, new LinearLayout(mContext), true));
         mSuggestionHolder = new DashboardAdapter.DashboardItemHolder(view);
         mSuggestionAdapter = new SuggestionAdapter(mContext, mOneSuggestion, new ArrayList<>());
 
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionDismissControllerTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionDismissControllerTest.java
index 025e600..ca9faf5 100644
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionDismissControllerTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionDismissControllerTest.java
@@ -80,7 +80,7 @@
     @Test
     public void getSwipeDirs_isSuggestionTile_shouldReturnDirection() {
         final RecyclerView.ViewHolder vh = mock(RecyclerView.ViewHolder.class);
-        when(vh.getItemViewType()).thenReturn(R.layout.suggestion_tile_new_ui);
+        when(vh.getItemViewType()).thenReturn(R.layout.suggestion_tile);
 
         assertThat(mController.getSwipeDirs(mRecyclerView, vh))
                 .isEqualTo(ItemTouchHelper.START | ItemTouchHelper.END);
@@ -89,7 +89,7 @@
     @Test
     public void getSwipeDirs_isSuggestionTileCard_shouldReturnDirection() {
         final RecyclerView.ViewHolder vh = mock(RecyclerView.ViewHolder.class);
-        when(vh.getItemViewType()).thenReturn(R.layout.suggestion_tile_card);
+        when(vh.getItemViewType()).thenReturn(R.layout.suggestion_tile_remote_container);
 
         assertThat(mController.getSwipeDirs(mRecyclerView, vh))
                 .isEqualTo(ItemTouchHelper.START | ItemTouchHelper.END);
@@ -98,7 +98,7 @@
     @Test
     public void getSwipeDirs_isNotSuggestionTile_shouldReturn0() {
         final RecyclerView.ViewHolder vh = mock(RecyclerView.ViewHolder.class);
-        when(vh.getItemViewType()).thenReturn(R.layout.condition_tile_new_ui);
+        when(vh.getItemViewType()).thenReturn(R.layout.condition_tile);
 
         assertThat(mController.getSwipeDirs(mRecyclerView, vh))
                 .isEqualTo(0);
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
index 78c1d1a..df25a50 100644
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
@@ -19,6 +19,7 @@
 import static com.google.common.truth.Truth.assertThat;
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.anyBoolean;
+import static org.mockito.Matchers.anyInt;
 import static org.mockito.Matchers.anyString;
 import static org.mockito.Matchers.eq;
 import static org.mockito.Mockito.never;
@@ -29,7 +30,10 @@
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.Intent;
+import android.content.SharedPreferences;
 import android.content.pm.PackageManager;
+import android.hardware.fingerprint.FingerprintManager;
+
 import com.android.internal.logging.nano.MetricsProto;
 import com.android.settings.R;
 import com.android.settings.Settings.AmbientDisplaySuggestionActivity;
@@ -72,6 +76,12 @@
     private SuggestionParser mSuggestionParser;
     @Mock
     private Tile mSuggestion;
+    @Mock
+    private PackageManager mPackageManager;
+    @Mock
+    private FingerprintManager mFingerprintManager;
+    @Mock
+    private SharedPreferences mSharedPreferences;
 
     private FakeFeatureFactory mFactory;
     private SuggestionFeatureProviderImpl mProvider;
@@ -81,7 +91,12 @@
         MockitoAnnotations.initMocks(this);
         FakeFeatureFactory.setupForTest(mContext);
         mFactory = (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
+        when(mContext.getPackageManager()).thenReturn(mPackageManager);
+        // Explicit casting to object due to MockitoCast bug
+        when((Object) mContext.getSystemService(FingerprintManager.class))
+                .thenReturn(mFingerprintManager);
         when(mContext.getApplicationContext()).thenReturn(RuntimeEnvironment.application);
+
         mSuggestion.intent = new Intent().setClassName("pkg", "cls");
         mSuggestion.category = "category";
 
@@ -196,39 +211,56 @@
     }
 
     @Test
-    @Config(shadows = SettingsShadowResources.class)
-    public void isSuggestionCompleted_swipeToNotification_trueWhenNotAvailable() {
-        SettingsShadowResources.overrideResource(
-                com.android.internal.R.bool.config_supportSystemNavigationKeys, false);
+    public void isSuggestionCompleted_swipeToNotification_trueWhenNotHardwareNotAvailable() {
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(false);
+        when(mContext.getResources().
+                getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys))
+                .thenReturn(true);
 
-        assertThat(mProvider.isSuggestionCompleted(RuntimeEnvironment.application,
-                new ComponentName(RuntimeEnvironment.application,
-                        SwipeToNotificationSuggestionActivity.class))).isTrue();
+        assertThat(mProvider.isSuggestionCompleted(mContext,
+                new ComponentName(mContext, SwipeToNotificationSuggestionActivity.class))).isTrue();
     }
 
     @Test
-    @Config(shadows = SettingsShadowResources.class)
+    public void isSuggestionCompleted_swipeToNotification_trueWhenNotAvailable() {
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
+        when(mContext.getResources().
+                getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys))
+                .thenReturn(false);
+
+        assertThat(mProvider.isSuggestionCompleted(mContext,
+                new ComponentName(mContext, SwipeToNotificationSuggestionActivity.class))).isTrue();
+    }
+
+    @Test
     public void isSuggestionCompleted_swipeToNotification_falseWhenNotVisited() {
-        SettingsShadowResources.overrideResource(
-                com.android.internal.R.bool.config_supportSystemNavigationKeys, true);
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
+        when(mContext.getResources().
+                getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys))
+                .thenReturn(true);
         // No stored value in shared preferences if not visited yet.
 
-        assertThat(mProvider.isSuggestionCompleted(RuntimeEnvironment.application,
-                new ComponentName(RuntimeEnvironment.application,
+        assertThat(mProvider.isSuggestionCompleted(mContext,
+                new ComponentName(mContext,
                         SwipeToNotificationSuggestionActivity.class))).isFalse();
     }
 
     @Test
-    @Config(shadows = SettingsShadowResources.class)
     public void isSuggestionCompleted_swipeToNotification_trueWhenVisited() {
-        SettingsShadowResources.overrideResource(
-                com.android.internal.R.bool.config_supportSystemNavigationKeys, true);
-        mProvider.getSharedPrefs(RuntimeEnvironment.application).edit().putBoolean(
-                SwipeToNotificationSettings.PREF_KEY_SUGGESTION_COMPLETE, true).commit();
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
+        when(mContext.getResources().
+                getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys))
+                .thenReturn(true);
+        when(mContext.getSharedPreferences(anyString(), anyInt())).thenReturn(mSharedPreferences);
+        when(mSharedPreferences.getBoolean(
+                SwipeToNotificationSettings.PREF_KEY_SUGGESTION_COMPLETE, false)).thenReturn(true);
 
-        assertThat(mProvider.isSuggestionCompleted(RuntimeEnvironment.application,
-                new ComponentName(RuntimeEnvironment.application,
-                        SwipeToNotificationSuggestionActivity.class))).isTrue();
+        assertThat(mProvider.isSuggestionCompleted(mContext,
+                new ComponentName(mContext, SwipeToNotificationSuggestionActivity.class))).isTrue();
     }
 
     @Test
@@ -313,6 +345,11 @@
                         PackageManager.DONT_KILL_APP);
     }
 
+    private void stubFingerprintSupported(boolean enabled) {
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
+                .thenReturn(enabled);
+    }
+
     @Test
     public void filterExclusiveSuggestions_shouldOnlyKeepFirst3() {
         final List<Tile> suggestions = new ArrayList<>();
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionsChecksTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionsChecksTest.java
index 5f3c0f0..e775136 100644
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionsChecksTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionsChecksTest.java
@@ -78,6 +78,7 @@
     public void testFingerprintEnrollmentIntroductionIsCompleteWhenFingerprintAdded() {
         stubFingerprintSupported(true);
         when(mFingerprintManager.hasEnrolledFingerprints()).thenReturn(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
         Tile tile = createFingerprintTile();
         assertThat(mSuggestionsChecks.isSuggestionComplete(tile)).isTrue();
     }
@@ -86,10 +87,20 @@
     public void testFingerprintEnrollmentIntroductionIsNotCompleteWhenNoFingerprintAdded() {
         stubFingerprintSupported(true);
         when(mFingerprintManager.hasEnrolledFingerprints()).thenReturn(false);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
         Tile tile = createFingerprintTile();
         assertThat(mSuggestionsChecks.isSuggestionComplete(tile)).isFalse();
     }
 
+    @Test
+    public void testFingerprintEnrollmentIntroductionIsCompleteWhenHardwareNotDetected() {
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.hasEnrolledFingerprints()).thenReturn(false);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(false);
+        Tile tile = createFingerprintTile();
+        assertThat(mSuggestionsChecks.isSuggestionComplete(tile)).isTrue();
+    }
+
 
     @Test
     public void testFingerprintEnrollmentIntroductionIsCompleteWhenFingerprintNotSupported() {
@@ -102,6 +113,7 @@
     public void testFingerprintEnrollmentIntroductionIsCompleteWhenFingerprintDisabled() {
         stubFingerprintSupported(true);
         when(mFingerprintManager.hasEnrolledFingerprints()).thenReturn(false);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
         when(mDevicePolicyManager.getKeyguardDisabledFeatures(any(), anyInt()))
                 .thenReturn(DevicePolicyManager.KEYGUARD_DISABLE_FINGERPRINT);
 
diff --git a/tests/robotests/src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceControllerTest.java
index f01190a..4d40300 100644
--- a/tests/robotests/src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceControllerTest.java
@@ -22,13 +22,16 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import android.content.ContentResolver;
 import android.content.Context;
 import android.provider.Settings;
 import android.support.v14.preference.SwitchPreference;
 
 import com.android.internal.hardware.AmbientDisplayConfiguration;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
+import com.android.settings.search.InlinePayload;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.testutils.shadow.ShadowSecureSettings;
 
 import org.junit.Before;
@@ -115,4 +118,34 @@
 
         assertThat(mController.isAvailable()).isFalse();
     }
+
+    @Test
+    public void testPreferenceController_ProperResultPayloadType() {
+        assertThat(mController.getResultPayload()).isInstanceOf(InlineSwitchPayload.class);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testSetValue_updatesCorrectly() {
+        int newValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Settings.Secure.DOZE_ALWAYS_ON, 0);
+
+        ((InlinePayload) mController.getResultPayload()).setValue(mContext, newValue);
+        int updatedValue = Settings.Secure.getInt(resolver, Settings.Secure.DOZE_ALWAYS_ON, -1);
+
+        assertThat(updatedValue).isEqualTo(newValue);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testGetValue_correctValueReturned() {
+        int currentValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Settings.Secure.DOZE_ALWAYS_ON, currentValue);
+
+        int newValue = ((InlinePayload) mController.getResultPayload()).getValue(mContext);
+
+        assertThat(newValue).isEqualTo(currentValue);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java
index 378b054..d35adef 100644
--- a/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java
@@ -19,6 +19,7 @@
 import static com.google.common.truth.Truth.assertThat;
 import static org.mockito.Matchers.anyString;
 import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.reset;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
@@ -130,7 +131,7 @@
     }
 
     @Test
-    public void updateState_autoBrightness_shouldSetSummaryToVrBrightness() {
+    public void updateState_autoBrightness_shouldSetSummaryToAutoBrightness() {
         doReturn(false).when(mController).isInVrMode();
         System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS_MODE,
             System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
@@ -143,7 +144,7 @@
     }
 
     @Test
-    public void updateState_manualBrightness_shouldSetSummaryToVrBrightness() {
+    public void updateState_manualBrightness_shouldSetSummaryToScreenBrightness() {
         doReturn(false).when(mController).isInVrMode();
         System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS_MODE,
             System.SCREEN_BRIGHTNESS_MODE_MANUAL);
@@ -154,4 +155,45 @@
 
         verify(mPreference).setSummary("45%");
     }
+
+    @Test
+    public void updateState_brightnessOutOfRange_shouldSetSummaryInRange() {
+        // VR mode
+        doReturn(true).when(mController).isInVrMode();
+
+        System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS_FOR_VR, 105);
+        mController.updateState(mPreference);
+        verify(mPreference).setSummary("100%");
+
+        System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS_FOR_VR, -20);
+        mController.updateState(mPreference);
+        verify(mPreference).setSummary("0%");
+
+        // Auto mode
+        doReturn(false).when(mController).isInVrMode();
+        System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS_MODE,
+                System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
+
+        reset(mPreference);
+        System.putFloat(mContentResolver, System.SCREEN_AUTO_BRIGHTNESS_ADJ, 1.5f);
+        mController.updateState(mPreference);
+        verify(mPreference).setSummary("100%");
+
+        System.putFloat(mContentResolver, System.SCREEN_AUTO_BRIGHTNESS_ADJ, -1.5f);
+        mController.updateState(mPreference);
+        verify(mPreference).setSummary("0%");
+
+        // Manual mode
+        System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS_MODE,
+                System.SCREEN_BRIGHTNESS_MODE_MANUAL);
+
+        reset(mPreference);
+        System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS, 115);
+        mController.updateState(mPreference);
+        verify(mPreference).setSummary("100%");
+
+        System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS, -10);
+        mController.updateState(mPreference);
+        verify(mPreference).setSummary("0%");
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryBroadcastReceiverTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryBroadcastReceiverTest.java
index c3b660c..a163a43 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryBroadcastReceiverTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryBroadcastReceiverTest.java
@@ -32,7 +32,12 @@
 import org.robolectric.annotation.Config;
 
 import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 
 @RunWith(SettingsRobolectricTestRunner.class)
@@ -52,7 +57,7 @@
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
-        mContext = RuntimeEnvironment.application;
+        mContext = spy(RuntimeEnvironment.application);
 
         mBatteryBroadcastReceiver = new BatteryBroadcastReceiver(mContext);
         mBatteryBroadcastReceiver.mBatteryLevel = BATTERY_INIT_LEVEL;
@@ -92,4 +97,19 @@
         verify(mBatteryListener, never()).onBatteryChanged();
     }
 
+    @Test
+    public void testRegister_updateBatteryStatus() {
+        doReturn(mChargingIntent).when(mContext).registerReceiver(any(), any());
+
+        mBatteryBroadcastReceiver.register();
+        mBatteryBroadcastReceiver.register();
+
+        assertThat(mBatteryBroadcastReceiver.mBatteryLevel).isEqualTo(
+                Utils.getBatteryPercentage(mChargingIntent));
+        assertThat(mBatteryBroadcastReceiver.mBatteryStatus).isEqualTo(
+                Utils.getBatteryStatus(mContext.getResources(), mChargingIntent));
+        // 2 times because register will force update the battery
+        verify(mBatteryListener, times(2)).onBatteryChanged();
+    }
+
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryStatsHelperLoaderTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryStatsHelperLoaderTest.java
new file mode 100644
index 0000000..5f8d7cf
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryStatsHelperLoaderTest.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2017 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;
+
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+
+import android.content.Context;
+import android.net.ConnectivityManager;
+
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+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;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class BatteryStatsHelperLoaderTest {
+    @Mock
+    private BatteryUtils mBatteryUtils;
+    @Mock
+    private ConnectivityManager mConnectivityManager;
+
+    private Context mContext;
+    private BatteryStatsHelperLoader mBatteryStatsHelperLoader;
+
+    @Before
+    public void setUp() {
+        MockitoAnnotations.initMocks(this);
+        mContext = spy(RuntimeEnvironment.application);
+        doReturn(mConnectivityManager).when(mContext).getSystemService(
+                Context.CONNECTIVITY_SERVICE);
+
+        mBatteryStatsHelperLoader = spy(new BatteryStatsHelperLoader(mContext));
+        mBatteryStatsHelperLoader.mBatteryUtils = mBatteryUtils;
+    }
+
+    @Test
+    public void testLoadInBackground_loadWithoutBundle() {
+        doReturn(mContext).when(mBatteryStatsHelperLoader).getContext();
+        mBatteryStatsHelperLoader.loadInBackground();
+
+        verify(mBatteryUtils).initBatteryStatsHelper(any(), eq(null), any());
+    }
+
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
index b53b98d..99b9ba9 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
@@ -15,13 +15,30 @@
  */
 package com.android.settings.fuelgauge;
 
-import java.util.List;
+import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_ADDITIONAL_BATTERY_INFO;
+import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_HIGH_POWER_APPS;
+import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_TOGGLE_APPS;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyInt;
+import static org.mockito.Matchers.anyLong;
+import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+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;
 
 import android.app.LoaderManager;
+import android.content.ContentResolver;
 import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
-import android.content.ContentResolver;
 import android.os.PowerManager;
 import android.support.v7.preference.PreferenceGroup;
 import android.support.v7.preference.PreferenceScreen;
@@ -40,46 +57,31 @@
 import com.android.internal.os.BatteryStatsImpl;
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
-import com.android.settings.fuelgauge.anomaly.AnomalyDetectionPolicy;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 import com.android.settings.Utils;
 import com.android.settings.applications.LayoutPreference;
 import com.android.settings.core.PreferenceController;
 import com.android.settings.fuelgauge.anomaly.Anomaly;
+import com.android.settings.fuelgauge.anomaly.AnomalyDetectionPolicy;
 import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.XmlTestUtils;
 import com.android.settings.testutils.shadow.SettingsShadowResources;
 import com.android.settings.testutils.shadow.ShadowDynamicIndexableContentMonitor;
-import com.android.settings.testutils.XmlTestUtils;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
+import org.mockito.ArgumentCaptor;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
-import org.robolectric.annotation.Config;
 import org.robolectric.Robolectric;
 import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
 
 import java.util.ArrayList;
-
-import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_ADDITIONAL_BATTERY_INFO;
-import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_HIGH_POWER_APPS;
-import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_TOGGLE_APPS;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyLong;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.doNothing;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
+import java.util.List;
 
 /**
  * Unit tests for {@link PowerUsageSummary}.
@@ -183,6 +185,7 @@
         mBatteryMeterView = new BatteryMeterView(mRealContext);
         mBatteryMeterView.mDrawable = new BatteryMeterView.BatteryMeterDrawable(mRealContext, 0);
         doNothing().when(mFragment).restartBatteryStatsLoader();
+        doReturn(mock(LoaderManager.class)).when(mFragment).getLoaderManager();
 
         when(mFragment.getActivity()).thenReturn(mSettingsActivity);
         when(mAdditionalBatteryInfoMenu.getItemId())
@@ -480,9 +483,9 @@
         doReturn(mAnomalyDetectionPolicy).when(mFragment).getAnomalyDetectionPolicy();
         when(mAnomalyDetectionPolicy.isAnomalyDetectionEnabled()).thenReturn(true);
 
-        mFragment.initAnomalyDetectionIfPossible();
+        mFragment.restartAnomalyDetectionIfPossible();
 
-        verify(mLoaderManager).initLoader(eq(PowerUsageSummary.ANOMALY_LOADER), eq(Bundle.EMPTY),
+        verify(mLoaderManager).restartLoader(eq(PowerUsageSummary.ANOMALY_LOADER), eq(Bundle.EMPTY),
                 any());
     }
 
@@ -545,6 +548,24 @@
         assertThat(mFragment.shouldHideSipper(mNormalBatterySipper)).isFalse();
     }
 
+    @Test
+    public void testDebugMode() {
+        doReturn(true).when(mFeatureFactory.powerUsageFeatureProvider).isEstimateDebugEnabled();
+
+        mFragment.restartBatteryInfoLoader();
+        ArgumentCaptor<View.OnLongClickListener> listener = ArgumentCaptor.forClass(
+                View.OnLongClickListener.class);
+        verify(mSummary1).setOnLongClickListener(listener.capture());
+
+        // Calling the listener should disable it.
+        listener.getValue().onLongClick(mSummary1);
+        verify(mSummary1).setOnLongClickListener(null);
+
+        // Restarting the loader should reset the listener.
+        mFragment.restartBatteryInfoLoader();
+        verify(mSummary1, times(2)).setOnLongClickListener(any(View.OnLongClickListener.class));
+    }
+
     public static class TestFragment extends PowerUsageSummary {
 
         private Context mContext;
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/anomaly/AnomalyTest.java b/tests/robotests/src/com/android/settings/fuelgauge/anomaly/AnomalyTest.java
index 759f0fd..13a5b31 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/anomaly/AnomalyTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/anomaly/AnomalyTest.java
@@ -23,6 +23,7 @@
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.robolectric.annotation.Config;
@@ -36,10 +37,14 @@
     private static long WAKE_LOCK_TIME_MS = 1500;
     private static String PACKAGE_NAME = "com.android.settings";
     private static String DISPLAY_NAME = "settings";
+    private static long BLUETOOTH_TIME_MS = 2555555;
+    private static int WAKEUP_ALARM_COUNT = 100;
 
-    @Test
-    public void testBuilder_buildCorrectly() {
-        Anomaly anomaly = new Anomaly.Builder()
+    private Anomaly mAnomaly;
+
+    @Before
+    public void setUp() {
+        mAnomaly = new Anomaly.Builder()
                 .setType(TYPE)
                 .setUid(UID)
                 .setWakeLockTimeMs(WAKE_LOCK_TIME_MS)
@@ -47,14 +52,28 @@
                 .setDisplayName(DISPLAY_NAME)
                 .setTargetSdkVersion(SDK_VERSION)
                 .setBackgroundRestrictionEnabled(true)
+                .setBluetoothScanningTimeMs(BLUETOOTH_TIME_MS)
+                .setWakeupAlarmCount(WAKEUP_ALARM_COUNT)
                 .build();
+    }
 
-        assertThat(anomaly.type).isEqualTo(TYPE);
-        assertThat(anomaly.uid).isEqualTo(UID);
-        assertThat(anomaly.wakelockTimeMs).isEqualTo(WAKE_LOCK_TIME_MS);
-        assertThat(anomaly.packageName).isEqualTo(PACKAGE_NAME);
-        assertThat(anomaly.displayName).isEqualTo(DISPLAY_NAME);
-        assertThat(anomaly.targetSdkVersion).isEqualTo(SDK_VERSION);
-        assertThat(anomaly.backgroundRestrictionEnabled).isTrue();
+    @Test
+    public void testBuilder_buildCorrectly() {
+        assertThat(mAnomaly.type).isEqualTo(TYPE);
+        assertThat(mAnomaly.uid).isEqualTo(UID);
+        assertThat(mAnomaly.wakelockTimeMs).isEqualTo(WAKE_LOCK_TIME_MS);
+        assertThat(mAnomaly.packageName).isEqualTo(PACKAGE_NAME);
+        assertThat(mAnomaly.displayName).isEqualTo(DISPLAY_NAME);
+        assertThat(mAnomaly.targetSdkVersion).isEqualTo(SDK_VERSION);
+        assertThat(mAnomaly.backgroundRestrictionEnabled).isTrue();
+        assertThat(mAnomaly.wakeupAlarmCount).isEqualTo(WAKEUP_ALARM_COUNT);
+        assertThat(mAnomaly.bluetoothScanningTimeMs).isEqualTo(BLUETOOTH_TIME_MS);
+    }
+
+    @Test
+    public void testToString() {
+        assertThat(mAnomaly.toString()).isEqualTo(
+                "type=wakelock uid=111 package=com.android.settings displayName=settings"
+                        + " wakelockTimeMs=1500 wakeupAlarmCount=100 bluetoothTimeMs=2555555");
     }
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/BluetoothScanAnomalyDetectorTest.java b/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/BluetoothScanAnomalyDetectorTest.java
index d21687c..f8d02ff 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/BluetoothScanAnomalyDetectorTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/BluetoothScanAnomalyDetectorTest.java
@@ -155,6 +155,7 @@
         return new Anomaly.Builder()
                 .setUid(uid)
                 .setType(Anomaly.AnomalyType.BLUETOOTH_SCAN)
+                .setBluetoothScanningTimeMs(ANOMALY_BLUETOOTH_SCANNING_TIME)
                 .build();
     }
 
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/WakeLockAnomalyDetectorTest.java b/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/WakeLockAnomalyDetectorTest.java
index f53e8a0..d7682ea 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/WakeLockAnomalyDetectorTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/WakeLockAnomalyDetectorTest.java
@@ -99,6 +99,8 @@
     private WakeLockAnomalyDetector mWakelockAnomalyDetector;
     private Context mContext;
     private List<BatterySipper> mUsageList;
+    private Anomaly mAnomaly;
+    private Anomaly mTargetAnomaly;
 
     @Before
     public void setUp() throws Exception {
@@ -152,41 +154,40 @@
         mUsageList.add(mTargetSipper);
         mUsageList.add(mInactiveSipper);
         doReturn(mUsageList).when(mBatteryStatsHelper).getUsageList();
+
+        mAnomaly = createWakeLockAnomaly(ANOMALY_UID);
+        mTargetAnomaly = createWakeLockAnomaly(TARGET_UID);
     }
 
     @Test
     public void testDetectAnomalies_containsAnomaly_detectIt() {
         doReturn(BatteryUtils.UID_NULL).when(mBatteryUtils).getPackageUid(nullable(String.class));
-        final Anomaly anomaly = new Anomaly.Builder()
-                .setUid(ANOMALY_UID)
-                .setType(Anomaly.AnomalyType.WAKE_LOCK)
-                .build();
-        final Anomaly targetAnomaly = new Anomaly.Builder()
-                .setUid(TARGET_UID)
-                .setType(Anomaly.AnomalyType.WAKE_LOCK)
-                .build();
 
         List<Anomaly> mAnomalies = mWakelockAnomalyDetector.detectAnomalies(mBatteryStatsHelper);
 
-        assertThat(mAnomalies).containsExactly(anomaly, targetAnomaly);
+        assertThat(mAnomalies).containsExactly(mAnomaly, mTargetAnomaly);
     }
 
     @Test
     public void testDetectAnomalies_containsTargetPackage_detectIt() {
         doReturn(TARGET_UID).when(mBatteryUtils).getPackageUid(TARGET_PACKAGE_NAME);
-        final Anomaly targetAnomaly = new Anomaly.Builder()
-                .setUid(TARGET_UID)
-                .setType(Anomaly.AnomalyType.WAKE_LOCK)
-                .build();
 
         List<Anomaly> mAnomalies = mWakelockAnomalyDetector.detectAnomalies(mBatteryStatsHelper,
                 TARGET_PACKAGE_NAME);
 
-        assertThat(mAnomalies).containsExactly(targetAnomaly);
+        assertThat(mAnomalies).containsExactly(mTargetAnomaly);
     }
 
     @Test
     public void testContainsThresholdFromPolicy() {
         assertThat(mWakelockAnomalyDetector.mWakeLockThresholdMs).isEqualTo(WAKELOCK_THRESHOLD_MS);
     }
+
+    private Anomaly createWakeLockAnomaly(int uid) {
+        return new Anomaly.Builder()
+                .setUid(uid)
+                .setType(Anomaly.AnomalyType.WAKE_LOCK)
+                .setWakeLockTimeMs(ANOMALY_WAKELOCK_TIME_MS)
+                .build();
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/WakeupAlarmAnomalyDetectorTest.java b/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/WakeupAlarmAnomalyDetectorTest.java
index a16db6e..55be734 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/WakeupAlarmAnomalyDetectorTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/anomaly/checker/WakeupAlarmAnomalyDetectorTest.java
@@ -21,13 +21,13 @@
 import static org.mockito.ArgumentMatchers.nullable;
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.eq;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.spy;
 
 import android.content.Context;
 import android.content.pm.ApplicationInfo;
 import android.os.BatteryStats;
+import android.os.Build;
 import android.text.format.DateUtils;
 import android.util.ArrayMap;
 
@@ -56,7 +56,12 @@
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class WakeupAlarmAnomalyDetectorTest {
-    private static final String TARGET_PACKAGE_NAME = "com.android.app";
+    private static final String TARGET_PACKAGE_NAME = "com.android.target";
+    private static final String ANOMALY_PACKAGE_NAME = "com.android.anomaly";
+    private static final boolean TARGET_BACKGROUND_RESTRICTION_ON = false;
+    private static final boolean ANOMALY_BACKGROUND_RESTRICTION_ON = true;
+    private static final int TARGET_SDK = Build.VERSION_CODES.L;
+    private static final int ANOMALY_SDK = Build.VERSION_CODES.O;
     private static final int ANOMALY_UID = 111;
     private static final int NORMAL_UID = 222;
     private static final int TARGET_UID = 333;
@@ -64,6 +69,7 @@
             1 * DateUtils.HOUR_IN_MILLIS + 10 * DateUtils.MINUTE_IN_MILLIS;
     private static final int ANOMALY_WAKEUP_COUNT = 500;
     private static final int NORMAL_WAKEUP_COUNT = 61;
+    private static final int ANOMALY_WAKEUP_FREQUENCY = 428; // count per hour
     @Mock
     private BatteryStatsHelper mBatteryStatsHelper;
     @Mock
@@ -96,6 +102,8 @@
     private WakeupAlarmAnomalyDetector mWakeupAlarmAnomalyDetector;
     private Context mContext;
     private List<BatterySipper> mUsageList;
+    private Anomaly mAnomaly;
+    private Anomaly mTargetAnomaly;
 
     @Before
     public void setUp() throws Exception {
@@ -123,6 +131,32 @@
         mUsageList.add(mTargetSipper);
         doReturn(mUsageList).when(mBatteryStatsHelper).getUsageList();
 
+        doReturn(TARGET_PACKAGE_NAME).when(mBatteryUtils).getPackageName(TARGET_UID);
+        doReturn(ANOMALY_PACKAGE_NAME).when(mBatteryUtils).getPackageName(ANOMALY_UID);
+        doReturn(TARGET_SDK).when(mBatteryUtils).getTargetSdkVersion(TARGET_PACKAGE_NAME);
+        doReturn(ANOMALY_SDK).when(mBatteryUtils).getTargetSdkVersion(ANOMALY_PACKAGE_NAME);
+        doReturn(TARGET_BACKGROUND_RESTRICTION_ON).when(mBatteryUtils)
+                .isBackgroundRestrictionEnabled(TARGET_SDK, TARGET_UID, TARGET_PACKAGE_NAME);
+        doReturn(ANOMALY_BACKGROUND_RESTRICTION_ON).when(mBatteryUtils)
+                .isBackgroundRestrictionEnabled(ANOMALY_SDK, ANOMALY_UID, ANOMALY_PACKAGE_NAME);
+
+        mAnomaly = new Anomaly.Builder()
+                .setUid(ANOMALY_UID)
+                .setPackageName(ANOMALY_PACKAGE_NAME)
+                .setType(Anomaly.AnomalyType.WAKEUP_ALARM)
+                .setTargetSdkVersion(ANOMALY_SDK)
+                .setBackgroundRestrictionEnabled(ANOMALY_BACKGROUND_RESTRICTION_ON)
+                .setWakeupAlarmCount(ANOMALY_WAKEUP_FREQUENCY)
+                .build();
+        mTargetAnomaly = new Anomaly.Builder()
+                .setUid(TARGET_UID)
+                .setPackageName(TARGET_PACKAGE_NAME)
+                .setType(Anomaly.AnomalyType.WAKEUP_ALARM)
+                .setTargetSdkVersion(TARGET_SDK)
+                .setBackgroundRestrictionEnabled(TARGET_BACKGROUND_RESTRICTION_ON)
+                .setWakeupAlarmCount(ANOMALY_WAKEUP_FREQUENCY)
+                .build();
+
         mWakeupAlarmAnomalyDetector = spy(
                 new WakeupAlarmAnomalyDetector(mContext, mPolicy, mAnomalyUtils));
         mWakeupAlarmAnomalyDetector.mBatteryUtils = mBatteryUtils;
@@ -137,18 +171,10 @@
                 mTargetUid);
         doReturn(NORMAL_WAKEUP_COUNT).when(mWakeupAlarmAnomalyDetector).getWakeupAlarmCountFromUid(
                 mNormalUid);
-        final Anomaly anomaly = new Anomaly.Builder()
-                .setUid(ANOMALY_UID)
-                .setType(Anomaly.AnomalyType.WAKEUP_ALARM)
-                .build();
-        final Anomaly targetAnomaly = new Anomaly.Builder()
-                .setUid(TARGET_UID)
-                .setType(Anomaly.AnomalyType.WAKEUP_ALARM)
-                .build();
 
         List<Anomaly> mAnomalies = mWakeupAlarmAnomalyDetector.detectAnomalies(mBatteryStatsHelper);
 
-        assertThat(mAnomalies).containsExactly(anomaly, targetAnomaly);
+        assertThat(mAnomalies).containsExactly(mAnomaly, mTargetAnomaly);
     }
 
     @Test
@@ -160,15 +186,11 @@
                 mTargetUid);
         doReturn(NORMAL_WAKEUP_COUNT).when(mWakeupAlarmAnomalyDetector).getWakeupAlarmCountFromUid(
                 mNormalUid);
-        final Anomaly targetAnomaly = new Anomaly.Builder()
-                .setUid(TARGET_UID)
-                .setType(Anomaly.AnomalyType.WAKEUP_ALARM)
-                .build();
 
         List<Anomaly> mAnomalies = mWakeupAlarmAnomalyDetector.detectAnomalies(mBatteryStatsHelper,
                 TARGET_PACKAGE_NAME);
 
-        assertThat(mAnomalies).containsExactly(targetAnomaly);
+        assertThat(mAnomalies).containsExactly(mTargetAnomaly);
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/gestures/AssistGesturePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/AssistGesturePreferenceControllerTest.java
index bd48a25..b2d3596 100644
--- a/tests/robotests/src/com/android/settings/gestures/AssistGesturePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/AssistGesturePreferenceControllerTest.java
@@ -18,23 +18,32 @@
 
 import static android.provider.Settings.Secure.ASSIST_GESTURE_ENABLED;
 
+import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE;
 import static com.google.common.truth.Truth.assertThat;
 
 import static org.mockito.Mockito.when;
 
+import android.content.ContentResolver;
 import android.content.Context;
 import android.provider.Settings;
 
+import android.provider.Settings.Secure;
 import com.android.settings.TestConfig;
+import com.android.settings.display.AutoBrightnessPreferenceController;
+import com.android.settings.search.InlinePayload;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 
+import com.android.settings.testutils.shadow.ShadowSecureSettings;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 
@@ -89,5 +98,40 @@
 
         assertThat(mController.isSwitchPrefEnabled()).isFalse();
     }
+
+    @Test
+    public void testPreferenceController_ProperResultPayloadType() {
+        final Context context = RuntimeEnvironment.application;
+        AssistGesturePreferenceController controller =
+                new AssistGesturePreferenceController(context, null /* lifecycle */, KEY_ASSIST,
+                        false /* assistOnly */);
+        ResultPayload payload = controller.getResultPayload();
+        assertThat(payload).isInstanceOf(InlineSwitchPayload.class);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testSetValue_updatesCorrectly() {
+        int newValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Secure.ASSIST_GESTURE_ENABLED, 0);
+
+        ((InlinePayload) mController.getResultPayload()).setValue(mContext, newValue);
+        int updatedValue = Settings.Secure.getInt(resolver, Secure.ASSIST_GESTURE_ENABLED, -1);
+
+        assertThat(updatedValue).isEqualTo(newValue);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testGetValue_correctValueReturned() {
+        int currentValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Settings.Secure.ASSIST_GESTURE_ENABLED, currentValue);
+
+        int newValue = ((InlinePayload) mController.getResultPayload()).getValue(mContext);
+
+        assertThat(newValue).isEqualTo(currentValue);
+    }
 }
 
diff --git a/tests/robotests/src/com/android/settings/gestures/DoubleTapPowerPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/DoubleTapPowerPreferenceControllerTest.java
index cc30a74..9c9a546 100644
--- a/tests/robotests/src/com/android/settings/gestures/DoubleTapPowerPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/DoubleTapPowerPreferenceControllerTest.java
@@ -16,19 +16,25 @@
 
 package com.android.settings.gestures;
 
+import android.content.ContentResolver;
 import android.content.Context;
 import android.provider.Settings;
 import android.support.v7.preference.PreferenceScreen;
 
+import com.android.settings.search.InlinePayload;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 
+import com.android.settings.testutils.shadow.ShadowSecureSettings;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 
@@ -92,4 +98,44 @@
 
         assertThat(mController.isSwitchPrefEnabled()).isFalse();
     }
+
+    @Test
+    public void testPreferenceController_ProperResultPayloadType() {
+        final Context context = RuntimeEnvironment.application;
+        DoubleTapPowerPreferenceController controller =
+                new DoubleTapPowerPreferenceController(context, null /* lifecycle */,
+                        KEY_DOUBLE_TAP_POWER);
+        ResultPayload payload = controller.getResultPayload();
+        assertThat(payload).isInstanceOf(InlineSwitchPayload.class);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testSetValue_updatesCorrectly() {
+        int newValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Settings.Secure.CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED,
+                0);
+
+        InlinePayload payload = ((InlineSwitchPayload) mController.getResultPayload());
+        payload.setValue(mContext, newValue);
+        int updatedValue = Settings.Secure.getInt(resolver,
+                Settings.Secure.CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED, -1);
+        updatedValue = 1 - updatedValue; // DoubleTapPower is a non-standard switch
+
+        assertThat(updatedValue).isEqualTo(newValue);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testGetValue_correctValueReturned() {
+        int currentValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver,
+                Settings.Secure.CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED, currentValue);
+
+        int newValue = ((InlinePayload) mController.getResultPayload()).getValue(mContext);
+        newValue = 1 - newValue; // DoubleTapPower is a non-standard switch
+        assertThat(newValue).isEqualTo(currentValue);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenPreferenceControllerTest.java
index 539c7db..37f52de 100644
--- a/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenPreferenceControllerTest.java
@@ -16,18 +16,25 @@
 
 package com.android.settings.gestures;
 
+import android.content.ContentResolver;
 import android.content.Context;
 
+import android.provider.Settings;
 import com.android.internal.hardware.AmbientDisplayConfiguration;
+import com.android.settings.search.InlinePayload;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 
+import com.android.settings.testutils.shadow.ShadowSecureSettings;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
 
 import static com.google.common.truth.Truth.assertThat;
@@ -81,4 +88,41 @@
 
         assertThat(mController.isSwitchPrefEnabled()).isFalse();
     }
+
+    @Test
+    public void testPreferenceController_ProperResultPayloadType() {
+        final Context context = RuntimeEnvironment.application;
+        DoubleTapScreenPreferenceController controller =
+                new DoubleTapScreenPreferenceController(context, null /* lifecycle */,
+                        mAmbientDisplayConfiguration, 0 /* userid */, KEY_DOUBLE_TAP_SCREEN);
+        ResultPayload payload = controller.getResultPayload();
+        assertThat(payload).isInstanceOf(InlineSwitchPayload.class);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testSetValue_updatesCorrectly() {
+        int newValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP, 0);
+
+        ((InlinePayload) mController.getResultPayload()).setValue(mContext, newValue);
+        int updatedValue = Settings.Secure.getInt(resolver,
+                Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP, -1);
+
+        assertThat(updatedValue).isEqualTo(newValue);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testGetValue_correctValueReturned() {
+        int currentValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver,
+                Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP, currentValue);
+
+        int newValue = ((InlinePayload) mController.getResultPayload()).getValue(mContext);
+
+        assertThat(newValue).isEqualTo(currentValue);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/gestures/DoubleTwistPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/DoubleTwistPreferenceControllerTest.java
index a06395a..7c549f6 100644
--- a/tests/robotests/src/com/android/settings/gestures/DoubleTwistPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/DoubleTwistPreferenceControllerTest.java
@@ -39,7 +39,6 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import static android.provider.Settings.Secure.CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED;
 import static com.google.common.truth.Truth.assertThat;
 import static org.mockito.Matchers.anyInt;
 import static org.mockito.Mockito.doReturn;
@@ -107,7 +106,7 @@
     public void onPreferenceChange_hasWorkProfile_shouldUpdateSettingForWorkProfileUser() {
         final int managedId = 2;
         ShadowSecureSettings.putIntForUser(
-            null, CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 0, managedId);
+            null, Settings.Secure.CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 0, managedId);
         DoubleTwistPreferenceController controller =
             spy(new DoubleTwistPreferenceController(mContext, null, KEY_DOUBLE_TWIST));
         doReturn(managedId).when(controller).getManagedProfileUserId();
@@ -115,12 +114,12 @@
         // enable the gesture
         controller.onPreferenceChange(null, true);
         assertThat(Settings.Secure.getIntForUser(mContext.getContentResolver(),
-            CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 0, managedId)).isEqualTo(1);
+                Settings.Secure.CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 0, managedId)).isEqualTo(1);
 
         // disable the gesture
         controller.onPreferenceChange(null, false);
         assertThat(Settings.Secure.getIntForUser(mContext.getContentResolver(),
-            CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 1, managedId)).isEqualTo(0);
+                Settings.Secure.CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 1, managedId)).isEqualTo(0);
     }
 
     @Test
@@ -128,7 +127,7 @@
         // Set the setting to be enabled.
         final Context context = ShadowApplication.getInstance().getApplicationContext();
         Settings.System.putInt(context.getContentResolver(),
-                CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 1);
+                Settings.Secure.CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 1);
         mController = new DoubleTwistPreferenceController(context, null, KEY_DOUBLE_TWIST);
 
         assertThat(mController.isSwitchPrefEnabled()).isTrue();
@@ -139,7 +138,7 @@
         // Set the setting to be disabled.
         final Context context = ShadowApplication.getInstance().getApplicationContext();
         Settings.System.putInt(context.getContentResolver(),
-                CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 0);
+                Settings.Secure.CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED, 0);
         mController = new DoubleTwistPreferenceController(context, null, KEY_DOUBLE_TWIST);
 
         assertThat(mController.isSwitchPrefEnabled()).isFalse();
diff --git a/tests/robotests/src/com/android/settings/gestures/PIckupGesturePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/PIckupGesturePreferenceControllerTest.java
index 1877200..833f016 100644
--- a/tests/robotests/src/com/android/settings/gestures/PIckupGesturePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/PIckupGesturePreferenceControllerTest.java
@@ -16,18 +16,25 @@
 
 package com.android.settings.gestures;
 
+import android.content.ContentResolver;
 import android.content.Context;
 
+import android.provider.Settings;
 import com.android.internal.hardware.AmbientDisplayConfiguration;
+import com.android.settings.search.InlinePayload;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 
+import com.android.settings.testutils.shadow.ShadowSecureSettings;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
 
 import static com.google.common.truth.Truth.assertThat;
@@ -97,4 +104,40 @@
 
         assertThat(mController.canHandleClicks()).isFalse();
     }
+
+    @Test
+    public void testPreferenceController_ProperResultPayloadType() {
+        final Context context = RuntimeEnvironment.application;
+        PickupGesturePreferenceController controller =
+                new PickupGesturePreferenceController(
+                        context, null, mAmbientDisplayConfiguration, 0, KEY_PICK_UP);
+        ResultPayload payload = controller.getResultPayload();
+        assertThat(payload).isInstanceOf(InlineSwitchPayload.class);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testSetValue_updatesCorrectly() {
+        int newValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Settings.Secure.DOZE_PULSE_ON_PICK_UP, 0);
+
+        ((InlinePayload) mController.getResultPayload()).setValue(mContext, newValue);
+        int updatedValue = Settings.Secure.getInt(resolver,
+                Settings.Secure.DOZE_PULSE_ON_PICK_UP, -1);
+
+        assertThat(updatedValue).isEqualTo(newValue);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testGetValue_correctValueReturned() {
+        int currentValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Settings.Secure.DOZE_PULSE_ON_PICK_UP, currentValue);
+
+        int newValue = ((InlinePayload) mController.getResultPayload()).getValue(mContext);
+
+        assertThat(newValue).isEqualTo(currentValue);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/gestures/SwipeToNotificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/SwipeToNotificationPreferenceControllerTest.java
index ac551de..3b92ed1 100644
--- a/tests/robotests/src/com/android/settings/gestures/SwipeToNotificationPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/SwipeToNotificationPreferenceControllerTest.java
@@ -16,23 +16,36 @@
 
 package com.android.settings.gestures;
 
+import android.content.ContentResolver;
 import android.content.Context;
+import android.content.pm.PackageManager;
+import android.content.res.Resources;
+import android.hardware.fingerprint.FingerprintManager;
 import android.provider.Settings;
 
+import com.android.settings.search.InlinePayload;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 
+import com.android.settings.testutils.shadow.ShadowSecureSettings;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 
 import static android.provider.Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED;
 import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.when;
 
 @RunWith(SettingsRobolectricTestRunner.class)
@@ -41,6 +54,10 @@
 
     @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private Context mContext;
+    @Mock
+    private PackageManager mPackageManager;
+    @Mock
+    private FingerprintManager mFingerprintManager;
 
     private SwipeToNotificationPreferenceController mController;
     private static final String KEY_SWIPE_DOWN = "gesture_swipe_down_fingerprint";
@@ -49,10 +66,27 @@
     public void setUp() {
         MockitoAnnotations.initMocks(this);
         mController = new SwipeToNotificationPreferenceController(mContext, null, KEY_SWIPE_DOWN);
+        when(mContext.getPackageManager()).thenReturn(mPackageManager);
+        // Explicit casting to object due to MockitoCast bug
+        when((Object) mContext.getSystemService(FingerprintManager.class))
+                .thenReturn(mFingerprintManager);
+    }
+
+    @Test
+    public void isAvailable_hardwareNotAvailable_shouldReturnFalse() {
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(false);
+        when(mContext.getResources().
+                getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys))
+                .thenReturn(true);
+
+        assertThat(mController.isAvailable()).isFalse();
     }
 
     @Test
     public void isAvailable_configIsTrue_shouldReturnTrue() {
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
         when(mContext.getResources().
                 getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys))
                 .thenReturn(true);
@@ -62,6 +96,8 @@
 
     @Test
     public void isAvailable_configIsFalse_shouldReturnFalse() {
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
         when(mContext.getResources().
                 getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys))
                 .thenReturn(false);
@@ -71,6 +107,8 @@
 
     @Test
     public void testSwitchEnabled_configIsSet_shouldReturnTrue() {
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
         // Set the setting to be enabled.
         final Context context = ShadowApplication.getInstance().getApplicationContext();
         Settings.System.putInt(context.getContentResolver(), SYSTEM_NAVIGATION_KEYS_ENABLED, 1);
@@ -81,6 +119,8 @@
 
     @Test
     public void testSwitchEnabled_configIsNotSet_shouldReturnFalse() {
+        stubFingerprintSupported(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
         // Set the setting to be disabled.
         final Context context = ShadowApplication.getInstance().getApplicationContext();
         Settings.System.putInt(context.getContentResolver(), SYSTEM_NAVIGATION_KEYS_ENABLED, 0);
@@ -88,4 +128,49 @@
 
         assertThat(mController.isSwitchPrefEnabled()).isFalse();
     }
+
+    @Test
+    public void testPreferenceController_ProperResultPayloadType() {
+        when(mContext.getResources().
+                getBoolean(com.android.internal.R.bool.config_supportSystemNavigationKeys))
+                .thenReturn(true);
+
+        SwipeToNotificationPreferenceController controller =
+                new SwipeToNotificationPreferenceController(mContext, null /* lifecycle */,
+                        SYSTEM_NAVIGATION_KEYS_ENABLED);
+        ResultPayload payload = controller.getResultPayload();
+        assertThat(payload).isInstanceOf(InlineSwitchPayload.class);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testSetValue_updatesCorrectly() {
+        int newValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver, Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED, 0);
+
+        ((InlinePayload) mController.getResultPayload()).setValue(mContext, newValue);
+        int updatedValue = Settings.Secure.getInt(resolver,
+                Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED, -1);
+
+        assertThat(updatedValue).isEqualTo(newValue);
+    }
+
+    @Test
+    @Config(shadows = ShadowSecureSettings.class)
+    public void testGetValue_correctValueReturned() {
+        int currentValue = 1;
+        ContentResolver resolver = mContext.getContentResolver();
+        Settings.Secure.putInt(resolver,
+                Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED, currentValue);
+
+        int newValue = ((InlinePayload) mController.getResultPayload()).getValue(mContext);
+
+        assertThat(newValue).isEqualTo(currentValue);
+    }
+
+    private void stubFingerprintSupported(boolean enabled) {
+        when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
+                .thenReturn(enabled);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/notification/ZenModeSettingsTest.java b/tests/robotests/src/com/android/settings/notification/ZenModeSettingsTest.java
index 8ac482b..716e2b2 100644
--- a/tests/robotests/src/com/android/settings/notification/ZenModeSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/notification/ZenModeSettingsTest.java
@@ -16,6 +16,7 @@
 
 package com.android.settings.notification;
 
+import android.app.NotificationManager;
 import android.content.Context;
 
 import com.android.settings.R;
@@ -30,6 +31,8 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static junit.framework.Assert.assertTrue;
+
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class ZenModeSettingsTest {
@@ -60,6 +63,38 @@
         final String result = mBuilder.append(original, true, R.string.zen_mode_alarms);
 
         assertThat(result).contains(alarm);
+        assertThat(result).contains(original);
+        assertTrue(result.indexOf(original) < result.indexOf(alarm));
+    }
+
+    @Test
+    public void testPrepend() {
+        String original = mContext.getString(R.string.zen_mode_alarms);
+        String reminders = mContext.getString(R.string.zen_mode_reminders);
+
+        final String result = mBuilder.prepend(original, true, R.string.zen_mode_reminders);
+        assertThat(result).contains(original);
+        assertThat(result).contains(reminders);
+        assertTrue(result.indexOf(reminders) < result.indexOf(original));
+    }
+
+    @Test
+    public void testGetPrioritySettingSummary_sameOrderAsTargetPage() {
+        NotificationManager.Policy policy = new NotificationManager.Policy(
+                NotificationManager.Policy.PRIORITY_CATEGORY_EVENTS
+                        | NotificationManager.Policy.PRIORITY_CATEGORY_REMINDERS,
+                0, 0);
+        final String result = mBuilder.getPrioritySettingSummary(policy);
+
+        String alarms = mContext.getString(R.string.zen_mode_alarms);
+        String reminders = mContext.getString(R.string.zen_mode_reminders);
+        String events = mContext.getString(R.string.zen_mode_events);
+
+        assertThat(result).contains(alarms);
+        assertThat(result).contains(reminders);
+        assertThat(result).contains(events);
+        assertTrue(result.indexOf(reminders) < result.indexOf(events) &&
+                result.indexOf(events) < result.indexOf(alarms));
     }
 
 }
diff --git a/tests/robotests/src/com/android/settings/search/DatabaseIndexingManagerTest.java b/tests/robotests/src/com/android/settings/search/DatabaseIndexingManagerTest.java
index 711b355..3641368 100644
--- a/tests/robotests/src/com/android/settings/search/DatabaseIndexingManagerTest.java
+++ b/tests/robotests/src/com/android/settings/search/DatabaseIndexingManagerTest.java
@@ -17,12 +17,28 @@
 
 package com.android.settings.search;
 
+import static android.provider.SearchIndexablesContract.INDEXABLES_RAW_COLUMNS;
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyInt;
+import static org.mockito.Matchers.anyList;
+import static org.mockito.Matchers.anyMap;
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.content.ContentProvider;
 import android.content.ContentValues;
 import android.content.Context;
 import android.content.Intent;
+import android.content.pm.ApplicationInfo;
 import android.content.pm.PackageManager;
 import android.content.pm.ProviderInfo;
 import android.content.pm.ResolveInfo;
@@ -35,10 +51,10 @@
 import android.util.ArrayMap;
 
 import com.android.settings.R;
-import com.android.settings.testutils.FakeFeatureFactory;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 import com.android.settings.testutils.DatabaseTestUtils;
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.testutils.shadow.ShadowDatabaseIndexingUtils;
 import com.android.settings.testutils.shadow.ShadowRunnableAsyncTask;
 
@@ -62,21 +78,6 @@
 import java.util.Map;
 import java.util.Set;
 
-import static android.provider.SearchIndexablesContract.INDEXABLES_RAW_COLUMNS;
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.anyList;
-import static org.mockito.Matchers.anyMap;
-import static org.mockito.Matchers.anyString;
-import static org.mockito.Mockito.doNothing;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
         shadows = {ShadowRunnableAsyncTask.class})
@@ -746,7 +747,7 @@
     // Test new public indexing flow
 
     @Test
-    @Config(shadows = {ShadowDatabaseIndexingUtils.class,})
+    @Config(shadows = {ShadowDatabaseIndexingUtils.class})
     public void testPerformIndexing_fullIndex_getsDataFromProviders() {
         DummyProvider provider = new DummyProvider();
         provider.onCreate();
@@ -758,7 +759,6 @@
 
         DatabaseIndexingManager manager =
                 spy(new DatabaseIndexingManager(mContext, PACKAGE_ONE));
-        doReturn(true).when(manager).isFullIndex(anyString(), anyString());
 
         manager.performIndexing();
 
@@ -769,17 +769,17 @@
     @Test
     @Config(shadows = {ShadowDatabaseIndexingUtils.class,})
     public void testPerformIndexing_incrementalIndex_noDataAdded() {
+        final List<ResolveInfo> providerInfo = getDummyResolveInfo();
+        skipFullIndex(providerInfo);
         DummyProvider provider = new DummyProvider();
         provider.onCreate();
         ShadowContentResolver.registerProvider(AUTHORITY_ONE, provider);
-
         // Test that Indexables are added for Full indexing
         when(mPackageManager.queryIntentContentProviders(any(Intent.class), anyInt()))
-                .thenReturn(getDummyResolveInfo());
+                .thenReturn(providerInfo);
 
         DatabaseIndexingManager manager =
                 spy(new DatabaseIndexingManager(mContext, PACKAGE_ONE));
-        doReturn(false).when(manager).isFullIndex(anyString(), anyString());
 
         manager.mDataToProcess.dataToUpdate.clear();
 
@@ -805,7 +805,6 @@
         // Initialize the Manager
         DatabaseIndexingManager manager =
                 spy(new DatabaseIndexingManager(mContext, PACKAGE_ONE));
-        doReturn(true).when(manager).isFullIndex(anyString(), anyString());
 
         // Insert data point which will be dropped
         final String oldTitle = "This is French";
@@ -845,7 +844,6 @@
 
         DatabaseIndexingManager manager =
                 spy(new DatabaseIndexingManager(mContext, PACKAGE_ONE));
-        doReturn(true).when(manager).isFullIndex(anyString(), anyString());
 
         manager.performIndexing();
 
@@ -854,6 +852,28 @@
 
     @Test
     @Config(shadows = {ShadowDatabaseIndexingUtils.class,})
+    public void testPerformIndexing_onPackageChange_shouldFullIndex() {
+        final List<ResolveInfo> providers = getDummyResolveInfo();
+        final String buildNumber = Build.FINGERPRINT;
+        final String locale = Locale.getDefault().toString();
+        skipFullIndex(providers);
+
+        // This snapshot is already indexed. Should return false
+        assertThat(IndexDatabaseHelper.isFullIndex(
+                mContext, locale, buildNumber,
+                IndexDatabaseHelper.buildProviderVersionedNames(providers)))
+                .isFalse();
+
+        // Change provider version number, this should trigger full index.
+        providers.get(0).providerInfo.applicationInfo.versionCode++;
+
+        assertThat(IndexDatabaseHelper.isFullIndex(mContext, locale, buildNumber,
+                IndexDatabaseHelper.buildProviderVersionedNames(providers)))
+                .isTrue();
+    }
+
+    @Test
+    @Config(shadows = {ShadowDatabaseIndexingUtils.class,})
     public void testPerformIndexing_onOta_buildNumberIsCached() {
         DummyProvider provider = new DummyProvider();
         provider.onCreate();
@@ -867,7 +887,6 @@
 
         DatabaseIndexingManager manager =
                 spy(new DatabaseIndexingManager(mContext, PACKAGE_ONE));
-        doReturn(true).when(manager).isFullIndex(anyString(), anyString());
 
         manager.performIndexing();
 
@@ -1037,6 +1056,13 @@
 
     // Util functions
 
+    private void skipFullIndex(List<ResolveInfo> providers) {
+        IndexDatabaseHelper.setLocaleIndexed(mContext, Locale.getDefault().toString());
+        IndexDatabaseHelper.setBuildIndexed(mContext, Build.FINGERPRINT);
+        IndexDatabaseHelper.setProvidersIndexed(mContext,
+                IndexDatabaseHelper.buildProviderVersionedNames(providers));
+    }
+
     private SearchIndexableRaw getFakeRaw() {
         return getFakeRaw(localeStr);
     }
@@ -1092,6 +1118,7 @@
         info.providerInfo.exported = true;
         info.providerInfo.authority = AUTHORITY_ONE;
         info.providerInfo.packageName = PACKAGE_ONE;
+        info.providerInfo.applicationInfo = new ApplicationInfo();
         infoList.add(info);
 
         return infoList;
diff --git a/tests/robotests/src/com/android/settings/system/FactoryResetPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/system/FactoryResetPreferenceControllerTest.java
index b9c34f3..7310ae0 100644
--- a/tests/robotests/src/com/android/settings/system/FactoryResetPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/system/FactoryResetPreferenceControllerTest.java
@@ -22,7 +22,6 @@
 import android.accounts.AccountManager;
 import android.content.Context;
 import android.os.UserManager;
-import android.provider.Settings;
 
 import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
@@ -76,21 +75,16 @@
     @Config(shadows = { ShadowSecureSettings.class, ShadowUtils.class })
     public void isAvailable_nonSystemUser() {
         when(mUserManager.isAdminUser()).thenReturn(false);
-        ShadowUtils.setIsCarrierDemoUser(false);
+        ShadowUtils.setIsDemoUser(false);
 
         assertThat(mController.isAvailable()).isFalse();
     }
 
     @Test
     @Config(shadows = { ShadowSecureSettings.class, ShadowUtils.class })
-    public void isAvailable_carrierDemoUser() {
+    public void isAvailable_demoUser() {
         when(mUserManager.isAdminUser()).thenReturn(false);
-        ShadowUtils.setIsCarrierDemoUser(true);
-
-        final String carrierDemoModeSetting = "carrier_demo_mode";
-        when(mContext.getString(com.android.internal.R.string.config_carrierDemoModeSetting))
-                .thenReturn(carrierDemoModeSetting);
-        Settings.Secure.putInt(null, carrierDemoModeSetting, 1);
+        ShadowUtils.setIsDemoUser(true);
 
         assertThat(mController.isAvailable()).isTrue();
     }
diff --git a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java
index 208fae3..9b1e26e 100644
--- a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java
+++ b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java
@@ -16,6 +16,7 @@
 
 package com.android.settings.testutils.shadow;
 
+import android.content.ComponentName;
 import android.content.Context;
 
 import com.android.settings.Utils;
@@ -28,7 +29,7 @@
 public class ShadowUtils {
 
     private static IFingerprintManager sFingerprintManager = null;
-    private static boolean sIsCarrierDemoUser;
+    private static boolean sIsDemoUser;
 
     @Implementation
     public static int enforceSameOwner(Context context, int userId) {
@@ -46,7 +47,7 @@
 
     public static void reset() {
         sFingerprintManager = null;
-        sIsCarrierDemoUser = false;
+        sIsDemoUser = false;
     }
 
     @Implementation
@@ -54,12 +55,12 @@
         return true;
     }
 
-    public static void setIsCarrierDemoUser(boolean isCarrierDemoUser) {
-        sIsCarrierDemoUser = isCarrierDemoUser;
+    public static void setIsDemoUser(boolean isDemoUser) {
+        sIsDemoUser = isDemoUser;
     }
 
     @Implementation
-    public static boolean isCarrierDemoUser(Context context) {
-        return sIsCarrierDemoUser;
+    public static boolean isDemoUser(Context context) {
+        return sIsDemoUser;
     }
 }
diff --git a/tests/robotests/src/com/android/settings/widget/ActionBarShadowControllerTest.java b/tests/robotests/src/com/android/settings/widget/ActionBarShadowControllerTest.java
index 2fbf03e..be50d77 100644
--- a/tests/robotests/src/com/android/settings/widget/ActionBarShadowControllerTest.java
+++ b/tests/robotests/src/com/android/settings/widget/ActionBarShadowControllerTest.java
@@ -17,12 +17,19 @@
 package com.android.settings.widget;
 
 
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
 import android.app.ActionBar;
 import android.app.Activity;
 import android.support.v7.widget.RecyclerView;
+import android.view.View;
 
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 import com.android.settingslib.core.lifecycle.LifecycleObserver;
 
@@ -31,17 +38,12 @@
 import org.junit.runner.RunWith;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
 import org.robolectric.util.ReflectionHelpers;
 
 import java.util.List;
 
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class ActionBarShadowControllerTest {
@@ -53,11 +55,13 @@
     @Mock
     private ActionBar mActionBar;
     private Lifecycle mLifecycle;
+    private View mView;
 
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
         when(mActivity.getActionBar()).thenReturn(mActionBar);
+        mView = new View(RuntimeEnvironment.application);
         mLifecycle = new Lifecycle();
     }
 
@@ -67,9 +71,23 @@
 
         ActionBarShadowController.attachToRecyclerView(mActivity, mLifecycle, mRecyclerView);
 
-        verify(mActionBar).setElevation(0);
+        verify(mActionBar).setElevation(ActionBarShadowController.ELEVATION_LOW);
     }
 
+    @Test
+    public void attachToRecyclerView_customViewAsActionBar_shouldUpdateElevationOnScroll() {
+        // Setup
+        mView.setElevation(50);
+        when(mRecyclerView.canScrollVertically(-1)).thenReturn(false);
+        final ActionBarShadowController controller =
+                ActionBarShadowController.attachToRecyclerView(mView, mLifecycle, mRecyclerView);
+        assertThat(mView.getElevation()).isEqualTo(ActionBarShadowController.ELEVATION_LOW);
+
+        // Scroll
+        when(mRecyclerView.canScrollVertically(-1)).thenReturn(true);
+        controller.mScrollChangeWatcher.onScrolled(mRecyclerView, 10 /* dx */, 10 /* dy */);
+        assertThat(mView.getElevation()).isEqualTo(ActionBarShadowController.ELEVATION_HIGH);
+    }
 
     @Test
     public void attachToRecyclerView_lifecycleChange_shouldAttachDetach() {
diff --git a/tests/unit/src/com/android/settings/dream/DreamSettingsLaunchTest.java b/tests/unit/src/com/android/settings/dream/DreamSettingsLaunchTest.java
new file mode 100644
index 0000000..497fa0a
--- /dev/null
+++ b/tests/unit/src/com/android/settings/dream/DreamSettingsLaunchTest.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2017 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.dream;
+
+import android.content.Context;
+import android.content.Intent;
+import android.provider.Settings;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.filters.SmallTest;
+import android.support.test.runner.AndroidJUnit4;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@RunWith(AndroidJUnit4.class)
+@SmallTest
+public class DreamSettingsLaunchTest {
+
+    @Test
+    public void launchFromIntent_doesNotCrash() {
+        final Context context = InstrumentationRegistry.getTargetContext();
+        Intent intent = new Intent(Settings.ACTION_DREAM_SETTINGS);
+
+        context.startActivity(intent);
+    }
+}
