diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 3f3cfd7..a71821f 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -859,7 +859,7 @@
                 <category android:name="android.intent.category.DEFAULT" />
                 <category android:name="android.intent.category.VOICE_LAUNCH" />
             </intent-filter>
-            <intent-filter android:priority="9">
+            <intent-filter android:priority="10">
                 <action android:name="com.android.settings.action.SETTINGS" />
             </intent-filter>
             <meta-data android:name="com.android.settings.category"
@@ -885,7 +885,7 @@
                 <category android:name="android.intent.category.VOICE_LAUNCH" />
                 <category android:name="com.android.settings.SHORTCUT" />
             </intent-filter>
-            <intent-filter android:priority="8">
+            <intent-filter android:priority="9">
                 <action android:name="com.android.settings.action.SETTINGS" />
             </intent-filter>
             <meta-data android:name="com.android.settings.category"
@@ -1932,16 +1932,6 @@
                 android:value="com.android.settings.wfd.WifiDisplaySettings" />
         </activity>
 
-
-        <!-- Development settings -->
-
-        <!-- DeviceInfo adds the user's requested build to stats upload.  -->
-        <receiver android:name=".DeviceInfo$StatsReportReceiver">
-            <intent-filter>
-                <action android:name="android.intent.action.STATISTICS_REPORT" />
-            </intent-filter>
-        </receiver>
-
         <activity android:name="Display" android:label="@string/display_label"
                 android:configChanges="fontScale"
                 android:taskAffinity="com.android.settings"
@@ -2336,8 +2326,8 @@
                        android:value="com.android.settings.notification.ZenAccessSettings" />
         </activity>
 
-        <activity android:name="Settings$NotificationSettingsActivity"
-                android:label="@string/notification_settings"
+        <activity android:name="Settings$ConfigureNotificationSettingsActivity"
+                android:label="@string/configure_notification_settings"
                 android:icon="@drawable/ic_settings_notifications"
                 android:exported="true"
                 android:taskAffinity="">
@@ -2350,22 +2340,18 @@
                 <category android:name="android.intent.category.DEFAULT" />
                 <category android:name="com.android.settings.SHORTCUT" />
             </intent-filter>
-            <intent-filter android:priority="7">
-                <action android:name="com.android.settings.action.SETTINGS" />
-            </intent-filter>
-            <meta-data android:name="com.android.settings.category"
-                android:value="com.android.settings.category.device" />
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.notification.NotificationSettings" />
+                android:value="com.android.settings.notification.ConfigureNotificationSettings" />
             <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
                 android:value="true" />
         </activity>
 
         <!-- Keep compatibility with old shortcuts. -->
-        <activity-alias android:name="Settings$SoundSettingsActivity"
-                android:label="@string/notification_settings"
+        <activity android:name="Settings$SoundSettingsActivity"
+                android:label="@string/sound_settings"
+                android:icon="@drawable/ic_settings_sound"
                 android:taskAffinity=""
-                android:targetActivity="Settings$NotificationSettingsActivity">
+                android:exported="true">
             <intent-filter android:priority="1">
                 <action android:name="com.android.settings.SOUND_SETTINGS" />
                 <action android:name="android.settings.SOUND_SETTINGS" />
@@ -2375,20 +2361,26 @@
                 <action android:name="android.intent.action.MAIN" />
                 <category android:name="android.intent.category.DEFAULT" />
                 <category android:name="android.intent.category.VOICE_LAUNCH" />
+                <category android:name="com.android.settings.SHORTCUT" />
             </intent-filter>
+            <intent-filter android:priority="7">
+                <action android:name="com.android.settings.action.SETTINGS" />
+            </intent-filter>
+            <meta-data android:name="com.android.settings.category"
+                       android:value="com.android.settings.category.device" />
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.notification.NotificationSettings" />
+                android:value="com.android.settings.notification.SoundSettings" />
             <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
                 android:value="true" />
-        </activity-alias>
+        </activity>
 
         <!-- Keep compatibility with old shortcuts. -->
         <activity-alias android:name="SoundSettings"
-                android:label="@string/notification_settings"
+                android:label="@string/sound_settings"
                 android:exported="true"
-                android:targetActivity="Settings$NotificationSettingsActivity">
+                android:targetActivity="Settings$SoundSettingsActivity">
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.notification.NotificationSettings" />
+                android:value="com.android.settings.notification.SoundSettings" />
         </activity-alias>
 
         <activity android:name="Settings$OtherSoundSettingsActivity"
@@ -2412,8 +2404,14 @@
         <!-- Show apps for which application-level notification settings are applicable -->
         <activity android:name="Settings$NotificationAppListActivity"
                 android:label="@string/app_notifications_title"
+                android:icon="@drawable/ic_settings_notifications"
                 android:exported="true"
                 android:taskAffinity="">
+            <intent-filter android:priority="8">
+                <action android:name="com.android.settings.action.SETTINGS" />
+            </intent-filter>
+            <meta-data android:name="com.android.settings.category"
+                       android:value="com.android.settings.category.device" />
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
                 android:value="com.android.settings.applications.ManageApplications" />
         </activity>
diff --git a/res/menu/zen_settings_menu.xml b/res/menu/zen_settings_menu.xml
new file mode 100644
index 0000000..ff28403
--- /dev/null
+++ b/res/menu/zen_settings_menu.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2015 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.
+-->
+
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+    <item
+        android:id="@+id/zen_access"
+        android:title="@string/manage_zen_access_title"
+        android:showAsAction="never" />
+</menu>
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 91995cc..0411030 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Stel my ligging, ontsluit skerm, sluit SIM-kaart, eiebewys sluit"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Stel my ligging, skermontsluiting, eiebewysbergingslot"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Wagwoorde"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Gedeaktiveer deur administrateur"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Vingerafdruk"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Bestuur vingerafdrukke"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Gebruik vingerafdruk vir"</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 03205a2..2ec1986 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"የእኔን ስፍራ፣ማያ ክፈት፣SIM ካርድ ሽንጉር፣ መረጃ ማከማቻ ሽንጉር አዘጋጅ።"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"የእኔን ስፍራ፣ማያ ክፈት፣ መረጃ ማከማቻ ሽንጉር አዘጋጅ።"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"የይለፍ ቃሎች"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"በአስተዳዳሪ የተሰናከለ"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"የጣት አሻራ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"የጣት አሻራዎችን ያስተዳድሩ"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"የጣት አሻራን ይጠቀሙ ለ"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 5cbd71a..e4e30bd 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -317,6 +317,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"‏تعيين موقعي، إلغاء تأمين الشاشة، تأمين شريحة SIM، تأمين تخزين الاعتماد"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"تعيين موقعي، إلغاء تأمين الشاشة، تأمين تخزين الاعتماد"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"كلمات المرور"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"معطّل بواسطة المشرف"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"بصمة الإصبع"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"إدارة بصمات الإصبع"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"استخدام بصمة الإصبع في"</string>
diff --git a/res/values-az-rAZ/strings.xml b/res/values-az-rAZ/strings.xml
index 772f9b6..7b38922 100644
--- a/res/values-az-rAZ/strings.xml
+++ b/res/values-az-rAZ/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Məkanım\'ı, ekranı kiliddən çıxarmanı, hesab yaddaş kilidini ayarlayın,"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Məkanım\'ı, ekranı kiliddən çıxarmanı, hesab yaddaş kilidini ayarlayın,"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Parollar"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Administrator tərəfindən deaktiv edildi"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Barmaq izi"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Barmaq izlərini idarə edin"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Bunun üçün barmaq izi istifadə edin:"</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index a3a9ac3..c2375fd 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Задаване на Моето местоположение, отключване на екран, заключване на SIM картата и на хранилището за идентификационни данни"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Задаване на Моето местоположение, отключване на екран и заключване на хранилището за идентификационни данни"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Пароли"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Деактивирано от администратора"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Отпечатък"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Отпечатъци: Управл."</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Oтпечатък: Ползване за"</string>
diff --git a/res/values-bn-rBD/strings.xml b/res/values-bn-rBD/strings.xml
index 00a405b..0dee9eb 100644
--- a/res/values-bn-rBD/strings.xml
+++ b/res/values-bn-rBD/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"আমার স্থান, স্ক্রীন আনলক, সিম কার্ড লক, ক্রেডেনশিয়াল সঞ্চয়স্থান লক সেট করুন"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"আমার স্থান, স্ক্রীন আনলক, ক্রেডেনশিয়াল সঞ্চয়স্থান লক সেট করুন"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"পাসওয়ার্ড"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"প্রশাসক দ্বারা অক্ষমিত"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"আঙ্গুলের ছাপ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"আঙ্গুলের ছাপগুলি পরিচালনা করুন"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"এর জন্য আঙ্গুলের ছাপ ব্যবহার করুন"</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 0103c75..cb1c390 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Defineix La meva ubicació, el desbloqueig de la pantalla, el bloqueig de la targeta SIM i el bloqueig de l\'emmagatzematge de credencials"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Defineix La meva ubicació, el desbloqueig de pantalla i el bloqueig d\'emmagatzematge de credencials"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Contrasenyes"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Opció desactivada per l\'administrador"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Empremta digital"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Gest. empremtes digit."</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Util. empr. digit. per"</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index f2f507c..4f564cb 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Moje poloha, odemknutí obrazovky, zámek SIM, zámek úložiště pověření"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Nastavení funkce Moje poloha, odemknutí obrazovky a zamknutí úložiště pověření"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Hesla"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Zakázáno administrátorem"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Otisk prstu"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Správa otisků prstů"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"K čemu otisk používat"</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index e1c20b4..fc73694 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Angiv Min placering, oplåsning af skærmen, låst SIM-kort og lager for loginoplysninger"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Angiv Min placering, oplåsning af skærmen, lager for loginoplysninger"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Adgangskoder"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Deaktiveret af administratoren"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingeraftryk"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Adm. fingeraftryk"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Brug fingeraftryk til"</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 2e5ce3c..5ea5799 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Meinen Standort, Display-Entsperrung, SIM-Kartensperre und Sperre für Anmeldeinformationsspeicher festlegen"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Meinen Standort, Display-Entsperrung, SIM-Kartensperrung und Sperrung des Anmeldeinformationsspeichers festlegen"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Passwörter"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Vom Administrator deaktiviert"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingerabdruck"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Fingerabdrücke verwalten"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Abdruck nutzen für"</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index a55792d..dd21bd7 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Ορισμός του \"Η τοποθεσία μου\", ξεκλειδώματος οθόνης, κλειδώματος κάρτας SIM, κλειδώματος αποθηκευτικού χώρου διαπιστευτηρίων"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Ορισμός του \"Η τοποθεσία μου\", του ξεκλειδώματος οθόνης και του κλειδώματος αποθηκευτικού χώρου διαπιστευτηρίων"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Κωδικοί πρόσβασης"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Απενεργοποιήθηκε από το διαχειριστή"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Δακτυλικά αποτυπώματα"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Διαχείριση μον.χαρακτ."</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Χρήση μον.χαρακτ.για"</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 650c5bc..3a32303 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Set My Location, screen unlock, SIM card lock, credential storage lock"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Set My Location, screen unlock, credential storage lock"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Passwords"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Disabled by administrator"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingerprint"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Manage fingerprints"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Use fingerprint for"</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 650c5bc..3a32303 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Set My Location, screen unlock, SIM card lock, credential storage lock"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Set My Location, screen unlock, credential storage lock"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Passwords"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Disabled by administrator"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingerprint"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Manage fingerprints"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Use fingerprint for"</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 650c5bc..3a32303 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Set My Location, screen unlock, SIM card lock, credential storage lock"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Set My Location, screen unlock, credential storage lock"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Passwords"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Disabled by administrator"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingerprint"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Manage fingerprints"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Use fingerprint for"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 6c69dab..afb4e9f 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Establecer Mi ubicación, desbloqueo de pantalla, bloqueo de la tarjeta SIM, bloqueo de almacenamiento de credenciales"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Establecer Mi ubicación, desbloqueo de pantalla, bloqueo de almacenamiento de credencial"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Contraseñas"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Inhabilitada por el administrador"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Huella digital"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Adm. huellas digitales"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Usar huella dig. para"</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 7da1d74..8178476 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Establecer Mi ubicación, bloqueo de pantalla, bloqueo de tarjeta SIM y bloqueo de almacenamiento de credenciales"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Establecer ubicación, bloqueo de pantalla y bloqueo de almacenamiento de credenciales"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Contraseñas"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Inhabilitado por el administrador"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Huella digital"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Administrar huellas"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Usar huella para"</string>
diff --git a/res/values-et-rEE/strings.xml b/res/values-et-rEE/strings.xml
index db18aac..60a41c5 100644
--- a/res/values-et-rEE/strings.xml
+++ b/res/values-et-rEE/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Määrake Minu asukoht, ekraani avamine, SIM-kaardi lukk, mandaadi talletuslukk"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Määrake oma asukoht, ekraani avamine, mandaadi talletuslukk"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Paroolid"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Administraator on keelanud"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Sõrmejälg"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Sõrmejälgede haldamine"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Sõrmej. kasutatakse:"</string>
diff --git a/res/values-eu-rES/strings.xml b/res/values-eu-rES/strings.xml
index 25d906d..5fe8d67 100644
--- a/res/values-eu-rES/strings.xml
+++ b/res/values-eu-rES/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Ezarri Nire kokapena, pantailaren desblokeoa, SIM txartelaren blokeoa, kredentzialen biltegiaren blokeoa"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Ezarri Nire kokapena, pantailaren desblokeoa, kredentzialen biltegiaren blokeoa."</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Pasahitzak"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Administratzaileak desgaitu du"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Hatz-marka digitala"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Kudeatu hatz-markak"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Hatz-marken erabilera"</string>
@@ -2557,7 +2558,7 @@
     <string name="app_notification_block_title" msgid="4069351066849087649">"Blokeatu guztiak"</string>
     <string name="app_notification_block_summary" msgid="9049487483231233726">"Ez erakutsi inoiz aplikazio honen jakinarazpenak"</string>
     <string name="app_notification_override_dnd_title" msgid="7867458246395884830">"Ez erabili \"Ez molestatu\" aukera"</string>
-    <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"Baimendu jakinarazpenek jarduera etenaraztea \"Ez molestatu\" aukera aukeratuta dagoenean, baina lehentasunezko jakinarazpenen salbuespenarekin"</string>
+    <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"Baimendu jakinarazpenek jarduera etenaraztea \"Ez molestatu\" aukera lehentasunezko jakinarazpenen salbuespenarekin aukeratuta dagoenean"</string>
     <string name="app_notification_sensitive_title" msgid="8465860579482264139">"Ezkutatu isilpeko informazioa"</string>
     <string name="app_notification_sensitive_summary" msgid="2515056180303710894">"Gailua blokeatuta dagoenean, ezkutatu informazio pribatua izan dezakeen jakinarazpenetako edukia"</string>
     <string name="app_notification_row_banned" msgid="5983655258784814773">"Blokeatuta"</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 2594616..5624a4b 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"تنظیم مکان من، قفل صفحه، قفل سیم کارت، قفل محل ذخیره اطلاعات کاربری"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"تنظیم مکان من، بازگشایی قفل صفحه، قفل محل ذخیره اطلاعات کاربری"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"گذرواژه‌ها"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"توسط سرپرست غیرفعال شده است"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"اثر انگشت"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"مدیریت اثر انگشت"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"استفاده از اثر انگشت برای"</string>
@@ -372,8 +373,8 @@
     <string name="crypt_keeper_encrypt_title" product="tablet" msgid="1060273569887301457">"رمزگذاری رایانهٔ لوحی"</string>
     <string name="crypt_keeper_encrypt_title" product="default" msgid="1878996487755806122">"رمزگذاری تلفن"</string>
     <string name="crypt_keeper_encrypted_summary" msgid="1868233637888132906">"رمز گذاری شده"</string>
-    <string name="crypt_keeper_desc" product="tablet" msgid="503014594435731275">"می‌توانید حساب‌ها، تنظیمات، برنامه‌های دانلود شده به‌علاوه داده‌های آنها، رسانه‌ها و سایر فایل‌هایتان را رمزگذاری کنید. بعد از رمزگذاری رایانه لوحی‌تان، با فرض اینکه یک قفل صفحه تنظیم کرده‌اید (که می‌تواند یک الگو، پین عددی یا گذرواژه باشد)، باید هر بار که رایانه لوحی را روشن می‌کنید، قفل صفحه را برای رمزگشایی از رایانه لوحی باز کنید. تنها راه دیگر برای رمزگشایی، بازنشانی به داده کارخانه و پاک کردن همه داده‌هایتان می‌باشد.\n\nرمزگذاری یک ساعت یا بیشتر طول می‌کشد. باید این کار را زمانی آغاز کنید که باتری شارژ کامل باشد و در طول این مدت رایانه لوحی‌تان همچنان به برق وصل باشد. اگر وقفه‌ای در فرآیند به وجود آید، بعضی از داده‌هایتان یا همه آنها را از دست خواهید داد."</string>
-    <string name="crypt_keeper_desc" product="default" msgid="2579929266645543631">"می‌توانید حساب‌ها، تنظیمات، برنامه‌های دانلود شده به‌علاوه داده‌های آنها، رسانه‌ها و سایر فایل‌هایتان را رمزگذاری کنید. بعد از رمزگذاری تلفنتان، با فرض اینکه یک قفل صفحه تنظیم کرده‌اید (که می‌تواند یک الگو، پین عددی یا گذرواژه باشد)، باید هر بار که تلفن را روشن می‌کنید، قفل صفحه را برای رمزگشایی از تلفن باز کنید. تنها راه دیگر برای رمزگشایی بازنشانی به داده کارخانه و پاک کردن همه داده‌هایتان می‌باشد.\n\nرمزگذاری یک ساعت یا بیشتر طول می‌کشد. باید این کار را زمانی آغاز کنید که باتری شارژ کامل باشد و در طول این مدت تلفنتان همچنان به برق وصل باشد. اگر وقفه‌ای در فرآیند به وجود آید، بعضی از داده‌هایتان یا همه آنها را از دست خواهید داد."</string>
+    <string name="crypt_keeper_desc" product="tablet" msgid="503014594435731275">"می‌توانید حساب‌ها، تنظیمات، برنامه‌های دانلود شده به‌علاوه داده‌های آنها، رسانه‌ها و سایر فایل‌هایتان را رمزگذاری کنید. بعد از رمزگذاری رایانه لوحی‌تان، با فرض اینکه یک قفل صفحه تنظیم کرده‌اید (که می‌تواند یک الگو، پین عددی یا گذرواژه باشد)، باید هر بار که رایانه لوحی را روشن می‌کنید، قفل صفحه را برای رمزگشایی از رایانه لوحی باز کنید. تنها راه دیگر برای رمزگشایی، بازنشانی داده‌های کارخانه و پاک کردن همه داده‌هایتان می‌باشد.\n\nرمزگذاری یک ساعت یا بیشتر طول می‌کشد. باید این کار را زمانی آغاز کنید که باتری شارژ کامل باشد و در طول این مدت رایانه لوحی‌تان همچنان به برق وصل باشد. اگر وقفه‌ای در فرآیند به وجود آید، بعضی از داده‌هایتان یا همه آنها را از دست خواهید داد."</string>
+    <string name="crypt_keeper_desc" product="default" msgid="2579929266645543631">"می‌توانید حساب‌ها، تنظیمات، برنامه‌های دانلود شده به‌علاوه داده‌های آنها، رسانه‌ها و سایر فایل‌هایتان را رمزگذاری کنید. بعد از رمزگذاری تلفنتان، با فرض اینکه یک قفل صفحه تنظیم کرده‌اید (که می‌تواند یک الگو، پین عددی یا گذرواژه باشد)، باید هر بار که تلفن را روشن می‌کنید، قفل صفحه را برای رمزگشایی از تلفن باز کنید. تنها راه دیگر برای رمزگشایی بازنشانی داده‌های کارخانه و پاک کردن همه داده‌هایتان می‌باشد.\n\nرمزگذاری یک ساعت یا بیشتر طول می‌کشد. باید این کار را زمانی آغاز کنید که باتری شارژ کامل باشد و در طول این مدت تلفنتان همچنان به برق وصل باشد. اگر وقفه‌ای در فرآیند به وجود آید، بعضی از داده‌هایتان یا همه آنها را از دست خواهید داد."</string>
     <string name="crypt_keeper_button_text" product="tablet" msgid="1189623490604750854">"رمزگذاری رایانهٔ لوحی شخصی"</string>
     <string name="crypt_keeper_button_text" product="default" msgid="2008346408473255519">"رمزگذاری تلفن"</string>
     <string name="crypt_keeper_low_charge_text" msgid="2029407131227814893">"باتری خود را شارژ کرده و دوباره امتحان کنید."</string>
@@ -1112,7 +1113,7 @@
     <string name="network_reset_not_available" msgid="7188610385577164676">"بازنشانی شبکه برای این کاربر در دسترس نیست"</string>
     <string name="reset_network_complete_toast" msgid="787829973559541880">"تنظیمات شبکه بازنشانی شد"</string>
     <string name="device_reset_title" msgid="2384019005638768076">"بازنشانی دستگاه"</string>
-    <string name="master_clear_title" msgid="5907939616087039756">"بازنشانی به داده‌های کارخانه"</string>
+    <string name="master_clear_title" msgid="5907939616087039756">"بازنشانی داده‌های کارخانه"</string>
     <string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"‏با این کار همه داده‌های "<b>"حافظهٔ داخلی"</b>" رایانهٔ لوحی شما پاک می‌شود، از جمله:\n\n"<li>"حساب Google شما"<li>\n</li>"داده‌ها و تنظیمات برنامه و سیستم"<li>\n</li>"برنامه‌های دانلود شده"</li></string>
     <string name="master_clear_desc" product="default" msgid="4800386183314202571">"‏با این کار همه داده‌های "<b>"حافظه داخلی"</b>" گوشی شما پاک می‌شود، از جمله:\n\n"<li>"حساب Google شما"</li>\n<li>"تنیمات و داده‌های برنامه و سیستم"</li>\n<li>"برنامه‌های دانلود شده"</li></string>
     <string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"شما در حال حاضر به حساب‌های زیر وارد شده‌اید:\n"</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index b65e6ac..fcd5fb7 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Aseta Oma sijainti, näytön lukituksen poisto, SIM-kortin lukitus, käyttöoikeustietojen tallennustilan lukitus"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Aseta Oma sijainti, näytön lukituksen poisto, käyttöoikeustietojen tallennustilan lukitus"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Salasanat"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Järjestelmänvalvojan käytöstä poistama"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Sormenjälki"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Sormenjälkien hallinta"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Sormenj. käyttökohde"</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index fcb64ce..c422117 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Définir les paramètres de l\'option Ma position et de verrouillage"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Définir les paramètres de la fonction Ma position, de déverrouillage de l\'écran et de verrouillage du stockage des identifiants"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Mots de passe"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Désactivé par l\'administrateur"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Lecteur d\'empreintes digitales"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Gérer les empreintes digitales"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Util. empr. dig. pour"</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 9c878f3..5a3d0b2 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Définir les paramètres de l\'option Ma position et de verrouillage"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Définir les paramètres de la fonction Ma position, de déverrouillage de l\'écran et de verrouillage du stockage des identifiants"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Mots de passe"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Désactivé par l\'administrateur"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Empreinte digitale"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Gérer empreintes num."</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Utiliser empr. num. pour"</string>
diff --git a/res/values-gl-rES/strings.xml b/res/values-gl-rES/strings.xml
index dc7ff49..b73209c 100644
--- a/res/values-gl-rES/strings.xml
+++ b/res/values-gl-rES/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Define A miña localización, o desbloqueo da pantalla, o bloqueo da tarxeta SIM e o bloqueo do almacenamento de credenciais"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Define A miña localización, o desbloqueo da pantalla e o bloqueo do almacenamento de credenciais"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Contrasinais"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Desactivado polo administrador"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Impresión dixital"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Xest. identificación"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Usar identificac. para"</string>
diff --git a/res/values-gu-rIN/strings.xml b/res/values-gu-rIN/strings.xml
index c8a57e9..1d635bc 100644
--- a/res/values-gu-rIN/strings.xml
+++ b/res/values-gu-rIN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"મારું સ્થાન, સ્ક્રીન અનલૉક, SIM કાર્ડ લૉક, ઓળખપત્ર સંગ્રહ લૉક સેટ કરો"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"મારું સ્થાન, સ્ક્રીન અનલૉક, ઓળખપત્ર સંગ્રહ લૉક સેટ કરો"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"પાસવર્ડ્સ"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"વ્યવસ્થાપક દ્વારા અક્ષમ"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"ફિંગરપ્રિન્ટ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"ફિંગરપ્રિન્ટનું સંચાલન"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"આ માટે ફિંગરપ્રિન્ટ ઉપયોગ"</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index f640e6a..4900226 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"मेरा स्‍थान, स्‍क्रीन अनलॉक, सिम कार्ड लॉक, प्रमाणिकता मेमोरी लॉक सेट करें"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"मेरा स्‍थान, स्‍क्रीन अनलॉक, प्रमाणिकता मेमोरी लॉक सेट करें"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"पासवर्ड"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"व्यवस्थापक के द्वारा अक्षम किया गया"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"अंगुली की छाप"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"फ़िंगरप्रिंट प्रबंधित करें"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"इनके हेतु फ़िंगरप्रिंट उपयोग करें"</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 430ceb3..7e2dcf2 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -314,6 +314,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Postavi Moju lokaciju, otključavanje zaslona, zaključavanje SIM kartice, zaključavanje spremnika za vjerodajnice"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Postavi Moju lokaciju, otključavanje zaslona, zaključavanje pohranjivanja vjerodajnica"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Zaporke"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Onemogućio administrator"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Otisak prsta"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Otisci prstiju"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Upotreba otiska prsta"</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 47d53dc..08c3178 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Saját pozíció beállítása, képernyőzár feloldása, SIM kártya zárolása, hitelesítési adatok tárolójának zárolása"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Saját pozíció beállítása, képernyőzár feloldása, hitelesítési adatok tárolójának zárolása"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Jelszavak"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Letiltva a rendszergazda által"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Ujjlenyomat"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Ujjlenyomatok kezelése"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Ujjlenyomat ehhez:"</string>
diff --git a/res/values-hy-rAM/strings.xml b/res/values-hy-rAM/strings.xml
index 1a2bb21..690d3c9 100644
--- a/res/values-hy-rAM/strings.xml
+++ b/res/values-hy-rAM/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Կարգավորել Իմ տեղադրությունը, էկրանի ապակողպումը, SIM քարտի կողպումը, վկայագրերի պահոցի կողպումը"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Կարգավորել իմ տեղադրությունը, էկրանի ապակողպումը, հավատարմագրային պահոցի կողպումը"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Գաղտնաբառեր"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Կասեցված է ադմինիստրատորի կողմից"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Մատնահետք"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Մատնահետքերի կառավար"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Օգտագործման նպատակը"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 9be7ffc..b448e33 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Setel Lokasiku, pembuka kunci layar, kunci kartu SIM, kunci penyimpanan kredensial"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Setel Lokasiku, pembuka kunci layar, kunci penyimpanan kredensial"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Sandi"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Dinonaktifkan oleh administrator"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Sidik jari"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Mengelola sidik jari"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Sidik jari untuk"</string>
diff --git a/res/values-is-rIS/strings.xml b/res/values-is-rIS/strings.xml
index e28d5e0..bf8a741 100644
--- a/res/values-is-rIS/strings.xml
+++ b/res/values-is-rIS/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Stilla staðsetninguna mína, opnun skjás, SIM-kortalás, lás skilríkjageymslu"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Stilla staðsetninguna mína, opnun skjás, lás skilríkjageymslu"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Aðgangsorð"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Stjórnandi gerði óvirkt"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingrafar"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Stjórna fingraförum"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Nota fingrafar fyrir"</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index a150c6f..ba96826 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Imposta La mia posizione, sblocco schermo, blocco SIM, blocco cred."</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Imposta La mia posizione, sblocco schermo, blocco archivio credenziali"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Password"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Disattivata dall\'amministratore"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Impronta digitale"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Gestisci impronte digitali"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Utilizza l\'impronta digitale per"</string>
@@ -2846,7 +2847,7 @@
     <string name="system_alert_window_access_title" msgid="8811695381437304132">"Spostamento su altre app"</string>
     <string name="permit_draw_overlay" msgid="6606018549732046201">"Consenti Posizionamento davanti ad altre app"</string>
     <string name="app_overlay_permission_preference" msgid="8355410276571387439">"Autorizzazione Spostamento di app sopra"</string>
-    <string name="allow_overlay_description" msgid="7895191337585827691">"Questa autorizzazione consente a un\'app di spostarsi sopra altre app in uso e potrebbe interferire con il tuo utilizzo dell\'interfaccia in altre applicazioni o cambiare ciò che credi di vedere in altre applicazioni."</string>
+    <string name="allow_overlay_description" msgid="7895191337585827691">"Questa autorizzazione consente di visualizzare un\'app sopra altre app in uso. Potrebbe interferire con il tuo utilizzo dell\'interfaccia in altre applicazioni o modificare ciò che credi di vedere in altre applicazioni."</string>
     <string name="keywords_system_alert_window" msgid="8579673659566564926">"finestra dialogo avviso sistema Posizionamento davanti ad altre appp"</string>
     <string name="overlay_settings" msgid="222062091489691363">"Spostamento su altre app"</string>
     <string name="system_alert_window_summary" msgid="4268867238063922290">"<xliff:g id="COUNT_0">%d</xliff:g> app su <xliff:g id="COUNT_1">%d</xliff:g> sono autorizzate a spostarsi sopra altre app"</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index e5cc336..df180dc 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"‏הגדר את \'המיקום שלי\', ביטול נעילת מסך, נעילת כרטיס SIM, נעילת אחסון אישורים"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"הגדר את \'המיקום שלי\', ביטול נעילת מסך, נעילת אחסון אישורים"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"סיסמאות"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"הושבת על ידי מנהל המערכת"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"טביעת אצבע"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"נהל טביעות אצבע"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"השתמש בטביעות אצבע ל-"</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index a2028ab..f1cb538 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"現在地、画面ロック、SIMカードロック、認証情報ストレージのロック"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"現在地、画面のロック解除、認証情報ストレージのロックを設定します"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"パスワード"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"管理者によって無効にされています"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"指紋"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"指紋の管理"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"指紋の用途"</string>
diff --git a/res/values-ka-rGE/strings.xml b/res/values-ka-rGE/strings.xml
index e34eb45..e1390fe 100644
--- a/res/values-ka-rGE/strings.xml
+++ b/res/values-ka-rGE/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"„ჩემი მდებარეობის“ პარამეტრების დაყენება, ეკრანის განბლოკვა და SIM ბარათის დაბლოკვა, ავტორიზაციის მონაცემების საცავის დაბლოკვა"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"დააყენე ჩემი მდებარეობის, ეკრანის განბლოკვისა და ავტორიზაციის მონაცემთა საცავის პარამეტრები"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"პაროლები"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"გათიშულია ადმინისტრატორის მიერ"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"თითის ანაბეჭდი"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"ანაბეჭდების მართვა"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"ანაბეჭდების გამოყენება"</string>
diff --git a/res/values-kk-rKZ/strings.xml b/res/values-kk-rKZ/strings.xml
index cf84923..db609e3 100644
--- a/res/values-kk-rKZ/strings.xml
+++ b/res/values-kk-rKZ/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Менің аймағым, экран бекіту, SIM картасын бекіту, растау дерекқорын бекітуді орнату"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Менің аймағым, экран бекітпесі, растау деректері жадының бекітпесін реттеу"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Кілтсөздер"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Әкімші өшірген"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Саусақ ізі"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Саусақ таңбасын бас-у"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Саусақ таңбасын пайд-у"</string>
diff --git a/res/values-km-rKH/strings.xml b/res/values-km-rKH/strings.xml
index 5689003..acfc11e 100644
--- a/res/values-km-rKH/strings.xml
+++ b/res/values-km-rKH/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"កំណត់​ទីតាំង​របស់​ខ្ញុំ ដោះ​សោ​អេក្រង់ ចាក់​សោ​ស៊ីម​កាត ចាក់​សោ​ការ​ផ្ទុក​ព័ត៌មាន​សម្ងាត់"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"កំណត់​ទីតាំង​ខ្ញុំ, ការ​ដោះ​សោ​អេក្រង់, សោ​ឧបករណ៍​ផ្ទុក​ព័ត៌មាន​សម្ងាត់"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"ពាក្យ​សម្ងាត់"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"បាន​បិទ​ដោយ​អ្នក​គ្រប់គ្រង"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"ស្នាមម្រាមដៃ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"គ្រប់គ្រងស្នាមម្រាមដៃ"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"ប្រើស្នាមម្រាមដៃសម្រាប់"</string>
diff --git a/res/values-kn-rIN/strings.xml b/res/values-kn-rIN/strings.xml
index a27e703..4dbd763 100644
--- a/res/values-kn-rIN/strings.xml
+++ b/res/values-kn-rIN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"ನನ್ನ ಸ್ಥಾನ, ಪರದೆ ಅನ್‌ಲಾಕ್, ಸಿಮ್‌ ಕಾರ್ಡ್‌ ಲಾಕ್, ರುಜುವಾತು ಸಂಗ್ರಹಣೆ ಲಾಕ್ ಅನ್ನು ಹೊಂದಿಸಿ"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"ನನ್ನ ಸ್ಥಾನ, ಪರದೆ ಅನ್‌ಲಾಕ್, ರುಜುವಾತು ಸಂಗ್ರಹಣೆ ಲಾಕ್ ಅನ್ನು ಹೊಂದಿಸಿ"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"ಪಾಸ್‌ವರ್ಡ್‌ಗಳು"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"ನಿರ್ವಾಹಕರಿಂದ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"ಫಿಂಗರ್‌ಪ್ರಿಂಟ್"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ನಿರ್ವ."</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಬಳಸಿ"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index a501abb..94e1435 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"내 위치, 화면 잠금해제, SIM 카드 잠금, 자격증명 저장소 잠금 설정"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"내 위치, 화면 잠금해제, 자격증명 저장소 잠금 설정"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"비밀번호"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"관리자가 사용 중지함"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"지문"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"지문 관리"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"지문을 사용할 항목"</string>
diff --git a/res/values-ky-rKG/strings.xml b/res/values-ky-rKG/strings.xml
index e030621..e5d0ddd 100644
--- a/res/values-ky-rKG/strings.xml
+++ b/res/values-ky-rKG/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Жайгашкан жеримди, экрандын кулпусун ачуу ыкмасын, SIM карта кулпусун, аныктоо эстутумунун кулпусун коюу"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Жайгашкан жеримди, экран кулпусун ачууну, аныктоо эстутумунун кулпусун коюу"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Сырсөздөр"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Администратор тарабынан өчүрүлгөн"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Манжа изи"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Манжа издерин башкаруу"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Манжа издерин колдонуу"</string>
diff --git a/res/values-lo-rLA/strings.xml b/res/values-lo-rLA/strings.xml
index f907d33..5479cc9 100644
--- a/res/values-lo-rLA/strings.xml
+++ b/res/values-lo-rLA/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"ຕັ້ງທີ່ຢູ່ຂອງຂ້ອຍ, ໜ້າຈໍປົດລັອກ, ການລັອກຊິມກາດ, ການລັອກບ່ອນຈັດເກັບຂໍ້ມູນຮັບຮອງ"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"ກຳນົດທີ່ຢູ່ຂອງຂ້ອຍ, ການປົດລັອກໜ້າຈໍ, ການລັອກບ່ອນເຈັດເກັບຂໍ້ມູນຮັບຮອງ"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"ລະ​ຫັດ​ຜ່ານ"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"ຖືກປິດການນຳໃຊ້ໂດຍຜູ່ເບິ່ງແຍງລະບົບ"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"ລາຍນີ້ວ​ມື"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"ຈັດ​ການ​ລາຍ​ນີ້ວ​ມື"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"ໃຊ້​ລາຍ​ນີ້ວ​ມື​ສຳ​ລັບ"</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index f9c49a0..f5e8606 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Nustatyti mano vietą, ekrano atrakinimą, SIM kortelės užraktą, įgaliojimų saugyklos užraktą"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Nustatyti mano vietą, ekrano atrakinimą, įgaliojimų saugyklos užraktą"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Slaptažodžiai"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Išjungė administratorius"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Kontr. kodo jutiklis"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Kontrolin. kodų tvark."</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Kontrolinių kodų naud."</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 65557fa..112b4a1 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -314,6 +314,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Manas atrašanās vietas, ekrāna atbloķēšanas, SIM kartes bloķēšanas, akreditācijas datu krātuves bloķēšanas iestatīšana"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Manas atrašanās vietas, ekrāna atbloķēšanas, akreditācijas datu krātuves bloķēšanas iestatīšana"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Paroles"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Atspējojis administrators"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Pirkstu nospiedumi"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Nospiedumu pārvaldība"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Nospieduma lietošana"</string>
diff --git a/res/values-mk-rMK/strings.xml b/res/values-mk-rMK/strings.xml
index 069b253..9dfad3f 100644
--- a/res/values-mk-rMK/strings.xml
+++ b/res/values-mk-rMK/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Подеси „Моја локација“, отклучување на екран, заклучување на СИМ картичка, заклучување на меморија со акредитиви"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Подеси „Моја локација“, отклучување на екран, заклучување на меморија за акредитиви"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Лозинки"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Оневозможено од администраторот"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Отпечаток"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Управување отпечатоци"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Користи отпечатоци за"</string>
diff --git a/res/values-ml-rIN/strings.xml b/res/values-ml-rIN/strings.xml
index eb25bcc..2dc8245 100644
--- a/res/values-ml-rIN/strings.xml
+++ b/res/values-ml-rIN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"എന്റെ ലൊക്കേഷൻ, സ്‌ക്രീൻ അൺലോക്ക്, സിം കാർഡ് ലോക്ക്, ക്രഡൻഷ്യൽ സംഭരണ ലോക്ക് എന്നിവ സജ്ജീകരിക്കുക"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"എന്റെ ലൊക്കേഷൻ, സ്‌ക്രീൻ അൺലോക്ക്, ക്രെഡൻഷ്യൽ സംഭരണ ലോക്ക് എന്നിവ സജ്ജീകരിക്കുക"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"പാ‌സ്‌വേഡുകൾ"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"അഡ്‌മിനിസ്ട്രേറ്റർ പ്രവർത്തനരഹിതമാക്കി"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"വിരലടയാളം"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"വിരലടയാളങ്ങൾ നിയന്ത്രിക്കുക"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"ഇതിനായി വിരലടയാളം ഉപയോഗിക്കുക"</string>
diff --git a/res/values-mn-rMN/strings.xml b/res/values-mn-rMN/strings.xml
index ec521ef..270104b 100644
--- a/res/values-mn-rMN/strings.xml
+++ b/res/values-mn-rMN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Миний Байршил, дэлгэц тайлах, SIM картны түгжээ, жуухны сангийн түгжээг тохируулах"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Миний Байршил, дэлгэц тайлах, жуухын сангийн түгжээ зэргийг тохируулах"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Нууц үг"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Админ идэвхгүй болгосон"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Хурууны хээ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Хурууны хээ удирдах"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Хурууны хээг дараах зорилгоор ашиглах"</string>
@@ -2545,9 +2546,9 @@
     <string name="app_notification_block_title" msgid="4069351066849087649">"Бүгдийг блокло"</string>
     <string name="app_notification_block_summary" msgid="9049487483231233726">"Энэ апп-н мэдэгдлийг хэзээ ч харуулахгүй"</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_sensitive_title" msgid="8465860579482264139">"Эмзэг мэдээллийг нуух"</string>
-    <string name="app_notification_sensitive_summary" msgid="2515056180303710894">"Төхөөрөмж түгжээтэй үед тэдгээр мэдэгдлээс хувийн мэдээлэл илрүүлж болзошгүй агуулгыг нуух"</string>
+    <string name="app_notification_sensitive_summary" msgid="2515056180303710894">"Төхөөрөмж түгжээтэй үед хувийн мэдээлэл гаргаж болзошгүй эдгээр мэдэгдэлийн агуулгыг нуух"</string>
     <string name="app_notification_row_banned" msgid="5983655258784814773">"Хориглогдсон"</string>
     <string name="app_notification_row_priority" msgid="7723839972982746568">"Чухал"</string>
     <string name="app_notification_row_sensitive" msgid="1809610030432329940">"Эмзэг"</string>
@@ -2882,6 +2883,6 @@
     <string name="data_usage_summary_format" msgid="7507047900192160585">"<xliff:g id="AMOUNT">%1$s</xliff:g> датаг ашигласан"</string>
     <string name="apps_summary" msgid="193158055537070092">"<xliff:g id="COUNT">%1$d</xliff:g> апп суулгасан"</string>
     <string name="storage_summary" msgid="1110250618334248745">"<xliff:g id="SIZE2">%2$s</xliff:g>-н <xliff:g id="SIZE1">%1$s</xliff:g>-г ашигласан"</string>
-    <string name="display_summary_on" msgid="5628868543070268634">"Боломжит гэрэлтүүлэг АСААЛТТАЙ"</string>
-    <string name="display_summary_off" msgid="6399558022426312990">"Боломжит гэрэлтүүлэг УНТРААЛТТАЙ"</string>
+    <string name="display_summary_on" msgid="5628868543070268634">"Тохируулагчтай гэрэлтүүлэг АСААЛТТАЙ байна"</string>
+    <string name="display_summary_off" msgid="6399558022426312990">"Тохируулагчтай гэрэлтүүлэг УНТРААЛТТАЙ байна"</string>
 </resources>
diff --git a/res/values-mr-rIN/strings.xml b/res/values-mr-rIN/strings.xml
index afda031..088abbc 100644
--- a/res/values-mr-rIN/strings.xml
+++ b/res/values-mr-rIN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"माझे स्थान, स्क्रीन अनलॉक, सिम कार्ड लॉक, क्रेडेन्शियल संचयन लॉक सेट करा"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"माझे स्थान, स्क्रीन लॉक, क्रेडेन्शियल संचयन लॉक सेट करा"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"संकेतशब्द"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"प्रशासकाने अक्षम केलेले"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"फिंगरप्रिंट"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"फिंगरप्रिंट व्यवस्‍थापित करा"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"फिंगरप्रिंट यासाठी वापरा"</string>
diff --git a/res/values-ms-rMY/strings.xml b/res/values-ms-rMY/strings.xml
index adc7983..30e2220 100644
--- a/res/values-ms-rMY/strings.xml
+++ b/res/values-ms-rMY/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Tetapkan Lokasi Saya, buka kunci skrin, kunci kad SIM, kunci storan bukti kelayakan"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Tetapkan Lokasi Saya, buka kunci skrin, kunci storan bukti kelayakan"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Kata laluan"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Dilumpuhkan oleh pentadbir"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Cap jari"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Urus cap jari"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Gunakan cap jari untuk"</string>
diff --git a/res/values-my-rMM/strings.xml b/res/values-my-rMM/strings.xml
index 7eb55f8..b4f3bf0 100644
--- a/res/values-my-rMM/strings.xml
+++ b/res/values-my-rMM/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"ကျွန်ုပ်၏တည်နေရာ စကရင်ကိုသော့ဖွင့်ခြင်း ဆင်းမ်ကဒ်သော့ချခြင်း ယုံကြည်စိတ်ချရသောသိုလှောင်ရာနေရာတို့ကို သတ်မှတ်မည်"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"ကျွန်ုပ်၏တည်နေရာ၊ စကရင်ပြန်ဖွင့်ခြင်း၊ ယုံကြည်စိတ်ချရသောသိုလှောင်ရာနေရာတို့အား သတ်မှတ်မည်"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"စကားဝှက်များ"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"စီမံခန့်ခွဲသူမှ ပိတ်ထားသည်"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"လက်ဗွေရာ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"လက်ဗွေရာများ စီမံရန်"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"လက်ဗွေရာအား သုံးရန်"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 3574ada..6de1bac 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Posisjon, skjermlås, SIM-kort-lås"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Angi Min posisjon, lås opp skjerm, lås påloggingsopplysninger"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Passord"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Deaktivert av administratoren"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingeravtrykk"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Admin. fingeravtrykk"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Bruk fingeravtrykk for"</string>
diff --git a/res/values-ne-rNP/strings.xml b/res/values-ne-rNP/strings.xml
index d68939d..b243e32 100644
--- a/res/values-ne-rNP/strings.xml
+++ b/res/values-ne-rNP/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"मेरो स्थान, स्क्रिन अनलक, SIM कार्ड लक, प्रामाणिक भण्डारण लक सेट गर्नुहोस्"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"मेरो स्थान, स्क्रिन अनलक, भण्डारण लकका गोप्य डेटा सेट गर्नुहोस्"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"पासवर्डहरू"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"प्रशासकद्वारा असक्षम पारियो"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"औंठाछाप"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"औंठाछापहरू व्यवस्थापन गर्नुहोस्"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"निम्नको लागि औठाछाप प्रयोग गर्नुहोस्"</string>
@@ -2528,7 +2529,7 @@
     <string name="lock_screen_notifications_interstitial_message" msgid="6164532459432182244">"तपाईँको उपकरण बन्द हुँदा, तपाईँ कसरी सूचनाहरू देखाउन चाहनुहुन्छ?"</string>
     <string name="lock_screen_notifications_interstitial_title" msgid="1416589393106326972">"सूचनाहरू"</string>
     <string name="app_notifications_title" msgid="5810577805218003760">"अनुप्रयोग सूचनाहरू"</string>
-    <string name="topic_notifications_title" msgid="7243623930984080881">"विषय सूचनाहरू"</string>
+    <string name="topic_notifications_title" msgid="7243623930984080881">"शीर्षक सूचनाहरू"</string>
     <string name="other_sound_settings" msgid="3151004537006844718">"अन्य ध्वनिहरू"</string>
     <string name="dial_pad_tones_title" msgid="1999293510400911558">"प्याड टोनहरू डायल गर्नुहोस्"</string>
     <string name="screen_locking_sounds_title" msgid="1340569241625989837">"स्किन लक आवाज"</string>
@@ -2556,10 +2557,10 @@
     <string name="loading_notification_apps" msgid="5031818677010335895">"अनुप्रयोगहरू लोड हुँदै..."</string>
     <string name="app_notification_block_title" msgid="4069351066849087649">"सबै रोक्नुहोस्"</string>
     <string name="app_notification_block_summary" msgid="9049487483231233726">"यस अनुप्रयोगबाट सूचनाहरू कहिल्यै नदेखाउनुहोस्"</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_title" msgid="7867458246395884830">"बाधा नपुर्याउनुहोस् मा ओभरराइड गर्नुहोस्"</string>
+    <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"बाधा नपुर्याउनुहोस् प्राथमिकतामा मात्र सेट भएको बेला यी सूचनाहरूबाट हुने अवरोधका लागि अनुमति दिनुहोस्।"</string>
     <string name="app_notification_sensitive_title" msgid="8465860579482264139">"संवेदनशील सामग्री लुकाउनुहोस्"</string>
-    <string name="app_notification_sensitive_summary" msgid="2515056180303710894">"यन्त्र बन्द हुँदा, यी सूचनाहरूमा सामग्री लुकाउनुहोस् जसबाट निजी जानकारी प्रकाश हुनसक्छ"</string>
+    <string name="app_notification_sensitive_summary" msgid="2515056180303710894">"यन्त्र बन्द हुँदा, यी सूचनाहरूमा सामग्री लुकाउनुहोस् जसबाट निजी जानकारी बाहिर जान सक्छ"</string>
     <string name="app_notification_row_banned" msgid="5983655258784814773">"अवरूद्ध गरियो"</string>
     <string name="app_notification_row_priority" msgid="7723839972982746568">"प्राथमिकता"</string>
     <string name="app_notification_row_sensitive" msgid="1809610030432329940">"संवेदनशील"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 5014fd1..3efad83 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"\'Mijn locatie\', schermontgrendeling, SIM- en certificaatopslagvergrendeling instellen"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"\'Mijn locatie\' instellen, scherm ontgrendelen, certificaatopslag vergrendelen"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Wachtwoorden"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Uitgeschakeld door beheerder"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Vingerafdruk"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Vingerafdrukbeheer"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Vingerafdruk voor"</string>
diff --git a/res/values-pa-rIN/strings.xml b/res/values-pa-rIN/strings.xml
index 99fb7d0..f8d164a 100644
--- a/res/values-pa-rIN/strings.xml
+++ b/res/values-pa-rIN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"ਮੇਰਾ ਨਿਰਧਾਰਿਤ ਸਥਾਨ, ਸਕ੍ਰੀਨ ਅਨਲੌਕ, SIM ਕਾਰਡ ਲੌਕ, ਕ੍ਰੈਡੈਂਸ਼ੀਅਲ ਸਟੋਰੇਜ ਲੌਕ ਸੈਟ ਕਰੋ"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"ਮੇਰਾ ਨਿਰਧਾਰਿਤ ਸਥਾਨ, ਸਕ੍ਰੀਨ ਅਨਲੌਕ, ਕ੍ਰੈਡੈਂਸ਼ੀਅਲ ਸਟੋਰੇਜ ਲੌਕ ਸੈਟ ਕਰੋ"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"ਪਾਸਵਰਡ"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"ਪ੍ਰਸ਼ਾਸਕ ਵੱਲੋਂ ਅਯੋਗ ਬਣਾਈ ਗਈ"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"ਫਿੰਗਰਪ੍ਰਿੰਟ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"ਫਿੰਗਰਪ੍ਰਿੰਟਸ ਵਿਵਸਥਿਤ ਕਰੋ"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"ਇਸ ਲਈ ਫਿੰਗਰਪ੍ਰਿੰਟ ਵਰਤੋ"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 65aa53c..29cd4b6 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Ustaw funkcję Moja lokalizacja, odblokowywanie ekranu, blokadę karty SIM, blokadę magazynu danych logowania."</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Ustaw funkcję Moja lokalizacja, odblokowywanie ekranu, blokadę magazynu danych logowania"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Hasła"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Wyłączone przez administratora"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Odcisk palca"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Zarządzaj odciskami"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Używaj odcisku palca do"</string>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index 0067e1c..17d7da1 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Definir Meu local, desbloqueio de tela, bloqueio do SIM e do armazenamento de credenciais"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Definir o Meu local, o desbloqueio de tela, o bloqueio do armazenamento de credenciais"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Senhas"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Desativada pelo administrador"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Impressão digital"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Gerenciar impressões digitais"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Usar impressão digital para"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index fe3a9fb..c69429a 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Definir A minha localização, desbloqueio do ecrã, bloqueio do cartão SIM, bloqueio do armazenamento de credenciais"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Definir O meu local, desbloqueio do ecrã, bloqueio do armazenamento de credenciais"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Palavras-passe"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Desativado pelo administrador"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Impressão digital"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Gerir impressões dig."</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Usar impr. dig. para"</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 0067e1c..17d7da1 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Definir Meu local, desbloqueio de tela, bloqueio do SIM e do armazenamento de credenciais"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Definir o Meu local, o desbloqueio de tela, o bloqueio do armazenamento de credenciais"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Senhas"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Desativada pelo administrador"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Impressão digital"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Gerenciar impressões digitais"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Usar impressão digital para"</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 77aa97c..f7e57ec 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -314,6 +314,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Setați Locația mea, deblocarea ecranului, blocarea cardului SIM, blocarea stocării acreditărilor"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Setați Locația mea, deblocarea ecranului, blocarea stocării acreditărilor"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Parole"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Dezactivată de administrator"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Amprentă"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Gestionați amprentele"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Folosiți amprenta la"</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index b467527..20cb797 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Настройка функции \"Мое местоположение\", разблокировка экрана и блокировка хранилища регистрационных данных"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Настройка функции \"Мое местоположение\", разблокировка экрана и блокировка хранилища регистрационных данных"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Пароли"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Отключено администратором"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Отпечатки пальцев"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Управление отпечатками"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Для чего использовать"</string>
@@ -2586,8 +2587,8 @@
     <string name="loading_notification_apps" msgid="5031818677010335895">"Загрузка..."</string>
     <string name="app_notification_block_title" msgid="4069351066849087649">"Блокировать все"</string>
     <string name="app_notification_block_summary" msgid="9049487483231233726">"Не показывать уведомления из этого приложения"</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_title" msgid="7867458246395884830">"Переопределить режим \"Не беспокоить\""</string>
+    <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"Разрешить эти уведомления, когда в режиме \"Не беспокоить\" выбрано \"Только важные\""</string>
     <string name="app_notification_sensitive_title" msgid="8465860579482264139">"Скрыть конфиденциальные данные"</string>
     <string name="app_notification_sensitive_summary" msgid="2515056180303710894">"Не показывать конфиденциальные данные в уведомлениях, когда устройство заблокировано"</string>
     <string name="app_notification_row_banned" msgid="5983655258784814773">"Заблокировано"</string>
diff --git a/res/values-si-rLK/strings.xml b/res/values-si-rLK/strings.xml
index ca2aa4d..1277165 100644
--- a/res/values-si-rLK/strings.xml
+++ b/res/values-si-rLK/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"මගේ ස්ථානය, තිර අගුළු ඇරීම, SIM පත් අගුල, අක්තපත්‍ර ආචයන අගුල සකසන්න"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"මගේ ස්ථානය, තිර අගුළු ඇරීම, අක්තපත්‍ර ආචයන අගුල සකසන්න"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"මුරපද"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"පරිපාලක විසින් අබල කරන ලදී"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"ඇඟිලි සලකුණ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"ඇඟිලි සලකුණු කළමනාකරණය කරන්න"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"මෙය සඳහා ඇඟිලි සලකුණු භාවිත කරන්න"</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index ccb35a2..82dd60c 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Moja poloha, odomknutie obrazovky, zámok SIM, zámok ukladacieho priestoru poverení"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Nastavenie funkcie Moje poloha, odomknutie obrazovky a zamknutie úložiska poverení"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Heslá"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Zakázané správcom"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Odtlačok prsta"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Správa odtlačkov"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Použiť odtlačok na"</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 15603e1..f80f2fe 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Nastavi Mojo lokacijo, odklepanje zaslona, zaklepanje kartice SIM, zaklepanje shrambe poverilnic"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Nastavitev Moje lokacije, odklepanja zaslona, zaklepanja shrambe poverilnic"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Gesla"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Onemogočil skrbnik"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Prstni odtis"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Upravlj. prst. odtisov"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Upor. prst. odtisa za"</string>
diff --git a/res/values-sq-rAL/strings.xml b/res/values-sq-rAL/strings.xml
index d7e6177..0331402 100644
--- a/res/values-sq-rAL/strings.xml
+++ b/res/values-sq-rAL/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Cakto \"Vendndodhjen time\", shkyçjen e ekranit, kyçjen e kartës SIM, kyçjen e hapësirës për ruajtjen e kredencialeve"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Cakto \"Vendndodhja ime\", shkyçjen e ekranit, kyçjen e hapësirës ruajtëse të kredencialeve"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Fjalëkalimet"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Çaktivizuar nga administratori"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Gjurma e gishtit"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Menaxho gjurm. gishtit"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Përdor gjurmën për"</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index b22c799..c60ed97 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -314,6 +314,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Подешавање Моје локације, откључавања екрана, закључавања SIM картице и закључавања акредитива складишта"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Подешавање Моје локације, откључавања екрана, закључавања складишта акредитива"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Лозинке"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Онемогућио је администратор"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Отисак прста"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Управљај отис. прстију"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Користи отис. прста за"</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 1245534..0063bb4 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Ställ in Min plats, skärmupplåsning, lås för SIM-kort och lås för uppgiftslagring"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Ställ in Min plats, skärmupplåsning, lås för uppgiftslagring"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Lösenord"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Har inaktiverats av administratören"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingeravtryck"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Hantera fingeravtryck"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Använd avtryck för"</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 3406321..d456fdf 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Weka Mahali Pangu, fungua skrini, funga SIM kadi, funga hifadhi ya hati-tambulishi"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Weka Mahali Pangu, fungua skrini, funga hifadhi ya hati-tambulishi"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Manenosiri"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Msimamizi amezima mapendeleo ya mipangilio"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Kitambulisho"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Dhibiti vitambulisho"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Tumia kitambulisho kwa"</string>
@@ -2563,7 +2564,7 @@
     <string name="app_notification_block_title" msgid="4069351066849087649">"Zuia zote"</string>
     <string name="app_notification_block_summary" msgid="9049487483231233726">"Usionyeshe arifa kutoka programu hii kabisa"</string>
     <string name="app_notification_override_dnd_title" msgid="7867458246395884830">"Batilisha Usinisumbue"</string>
-    <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"Ruhusu arifa hizi ziendelee kukatiza wakati hali ya Usinisumbue imewekwa kama Kipaumbele pekee"</string>
+    <string name="app_notification_override_dnd_summary" msgid="3516007157020189746">"Ruhusu arifa hizi ziendelee kukatiza wakati hali ya Usinisumbue imewekwa katika Kipaumbele Pekee"</string>
     <string name="app_notification_sensitive_title" msgid="8465860579482264139">"Ficha maudhui nyeti"</string>
     <string name="app_notification_sensitive_summary" msgid="2515056180303710894">"Kifaa kikiwa kimefungwa, ficha maudhui yanayoweza kufichua maelezo ya faragha katika arifa hizi"</string>
     <string name="app_notification_row_banned" msgid="5983655258784814773">"Imezuiwa"</string>
diff --git a/res/values-ta-rIN/strings.xml b/res/values-ta-rIN/strings.xml
index 99e8086..c66b7f1 100644
--- a/res/values-ta-rIN/strings.xml
+++ b/res/values-ta-rIN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"எனது இருப்பிடம், திரை திற, சிம் கார்டு பூட்டு, நற்சான்று சேமிப்பிட பூட்டு ஆகியவற்றை அமைக்கவும்"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"எனது இருப்பிடம், திரையைத் திற, நற்சான்று சேமிப்பிடப் பூட்டு ஆகியவற்றை அமைக்கவும்"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"கடவுச்சொற்கள்"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"நிர்வாகி முடக்கியுள்ளார்"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"கைரேகை"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"கைரேகைகளை நிர்வகிக்கவும்"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"இதற்குப் பயன்படுத்து:"</string>
diff --git a/res/values-te-rIN/strings.xml b/res/values-te-rIN/strings.xml
index d8cb96f..bd213bb 100644
--- a/res/values-te-rIN/strings.xml
+++ b/res/values-te-rIN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"నా స్థానాన్ని, స్క్రీన్ అన్‌లాక్‌ను, సిమ్ కార్డు లాక్‌ను, ఆధారాల నిల్వ లాక్‌ను సెట్ చేయి"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"నా స్థానాన్ని, స్క్రీన్ అన్‌లాక్‌ను, ఆధారాల నిల్వ లాక్‌ను సెట్ చేయండి"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"పాస్‌వర్డ్‌లు"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"నిర్వాహకుడు నిలిపివేసారు"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"వేలిముద్ర"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"వేలిముద్రలు నిర్వహిం."</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"దీనికి వేలిముద్రను ఉప."</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 354f2cc..b2cec82 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -116,8 +116,8 @@
     <string name="bluetooth_device" msgid="5291950341750186887">"อุปกรณ์บลูทูธที่ไม่มีชื่อ"</string>
     <string name="progress_scanning" msgid="192587958424295789">"กำลังค้นหา"</string>
     <string name="bluetooth_no_devices_found" msgid="1085232930277181436">"ไม่พบอุปกรณ์บลูทูธในบริเวณใกล้เคียง"</string>
-    <string name="bluetooth_notif_ticker" msgid="4726721390078512173">"คำขอกำหนดค่าอุปกรณ์ให้ตรงกันทางบลูทูธ"</string>
-    <string name="bluetooth_notif_title" msgid="2485175521845371514">"คำขอกำหนดค่าอุปกรณ์ให้ตรงกัน"</string>
+    <string name="bluetooth_notif_ticker" msgid="4726721390078512173">"คำขอจับคู่อุปกรณ์ผ่านบลูทูธ"</string>
+    <string name="bluetooth_notif_title" msgid="2485175521845371514">"คำขอจับคู่อุปกรณ์"</string>
     <string name="bluetooth_notif_message" msgid="5300852675110479862">"แตะเพื่อจับคู่กับ <xliff:g id="DEVICE_NAME">%1$s</xliff:g>"</string>
     <string name="bluetooth_show_received_files" msgid="5164787486105868895">"แสดงไฟล์ที่ได้รับ"</string>
     <string name="device_picker" msgid="4978696506172252813">"เลือกอุปกรณ์บลูทูธ"</string>
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"ตั้งค่าตำแหน่งของฉัน ปลดล็อกหน้าจอ ล็อกซิมการ์ด ล็อกที่จัดเก็บข้อมูลรับรอง"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"ตั้งค่าตำแหน่งของฉัน การปลดล็อกหน้าจอ การล็อกที่จัดเก็บข้อมูลรับรอง"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"รหัสผ่าน"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"ปิดใช้โดยผู้ดูแลระบบ"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"ลายนิ้วมือ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"จัดการลายนิ้วมือ"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"ใช้ลายนิ้วมือเพื่อ"</string>
@@ -532,9 +533,9 @@
     <string name="bluetooth_preference_no_found_devices" msgid="7594339669961811591">"ไม่พบอุปกรณ์"</string>
     <string name="bluetooth_device_context_connect" msgid="3997659895003244941">"เชื่อมต่อ"</string>
     <string name="bluetooth_device_context_disconnect" msgid="8220072022970148683">"ตัดการเชื่อมต่อ"</string>
-    <string name="bluetooth_device_context_pair_connect" msgid="7611522504813927727">"กำหนดค่าอุปกรณ์ให้ตรงกันและเชื่อมต่อ"</string>
-    <string name="bluetooth_device_context_unpair" msgid="662992425948536144">"ยกเลิกการกำหนดค่าอุปกรณ์ให้ตรงกัน"</string>
-    <string name="bluetooth_device_context_disconnect_unpair" msgid="7644014238070043798">"ตัดการเชื่อมต่อและยกเลิกการกำหนดค่าอุปกรณ์ให้ตรงกัน"</string>
+    <string name="bluetooth_device_context_pair_connect" msgid="7611522504813927727">"จับคู่อุปกรณ์และเชื่อมต่อ"</string>
+    <string name="bluetooth_device_context_unpair" msgid="662992425948536144">"เลิกจับคู่อุปกรณ์"</string>
+    <string name="bluetooth_device_context_disconnect_unpair" msgid="7644014238070043798">"ตัดการเชื่อมต่อและเลิกจับคู่อุปกรณ์"</string>
     <string name="bluetooth_device_context_connect_advanced" msgid="2643129703569788771">"ตัวเลือก…"</string>
     <string name="bluetooth_menu_advanced" msgid="8572178316357220524">"ขั้นสูง"</string>
     <string name="bluetooth_advanced_titlebar" msgid="2142159726881547669">"บลูทูธขั้นสูง"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 561ccc1..4b3f479 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Itakda ang Aking Lokasyon, pag-unlock ng screen, lock ng SIM card, lock ng imbakan ng kredensyal"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Itakda ang Aking Lokasyon, pag-unlock ng screen, lock ng imbakan ng kredensyal"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Mga Password"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Na-disable ng administrator"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Fingerprint"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Pamahalaan fingerprint"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Gamit fingerprint para"</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index fcdd502..5bc31c8 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Konumum, ekran kil. açma, SIM kart kil., kim. bilg. dep.kilidini ayarla"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Konumum, ekran kilidi açma, kimlik bilgileri deposunun kilidi özelliklerini ayarla"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Şifreler"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Yönetici tarafından devre dışı bırakıldı"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Parmak izi"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Parmak izi yönetimi"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Parmak izi kullanımı:"</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index a4c2051..b684ec4 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -315,6 +315,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Устан. Моє місцезн., розблок. екрана, блок. SIM-карти, сховища обл. даних"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Устан. Моє місцезн., розбл. екрана, блок. схов. обл. даних"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Паролі"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Вимкнено адміністратором"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Цифровий відбиток"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Керування відбитками"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Використ. відбиток для"</string>
diff --git a/res/values-ur-rPK/strings.xml b/res/values-ur-rPK/strings.xml
index 51ff7d3..c9c485d 100644
--- a/res/values-ur-rPK/strings.xml
+++ b/res/values-ur-rPK/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"‏میرا مقام، اسکرین اَن لاک، SIM کارڈ لاک، اسناد کے اسٹوریج کا لاک سیٹ کریں"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"میرا مقام، اسکرین ان لاک، اسناد کے اسٹوریج کا لاک سیٹ کریں"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"پاس ورڈز"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"منتظم نے غیر فعال کی"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"فنگر پرنٹ"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"فنگر پرنٹس کا نظم کریں"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"فنگر پرنٹ استعمال کریں برائے"</string>
diff --git a/res/values-uz-rUZ/strings.xml b/res/values-uz-rUZ/strings.xml
index 13e1e23..1702f1e 100644
--- a/res/values-uz-rUZ/strings.xml
+++ b/res/values-uz-rUZ/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Joylashuv va xavfsizlik sozlamalari"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Mening joylashuvim, ekran qulfi, hisob ma‘lumotlari omborini qulflash sozlamalari"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Parollar"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Administrator tomonidan o‘chirib qo‘yilgan"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Barmoq izi"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Barmoq izlari"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Barmoq izi sozlamalari"</string>
@@ -602,7 +603,7 @@
     <string name="wifi_notify_open_networks" msgid="3755768188029653293">"Tarmoq haqida bildirishnoma"</string>
     <string name="wifi_notify_open_networks_summary" msgid="3716818008370391253">"Hamma uchun ochiq tarmoqlar haqida xabar qilinsin"</string>
     <string name="wifi_poor_network_detection" msgid="4925789238170207169">"Sifatsiz ulanishdan chetlashish"</string>
-    <string name="wifi_poor_network_detection_summary" msgid="2784135142239546291">"Sifatli Internet ulanishi mavjud bo‘lmaganicha, Wi‑Fi tarmog‘iga ulanmasin."</string>
+    <string name="wifi_poor_network_detection_summary" msgid="2784135142239546291">"Internet aloqasi yomon bo‘lsa, Wi-Fi tarmog‘iga ulanilmasin"</string>
     <string name="wifi_avoid_poor_network_detection_summary" msgid="4674423884870027498">"Faqat kuchli signalga ega tarmoqlardan foydalanilsin"</string>
     <string name="wifi_automatically_connect_title" msgid="7950640291510621742">"Ochiq Wi-Fi tarmog‘iga avtomatik ulanish"</string>
     <string name="wifi_automatically_connect_summary" msgid="6722194413023965902">"Wi-Fi yordamchisiga ochiq tarmoqlar ichidan eng kuchlisiga avtomatik ulanishi uchun ruxsat bering"</string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index 655ae9f..18f9db5 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Đặt Vị trí của tôi, mở khóa màn hình, khóa thẻ SIM, khóa bộ nhớ thông tin xác thực"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Đặt Vị trí của tôi, mở khóa màn hình, khóa bộ nhớ thông tin xác thực"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Mật khẩu"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Bị tắt bởi quản trị viên"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Vân tay"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Quản lý vân tay"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Sử dụng vân tay để"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 8ece97a..a148484 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"设置我的位置、屏幕解锁、SIM卡锁定和凭据存储锁定"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"设置我的位置、屏幕解锁和凭据存储锁定"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"密码"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"已被管理员停用"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"指纹"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"管理指纹"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"将指纹用于以下用途："</string>
@@ -2724,7 +2725,7 @@
     <string name="advanced_apps" msgid="4812975097124803873">"高级"</string>
     <string name="configure_apps" msgid="6685680790825882528">"配置应用"</string>
     <string name="unknown_app" msgid="5275921288718717656">"未知应用"</string>
-    <string name="app_permissions" msgid="4148222031991883874">"应用所需权限"</string>
+    <string name="app_permissions" msgid="4148222031991883874">"应用访问授权"</string>
     <string name="app_permissions_summary" msgid="2098173899436407221">"已授予 <xliff:g id="COUNT_0">%d</xliff:g> 个应用（共 <xliff:g id="COUNT_1">%d</xliff:g> 个）其他权限"</string>
     <string name="app_permissions_group_summary" msgid="2721303391744909000">"已授权 <xliff:g id="COUNT_0">%d</xliff:g> 个应用（共 <xliff:g id="COUNT_1">%d</xliff:g> 个）"</string>
     <string name="tap_to_wake" msgid="7211944147196888807">"点按唤醒"</string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index a431988..8788402 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"設定我的位置、畫面解鎖、SIM 卡鎖定、認證儲存空間鎖定"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"設定我的位置、螢幕解鎖及認證儲存空間鎖定"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"密碼"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"已由管理員停用"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"指紋"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"管理指紋"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"使用指紋"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index f93e79e..aa334ac 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"設定我的位置、畫面解鎖、SIM 卡鎖定、認證儲存空間鎖定"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"設定我的位置、解除鎖定畫面及鎖定認證儲存空間"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"密碼"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"已由管理員停用"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"指紋"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"管理指紋"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"指紋辨識用途："</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index f3d61be..7c24695 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -313,6 +313,7 @@
     <string name="security_settings_summary" msgid="967393342537986570">"Setha Indawo Yami, ukuvula isikrini, ukuvala ikhadi le-SIM, ukuvala isitoreji sokuqinisekisa"</string>
     <string name="cdma_security_settings_summary" msgid="6068799952798901542">"Setha Indawo Yami, ukuvula isikrini, ukuvala isitoreji seziqinisekiso"</string>
     <string name="security_passwords_title" msgid="2930627259125138363">"Amaphasiwedi"</string>
+    <string name="disabled_by_administrator_summary" msgid="5989801404248162477">"Ikhutshazwe umlawuli"</string>
     <string name="security_settings_fingerprint_preference_title" msgid="2488725232406204350">"Izigxivizo zeminwe"</string>
     <string name="fingerprint_manage_category_title" msgid="8293801041700001681">"Phatha izigxivizo zeminwe"</string>
     <string name="fingerprint_usage_category_title" msgid="8438526918999536619">"Sebenzisa izigxivizo zeminwe ukuthi"</string>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 462387b..ecc465e 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -5888,7 +5888,7 @@
     <string name="keywords_network_reset">reset restore factory</string>
     <string name="keywords_factory_data_reset">wipe delete restore clear remove</string>
     <string name="keywords_printing">printer</string>
-    <string name="keywords_sounds_and_notifications">speaker beep</string>
+    <string name="keywords_sounds">speaker beep</string>
     <string name="keywords_sounds_and_notifications_interruptions">dont don\u2019t disturb interrupt interruption break</string>
     <string name="keywords_app">RAM</string>
     <string name="keywords_location">nearby location history reporting</string>
@@ -5929,78 +5929,117 @@
 
 
     <!-- Sounds and Notification -->
+    <!-- Sound: Dashboard summary. [CHAR LIMIT=100] -->
+    <string name="sound_settings_summary">Ringer volume at <xliff:g id="percentage" example="2">%1$s</xliff:g></string>
 
-    <!-- Sound & notification: Settings header. [CHAR LIMIT=30] -->
-    <string name="notification_settings">Sound &amp; notification</string>
-
-    <!-- Sound & notification > Sound section: Title for the option managing media volume. [CHAR LIMIT=30] -->
+    <!-- Sound: Title for the option managing media volume. [CHAR LIMIT=30] -->
     <string name="media_volume_option_title">Media volume</string>
 
-    <!-- Sound & notification > Sound section: Title for the option managing alarm volume. [CHAR LIMIT=30] -->
+    <!-- Sound: Title for the option managing alarm volume. [CHAR LIMIT=30] -->
     <string name="alarm_volume_option_title">Alarm volume</string>
 
-    <!-- Sound & notification > Sound section: Title for the option managing ringer volume. [CHAR LIMIT=30] -->
+    <!-- Sound: Title for the option managing ringer volume. [CHAR LIMIT=30] -->
     <string name="ring_volume_option_title">Ring volume</string>
 
-    <!-- Sound & notification > Sound section: Title for the option managing notification volume. [CHAR LIMIT=30] -->
+    <!-- Sound: Title for the option managing notification volume. [CHAR LIMIT=30] -->
     <string name="notification_volume_option_title">Notification volume</string>
 
-    <!-- Sound & notification > Sound section: Title for the Interruptions option and associated settings page. [CHAR LIMIT=30] -->
-    <string name="zen_mode_settings_title" translatable="false">@*android:string/zen_mode_feature_name</string>
-
-    <!-- Sound & notification > Sound section: Title for the Priority interruptions option and associated settings page. [CHAR LIMIT=30] -->
-    <string name="zen_mode_priority_settings_title">Priority only allows</string>
-
-    <!-- Sound & notification > Sound section: Title for the zen mode automation option and associated settings page. [CHAR LIMIT=30] -->
-    <string name="zen_mode_automation_settings_title">Automatic rules</string>
-
-    <!-- Sound & notification > Sound section: Zen mode option: Important interruptions [CHAR LIMIT=60] -->
-    <string name="zen_mode_option_important_interruptions">Priority only</string>
-
-    <!-- Sound & notification > Sound section: Zen mode option: Alarms only [CHAR LIMIT=60] -->
-    <string name="zen_mode_option_alarms">Alarms only</string>
-
-    <!-- Sound & notification > Sound section: Zen mode option: No interruptions [CHAR LIMIT=60] -->
-    <string name="zen_mode_option_no_interruptions">Total silence</string>
-
-    <!-- Sound & notification > Sound section: Zen mode combined summary + condition line [CHAR LIMIT=60] -->
-    <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>
-
-    <!-- Sound & notification > Do not disturb section: Title for the Visual interruptions option and associated settings page. [CHAR LIMIT=30] -->
-    <string name="zen_mode_visual_interruptions_settings_title">Visual interruptions</string>
-
-    <!-- Sound & notification > Sound section: Title for the option defining the phone ringtone. [CHAR LIMIT=30] -->
+    <!-- Sound: Title for the option defining the phone ringtone. [CHAR LIMIT=30] -->
     <string name="ringtone_title">Phone ringtone</string>
 
-    <!-- Sound & notification > Sound section: Title for the option defining the default notification ringtone. [CHAR LIMIT=30] -->
+    <!-- Sound: Title for the option defining the default notification ringtone. [CHAR LIMIT=30] -->
     <string name="notification_ringtone_title">Default notification ringtone</string>
 
-    <!-- Sound & notification > Sound section: Title for the option managing whether or not to vibrate when ringing. [CHAR LIMIT=30] -->
+    <!-- Sound: Title for the option managing whether or not to vibrate when ringing. [CHAR LIMIT=30] -->
     <string name="vibrate_when_ringing_title">Also vibrate for calls</string>
 
-    <!-- Sound & notification: Notification section header [CHAR LIMIT=30] -->
-    <string name="notification_section_header">Notification</string>
+    <!-- Sound: Title for the other sounds option and associated settings page. [CHAR LIMIT=30] -->
+    <string name="other_sound_settings">Other sounds</string>
 
-    <!-- Sound & notification: Advanced section header [CHAR LIMIT=30] -->
+    <!-- Sound: Other sounds: Title for the option enabling touch sounds for dial pad tones. [CHAR LIMIT=30] -->
+    <string name="dial_pad_tones_title">Dial pad tones</string>
+
+    <!-- Sound: Other sounds: Title for the option enabling touch sounds for screen locking sounds. [CHAR LIMIT=30] -->
+    <string name="screen_locking_sounds_title">Screen locking sounds</string>
+
+    <!-- Sound: Other sounds: Title for the option enabling charging sounds. [CHAR LIMIT=30] -->
+    <string name="charging_sounds_title">Charging sounds</string>
+
+    <!-- Sound: Other sounds: Title for the option enabling docking sounds. [CHAR LIMIT=30] -->
+    <string name="docking_sounds_title">Docking sounds</string>
+
+    <!-- Sound: Other sounds: Title for the option enabling touch sounds. [CHAR LIMIT=30] -->
+    <string name="touch_sounds_title">Touch sounds</string>
+
+    <!-- Sound: Other sounds: Title for the option enabling haptic feedback on touch. [CHAR LIMIT=30] -->
+    <string name="vibrate_on_touch_title">Vibrate on touch</string>
+
+    <!-- Sound: Other sounds: Title for the option enabling dock audio media. [CHAR LIMIT=50] -->
+    <string name="dock_audio_media_title">Dock speaker plays</string>
+
+    <!-- Sound: Other sounds: Value for the dock audio media with value 0: disabled. [CHAR LIMIT=30] -->
+    <string name="dock_audio_media_disabled">All audio</string>
+
+    <!-- Sound: Other sounds: Value for the dock audio media with value 1: enabled. [CHAR LIMIT=30] -->
+    <string name="dock_audio_media_enabled">Media audio only</string>
+
+    <!-- Sound: Other sounds: Value for the emergency tone option with value 0: silent. [CHAR LIMIT=30] -->
+    <string name="emergency_tone_silent">Silent</string>
+
+    <!-- Sound: Other sounds: Value for the emergency tone option with value 1: alert. [CHAR LIMIT=30] -->
+    <string name="emergency_tone_alert">Alert</string>
+
+    <!-- Sound: Other sounds: Value for the emergency tone option with value 2: vibrate. [CHAR LIMIT=30] -->
+    <string name="emergency_tone_vibrate">Vibrate</string>
+
+    <!-- Sound: Title for the Do not Disturb option and associated settings page. [CHAR LIMIT=30] -->
+    <string name="zen_mode_settings_title" translatable="false">@*android:string/zen_mode_feature_name</string>
+
+    <!-- Do not disturb: Title for the Priority interruptions option and associated settings page. [CHAR LIMIT=30] -->
+    <string name="zen_mode_priority_settings_title">Priority only allows</string>
+
+    <!--  Do not disturb: Title for the zen mode automation option and associated settings page. [CHAR LIMIT=30] -->
+    <string name="zen_mode_automation_settings_title">Automatic rules</string>
+
+    <!--  Do not disturb: Zen mode option: Important interruptions [CHAR LIMIT=60] -->
+    <string name="zen_mode_option_important_interruptions">Priority only</string>
+
+    <!--  Do not disturb: Zen mode option: Alarms only [CHAR LIMIT=60] -->
+    <string name="zen_mode_option_alarms">Alarms only</string>
+
+    <!--  Do not disturb: Zen mode option: No interruptions [CHAR LIMIT=60] -->
+    <string name="zen_mode_option_no_interruptions">Total silence</string>
+
+    <!--  Do not disturb: Zen mode combined summary + condition line [CHAR LIMIT=60] -->
+    <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">Visual interruptions</string>
+
+
+    <!-- Configure Notifications Settings title. [CHAR LIMIT=30] -->
+    <string name="configure_notification_settings">Configure notifications</string>
+
+    <!-- Configure Notifications: Advanced section header [CHAR LIMIT=30] -->
     <string name="advanced_section_header">Advanced</string>
 
-    <!-- Sound & notification > Notification section: Title for the pulse notification light option. [CHAR LIMIT=30] -->
+    <!-- Configure Notifications: Title for the pulse notification light option. [CHAR LIMIT=30] -->
     <string name="notification_pulse_title">Pulse notification light</string>
 
-    <!-- Sound & notification > Notification section: Title for the option controlling notifications on the lockscreen. [CHAR LIMIT=30] -->
+    <!-- Configure Notifications: Title for the option controlling notifications on the lockscreen. [CHAR LIMIT=30] -->
     <string name="lock_screen_notifications_title">When device is locked</string>
 
-    <!-- Sound & notification > Notification section: Value for lockscreen notifications:  all information will be
+    <!-- Configure Notifications: Value for lockscreen notifications:  all information will be
          shown in notifications shown on a secure lock screen
          [CHAR LIMIT=50] -->
     <string name="lock_screen_notifications_summary_show">Show all notification content</string>
 
-    <!-- Sound & notification > Notification section: Value for lockscreen notifications: sensitive information will be
+    <!-- Configure Notifications: Value for lockscreen notifications: sensitive information will be
          hidden or redacted from notifications shown on a secure lock screen
          [CHAR LIMIT=50] -->
     <string name="lock_screen_notifications_summary_hide">Hide sensitive notification content</string>
 
-    <!-- Sound & notification > Notification section: Value for lockscreen notifications: notifications will not appear on a secure lock screen
+    <!-- Configure Notifications: Value for lockscreen notifications: notifications will not appear on a secure lock screen
          [CHAR LIMIT=50] -->
     <string name="lock_screen_notifications_summary_disable">Don\u2019t show notifications at all</string>
 
@@ -6010,50 +6049,13 @@
     <!-- Security > Choose PIN/PW/Pattern > Notification redaction interstitial: Title for the screen asking the user how they want their notifications to appear when the device is locked [CHAR LIMIT=30] -->
     <string name="lock_screen_notifications_interstitial_title">Notifications</string>
 
-    <!-- Sound & notification > Notification section: Title for the option managing notifications per application. [CHAR LIMIT=30] -->
-    <string name="app_notifications_title">App notifications</string>
+    <!-- Notification Settings: Title for the option managing notifications per application. [CHAR LIMIT=30] -->
+    <string name="app_notifications_title">Notifications</string>
 
     <!-- Sound & notification > Notification section: Title for the option managing notifications per topic. [CHAR LIMIT=30] -->
     <string name="topic_notifications_title">Topic notifications</string>
 
-    <!-- Sound & notification > Sound section: Title for the other sounds option and associated settings page. [CHAR LIMIT=30] -->
-    <string name="other_sound_settings">Other sounds</string>
 
-    <!-- Sound & notification > Other sounds: Title for the option enabling touch sounds for dial pad tones. [CHAR LIMIT=30] -->
-    <string name="dial_pad_tones_title">Dial pad tones</string>
-
-    <!-- Sound & notification > Other sounds: Title for the option enabling touch sounds for screen locking sounds. [CHAR LIMIT=30] -->
-    <string name="screen_locking_sounds_title">Screen locking sounds</string>
-
-    <!-- Sound & notification > Other sounds: Title for the option enabling charging sounds. [CHAR LIMIT=30] -->
-    <string name="charging_sounds_title">Charging sounds</string>
-
-    <!-- Sound & notification > Other sounds: Title for the option enabling docking sounds. [CHAR LIMIT=30] -->
-    <string name="docking_sounds_title">Docking sounds</string>
-
-    <!-- Sound & notification > Other sounds: Title for the option enabling touch sounds. [CHAR LIMIT=30] -->
-    <string name="touch_sounds_title">Touch sounds</string>
-
-    <!-- Sound & notification > Other sounds: Title for the option enabling haptic feedback on touch. [CHAR LIMIT=30] -->
-    <string name="vibrate_on_touch_title">Vibrate on touch</string>
-
-    <!-- Sound & notification > Other sounds: Title for the option enabling dock audio media. [CHAR LIMIT=50] -->
-    <string name="dock_audio_media_title">Dock speaker plays</string>
-
-    <!-- Sound & notification > Other sounds: Value for the dock audio media with value 0: disabled. [CHAR LIMIT=30] -->
-    <string name="dock_audio_media_disabled">All audio</string>
-
-    <!-- Sound & notification > Other sounds: Value for the dock audio media with value 1: enabled. [CHAR LIMIT=30] -->
-    <string name="dock_audio_media_enabled">Media audio only</string>
-
-    <!-- Sound & notification > Other sounds: Value for the emergency tone option with value 0: silent. [CHAR LIMIT=30] -->
-    <string name="emergency_tone_silent">Silent</string>
-
-    <!-- Sound & notification > Other sounds: Value for the emergency tone option with value 1: alert. [CHAR LIMIT=30] -->
-    <string name="emergency_tone_alert">Alert</string>
-
-    <!-- Sound & notification > Other sounds: Value for the emergency tone option with value 2: vibrate. [CHAR LIMIT=30] -->
-    <string name="emergency_tone_vibrate">Vibrate</string>
 
     <!-- Sound & notification > Advanced section: Title for managing notification listeners option. [CHAR LIMIT=30] -->
     <string name="manage_notification_access_title">Notification access</string>
@@ -6320,9 +6322,6 @@
     <!-- [CHAR LIMIT=105] Zen mode settings: No notification light summary -->
     <string name="zen_mode_lights_summary">Prevent notifications silenced by Do Not Disturb from causing the light to pulse</string>
 
-    <!-- [CHAR LIMIT=20] Notifications settings: Apps section header -->
-    <string name="notification_settings_apps_title">App notifications</string>
-
     <!-- [CHAR LIMIT=NONE] Content description for per-app notification
          settings button -->
     <string name="notification_app_settings_button">Notification settings</string>
@@ -7020,4 +7019,25 @@
 
     <!-- Summary of display with adaptive brightness off [CHAR LIMIT=NONE] -->
     <string name="display_summary_off">Adaptive brightness is OFF</string>
+
+    <!-- Summary of memory screen [CHAR LIMIT=NONE] -->
+    <string name="memory_summary">Avg <xliff:g id="used_memory" example="1.7GB">%1$s</xliff:g> of <xliff:g id="total_memory" example="2GB">%2$s</xliff:g> memory used</string>
+
+    <!-- Summary of user screen [CHAR LIMIT=NONE] -->
+    <string name="user_summary">Signed in as <xliff:g id="user_name" example="Jason">%1$s</xliff:g></string>
+
+    <!-- Summary of payment screen [CHAR LIMIT=NONE] -->
+    <string name="payment_summary"><xliff:g id="app_name" example="Payment App">%1$s</xliff:g> is default</string>
+
+    <!-- Summary of location screen [CHAR LIMIT=NONE] -->
+    <string name="location_on_summary">ON / <xliff:g id="location_mode" example="High accuracy">%1$s</xliff:g></string>
+
+    <!-- Location off [CHAR LIMIT=NONE] -->
+    <string name="location_off_summary">OFF</string>
+
+    <!-- Backup disabled summary [CHAR LIMIT=NONE] -->
+    <string name="backup_disabled">Back up disabled</string>
+
+    <!-- Summary of device info page [CHAR LIMIT=NONE] -->
+    <string name="about_summary">Android <xliff:g id="version" example="6.0">%1$s</xliff:g></string>
 </resources>
diff --git a/res/xml/accessibility_autoclick_settings.xml b/res/xml/accessibility_autoclick_settings.xml
index 1eb4dc1..39b9736 100644
--- a/res/xml/accessibility_autoclick_settings.xml
+++ b/res/xml/accessibility_autoclick_settings.xml
@@ -18,7 +18,7 @@
     android:title="@string/accessibility_autoclick_preference_title" >
 
 
-    <SeekBarPreference
+    <com.android.settings.SeekBarPreference
         android:key="autoclick_delay"
         android:title="@string/accessibility_autoclick_delay_preference_title"
         android:layout="@layout/preference_iconless_slider" />
diff --git a/res/xml/configure_notification_settings.xml b/res/xml/configure_notification_settings.xml
new file mode 100644
index 0000000..aa15f06
--- /dev/null
+++ b/res/xml/configure_notification_settings.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2015 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.
+-->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+                  xmlns:settings="http://schemas.android.com/apk/res/com.android.settings"
+        android:title="@string/configure_notification_settings"
+        android:key="configure_notification_settings" >
+
+    <!-- Pulse notification light -->
+    <SwitchPreference
+            android:key="notification_pulse"
+            android:title="@string/notification_pulse_title"
+            android:persistent="false" />
+
+    <!-- When device is locked -->
+    <com.android.settings.DropDownPreference
+            android:key="lock_screen_notifications"
+            android:title="@string/lock_screen_notifications_title"
+            android:persistent="false" />
+
+    <PreferenceCategory
+        android:key="advanced"
+        android:title="@string/advanced_section_header" >
+
+        <!-- Notification access -->
+        <Preference
+                android:key="manage_notification_access"
+                android:title="@string/manage_notification_access_title"
+                android:persistent="false"
+                android:fragment="com.android.settings.notification.NotificationAccessSettings" />
+
+    </PreferenceCategory>
+
+</PreferenceScreen>
diff --git a/res/xml/notification_settings.xml b/res/xml/sound_settings.xml
similarity index 63%
rename from res/xml/notification_settings.xml
rename to res/xml/sound_settings.xml
index 43fd116..652310f 100644
--- a/res/xml/notification_settings.xml
+++ b/res/xml/sound_settings.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2014 The Android Open Source Project
+<!-- Copyright (C) 2015 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.
@@ -16,13 +16,9 @@
 
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
                   xmlns:settings="http://schemas.android.com/apk/res/com.android.settings"
-        android:title="@string/notification_settings"
-        android:key="notification_settings"
-        settings:keywords="@string/keywords_sounds_and_notifications">
-
-    <PreferenceCategory
-        android:key="sound"
-        android:title="@string/sound_settings" >
+        android:title="@string/sound_settings"
+        android:key="sound_settings"
+        settings:keywords="@string/keywords_sounds">
 
         <!-- Media volume -->
         <com.android.settings.notification.VolumeSeekBarPreference
@@ -77,6 +73,15 @@
                 android:persistent="false"
                 android:ringtoneType="notification" />
 
+        <PreferenceScreen
+                android:key="cell_broadcast_settings"
+                android:title="@string/cell_broadcast_settings" >
+                <intent
+                        android:action="android.intent.action.MAIN"
+                        android:targetPackage="com.android.cellbroadcastreceiver"
+                        android:targetClass="com.android.cellbroadcastreceiver.CellBroadcastSettings" />
+        </PreferenceScreen>
+
         <!-- Other sounds -->
         <Preference
                 android:key="other_sounds"
@@ -90,54 +95,4 @@
                 android:title="@string/wifi_display_settings_title"
                 android:fragment="com.android.settings.wfd.WifiDisplaySettings" />
 
-    </PreferenceCategory>
-
-    <PreferenceCategory
-        android:key="notification"
-        android:title="@string/notification_section_header" >
-
-        <!-- Pulse notification light -->
-        <SwitchPreference
-                android:key="notification_pulse"
-                android:title="@string/notification_pulse_title"
-                android:persistent="false" />
-
-         <!-- When device is locked -->
-        <com.android.settings.DropDownPreference
-                android:key="lock_screen_notifications"
-                android:title="@string/lock_screen_notifications_title"
-                android:persistent="false" />
-
-        <!-- App notifications -->
-        <PreferenceScreen
-                android:key="app_notifications"
-                android:title="@string/app_notifications_title"
-                android:fragment="com.android.settings.applications.ManageApplications">
-                <extra
-                    android:name="classname"
-                    android:value="com.android.settings.Settings$NotificationAppListActivity" />
-        </PreferenceScreen>
-
-    </PreferenceCategory>
-
-    <PreferenceCategory
-        android:key="advanced"
-        android:title="@string/advanced_section_header" >
-
-        <!-- Notification access -->
-        <Preference
-                android:key="manage_notification_access"
-                android:title="@string/manage_notification_access_title"
-                android:persistent="false"
-                android:fragment="com.android.settings.notification.NotificationAccessSettings" />
-
-        <!-- Do Not Disturb access -->
-        <Preference
-                android:key="manage_zen_access"
-                android:title="@string/manage_zen_access_title"
-                android:persistent="false"
-                android:fragment="com.android.settings.notification.ZenAccessSettings" />
-
-    </PreferenceCategory>
-
 </PreferenceScreen>
diff --git a/res/xml/wireless_settings.xml b/res/xml/wireless_settings.xml
index 96f26ac..2d25ed5 100644
--- a/res/xml/wireless_settings.xml
+++ b/res/xml/wireless_settings.xml
@@ -81,13 +81,4 @@
         android:key="proxy_settings"
         android:title="@string/proxy_settings_title" />
 
-    <PreferenceScreen
-        android:key="cell_broadcast_settings"
-        android:title="@string/cell_broadcast_settings" >
-        <intent
-            android:action="android.intent.action.MAIN"
-            android:targetPackage="com.android.cellbroadcastreceiver"
-            android:targetClass="com.android.cellbroadcastreceiver.CellBroadcastSettings" />
-    </PreferenceScreen>
-
 </PreferenceScreen>
diff --git a/src/com/android/settings/DateTimeSettings.java b/src/com/android/settings/DateTimeSettings.java
index 0540575..d92d610 100644
--- a/src/com/android/settings/DateTimeSettings.java
+++ b/src/com/android/settings/DateTimeSettings.java
@@ -38,6 +38,7 @@
 import android.widget.TimePicker;
 
 import com.android.internal.logging.MetricsLogger;
+import com.android.settings.dashboard.SummaryLoader;
 import com.android.settingslib.datetime.ZoneGetter;
 
 import java.util.Calendar;
@@ -353,4 +354,33 @@
             }
         }
     };
+
+    private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final SummaryLoader mSummaryLoader;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                final Calendar now = Calendar.getInstance();
+                mSummaryLoader.setSummary(this, ZoneGetter.getTimeZoneOffsetAndName(
+                        now.getTimeZone(), now.getTime()));
+            }
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                                                                   SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
 }
diff --git a/src/com/android/settings/DeviceInfoSettings.java b/src/com/android/settings/DeviceInfoSettings.java
index 40be2e7..95f1a83 100644
--- a/src/com/android/settings/DeviceInfoSettings.java
+++ b/src/com/android/settings/DeviceInfoSettings.java
@@ -36,6 +36,7 @@
 import android.widget.Toast;
 
 import com.android.internal.logging.MetricsLogger;
+import com.android.settings.dashboard.SummaryLoader;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.search.Index;
 import com.android.settings.search.Indexable;
@@ -337,6 +338,34 @@
         startActivityForResult(intent, 0);
     }
 
+    private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final SummaryLoader mSummaryLoader;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                mSummaryLoader.setSummary(this, mContext.getString(R.string.about_summary,
+                        Build.VERSION.RELEASE));
+            }
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                                                                   SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
+
     /**
      * For Search.
      */
diff --git a/src/com/android/settings/InstrumentedFragment.java b/src/com/android/settings/InstrumentedFragment.java
index 5453d52..80e1131 100644
--- a/src/com/android/settings/InstrumentedFragment.java
+++ b/src/com/android/settings/InstrumentedFragment.java
@@ -29,6 +29,8 @@
     public static final int UNDECLARED = 100000;
 
     public static final int ACCESSIBILITY_TOGGLE_AUTOCLICK = UNDECLARED + 1;
+    public static final int SOUND = UNDECLARED + 2;
+    public static final int CONFIGURE_NOTIFICATION = UNDECLARED + 3;
 
     /**
      * Declare the view of this category.
diff --git a/src/com/android/settings/PrivacySettings.java b/src/com/android/settings/PrivacySettings.java
index 14e45be..2344a33 100644
--- a/src/com/android/settings/PrivacySettings.java
+++ b/src/com/android/settings/PrivacySettings.java
@@ -16,6 +16,7 @@
 
 package com.android.settings;
 
+import android.app.Activity;
 import android.app.backup.IBackupManager;
 import android.content.ContentResolver;
 import android.content.Context;
@@ -34,6 +35,7 @@
 import android.util.Log;
 
 import com.android.internal.logging.MetricsLogger;
+import com.android.settings.dashboard.SummaryLoader;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.search.Indexable;
 
@@ -180,6 +182,51 @@
         return R.string.help_url_backup_reset;
     }
 
+    private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final SummaryLoader mSummaryLoader;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                IBackupManager backupManager = IBackupManager.Stub.asInterface(
+                        ServiceManager.getService(Context.BACKUP_SERVICE));
+                try {
+                    boolean backupEnabled = backupManager.isBackupEnabled();
+                    if (backupEnabled) {
+                        String transport = backupManager.getCurrentTransport();
+                        String configSummary = backupManager.getDestinationString(transport);
+                        if (configSummary != null) {
+                            mSummaryLoader.setSummary(this, configSummary);
+                        } else {
+                            mSummaryLoader.setSummary(this, mContext.getString(
+                                    R.string.backup_configure_account_default_summary));
+                        }
+                    } else {
+                        mSummaryLoader.setSummary(this, mContext.getString(
+                                R.string.backup_disabled));
+                    }
+                } catch (RemoteException e) {
+                }
+            }
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                                                                   SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
+
     /**
      * For Search.
      */
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index 46d24ae..4380d1e 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -105,7 +105,8 @@
     public static class ZenModeEventRuleSettingsActivity extends SettingsActivity { /* empty */ }
     public static class ZenModeExternalRuleSettingsActivity extends SettingsActivity { /* empty */ }
     public static class ZenModeVisualInterruptionSettingsActivity extends SettingsActivity { /* empty */}
-    public static class NotificationSettingsActivity extends SettingsActivity { /* empty */ }
+    public static class SoundSettingsActivity extends SettingsActivity { /* empty */ }
+    public static class ConfigureNotificationSettingsActivity extends SettingsActivity { /* empty */ }
     public static class NotificationAppListActivity extends SettingsActivity { /* empty */ }
     public static class AppNotificationSettingsActivity extends SettingsActivity { /* empty */ }
     public static class OtherSoundSettingsActivity extends SettingsActivity { /* empty */ }
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index fd4a493..809a740 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -82,8 +82,9 @@
 import com.android.settings.nfc.AndroidBeam;
 import com.android.settings.nfc.PaymentSettings;
 import com.android.settings.notification.AppNotificationSettings;
+import com.android.settings.notification.ConfigureNotificationSettings;
 import com.android.settings.notification.NotificationAccessSettings;
-import com.android.settings.notification.NotificationSettings;
+import com.android.settings.notification.SoundSettings;
 import com.android.settings.notification.NotificationStation;
 import com.android.settings.notification.OtherSoundSettings;
 import com.android.settings.notification.ZenAccessSettings;
@@ -211,7 +212,7 @@
             Settings.WirelessSettingsActivity.class.getName(),
             //device_section
             Settings.HomeSettingsActivity.class.getName(),
-            Settings.NotificationSettingsActivity.class.getName(),
+            Settings.SoundSettingsActivity.class.getName(),
             Settings.DisplaySettingsActivity.class.getName(),
             Settings.StorageSettingsActivity.class.getName(),
             Settings.ManageApplicationsActivity.class.getName(),
@@ -284,7 +285,8 @@
             PaymentSettings.class.getName(),
             KeyboardLayoutPickerFragment.class.getName(),
             ZenModeSettings.class.getName(),
-            NotificationSettings.class.getName(),
+            SoundSettings.class.getName(),
+            ConfigureNotificationSettings.class.getName(),
             ChooseLockPassword.ChooseLockPasswordFragment.class.getName(),
             ChooseLockPattern.ChooseLockPatternFragment.class.getName(),
             InstalledAppDetails.class.getName(),
diff --git a/src/com/android/settings/applications/ManageApplications.java b/src/com/android/settings/applications/ManageApplications.java
index 35ae427..a01e18d 100644
--- a/src/com/android/settings/applications/ManageApplications.java
+++ b/src/com/android/settings/applications/ManageApplications.java
@@ -67,6 +67,7 @@
 import com.android.settings.fuelgauge.HighPowerDetail;
 import com.android.settings.fuelgauge.PowerWhitelistBackend;
 import com.android.settings.notification.AppNotificationSettings;
+import com.android.settings.notification.ConfigureNotificationSettings;
 import com.android.settings.notification.NotificationBackend;
 import com.android.settings.notification.NotificationBackend.AppRow;
 import com.android.settingslib.applications.ApplicationsState;
@@ -523,7 +524,8 @@
         if (mOptionsMenu == null) {
             return;
         }
-        mOptionsMenu.findItem(R.id.advanced).setVisible(mListType == LIST_TYPE_MAIN);
+        mOptionsMenu.findItem(R.id.advanced).setVisible(
+                mListType == LIST_TYPE_MAIN || mListType == LIST_TYPE_NOTIFICATION);
 
         mOptionsMenu.findItem(R.id.sort_order_alpha).setVisible(mListType == LIST_TYPE_STORAGE
                 && mSortOrder != R.id.sort_order_alpha);
@@ -556,9 +558,15 @@
                 mResetAppsHelper.buildResetDialog();
                 return true;
             case R.id.advanced:
-                ((SettingsActivity) getActivity()).startPreferencePanel(
-                        AdvancedAppSettings.class.getName(), null, R.string.configure_apps,
-                        null, this, ADVANCED_SETTINGS);
+                if (mListType == LIST_TYPE_NOTIFICATION) {
+                    ((SettingsActivity) getActivity()).startPreferencePanel(
+                            ConfigureNotificationSettings.class.getName(), null,
+                            R.string.configure_notification_settings, null, this, ADVANCED_SETTINGS);
+                } else {
+                    ((SettingsActivity) getActivity()).startPreferencePanel(
+                            AdvancedAppSettings.class.getName(), null, R.string.configure_apps,
+                            null, this, ADVANCED_SETTINGS);
+                }
                 return true;
             default:
                 // Handle the home button
diff --git a/src/com/android/settings/applications/ProcessStatsSummary.java b/src/com/android/settings/applications/ProcessStatsSummary.java
index 399558b..09fea89 100644
--- a/src/com/android/settings/applications/ProcessStatsSummary.java
+++ b/src/com/android/settings/applications/ProcessStatsSummary.java
@@ -15,6 +15,8 @@
  */
 package com.android.settings.applications;
 
+import android.app.Activity;
+import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.os.Bundle;
 import android.support.v7.preference.Preference;
@@ -28,6 +30,7 @@
 import com.android.settings.R;
 import com.android.settings.Utils;
 import com.android.settings.applications.ProcStatsData.MemInfo;
+import com.android.settings.dashboard.SummaryLoader;
 
 public class ProcessStatsSummary extends ProcessStatsBase implements OnPreferenceClickListener {
 
@@ -123,4 +126,39 @@
         return false;
     }
 
+    private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final SummaryLoader mSummaryLoader;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                ProcStatsData statsManager = new ProcStatsData(mContext, false);
+                statsManager.setDuration(sDurations[0]);
+                MemInfo memInfo = statsManager.getMemInfo();
+                String usedResult = Formatter.formatShortFileSize(mContext,
+                        (long) memInfo.realUsedRam);
+                String totalResult = Formatter.formatShortFileSize(mContext,
+                        (long) memInfo.realTotalRam);
+                mSummaryLoader.setSummary(this, mContext.getString(R.string.memory_summary,
+                        usedResult, totalResult));
+            }
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                                                                   SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
+
 }
diff --git a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
index 779944b..fff5a78 100644
--- a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
+++ b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
@@ -60,6 +60,7 @@
 import com.android.settings.UserDictionarySettings;
 import com.android.settings.Utils;
 import com.android.settings.VoiceInputOutputSettings;
+import com.android.settings.dashboard.SummaryLoader;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.search.Indexable;
 import com.android.settings.search.SearchIndexableRaw;
@@ -648,6 +649,34 @@
         }
     }
 
+    private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final SummaryLoader mSummaryLoader;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                String localeName = getLocaleName(mContext);
+                mSummaryLoader.setSummary(this, localeName);
+            }
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                                                                   SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
+
     public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
             new BaseSearchIndexProvider() {
         @Override
diff --git a/src/com/android/settings/location/LocationSettings.java b/src/com/android/settings/location/LocationSettings.java
index 38647bd..0c8ea66 100644
--- a/src/com/android/settings/location/LocationSettings.java
+++ b/src/com/android/settings/location/LocationSettings.java
@@ -16,6 +16,7 @@
 
 package com.android.settings.location;
 
+import android.app.Activity;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
@@ -24,6 +25,7 @@
 import android.os.Bundle;
 import android.os.UserHandle;
 import android.os.UserManager;
+import android.provider.Settings;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceCategory;
 import android.support.v7.preference.PreferenceGroup;
@@ -33,14 +35,13 @@
 import android.view.MenuInflater;
 import android.view.MenuItem;
 import android.widget.Switch;
-
 import com.android.internal.logging.MetricsLogger;
 import com.android.settings.DimmableIconPreference;
-import com.android.settings.PreferenceActivity;
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
 import com.android.settings.Utils;
 import com.android.settings.applications.InstalledAppDetails;
+import com.android.settings.dashboard.SummaryLoader;
 import com.android.settings.widget.SwitchBar;
 import com.android.settingslib.location.RecentLocationApps;
 
@@ -331,23 +332,25 @@
         return R.string.help_url_location_access;
     }
 
-    @Override
-    public void onModeChanged(int mode, boolean restricted) {
+    private static int getLocationString(int mode) {
         switch (mode) {
             case android.provider.Settings.Secure.LOCATION_MODE_OFF:
-                mLocationMode.setSummary(R.string.location_mode_location_off_title);
-                break;
+                return R.string.location_mode_location_off_title;
             case android.provider.Settings.Secure.LOCATION_MODE_SENSORS_ONLY:
-                mLocationMode.setSummary(R.string.location_mode_sensors_only_title);
-                break;
+                return R.string.location_mode_sensors_only_title;
             case android.provider.Settings.Secure.LOCATION_MODE_BATTERY_SAVING:
-                mLocationMode.setSummary(R.string.location_mode_battery_saving_title);
-                break;
+                return R.string.location_mode_battery_saving_title;
             case android.provider.Settings.Secure.LOCATION_MODE_HIGH_ACCURACY:
-                mLocationMode.setSummary(R.string.location_mode_high_accuracy_title);
-                break;
-            default:
-                break;
+                return R.string.location_mode_high_accuracy_title;
+        }
+        return 0;
+    }
+
+    @Override
+    public void onModeChanged(int mode, boolean restricted) {
+        int modeDescription = getLocationString(mode);
+        if (modeDescription != 0) {
+            mLocationMode.setSummary(modeDescription);
         }
 
         // Restricted user can't change the location mode, so disable the master switch. But in some
@@ -416,10 +419,45 @@
             // start new fragment to display extended information
             Bundle args = new Bundle();
             args.putString(InstalledAppDetails.ARG_PACKAGE_NAME, mPackage);
-            ((PreferenceActivity) getActivity()).startPreferencePanelAsUser(
+            ((SettingsActivity) getActivity()).startPreferencePanelAsUser(
                     InstalledAppDetails.class.getName(), args,
                     R.string.application_info_label, null, mUserHandle);
             return true;
         }
     }
+
+    private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final SummaryLoader mSummaryLoader;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                int mode = Settings.Secure.getInt(mContext.getContentResolver(),
+                        Settings.Secure.LOCATION_MODE, Settings.Secure.LOCATION_MODE_OFF);
+                if (mode != Settings.Secure.LOCATION_MODE_OFF) {
+                    mSummaryLoader.setSummary(this, mContext.getString(R.string.location_on_summary,
+                            mContext.getString(getLocationString(mode))));
+                } else {
+                    mSummaryLoader.setSummary(this,
+                            mContext.getString(R.string.location_off_summary));
+                }
+            }
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                                                                   SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
 }
diff --git a/src/com/android/settings/nfc/NfcPaymentPreference.java b/src/com/android/settings/nfc/NfcPaymentPreference.java
index c918d2f..4738728 100644
--- a/src/com/android/settings/nfc/NfcPaymentPreference.java
+++ b/src/com/android/settings/nfc/NfcPaymentPreference.java
@@ -15,6 +15,7 @@
  */
 package com.android.settings.nfc;
 
+import android.app.Activity;
 import android.app.AlertDialog;
 import android.content.ActivityNotFoundException;
 import android.content.Context;
@@ -32,6 +33,7 @@
 
 import com.android.settings.CustomDialogPreference;
 import com.android.settings.R;
+import com.android.settings.dashboard.SummaryLoader;
 import com.android.settings.nfc.PaymentBackend.PaymentAppInfo;
 
 import java.util.List;
diff --git a/src/com/android/settings/nfc/PaymentSettings.java b/src/com/android/settings/nfc/PaymentSettings.java
index b03a9ef..42545b9 100644
--- a/src/com/android/settings/nfc/PaymentSettings.java
+++ b/src/com/android/settings/nfc/PaymentSettings.java
@@ -16,6 +16,8 @@
 
 package com.android.settings.nfc;
 
+import android.app.Activity;
+import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
 import android.support.v7.preference.PreferenceManager;
@@ -25,9 +27,12 @@
 import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
+
 import com.android.internal.logging.MetricsLogger;
 import com.android.settings.R;
 import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.dashboard.SummaryLoader;
+import com.android.settings.nfc.PaymentBackend.PaymentAppInfo;
 
 import java.util.List;
 
@@ -93,4 +98,35 @@
         menuItem.setIntent(howItWorksIntent);
         menuItem.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_NEVER);
     }
+
+    private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final SummaryLoader mSummaryLoader;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                PaymentBackend paymentBackend = new PaymentBackend(mContext);
+                paymentBackend.refresh();
+                PaymentAppInfo app = paymentBackend.getDefaultApp();
+                mSummaryLoader.setSummary(this, mContext.getString(R.string.payment_summary,
+                        app.label));
+            }
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                                                                   SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
 }
diff --git a/src/com/android/settings/notification/ConfigureNotificationSettings.java b/src/com/android/settings/notification/ConfigureNotificationSettings.java
new file mode 100644
index 0000000..4b438f0
--- /dev/null
+++ b/src/com/android/settings/notification/ConfigureNotificationSettings.java
@@ -0,0 +1,250 @@
+/**
+ * Copyright (C) 2015 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.notification;
+
+import com.android.internal.widget.LockPatternUtils;
+import com.android.settings.DropDownPreference;
+import com.android.settings.InstrumentedFragment;
+import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
+
+import android.app.admin.DevicePolicyManager;
+import android.content.ContentResolver;
+import android.content.Context;
+import android.database.ContentObserver;
+import android.net.Uri;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.UserHandle;
+import android.provider.Settings;
+import android.support.v7.preference.Preference;
+import android.support.v7.preference.Preference.OnPreferenceChangeListener;
+import android.support.v7.preference.TwoStatePreference;
+import android.util.Log;
+
+import java.util.ArrayList;
+
+public class ConfigureNotificationSettings extends SettingsPreferenceFragment {
+    private static final String TAG = "ConfigNotiSettings";
+
+    private static final String KEY_NOTIFICATION_PULSE = "notification_pulse";
+    private static final String KEY_LOCK_SCREEN_NOTIFICATIONS = "lock_screen_notifications";
+
+    private final SettingsObserver mSettingsObserver = new SettingsObserver();
+
+    private Context mContext;
+
+    private TwoStatePreference mNotificationPulse;
+    private DropDownPreference mLockscreen;
+    private boolean mSecure;
+    private int mLockscreenSelectedValue;
+
+    @Override
+    protected int getMetricsCategory() {
+        return InstrumentedFragment.CONFIGURE_NOTIFICATION;
+    }
+
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        mContext = getActivity();
+        mSecure = new LockPatternUtils(getActivity()).isSecure(UserHandle.myUserId());
+
+        addPreferencesFromResource(R.xml.configure_notification_settings);
+
+        initPulse();
+        initLockscreenNotifications();
+
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+        mSettingsObserver.register(true);
+    }
+
+    @Override
+    public void onPause() {
+        super.onPause();
+        mSettingsObserver.register(false);
+    }
+
+    // === Pulse notification light ===
+
+    private void initPulse() {
+        mNotificationPulse =
+                (TwoStatePreference) getPreferenceScreen().findPreference(KEY_NOTIFICATION_PULSE);
+        if (mNotificationPulse == null) {
+            Log.i(TAG, "Preference not found: " + KEY_NOTIFICATION_PULSE);
+            return;
+        }
+        if (!getResources()
+                .getBoolean(com.android.internal.R.bool.config_intrusiveNotificationLed)) {
+            getPreferenceScreen().removePreference(mNotificationPulse);
+        } else {
+            updatePulse();
+            mNotificationPulse.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+                @Override
+                public boolean onPreferenceChange(Preference preference, Object newValue) {
+                    final boolean val = (Boolean)newValue;
+                    return Settings.System.putInt(getContentResolver(),
+                            Settings.System.NOTIFICATION_LIGHT_PULSE,
+                            val ? 1 : 0);
+                }
+            });
+        }
+    }
+
+    private void updatePulse() {
+        if (mNotificationPulse == null) {
+            return;
+        }
+        try {
+            mNotificationPulse.setChecked(Settings.System.getInt(getContentResolver(),
+                    Settings.System.NOTIFICATION_LIGHT_PULSE) == 1);
+        } catch (Settings.SettingNotFoundException snfe) {
+            Log.e(TAG, Settings.System.NOTIFICATION_LIGHT_PULSE + " not found");
+        }
+    }
+
+    // === Lockscreen (public / private) notifications ===
+
+    private void initLockscreenNotifications() {
+        mLockscreen = (DropDownPreference) getPreferenceScreen().findPreference(
+                KEY_LOCK_SCREEN_NOTIFICATIONS);
+        if (mLockscreen == null) {
+            Log.i(TAG, "Preference not found: " + KEY_LOCK_SCREEN_NOTIFICATIONS);
+            return;
+        }
+
+        boolean isSecureNotificationsDisabled = isSecureNotificationsDisabled();
+        boolean isUnredactedNotificationsDisabled = isUnredactedNotificationsDisabled();
+        ArrayList<CharSequence> entries = new ArrayList<>();
+        ArrayList<CharSequence> values = new ArrayList<>();
+        if (!isSecureNotificationsDisabled && !isUnredactedNotificationsDisabled) {
+            entries.add(getString(R.string.lock_screen_notifications_summary_show));
+            values.add(Integer.toString(R.string.lock_screen_notifications_summary_show));
+        }
+        if (mSecure && !isSecureNotificationsDisabled) {
+            entries.add(getString(R.string.lock_screen_notifications_summary_hide));
+            values.add(Integer.toString(R.string.lock_screen_notifications_summary_hide));
+        }
+        entries.add(getString(R.string.lock_screen_notifications_summary_disable));
+        values.add(Integer.toString(R.string.lock_screen_notifications_summary_disable));
+
+        mLockscreen.setEntries(entries.toArray(new CharSequence[entries.size()]));
+        mLockscreen.setEntryValues(values.toArray(new CharSequence[values.size()]));
+        updateLockscreenNotifications();
+        if (mLockscreen.getEntries().length > 1) {
+            mLockscreen.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+                @Override
+                public boolean onPreferenceChange(Preference preference, Object newValue) {
+                    final int val = Integer.parseInt((String) newValue);
+                    if (val == mLockscreenSelectedValue) {
+                        return false;
+                    }
+                    final boolean enabled =
+                            val != R.string.lock_screen_notifications_summary_disable;
+                    final boolean show = val == R.string.lock_screen_notifications_summary_show;
+                    Settings.Secure.putInt(getContentResolver(),
+                            Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, show ? 1 : 0);
+                    Settings.Secure.putInt(getContentResolver(),
+                            Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS, enabled ? 1 : 0);
+                    mLockscreenSelectedValue = val;
+                    return true;
+                }
+            });
+        } else {
+            // There is one or less option for the user, disable the drop down.
+            mLockscreen.setEnabled(false);
+        }
+    }
+
+    private boolean isSecureNotificationsDisabled() {
+        final DevicePolicyManager dpm =
+                (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
+        return dpm != null && (dpm.getKeyguardDisabledFeatures(null)
+                & DevicePolicyManager.KEYGUARD_DISABLE_SECURE_NOTIFICATIONS) != 0;
+    }
+
+    private boolean isUnredactedNotificationsDisabled() {
+        final DevicePolicyManager dpm =
+                (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
+        return dpm != null && (dpm.getKeyguardDisabledFeatures(null)
+                & DevicePolicyManager.KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS) != 0;
+    }
+
+    private void updateLockscreenNotifications() {
+        if (mLockscreen == null) {
+            return;
+        }
+        final boolean enabled = getLockscreenNotificationsEnabled();
+        final boolean allowPrivate = !mSecure || getLockscreenAllowPrivateNotifications();
+        mLockscreenSelectedValue = !enabled ? R.string.lock_screen_notifications_summary_disable :
+                allowPrivate ? R.string.lock_screen_notifications_summary_show :
+                R.string.lock_screen_notifications_summary_hide;
+        mLockscreen.setValue(Integer.toString(mLockscreenSelectedValue));
+    }
+
+    private boolean getLockscreenNotificationsEnabled() {
+        return Settings.Secure.getInt(getContentResolver(),
+                Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS, 0) != 0;
+    }
+
+    private boolean getLockscreenAllowPrivateNotifications() {
+        return Settings.Secure.getInt(getContentResolver(),
+                Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, 0) != 0;
+    }
+
+
+    // === Callbacks ===
+
+    private final class SettingsObserver extends ContentObserver {
+        private final Uri NOTIFICATION_LIGHT_PULSE_URI =
+                Settings.System.getUriFor(Settings.System.NOTIFICATION_LIGHT_PULSE);
+        private final Uri LOCK_SCREEN_PRIVATE_URI =
+                Settings.Secure.getUriFor(Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS);
+        private final Uri LOCK_SCREEN_SHOW_URI =
+                Settings.Secure.getUriFor(Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS);
+
+        public SettingsObserver() {
+            super(new Handler());
+        }
+
+        public void register(boolean register) {
+            final ContentResolver cr = getContentResolver();
+            if (register) {
+                cr.registerContentObserver(NOTIFICATION_LIGHT_PULSE_URI, false, this);
+                cr.registerContentObserver(LOCK_SCREEN_PRIVATE_URI, false, this);
+                cr.registerContentObserver(LOCK_SCREEN_SHOW_URI, false, this);
+            } else {
+                cr.unregisterContentObserver(this);
+            }
+        }
+
+        @Override
+        public void onChange(boolean selfChange, Uri uri) {
+            super.onChange(selfChange, uri);
+            if (NOTIFICATION_LIGHT_PULSE_URI.equals(uri)) {
+                updatePulse();
+            }
+            if (LOCK_SCREEN_PRIVATE_URI.equals(uri) || LOCK_SCREEN_SHOW_URI.equals(uri)) {
+                updateLockscreenNotifications();
+            }
+        }
+    }
+}
diff --git a/src/com/android/settings/notification/NotificationSettings.java b/src/com/android/settings/notification/SoundSettings.java
similarity index 64%
rename from src/com/android/settings/notification/NotificationSettings.java
rename to src/com/android/settings/notification/SoundSettings.java
index 46935d0..9e27528 100644
--- a/src/com/android/settings/notification/NotificationSettings.java
+++ b/src/com/android/settings/notification/SoundSettings.java
@@ -16,8 +16,8 @@
 
 package com.android.settings.notification;
 
+import android.app.Activity;
 import android.app.NotificationManager;
-import android.app.admin.DevicePolicyManager;
 import android.content.BroadcastReceiver;
 import android.content.ComponentName;
 import android.content.ContentResolver;
@@ -37,7 +37,6 @@
 import android.os.Handler;
 import android.os.Looper;
 import android.os.Message;
-import android.os.UserHandle;
 import android.os.UserManager;
 import android.os.Vibrator;
 import android.preference.SeekBarVolumizer;
@@ -47,29 +46,27 @@
 import android.provider.Settings;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.Preference.OnPreferenceChangeListener;
-import android.support.v7.preference.PreferenceCategory;
 import android.support.v7.preference.TwoStatePreference;
 import android.util.Log;
 
-import com.android.internal.logging.MetricsLogger;
-import com.android.internal.widget.LockPatternUtils;
-import com.android.settings.DropDownPreference;
+import com.android.settings.InstrumentedFragment;
 import com.android.settings.R;
 import com.android.settings.RingtonePreference;
 import com.android.settings.SettingsPreferenceFragment;
 import com.android.settings.Utils;
+import com.android.settings.dashboard.SummaryLoader;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.search.Indexable;
 
+import java.text.NumberFormat;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
 
-public class NotificationSettings extends SettingsPreferenceFragment implements Indexable {
-    private static final String TAG = "NotificationSettings";
+public class SoundSettings extends SettingsPreferenceFragment implements Indexable {
+    private static final String TAG = "SoundSettings";
 
-    private static final String KEY_SOUND = "sound";
     private static final String KEY_MEDIA_VOLUME = "media_volume";
     private static final String KEY_ALARM_VOLUME = "alarm_volume";
     private static final String KEY_RING_VOLUME = "ring_volume";
@@ -78,11 +75,6 @@
     private static final String KEY_NOTIFICATION_RINGTONE = "notification_ringtone";
     private static final String KEY_VIBRATE_WHEN_RINGING = "vibrate_when_ringing";
     private static final String KEY_WIFI_DISPLAY = "wifi_display";
-    private static final String KEY_NOTIFICATION = "notification";
-    private static final String KEY_NOTIFICATION_PULSE = "notification_pulse";
-    private static final String KEY_LOCK_SCREEN_NOTIFICATIONS = "lock_screen_notifications";
-    private static final String KEY_NOTIFICATION_ACCESS = "manage_notification_access";
-    private static final String KEY_ZEN_ACCESS = "manage_zen_access";
     private static final String KEY_ZEN_MODE = "zen_mode";
 
     private static final String[] RESTRICTED_KEYS = {
@@ -90,7 +82,6 @@
         KEY_ALARM_VOLUME,
         KEY_RING_VOLUME,
         KEY_NOTIFICATION_VOLUME,
-        KEY_ZEN_ACCESS,
         KEY_ZEN_MODE,
     };
 
@@ -103,7 +94,6 @@
     private final ArrayList<VolumeSeekBarPreference> mVolumePrefs = new ArrayList<>();
 
     private Context mContext;
-    private PackageManager mPM;
     private boolean mVoiceCapable;
     private Vibrator mVibrator;
     private AudioManager mAudioManager;
@@ -112,12 +102,6 @@
     private Preference mPhoneRingtonePreference;
     private Preference mNotificationRingtonePreference;
     private TwoStatePreference mVibrateWhenRinging;
-    private TwoStatePreference mNotificationPulse;
-    private DropDownPreference mLockscreen;
-    private Preference mNotificationAccess;
-    private Preference mZenAccess;
-    private boolean mSecure;
-    private int mLockscreenSelectedValue;
     private ComponentName mSuppressor;
     private int mRingerMode = -1;
 
@@ -126,17 +110,15 @@
 
     @Override
     protected int getMetricsCategory() {
-        return MetricsLogger.NOTIFICATION;
+        return InstrumentedFragment.SOUND;
     }
 
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         mContext = getActivity();
-        mPM = mContext.getPackageManager();
         mUserManager = UserManager.get(getContext());
         mVoiceCapable = Utils.isVoiceCapable(mContext);
-        mSecure = new LockPatternUtils(getActivity()).isSecure(UserHandle.myUserId());
 
         mAudioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
         mVibrator = (Vibrator) getActivity().getSystemService(Context.VIBRATOR_SERVICE);
@@ -144,9 +126,8 @@
             mVibrator = null;
         }
 
-        addPreferencesFromResource(R.xml.notification_settings);
+        addPreferencesFromResource(R.xml.sound_settings);
 
-        final PreferenceCategory sound = (PreferenceCategory) findPreference(KEY_SOUND);
         initVolumePreference(KEY_MEDIA_VOLUME, AudioManager.STREAM_MUSIC,
                 com.android.internal.R.drawable.ic_audio_media_mute);
         initVolumePreference(KEY_ALARM_VOLUME, AudioManager.STREAM_ALARM,
@@ -155,25 +136,15 @@
             mRingOrNotificationPreference =
                     initVolumePreference(KEY_RING_VOLUME, AudioManager.STREAM_RING,
                             com.android.internal.R.drawable.ic_audio_ring_notif_mute);
-            sound.removePreference(sound.findPreference(KEY_NOTIFICATION_VOLUME));
+            removePreference(KEY_NOTIFICATION_VOLUME);
         } else {
             mRingOrNotificationPreference =
                     initVolumePreference(KEY_NOTIFICATION_VOLUME, AudioManager.STREAM_NOTIFICATION,
                             com.android.internal.R.drawable.ic_audio_ring_notif_mute);
-            sound.removePreference(sound.findPreference(KEY_RING_VOLUME));
+            removePreference(KEY_RING_VOLUME);
         }
-        initRingtones(sound);
-        initVibrateWhenRinging(sound);
-
-        final PreferenceCategory notification = (PreferenceCategory)
-                findPreference(KEY_NOTIFICATION);
-        initPulse(notification);
-        initLockscreenNotifications(notification);
-
-        mNotificationAccess = findPreference(KEY_NOTIFICATION_ACCESS);
-        refreshNotificationListeners();
-        mZenAccess = findPreference(KEY_ZEN_ACCESS);
-        refreshZenAccess();
+        initRingtones();
+        initVibrateWhenRinging();
         updateRingerMode();
         updateEffectsSuppressor();
     }
@@ -181,8 +152,6 @@
     @Override
     public void onResume() {
         super.onResume();
-        refreshNotificationListeners();
-        refreshZenAccess();
         lookupRingtoneNames();
         mSettingsObserver.register(true);
         mReceiver.register(true);
@@ -323,13 +292,14 @@
 
     // === Phone & notification ringtone ===
 
-    private void initRingtones(PreferenceCategory root) {
-        mPhoneRingtonePreference = root.findPreference(KEY_PHONE_RINGTONE);
+    private void initRingtones() {
+        mPhoneRingtonePreference = getPreferenceScreen().findPreference(KEY_PHONE_RINGTONE);
         if (mPhoneRingtonePreference != null && !mVoiceCapable) {
-            root.removePreference(mPhoneRingtonePreference);
+            getPreferenceScreen().removePreference(mPhoneRingtonePreference);
             mPhoneRingtonePreference = null;
         }
-        mNotificationRingtonePreference = root.findPreference(KEY_NOTIFICATION_RINGTONE);
+        mNotificationRingtonePreference =
+                getPreferenceScreen().findPreference(KEY_NOTIFICATION_RINGTONE);
     }
 
     private void lookupRingtoneNames() {
@@ -397,14 +367,15 @@
 
     // === Vibrate when ringing ===
 
-    private void initVibrateWhenRinging(PreferenceCategory root) {
-        mVibrateWhenRinging = (TwoStatePreference) root.findPreference(KEY_VIBRATE_WHEN_RINGING);
+    private void initVibrateWhenRinging() {
+        mVibrateWhenRinging =
+                (TwoStatePreference) getPreferenceScreen().findPreference(KEY_VIBRATE_WHEN_RINGING);
         if (mVibrateWhenRinging == null) {
             Log.i(TAG, "Preference not found: " + KEY_VIBRATE_WHEN_RINGING);
             return;
         }
         if (!mVoiceCapable) {
-            root.removePreference(mVibrateWhenRinging);
+            getPreferenceScreen().removePreference(mVibrateWhenRinging);
             mVibrateWhenRinging = null;
             return;
         }
@@ -427,164 +398,11 @@
                 Settings.System.VIBRATE_WHEN_RINGING, 0) != 0);
     }
 
-    // === Pulse notification light ===
-
-    private void initPulse(PreferenceCategory parent) {
-        mNotificationPulse = (TwoStatePreference) parent.findPreference(KEY_NOTIFICATION_PULSE);
-        if (mNotificationPulse == null) {
-            Log.i(TAG, "Preference not found: " + KEY_NOTIFICATION_PULSE);
-            return;
-        }
-        if (!getResources()
-                .getBoolean(com.android.internal.R.bool.config_intrusiveNotificationLed)) {
-            parent.removePreference(mNotificationPulse);
-        } else {
-            updatePulse();
-            mNotificationPulse.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
-                @Override
-                public boolean onPreferenceChange(Preference preference, Object newValue) {
-                    final boolean val = (Boolean)newValue;
-                    return Settings.System.putInt(getContentResolver(),
-                            Settings.System.NOTIFICATION_LIGHT_PULSE,
-                            val ? 1 : 0);
-                }
-            });
-        }
-    }
-
-    private void updatePulse() {
-        if (mNotificationPulse == null) {
-            return;
-        }
-        try {
-            mNotificationPulse.setChecked(Settings.System.getInt(getContentResolver(),
-                    Settings.System.NOTIFICATION_LIGHT_PULSE) == 1);
-        } catch (Settings.SettingNotFoundException snfe) {
-            Log.e(TAG, Settings.System.NOTIFICATION_LIGHT_PULSE + " not found");
-        }
-    }
-
-    // === Lockscreen (public / private) notifications ===
-
-    private void initLockscreenNotifications(PreferenceCategory parent) {
-        mLockscreen = (DropDownPreference) parent.findPreference(KEY_LOCK_SCREEN_NOTIFICATIONS);
-        if (mLockscreen == null) {
-            Log.i(TAG, "Preference not found: " + KEY_LOCK_SCREEN_NOTIFICATIONS);
-            return;
-        }
-
-        boolean isSecureNotificationsDisabled = isSecureNotificationsDisabled();
-        boolean isUnredactedNotificationsDisabled = isUnredactedNotificationsDisabled();
-        ArrayList<CharSequence> entries = new ArrayList<>();
-        ArrayList<CharSequence> values = new ArrayList<>();
-        if (!isSecureNotificationsDisabled && !isUnredactedNotificationsDisabled) {
-            entries.add(getString(R.string.lock_screen_notifications_summary_show));
-            values.add(Integer.toString(R.string.lock_screen_notifications_summary_show));
-        }
-        if (mSecure && !isSecureNotificationsDisabled) {
-            entries.add(getString(R.string.lock_screen_notifications_summary_hide));
-            values.add(Integer.toString(R.string.lock_screen_notifications_summary_hide));
-        }
-        entries.add(getString(R.string.lock_screen_notifications_summary_disable));
-        values.add(Integer.toString(R.string.lock_screen_notifications_summary_disable));
-
-        mLockscreen.setEntries(entries.toArray(new CharSequence[entries.size()]));
-        mLockscreen.setEntryValues(values.toArray(new CharSequence[values.size()]));
-        updateLockscreenNotifications();
-        if (mLockscreen.getEntries().length > 1) {
-            mLockscreen.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
-                @Override
-                public boolean onPreferenceChange(Preference preference, Object newValue) {
-                    final int val = Integer.parseInt((String) newValue);
-                    if (val == mLockscreenSelectedValue) {
-                        return false;
-                    }
-                    final boolean enabled =
-                            val != R.string.lock_screen_notifications_summary_disable;
-                    final boolean show = val == R.string.lock_screen_notifications_summary_show;
-                    Settings.Secure.putInt(getContentResolver(),
-                            Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, show ? 1 : 0);
-                    Settings.Secure.putInt(getContentResolver(),
-                            Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS, enabled ? 1 : 0);
-                    mLockscreenSelectedValue = val;
-                    return true;
-                }
-            });
-        } else {
-            // There is one or less option for the user, disable the drop down.
-            mLockscreen.setEnabled(false);
-        }
-    }
-
-    private boolean isSecureNotificationsDisabled() {
-        final DevicePolicyManager dpm =
-                (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
-        return dpm != null && (dpm.getKeyguardDisabledFeatures(null)
-                & DevicePolicyManager.KEYGUARD_DISABLE_SECURE_NOTIFICATIONS) != 0;
-    }
-
-    private boolean isUnredactedNotificationsDisabled() {
-        final DevicePolicyManager dpm =
-                (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
-        return dpm != null && (dpm.getKeyguardDisabledFeatures(null)
-                & DevicePolicyManager.KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS) != 0;
-    }
-
-    private void updateLockscreenNotifications() {
-        if (mLockscreen == null) {
-            return;
-        }
-        final boolean enabled = getLockscreenNotificationsEnabled();
-        final boolean allowPrivate = !mSecure || getLockscreenAllowPrivateNotifications();
-        mLockscreenSelectedValue = !enabled ? R.string.lock_screen_notifications_summary_disable :
-                allowPrivate ? R.string.lock_screen_notifications_summary_show :
-                R.string.lock_screen_notifications_summary_hide;
-        mLockscreen.setValue(Integer.toString(mLockscreenSelectedValue));
-    }
-
-    private boolean getLockscreenNotificationsEnabled() {
-        return Settings.Secure.getInt(getContentResolver(),
-                Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS, 0) != 0;
-    }
-
-    private boolean getLockscreenAllowPrivateNotifications() {
-        return Settings.Secure.getInt(getContentResolver(),
-                Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, 0) != 0;
-    }
-
-    // === Notification listeners ===
-
-    private void refreshNotificationListeners() {
-        if (mNotificationAccess != null) {
-            final int n = NotificationAccessSettings.getEnabledListenersCount(mContext);
-            if (n == 0) {
-                mNotificationAccess.setSummary(getResources().getString(
-                        R.string.manage_notification_access_summary_zero));
-            } else {
-                mNotificationAccess.setSummary(String.format(getResources().getQuantityString(
-                        R.plurals.manage_notification_access_summary_nonzero,
-                        n, n)));
-            }
-        }
-    }
-
-    // === Zen access ===
-
-    private void refreshZenAccess() {
-        // noop for now
-    }
-
     // === Callbacks ===
 
     private final class SettingsObserver extends ContentObserver {
         private final Uri VIBRATE_WHEN_RINGING_URI =
                 Settings.System.getUriFor(Settings.System.VIBRATE_WHEN_RINGING);
-        private final Uri NOTIFICATION_LIGHT_PULSE_URI =
-                Settings.System.getUriFor(Settings.System.NOTIFICATION_LIGHT_PULSE);
-        private final Uri LOCK_SCREEN_PRIVATE_URI =
-                Settings.Secure.getUriFor(Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS);
-        private final Uri LOCK_SCREEN_SHOW_URI =
-                Settings.Secure.getUriFor(Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS);
 
         public SettingsObserver() {
             super(mHandler);
@@ -594,9 +412,6 @@
             final ContentResolver cr = getContentResolver();
             if (register) {
                 cr.registerContentObserver(VIBRATE_WHEN_RINGING_URI, false, this);
-                cr.registerContentObserver(NOTIFICATION_LIGHT_PULSE_URI, false, this);
-                cr.registerContentObserver(LOCK_SCREEN_PRIVATE_URI, false, this);
-                cr.registerContentObserver(LOCK_SCREEN_SHOW_URI, false, this);
             } else {
                 cr.unregisterContentObserver(this);
             }
@@ -608,12 +423,6 @@
             if (VIBRATE_WHEN_RINGING_URI.equals(uri)) {
                 updateVibrateWhenRinging();
             }
-            if (NOTIFICATION_LIGHT_PULSE_URI.equals(uri)) {
-                updatePulse();
-            }
-            if (LOCK_SCREEN_PRIVATE_URI.equals(uri) || LOCK_SCREEN_SHOW_URI.equals(uri)) {
-                updateLockscreenNotifications();
-            }
         }
     }
 
@@ -677,6 +486,57 @@
         }
     }
 
+    // === Summary ===
+
+    private static class SummaryProvider extends BroadcastReceiver
+            implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final AudioManager mAudioManager;
+        private final SummaryLoader mSummaryLoader;
+        private final int maxVolume;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+            mAudioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
+            maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_RING);
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                IntentFilter filter = new IntentFilter();
+                filter.addAction(AudioManager.VOLUME_CHANGED_ACTION);
+                filter.addAction(AudioManager.STREAM_DEVICES_CHANGED_ACTION);
+                filter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION);
+                filter.addAction(AudioManager.INTERNAL_RINGER_MODE_CHANGED_ACTION);
+                filter.addAction(AudioManager.STREAM_MUTE_CHANGED_ACTION);
+                filter.addAction(NotificationManager.ACTION_EFFECTS_SUPPRESSOR_CHANGED);
+                mContext.registerReceiver(this, filter);
+            } else {
+                mContext.unregisterReceiver(this);
+            }
+        }
+
+        @Override
+        public void onReceive(Context context, Intent intent) {
+            String percent =  NumberFormat.getPercentInstance().format(
+                    (double) mAudioManager.getStreamVolume(AudioManager.STREAM_RING) / maxVolume);
+            mSummaryLoader.setSummary(this,
+                    mContext.getString(R.string.sound_settings_summary, percent));
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
+
     // === Indexing ===
 
     public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
@@ -685,7 +545,7 @@
         public List<SearchIndexableResource> getXmlResourcesToIndex(
                 Context context, boolean enabled) {
             final SearchIndexableResource sir = new SearchIndexableResource(context);
-            sir.xmlResId = R.xml.notification_settings;
+            sir.xmlResId = R.xml.configure_notification_settings;
             return Arrays.asList(sir);
         }
 
diff --git a/src/com/android/settings/notification/ZenModeSettings.java b/src/com/android/settings/notification/ZenModeSettings.java
index 39ec08c..3743396 100644
--- a/src/com/android/settings/notification/ZenModeSettings.java
+++ b/src/com/android/settings/notification/ZenModeSettings.java
@@ -18,26 +18,19 @@
 
 import android.app.NotificationManager;
 import android.app.NotificationManager.Policy;
-import android.content.Context;
-import android.content.res.Resources;
 import android.os.Bundle;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceScreen;
-import android.util.SparseArray;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
 
 import com.android.internal.logging.MetricsLogger;
 import com.android.settings.R;
-import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.search.Indexable;
-import com.android.settings.search.SearchIndexableRaw;
+import com.android.settings.SettingsActivity;
 
-import java.util.ArrayList;
-import java.util.List;
-
-public class ZenModeSettings extends ZenModeSettingsBase implements Indexable {
+public class ZenModeSettings extends ZenModeSettingsBase {
     private static final String KEY_PRIORITY_SETTINGS = "priority_settings";
-    private static final String KEY_AUTOMATION_SETTINGS = "automation_settings";
-    private static final String KEY_VISUAL_INTERRUPTIONS_SETTINGS = "visual_interruptions_settings";
 
     private Preference mPrioritySettings;
 
@@ -49,9 +42,6 @@
         final PreferenceScreen root = getPreferenceScreen();
 
         mPrioritySettings = root.findPreference(KEY_PRIORITY_SETTINGS);
-        if (!isScheduleSupported(mContext)) {
-            removePreference(KEY_AUTOMATION_SETTINGS);
-        }
     }
 
     @Override
@@ -79,6 +69,23 @@
         updatePrioritySettingsSummary();
     }
 
+    @Override
+    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        inflater.inflate(R.menu.zen_settings_menu, menu);
+    }
+
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.zen_access:
+                ((SettingsActivity) getActivity()).startPreferencePanel(
+                            ZenAccessSettings.class.getCanonicalName(), null,
+                            R.string.manage_zen_access_title, null, this, 0);
+                return true;
+        }
+        return super.onOptionsItemSelected(item);
+    }
+
     private void updatePrioritySettingsSummary() {
         Policy policy = NotificationManager.from(mContext).getNotificationPolicy();
         String s = getResources().getString(R.string.zen_mode_alarms);
@@ -117,47 +124,8 @@
         return s;
     }
 
-    private static SparseArray<String> allKeyTitles() {
-        final SparseArray<String> rt = new SparseArray<String>();
-        rt.put(R.string.zen_mode_priority_settings_title, KEY_PRIORITY_SETTINGS);
-        rt.put(R.string.zen_mode_automation_settings_title, KEY_AUTOMATION_SETTINGS);
-        rt.put(R.string.zen_mode_visual_interruptions_settings_title,
-                KEY_VISUAL_INTERRUPTIONS_SETTINGS);
-        return rt;
-    }
-
     @Override
     protected int getHelpResource() {
         return R.string.help_uri_interruptions;
     }
-
-    // Enable indexing of searchable data
-    public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
-        new BaseSearchIndexProvider() {
-
-            @Override
-            public List<SearchIndexableRaw> getRawDataToIndex(Context context, boolean enabled) {
-                final SparseArray<String> keyTitles = allKeyTitles();
-                final int N = keyTitles.size();
-                final List<SearchIndexableRaw> result = new ArrayList<SearchIndexableRaw>(N);
-                final Resources res = context.getResources();
-                for (int i = 0; i < N; i++) {
-                    final SearchIndexableRaw data = new SearchIndexableRaw(context);
-                    data.key = keyTitles.valueAt(i);
-                    data.title = res.getString(keyTitles.keyAt(i));
-                    data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                    result.add(data);
-                }
-                return result;
-            }
-
-            @Override
-            public List<String> getNonIndexableKeys(Context context) {
-                final ArrayList<String> rt = new ArrayList<String>();
-                if (!isScheduleSupported(context)) {
-                    rt.add(KEY_AUTOMATION_SETTINGS);
-                }
-                return rt;
-            }
-        };
 }
diff --git a/src/com/android/settings/notification/ZenModeSettingsBase.java b/src/com/android/settings/notification/ZenModeSettingsBase.java
index 1a34062..4c8663f 100644
--- a/src/com/android/settings/notification/ZenModeSettingsBase.java
+++ b/src/com/android/settings/notification/ZenModeSettingsBase.java
@@ -122,11 +122,6 @@
         NotificationManager.from(mContext).setZenMode(zenMode, conditionId, TAG);
     }
 
-    protected static boolean isScheduleSupported(Context context) {
-        return NotificationManager.from(context)
-                .isSystemConditionProviderEnabled(ZenModeConfig.SCHEDULE_PATH);
-    }
-
     private List<AutomaticZenRule> getZenModeRules() {
         return NotificationManager.from(mContext).getAutomaticZenRules();
     }
diff --git a/src/com/android/settings/print/PrintServiceSettingsFragment.java b/src/com/android/settings/print/PrintServiceSettingsFragment.java
index dd41323..f174614 100644
--- a/src/com/android/settings/print/PrintServiceSettingsFragment.java
+++ b/src/com/android/settings/print/PrintServiceSettingsFragment.java
@@ -378,7 +378,7 @@
 
                 @Override
                 public boolean onQueryTextChange(String searchString) {
-                    ((Filterable) getListView().getAdapter()).getFilter().filter(searchString);
+                    mPrintersAdapter.getFilter().filter(searchString);
                     return true;
                 }
             });
diff --git a/src/com/android/settings/search/Ranking.java b/src/com/android/settings/search/Ranking.java
index 1f464df..4ac4fb8 100644
--- a/src/com/android/settings/search/Ranking.java
+++ b/src/com/android/settings/search/Ranking.java
@@ -42,8 +42,9 @@
 import com.android.settings.location.LocationSettings;
 import com.android.settings.location.ScanningSettings;
 import com.android.settings.net.DataUsageMeteredSettings;
-import com.android.settings.notification.NotificationSettings;
+import com.android.settings.notification.ConfigureNotificationSettings;
 import com.android.settings.notification.OtherSoundSettings;
+import com.android.settings.notification.SoundSettings;
 import com.android.settings.notification.ZenModeAutomationSettings;
 import com.android.settings.notification.ZenModePrioritySettings;
 import com.android.settings.notification.ZenModeSettings;
@@ -71,20 +72,21 @@
     public static final int RANK_DISPLAY = 7;
     public static final int RANK_WALLPAPER = 8;
     public static final int RANK_NOTIFICATIONS = 9;
-    public static final int RANK_APPS = 10;
-    public static final int RANK_STORAGE = 11;
-    public static final int RANK_POWER_USAGE = 12;
-    public static final int RANK_USERS = 13;
-    public static final int RANK_LOCATION = 14;
-    public static final int RANK_SECURITY = 15;
-    public static final int RANK_ACCOUNT = 16;
-    public static final int RANK_IME = 17;
-    public static final int RANK_PRIVACY = 18;
-    public static final int RANK_DATE_TIME = 19;
-    public static final int RANK_ACCESSIBILITY = 20;
-    public static final int RANK_PRINTING = 21;
-    public static final int RANK_DEVELOPEMENT = 22;
-    public static final int RANK_DEVICE_INFO = 23;
+    public static final int RANK_SOUND = 10;
+    public static final int RANK_APPS = 11;
+    public static final int RANK_STORAGE = 12;
+    public static final int RANK_POWER_USAGE = 13;
+    public static final int RANK_USERS = 14;
+    public static final int RANK_LOCATION = 15;
+    public static final int RANK_SECURITY = 16;
+    public static final int RANK_ACCOUNT = 17;
+    public static final int RANK_IME = 18;
+    public static final int RANK_PRIVACY = 19;
+    public static final int RANK_DATE_TIME = 20;
+    public static final int RANK_ACCESSIBILITY = 21;
+    public static final int RANK_PRINTING = 22;
+    public static final int RANK_DEVELOPEMENT = 23;
+    public static final int RANK_DEVICE_INFO = 24;
 
     public static final int RANK_UNDEFINED = -1;
     public static final int RANK_OTHERS = 1024;
@@ -124,8 +126,11 @@
         // Wallpapers
         sRankMap.put(WallpaperTypeSettings.class.getName(), RANK_WALLPAPER);
 
+        // Sound
+        sRankMap.put(SoundSettings.class.getName(), RANK_SOUND);
+
         // Notifications
-        sRankMap.put(NotificationSettings.class.getName(), RANK_NOTIFICATIONS);
+        sRankMap.put(ConfigureNotificationSettings.class.getName(), RANK_NOTIFICATIONS);
         sRankMap.put(OtherSoundSettings.class.getName(), RANK_NOTIFICATIONS);
         sRankMap.put(ZenModeSettings.class.getName(), RANK_NOTIFICATIONS);
         sRankMap.put(ZenModePrioritySettings.class.getName(), RANK_NOTIFICATIONS);
diff --git a/src/com/android/settings/search/SearchIndexableResources.java b/src/com/android/settings/search/SearchIndexableResources.java
index 7e669e0..376b2eb 100644
--- a/src/com/android/settings/search/SearchIndexableResources.java
+++ b/src/com/android/settings/search/SearchIndexableResources.java
@@ -44,8 +44,9 @@
 import com.android.settings.location.LocationSettings;
 import com.android.settings.location.ScanningSettings;
 import com.android.settings.net.DataUsageMeteredSettings;
-import com.android.settings.notification.NotificationSettings;
+import com.android.settings.notification.ConfigureNotificationSettings;
 import com.android.settings.notification.OtherSoundSettings;
+import com.android.settings.notification.SoundSettings;
 import com.android.settings.notification.ZenModePrioritySettings;
 import com.android.settings.notification.ZenModeSettings;
 import com.android.settings.notification.ZenModeVisualInterruptionSettings;
@@ -144,24 +145,31 @@
                         WallpaperTypeSettings.class.getName(),
                         R.drawable.ic_settings_display));
 
-        sResMap.put(NotificationSettings.class.getName(),
+        sResMap.put(ConfigureNotificationSettings.class.getName(),
                 new SearchIndexableResource(
-                        Ranking.getRankForClassName(NotificationSettings.class.getName()),
-                        NO_DATA_RES_ID,
-                        NotificationSettings.class.getName(),
+                        Ranking.getRankForClassName(ConfigureNotificationSettings.class.getName()),
+                        R.xml.configure_notification_settings,
+                        ConfigureNotificationSettings.class.getName(),
                         R.drawable.ic_settings_notifications));
 
+        sResMap.put(SoundSettings.class.getName(),
+                new SearchIndexableResource(
+                        Ranking.getRankForClassName(SoundSettings.class.getName()),
+                        R.xml.sound_settings,
+                        SoundSettings.class.getName(),
+                        R.drawable.ic_settings_sound));
+
         sResMap.put(OtherSoundSettings.class.getName(),
                 new SearchIndexableResource(
                         Ranking.getRankForClassName(OtherSoundSettings.class.getName()),
                         NO_DATA_RES_ID,
                         OtherSoundSettings.class.getName(),
-                        R.drawable.ic_settings_notifications));
+                        R.drawable.ic_settings_sound));
 
         sResMap.put(ZenModeSettings.class.getName(),
                 new SearchIndexableResource(
                         Ranking.getRankForClassName(ZenModeSettings.class.getName()),
-                        NO_DATA_RES_ID,
+                        R.xml.zen_mode_settings,
                         ZenModeSettings.class.getName(),
                         R.drawable.ic_settings_notifications));
 
diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java
index 59ab901..3e2ac87 100644
--- a/src/com/android/settings/users/UserSettings.java
+++ b/src/com/android/settings/users/UserSettings.java
@@ -61,6 +61,7 @@
 import com.android.settings.SettingsActivity;
 import com.android.settings.SettingsPreferenceFragment;
 import com.android.settings.Utils;
+import com.android.settings.dashboard.SummaryLoader;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.search.Indexable;
 import com.android.settings.search.SearchIndexableRaw;
@@ -1052,6 +1053,36 @@
         }
     }
 
+    private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+        private final Context mContext;
+        private final SummaryLoader mSummaryLoader;
+
+        public SummaryProvider(Context context, SummaryLoader summaryLoader) {
+            mContext = context;
+            mSummaryLoader = summaryLoader;
+        }
+
+        @Override
+        public void setListening(boolean listening) {
+            if (listening) {
+                UserInfo info = mContext.getSystemService(UserManager.class).getUserInfo(
+                        UserHandle.myUserId());
+                mSummaryLoader.setSummary(this, mContext.getString(R.string.user_summary,
+                        info.name));
+            }
+        }
+    }
+
+    public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+            = new SummaryLoader.SummaryProviderFactory() {
+        @Override
+        public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+                                                                   SummaryLoader summaryLoader) {
+            return new SummaryProvider(activity, summaryLoader);
+        }
+    };
+
     public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
             new BaseSearchIndexProvider() {
                 @Override
