diff --git a/Android.bp b/Android.bp
index 619a390..5bf5514 100644
--- a/Android.bp
+++ b/Android.bp
@@ -35,6 +35,15 @@
     ],
 }
 
+java_library {
+    name: "Settings-change-ids",
+    srcs: ["src/com/android/settings/ChangeIds.java"],
+    libs: [
+        "app-compat-annotations",
+    ],
+}
+
+
 // Build the Settings APK
 android_library {
     name: "Settings-core",
@@ -77,18 +86,18 @@
         "lottie",
         "WifiTrackerLib",
         "SettingsLibActivityEmbedding",
+        "Settings-change-ids",
     ],
 
     libs: [
         "telephony-common",
         "ims-common",
-        "app-compat-annotations",
     ],
 }
 
 platform_compat_config {
     name: "settings-platform-compat-config",
-    src: ":Settings-core",
+    src: ":Settings-change-ids",
     system_ext_specific: true,
 }
 
@@ -126,7 +135,7 @@
 // over all the sources together.
 filegroup {
     name: "Settings_srcs",
-    srcs: ["src/**/*.java"],
+    srcs: ["src/**/*.java", "src/**/*.kt"],
 }
 
 filegroup {
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index a8e0390..e280b83 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -2475,33 +2475,41 @@
 
         <!-- Exported for SystemUI to launch into -->
         <activity android:name=".deviceinfo.StorageWizardInit"
-                android:theme="@style/GlifV3Theme.Light"
+                android:theme="@style/GlifTheme.Light"
                 android:exported="true"
+                android:configChanges="keyboardHidden|orientation|screenSize"
                 android:permission="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
         <activity android:name=".deviceinfo.StorageWizardFormatProgress"
-                android:theme="@style/GlifV3Theme.Light"
-                android:exported="false" />
+                android:theme="@style/GlifTheme.Light"
+                android:exported="false"
+                android:configChanges="keyboardHidden|orientation|screenSize"/>
         <activity android:name=".deviceinfo.StorageWizardFormatSlow"
-                android:theme="@style/GlifV3Theme.Light"
-                android:exported="false" />
+                android:theme="@style/GlifTheme.Light"
+                android:exported="false"
+                android:configChanges="keyboardHidden|orientation|screenSize"/>
         <activity android:name=".deviceinfo.StorageWizardMigrateConfirm"
-                android:theme="@style/GlifV3Theme.Light"
-                android:exported="false" />
+                android:theme="@style/GlifTheme.Light"
+                android:exported="false"
+                android:configChanges="keyboardHidden|orientation|screenSize"/>
         <activity android:name=".deviceinfo.StorageWizardMigrateProgress"
-                android:theme="@style/GlifV3Theme.Light"
+                android:theme="@style/GlifTheme.Light"
                 android:exported="true"
+                android:configChanges="keyboardHidden|orientation|screenSize"
                 android:permission="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
         <activity android:name=".deviceinfo.StorageWizardReady"
-                android:theme="@style/GlifV3Theme.Light"
+                android:theme="@style/GlifTheme.Light"
                 android:exported="true"
+                android:configChanges="keyboardHidden|orientation|screenSize"
                 android:permission="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
 
         <activity android:name=".deviceinfo.StorageWizardMoveConfirm"
-                android:theme="@style/GlifV3Theme.Light"
-                android:exported="false" />
+                android:theme="@style/GlifTheme.Light"
+                android:exported="false"
+                android:configChanges="keyboardHidden|orientation|screenSize"/>
         <activity android:name=".deviceinfo.StorageWizardMoveProgress"
-                android:theme="@style/GlifV3Theme.Light"
+                android:theme="@style/GlifTheme.Light"
                 android:exported="true"
+                android:configChanges="keyboardHidden|orientation|screenSize"
                 android:permission="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
 
         <!-- Exported for SystemUI to trigger -->
@@ -2848,7 +2856,7 @@
                 <category android:name="com.android.settings.SHORTCUT" />
             </intent-filter>
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.fuelgauge.PowerUsageSummary" />
+                android:value="com.android.settings.fuelgauge.batteryusage.PowerUsageSummary" />
             <meta-data android:name="com.android.settings.HIGHLIGHT_MENU_KEY"
                        android:value="@string/menu_key_battery"/>
         </activity>
@@ -4054,6 +4062,20 @@
                        android:value="true"/>
         </service>
 
+        <service
+            android:name=".development.qstile.DevelopmentTiles$DesktopMode"
+            android:label="@string/desktop_mode"
+            android:icon="@drawable/tile_icon_desktop_mode"
+            android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
+            android:exported="true"
+            android:enabled="false">
+            <intent-filter>
+                <action android:name="android.service.quicksettings.action.QS_TILE" />
+            </intent-filter>
+            <meta-data android:name="android.service.quicksettings.TOGGLEABLE_TILE"
+                android:value="true"/>
+        </service>
+
         <activity
             android:name=".HelpTrampoline"
             android:exported="true"
diff --git a/color-check-baseline.xml b/color-check-baseline.xml
index edd2d59..b4915b9 100644
--- a/color-check-baseline.xml
+++ b/color-check-baseline.xml
@@ -4405,27 +4405,11 @@
         priority="4"
         summary="Using hardcoded color"
         explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.&#xA;This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
-        errorLine1="    &lt;string name=&quot;sync_plug&quot; msgid=&quot;7956982719077985381&quot;>&quot;‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‏‏‎‎‏‏‎‏‏‎‎‏‏‏‎‎‎‎‏‏‎‏‎‎‎‎‎‎‎‎‎‎‏‏‎‏‎‎‏‎‎‎‎‏‎‏‎‏‏‎‎‎‏‏‎‎‏‎‏‎‎‏‎‎‏‏‎&quot;&lt;font fgcolor=&quot;#ffffffff&quot;>&quot;‎‏‎‎‏‏‏‎Welcome to Google sync!‎‏‎‎‏‏‎&quot;&lt;/font>&quot;‎‏‎‎‏‏‏‎ ‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎A Google approach to syncing data to allow access to your contacts, appointments, and more from wherever you are.‎‏‎‎‏‎&quot;&lt;/string>"
-        errorLine2="                                                                                                                                                                         ~~~~~~~~~~~~~~~~~~~">
-        <location
-            file="res/values-en-rXC/strings.xml"
-            line="3152"
-            column="170"/>
-    </issue>
-
-    <issue
-        id="HardCodedColor"
-        severity="Error"
-        message="Avoid using hardcoded color"
-        category="Correctness"
-        priority="4"
-        summary="Using hardcoded color"
-        explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.&#xA;This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
         errorLine1="    &lt;string name=&quot;sync_plug&quot; msgid=&quot;7956982719077985381&quot;>&lt;font fgcolor=&quot;#ffffffff&quot;>&quot;Welcome to Google sync!&quot;&lt;/font>&quot; \nA Google approach to syncing data to allow access to your contacts, appointments and more from wherever you are.&quot;&lt;/string>"
         errorLine2="                                                               ~~~~~~~~~~~~~~~~~~~">
         <location
             file="res/values-en-rAU/strings.xml"
-            line="3157"
+            line="3173"
             column="64"/>
     </issue>
 
@@ -4441,7 +4425,7 @@
         errorLine2="                                                               ~~~~~~~~~~~~~~~~~~~">
         <location
             file="res/values-en-rCA/strings.xml"
-            line="3157"
+            line="3173"
             column="64"/>
     </issue>
 
@@ -4457,7 +4441,7 @@
         errorLine2="                                                               ~~~~~~~~~~~~~~~~~~~">
         <location
             file="res/values-en-rGB/strings.xml"
-            line="3157"
+            line="3173"
             column="64"/>
     </issue>
 
@@ -4473,7 +4457,7 @@
         errorLine2="                                                               ~~~~~~~~~~~~~~~~~~~">
         <location
             file="res/values-en-rIN/strings.xml"
-            line="3157"
+            line="3173"
             column="64"/>
     </issue>
 
@@ -4485,11 +4469,27 @@
         priority="4"
         summary="Using hardcoded color"
         explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.&#xA;This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
+        errorLine1="    &lt;string name=&quot;sync_plug&quot; msgid=&quot;7956982719077985381&quot;>&quot;‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‏‏‎‎‏‏‎‏‏‎‎‏‏‏‎‎‎‎‏‏‎‏‎‎‎‎‎‎‎‎‎‎‏‏‎‏‎‎‏‎‎‎‎‏‎‏‎‏‏‎‎‎‏‏‎‎‏‎‏‎‎‏‎‎‏‏‎&quot;&lt;font fgcolor=&quot;#ffffffff&quot;>&quot;‎‏‎‎‏‏‏‎Welcome to Google sync!‎‏‎‎‏‏‎&quot;&lt;/font>&quot;‎‏‎‎‏‏‏‎ ‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎A Google approach to syncing data to allow access to your contacts, appointments, and more from wherever you are.‎‏‎‎‏‎&quot;&lt;/string>"
+        errorLine2="                                                                                                                                                                         ~~~~~~~~~~~~~~~~~~~">
+        <location
+            file="res/values-en-rXC/strings.xml"
+            line="3173"
+            column="170"/>
+    </issue>
+
+    <issue
+        id="HardCodedColor"
+        severity="Error"
+        message="Avoid using hardcoded color"
+        category="Correctness"
+        priority="4"
+        summary="Using hardcoded color"
+        explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.&#xA;This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
         errorLine1="    &lt;string name=&quot;sync_plug&quot;>&lt;font fgcolor=&quot;#ffffffff&quot;>Welcome to Google sync!&lt;/font>"
         errorLine2="                                   ~~~~~~~~~~~~~~~~~~~">
         <location
             file="res/values/strings.xml"
-            line="7160"
+            line="7204"
             column="36"/>
     </issue>
 
@@ -4757,11 +4757,43 @@
         priority="4"
         summary="Using hardcoded color"
         explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.&#xA;This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
+        errorLine1="        &lt;item name=&quot;wifi_signal_color&quot;>@color/setup_wizard_wifi_color_dark&lt;/item>"
+        errorLine2="                                       ^">
+        <location
+            file="res/values/themes_suw.xml"
+            line="145"
+            column="40"/>
+    </issue>
+
+    <issue
+        id="HardCodedColor"
+        severity="Error"
+        message="Avoid using hardcoded color"
+        category="Correctness"
+        priority="4"
+        summary="Using hardcoded color"
+        explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.&#xA;This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
+        errorLine1="        &lt;item name=&quot;wifi_signal_color&quot;>@color/setup_wizard_wifi_color_light&lt;/item>"
+        errorLine2="                                       ^">
+        <location
+            file="res/values/themes_suw.xml"
+            line="164"
+            column="40"/>
+    </issue>
+
+    <issue
+        id="HardCodedColor"
+        severity="Error"
+        message="Avoid using hardcoded color"
+        category="Correctness"
+        priority="4"
+        summary="Using hardcoded color"
+        explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.&#xA;This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
         errorLine1="        &lt;item name=&quot;android:colorPrimary&quot;>@color/material_grey_100&lt;/item>"
         errorLine2="                                          ^">
         <location
             file="res/values/themes_suw.xml"
-            line="196"
+            line="233"
             column="43"/>
     </issue>
 
@@ -4777,7 +4809,7 @@
         errorLine2="                                         ^">
         <location
             file="res/values/themes_suw.xml"
-            line="197"
+            line="234"
             column="42"/>
     </issue>
 
@@ -4793,7 +4825,7 @@
         errorLine2="                                            ^">
         <location
             file="res/values/themes_suw.xml"
-            line="198"
+            line="235"
             column="45"/>
     </issue>
 
diff --git a/res/drawable/button_ripple_radius.xml b/res/drawable/button_ripple_radius.xml
deleted file mode 100644
index 511520c..0000000
--- a/res/drawable/button_ripple_radius.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  Copyright (C) 2019 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.
-  -->
-<ripple
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:color="?android:attr/colorControlHighlight">
-    <item android:id="@android:id/mask">
-        <shape android:shape="rectangle">
-            <solid android:color="@android:color/white" />
-            <corners android:radius="@dimen/rect_button_radius" />
-        </shape>
-    </item>
-</ripple>
\ No newline at end of file
diff --git a/res/drawable/ic_guest_exit.xml b/res/drawable/ic_guest_exit.xml
new file mode 100644
index 0000000..2f7ca09
--- /dev/null
+++ b/res/drawable/ic_guest_exit.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2022 The Android Open Source Project
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24"
+    android:tint="?android:attr/colorControlNormal">
+  <path
+      android:fillColor="#FF000000"
+      android:pathData="M3,13v-2h8.65L9.1,8.45 10.5,7l5,5 -5,5 -1.4,-1.45L11.65,13zM5,15v4h14L19,5L5,5v4L3,9L3,5q0,-0.825 0.587,-1.413Q4.175,3 5,3h14q0.825,0 1.413,0.587Q21,4.175 21,5v14q0,0.825 -0.587,1.413Q19.825,21 19,21L5,21q-0.825,0 -1.413,-0.587Q3,19.825 3,19v-4z"/>
+</vector>
diff --git a/res/drawable/ic_guest_reset.xml b/res/drawable/ic_guest_reset.xml
new file mode 100644
index 0000000..243a322
--- /dev/null
+++ b/res/drawable/ic_guest_reset.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2022 The Android Open Source Project
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24"
+    android:tint="?android:attr/colorControlNormal">
+  <path
+      android:fillColor="#FF000000"
+      android:pathData="M11,20.95q-3.025,-0.375 -5.013,-2.637Q4,16.05 4,13q0,-1.65 0.65,-3.163Q5.3,8.325 6.5,7.2l1.425,1.425q-0.95,0.85 -1.438,1.975Q6,11.725 6,13q0,2.2 1.4,3.887 1.4,1.688 3.6,2.063zM13,20.95v-2q2.175,-0.4 3.587,-2.075Q18,15.2 18,13q0,-2.5 -1.75,-4.25T12,7h-0.075l1.1,1.1 -1.4,1.4 -3.5,-3.5 3.5,-3.5 1.4,1.4 -1.1,1.1L12,5q3.35,0 5.675,2.325Q20,9.65 20,13q0,3.025 -1.988,5.288Q16.026,20.55 13,20.95z"/>
+</vector>
diff --git a/res/drawable/ic_storage_wizard_external.xml b/res/drawable/ic_storage_wizard_external.xml
index 99e2698..c6fefa1 100644
--- a/res/drawable/ic_storage_wizard_external.xml
+++ b/res/drawable/ic_storage_wizard_external.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
 <!--
     Copyright (C) 2018 The Android Open Source Project
 
@@ -14,80 +15,101 @@
     limitations under the License.
 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
-        android:width="144dp"
-        android:height="144dp"
-        android:viewportWidth="144.0"
-        android:viewportHeight="144.0">
+    android:width="360dp"
+    android:height="262dp"
+    android:viewportWidth="360"
+    android:viewportHeight="262">
+
     <path
-        android:pathData="M64,64m-64,0a64,64 0,1 1,128 0a64,64 0,1 1,-128 0"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#FFFFFF"
-        android:strokeWidth="1"/>
+        android:fillColor="@android:color/transparent"
+        android:pathData="M335.709 262H24.2913C10.9223 262 0 250.821 0 237.11V24.89C0 11.1787 10.9223 0 24.2913 0H335.796C349.078 0 360 11.1787 360 24.89V237.285C360 250.821 349.078 262 335.709 262Z" />
     <path
-        android:pathData="M18.98,95C17.88,95 17,94.12 17,93.03L17,34.97C17,33.88 17.88,33 18.98,33L47.02,33C48.12,33 49,33.88 49,34.97L49,93.03C49,94.12 48.12,95 47.02,95L18.98,95Z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#FFFFFF"
-        android:strokeWidth="1"/>
+        android:fillColor="@android:color/transparent"
+        android:pathData="M153.786 66.0239H319.806C322.777 66.0239 325.223 68.4693 325.311 71.4386V183.575H148.282V71.4386C148.282 68.4693 150.728 66.0239 153.786 66.0239Z"
+        android:strokeWidth="5"
+        android:strokeColor="#E8EAED"/>
     <path
-        android:pathData="M18.98,96C17.33,96 16,94.68 16,93.03L16,34.97C16,33.32 17.33,32 18.98,32L47.02,32C48.67,32 50,33.32 50,34.97L50,93.03C50,94.68 48.67,96 47.02,96L18.98,96Z"
-        android:fillType="nonZero"
-        android:strokeColor="#DADCE0"
-        android:fillColor="#00000000"
-        android:strokeWidth="2"/>
+        android:fillColor="#BDC1C6"
+        android:pathData="M182.272 180.605H171.961V183.4H182.272V180.605Z" />
     <path
-        android:pathData="M18.98,94L47.02,94C47.57,94 48,93.57 48,93.03L48,34.97C48,34.43 47.57,34 47.02,34L18.98,34C18.43,34 18,34.43 18,34.97L18,93.03C18,93.57 18.43,94 18.98,94Z"
-        android:fillType="nonZero"
-        android:strokeColor="#F1F3F4"
-        android:fillColor="#00000000"
-        android:strokeWidth="2"/>
+        android:fillColor="#BDC1C6"
+        android:pathData="M195.204 180.605H184.893V183.4H195.204V180.605Z" />
     <path
-        android:pathData="M73,87L123.02,87L118.03,97L73,97C72.45,97 72,96.55 72,96L72,88C72,87.45 72.45,87 73,87Z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#F1F3F4"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M74,89L74,95L119.11,95L121.99,89L74,89ZM73,87L122.59,87C122.26,87.73 120.83,90.87 118.29,96.42C118.13,96.77 117.77,97 117.38,97L73,97C72.45,97 72,96.55 72,96L72,88C72,87.45 72.45,87 73,87Z"
-        android:strokeColor="#00000000"
-        android:fillType="nonZero"
         android:fillColor="#DADCE0"
-        android:strokeWidth="1"/>
+        android:pathData="M78.8155 104.538V100.521C78.8155 99.9967 78.3786 99.5601 77.8544 99.5601V78.6001C77.8544 75.8054 75.5825 73.6221 72.8738 73.6221H26.8252C24.0291 73.6221 21.8447 75.8054 21.8447 78.6001V174.492C21.8447 177.287 24.1165 179.47 26.8252 179.47H72.7864C75.5825 179.47 77.767 177.199 77.767 174.492V125.585C78.2913 125.585 78.7282 125.149 78.7282 124.625V114.581C78.7282 114.057 78.2913 113.621 77.767 113.621V105.586C78.3786 105.499 78.8155 105.062 78.8155 104.538ZM76.8058 174.492C76.8058 176.675 74.9709 178.509 72.7864 178.509H26.8252C24.6408 178.509 22.8058 176.675 22.8058 174.492V78.6001C22.8058 76.4167 24.5534 74.5827 26.8252 74.5827H72.7864C74.9709 74.5827 76.8058 76.3294 76.8058 78.6001V174.492Z" />
     <path
-        android:pathData="M89,27L115.06,27C116.17,27 127.49,47.66 127.49,60.45C127.49,75.69 123.39,87.18 122.57,89L87,89L87,29C87,27.9 87.9,27 89,27Z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#F1F3F4"
-        android:strokeWidth="1"/>
+        android:fillColor="#81C995"
+        android:pathData="M35.2136 102.18H47.534V89.8658H35.2136V102.18ZM35.2136 103.926C34.2524 103.926 33.466 103.14 33.466 102.18V89.8658C33.466 88.9051 34.2524 88.1191 35.2136 88.1191H47.534C47.9709 88.1191 48.4077 88.2938 48.7573 88.6431C49.1068 88.9925 49.2815 89.4291 49.2815 89.8658V102.18C49.2815 103.14 48.4951 103.926 47.534 103.926H35.2136ZM36.0874 100.433H46.5728L43.2524 96.0665L40.6311 99.5598L38.6213 96.9398L36.0874 100.433ZM35.2136 89.8658V102.18V89.8658Z" />
     <path
-        android:pathData="M89,87L122.96,87C126.83,74.93 128.26,64.56 127.26,55.89C126.26,47.22 122.76,38.26 116.78,29L89,29L89,87ZM89,27L115.53,27C116.63,27 128.29,48.2 127.36,60.95C125.65,84.63 123.1,89 122,89L87,89L87,29C87,27.9 87.9,27 89,27Z"
-        android:strokeColor="#00000000"
-        android:fillType="nonZero"
+        android:fillColor="#F28B82"
+        android:pathData="M44.5631 111.787H42.0291L43.6893 115.105H41.2427L39.5825 111.787H37.9223L39.5825 115.105H37.1359L35.4757 111.787H33.8155L35.4757 115.105H33.0291L31.3689 111.787C30.4951 111.787 29.7087 112.485 29.7087 113.359V123.227C29.7087 124.101 30.4078 124.887 31.3689 124.887H44.5631C45.4369 124.887 46.2233 124.101 46.2233 123.227V113.359C46.2233 112.485 45.4369 111.787 44.5631 111.787Z" />
+    <path
+        android:fillColor="#FDD663"
+        android:pathData="M69.9903 122.965H58.9806V121.568C58.9806 121.044 58.5437 120.607 58.0194 120.607H54.7864C54.2622 120.607 53.8253 121.044 53.8253 121.568V134.319C53.8253 135.367 54.699 136.24 55.7476 136.24H69.0291C70.0777 136.24 70.9515 135.367 70.9515 134.319V123.839C70.9515 123.315 70.5146 122.878 69.9903 122.965Z" />
+    <path
+        android:fillColor="#8AB4F8"
+        android:pathData="M69.2912 98.8613H56.8835V107.769H55.398C53.9126 107.769 52.7767 108.992 52.7767 110.389C52.7767 111.874 54 113.009 55.398 113.009H56.0097C57.4077 113.009 58.4563 111.961 58.5437 110.564V101.481H65.8835V107.769H64.398C62.9126 107.769 61.7767 108.992 61.7767 110.389C61.7767 111.874 63 113.009 64.398 113.009H65.0097C66.4077 113.009 67.4563 111.961 67.5437 110.564V101.219C68.5922 100.87 69.2912 99.9093 69.2912 98.8613Z" />
+    <path
+        android:fillColor="#81C995"
+        android:pathData="M65.0097 144.449C64.7476 144.187 64.4854 144.1 64.1359 144.1H55.2233C54.5242 144.1 53.9126 144.711 53.9126 145.41V154.318C53.9126 154.667 54.0874 154.929 54.2621 155.191C54.5242 155.453 54.7864 155.541 55.1359 155.541H62.2136L65.4466 152.309V145.323C65.4466 145.061 65.2718 144.711 65.0097 144.449ZM64.1359 151.785H62.8252C62.1262 151.785 61.5145 152.397 61.5145 153.095V154.405H55.1359V145.497H64.0485L64.1359 151.785Z" />
+    <path
+        android:fillColor="#F28B82"
+        android:pathData="M55.5728 162.964L48.233 158.772C47.7961 158.51 47.2718 158.685 47.0097 159.034C47.0097 159.034 47.0097 159.121 46.9223 159.121C46.7476 159.209 46.7476 159.383 46.7476 159.645V167.942C46.7476 168.466 47.0971 168.815 47.6213 168.815C47.7961 168.815 47.9709 168.815 48.1456 168.728L55.3107 164.536C55.7476 164.361 55.9223 163.837 55.7476 163.401C55.7476 163.401 55.7476 163.313 55.6602 163.313C55.8349 163.139 55.7476 163.051 55.5728 162.964Z" />
+    <path
+        android:fillColor="#8AB4F8"
+        android:pathData="M42.3787 133.445H35.9126C35.0389 133.445 34.3398 134.144 34.3398 135.017V137.725H32.3301C31.4563 137.725 30.7573 138.423 30.7573 139.297L30.6699 151.698C30.6699 152.135 30.8447 152.484 31.1068 152.833C31.369 153.095 31.8058 153.27 32.1554 153.27L41.4175 153.357C41.8544 153.357 42.2039 153.183 42.5534 152.921C42.8156 152.659 42.9903 152.222 42.9903 151.873V149.689H45.4369C46.3107 149.689 47.0971 148.991 47.0971 148.117C47.0971 148.117 47.0971 148.117 47.0971 148.03V138.336L42.3787 133.445ZM41.5049 151.698L32.2427 151.611L32.3301 139.209H34.3398V147.855C34.3398 148.729 35.0389 149.427 35.9126 149.427H41.5049V151.698ZM43.9515 146.371H37.5728V144.711H44.0389L43.9515 146.371ZM43.9515 143.139H37.5728V141.48H44.0389L43.9515 143.139ZM45.5243 139.035H41.5049V135.017L45.5243 139.035Z" />
+    <path
+        android:fillColor="#BDC1C6"
+        android:pathData="M276.728 180.605H197.738V183.4H276.728V180.605Z" />
+    <path
+        android:fillColor="@android:color/transparent"
+        android:pathData="M317.184 74.3208H156.32V171.697H317.184V74.3208Z" />
+    <path
+        android:fillColor="#BDC1C6"
+        android:pathData="M289.136 180.605H278.825V183.4H289.136V180.605Z" />
+    <path
         android:fillColor="#DADCE0"
-        android:strokeWidth="1"/>
+        android:pathData="M134.65 182.09H338.854V184.186C338.854 185.758 337.631 186.981 336.058 186.981H137.447C135.874 186.981 134.65 185.758 134.65 184.186V182.09Z" />
     <path
-        android:pathData="M94,33L119.52,33C119.9,33 120.26,33.23 120.42,33.58C125.14,43.7 127.67,51.84 128,58C128.33,64.11 127.47,72.18 125.4,82.2L125.4,82.2C125.3,82.67 124.9,83 124.42,83L94,83C93.45,83 93,82.55 93,82L93,34C93,33.45 93.45,33 94,33C94,33 94,33 94,33Z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#FFFFFF"
-        android:strokeWidth="1"/>
+        android:fillColor="#81C995"
+        android:pathData="M177.204 129.69H193.456V113.446H177.204V129.69ZM177.204 132.048C175.893 132.048 174.845 131 174.845 129.69V113.446C174.845 112.136 175.893 111.088 177.204 111.088H193.456C194.767 111.088 195.816 112.136 195.816 113.446V129.69C195.816 131 194.767 132.048 193.456 132.048H177.204ZM178.34 127.332H192.32L187.951 121.481L184.456 126.109L181.835 122.616L178.34 127.332ZM177.204 113.359V129.69V113.359Z" />
     <path
-        android:pathData="M73.63,41L68.13,41L64.01,45.2L64,53.6C64,54.37 64.62,55 65.38,55L73.63,55C74.38,55 75,54.37 75,53.6L75,42.4C75,41.63 74.38,41 73.63,41ZM69.5,45.2L68.13,45.2L68.13,42.4L69.5,42.4L69.5,45.2ZM71.56,45.2L70.19,45.2L70.19,42.4L71.56,42.4L71.56,45.2ZM73.63,45.2L72.25,45.2L72.25,42.4L73.63,42.4L73.63,45.2Z"
-        android:strokeColor="#00000000"
-        android:fillType="nonZero"
+        android:fillColor="#F28B82"
+        android:pathData="M266.68 129.865H262.485L265.282 135.454H261.087L258.291 129.865H255.495L258.291 135.454H254.097L251.301 129.865H248.505L251.301 135.454H247.107L244.311 129.865C242.738 129.865 241.515 131.087 241.515 132.659V149.34C241.515 150.912 242.738 152.135 244.311 152.135H266.68C268.252 152.135 269.476 150.912 269.476 149.34V132.659C269.476 131.087 268.252 129.865 266.68 129.865Z" />
+    <path
+        android:fillColor="#FDD663"
+        android:pathData="M257.155 98.9488H240.204V96.8528C240.204 96.0668 239.592 95.3682 238.718 95.3682H233.825C233.039 95.3682 232.34 95.9795 232.34 96.8528V116.416C232.34 118.075 233.65 119.385 235.223 119.385H255.67C257.33 119.385 258.641 118.075 258.641 116.503V100.434C258.553 99.5602 257.854 98.9488 257.155 98.9488Z" />
+    <path
+        android:fillColor="#8AB4F8"
+        android:pathData="M295.34 97.4639H274.631V112.311H272.184C269.738 112.223 267.641 114.057 267.553 116.503C267.466 118.948 269.301 121.044 271.748 121.131C271.835 121.131 272.01 121.131 272.184 121.131H273.146C275.417 121.131 277.34 119.385 277.427 117.114V102.005H289.748V112.398H287.301C284.854 112.398 282.845 114.407 282.845 116.852C282.845 119.297 284.854 121.306 287.301 121.306H288.262C290.534 121.306 292.456 119.559 292.544 117.289V101.743C294.204 100.957 295.252 99.2979 295.34 97.4639Z" />
+    <path
+        android:fillColor="#81C995"
+        android:pathData="M293.854 146.196H283.282C282.233 146.196 281.359 145.322 281.359 144.274V130.825C281.359 129.777 282.233 128.904 283.282 128.904H296.738C297.786 128.904 298.66 129.777 298.66 130.825V141.392L293.854 146.196Z" />
+    <path
+        android:fillColor="#81C995"
+        android:pathData="M292.893 144.275V142.353C292.893 141.305 293.767 140.432 294.816 140.432H296.738V130.825H283.282V144.275H292.893Z" />
+    <path
+        android:fillColor="#81C995"
+        android:pathData="M292.893 144.275L296.738 140.432H294.816C293.767 140.432 292.893 141.305 292.893 142.353V144.275Z" />
+    <path
+        android:fillColor="@android:color/transparent"
+        android:pathData="M292.893 144.275H283.282V130.825H296.738V140.432H294.816C293.767 140.432 292.893 141.305 292.893 142.353V144.275Z" />
+    <path
+        android:fillColor="#F28B82"
+        android:pathData="M219.146 103.49L206.651 96.4158C205.951 95.9791 205.078 96.1538 204.641 96.8525C204.641 96.9398 204.553 96.9398 204.553 97.0271C204.379 97.2018 204.379 97.4638 204.379 97.9005V112.048C204.379 112.834 204.99 113.533 205.777 113.533H205.864C206.214 113.533 206.476 113.533 206.738 113.358L218.971 106.284C219.757 105.935 220.019 105.062 219.67 104.276C219.67 104.188 219.583 104.188 219.583 104.101C219.583 103.926 219.408 103.664 219.146 103.49Z" />
+    <path
+        android:fillColor="#8AB4F8"
+        android:pathData="M222.116 123.053H211.893C210.495 123.053 209.359 124.188 209.359 125.585V129.865H206.126C204.728 129.865 203.68 130.913 203.68 132.31L203.592 151.96C203.592 152.659 203.854 153.27 204.291 153.707C204.728 154.143 205.34 154.405 206.039 154.405L220.806 154.493C221.505 154.493 222.116 154.231 222.553 153.794C222.99 153.357 223.252 152.746 223.252 152.047V148.554H227.184C228.583 148.554 229.806 147.419 229.806 146.021C229.806 146.021 229.806 146.021 229.806 145.934V130.563L222.116 123.053ZM220.718 152.135L205.951 152.047L206.039 132.397H209.272V146.109C209.272 146.807 209.534 147.419 210.058 147.943C210.495 148.467 211.194 148.729 211.893 148.729H220.806L220.718 152.135ZM224.65 143.576H214.427V141.043H224.65V143.576ZM224.65 138.423H214.427V135.891H224.65V138.423ZM227.184 132.048H220.806V125.673L227.184 132.048Z" />
+    <path
         android:fillColor="?android:attr/colorAccent"
-        android:strokeWidth="1"/>
+        android:pathData="M107.126 114.669H109.66V112.136H107.126V114.669ZM117.087 114.669H119.621V112.136H117.087V114.669ZM107.126 109.691H109.66V104.713H107.126V109.691ZM112.107 114.669H114.641V109.691H112.107V114.669ZM112.107 107.158H114.641V104.626H112.107V107.158ZM117.087 109.691H119.621V104.713H117.087V109.691ZM105.903 118.424C105.204 118.424 104.592 118.162 104.155 117.726C103.718 117.289 103.456 116.678 103.456 115.979V101.045L110.971 93.5342H120.932C121.631 93.5342 122.243 93.7962 122.68 94.2328C123.204 94.7568 123.379 95.2808 123.379 95.9795V115.892C123.379 116.59 123.116 117.202 122.68 117.638C122.155 118.162 121.631 118.337 120.932 118.337L105.903 118.424ZM105.903 115.892H120.845V95.9795H111.932L105.903 102.006V115.892ZM105.903 115.892V102.006L111.932 95.9795H120.845V115.892H105.903Z" />
     <path
-        android:pathData="M63.99,69L60,73L63.99,77L63.99,74L71,74L71,72L63.99,72L63.99,69ZM78,67L74.01,63L74.01,66L67,66L67,68L74.01,68L74.01,71L78,67Z"
-        android:strokeColor="#00000000"
-        android:fillType="nonZero"
         android:fillColor="?android:attr/colorAccent"
-        android:strokeWidth="1"/>
+        android:pathData="M96.7281 150.388L101.447 145.672L98.8252 143.052L89.7379 152.222L98.8252 161.305L101.447 158.772L96.7281 154.056H137.01V150.388H96.7281Z" />
     <path
-        android:pathData="M64,126.08C98.29,126.08 126.08,98.29 126.08,64C126.08,29.71 98.29,1.92 64,1.92C29.71,1.92 1.92,29.71 1.92,64C1.92,98.29 29.71,126.08 64,126.08ZM64,128C28.65,128 0,99.35 0,64C0,28.65 28.65,0 64,0C99.35,0 128,28.65 128,64C128,99.35 99.35,128 64,128Z"
-        android:strokeColor="#00000000"
-        android:fillType="nonZero"
-        android:fillColor="#DADCE0"
-        android:strokeWidth="1"/>
-</vector>
+        android:fillColor="?android:attr/colorAccent"
+        android:pathData="M130.019 137.026L125.301 141.742L127.922 144.362L137.01 135.192L127.922 126.109L125.301 128.642L130.019 133.358H89.7379V137.026H130.019Z" />
+    <path
+        android:fillColor="#BDC1C6"
+        android:pathData="M237.67 71.1767C238.201 71.1767 238.631 70.7466 238.631 70.216C238.631 69.6855 238.201 69.2554 237.67 69.2554C237.139 69.2554 236.709 69.6855 236.709 70.216C236.709 70.7466 237.139 71.1767 237.67 71.1767Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_storage_wizard_internal.xml b/res/drawable/ic_storage_wizard_internal.xml
index 41768f7..70bafa9 100644
--- a/res/drawable/ic_storage_wizard_internal.xml
+++ b/res/drawable/ic_storage_wizard_internal.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
 <!--
     Copyright (C) 2018 The Android Open Source Project
 
@@ -14,62 +15,48 @@
     limitations under the License.
 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
-        android:width="144dp"
-        android:height="144dp"
-        android:viewportWidth="144.0"
-        android:viewportHeight="144.0">
+    android:width="360dp"
+    android:height="262dp"
+    android:viewportWidth="360"
+    android:viewportHeight="262">
+
     <path
-        android:pathData="M28,4h72v140h-72z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#FFFFFF"
-        android:strokeWidth="1"/>
+        android:fillColor="@android:color/transparent"
+        android:pathData="M335.691 262H24.3087C10.9485 262 0 250.795 0 237.127V24.9075C0 11.2049 10.9485 0 24.3087 0H335.787C349.051 0 360 11.2049 360 24.8725V237.224C360 250.795 349.051 262 335.691 262Z" />
     <path
-        android:pathData="M65,62L68,62L68,64L65,64L65,67L63,67L63,64L60,64L60,62L63,62L63,59L65,59L65,62Z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
+        android:fillColor="#DADCE0"
+        android:pathData="M239.199 85.3246V77.0192C239.199 76.4695 238.981 75.9421 238.593 75.5526C238.205 75.163 237.678 74.943 237.128 74.9407V31.3439C237.126 28.5906 236.031 25.9508 234.083 24.0039C232.135 22.057 229.494 20.9623 226.739 20.96H131.182C128.428 20.9646 125.789 22.0604 123.843 24.007C121.897 25.9536 120.803 28.5921 120.801 31.3439V230.656C120.803 233.408 121.897 236.046 123.843 237.993C125.789 239.94 128.428 241.035 131.182 241.04H226.739C229.494 241.038 232.135 239.943 234.083 237.996C236.031 236.049 237.126 233.409 237.128 230.656V128.921C237.677 128.921 238.204 128.703 238.592 128.315C238.981 127.927 239.199 127.401 239.199 126.852V106.084C239.199 105.534 238.981 105.007 238.593 104.617C238.205 104.228 237.678 104.008 237.128 104.005V87.4119C237.401 87.4108 237.671 87.3559 237.923 87.2503C238.175 87.1448 238.404 86.9908 238.596 86.7969C238.788 86.6031 238.941 86.3733 239.044 86.1207C239.148 85.8681 239.2 85.5976 239.199 85.3246ZM235.049 230.656C235.046 232.858 234.17 234.969 232.612 236.526C231.054 238.083 228.942 238.959 226.739 238.961H131.182C128.978 238.959 126.866 238.083 125.308 236.526C123.75 234.969 122.874 232.858 122.872 230.656V31.3439C122.874 29.1419 123.75 27.0307 125.308 25.4736C126.866 23.9166 128.978 23.0408 131.182 23.0385H226.739C228.942 23.0408 231.054 23.9166 232.612 25.4736C234.17 27.0307 235.046 29.1419 235.049 31.3439V230.656Z" />
+    <path
+        android:fillColor="#81C995"
+        android:pathData="M209.91 52.243H226.424V35.737H209.91V52.243ZM209.91 54.601C209.599 54.6045 209.29 54.5443 209.003 54.4242C208.716 54.304 208.457 54.1264 208.241 53.9023C208.018 53.6879 207.842 53.4299 207.723 53.1444C207.604 52.8589 207.545 52.5521 207.55 52.243V35.737C207.55 35.1116 207.799 34.5118 208.241 34.0696C208.684 33.6274 209.284 33.379 209.91 33.379H226.424C226.729 33.3764 227.03 33.4355 227.311 33.5526C227.592 33.6696 227.846 33.8423 228.058 34.0602C228.282 34.2758 228.46 34.5351 228.58 34.822C228.701 35.1088 228.761 35.4173 228.757 35.7283V52.2343C228.75 52.8575 228.5 53.4533 228.059 53.8941C227.618 54.3348 227.022 54.5854 226.398 54.5923L209.91 54.601ZM211.089 49.885H225.245L220.815 43.99L217.319 48.706L214.698 45.169L211.089 49.885ZM209.91 35.737V52.243V35.737Z" />
+    <path
+        android:fillColor="#8AB4F8"
+        android:pathData="M176.208 36.1475H148.247V56.2341H144.97C144.185 56.2341 143.408 56.3886 142.683 56.6888C141.958 56.989 141.299 57.429 140.744 57.9837C140.189 58.5384 139.749 59.197 139.448 59.9217C139.148 60.6465 138.993 61.4233 138.993 62.2077C138.993 62.9922 139.148 63.769 139.448 64.4937C139.749 65.2185 140.189 65.877 140.744 66.4317C141.299 66.9864 141.958 67.4264 142.683 67.7266C143.408 68.0268 144.185 68.1813 144.97 68.1813H146.316C147.789 68.1973 149.212 67.6454 150.289 66.6404C151.366 65.6354 152.015 64.2544 152.1 62.7841V42.3132H168.702V56.3826H165.425C163.84 56.3826 162.32 57.012 161.199 58.1322C160.078 59.2525 159.449 60.7719 159.449 62.3562C159.449 63.9405 160.078 65.4599 161.199 66.5802C162.32 67.7004 163.84 68.3298 165.425 68.3298H166.771C168.244 68.3457 169.667 67.7939 170.744 66.7889C171.822 65.7839 172.47 64.4029 172.555 62.9326V41.9202C173.622 41.3688 174.523 40.5434 175.165 39.5288C175.807 38.5143 176.167 37.3472 176.208 36.1475Z" />
+    <path
+        android:fillColor="#F28B82"
+        android:pathData="M160.96 79.0195H156.958L159.623 84.3556H155.621L152.913 79.0195H150.291L152.913 84.3556H148.911L146.237 79.0195H143.572L146.237 84.3556H142.235L139.561 79.0195C138.866 79.0195 138.199 79.2956 137.708 79.7869C137.216 80.2783 136.94 80.9447 136.94 81.6395V97.6565C136.94 98.3562 137.214 99.0282 137.704 99.5278C138.194 100.028 138.861 100.315 139.561 100.329H160.925C161.634 100.327 162.312 100.044 162.813 99.5436C163.314 99.0429 163.597 98.3645 163.599 97.6565V81.6832C163.597 80.982 163.319 80.3097 162.825 79.8114C162.332 79.3131 161.662 79.0287 160.96 79.0195Z" />
+    <path
+        android:fillColor="#8AB4F8"
+        android:pathData="M220.544 165.934H208.957C208.19 165.934 207.455 166.238 206.912 166.78C206.37 167.322 206.065 168.058 206.065 168.824V173.706H202.413C202.047 173.701 201.684 173.77 201.346 173.91C201.008 174.05 200.702 174.257 200.447 174.518C200.17 174.766 199.949 175.069 199.799 175.407C199.648 175.746 199.571 176.113 199.573 176.483L199.468 198.78C199.466 199.146 199.535 199.508 199.673 199.847C199.811 200.186 200.015 200.494 200.272 200.755C200.529 201.015 200.835 201.222 201.172 201.364C201.51 201.506 201.872 201.581 202.238 201.583L218.971 201.662C219.71 201.662 220.42 201.37 220.945 200.85C221.47 200.33 221.769 199.623 221.776 198.884V194.928H226.311C227.079 194.926 227.816 194.62 228.359 194.076C228.903 193.533 229.209 192.797 229.212 192.029V174.58L220.544 165.934ZM219.032 198.858L202.299 198.78L202.404 176.475H206.065V191.994C206.064 192.374 206.138 192.751 206.283 193.103C206.428 193.455 206.64 193.774 206.909 194.044C207.178 194.313 207.497 194.527 207.848 194.672C208.2 194.818 208.577 194.893 208.957 194.893H219.05L219.032 198.858ZM223.401 189.112H211.858V186.221H223.436L223.401 189.112ZM223.401 183.322H211.858V180.422H223.436L223.401 183.322ZM226.293 176.073H219.058V168.824L226.311 176.073H226.293Z" />
+    <path
+        android:fillColor="#CEEAD6"
+        android:pathData="M149.068 201.827C158.908 201.827 166.884 193.855 166.884 184.02C166.884 174.185 158.908 166.213 149.068 166.213C139.228 166.213 131.251 174.185 131.251 184.02C131.251 193.855 139.228 201.827 149.068 201.827Z" />
+    <path
+        android:fillColor="#5BB974"
+        android:pathData="M141.125 191.479C140.725 191.499 140.326 191.423 139.961 191.257C139.596 191.092 139.276 190.841 139.028 190.527C138.778 190.205 138.598 189.834 138.502 189.438C138.406 189.042 138.394 188.63 138.469 188.23L139.587 180.239C139.726 179.221 140.233 178.289 141.012 177.619C141.775 176.936 142.766 176.565 143.79 176.58H154.346C155.37 176.565 156.361 176.936 157.124 177.619C157.903 178.289 158.41 179.221 158.549 180.239L159.667 188.23C159.742 188.63 159.73 189.042 159.634 189.438C159.537 189.834 159.358 190.205 159.108 190.527C158.859 190.842 158.538 191.094 158.171 191.26C157.805 191.425 157.404 191.5 157.002 191.479C156.648 191.48 156.298 191.412 155.971 191.278C155.641 191.14 155.343 190.935 155.097 190.675L152.703 188.282H145.45L143.056 190.675C142.809 190.933 142.512 191.139 142.183 191.278C141.847 191.415 141.488 191.483 141.125 191.479ZM141.553 189.182L144.594 186.151H153.542L156.583 189.182C156.71 189.264 156.853 189.321 157.002 189.348C157.088 189.352 157.175 189.339 157.256 189.309C157.337 189.279 157.411 189.233 157.474 189.173C157.531 189.112 157.573 189.038 157.594 188.957C157.616 188.876 157.616 188.791 157.596 188.71L156.408 180.51C156.34 180.008 156.093 179.548 155.713 179.214C155.332 178.88 154.843 178.695 154.337 178.693H143.79C143.284 178.695 142.795 178.88 142.414 179.214C142.034 179.548 141.787 180.008 141.719 180.51L140.54 188.71C140.52 188.791 140.52 188.876 140.542 188.957C140.563 189.038 140.604 189.112 140.662 189.173C140.723 189.232 140.796 189.278 140.876 189.308C140.955 189.338 141.04 189.351 141.125 189.348C141.274 189.311 141.418 189.255 141.553 189.182ZM154.398 185.086C154.539 185.087 154.678 185.061 154.809 185.009C154.939 184.956 155.058 184.879 155.158 184.78C155.258 184.681 155.337 184.563 155.39 184.432C155.443 184.301 155.468 184.161 155.464 184.02C155.466 183.88 155.44 183.74 155.388 183.61C155.335 183.479 155.257 183.361 155.157 183.262C155.058 183.162 154.939 183.084 154.809 183.031C154.678 182.978 154.539 182.952 154.398 182.955C154.257 182.952 154.118 182.978 153.987 183.031C153.857 183.084 153.738 183.162 153.639 183.262C153.54 183.361 153.461 183.479 153.408 183.61C153.356 183.74 153.33 183.88 153.332 184.02C153.327 184.161 153.351 184.302 153.404 184.433C153.457 184.564 153.536 184.682 153.638 184.78C153.737 184.88 153.856 184.959 153.986 185.012C154.117 185.064 154.257 185.089 154.398 185.086ZM152.266 181.889C152.407 181.891 152.546 181.865 152.677 181.812C152.807 181.76 152.926 181.682 153.026 181.584C153.126 181.485 153.205 181.366 153.258 181.235C153.31 181.105 153.336 180.965 153.332 180.824C153.334 180.683 153.308 180.544 153.256 180.413C153.203 180.283 153.125 180.165 153.025 180.065C152.926 179.966 152.807 179.887 152.677 179.835C152.546 179.782 152.407 179.756 152.266 179.758C152.125 179.755 151.985 179.78 151.854 179.833C151.723 179.885 151.605 179.964 151.506 180.064C151.407 180.164 151.329 180.283 151.277 180.413C151.224 180.544 151.198 180.683 151.2 180.824C151.198 180.964 151.224 181.104 151.276 181.234C151.329 181.365 151.407 181.483 151.507 181.583C151.606 181.682 151.725 181.76 151.855 181.813C151.986 181.866 152.125 181.892 152.266 181.889ZM144.542 185.086H146.141V183.226H148.002V181.654H146.141V179.785H144.542V181.654H142.672V183.252H144.542V185.086ZM141.553 189.182C141.504 189.238 141.441 189.28 141.37 189.304C141.292 189.333 141.209 189.348 141.125 189.348C141.04 189.351 140.955 189.338 140.876 189.308C140.796 189.278 140.723 189.232 140.662 189.173C140.604 189.112 140.563 189.038 140.542 188.957C140.52 188.876 140.52 188.791 140.54 188.71L141.719 180.51C141.787 180.008 142.034 179.548 142.414 179.214C142.795 178.88 143.284 178.695 143.79 178.693H154.346C154.852 178.695 155.341 178.88 155.721 179.214C156.102 179.548 156.349 180.008 156.417 180.51L157.596 188.71C157.616 188.791 157.616 188.876 157.594 188.957C157.573 189.038 157.531 189.112 157.474 189.173C157.411 189.233 157.337 189.279 157.256 189.309C157.175 189.339 157.088 189.352 157.002 189.348C156.921 189.348 156.841 189.333 156.766 189.304C156.695 189.28 156.632 189.238 156.583 189.182L153.542 186.151H144.594L141.553 189.182Z" />
+    <path
+        android:fillColor="#FEEFC3"
+        android:pathData="M197.301 94.1194C207.141 94.1194 215.117 86.1468 215.117 76.3121C215.117 66.4775 207.141 58.5049 197.301 58.5049C187.461 58.5049 179.484 66.4775 179.484 76.3121C179.484 86.1468 187.461 94.1194 197.301 94.1194Z" />
+    <path
+        android:fillColor="#FBBC04"
+        android:pathData="M202.22 85.2464V78.1025H199.538V71.8407C199.537 71.2536 199.652 70.672 199.876 70.1295C200.101 69.587 200.43 69.0941 200.846 68.6794C201.262 68.2646 201.756 67.9362 202.299 67.7128C202.842 67.4895 203.424 67.3757 204.012 67.378V85.2464H202.22ZM193.282 85.2464V77.072C192.524 76.871 191.851 76.4334 191.359 75.8231C190.849 75.2077 190.576 74.4301 190.59 73.631V67.378H192.338V73.631H193.212V67.378H194.959V73.631H195.833V67.378H197.581V73.631C197.594 74.4301 197.322 75.2077 196.812 75.8231C196.323 76.4319 195.652 76.8693 194.898 77.072V85.2464H193.282Z" />
+    <path
+        android:fillColor="#FAD2CF"
+        android:pathData="M179.38 231.914C189.219 231.914 197.196 223.941 197.196 214.107C197.196 204.272 189.219 196.299 179.38 196.299C169.54 196.299 161.563 204.272 161.563 214.107C161.563 223.941 169.54 231.914 179.38 231.914Z" />
+    <path
+        android:fillColor="#EE675C"
+        android:pathData="M187.611 212.814L176.077 206.255C175.911 206.151 175.724 206.082 175.53 206.056C175.335 206.029 175.138 206.044 174.95 206.101C174.762 206.157 174.588 206.253 174.44 206.382C174.292 206.511 174.174 206.671 174.093 206.849C173.892 207.05 173.892 207.251 173.892 207.653V220.753C173.887 220.936 173.92 221.119 173.988 221.29C174.056 221.46 174.158 221.615 174.288 221.745C174.418 221.875 174.574 221.977 174.744 222.045C174.915 222.113 175.098 222.146 175.282 222.141C175.561 222.171 175.842 222.103 176.077 221.949L187.436 215.39C187.615 215.308 187.774 215.189 187.903 215.041C188.033 214.893 188.129 214.719 188.186 214.531C188.243 214.342 188.26 214.144 188.234 213.949C188.209 213.754 188.142 213.567 188.039 213.399C188.013 213.216 187.812 213.015 187.611 212.814Z" />
+    <path
         android:fillColor="?android:attr/colorAccent"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M81.63,56L76.13,56L72.01,60.2L72,68.6C72,69.37 72.62,70 73.38,70L81.63,70C82.38,70 83,69.37 83,68.6L83,57.4C83,56.63 82.38,56 81.63,56ZM77.5,60.2L76.13,60.2L76.13,57.4L77.5,57.4L77.5,60.2ZM79.56,60.2L78.19,60.2L78.19,57.4L79.56,57.4L79.56,60.2ZM81.63,60.2L80.25,60.2L80.25,57.4L81.63,57.4L81.63,60.2Z"
-        android:strokeColor="#00000000"
-        android:fillType="nonZero"
-        android:fillColor="?android:attr/colorAccent"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M39,77L87,77A4,4 0,0 1,91 81L91,81A4,4 0,0 1,87 85L39,85A4,4 0,0 1,35 81L35,81A4,4 0,0 1,39 77z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="?android:attr/colorAccent"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M32,77h31v8h-31z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#DADCE0"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M29,144L97,144L97,6L29,6L29,144ZM27.95,150C25.21,150 23,147.88 23,145.24L23,4.76C23,2.12 25.21,0 27.95,0L98.05,0C100.79,0 103,2.12 103,4.76L103,145.24C103,147.88 100.79,150 98.05,150L27.95,150Z"
-        android:strokeColor="#00000000"
-        android:fillType="nonZero"
-        android:fillColor="#F1F3F4"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M27.95,148L98.05,148C99.7,148 101,146.75 101,145.24L101,4.76C101,3.25 99.7,2 98.05,2L27.95,2C26.3,2 25,3.25 25,4.76L25,145.24C25,146.75 26.3,148 27.95,148ZM27.95,150C25.21,150 23,147.88 23,145.24L23,4.76C23,2.12 25.21,0 27.95,0L98.05,0C100.79,0 103,2.12 103,4.76L103,145.24C103,147.88 100.79,150 98.05,150L27.95,150Z"
-        android:strokeColor="#00000000"
-        android:fillType="nonZero"
-        android:fillColor="#DADCE0"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M103,58L103,58C104.1,58 105,58.9 105,60L105,76C105,77.1 104.1,78 103,78L103,58Z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#DADCE0"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M103,32L103,32C104.1,32 105,32.9 105,34L105,40C105,41.1 104.1,42 103,42L103,32Z"
-        android:strokeColor="#00000000"
-        android:fillType="evenOdd"
-        android:fillColor="#DADCE0"
-        android:strokeWidth="1"/>
-</vector>
+        android:pathData="M164.604 152.545H170.764V146.432H164.604V152.545ZM189.236 152.545H195.396V146.432H189.236V152.545ZM164.604 140.231H170.764V127.926H164.604V140.231ZM176.924 152.545H183.041V140.231H176.924V152.545ZM176.924 134.074H183.041V127.961H176.924V134.074ZM189.236 140.187H195.396V127.926H189.236V140.187ZM161.528 161.733C159.896 161.728 158.332 161.078 157.177 159.924C156.023 158.77 155.373 157.207 155.368 155.576V118.695L173.883 100.224H198.516C200.14 100.228 201.698 100.872 202.851 102.017C204.004 103.161 204.66 104.713 204.676 106.337V155.576C204.671 157.207 204.021 158.77 202.866 159.924C201.712 161.078 200.148 161.728 198.516 161.733H161.528ZM161.528 155.576H198.472V106.381H176.505L161.528 121.306V155.619V155.576ZM161.528 155.576V121.306L176.505 106.381H198.516V155.619H161.528V155.576Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_storage_wizard_ready.xml b/res/drawable/ic_storage_wizard_ready.xml
new file mode 100644
index 0000000..c09c9ec
--- /dev/null
+++ b/res/drawable/ic_storage_wizard_ready.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    Copyright (C) 2022 The Android Open Source Project
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="360dp"
+    android:height="262dp"
+    android:viewportWidth="360"
+    android:viewportHeight="262">
+
+ <path
+     android:fillColor="?android:attr/colorBackground"
+     android:pathData="M335.709 262H24.2913C10.9223 262 0 250.821 0 237.11V24.89C0 11.1787 10.9223 0 24.2913 0H335.796C349.078 0 360 11.1787 360 24.89V237.285C360 250.821 349.078 262 335.709 262Z" />
+ <path
+     android:fillColor="?android:attr/colorAccent"
+     android:pathData="M157.282 160.169H165.67V151.785H157.282V160.169ZM190.835 160.169H199.223V151.785H190.835V160.169ZM157.282 143.401H165.67V126.633H157.282V143.401ZM174.058 160.169H182.447V143.401H174.058V160.169ZM174.058 135.017H182.447V126.633H174.058V135.017ZM190.835 143.401H199.223V126.633H190.835V143.401ZM153.087 172.745C148.456 172.745 144.699 168.99 144.699 164.361V114.057L169.864 88.9053H203.417C208.049 88.9053 211.806 92.6606 211.806 97.2893V164.449C211.806 169.077 208.049 172.833 203.417 172.833L153.087 172.745ZM153.087 164.361H203.417V97.2019H173.359L153 117.551L153.087 164.361ZM153.087 164.361V117.551L173.447 97.2019H203.417V164.361H153.087Z" />
+ <path
+     android:fillColor="?android:attr/colorAccent"
+     android:pathData="M273.233 130.825C273.146 79.386 231.466 37.728 180 37.728C128.534 37.728 86.8544 79.4734 86.8544 130.913C86.8544 182.352 128.534 223.923 180 223.923C231.466 223.923 273.233 182.265 273.233 130.825ZM180 215.189C133.34 215.189 95.5922 177.374 95.5922 130.738C95.5922 84.102 133.427 46.374 180.087 46.374C226.748 46.374 264.495 84.1894 264.495 130.738C264.408 177.374 226.66 215.189 180 215.189Z" />
+ <path
+     android:fillColor="?android:attr/colorBackground"
+     android:pathData="M264.043 194.685C265.976 182.783 257.889 171.568 245.98 169.636C234.071 167.704 222.85 175.787 220.917 187.69C218.985 199.593 227.072 210.808 238.981 212.739C250.89 214.671 262.11 206.588 264.043 194.685Z" />
+ <path
+     android:fillColor="?android:attr/colorAccent"
+     android:pathData="M242.476 166.981C229.107 166.981 218.184 177.811 218.184 191.26C218.184 204.709 229.019 215.539 242.476 215.539C255.845 215.539 266.68 204.709 266.767 191.347C266.68 177.898 255.845 166.981 242.476 166.981ZM242.476 210.648C231.728 210.648 223.078 202.002 223.078 191.26C223.078 180.518 231.728 171.872 242.476 171.872C253.223 171.872 261.874 180.518 261.874 191.26C261.786 201.915 253.136 210.648 242.476 210.648ZM237.582 196.587L231.291 190.299L227.883 193.705L237.582 203.399L256.981 184.011L253.573 180.605L237.582 196.587Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_swap_horiz.xml b/res/drawable/ic_swap_horiz.xml
index a38833b..c41c9a3 100644
--- a/res/drawable/ic_swap_horiz.xml
+++ b/res/drawable/ic_swap_horiz.xml
@@ -20,5 +20,5 @@
         android:viewportHeight="24.0">
     <path
         android:pathData="M6.99,11L3,15l3.99,4v-3H14v-2H6.99v-3zM21,9l-3.99,-4v3H10v2h7.01v3L21,9z"
-        android:fillColor="#000000"/>
+        android:fillColor="?android:attr/textColorPrimary"/>
 </vector>
diff --git a/res/drawable/ic_test_tick.xml b/res/drawable/ic_test_tick.xml
new file mode 100644
index 0000000..9585806
--- /dev/null
+++ b/res/drawable/ic_test_tick.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  Copyright 2022 The Android Open Source Project
+
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  -->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="48dp"
+    android:height="48dp"
+    android:viewportWidth="48"
+    android:viewportHeight="48">
+
+  <path
+      android:fillColor="?android:attr/colorAccent"
+      android:pathData="M7.99999 14.6L2.39999 8.99999L0.533325 10.8667L7.99999 18.3333L24 2.33333L22.1333 0.46666L7.99999 14.6Z" />
+</vector>
\ No newline at end of file
diff --git a/res/drawable/tile_icon_desktop_mode.xml b/res/drawable/tile_icon_desktop_mode.xml
new file mode 100644
index 0000000..2ccd81f
--- /dev/null
+++ b/res/drawable/tile_icon_desktop_mode.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2022 The Android Open Source Project
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:attr/colorControlNormal"
+    android:viewportHeight="24.0"
+    android:viewportWidth="24.0">
+    <path
+        android:fillColor="#FFFFFFFF"
+        android:pathData="M18,15V20Q18,20.825 17.413,21.413Q16.825,22 16,22H4Q3.175,22 2.588,21.413Q2,20.825 2,20V11Q2,10.175 2.588,9.587Q3.175,9 4,9H6V4Q6,3.175 6.588,2.587Q7.175,2 8,2H20Q20.825,2 21.413,2.587Q22,3.175 22,4V13Q22,13.825 21.413,14.412Q20.825,15 20,15ZM4,13V20Q4,20 4,20Q4,20 4,20H16Q16,20 16,20Q16,20 16,20V13ZM18,13H20Q20,13 20,13Q20,13 20,13V6H8V9H16Q16.825,9 17.413,9.587Q18,10.175 18,11Z" />
+</vector>
diff --git a/res/layout-land/udfps_enroll_enrolling_land.xml b/res/layout-land/udfps_enroll_enrolling.xml
similarity index 93%
rename from res/layout-land/udfps_enroll_enrolling_land.xml
rename to res/layout-land/udfps_enroll_enrolling.xml
index 776f8a9..f323788 100644
--- a/res/layout-land/udfps_enroll_enrolling_land.xml
+++ b/res/layout-land/udfps_enroll_enrolling.xml
@@ -33,11 +33,15 @@
         <!-- Both texts are kept as separate text views so it doesn't jump around in portrait.
             See layouts/fingerprint_enroll_enrolling_base.xml. -->
         <LinearLayout
+            android:id="@+id/layout_container"
             android:layout_width="0dp"
             android:layout_weight="1"
             android:layout_height="match_parent"
             android:layout_marginStart="?attr/sudMarginStart"
+            android:layout_marginEnd="@dimen/enroll_margin_end"
             android:layout_marginBottom="@dimen/sud_content_frame_padding_bottom"
+            android:paddingStart="@dimen/enroll_padding_start"
+            android:paddingEnd="@dimen/enroll_padding_end"
             android:clipChildren="false"
             android:clipToPadding="false"
             android:orientation="vertical">
diff --git a/res/layout/accessibility_launch_activity_preference.xml b/res/layout/accessibility_launch_activity_preference.xml
index 0e3e225..26a1c33 100644
--- a/res/layout/accessibility_launch_activity_preference.xml
+++ b/res/layout/accessibility_launch_activity_preference.xml
@@ -34,5 +34,6 @@
         android:ellipsize="end"
         android:textAppearance="?android:attr/textAppearanceListItem"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         style="@style/MainSwitchText.Settingslib" />
 </LinearLayout>
diff --git a/res/layout/accessibility_shortcut_secondary_action.xml b/res/layout/accessibility_shortcut_secondary_action.xml
index ddbadb5..b3b81fe 100644
--- a/res/layout/accessibility_shortcut_secondary_action.xml
+++ b/res/layout/accessibility_shortcut_secondary_action.xml
@@ -60,6 +60,7 @@
                 android:singleLine="true"
                 android:textAppearance="?android:attr/textAppearanceListItem"
                 android:hyphenationFrequency="normalFast"
+                android:lineBreakWordStyle="phrase"
                 android:ellipsize="marquee" />
 
             <TextView
@@ -71,6 +72,7 @@
                 android:textAppearance="?android:attr/textAppearanceListItemSecondary"
                 android:textColor="?android:attr/textColorSecondary"
                 android:hyphenationFrequency="normalFast"
+                android:lineBreakWordStyle="phrase"
                 android:maxLines="10" />
 
         </RelativeLayout>
diff --git a/res/layout/apn_preference_layout.xml b/res/layout/apn_preference_layout.xml
index 2c453aa..241be74 100644
--- a/res/layout/apn_preference_layout.xml
+++ b/res/layout/apn_preference_layout.xml
@@ -52,6 +52,7 @@
             android:textColor="?android:attr/textColorSecondary"
             android:focusable="false"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             android:maxLines="2" />
 
     </RelativeLayout>
diff --git a/res/layout/app_preference_item.xml b/res/layout/app_preference_item.xml
index c685760..7e7ff39 100755
--- a/res/layout/app_preference_item.xml
+++ b/res/layout/app_preference_item.xml
@@ -57,6 +57,7 @@
             android:ellipsize="marquee"
             android:duplicateParentState="true"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             />
         <TextView
             android:id="@android:id/summary"
@@ -69,6 +70,7 @@
             android:visibility="gone"
             android:duplicateParentState="true"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             />
     </LinearLayout>
     <TextView
diff --git a/res/layout/battery_active_view.xml b/res/layout/battery_active_view.xml
index 1583b95..306fc4b 100644
--- a/res/layout/battery_active_view.xml
+++ b/res/layout/battery_active_view.xml
@@ -29,6 +29,7 @@
         android:textAlignment="viewStart"
         android:textAppearance="?android:attr/textAppearanceMedium"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:textColor="?android:attr/textColorSecondary" />
 
     <com.android.settings.fuelgauge.BatteryActiveView
diff --git a/res/layout/battery_chart_graph.xml b/res/layout/battery_chart_graph.xml
index e89c912..b95c660 100644
--- a/res/layout/battery_chart_graph.xml
+++ b/res/layout/battery_chart_graph.xml
@@ -29,14 +29,24 @@
         android:layout_marginVertical="16dp"
         android:textAppearance="?android:attr/textAppearanceSmall"
         android:textColor="?android:attr/textColorSecondary"
-        android:text="@string/battery_usage_chart_graph_hint" />
+        android:text="@string/battery_usage_chart_graph_hint_last_full_charge" />
 
-    <com.android.settings.fuelgauge.BatteryChartView
-        android:id="@+id/battery_chart"
+    <com.android.settings.fuelgauge.batteryusage.BatteryChartView
+        android:id="@+id/daily_battery_chart"
         android:layout_width="match_parent"
         android:layout_height="170dp"
-        android:layout_marginBottom="6dp"
-        android:visibility="invisible"
+        android:layout_marginBottom="16dp"
+        android:visibility="gone"
+        android:contentDescription="@string/battery_usage_chart"
+        android:textAppearance="?android:attr/textAppearanceSmall"
+        settings:textColor="?android:attr/textColorSecondary" />
+
+    <com.android.settings.fuelgauge.batteryusage.BatteryChartView
+        android:id="@+id/hourly_battery_chart"
+        android:layout_width="match_parent"
+        android:layout_height="170dp"
+        android:layout_marginBottom="16dp"
+        android:visibility="visible"
         android:contentDescription="@string/battery_usage_chart"
         android:textAppearance="?android:attr/textAppearanceSmall"
         settings:textColor="?android:attr/textColorSecondary" />
diff --git a/res/layout/bluetooth_audio_codec_dialog.xml b/res/layout/bluetooth_audio_codec_dialog.xml
index 9636427..3a260a6 100644
--- a/res/layout/bluetooth_audio_codec_dialog.xml
+++ b/res/layout/bluetooth_audio_codec_dialog.xml
@@ -54,6 +54,15 @@
             <include
                 android:id="@+id/bluetooth_audio_codec_ldac"
                 layout="@layout/preference_widget_dialog_radiobutton"/>
+
+            <include
+                android:id="@+id/bluetooth_audio_codec_lc3"
+                layout="@layout/preference_widget_dialog_radiobutton"/>
+
+            <include
+                android:id="@+id/bluetooth_audio_codec_opus"
+                layout="@layout/preference_widget_dialog_radiobutton"/>
+
         </RadioGroup>
 
         <include
diff --git a/res/layout/card_preference.xml b/res/layout/card_preference.xml
index be49ca3..39523eb 100644
--- a/res/layout/card_preference.xml
+++ b/res/layout/card_preference.xml
@@ -57,6 +57,30 @@
             android:maxLines="10"
             style="@style/PreferenceSummaryTextStyle"/>
 
+        <RelativeLayout
+            android:id="@+id/card_preference_buttons"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="8dp"
+            android:layout_below="@android:id/summary"
+            android:visibility="gone">
+            <Button
+                android:id="@android:id/button1"
+                style="@style/CardPreferencePrimaryButton"
+                android:layout_height="wrap_content"
+                android:layout_width="wrap_content"
+                android:layout_marginHorizontal="4dp"
+                android:layout_toStartOf="@android:id/button2"
+                android:visibility="gone"/>
+            <Button
+                android:id="@android:id/button2"
+                style="@style/CardPreferenceBorderlessButton"
+                android:layout_height="wrap_content"
+                android:layout_width="wrap_content"
+                android:layout_marginHorizontal="4dp"
+                android:layout_alignParentEnd="true"
+                android:visibility="gone"/>
+        </RelativeLayout>
     </RelativeLayout>
 
     <!-- Preference should place its actual preference widget here. -->
diff --git a/res/layout/dream_preference_layout.xml b/res/layout/dream_preference_layout.xml
index dc52328..f7281c1 100644
--- a/res/layout/dream_preference_layout.xml
+++ b/res/layout/dream_preference_layout.xml
@@ -59,7 +59,8 @@
             android:layout_height="wrap_content"
             android:visibility="gone"
             android:text="@string/customize_button_title"
-            android:hyphenationFrequency="full"
+            android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             app:layout_constraintTop_toTopOf="@+id/preview"
             app:layout_constraintBottom_toBottomOf="@+id/preview"
             app:layout_constraintStart_toStartOf="@+id/preview"
diff --git a/res/layout/face_enroll_education.xml b/res/layout/face_enroll_education.xml
index 2a78f99..fec6d53 100644
--- a/res/layout/face_enroll_education.xml
+++ b/res/layout/face_enroll_education.xml
@@ -54,7 +54,7 @@
                 android:layout_width="match_parent"
                 android:layout_height="440dp"
                 android:layout_marginTop="-52dp"
-                android:scaleType="centerCrop"
+                android:scaleType="centerInside"
                 android:visibility="gone"
                 app:lottie_autoPlay="true"
                 app:lottie_loop="true"
@@ -66,7 +66,7 @@
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
                 android:visibility="invisible"
-                android:background="@drawable/face_enroll_icon_large"/>
+                android:src="@drawable/face_enroll_icon_large"/>
 
         </FrameLayout>
 
@@ -83,7 +83,8 @@
 
             <FrameLayout
                 android:layout_width="match_parent"
-                android:layout_height="wrap_content">
+                android:layout_height="wrap_content"
+                android:layout_marginTop="-24dp">
 
                 <Button
                     android:id="@+id/accessibility_button"
diff --git a/res/layout/homepage_preference.xml b/res/layout/homepage_preference.xml
index 97557b0..ed1a2f1 100644
--- a/res/layout/homepage_preference.xml
+++ b/res/layout/homepage_preference.xml
@@ -63,6 +63,7 @@
             android:singleLine="true"
             android:textAppearance="?android:attr/textAppearanceListItem"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             android:ellipsize="marquee"/>
 
         <TextView
@@ -77,6 +78,7 @@
             android:textColor="?android:attr/textColorSecondary"
             android:maxLines="4"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             style="@style/PreferenceSummaryTextStyle"/>
     </RelativeLayout>
 </LinearLayout>
diff --git a/res/layout/horizontal_preference.xml b/res/layout/horizontal_preference.xml
index d87963c..922143b 100644
--- a/res/layout/horizontal_preference.xml
+++ b/res/layout/horizontal_preference.xml
@@ -31,6 +31,7 @@
         android:layout_height="wrap_content"
         android:layout_width="wrap_content"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:layout_weight="1" />
 
     <TextView
@@ -41,6 +42,7 @@
         android:layout_width="wrap_content"
         android:layout_weight="1"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:gravity="end|bottom" />
 
 </LinearLayout>
diff --git a/res/layout/notification_app.xml b/res/layout/notification_app.xml
index 2d17c8d..15e83f1 100644
--- a/res/layout/notification_app.xml
+++ b/res/layout/notification_app.xml
@@ -39,6 +39,7 @@
         android:singleLine="true"
         android:textAlignment="viewStart"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:textAppearance="?android:attr/textAppearanceMedium" />
 
     <TextView
@@ -52,6 +53,7 @@
         android:textAlignment="viewStart"
         android:textColor="?android:attr/textColorSecondary"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:textAppearance="?android:attr/textAppearanceSmall" />
 
     <View
diff --git a/res/layout/notification_history_app_layout.xml b/res/layout/notification_history_app_layout.xml
index 52c0e42..7d53b4d 100644
--- a/res/layout/notification_history_app_layout.xml
+++ b/res/layout/notification_history_app_layout.xml
@@ -21,63 +21,79 @@
     android:layout_height="wrap_content"
     android:orientation="vertical">
 
-    <RelativeLayout
+    <androidx.constraintlayout.widget.ConstraintLayout
         android:id="@+id/app_header"
-        android:layout_height="wrap_content"
         android:layout_width="match_parent"
-        android:clipChildren="true"
-        android:background="@drawable/button_ripple_radius"
+        android:layout_height="wrap_content"
         android:paddingTop="20dp"
-        android:orientation="horizontal"
         android:paddingBottom="18dp"
-        android:paddingStart="16dp">
+        android:paddingStart="16dp"
+        android:background="?android:attr/selectableItemBackground"
+        android:clipChildren="true">
+
         <ImageView
             android:id="@+id/icon"
-            android:layout_height="24dp"
             android:layout_width="24dp"
-            android:layout_gravity="center_vertical|start"
+            android:layout_height="24dp"
             android:layout_marginEnd="14dp"
-            android:layout_centerVertical="true"
-            android:scaleType="centerInside"/>
+            android:scaleType="centerInside"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toStartOf="@id/text_start_guideline"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent" />
 
-        <LinearLayout
+        <androidx.constraintlayout.widget.Guideline
+            android:id="@+id/text_start_guideline"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:id="@+id/text"
-            android:layout_toEndOf="@+id/icon"
-            android:layout_gravity="center_vertical"
-            android:layout_centerVertical="true"
-            android:orientation="vertical">
-            <TextView
-                android:id="@+id/label"
-                android:layout_height="wrap_content"
-                android:layout_width="wrap_content"
-                android:layout_gravity="center_vertical"
-                android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Notification.Title"/>
-            <TextView
-                android:id="@+id/count"
-                android:layout_height="wrap_content"
-                android:layout_width="wrap_content"
-                android:layout_gravity="start|center_vertical"
-                android:textDirection="locale"
-                android:paddingTop="4dp"
-                android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Notification"/>
-        </LinearLayout>
+            android:orientation="vertical"
+            app:layout_constraintStart_toEndOf="@id/icon" />
 
-        <include layout="@*android:layout/notification_expand_button"
-                 android:layout_width="wrap_content"
-                 android:layout_height="wrap_content"
-                 android:layout_alignParentEnd="true"
-                 android:layout_centerVertical="true"
-                 android:layout_gravity="center_vertical"
-        />
+        <TextView
+            android:id="@+id/label"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:ellipsize="end"
+            android:lines="1"
+            android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Notification.Title"
+            app:layout_constraintBottom_toTopOf="@id/count"
+            app:layout_constraintEnd_toStartOf="@id/expand_button_wrapper"
+            app:layout_constraintStart_toEndOf="@id/text_start_guideline"
+            app:layout_constraintTop_toTopOf="parent" />
 
-    </RelativeLayout>
+        <TextView
+            android:id="@+id/count"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:paddingTop="4dp"
+            android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Notification"
+            android:textDirection="locale"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toStartOf="@id/expand_button_wrapper"
+            app:layout_constraintStart_toEndOf="@id/text_start_guideline"
+            app:layout_constraintTop_toBottomOf="@id/label" />
+
+        <FrameLayout
+            android:id="@+id/expand_button_wrapper"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintTop_toTopOf="parent">
+
+            <include
+                layout="@*android:layout/notification_expand_button"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content" />
+
+        </FrameLayout>
+
+    </androidx.constraintlayout.widget.ConstraintLayout>
 
     <View
         android:layout_width="match_parent"
         android:layout_height="1dp"
-        android:background="?android:attr/listDivider"/>
+        android:background="?android:attr/listDivider" />
 
     <androidx.constraintlayout.widget.ConstraintLayout
         android:id="@+id/notification_list_wrapper"
@@ -85,20 +101,20 @@
         android:layout_height="wrap_content">
 
         <com.android.settings.notification.history.NotificationHistoryRecyclerView
+            android:id="@+id/notification_list"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:id="@+id/notification_list"
             android:clipChildren="true"
-            android:clipToPadding="true"
             android:clipToOutline="true"
+            android:clipToPadding="true"
             android:importantForAccessibility="yes"
             app:layout_constrainedHeight="true"
-            app:layout_constraintHeight_min="48dp"
-            app:layout_constraintHeight_max="500dp"
-            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintHeight_max="500dp"
+            app:layout_constraintHeight_min="48dp"
             app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintBottom_toBottomOf="parent"/>
+            app:layout_constraintTop_toTopOf="parent" />
 
     </androidx.constraintlayout.widget.ConstraintLayout>
 
diff --git a/res/layout/preference_app_restrictions.xml b/res/layout/preference_app_restrictions.xml
index f92f683..28effe7 100644
--- a/res/layout/preference_app_restrictions.xml
+++ b/res/layout/preference_app_restrictions.xml
@@ -62,6 +62,7 @@
                 android:textAppearance="?android:attr/textAppearanceMedium"
                 android:ellipsize="marquee"
                 android:hyphenationFrequency="normalFast"
+                android:lineBreakWordStyle="phrase"
                 android:fadingEdge="horizontal"/>
             <TextView
                 android:id="@android:id/summary"
@@ -76,6 +77,7 @@
                 android:textColor="?android:attr/textColorSecondary"
                 android:focusable="false"
                 android:hyphenationFrequency="normalFast"
+                android:lineBreakWordStyle="phrase"
                 android:maxLines="4" />
         </RelativeLayout>
     </LinearLayout>
diff --git a/res/layout/preference_balance_slider.xml b/res/layout/preference_balance_slider.xml
index 3f1c4ed..278cf79 100644
--- a/res/layout/preference_balance_slider.xml
+++ b/res/layout/preference_balance_slider.xml
@@ -46,6 +46,7 @@
                 android:textColor="?android:attr/textColorPrimary"
                 android:ellipsize="marquee"
                 android:hyphenationFrequency="normalFast"
+                android:lineBreakWordStyle="phrase"
                 android:fadingEdge="horizontal"/>
             <LinearLayout
                 android:id="@android:id/widget_frame"
diff --git a/res/layout/preference_icon.xml b/res/layout/preference_icon.xml
index 1312979..9a81db9 100644
--- a/res/layout/preference_icon.xml
+++ b/res/layout/preference_icon.xml
@@ -58,6 +58,7 @@
             android:layout_alignStart="@android:id/title"
             android:textAppearance="?android:attr/textAppearanceSmall"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             android:maxLines="2" />
 
     </RelativeLayout>
diff --git a/res/layout/preference_labeled_slider.xml b/res/layout/preference_labeled_slider.xml
index 610b79f..a11d574 100644
--- a/res/layout/preference_labeled_slider.xml
+++ b/res/layout/preference_labeled_slider.xml
@@ -36,6 +36,7 @@
         android:singleLine="true"
         android:textAppearance="?android:attr/textAppearanceListItem"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:textColor="?android:attr/textColorPrimary" />
 
     <TextView
@@ -46,6 +47,7 @@
         android:textAppearance="?android:attr/textAppearanceSmall"
         android:textAlignment="viewStart"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:textColor="?android:attr/textColorSecondary" />
 
     <include
diff --git a/res/layout/preference_multiline_title.xml b/res/layout/preference_multiline_title.xml
index d68e8c1..9612a57 100644
--- a/res/layout/preference_multiline_title.xml
+++ b/res/layout/preference_multiline_title.xml
@@ -39,6 +39,7 @@
             android:textAlignment="center"
             android:ellipsize="marquee"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             android:fadingEdge="horizontal" />
 
         <TextView
@@ -52,6 +53,7 @@
             android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Body1"
             android:textColor="?android:attr/textColorSecondary"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             android:maxLines="10" />
 
     </RelativeLayout>
diff --git a/res/layout/preference_progress_category.xml b/res/layout/preference_progress_category.xml
index 9e33c5d..b04f5be 100644
--- a/res/layout/preference_progress_category.xml
+++ b/res/layout/preference_progress_category.xml
@@ -48,6 +48,7 @@
         android:layout_gravity="start|center"
         android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Body2"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:textColor="?android:attr/colorAccent"/>
 
     <ProgressBar
diff --git a/res/layout/preference_radio_with_extra_widget.xml b/res/layout/preference_radio_with_extra_widget.xml
index a03f556..9b7e178 100644
--- a/res/layout/preference_radio_with_extra_widget.xml
+++ b/res/layout/preference_radio_with_extra_widget.xml
@@ -76,6 +76,7 @@
                   android:textAppearance="?android:attr/textAppearanceSmall"
                   android:textAlignment="viewStart"
                   android:hyphenationFrequency="normalFast"
+                  android:lineBreakWordStyle="phrase"
                   android:textColor="?android:attr/textColorSecondary" />
     </LinearLayout>
     <LinearLayout
diff --git a/res/layout/preference_single_target.xml b/res/layout/preference_single_target.xml
index ae40fd3..5b0bf05 100644
--- a/res/layout/preference_single_target.xml
+++ b/res/layout/preference_single_target.xml
@@ -77,6 +77,7 @@
                 android:textAppearance="?android:attr/textAppearanceListItemSecondary"
                 android:textColor="?android:attr/textColorSecondary"
                 android:hyphenationFrequency="normalFast"
+                android:lineBreakWordStyle="phrase"
                 android:maxLines="10" />
 
         </RelativeLayout>
diff --git a/res/layout/preference_two_target_radio.xml b/res/layout/preference_two_target_radio.xml
index e5e6d4a..ece0746 100644
--- a/res/layout/preference_two_target_radio.xml
+++ b/res/layout/preference_two_target_radio.xml
@@ -74,6 +74,7 @@
                 android:textAppearance="?android:attr/textAppearanceListItemSecondary"
                 android:textColor="?android:attr/textColorSecondary"
                 android:hyphenationFrequency="normalFast"
+                android:lineBreakWordStyle="phrase"
                 android:maxLines="10" />
 
         </RelativeLayout>
diff --git a/res/layout/radio_with_summary.xml b/res/layout/radio_with_summary.xml
index 2f39e67..ac65a0e 100644
--- a/res/layout/radio_with_summary.xml
+++ b/res/layout/radio_with_summary.xml
@@ -34,6 +34,7 @@
         android:paddingStart="20dp"
         android:drawableStart="?android:attr/listChoiceIndicatorSingle"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:ellipsize="marquee" />
 
 
@@ -45,6 +46,7 @@
         android:textAppearance="?android:attr/textAppearanceListItemSecondary"
         android:textColor="?android:attr/textColorSecondary"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:maxLines="10" />
 
 </com.android.settings.CheckableLinearLayout>
diff --git a/res/layout/running_services_app_item.xml b/res/layout/running_services_app_item.xml
index f258530..65328ba 100644
--- a/res/layout/running_services_app_item.xml
+++ b/res/layout/running_services_app_item.xml
@@ -56,6 +56,7 @@
             android:fadingEdge="horizontal"
             android:maxLines="2"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             android:textAppearance="?android:attr/textAppearanceListItem"/>
 
         <TextView
@@ -65,6 +66,7 @@
             android:textDirection="locale"
             android:textAppearance="?android:attr/textAppearanceSmall"
             android:hyphenationFrequency="normalFast"
+            android:lineBreakWordStyle="phrase"
             android:textColor="?android:attr/textColorSecondary"/>
 
     </LinearLayout>
diff --git a/res/layout/settings_summary_preference.xml b/res/layout/settings_summary_preference.xml
index 2f899e1..894a5e5 100644
--- a/res/layout/settings_summary_preference.xml
+++ b/res/layout/settings_summary_preference.xml
@@ -33,7 +33,8 @@
         android:textColor="?android:attr/textColorPrimary"
         android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Display1"
         android:hyphenationFrequency="normalFast"
-        />
+        android:lineBreakWordStyle="phrase"
+     />
 
     <TextView android:id="@android:id/summary"
         android:layout_width="match_parent"
@@ -42,6 +43,7 @@
         android:textColor="?android:attr/textColorSecondary"
         android:paddingBottom="5dp"
         android:hyphenationFrequency="normalFast"
+        android:lineBreakWordStyle="phrase"
         android:maxLines="10" />
 
     <ProgressBar
diff --git a/res/layout/storage_internal_format.xml b/res/layout/storage_internal_format.xml
index 0b49d7e..f8224c4 100644
--- a/res/layout/storage_internal_format.xml
+++ b/res/layout/storage_internal_format.xml
@@ -14,16 +14,16 @@
      limitations under the License.
 -->
 
-<LinearLayout
+<androidx.core.widget.NestedScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:orientation="vertical">
+    android:layout_height="wrap_content"
+    android:fillViewport="true">
 
-    <androidx.core.widget.NestedScrollView
+    <LinearLayout
         android:layout_width="match_parent"
-        android:layout_height="0dp"
-        android:layout_weight="1">
+        android:layout_height="wrap_content"
+        android:orientation="vertical">
         <TextView
             android:id="@+id/body"
             android:layout_width="match_parent"
@@ -35,19 +35,21 @@
             android:lineSpacingExtra="@dimen/sud_description_line_spacing_extra"
             android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Body1"
             android:textColor="?android:attr/textColorPrimary" />
-    </androidx.core.widget.NestedScrollView>
 
-    <FrameLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:padding="4dp">
-        <Button
-            android:id="@+id/confirm"
+        <FrameLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:text="@string/storage_menu_format"
-            android:textColor="@android:color/white"
-            android:backgroundTint="@color/storage_wizard_button_red" />
-    </FrameLayout>
+            android:padding="4dp">
+            <Button
+                style="@style/ActionPrimaryButton"
+                android:id="@+id/confirm"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center"
+                android:text="@string/storage_menu_format_button"
+                android:textColor="@android:color/white"
+                android:backgroundTint="@color/storage_wizard_button_red" />
+        </FrameLayout>
+  </LinearLayout>
 
-</LinearLayout>
+</androidx.core.widget.NestedScrollView>
diff --git a/res/layout/storage_wizard_generic.xml b/res/layout/storage_wizard_generic.xml
index e7881d3..fc0bab1 100644
--- a/res/layout/storage_wizard_generic.xml
+++ b/res/layout/storage_wizard_generic.xml
@@ -14,32 +14,52 @@
      limitations under the License.
 -->
 
-<com.google.android.setupdesign.GlifLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/setup_wizard_layout"
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/storage_wizard_container"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="wrap_content"
+    android:fitsSystemWindows="true">
 
-    <LinearLayout
-        style="@style/SudContentFrame"
+   <com.google.android.setupdesign.GlifLayout
+        android:id="@+id/setup_wizard_layout"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:orientation="vertical">
+        android:layout_height="match_parent">
 
-        <TextView
-            android:id="@+id/storage_wizard_body"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="@dimen/sud_description_margin_top"
-            android:lineSpacingExtra="@dimen/sud_description_line_spacing_extra"
-            android:textColor="?android:attr/textColorPrimary" />
+      <LinearLayout
+          style="@style/SudContentFrame"
+          android:layout_width="match_parent"
+          android:layout_height="match_parent"
+          android:orientation="vertical">
 
-        <FrameLayout
-            android:id="@+id/storage_wizard_aux"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:visibility="gone" />
+          <TextView
+              android:id="@+id/storage_wizard_body"
+              android:layout_width="match_parent"
+              android:layout_height="wrap_content"
+              android:layout_marginTop="@dimen/sud_description_margin_top"
+              android:lineSpacingExtra="@dimen/sud_description_line_spacing_extra"
+              android:textSize="18sp"
+              android:textColor="?android:attr/textColorSecondary" />
 
-    </LinearLayout>
+          <FrameLayout
+              android:id="@+id/storage_wizard_aux"
+              android:layout_width="match_parent"
+              android:layout_height="wrap_content"
+              android:visibility="gone" />
 
-</com.google.android.setupdesign.GlifLayout>
+          <LinearLayout
+              android:layout_width="match_parent"
+              android:layout_height="wrap_content"
+              android:layout_marginTop="@dimen/setup_completion_margin_top"
+              android:orientation="vertical"
+              android:gravity="center_horizontal">
+              <ImageView
+                  android:id="@+id/storage_wizard_body_image"
+                  android:layout_width="match_parent"
+                  android:layout_height="wrap_content"
+                  android:scaleType="centerInside"/>
+          </LinearLayout>
+
+      </LinearLayout>
+
+  </com.google.android.setupdesign.GlifLayout>
+</RelativeLayout>
diff --git a/res/layout/storage_wizard_init.xml b/res/layout/storage_wizard_init.xml
index e1e78331..2d21e0e 100644
--- a/res/layout/storage_wizard_init.xml
+++ b/res/layout/storage_wizard_init.xml
@@ -14,124 +14,30 @@
      limitations under the License.
 -->
 
-<com.google.android.setupdesign.GlifLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/setup_wizard_layout"
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/storage_wizard_container"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="wrap_content"
+    android:fitsSystemWindows="true">
 
-    <LinearLayout
-        style="@style/SudContentFrame"
+   <com.google.android.setupdesign.GlifLayout
+        android:id="@+id/setup_wizard_layout"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:orientation="vertical">
+        android:layout_height="match_parent">
+      <LinearLayout
+          style="@style/SudContentFrame"
+          android:id="@+id/storage_wizard_init"
+          android:layout_width="match_parent"
+          android:layout_height="match_parent"
+          android:orientation="vertical">
+          <ViewFlipper
+              android:layout_width="fill_parent"
+              android:layout_height="fill_parent"
+              android:id="@+id/viewFlipper">
+              <include layout = "@layout/storage_wizard_init_external" />
+              <include layout = "@layout/storage_wizard_init_internal" />
+          </ViewFlipper>
+      </LinearLayout>
 
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="@dimen/sud_description_margin_top"
-            android:orientation="horizontal"
-            android:gravity="center_vertical">
-            <ImageView
-                android:layout_width="144dp"
-                android:layout_height="144dp"
-                android:scaleType="centerInside"
-                android:src="@drawable/ic_storage_wizard_internal" />
-            <LinearLayout
-                android:layout_width="0dp"
-                android:layout_height="wrap_content"
-                android:layout_weight="1"
-                android:layout_marginStart="@dimen/sud_glif_margin_start"
-                android:orientation="vertical">
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginBottom="@dimen/sud_description_margin_bottom"
-                    android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Subhead"
-                    android:text="@string/storage_wizard_init_v2_internal_title" />
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginBottom="@dimen/sud_description_margin_bottom"
-                    android:textColor="?android:attr/textColorSecondary"
-                    android:text="@string/storage_wizard_init_v2_internal_summary" />
-                <Button
-                    android:id="@+id/storage_wizard_init_internal"
-                    style="@style/SudGlifButton.Primary"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:text="@string/storage_wizard_init_v2_internal_action"
-                    android:onClick="onNavigateInternal" />
-            </LinearLayout>
-        </LinearLayout>
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="@dimen/sud_description_margin_top"
-            android:orientation="horizontal"
-            android:gravity="center_vertical">
-            <View
-                android:layout_width="0dp"
-                android:layout_height="1dp"
-                android:layout_weight="1"
-                android:background="@android:color/black"
-                android:backgroundTint="?android:attr/textColorTertiary" />
-            <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_marginStart="8dp"
-                android:layout_marginEnd="8dp"
-                android:text="@string/storage_wizard_init_v2_or"
-                android:textColor="?android:attr/textColorTertiary"
-                android:textAllCaps="true" />
-            <View
-                android:layout_width="0dp"
-                android:layout_height="1dp"
-                android:layout_weight="1"
-                android:background="@android:color/black"
-                android:backgroundTint="?android:attr/textColorTertiary" />
-        </LinearLayout>
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="@dimen/sud_description_margin_top"
-            android:orientation="horizontal"
-            android:gravity="center_vertical">
-            <ImageView
-                android:layout_width="144dp"
-                android:layout_height="144dp"
-                android:scaleType="centerInside"
-                android:src="@drawable/ic_storage_wizard_external" />
-            <LinearLayout
-                android:layout_width="0dp"
-                android:layout_height="wrap_content"
-                android:layout_weight="1"
-                android:layout_marginStart="@dimen/sud_glif_margin_start"
-                android:orientation="vertical">
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginBottom="@dimen/sud_description_margin_bottom"
-                    android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Subhead"
-                    android:text="@string/storage_wizard_init_v2_external_title" />
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginBottom="@dimen/sud_description_margin_bottom"
-                    android:textColor="?android:attr/textColorSecondary"
-                    android:text="@string/storage_wizard_init_v2_external_summary" />
-                <Button
-                    android:id="@+id/storage_wizard_init_external"
-                    style="@style/SudGlifButton.Primary"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:text="@string/storage_wizard_init_v2_external_action"
-                    android:onClick="onNavigateExternal" />
-            </LinearLayout>
-        </LinearLayout>
-
-    </LinearLayout>
-
-</com.google.android.setupdesign.GlifLayout>
+  </com.google.android.setupdesign.GlifLayout>
+</RelativeLayout>
\ No newline at end of file
diff --git a/res/layout/storage_wizard_init_external.xml b/res/layout/storage_wizard_init_external.xml
new file mode 100644
index 0000000..38df28b
--- /dev/null
+++ b/res/layout/storage_wizard_init_external.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:layout_marginTop="@dimen/sud_description_margin_top"
+    android:orientation="vertical">
+    <TextView
+       android:id="@+id/storage_wizard_init_external_text"
+       android:layout_width="wrap_content"
+       android:layout_height="wrap_content"
+       android:layout_marginBottom="32dp"
+       android:textColor="?android:attr/textColorSecondary"
+       android:textSize="18sp"
+       android:text="@string/storage_wizard_init_v2_external_summary" />
+    <ImageView
+          android:layout_width="match_parent"
+          android:layout_height="wrap_content"
+          android:scaleType="centerInside"
+          android:src="@drawable/ic_storage_wizard_external" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/storage_wizard_init_internal.xml b/res/layout/storage_wizard_init_internal.xml
new file mode 100644
index 0000000..0a18070
--- /dev/null
+++ b/res/layout/storage_wizard_init_internal.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
+     android:layout_width="match_parent"
+     android:layout_height="wrap_content"
+     android:layout_marginTop="@dimen/sud_description_margin_top"
+     android:orientation="vertical">
+     <TextView
+        android:id="@+id/storage_wizard_init_internal_text"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginBottom="32dp"
+        android:textColor="?android:attr/textColorSecondary"
+        android:textSize="18sp"
+        android:text="@string/storage_wizard_init_v2_internal_summary" />
+     <ImageView
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:scaleType="centerInside"
+        android:src="@drawable/ic_storage_wizard_internal" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/storage_wizard_progress.xml b/res/layout/storage_wizard_progress.xml
index 577ec3c..890be70 100644
--- a/res/layout/storage_wizard_progress.xml
+++ b/res/layout/storage_wizard_progress.xml
@@ -14,47 +14,55 @@
      limitations under the License.
 -->
 
-<com.google.android.setupdesign.GlifLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/setup_wizard_layout"
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/storage_wizard_container"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="wrap_content"
+    android:fitsSystemWindows="true">
 
-    <LinearLayout
-        style="@style/SudContentFrame"
+   <com.google.android.setupdesign.GlifLayout
+        android:id="@+id/setup_wizard_layout"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:orientation="vertical">
+        android:layout_height="match_parent">
 
-        <ProgressBar
-            android:id="@+id/storage_wizard_progress"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="@dimen/sud_description_margin_top"
-            android:indeterminate="false"
-            style="?android:attr/progressBarStyleHorizontal" />
-        <TextView
-            android:id="@+id/storage_wizard_progress_summary"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:lineSpacingExtra="@dimen/sud_description_line_spacing_extra"
-            android:textColor="?android:attr/textColorSecondary" />
+      <LinearLayout
+          style="@style/SudContentFrame"
+          android:layout_width="match_parent"
+          android:layout_height="match_parent"
+          android:orientation="vertical">
 
-        <TextView
-            android:id="@+id/storage_wizard_body"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="@dimen/sud_description_margin_top"
-            android:lineSpacingExtra="@dimen/sud_description_line_spacing_extra"
-            android:textColor="?android:attr/textColorPrimary"
-            android:visibility="gone" />
+          <ProgressBar
+              android:id="@+id/storage_wizard_progress"
+              android:layout_width="match_parent"
+              android:layout_height="wrap_content"
+              android:layout_marginTop="@dimen/sud_description_margin_top"
+              android:indeterminate="false"
+              style="?android:attr/progressBarStyleHorizontal" />
+          <TextView
+              android:id="@+id/storage_wizard_progress_summary"
+              android:layout_width="match_parent"
+              android:layout_height="wrap_content"
+              android:lineSpacingExtra="@dimen/sud_description_line_spacing_extra"
+              android:textSize="18sp"
+              android:textColor="?android:attr/textColorSecondary" />
 
-        <FrameLayout
-            android:id="@+id/storage_wizard_aux"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:visibility="gone" />
+          <TextView
+              android:id="@+id/storage_wizard_body"
+              android:layout_width="match_parent"
+              android:layout_height="wrap_content"
+              android:layout_marginTop="@dimen/sud_description_margin_top"
+              android:lineSpacingExtra="@dimen/sud_description_line_spacing_extra"
+              android:textColor="?android:attr/textColorPrimary"
+              android:textSize="18sp"
+              android:visibility="gone" />
 
-    </LinearLayout>
+          <FrameLayout
+              android:id="@+id/storage_wizard_aux"
+              android:layout_width="match_parent"
+              android:layout_height="wrap_content"
+              android:visibility="gone" />
 
-</com.google.android.setupdesign.GlifLayout>
+      </LinearLayout>
+
+  </com.google.android.setupdesign.GlifLayout>
+</RelativeLayout>
diff --git a/res/layout/usage_side_label.xml b/res/layout/usage_side_label.xml
index bfb3ab8..013f515 100644
--- a/res/layout/usage_side_label.xml
+++ b/res/layout/usage_side_label.xml
@@ -17,5 +17,6 @@
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
-    android:hyphenationFrequency="normal"
+    android:hyphenationFrequency="normalFast"
+    android:lineBreakWordStyle="phrase"
     android:textAppearance="?android:attr/textAppearanceSmall" />
diff --git a/res/menu/storage_volume.xml b/res/menu/storage_volume.xml
index 422355d..b8725fb 100644
--- a/res/menu/storage_volume.xml
+++ b/res/menu/storage_volume.xml
@@ -29,10 +29,10 @@
         android:title="@string/storage_menu_format" />
     <item
         android:id="@+id/storage_format_as_portable"
-        android:title="@string/storage_menu_format_public" />
+        android:title="@string/storage_menu_format_option" />
     <item
         android:id="@+id/storage_format_as_internal"
-        android:title="@string/storage_menu_format_private" />
+        android:title="@string/storage_menu_format_option" />
     <item
         android:id="@+id/storage_migrate"
         android:title="@string/storage_menu_migrate" />
diff --git a/res/raw/lottie_power_menu.json b/res/raw/lottie_long_press_power_for_assistant.json
similarity index 100%
rename from res/raw/lottie_power_menu.json
rename to res/raw/lottie_long_press_power_for_assistant.json
diff --git a/res/raw/lottie_long_press_power_for_power_menu.json b/res/raw/lottie_long_press_power_for_power_menu.json
new file mode 100644
index 0000000..09e2f0a
--- /dev/null
+++ b/res/raw/lottie_long_press_power_for_power_menu.json
@@ -0,0 +1 @@
+{"v":"5.9.0","fr":60,"ip":0,"op":241,"w":412,"h":300,"nm":"Home Button_Digital Assistant_LPP","ddd":0,"assets":[{"id":"comp_0","nm":"Power menu","fr":60,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":".grey200","cl":"grey200","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[24,24,0],"ix":2,"l":2},"a":{"a":0,"k":[24,24,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.293,1.1],[0,0],[0,-1.46],[2.58,0],[0,2.58],[-1.047,0.853],[0,0],[0,-1.826],[-3.313,0],[0,3.314]],"o":[[0,0],[1.054,0.846],[0,2.58],[-2.58,0],[0,-1.46],[0,0],[-1.294,1.1],[0,3.314],[3.314,0],[0,-1.826]],"v":[[3.887,-4.553],[2.94,-3.606],[4.667,0],[0,4.667],[-4.666,0],[-2.946,-3.613],[-3.886,-4.553],[-6,0],[0,6],[6,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.667,-6],[-0.666,-6],[-0.666,0.667],[0.667,0.667]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.909803921569,0.917647058824,0.929411764706,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[24,24],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":6,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":".grey800","cl":"grey800","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[24,24,0],"ix":2,"l":2},"a":{"a":0,"k":[24,24,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-9.941,0],[0,-9.941],[9.941,0],[0,9.941]],"o":[[9.941,0],[0,9.941],[-9.941,0],[0,-9.941]],"v":[[0,-18],[18,0],[0,18],[-18,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.235294117647,0.250980392157,0.262745098039,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[24,24],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5","np":4,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-9.941,0],[0,-9.941],[9.941,0],[0,9.941]],"o":[[9.941,0],[0,9.941],[-9.941,0],[0,-9.941]],"v":[[0,-18],[18,0],[0,18],[-18,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.235294117647,0.250980392157,0.262745098039,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[24,68],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 4","np":4,"cix":2,"bm":0,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-9.941,0],[0,-9.941],[9.941,0],[0,9.941]],"o":[[9.941,0],[0,9.941],[-9.941,0],[0,-9.941]],"v":[[0,-18],[18,0],[0,18],[-18,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.235294117647,0.250980392157,0.262745098039,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[68,24],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3","np":4,"cix":2,"bm":0,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-9.941,0],[0,-9.941],[9.941,0],[0,9.941]],"o":[[9.941,0],[0,9.941],[-9.941,0],[0,-9.941]],"v":[[0,-18],[18,0],[0,18],[-18,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.235294117647,0.250980392157,0.262745098039,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[68,68],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":4,"cix":2,"bm":0,"ix":4,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":".grey900","cl":"grey900","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[46,46,0],"ix":2,"l":2},"a":{"a":0,"k":[46,46,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-6.627,0],[0,0],[0,-6.627],[0,0],[6.627,0],[0,0],[0,6.627],[0,0]],"o":[[0,0],[6.627,0],[0,0],[0,6.627],[0,0],[-6.627,0],[0,0],[0,-6.627]],"v":[[-34,-46],[34,-46],[46,-34],[46,34],[34,46],[-34,46],[-46,34],[-46,-34]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.125490196078,0.129411764706,0.141176470588,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[46,46],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6","np":4,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":8,"ty":3,"nm":"Null 7","sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[206,264.875,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[10,10,100],"ix":6,"l":2}},"ao":0,"ip":0,"op":1500,"st":0,"bm":0},{"ddd":0,"ind":15,"ty":0,"nm":"Power menu","refId":"comp_0","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":89,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":120,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":190,"s":[100]},{"t":210,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0,"y":1},"o":{"x":0.2,"y":0},"t":80,"s":[206,175,0],"to":[0,-4.167,0],"ti":[0,4.167,0]},{"i":{"x":0.3,"y":0.3},"o":{"x":0.167,"y":0.167},"t":120,"s":[206,150,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.999,"y":1},"o":{"x":0.3,"y":0},"t":190,"s":[206,150,0],"to":[0,4.167,0],"ti":[0,-4.167,0]},{"t":230,"s":[206,175,0]}],"ix":2,"l":2},"a":{"a":0,"k":[46,46,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"w":92,"h":92,"ip":80,"op":980,"st":80,"bm":0},{"ddd":0,"ind":30,"ty":4,"nm":".grey300","cl":"grey300","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[206,150,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[5.243,0],[0,0],[0,5.244],[0,0],[-5.243,0],[0,0],[0,-5.244]],"o":[[0,5.244],[0,0],[-5.243,0],[0,0],[0,-5.244],[0,0],[5.243,0],[0,0]],"v":[[64.188,114.112],[54.679,123.622],[-54.679,123.622],[-64.188,114.112],[-64.188,-114.112],[-54.679,-123.622],[54.679,-123.622],[64.188,-114.112]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[6.554,0],[0,0],[0,-6.555],[0,0],[-6.554,0],[0,0],[0,6.555],[0,0],[0,1.313],[0,0],[1.313,0]],"o":[[0,-6.555],[0,0],[-6.554,0],[0,0],[0,6.555],[0,0],[6.554,0],[0,0],[1.313,0],[0,0],[0,-1.313],[0,0]],"v":[[66.566,-114.112],[54.679,-126],[-54.679,-126],[-66.566,-114.112],[-66.566,114.112],[-54.679,126],[54.679,126],[66.566,114.112],[66.566,-2.378],[68.943,-4.755],[68.943,-28.528],[66.566,-30.906]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.854901969433,0.86274510622,0.878431379795,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":3,"cix":2,"bm":0,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1500,"st":0,"bm":0},{"ddd":0,"ind":31,"ty":4,"nm":".grey300","cl":"grey300","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0.605],"y":[0.583]},"o":{"x":[0.36],"y":[0]},"t":40,"s":[206]},{"i":{"x":[0.635],"y":[0.851]},"o":{"x":[0.314],"y":[3.484]},"t":60,"s":[205.339]},{"i":{"x":[0.456],"y":[1]},"o":{"x":[0.665],"y":[-0.02]},"t":119.92,"s":[205.15]},{"t":139.919921875,"s":[206]}],"ix":3},"y":{"a":0,"k":150,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,1.313],[0,0],[1.313,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,-1.313],[0,0],[0,0],[0,0],[1.313,0]],"v":[[68.943,-52.302],[68.943,-61.811],[66.566,-64.188],[65.456,-64.188],[65.55,-49.906],[66.566,-49.924]],"c":true},"ix":2},"nm":"Path 3","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.854901969433,0.86274510622,0.878431379795,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1500,"st":0,"bm":0},{"ddd":0,"ind":32,"ty":4,"nm":".grey400","cl":"grey400","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[206,150,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[5.243,0],[0,0],[0,5.244],[0,0],[-5.243,0],[0,0],[0,-5.244]],"o":[[0,5.244],[0,0],[-5.243,0],[0,0],[0,-5.244],[0,0],[5.243,0],[0,0]],"v":[[64.188,114.112],[54.679,123.622],[-54.679,123.622],[-64.188,114.112],[-64.188,-114.112],[-54.679,-123.622],[54.679,-123.622],[64.188,-114.112]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741176486015,0.75686275959,0.776470601559,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1500,"st":0,"bm":0},{"ddd":0,"ind":33,"ty":4,"nm":"Gesture Tap","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[273.205,92.869,0],"ix":2,"l":2},"a":{"a":0,"k":[273.205,92.869,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-5.226],[-5.226,0],[0,5.226],[5.226,0]],"o":[[0,5.226],[5.226,0],[0,-5.226],[-5.226,0]],"v":[[-9.463,0],[0,9.463],[9.463,0],[0,-9.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.40000000596,0.615686297417,0.964705884457,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[273.205,92.869],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.239,0.239],"y":[0.604,0.604]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"t":35,"s":[13,13]},{"i":{"x":[0.596,0.596],"y":[1,1]},"o":{"x":[0.182,0.182],"y":[0.996,0.996]},"t":55,"s":[100,100]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.793,0.793],"y":[0,0]},"t":124.92,"s":[129,129]},{"t":139.919921875,"s":[13,13]}],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-8.26],[-8.26,0],[0,8.26],[8.26,0]],"o":[[0,8.26],[8.26,0],[0,-8.26],[-8.26,0]],"v":[[-14.957,0],[0,14.957],[14.957,0],[0,-14.957]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.68235296011,0.796078443527,0.980392158031,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[273.205,92.869],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.304,0.304],"y":[0.758,0.758]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"t":30,"s":[13,13]},{"i":{"x":[0.709,0.709],"y":[0.99,0.99]},"o":{"x":[0.196,0.196],"y":[1.618,1.618]},"t":50,"s":[100,100]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.609,0.609],"y":[-0.001,-0.001]},"t":125,"s":[113.775,113.775]},{"t":140,"s":[8,8]}],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":2,"cix":2,"bm":0,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1500,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 9c43f65..d631d46 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Wanneer jou kind Pixel Imprint gebruik, word prente gebruik om sy of haar vingerafdrukmodel op te dateer. Prente wat gebruik word om jou kind se vingerafdrukmodel te skep, word nooit geberg nie. Die vingerafdrukmodel word egter veilig op die foon geberg en verlaat nooit die foon nie. Alle verwerking vind veilig op die foon plaas."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Jy kan enige tyd in Instellings jou vingerafdrukprente en -model uitvee of Vingerafdrukslot afskakel. Vingerafdrukprente en -modelle word veilig op jou foon geberg totdat jy hulle uitvee."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Jy en jou kind kan enige tyd in Instellings sy of haar vingerafdrukprente en -model uitvee of Vingerafdrukslot afskakel. Vingerafdrukprente en -modelle word op die foon geberg totdat hulle uitgevee word."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Jou foon kan ontsluit word wanneer jy nie bedoel om dit te doen nie, soos as iemand dit teen jou vinger druk."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Jou foon kan ontsluit word wanneer jy nie bedoel om dit te doen nie, soos as iemand dit teen jou vinger druk."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Jou tablet kan ontsluit word wanneer jy nie bedoel om dit te doen nie, soos as iemand dit teen jou vinger druk."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Jou toestel kan ontsluit word wanneer jy nie bedoel om dit te doen nie, soos as iemand dit teen jou vinger druk."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Jou kind se foon kan ontsluit word wanneer hulle nie bedoel om dit te doen nie, soos as iemand dit teen sy of haar vinger druk."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Gebruik vir die beste resultate ’n skermbeskermer wat Gemaak vir Google-gesertifiseer is. Jou vingerafdruk sal dalk nie met ander skermbeskermers werk nie."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Gebruik vir die beste resultate ’n skermbeskermer wat Gemaak vir Google-gesertifiseer is. Jou kind se vingerafdruk sal dalk nie met ander skermbeskermers werk nie."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustrasie met toestel en ligging van vingerafdruksensor"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Naam"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Goed"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Probeer weer"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Vee uit"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Raak die sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Plaas jou vinger op die sensor en lig dit op wanneer jy \'n vibrasie voel"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Klaar"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Oeps, dis nie die sensor nie"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Raak sensor op die agterkant van jou foon. Gebruik jou wysvinger."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registrasie is nie voltooi nie"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Tydlimiet vir vingerafdrukregistrasie is bereik. Probeer weer."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Vingerafdrukopstelling het uitgetel"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Probeer nou weer of stel jou vingerafdruk later in Instellings op"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Vingerafdrukregistrasie het nie gewerk nie. Probeer weer of gebruik \'n ander vinger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Voeg nog een by"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Volgende"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Pasmaak jou foon"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Probeer verskillende style, muurpapiere, en meer"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Sluimerskerm"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"sluimerskerm"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Gebruik sluimerskerm"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Terwyl dit laai of gedok is"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Enige een"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Terwyl dit laai"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Terwyl dit gedok is"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nooit"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Af"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Skakel sluimerskerm aan om te beheer wat gebeur wanneer die foon gedok is en/of slaap."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Wanneer om te begin"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Huidige sluimerskerm"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Instellings"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Outomatiese helderheid"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Lig op om wakker te maak"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Stemmingvertoning"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Stel \'n PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Stel \'n werk-PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Stel \'n patroon"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Stel ’n patroon om die toestel te ontsluit vir bykomende sekuriteit"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Stel \'n werkpatroon"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Stel wagwoord vir vingerafdruk"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Stel patroon vir vingerafdruk"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Noodprogram"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Stel programvoorkeure terug"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Stel programvoorkeure terug?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Dit sal al die voorkeure terugstel vir:\n\n"<li>"Gedeaktiveerde programme"</li>\n<li>"Gedeaktiveerdeprogram-kennisgewings"</li>\n<li>"Verstekprogramme vir handelinge"</li>\n<li>"Agtergronddatabeperkings vir programme"</li>\n<li>"Enige toestemmingbeperkings"</li>\n\n"Jy sal geen programdata verloor nie."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Dit sal alle voorkeure terugstel vir:\n\n"<li>"Gedeaktiveerde programme"</li>\n<li>"Gedeaktiveerde programkenisgewings"</li>\n<li>"Verstekprogramme vir handelinge"</li>\n<li>"Agtergronddatabeperkings vir programme"</li>\n<li>"Enige toestemmingbeperkings"</li>\n<li>"Batterygebruikinstellings"</li>\n\n"Jy sal nie enige programdata verloor nie."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Stel programme terug"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Bestuur spasie"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Stel instellings terug"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Skermgrootte- en teksinstellings is teruggestel"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Stel skermgrootte en teks terug?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Jou skermgrootte en teksvoorkeure sal na die foon se oorspronklike instellings teruggestel word"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Jou skermgrootte en teksvoorkeure sal na die foon se oorspronklike instellings teruggestel word"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Jou skermgrootte en teksvoorkeure sal na die tablet se oorspronklike instellings teruggestel word"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Stel terug"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Enige naweekplanne?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Op pad strand toe. Wil jy saamgaan?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Geen gebruik sedert dit laas volgelaai is nie"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nie in afgelope 24 uur gebruik nie"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Ander gebruikers"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Skatting van oorblywende batterytyd word op jou toestelgebruik gegrond"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Geskatte tyd oor"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Tot battery volgelaai is"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Volle aktiveerwoord en interaksie"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Eenvoudige spraak na teks"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Hierdie steminvoerdiens sal altyd-aan-stemmonitering kan verrig en stemgeaktiveerde programme namens jou kan beheer. Dit kom van die <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>-program af. Wil jy die gebruik van hierdie diens aktiveer?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Herkenninginstellings op toestel"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Herkenning op toestel"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Spraakherkenning op toestel"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Voorkeurenjin"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Enjininstellings"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Spraaktempo en -toonhoogte"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Vee uit"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Alle programme en data in hierdie sessie sal uitgevee word."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Verwyder"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gas (Jy)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Gebruikers"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Ander gebruikers"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Vee gasaktiwiteit uit"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Vee alle gasprogramme en -data uit wanneer jy gasmodus verlaat"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Vee gasaktiwiteit uit?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Programme en data van hierdie gastesessie sal nou uitgevee word, en alle toekomstige gasaktiwiteit sal uitgevee word elke keer wanneer jy gasmodus verlaat"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Skakel foonoproepe aan"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Skakel foonoproepe en SMS aan"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Vee gebruiker uit"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Alle \"<xliff:g id="APP_NAME">%1$s</xliff:g>\"-kennisgewings"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Alle <xliff:g id="APP_NAME">%1$s</xliff:g>-kennisgewings"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Aanpasbare kennisgewings"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> kennisgewings per dag</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> kennisgewing per dag</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Omtrent <xliff:g id="NUMBER_1">%,d</xliff:g> kennisgewings per dag</item>
+      <item quantity="one">Omtrent <xliff:g id="NUMBER_0">%d</xliff:g> kennisgewing per dag</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> kennisgewings per week</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> kennisgewing per week</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Omtrent <xliff:g id="NUMBER_1">%,d</xliff:g> kennisgewings per week</item>
+      <item quantity="one">Omtrent <xliff:g id="NUMBER_0">%d</xliff:g> kennisgewing per week</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nooit"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Toestel- en programkennisgewings"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Doen niks nie"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibreer"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Demp"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"As jy wil aktiveer, moet jy eers \"Druk en Hou aan/af-skakelaar\" na die aan/af-kieslys verander."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"As jy wil aktiveer, moet jy eers \"Druk en hou aan/af-skakelaar\" na die aan/af-kieslys verander."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Netwerkbesonderhede"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Programme op jou foon kan jou toestelnaam sien. Ander mense sal dit dalk ook kan sien wanneer jy aan Bluetooth-toestelle koppel, aan \'n wi-fi-netwerk koppel of \'n wi-fi-warmkol opstel."</string>
     <string name="devices_title" msgid="649715719278562515">"Toestelle"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"toestelkontroles"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kaarte en passe"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kaarte en passe"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Druk en hou aan/af-skakelaar"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Druk en hou vir die Assistent"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Druk en hou vir die aan/af-kieslys"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Druk en hou is gedeaktiveer"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Druk en hou aan/af-skakelaar"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Druk en hou aan/af-skakelaar om toegang te kry"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Aan/af-kieslys"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitale assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Kry toegang tot digitale assistent"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Kry toegang tot aan/af-kieslys"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Om dit te gebruik, moet jy eers \'n skermslot stel"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Hou in vir Assistent"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Aktiveer die Assistent deur die aan/af-skakelaar te hou"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Aan/af- en noodkieslys:\nDruk tegelyk aan/af-skakelaar en volume harder."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Keer dat dit lui:\nKortpad in die volumekieslys beskikbaar."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Aan/af-kieslys:\nDruk die aan/af-skakelaar en Volume Harder-knoppie gelyk"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Keer dat dit lui:\nDruk ’n volumeknoppie vir die kortpad"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Hoe lank om te druk en hou"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Verstel sensitiwiteit deur te kies hoe lank jy die aan/af-skakelaar moet druk en hou"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kort"</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 1e45d68..de6b426 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Pixel Imprintን ሲጠቀሙ ምስሎች የጣት አሻራዎን ሞዴል ለማዘመን ስራ ላይ ይውላሉ። የልጅዎን የጣት አሻራ ሞዴል ለመፍጠር ስራ ላይ የዋሉ ምስሎች በጭራሽ አይከማቹም፣ ነገር ግን የጣት አሻራ ሞዴሉ በስልኩ ላይ ደህንነቱ በተጠበቀ ሁኔታ የሚከማች ሲሆን በጭራሽ ከስልኩ አይወጣም። ሁሉም ሂደቶች በስልኩ ላይ ደህንነቱ በተጠበቀ ሁኔታ ይከሰታል።"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"የጣት አሻራዎን ምስሎች እና ሞዴል መሰረዝ ወይም በቅንብሮች ውስጥ በማንኛውም ጊዜ በጣት አሻራ መከፈትን ማጥፋት ይችላሉ። የጣት አሻራ ምስሎች እና ሞዴሎች እስኪሰርዟቸው ድረስ በስልኩ ላይ ይቀመጣሉ።"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"እርስዎ እና ልጅዎ የጣት አሻራቸውን ምስሎች እና ሞዴል መሰረዝ ወይም በቅንብሮች ውስጥ በማንኛውም ጊዜ በጣት አሻራ መክፈቻን ማጥፋት ትችላላችሁ። የጣት አሻራ ምስሎች እና ሞዴሎች እስኪሰረዙ ድረስ በስልኩ ላይ ይቀመጣሉ።"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"የእርስዎ ስልክ ለምሳሌ የሆነ ሰው በግድ ወደ እርስዎ ጣት ቢያስጠጋው እርስዎ ሳይፈለጉ ሊከፈት ይችላል።"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"የእርስዎ ስልክ ለምሳሌ የሆነ ሰው በግድ ወደ እርስዎ ጣት ቢያስጠጋው እርስዎ ሳይፈለጉ ሊከፈት ይችላል።"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"የእርስዎ ጡባዊ እርስዎ ሳይፈልጉ ሊከፈት ይችላል፣ ለምሳሌ የሆነ ሰው ወደ ጣትዎ አስጠግቶ ቢይዘው።"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"የእርስዎ መሣሪያ ለምሳሌ የሆነ ሰው ወደ ጣትዎ አስጠግቶ ቢይዘው እርስዎ ሳይፈልጉ ሊከፈት ይችላል።"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"ልጅዎ ሳይፈልጉ ስልካቸው ሊከፈት ይችላል፣ ለምሳሌ የሆነ ሰው ስልኩን ወደ ጣታቸው ቢያስጠጋው።"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ለምርጥ ውጤቶች ለGoogle የተሰራ የተረጋገጠ የማያ ገጽ መከላከያን ይጠቀሙ። በሌሎች የማያ ገጽ መከላከያዎች አማካኝነት የጣት አሻራዎ ላይሰራ ይችላል።"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ለምርጥ ውጤቶች ለGoogle የተሰራ የተረጋገጠ የማያ ገጽ መከላከያን ይጠቀሙ። በሌሎች የማያ ገጽ መከላከያዎች አማካኝነት የልጅዎ የጣት አሻራ ላይሰራ ይችላል።"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ከመሣሪያ እና የጣት አሻራ አነፍናፊ መገኛ አካባቢ መግለጫ ስዕል ጋር"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"ስም"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"እሺ"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"እንደገና ሞክር"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"ሰርዝ"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"ዳሳሹን ይንኩ"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"ጣትዎን በዳሳሹ ላይ ያስቀምጡትና ንዝረት ከተሰማዎት በኋላ ያንሱት"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"ተከናውኗል"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"አረግ አረግ፣ አነፍናፊው ያ አይደለም"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"በእርስዎ ስልክ ጀርባ ላይ ያለውን ዳሳሽ ይንኩ። የእርስዎን አመልካች ጣት ይጠቀሙ።"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ምዝገባ አልተጠናቀቀም"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"የጣት አሻራ ምዝገባ ጊዜ ገደብ ላይ ተደርሷል። እንደገና ይሞክሩ።"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"የጣት አሻራ ውቅረት ጊዜው አብቅቷል"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"አሁን እንደገና ይሞክሩ ወይም በኋላ ላይ በቅንብሮች ውስጥ የጣት አሻራዎን ያዋቅሩ"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"የጣት አሻራ ምዝገባ አልሰራም። እንደገና ይሞክሩ ወይም የተለየ ጣት ይጠቀሙ።"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"ሌላ ያክሉ"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"ቀጣይ"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"ስልክዎን ያብጁት"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"የተለያዩ ቅጦችን፣ ልጣፎችን እና ተጨማሪ ነገሮችን ይሞክሩ"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"የማያ ገጽ ማቆያ"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"የማያ ገጽ ማቆያ"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"የማያ ገጽ አዳኝን ይጠቀሙ"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ኃይል እየሞላ ወይም ተተክሎ ሳለ"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"ማናቸውም"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ባትሪ በመሙላት ላይ ሳለ"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ተተክሎ ሳለ"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"በጭራሽ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ጠፍቷል"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ስልኩ ሲተከል እና/ወይም ሲተኛ ምን እንደሚከሰት ለመቆጣጠር የገጽ ማያ ማቆያን ያብሩ።"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"መቼ እንደሚጀመር"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"የአሁኑ ማያ ገጽ ማሳረፊያ"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ቅንብሮች"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ራስ ሰርብሩህነት"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"ለማንቃት ያንሱ"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ከባቢያዊ ማሳያ"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ፒን ያቀናብሩ"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"የሥራ ፒን ያቀናብሩ"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ስርዓተ-ጥለት ያቀናብሩ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ለተጨማሪ ደህንነት ሲባል መሣሪያውን ለመክፈት ስርዓተ ጥለት ያቀናብሩ"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"የሥራ ስርዓተ-ጥለት ያቀናብሩ"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"የጣት አሻራን ለመጠቀም የይለፍ ቃል ያቀናብሩ"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"የጣት አሻራን ለመጠቀም፣ ሥርዓተ ጥለትን ያቀናብሩ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"የድንገተኛ አደጋ መተግበሪያ"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"የመተግበሪያዎች ምርጫዎችን ዳግም አስጀምር"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"የመተግበሪያዎች ምርጫዎች ዳግም ይጀመሩ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ይሄ ሁሉንም የእነኚህ ምርጫዎች ዳግም ያስጀምራቸዋል፦\n\n"<li>"የተሰናከሉ መተግበሪያዎች"</li>\n<li>"የተሰናከሉ መተግበሪያ ማሳወቂያዎች"</li>\n<li>"ለእርምጃዎች ነባሪ መተግበሪያዎች"</li>\n<li>"ለመተግበሪያዎች የጀርባ ውሂብ ገደቦች"</li>\n<li>"ማናቸውም የፈቃድ ገደቦች"</li>\n\n"ምንም የመተግበሪያ ውሂብ አይጠፋብዎትም።"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ይሄ ሁሉንም የሚተሉትን ምርጫዎችን ዳግም ያስጀምራቸዋል፦\n\n"<li>"የተሰናከሉ መተግበሪያዎች"</li>\n<li>"የተሰናከሉ መተግበሪያ ማሳወቂያዎች"</li>\n<li>"ለእርምጃዎች ነባሪ መተግበሪያዎች"</li>\n<li>"የመተግበሪያዎች የጀርባ ውሂብ ገደቦች"</li>\n<li>"ማናቸውም የፈቃድ ገደቦች"</li>\n<li>"የባትሪ አጠቃቀም ቅንብሮች"</li>\n\n"ምንም የመተግበሪያ ውሂብ አይጠፋብዎትም።"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"መተግበሪያዎችን ዳግም አስጀምር"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ባዶ ቦታ አደራጅ"</string>
     <string name="filter" msgid="9039576690686251462">"አጣራ"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ቅንብሮችን ዳግም አስጀምር"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"የማሳያ መጠን እና የጽሑፍ ቅንብሮች ዳግም ተጀምረዋል"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"የማሳያ መጠን እና ጽሑፍ ዳግም ይጀመር?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"የማሳያ መጠንዎ እና የጽሑፍ ምርጫዎችዎ ወደ ስልኩ የመጀመሪያ ቅንብሮች ዳግም ይቀናበራሉ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"የማሳያ መጠንዎ እና የጽሑፍ ምርጫዎችዎ ወደ ስልኩ የመጀመሪያ ቅንብሮች ዳግም ይቀናበራሉ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"የማሳያ መጠንዎ እና የጽሁፍ ምርጫዎችዎ ወደ ጡባዊው የመጀመሪያ ቅንብሮች ዳግም ይጀምራሉ"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ዳግም አስጀምር"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"ለሳምንቱ መጨረሻ ቀናት ዕቅዶች አለዎት?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ወደ ባህር ዳርቻ እየሄድን ነው። መቀላቀል ይፈልጋሉ?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"ካለፈው ሙሉ ኃይል ሙሌት በኋላ ጥቅም ላይ አልዋለም"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"ላለፉት 24 ሰዓታት ጥቅም ላይ አልዋለም"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"ሌሎች ተጠቃሚዎች"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"የቀረው የባትሪ ዕድሜ ግምት በእርስዎ የመሣሪያ አጠቃቀም ላይ የተመረኮዘ ነው"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"የተገመተው ቀሪ ጊዜ"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"ኃይሉ ሙሉ እስኪሞላ ድረስ"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"ሙሉ ትኩስ ቃል እና መስተጋብር"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"ቀላል ንግግር ወደ ጽሑፍ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ይህ የድምጽ ግቤት አገልግሎት እርስዎን ወክሎ ሁልጊዜ የሚበራ የድምጽ ክትትልን እና በድምጽ የሚነቁ መተግበሪያዎችን መቆጣጠር ይችላል። ከ<xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> መተግበሪያ ነው የመጣው። የዚህን አገልግሎት መጠቀም ያነቁ?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"የመሣሪያ ላይ ለይቶ ማወቂያ ቅንብሮች"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"የመሣሪያ ላይ ለይቶ ማወቂያ"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"የመሣሪያ ላይ ንግግር ማወቂያ"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"የተመረጠው ፕሮግራም"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"የፕሮግራም ቅንብሮች"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"የድምጽ ፍጠነት እና ውፍረት"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ሰርዝ"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"በዚህ ክፍለ-ጊዜ ውስጥ ያሉ ሁሉም መተግበሪያዎች እና ውሂብ ይሰረዛሉ።"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"አስወግድ"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"እንግዳ (እርስዎ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ተጠቃሚዎች"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"ሌሎች ተጠቃሚዎች"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"የእንግዳ እንቅስቃሴን ይሰርዙ"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ከእንግዳ ሁነታ ሲወጡ ሁሉንም የእንግዳ መተግበሪያዎችን እና ውሂብን ይሰርዙ"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"የእንግዳ እንቅስቃሴ ይሰረዝ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"የዚህ የእንግዳ ክፍለ-ጊዜ መተግበሪያዎች እና ውሂብ አሁን ይሰረዛሉ እና ከእንግዳ ሁነታ በወጡ ቁጥር ሁሉም የወደፊት የእንግዳ እንቅስቃሴዎች ይሰረዛሉ።"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"የስልክ ጥሪዎችን አብራ"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ስልክ ጥሪዎችን እና ኤስኤምኤስን አብራ"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ተጠቃሚን ሰርዝ"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"ሁሉም «<xliff:g id="APP_NAME">%1$s</xliff:g>» ማሳወቂያዎች"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"ሁሉም የ<xliff:g id="APP_NAME">%1$s</xliff:g> ማሳወቂያዎች"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"እንደሁኔታው ተስማሚ ማሳወቂያዎች"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> ማሳወቂያዎች በቀን</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ማሳወቂያዎች በቀን</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">በቀን ወደ <xliff:g id="NUMBER_1">%,d</xliff:g> ያህል ማሳወቂያ</item>
+      <item quantity="other">በቀን ወደ <xliff:g id="NUMBER_1">%,d</xliff:g> ያህል ማሳወቂያዎች</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> ማሳወቂያዎች በሳምንት</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ማሳወቂያዎች በሳምንት</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">በሳምንት ወደ <xliff:g id="NUMBER_1">%,d</xliff:g> ያህል ማሳወቂያ</item>
+      <item quantity="other">በሳምንት ወደ <xliff:g id="NUMBER_1">%,d</xliff:g> ያህል ማሳወቂያዎች</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"በጭራሽ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"መሣሪያ እና የመተግበሪያ ማሳወቂያዎች"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"ምንም አታድርግ"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"ንዘር"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"ድምጸ-ከል አድርግ"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ለማንቃት መጀመሪያ በኃይል ምናሌው ላይ «የኃይል ቁልፍን ተጭነው ይያዙ»ን ይቀይሩ።"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ለማንቃት መጀመሪያ «የማብሪያ/ማጥፊያ ቁልፉን ተጭነው ይያዙ»ን ወደ የኃይል ምናሌው ይለውጡ።"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"የአውታረ መረብ ዝርዝሮች"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"የመሣሪያዎ ስም በእርስዎ ስልክ ላይ ላሉ መተግበሪያዎች ይታያል። እንዲሁም ከብሉቱዝ መሣሪያዎች ጋር ሲገናኙ፣ ከWi-Fi አውታረ መረብ ሲገናኙ ወይም የWi-Fi መገናኛ ነጥብን ሲያቀናብሩ በሌሎች ሰዎች የሚታይ ሊሆን ይችላል።"</string>
     <string name="devices_title" msgid="649715719278562515">"መሣሪያዎች"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"የመሣሪያ መቆጣጠሪያዎች"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"ካርዶች እና ማለፊያዎች"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"ካርዶች እና ማለፊያዎች"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"የኃይል አዝራሩን ተጭነው ይያዙ"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"ለረዳቱ ተጭነው ይያዙ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"ለኃይል ምናሌው ተጭነው ይያዙ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"ተጭነው መያዝ ተሰናክሏል"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"የማብሪያ/ማጥፊያ ቁልፍን ተጭነው ይያዙ"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ለመድረስ የማብሪያ/ማጥፊያ ቁልፉን ተጭነው ይያዙ"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"የኃይል ምናሌ"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ዲጂታል ረዳት"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ዲጂታል ረዳት ላይ ይድረሱ"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"የኃይል ምናሌ ላይ ይድረሱ"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ለመጠቀም መጀመሪያ የማያ ገጽ መቆለፊያን ያቀናብሩ"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"ለረዳት ይያዙ"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"የኃይል አዝራሩን በመያዝ ረዳቱን ያስነሱ"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"የኃይል እና ድንገተኛ አደጋ ምናሌ፦\nበተመሳሳይ ጊዜ ኃይልን እና ድምፅ ጨምርን ይጫኑ።"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"መደወልን ይከላከሉ፦\nበድምጽ ምናሌው ውስጥ አቋራጭ ይገኛል።"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"የኃይል ምናሌ፦\nየማብሪያ/ማጥፊያ ቁልፉን እና የድምፅ አዝራሩን በአንድ ላይ ይጫኑ"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"የጥሪ ጩኸትን ይከላከሉ፦\nአቋራጩን ለማግኘት አንድ የድምፅ አዝራር ይጫኑ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"የመጫን እና የመያዝ የቆይታ ጊዜ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"የማብሪያ/ማጥፊያ አዝራሩን ለምን ያህል ጊዜ ተጭኖ እንደሚያዝ በመምረጥ ትብነትን ያስተካክሉ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"አጭር"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 92ed144..aee8ec9 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -480,7 +480,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"‏عندما يستخدم ميزة Pixel Imprint، يتم استخدام الصور لتعديل نموذج بصمة إصبعه. لا يتم مطلقًا تخزين الصور المستخدمة لإنشاء نموذج بصمة إصبع طفلك، ولكن يتم تخزين نموذج بصمة الإصبع بأمان على الهاتف ولا يتم نقله خارج الهاتف مطلقًا. تتم كل عمليات المعالجة بأمان على الهاتف."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"يمكنك حذف صور بصمة الإصبع ونموذجها أو إيقاف ميزة \"فتح الجهاز ببصمة الإصبع\" في أي وقت في \"الإعدادات\". يتم تخزين صور بصمة الإصبع ونموذجها على الهاتف إلى أن تحذفها."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"يمكنك أنت وطفلك حذف نموذج وصور بصمة إصبعه أو إيقاف ميزة \"فتح الجهاز ببصمة الإصبع\" في أي وقت في \"الإعدادات\". يتم تخزين صور بصمة الإصبع ونموذجها على الهاتف إلى أن يتم حذفها."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"يمكن فتح قفل هاتفك بدون قصدك، مثلاً عندما يضعه شخص على إصبعك."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"يمكن فتح قفل هاتفك بدون قصدك، مثلاً عندما يضعه شخص على إصبعك."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"يمكن فتح قفل جهازك اللوحي بدون أن تتعمد ذلك، مثلاً عندما يضعه شخص على إصبعك."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"يمكن فتح قفل جهازك بدون أن تتعمد ذلك، مثلاً عندما يضعه شخص على إصبعك."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"يمكن فتح قفل هاتف طفلك بدون قصده، مثلاً عندما يضعه شخص على إصبعه."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"‏للحصول على أفضل النتائج، استخدم واقي شاشة مُعتمَد ويحمل شعار Made for Google. قد لا تعمل بصمة إصبعك مع واقيات الشاشة الأخرى."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"‏للحصول على أفضل النتائج، استخدم واقي شاشة مُعتمَد ويحمل شعار Made for Google. قد لا تعمل بصمة إصبع طفلك مع واقيات الشاشة الأخرى."</string>
@@ -530,6 +532,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"صورة توضيحية تبرز الجهاز وموقع جهاز استشعار بصمة الإصبع"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"الاسم"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"حسنًا"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"إعادة المحاولة"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"حذف"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"المس زر الاستشعار"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"ضع إصبعك على زر الاستشعار ثمّ ارفعه بعد اهتزاز الجهاز"</string>
@@ -607,8 +610,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"تم"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"عفوًا، هذا ليس جهاز الاستشعار"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"المس زر الاستشعار في الجزء الخلفي لهاتفك. استخدم إصبع السبابة."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"لم يكتمل التسجيل"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"تم بلوغ الحد الأقصى لزمن تسجيل بصمة الإصبع. يُرجى إعادة المحاولة."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"انتهت مهلة إعداد بصمة الإصبع"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"أعِد المحاولة الآن أو اضبُط إعدادات بصمة الإصبع لاحقًا في \"الإعدادات\"."</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"تعذّر تسجيل بصمة الإصبع. يُرجى إعادة المحاولة أو استخدام إصبع آخر."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"إضافة بصمة إصبع أخرى"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"التالي"</string>
@@ -1528,17 +1531,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"تخصيص الهاتف"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"يمكنك تجربة أنماط وخلفيات مختلفة، والمزيد."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"شاشة الاستراحة"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"شاشة الاستراحة"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"استخدام شاشة الاستراحة"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"أثناء الشحن أو الإرساء"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"أيهما"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"أثناء الشحن"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"أثناء الإرساء"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"عدم التشغيل أبدًا"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"إيقاف"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"للتحكم في ما يحدث عند إرساء الهاتف و/أو دخوله حالة السكون، عليك تشغيل شاشة التوقف."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"وقت البدء"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"شاشة الاستراحة الحالية"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"إعدادات"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"سطوع تلقائي"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"الرفع لتنبيه الجهاز"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"العرض على الشاشة"</string>
@@ -2034,6 +2035,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ضبط رقم تعريف شخصي"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ضبط رقم تعريف لملف العمل"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ضبط نقش"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"لمزيد من الأمان، عليك ضبط نقش لفتح قفل الجهاز."</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ضبط نقش للملف الشخصي للعمل"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"لاستخدام بصمة الإصبع، يُرجى إعداد كلمة مرور"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"لاستخدام بصمة الإصبع، يُرجى رسم نقش من ابتكارك"</string>
@@ -2195,7 +2197,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"تطبيق الطوارئ"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"إعادة ضبط الإعدادات المفضّلة للتطبيقات"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"هل تريد إعادة ضبط الإعدادات المفضّلة للتطبيقات؟"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"يؤدي ذلك إلى إعادة ضبط جميع الإعدادات المفضَّلة لما يلي:\n\n"<li>"التطبيقات الموقوفة"</li>\n<li>"إشعارات التطبيقات الموقوفة"</li>\n<li>"التطبيقات التلقائية للإجراءات"</li>\n<li>"قيود بيانات الخلفية للتطبيقات"</li>\n<li>"أيّ قيود على الأذونات"</li>\n\n"ولن تفقد أيّ بيانات للتطبيقات."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"سيؤدي هذا الإجراء إلى إعادة ضبط جميع الإعدادات المفضّلة لـ:\n\n"<li>"التطبيقات غير المفعّلة"</li>\n<li>"إشعارات التطبيقات غير المفعّلة"</li>\n<li>"التطبيقات التلقائية للإجراءات"</li>\n<li>"قيود بيانات الخلفية للتطبيقات"</li>\n<li>"أي قيود على الأذونات"</li>\n<li>"إعدادات استخدام البطارية"</li>\n\n"لن تفقد أي بيانات تتعلّق بالتطبيقات."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"إعادة ضبط التطبيقات"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"إدارة المساحة"</string>
     <string name="filter" msgid="9039576690686251462">"تصفية"</string>
@@ -2450,7 +2452,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"إعادة ضبط الإعدادات"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"تمت إعادة ضبط إعدادات حجم الشاشة والنص."</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"هل تريد إعادة ضبط حجم الشاشة والنص؟"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ستتم إعادة ضبط إعداداتك المفضّلة لحجم الشاشة والنص على الإعدادات الأصلية للهاتف."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ستتم إعادة ضبط إعداداتك المفضّلة لحجم الشاشة والنص على الإعدادات الأصلية للهاتف."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ستتم إعادة ضبط إعداداتك المفضّلة لحجم الشاشة والنص على الإعدادات الأصلية للجهاز اللوحي."</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"إعادة الضبط"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"هل خطّطت لعطلة نهاية الأسبوع؟"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"سأذهب إلى الشاطئ. ما رأيك في الذهاب معي؟"</string>
@@ -3086,6 +3089,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"لم يتم استخدام البطارية منذ آخر عملية شحن كاملة."</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"لم يتم استخدام البطارية في آخر 24 ساعة."</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"مستخدمون آخرون"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"يستند تقدير شحن البطارية المتبقي على استخدام الجهاز"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"الوقت التقديري المتبقي"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"إلى أن يتم الشحن بالكامل"</string>
@@ -3175,6 +3179,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"كلمات مهمة وتفاعل كامل"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"تحويل النص إلى كلام ببساطة"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"سيكون بمقدور خدمة الإدخال الصوتي هذه أداء مراقبة صوتية دائمة، علاوة على التحكم في التطبيقات الممكن بها ميزة الصوت نيابة عنك. وتتبع هذه الخدمة تطبيق <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. هل ترغب في تفعيل استخدام هذه الخدمة؟"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"إعدادات التعرّف على الجهاز فقط"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"التعرّف على الجهاز فقط"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"التعرف على الكلام على الجهاز فقط"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"المحرّك المفضّل"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"إعدادات المحرك"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"معدل سرعة الكلام وطبقة الصوت"</string>
@@ -3583,6 +3590,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"حذف"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"سيتم حذف كل التطبيقات والبيانات في هذه الجلسة."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"إزالة"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"الضيف (أنت)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"المستخدمون"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"مستخدمون آخرون"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"حذف نشاط الضيف"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"حذف جميع تطبيقات وبيانات وضع الضيف عند الخروج منه"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"هل تريد حذف نشاط وضع الضيف؟"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ستُحذف الآن التطبيقات والبيانات من جلسة الضيف هذه. بالإضافة إلى ذلك، ستُحذف جميع أنشطة الضيف المستقبلية في كل مرّة تخرج فيها من وضع الضيف."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"تفعيل المكالمات الهاتفية"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"تفعيل المكالمات الهاتفية والرسائل القصيرة"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"حذف حساب المستخدم"</string>
@@ -4183,21 +4197,21 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"جميع إشعارات \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"جميع إشعارات \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"الإشعارات التكيّفية"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="zero"><xliff:g id="NUMBER_1">%,d</xliff:g> إشعار تقريبًا في اليوم</item>
-      <item quantity="two">إشعاران (<xliff:g id="NUMBER_1">%,d</xliff:g>) تقريبًا في اليوم</item>
-      <item quantity="few"><xliff:g id="NUMBER_1">%,d</xliff:g> إشعارات تقريبًا في اليوم</item>
-      <item quantity="many"><xliff:g id="NUMBER_1">%,d</xliff:g> إشعارًا تقريبًا في اليوم</item>
-      <item quantity="other"><xliff:g id="NUMBER_1">%,d</xliff:g> إشعار تقريبًا في اليوم</item>
-      <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> إشعار تقريبًا في اليوم</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="zero">حوالي <xliff:g id="NUMBER_1">%,d</xliff:g> إشعار في اليوم</item>
+      <item quantity="two">حوالي إشعارين في يوم (<xliff:g id="NUMBER_1">%,d</xliff:g>)</item>
+      <item quantity="few">حوالي <xliff:g id="NUMBER_1">%,d</xliff:g> إشعارات في اليوم</item>
+      <item quantity="many">حوالي <xliff:g id="NUMBER_1">%,d</xliff:g> إشعارًا في اليوم</item>
+      <item quantity="other">حوالي <xliff:g id="NUMBER_1">%,d</xliff:g> إشعار في اليوم</item>
+      <item quantity="one">حوالي إشعار واحد في اليوم (<xliff:g id="NUMBER_0">%d</xliff:g>)</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="zero"><xliff:g id="NUMBER_1">%,d</xliff:g> إشعار تقريبًا في الأسبوع</item>
-      <item quantity="two">إشعاران (<xliff:g id="NUMBER_1">%,d</xliff:g>) تقريبًا في الأسبوع</item>
-      <item quantity="few"><xliff:g id="NUMBER_1">%,d</xliff:g> إشعارات تقريبًا في الأسبوع</item>
-      <item quantity="many"><xliff:g id="NUMBER_1">%,d</xliff:g> إشعارًا تقريبًا في الأسبوع</item>
-      <item quantity="other"><xliff:g id="NUMBER_1">%,d</xliff:g> إشعار تقريبًا في الأسبوع</item>
-      <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> إشعار تقريبًا في الأسبوع</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="zero">حوالي <xliff:g id="NUMBER_1">%,d</xliff:g> إشعار في الأسبوع</item>
+      <item quantity="two">حوالي إشعارين في الأسبوع (<xliff:g id="NUMBER_1">%,d</xliff:g>)</item>
+      <item quantity="few">حوالي <xliff:g id="NUMBER_1">%,d</xliff:g> إشعارات في الأسبوع</item>
+      <item quantity="many">حوالي <xliff:g id="NUMBER_1">%,d</xliff:g> إشعارًا في الأسبوع</item>
+      <item quantity="other">حوالي <xliff:g id="NUMBER_1">%,d</xliff:g> إشعار في الأسبوع</item>
+      <item quantity="one">حوالي إشعار واحد في الأسبوع (<xliff:g id="NUMBER_0">%d</xliff:g>)</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"أبدًا"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"إشعارات التطبيقات والأجهزة"</string>
@@ -5591,7 +5605,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"عدم اتخاذ أي إجراء"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"اهتزاز"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"كتم الصوت"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"لتفعيل الإعداد، عليك أولاً تغيير \"الضغط مع الاستمرار على زر التشغيل\" إلى قائمة زر التشغيل."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"لتفعيل الخيار، عليك أولاً تغيير إعداد \"الضغط مع الاستمرار على زر التشغيل\" إلى قائمة زر التشغيل."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"تفاصيل الشبكة"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"‏اسم جهازك مرئي للتطبيقات على هاتفك. ويمكن أيضًا للآخرين الاطّلاع على اسم جهازك عند الاتصال بأجهزة تتضمّن بلوتوث أو الاتصال بشبكة Wi-Fi أو إعداد نقطة اتصال Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"الأجهزة"</string>
@@ -5890,15 +5904,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"التحكّم بالجهاز"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"البطاقات والتذاكر"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"البطاقات والتذاكر"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"الضغط مع الاستمرار على زر التشغيل"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"‏الضغط مع الاستمرار لفتح تطبيق \"مساعد Google\""</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"الضغط مع الاستمرار لفتح قائمة زر التشغيل"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"إمكانية الضغط مع الاستمرار غير مفعّلة."</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"اضغط باستمرار على زر التشغيل."</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"اضغط مع الاستمرار على زر التشغيل للوصول لقائمة زر التشغيل."</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"قائمة زر التشغيل"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"المساعد الرقمي"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"الوصول إلى المساعد الرقمي"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"الوصول إلى قائمة زر التشغيل"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"للاستخدام، عليك ضبط قفل الشاشة أولاً."</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"‏الضغط مع الاستمرار لفتح \"مساعد Google\""</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"‏تشغيل \"مساعد Google\" عن طريق الضغط مع الاستمرار على زر التشغيل"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"قائمة زر التشغيل وحالات الطوارئ:\nاضغط على زرَّي التشغيل ورفع الصوت في آنٍ واحد."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"منع الرنين:\nالاختصار متاح في قائمة مفتاح مستوى الصوت."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"قائمة زر التشغيل:\nاضغط على زر التشغيل وزر رفع مستوى الصوت في نفس الوقت."</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"منع الرنين:\nاضغط على أحد زرَّي التحكّم بمستوى الصوت لاستخدام الاختصار."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"مدة الضغط والضغط مع الاستمرار"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"يمكنك تعديل حساسية الضغطة من خلال اختيار مدة الضغط والضغط مع الاستمرار على زر التشغيل."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"ضغطة قصيرة"</string>
diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
index 10de7a1..5e6f233 100644
--- a/res/values-as/strings.xml
+++ b/res/values-as/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"তেওঁ Pixel Imprint ব্যৱহাৰ কৰাৰ সময়ত, তেওঁৰ ফিংগাৰপ্ৰিণ্টৰ মডেলটো আপডে’ট কৰিবলৈ প্ৰতিচ্ছবিসমূহ ব্যৱহাৰ কৰা হয়। আপোনাৰ শিশুৰ ফিংগাৰপ্ৰিণ্টৰ মডেলটো সৃষ্টি কৰিবলৈ ব্যৱহাৰ কৰা প্ৰতিচ্ছবি কেতিয়াও ষ্ট’ৰ কৰা নহয়, কিন্তু ফিংগাৰপ্ৰিণ্টৰ মডেলটো ফ’নটোত সুৰক্ষিতভাৱে ষ্ট’ৰ কৰা হয় আৰু সেইয়া কেতিয়াও ফ’নটোৰ পৰা আঁতৰি নাযায়। আটাইবোৰ প্ৰক্ৰিয়া আপোনাৰ ফ’নটোত সুৰক্ষিতভাৱে সম্পাদন কৰা হয়।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"আপুনি যিকোনো সময়তে ছেটিঙলৈ গৈ নিজৰ ফিংগাৰপ্ৰিণ্টৰ প্ৰতিচ্ছবি আৰু মডেলটো মচিব পাৰে অথবা ফিংগাৰপ্ৰিণ্ট আনলক অফ কৰিব পাৰে। ফিংগাৰপ্ৰিণ্টৰ প্ৰতিচ্ছবি আৰু মডেলসমূহ আপুনি মচি নেপেলোৱালৈকে আপোনাৰ ফ’নত ষ্ট’ৰ হৈ থাকে।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"আপুনি আৰু আপোনাৰ শিশুৱে যিকোনো সময়তে ছেটিঙলৈ গৈ তেওঁৰ ফিংগাৰপ্ৰিণ্টৰ প্ৰতিচ্ছবি আৰু মডেলটো মচিব পাৰে অথবা ফিংগাৰপ্ৰিণ্টৰ দ্বাৰা আনলক কৰাৰ সুবিধাটো অফ কৰিব পাৰে। ফিংগাৰপ্ৰিণ্টৰ প্ৰতিচ্ছবি আৰু মডেলসমূহ মচি নেপেলোৱালৈকে ফ’নটোত ষ্ট’ৰ হৈ থাকে।"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"আপুনি নিবিচাৰিলেও আপোনাৰ ফ’নটো আনলক হ\'ব পাৰে, যেনে কোনোবাই এইটো আপোনাৰ আঙুলিৰ আগত দাঙি ধৰিলে।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"আপুনি নিবিচাৰিলেও আপোনাৰ ফ’নটো আনলক হ\'ব পাৰে, যেনে কোনোবাই এইটো আপোনাৰ আঙুলিৰ আগত দাঙি ধৰিলে।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"আপুনি নিবিচাৰিলেও আপোনাৰ টেবেলেটটো আনলক হ’ব পাৰে, যেনে কোনোবাই এইটো আপোনাৰ আঙুলিত লগাই দিলে।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"আপুনি নিবিচাৰিলেও আপোনাৰ ডিভাইচটো আনলক হ’ব পাৰে, যেনে কোনোবাই এইটো আপোনাৰ আঙুলিত লগাই দিলে।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"তেওঁ নিবিচাৰিলেও আপোনাৰ শিশুৰ ফ’নটো আনলক কৰিব পৰা যায়, যেনে কোনোবাই এইটো তেওঁৰ আঙুলিত লগাই দিলে।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"সকলোতকৈ ভাল ফলাফল পাবলৈ, Made for Google বুলি প্ৰমাণিত এটা স্ক্ৰীনৰ সুৰক্ষা প্ৰদানকাৰী ব্যৱহাৰ কৰক। অন্য স্ক্ৰীনৰ সুৰক্ষা প্ৰদানকাৰীৰ সৈতে আপোনাৰ ফিংগাৰপ্ৰিণ্টে কাম নকৰিব পাৰে।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"সকলোতকৈ ভাল ফলাফল পাবলৈ, Made for Google বুলি প্ৰমাণিত এটা স্ক্ৰীনৰ সুৰক্ষা প্ৰদানকাৰী ব্যৱহাৰ কৰক। অন্য স্ক্ৰীনৰ সুৰক্ষা প্ৰদানকাৰীৰ সৈতে আপোনাৰ শিশুৰ ফিংগাৰপ্ৰিণ্টে কাম নকৰিব পাৰে।"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ডিভাইচ আৰু ফিংগাৰপ্ৰিণ্ট ছেন্সৰ অৱস্থানৰ সৈতে চিত্ৰণ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"নাম"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ঠিক"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"পুনৰ চেষ্টা কৰক"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"মচক"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"ছেন্সৰটো স্পৰ্শ কৰক"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"আপোনাৰ আঙুলিটো ছেন্সৰটোত ৰাখক আৰু এটা কম্পন অনুভৱ কৰাৰ পিছত আঁতৰাওক"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"সম্পন্ন হ’ল"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"অ\'হ, এইটো ছেন্সৰ নহয় দেই"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"আপোনাৰ ফ\'নটোৰ পিছফালে থকা ছেন্সৰটো স্পৰ্শ কৰক৷ আপোনাৰ তৰ্জনী আঙুলি ব্যৱহাৰ কৰক৷"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ছেটআপ সম্পূৰ্ণ নহ\'ল"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"ফিংগাৰপ্ৰিণ্ট অন্তৰ্ভুক্ত কৰাৰ সময় উকলিল। পুনৰাই চেষ্টা কৰক।"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ফিংগাৰপ্ৰিণ্ট ছেটআপ কৰাৰ সময় উকলি গৈছে"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"এতিয়া পুনৰ চেষ্টা কৰক অথবা পাছত ছেটিঙত আপোনাৰ ফিংগাৰপ্ৰিণ্ট ছেট আপ কৰক"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ফিংগাৰপ্ৰিণ্ট যোগ দিব পৰা নগ\'ল। পুনৰ চেষ্টা কৰক বা বেলেগ এটা আঙুলি ব্যৱহাৰ কৰক।"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"অইন এটা ফিংগাৰপ্ৰিণ্ট যোগ কৰক"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"পৰৱৰ্তী"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"আপোনাৰ ফ’নটো কাষ্টমাইজ কৰক"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"বিভিন্ন শৈলী, ৱালপেপাৰ আৰু অধিক বস্তু ব্যৱহাৰ কৰি চাওক"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"স্ক্ৰীন ছেভাৰ"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"স্ক্ৰীনছেভাৰ"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"স্ক্ৰীন ছেভাৰ ব্যৱহাৰ কৰক"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"চাৰ্জ কৰোঁতে বা ডক কৰি থওঁতে"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"কোনোবা এটা"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"চাৰ্জ কৰি থকাৰ সময়ত"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ডক হৈ থাকোঁতে"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"কেতিয়াও নহয়"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"অফ হৈ আছে"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ফ\'নটো ড’ক আৰু/বা সুপ্ত অৱস্থাত থাকিলে যি হয় তাক নিয়ন্ত্ৰণ কৰিবলৈ, স্ক্ৰীন ছেভাৰ অন কৰক৷"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"ষ্টাৰ্ট কৰাৰ সময়"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"বৰ্তমান ব্যৱহৃত স্ক্ৰীন ছেভাৰ"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ছেটিং"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"স্বয়ংক্ৰিয় উজ্জ্বলতা"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"সক্ৰিয় কৰিবলৈ দাঙক"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"স্তিমিত ডিছপ্লে’"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"এটা পিন ছেট কৰক"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"কৰ্মস্থানৰ বাবে এটা পিন ছেট কৰক"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"এটা আৰ্হি ছেট কৰক"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"অতিৰিক্ত সুৰক্ষাৰ বাবে, ডিভাইচটো আনলক কৰিবলৈ এটা আৰ্হি ছেট কৰক"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"কৰ্মস্থানৰ বাবে এটা আৰ্হি ছেট কৰক"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ফিংগাৰপ্ৰিণ্ট ব্যৱহাৰ কৰিবলৈ পাছৱৰ্ড ছেট কৰক"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ফিংগাৰপ্ৰিণ্ট ব্যৱহাৰ কৰিবলৈ আৰ্হি দিয়ক"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"জৰুৰীকালীন এপ্"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"এপৰ অগ্ৰাধিকাৰসমূহ ৰিছেট কৰক"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"এপৰ অগ্ৰাধিকাৰসমূহ ৰিছেট কৰিবনে?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ই এইসমূহৰ আটাইবোৰ অগ্ৰাধিকাৰ ৰিছেট কৰিব:\n\n"<li>"অক্ষম কৰি থোৱা এপ্"</li>\n<li>"অক্ষম কৰি থোৱা এপ্ জাননী"</li>\n<li>"কাৰ্যৰ ডিফ’ল্ট এপ্লিকেশ্বন"</li>\n<li>"এপৰ নেপথ্য ডেটা সীমাবদ্ধকৰণ"</li>\n<li>"যিকোনো অনুমতিৰ সীমাবদ্ধকৰণ"</li>\n\n"আপুনি কোনো এপৰ ডেটা নেহেৰুৱায়।"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ই এইসমূহৰ আটাইবোৰ অগ্ৰাধিকাৰ ৰিছেট কৰিব:\n\n"<li>"অক্ষম কৰি থোৱা এপ্‌সমূহ"</li>\n<li>"অক্ষম কৰি থোৱা এপ্‌ সম্পৰ্কীয় জাননীসমূহ"</li>\n<li>"বিভিন্ন কাৰ্য সম্পাদনৰ ডিফ’ল্ট এপ্লিকেশ্বনসমূহ"</li>\n<li>"এপৰ বাবে নেপথ্যৰ ডেটাৰ সীমাবদ্ধতা"</li>\n<li>"যিকোনো অনুমতিৰ সীমাবদ্ধতা"</li>\n<li>"বেটাৰীৰ ব্যৱহাৰৰ ছেটিং"</li>\n\n"আপুনি কোনো এপ্‌ ডেটা নেহেৰুৱায়।"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"এপ্ ৰিছেট কৰক"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ঠাই পৰিচালনা কৰক"</string>
     <string name="filter" msgid="9039576690686251462">"ফিল্টাৰ"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ছেটিং ৰিছেট কৰক"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ডিছপ্লে’ৰ আকাৰ আৰু পাঠৰ ছেটিং ৰিছেট কৰা হ’ল"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ডিছপ্লে’ৰ আকাৰ আৰু পাঠ ৰিছেট কৰিবনে?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"আপোনাৰ ডিছপ্লে’ৰ আকাৰ আৰু পাঠৰ অগ্ৰাধিকাৰ ফ’নটোৰ মূল ছেটিঙলৈ ৰিছেট হ’ব"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"আপোনাৰ ডিছপ্লে’ৰ আকাৰ আৰু পাঠৰ অগ্ৰাধিকাৰ ফ’নটোৰ মূল ছেটিঙলৈ ৰিছেট হ’ব"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"আপোনাৰ ডিছপ্লে’ৰ আকাৰ আৰু পাঠৰ অগ্ৰাধিকাৰ টেবলেটটোৰ মূল ছেটিঙলৈ ৰিছেট হ’ব"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ৰিছেট কৰক"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"সপ্তাহান্তত কিবা কৰাৰ পৰিকল্পনা কৰিছে নেকি?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"সমুদ্ৰতীৰলৈ গৈ আছোঁ। লগত যাব বিচাৰে নেকি?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"শেষবাৰ সম্পূৰ্ণ চাৰ্জ হোৱাৰ পৰা ব্যৱহাৰ কৰা নাই"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"যোৱা ২৪ ঘণ্টাত ব্যৱহাৰ কৰা নাই"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"অন্য ব্যৱহাৰকাৰী"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"আপোনাৰ ডিভাইচৰ ব্যৱহাৰৰ ভিত্তিত বাকী থকা বেটাৰিৰ পৰিমাণ নিৰ্ণয় হয়"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"বাকী থকা মোটামুটি সময়"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"সম্পূৰ্ণৰূপে চ্চাৰ্জ নোহোৱা পৰ্যন্ত"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"পূৰ্ণ হটৱৰ্ড আৰু ভাব-বিনিময়"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"সৰল কথনৰ পৰা পাঠ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"এই কণ্ঠধ্বনি ইনপুট সেৱাটোৱে আপোনাৰ হৈ সদা-সক্ৰিয় কণ্ঠধ্বনি নিৰীক্ষণ আৰু কণ্ঠধ্বনি-সক্ষম এপ্লিকেশ্বনবিলাক নিয়ন্ত্ৰণ কৰিবলৈ সক্ষম হ\'ব। ইয়াক <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>ৰ পৰা লাভ কৰা হৈছে। এই সেৱাটো সক্ষম কৰিব বিচাৰেনে?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"ডিভাইচত থকা চিনাক্তকৰণ সুবিধাটোৰ ছেটিং"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"ডিভাইচত থকা চিনাক্তকৰণ সুবিধাটোৰ ছেটিং"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"ডিভাইচত থকা কথন চিনাক্তকৰণ সুবিধাটোৰ ছেটিং"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"অগ্ৰাধিকাৰপ্ৰাপ্ত ইঞ্জিন"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ইঞ্জিনৰ ছেটিং"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"কথা কোৱাৰ হাৰ আৰু পিটচ্"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"মচক"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"এই ছেছনৰ আটাইবোৰ এপ্ আৰু ডেটা মচা হ\'ব।"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"আঁতৰাওক"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"অতিথি (আপুনি)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ব্যৱহাৰকাৰী"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"অন্য ব্যৱহাৰকাৰী"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"অতিথিৰ ছেশ্বনত কৰা কাৰ্যকলাপ মচক"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"অতিথি ম’ডৰ পৰা বাহিৰ হওঁতে আটাইবোৰ অতিথি এপ্ আৰু ডেটা মচক"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"অতিথিৰ কাৰ্যকলাপ মচিবনে?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"এতিয়া এই অতিথিৰ ছেশ্বনৰ এপ্ আৰু ডেটা মচা হ’ব আৰু আপুনি অতিথি ম’ডৰ পৰা প্ৰতিবাৰ বাহিৰ হওঁতে ভৱিষ্যতে কৰা আটাইবোৰ অতিথিৰ কাৰ্যকলাপ মচা হ’ব।"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ফ\'ন কল অন কৰক"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ফ\'ন কল আৰু এছএমএছ অন কৰক"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ব্যৱহাৰকাৰীজন মচক"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\"ৰ আটাইবোৰ জাননী"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g>ৰ আটাইবোৰ জাননী"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"অভিযোজিত জাননী"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~প্ৰতিদিনে <xliff:g id="NUMBER_1">%,d</xliff:g>টা জাননী</item>
-      <item quantity="other">~প্ৰতিদিনে <xliff:g id="NUMBER_1">%,d</xliff:g>টা জাননী</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">প্ৰতি দিনে প্ৰায় <xliff:g id="NUMBER_1">%,d</xliff:g> টা জাননী</item>
+      <item quantity="other">প্ৰতি দিনে প্ৰায় <xliff:g id="NUMBER_1">%,d</xliff:g> টা জাননী</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~প্ৰতি সপ্তাহে <xliff:g id="NUMBER_1">%,d</xliff:g>টা জাননী</item>
-      <item quantity="other">~প্ৰতি সপ্তাহে <xliff:g id="NUMBER_1">%,d</xliff:g>টা জাননী</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">প্ৰতি সপ্তাহে প্ৰায় <xliff:g id="NUMBER_1">%,d</xliff:g> টা জাননী</item>
+      <item quantity="other">প্ৰতি সপ্তাহে প্ৰায় <xliff:g id="NUMBER_1">%,d</xliff:g> টা জাননী</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"কেতিয়াও পঠোৱা নহয়"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ডিভাইচ আৰু এপৰ জাননী"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"একো নকৰিব"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"কম্পন"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"মিউট"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"সক্ষম কৰিবলৈ, প্ৰথমতে \"পাৱাৰ বুটামটো টিপি ধৰি ৰাখক\"টো পাৱাৰ মেনুলৈ সলনি কৰক।"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"সক্ষম কৰিবলৈ, প্ৰথমতে \"পাৱাৰ বুটামটো টিপি ধৰি ৰাখক\"টো পাৱাৰ মেনুলৈ সলনি কৰক।"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"নেটৱৰ্কৰ সবিশেষ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"আপোনাৰ ডিভাইচটোৰ নাম আপোনাৰ ফ’নটোত থকা এপ্‌সমূহৰ বাবে দৃশ্যমান। আপুনি ব্লুটুথ ডিভাইচৰ সৈতে সংযোগ কৰোঁতে, ৱাই-ফাই নেটৱৰ্কৰ সৈতে সংযোগ কৰোঁতে অথবা ৱাই-ফাই হটস্পট ছেট আপ কৰোঁতেও এইটো অন্য লোকে দেখা পাব পাৰে।"</string>
     <string name="devices_title" msgid="649715719278562515">"ডিভাইচসমূহ"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ডিভাইচৰ নিয়ন্ত্ৰণসমূহ"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"কাৰ্ড আৰু পাছসমূহ"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"কাৰ্ড আৰু পাছসমূহ"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"পাৱাৰ বুটামটো টিপি ধৰি ৰাখক"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistantৰ বাবে টিপি ধৰি ৰাখক"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"পাৱাৰ মেনুখনৰ বাবে টিপি ধৰি ৰাখক"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Assistant আৰম্ভ কৰিবলৈ পাৱাৰ বুটামটো টিপি ধৰি ৰখাৰ সুবিধাটো অক্ষম কৰা হৈছে"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"পাৱাৰ বুটামটো টিপি ধৰি ৰাখক"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"এক্সেছ কৰিবলৈ পাৱাৰ বুটামটো টিপি ধৰি ৰাখক"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"পাৱাৰ মেনু"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ডিজিটেল সহায়ক"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ডিজিটেল সহায়ক এক্সেছ কৰক"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"পাৱাৰ মেনু এক্সেছ কৰক"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ব্যৱহাৰ কৰিবলৈ প্ৰথমে এটা স্ক্ৰীন লক ছেট কৰক"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistantৰ বাবে টিপি ধৰি ৰাখক"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"পাৱাৰ বুটাম টিপি ধৰি ৰাখি Assistant সক্ৰিয় কৰক"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"পাৱাৰ আৰু জৰুৰীকালীন মেনু:\nপাৱাৰ আৰু ভলিউম বঢ়োৱা বুটাম একেলগে টিপক।"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"ৰিং কৰাত বাধা দিয়ক:\nভলিউমৰ মেনুখনত শ্বৰ্টকাট উপলব্ধ।"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"পাৱাৰ মেনু:\nপাৱাৰ বুটামটো আৰু ভলিউম বঢ়োৱা বুটামটো একেলেগে টিপক"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"ৰিং কৰাত বাধা দিয়ক:\nশ্বৰ্টকাটটোৰ বাবে ভলিউমৰ এটা বুটাম টিপক"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"টিপি ধৰি ৰখাৰ সময় অৱধি"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"পাৱাৰ বুটামটো কিমান সময়লৈ টিপি ধৰি ৰাখিব লাগে সেয়া বাছনি কৰি সংবেদনশীলতা মিলাওক"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"চুটি"</string>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index 29228ca..5dff238 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Pixel Imprint istifadə etdikdə, onun barmaq izi modelini güncəlləmək üçün şəkillərdən istifadə olunur. Övladınızın barmaq izi modelini yaratmaq üçün istifadə edilən şəkillər heç vaxt saxlanılmır, lakin barmaq izi modeli telefonda təhlükəsiz qaydada saxlanılır və heç vaxt telefondan başqa yerə göndərilmir. Bütün emal prosesi telefonda təhlükəsiz qaydada baş verir."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Ayarlarda istənilən vaxt barmaq izi şəkilləri və modelinizi silə, yaxud Barmaq izi ilə kiliddən çıxarmanı deaktiv edə bilərsiniz. Barmaq izi şəkilləri və modelləri siz onları silənə qədər telefonunuzda saxlanılır."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Siz və övladınız ayarlarda istənilən vaxt barmaq izi şəkilləri və modelinizi silə, yaxud Barmaq izi ilə kiliddən çıxarmanı deaktiv edə bilərsiniz. Barmaq izi şəkilləri və modelləri onları silənə qədər telefonda saxlanılır."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"İstəmədiyiniz zaman telefonunuzun kilidi açıla bilər, məsələn kimsə onu barmağınıza tutaraq aça bilər."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"İstəmədiyiniz zaman telefonunuzun kilidi açıla bilər, məsələn kimsə onu barmağınıza tutaraq aça bilər."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"İstəmədiyiniz zaman planştinizin kilidi açıla bilər, məsələn kimsə onu barmağınıza tutaraq aça bilər."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"İstəmədiyiniz zaman cihazınızın kilidi açıla bilər, məsələn kimsə onu barmağınıza tutaraq aça bilər."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Övladınız istəmədiyi zaman telefonun kilidi açıla bilər, məsələn kimsə onu övladınızın barmağına tutaraq aça bilər."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Ən yaxşı nəticələr üçün \"Google üçün hazırlanıb\" sertifikatlı ekran qoruyucusu istifadə edin. Digər ekran qoruyucuları ilə barmaq iziniz işləməyə bilər."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Ən yaxşı nəticələr üçün \"Google üçün hazırlanıb\" sertifikatlı ekran qoruyucusu istifadə edin. Digər ekran qoruyucuları ilə uşağınızın barmaq izi işləməyə bilər."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Cihaz və barmaq izi sensoru ilə illustrasiya"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Ad"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Yenə sınayın"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Silin"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Sensora toxunun"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Barmağı sensora qoyub titrəmə hiss edənə qədər saxlayın"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Hazırdır"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ups, bu sensor deyil"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Telefonun arxasındakı sensora toxunun."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Qeydiyyat tamamlanmadı"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Barmaq izi qeydiyyatı üçün vaxt limiti başa çatdı. Yenidən cəhd edin."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Barmaq izi ayarlama vaxtı bitdi"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"İndi yenidən cəhd edin, yaxud daha sonra Ayarlarda barmaq izinizi ayarlayın"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Barmaq izi qeydiyyatı işləmədi. Yenidən cəhd edin və ya başqa barmaq istifadə edin."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Başqasını əlavə edin"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Növbəti"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Telefonunuzu fərdiləşdirin"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Fərqli üslub, divar kağızı və s. sınayın"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Ekran qoruyucu"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ekran qoruyucu"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Ekran qoruyucusundan istifadə edin"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Şarj ərzində və ya dok-stansiyada"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Hər ikisi"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Şarj ərzində"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Dok-stansiyada"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Heç vaxt"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Qapalı"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Telefon doklanmış və/və ya yatan zaman baş verənlərə nəzarət edin, ekran qoruyucunu aktiv edin."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Başlama vaxtı"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Cari ekran qoruyucu"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Ayarlar"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Avtomatik parlaqlıq"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Oyatmaq üçün qaldırın"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ətraf mühit displeyi"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN ayarlayın"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"İş PIN kodu ayarlayın"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Model ayarlayın"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Əlavə təhlükəsizlik məqsədilə cihazı kiliddən çıxarmaq üçün model təyin edin"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"İş modeli ayarlayın"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Barmaq izi üçün parol seçin"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Qrafik açar hazırlayın"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Təcili tətbiq"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Tətbiq tərcihləri sıfırlanıb"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Tətbiq tərcihləri sıfırlansın?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Bu, aşağıdakılar üçün bütün tərcihləri sıfırlayacaq:\n\n"<li>" Deaktiv edilmiş tətbiqlər"</li>\n<li>"Deaktiv edilmiş tətbiq bildirişləri"</li>\n<li>"Əməliyyatlar üçün defolt tətbiqlər"</li>\n<li>"Tətbiqlər üçün arxa fon məlumatlarının məhdudlaşdırılması"</li>\n<li>"İstənilən icazə məhdudiyyətləri"</li>\n\n"Hər hansı tətbiq məlumatınız silinməyəcək."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Bu, aşağıdakılar üçün bütün tərcihləri sıfırlayacaq:\n\n"<li>" Deaktiv edilmiş tətbiqlər"</li>\n<li>"Deaktiv edilmiş tətbiq bildirişləri"</li>\n<li>"Əməliyyatlar üçün defolt tətbiqlər"</li>\n<li>"Tətbiqlər üçün arxa fon məlumatlarının məhdudlaşdırılması"</li>\n<li>"İstənilən icazə məhdudiyyətləri"</li>\n<li>"Batareya istifadəsi ayarları"</li>\n\n"Hər hansı tətbiq məlumatınız silinməyəcək."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Tətbiqləri sıfırla"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Boşluğu idarə edin"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Ayarları sıfırlayın"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Displey ölçüsü və mətn ayarları sıfırlandı"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Displey ölçüsü və mətn sıfırlansın?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Displey ölçüsü və mətn tərcihləriniz telefonun orijinal ayarlarına sıfırlanacaq"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Displey ölçüsü və mətn tərcihləriniz telefonun orijinal ayarlarına sıfırlanacaq"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Displey ölçüsü və mətn tərcihləriniz planşetin orijinal ayarlarına sıfırlanacaq"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Sıfırlayın"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Həftə sonu planlarınız var?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Çimərliyə gedirəm. Mənə qoşulmaq istəyirsən?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Sonuncu tam şarjdan etibarən istifadə edilməyib"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Son 24 saat ərzində istifadə edilməyib"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Digər istifadəçilər"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Qalan enerji səviyyəsi cihazı işlətməkdən asılıdır"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Təxmini qalan vaxt"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Tam enerji yığana kimi"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Tam əmr sözü və qarşılıqlı təsir"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Sadəcə nitqdən mətnə"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Bu səs daxiletməsi həmişə aktiv səs monitorinqi həyata keçirmək və adınızdan fəaliyyət göstərən səs icazəli tətbiqləri idarə etmək imkanında olacaq. <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> tətbiqinə aiddir. Bu xidmətin istifadəsinə icazə verilsin?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Cihazda tanıma ayarları"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Cihazda tanıma"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Cihazda nitqin tanınması"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Defolt nitq sintezatoru"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Mühərrik ayarları"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Nitq sürəti və tonu"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Silin"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Bu sessiyada bütün tətbiqlər və data itəcək."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Yığışdır"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Qonaq (Siz)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"İstifadəçilər"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Digər istifadəçilər"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Qonaq fəaliyyətini silin"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Qonaq rejimindən çıxarkən bütün qonaq tətbiqləri və datasını silin"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Qonaq fəaliyyəti silinsin?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Bu qonaq sessiyasındakı tətbiqlər və data indi silinəcək və hər dəfə qonaq rejimindən çıxanda bütün gələcək qonaq fəaliyyəti silinəcək"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Telefon zəngləri aktivləşdirilsin"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Telefon zəngləri &amp; SMS-i aktivləşdir"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"İstifadəçini silin"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Bütün \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" bildirişləri"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Bütün <xliff:g id="APP_NAME">%1$s</xliff:g> bildirişləri"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptiv bildirişlər"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">Gün ərzində ~<xliff:g id="NUMBER_1">%,d</xliff:g> bildiriş</item>
-      <item quantity="one">Gün ərzində ~<xliff:g id="NUMBER_0">%d</xliff:g> bildiriş</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Gündə təqribən <xliff:g id="NUMBER_1">%,d</xliff:g> bildiriş</item>
+      <item quantity="one">Gündə təqribən <xliff:g id="NUMBER_0">%d</xliff:g> bildiriş</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">Həftə ərzində ~<xliff:g id="NUMBER_1">%,d</xliff:g> bildiriş</item>
-      <item quantity="one">Həftə ərzində ~<xliff:g id="NUMBER_0">%d</xliff:g> bildiriş</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Həftədə təqribən <xliff:g id="NUMBER_1">%,d</xliff:g> bildiriş</item>
+      <item quantity="one">Həftədə təqribən <xliff:g id="NUMBER_0">%d</xliff:g> bildiriş</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Heç vaxt"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Cihaz və tətbiq bildirişləri"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Heç nə etməyin"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrasiya"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Susdurun"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Aktiv etmək üçün \"Qidalanma düyməsini basıb saxlamanı\" enerji menyusuna dəyişin."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Aktiv etmək üçün \"Qidalanma düyməsini basıb saxlamanı\" qidalanma menyusuna dəyişin."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Şəbəkə detalları"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Cihazın adı telefondakı tətbiqlərdə görünəcək. Bluetooth cihazlarına qoşulduqda və ya Wi-Fi hotspotu ayarladıqda digərləri də onu görə bilər."</string>
     <string name="devices_title" msgid="649715719278562515">"Cihazlar"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"cihaz kontrolları"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartlar və giriş talonları"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartlar və giriş talonları"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Qidalanma düyməsini basıb saxlama"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistent üçün basıb saxlama"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Qidalanma menyusu üçün basıb saxlama"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Basıb saxlama deaktivdir"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Qidalanma düyməsini basıb saxlayın"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Giriş üçün Qidalanma düyməsini basıb saxlayın"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Qidalanma düyməsi menyusu"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Rəqəmsal assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Rəqəmsal assistentə giriş"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Qidalanma menyusuna giriş"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"İstifadə etmək üçün ilk öncə ekran kilidini ayarlayın"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Basıb saxlayaraq Assistenti işə salın"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Qidalanma düyməsini basıb saxlayaraq Assistenti işə salın"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Qidalanma &amp; Fövqəladə Hal Menyusu:\nQidalanma və Səsin artırılması düymələrini eyni anda basın."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Zəng çalmanın qarşısını alın:\nSəs səviyyəsi menyusunda qısayol verilmişdir."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Qidalanma menyusu:\nQidalanma düyməsini və səsi artırma düyməsini eyni anda basın"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Zəngin qarşısını almaq:\nQısayol üçün səs düyməsini basın"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Basıb saxlama müddəti"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Qidalanma düyməsinə nə qədər basıb saxlamağı seçərək həssaslığı tənzimləyin"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Qısa"</string>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index 3dccb9c..3685136 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -468,7 +468,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Kada koristi Pixel Imprint, slike se koriste za ažuriranje modela otiska prsta. Slike koje se koriste za pravljenje detetovog modela otiska prsta nikada se ne čuvaju, ali se model otiska prsta bezbedno čuva na telefonu i ostaje samo na njemu. Ceo proces obrade se bezbedno odvija na telefonu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Možete da izbrišete slike i model otiska prsta ili da isključite Otključavanje otiskom prsta u bilo kom trenutku u Podešavanjima. Slike i modeli otisaka prstiju se čuvaju na telefonu dok ih ne izbrišete."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Vi i dete možete da izbrišete slike i model otiska prsta ili da isključite otključavanje otiskom prsta u bilo kom trenutku u podešavanjima. Slike i modeli otisaka prstiju se čuvaju na telefonu dok ih ne izbrišete."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefon može da se otključa kada to ne nameravate. Na primer, ako ga neko približi vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefon može da se otključa kada to ne nameravate. Na primer, ako ga neko približi vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tablet može da se otključa kada to ne nameravate. Na primer, ako ga neko približi vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Uređaj može da se otključa kada to ne nameravate. Na primer, ako ga neko približi vašem prstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefon deteta može da se otključa kada dete to ne namerava. Na primer, ako neko približi telefon detetovom prstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Da biste imali najbolje rezultate, koristite zaštitu za ekran sa sertifikatom Napravljeno za Google. Otisak prsta možda neće raditi sa drugim zaštitama za ekran."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Da biste imali najbolje rezultate, koristite zaštitu za ekran sa sertifikatom Napravljeno za Google. Otisak prsta deteta možda neće raditi sa drugim zaštitama za ekran."</string>
@@ -518,6 +520,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustracija sa uređajem i lokacijom senzora za otisak prsta"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Naziv"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Potvrdi"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Probaj ponovo"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Izbriši"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Dodirnite senzor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Stavite prst na senzor i podignite ga kada osetite vibraciju"</string>
@@ -595,8 +598,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Gotovo"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ups, to nije senzor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Dodirnite senzor na zadnjoj strani telefona. Koristite kažiprst."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registracija nije završena"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Vremensko ograničenje za registraciju otiska prsta je isteklo. Probajte ponovo."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Vreme za podešavanje otiska prsta je isteklo"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Probajte ponovo odmah ili podesite otisak prsta kasnije u Podešavanjima"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registracija otiska prsta nije uspela. Probajte ponovo ili koristite drugi prst."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Dodajte još jedan"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Dalje"</string>
@@ -1468,17 +1471,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Prilagodite telefon"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Probajte drugačije stilove, pozadine i još toga"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Čuvar ekrana"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"čuvar ekrana"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Koristi čuvar ekrana"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Tokom punjenja ili na baznoj stanici"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Bilo koje od ova dva"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Tokom punjenja"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Dok je na baznoj stanici"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nikada"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Isključeno"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Da biste kontrolisali šta se dešava kada je telefon na baznoj stanici i/ili u stanju spavanja, uključite čuvar ekrana."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kada da počne"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Trenutni čuvar ekrana"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Podešavanja"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatski nivo osvetljenosti"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Podigni za aktivaciju"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambijentalni ekran"</string>
@@ -1968,6 +1969,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Podesite PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Podesite PIN za poslovni profil"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Podesite šablon"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Radi veće bezbednosti podesite šablon za otključavanje uređaja"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Podesite šablon za poslovni profil"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Podesite lozinku da biste koristili otisak"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Da biste koristili otisak prsta, podesite šablon"</string>
@@ -2123,7 +2125,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikacija za hitne slučajeve"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Resetuj podešavanja aplikacija"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Želite da resetujete podešavanja aplikacije?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Ovim ćete resetovati sva podešavanja za:\n\n"<li>"Onemogućene aplikacije"</li>\n<li>"Obaveštenja o onemogućenim aplikacijama"</li>\n<li>"Podrazumevane aplikacije za radnje"</li>\n<li>"Ograničenja za pozadinske podatke za aplikacije"</li>\n<li>"Sva ograničenja za dozvole"</li>\n\n"Nećete izgubiti nikakve podatke aplikacije."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Ovim ćete resetovati sva podešavanja za:\n\n"<li>"Onemogućene aplikacije"</li>\n<li>"Obaveštenja o onemogućenim aplikacijama"</li>\n<li>"Podrazumevane aplikacije za radnje"</li>\n<li>"Ograničenja za pozadinske podatke za aplikacije"</li>\n<li>"Sva ograničenja za dozvole"</li>\n<li>"Podešavanja potrošnje baterije"</li>\n\n"Nećete izgubiti nikakve podatke aplikacije."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Resetuj aplikacije"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Upravljaj prostorom"</string>
     <string name="filter" msgid="9039576690686251462">"Filtriraj"</string>
@@ -2378,7 +2380,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Resetuj podešavanja"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Podešavanja veličine ekrana i teksta su resetovana"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Želite da resetujete veličinu prikaza i tekst?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Veličina prikaza i podešavanja teksta će se resetovati na prvobitna podešavanja telefona"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Veličina prikaza i podešavanja teksta će se resetovati na prvobitna podešavanja telefona"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Veličina prikaza i podešavanja teksta će se resetovati na prvobitna podešavanja tableta"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Resetuj"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Imaš li planove za vikend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Idem na plažu. Hoćeš sa mnom?"</string>
@@ -2972,6 +2975,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nema korišćenja od poslednjeg potpunog punjenja"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nema korišćenja u poslednja 24 sata"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Ostali korisnici"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Procena preostalog nivoa napunjenosti baterije je zasnovana na korišćenju uređaja"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Procenjeno preostalo vreme"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Do potpunog punjenja"</string>
@@ -3061,6 +3065,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Cela aktuelna reč i interakcija"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Jednostavan govor u tekst"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ova usluga glasovnog unosa će moći umesto vas da obavlja konstantno glasovno praćenje i kontroliše aplikacije u kojima je omogućen glas. Ona je deo aplikacije <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Želite li da omogućite korišćenje ove usluge?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Podešavanja prepoznavanja na uređaju"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Prepoznavanje na uređaju"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Prepoznavanje govora na uređaju"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Željeni mehanizam"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Podešavanja mehanizma"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Brzina i jačina govora"</string>
@@ -3457,6 +3464,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Izbriši"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Sve aplikacije i podaci u ovoj sesiji će biti izbrisani."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Ukloni"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gost (vi)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Korisnici"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Ostali korisnici"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Izbriši aktivnosti gosta"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Izbrišite sve aplikacije i podatke gosta pri izlazu iz režima gosta"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Izbrisaćete aktivnosti gosta?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplikacije i podaci iz ove sesije gosta biće odmah izbrisane, a sve buduće aktivnosti gosta biće izbrisane svaki put kada izađete iz režima gosta"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Uključi telefonske pozive"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Uključi telefonske pozive i SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Izbrišite korisnika"</string>
@@ -4051,15 +4065,15 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Sva obaveštenja aplikacije <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Sva obaveštenja aplikacije <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Prilagodljiva obaveštenja"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenje dnevno</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenja dnevno</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenja dnevno</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Otprilike <xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenje dnevno</item>
+      <item quantity="few">Otprilike <xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenja dnevno</item>
+      <item quantity="other">Otprilike <xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenja dnevno</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenje nedeljno</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenja nedeljno</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenja nedeljno</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Otprilike <xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenje nedeljno</item>
+      <item quantity="few">Otprilike <xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenja nedeljno</item>
+      <item quantity="other">Otprilike <xliff:g id="NUMBER_1">%,d</xliff:g> obaveštenja nedeljno</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nikad"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Obaveštenja na uređajima i u aplikacijama"</string>
@@ -5339,7 +5353,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ne radi ništa"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibriraj"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Isključi zvuk"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Da biste omogućili ovo, prvo promenite opciju Pritisnite i zadržite dugme za uključivanje u meni dugmeta za uključivanje."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Da biste omogućili ovo, prvo promenite opciju Pritisnite i zadržite dugme za uključivanje u meni dugmeta za uključivanje."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalji o mreži"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Aplikacije na telefonu mogu da vide naziv uređaja. I drugi ljudi mogu da vide naziv uređaja mogu kada se povežete sa Bluetooth uređajima ili WiFi mrežom ili podesite WiFi hotspot."</string>
     <string name="devices_title" msgid="649715719278562515">"Uređaji"</string>
@@ -5629,15 +5643,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"kontrole uređaja"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Karte i kartice"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"karte i kartice"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Pritisnite i zadržite dugme za uključivanje"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Pritisnite i zadržite za Pomoćnika"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Pritisnite i zadržite meni dugmeta za uključivanje"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Onemogućeno je pritiskanje i zadržavanje"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Pritisnite i zadržite dugme za uključivanje"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Pritisnite i zadržite dugme za uključivanje radi pristupa"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Meni dugmeta za uključivanje"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitalni pomoćnik"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Pristupajte digitalnom pomoćniku"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Pristupajte meniju dugmeta za uključivanje"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Da biste ovo koristili, prvo podesite zaključavanje ekrana"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Zadržite za Pomoćnik"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Pokrenite Pomoćnik tako što ćete zadržati dugme za uključivanje"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Meni dugmeta za uključivanje i za hitne slučajeve:\nIstovremeno pritisnite dugme za uključivanje i dugme za pojačavanje zvuka."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Spreči zvonjenje:\nPrečica je dostupna u meniju dugmeta za jačinu zvuka."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Meni dugmeta za uključivanje:\nPritisnite dugme za uključivanje i dugme za pojačavanje zvuka u isto vreme"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Sprečite zvono:\nPritisnite dugme za jačinu zvuka ako želite prečicu"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Koliko dugo da pritisnete i zadržite"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Prilagodite osetljivost tako što ćete odabrati koliko dugo treba da se pritisnete i zadržite dugme za uključivanje"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kratko"</string>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index 66cb723..858ab82 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Калі дзіця ўжывае функцыю Pixel Imprint, відарысы выкарыстоўваюцца для абнаўлення мадэлі адбітка пальца. Відарысы, якія выкарыстоўваліся для стварэння мадэлі адбітка пальца дзіцяці, ніколі не захоўваюцца. На тэлефоне бяспечна захоўваецца толькі сама мадэль, і яна нікуды не адпраўляецца. Уся апрацоўка выконваецца толькі на тэлефоне."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Вы можаце ў любы час выдаліць відарысы і мадэль адбітка пальца ці выключыць разблакіраванне адбіткам пальца ў Наладах. Відарысы і мадэлі адбіткаў пальца будуць захоўвацца на вашым тэлефоне, пакуль вы іх не выдаліце."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Вы і ваша дзіця можаце ў любы час выдаліць відарысы і мадэль адбітка пальца ці выключыць разблакіраванне адбіткам пальца ў Наладах. Відарысы і мадэлі адбіткаў пальца будуць захоўвацца на тэлефоне, пакуль іх не выдаляць."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Ваш тэлефон можа быць разблакіраваны без вашага намеру, напрыклад, калі хтосьці паднясе яго да вашага пальца."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Ваш тэлефон можа быць разблакіраваны без вашага намеру, напрыклад, калі хтосьці паднясе яго да вашага пальца."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Ваш планшэт можа быць разблакіраваны без вашага намеру, напрыклад, калі хтосьці паднясе яго да вашага пальца."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Ваша прылада можа быць разблакіравана без вашага намеру, напрыклад, калі хтосьці паднясе яе да вашага пальца."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Тэлефон можна разблакіраваць, нават калі дзіця не збіралася гэта рабіць, напрыклад, калі хтосьці прыкладзе палец дзіцяці да тэлефона."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Каб атрымліваць найлепшыя вынікі, карыстайцеся ахоўнай плёнкай, якая мае сертыфікат \"Made for Google\". Калі выкарыстоўваць іншыя ахоўныя плёнкі, сканер адбіткаў пальцаў можа не працаваць."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Каб атрымліваць найлепшыя вынікі, карыстайцеся ахоўнай плёнкай, якая мае сертыфікат \"Made for Google\". Калі выкарыстоўваць іншыя ахоўныя плёнкі, сканер адбіткаў пальцаў вашага дзіцяці можа не працаваць."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Відарыс, які паказвае, дзе размяшчаецца датчык адбіткаў пальцаў на прыладзе"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Імя"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ОК"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Паўтарыць спробу"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Выдаліць"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Дакраніцеся да сканера"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Прыкладзіце палец да сканера і ўтрымлівайце яго, пакуль не адчуеце вібрацыю"</string>
@@ -601,8 +604,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Гатова"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ой, гэта не датчык"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Указальным пальцам дакраніцеся да сэнсара на задняй панэлі тэлефона."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Рэгістрацыя не завершана"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Час на рэгістрацыю адбіткаў скончыўся. Паспрабуйце яшчэ раз."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Наладжванне адбітка пальца не завершана"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Паўтарыце спробу ці наладзьце адбітак пальца пазней у Наладах"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Рэгістрацыя адбітка не атрымалася. Калі ласка, паўтарыце спробу або выкарыстайце іншы палец."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Дадаць яшчэ адзін"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Далей"</string>
@@ -1490,17 +1493,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Наладзіць тэлефон"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Спрабуйце розныя стылі, шпалеры і іншае"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Экранная застаўка"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"застаўка"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Ужываць экранную застаўку"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Пакуль прылада зараджаецца ці падключана"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"У абодвух выпадках"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Падчас зарадкі"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Пры падключэнні"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Ніколі"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Выключана"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Каб кантраляваць тое, што адбываецца, калі тэлефон прыстыкаваны і/або знаходзіцца ў рэжыме сну, уключыце экранную застаўку."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Калі пачынаць"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Бягучая экранная застаўка"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Налады"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Аўтаматычная яркасць"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Абуджэнне пры падняцці"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Неактыўны рэжым экрана"</string>
@@ -1992,6 +1993,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Задайце PIN-код"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Задайце PIN-код для працоўнага профілю"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Задайце ўзор разблакіроўкі"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"У мэтах дадатковай бяспекі задайце ўзор разблакіроўкі прылады"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Задайце ўзор разблакіроўкі для працы"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Задайце пароль для выкарыстання адбітка"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Спачатку задайце ўзор"</string>
@@ -2149,7 +2151,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Праграма для экстранных сітуацый"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Скінуць налады праграм"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Скінуць налады праграм?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Будуць скінуты наступныя налады:\n\n"<li>" адключаныя праграмы;"</li>\n<li>"адключаныя апавяшчэнні праграм;"</li>\n<li>"стандартныя праграмы для дзеянняў;"</li>\n<li>"абмежаванні на фонавую перадачу даных для праграм;"</li>\n<li>"абмежаванні дазволаў."</li>\n\n"Даныя праграм не будуць выдалены."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Будуць скінуты наступныя налады:\n\n"<li>" адключаныя праграмы;"</li>\n<li>"адключаныя апавяшчэнні праграм;"</li>\n<li>"стандартныя праграмы для дзеянняў;"</li>\n<li>"абмежаванні на фонавую перадачу даных для праграм;"</li>\n<li>"абмежаванні дазволаў;"</li>\n<li>"налады выкарыстання зараду."</li>\n\n"Даныя праграм не будуць выдалены."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Скінуць праграмы"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Кіраванне вольным месцам"</string>
     <string name="filter" msgid="9039576690686251462">"Фільтр"</string>
@@ -2404,7 +2406,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Скінуць налады"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Памер дысплэя і налады тэксту скінуты"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Скінуць памер дысплэя і налады тэксту?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Памер вашага дысплэя і параметры тэксту будуць скінуты да першапачатковых налад тэлефона"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Памер вашага дысплэя і параметры тэксту будуць скінуты да першапачатковых налад тэлефона"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Памер вашага дысплэя і параметры тэксту будуць скінуты да першапачатковых налад планшэта"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Скінуць"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Ёсць планы на выхадныя?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Мы збіраемся на пляж. Ці ёсць жаданне далучыцца?"</string>
@@ -3012,6 +3015,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Не выкарыстоўваўся з моманту апошняй поўнай зарадкі"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Не выкарыстоўваўся ў апошнія 24 гадз"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Іншыя карыстальнікі"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Ацэнка стану акумулятара заснавана на выкарыстанні прылады"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Прыблзіны час, які застаўся"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Да поўнай зарадкі"</string>
@@ -3101,6 +3105,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Поўная падтрымка рэжыму «гарачага слова» і ўзаемадзеянне"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Простае распазнанне гаворкі"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Гэта служба галасавога ўводу зможа ажыццяўляць пастаянны маніторынг голасу і кантраляваць дадаткі з падтрымкай галасавых каманд ад вашага імя. Гэта служба дадатку <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Уключыць гэту службу?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Налады распазнавання на прыладзе"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Распазнаванне на прыладзе"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Распазнаванне маўлення на прыладзе"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Выбраны модуль"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Налады модуля"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Хуткасць і тон маўлення"</string>
@@ -3501,6 +3508,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Выдаліць"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Усе праграмы і даныя гэтага сеанса будуць выдалены."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Выдаліць"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Госць (вы)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Карыстальнікі"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Іншыя карыстальнікі"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Выдаліць звесткі пра дзеянні госця"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Выдаляць усе праграмы і даныя госця ў час выхаду з гасцявога рэжыму"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Выдаліць звесткі пра дзеянні госця?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Праграмы і даныя гэтага гасцявога сеанса будуць выдалены, і ўсе будучыя звесткі пра дзеянні госця будуць выдаляцца падчас кожнага выхаду з гасцявога рэжыму"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Уключыць тэлефонныя выклікі"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Уключыць тэлефонныя выклікі і SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Выдаліць карыстальніка"</string>
@@ -4097,17 +4111,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Усе апавяшчэнні праграмы \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Усе апавяшчэнні праграмы \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Адаптыўныя апавяшчэнні"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнне ў дзень</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнні ў дзень</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнняў у дзень</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэння ў дзень</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Прыблізна <xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнне ў дзень</item>
+      <item quantity="few">Прыблізна <xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнні ў дзень</item>
+      <item quantity="many">Прыблізна <xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнняў у дзень</item>
+      <item quantity="other">Прыблізна <xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэння ў дзень</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнне ў тыдзень</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнні ў тыдзень</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнняў у тыдзень</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэння ў тыдзень</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Прыблізна <xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнне ў тыдзень</item>
+      <item quantity="few">Прыблізна <xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнні ў тыдзень</item>
+      <item quantity="many">Прыблізна <xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэнняў у тыдзень</item>
+      <item quantity="other">Прыблізна <xliff:g id="NUMBER_1">%,d</xliff:g> апавяшчэння ў тыдзень</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Ніколі"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Апавяшчэнні прылад і праграм"</string>
@@ -5425,7 +5439,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Нічога не рабіць"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Вібрацыя"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Выключыць гук"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Каб уключыць, спачатку змяніце ў меню кнопкі сілкавання параметр \"Націск і ўтрыманне кнопкі сілкавання\"."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Каб уключыць гэту функцыю, спачатку змяніце ў меню кнопкі сілкавання наладу \"Націск і ўтрыманне кнопкі сілкавання\"."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Інфармацыя аб сетцы"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Назва вашай прылады даступная для праграм на вашым тэлефоне. Яе таксама будуць бачыць іншыя людзі, калі вы падключыцеся да прылад праз Bluetooth, падключыцеся да сеткі Wi-Fi ці наладзіце хот-спот Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Прылады"</string>
@@ -5718,15 +5732,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"элементы кіравання прыладай"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Карткі і талоны"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"карткі і талоны"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Націск і ўтрыманне кнопкі сілкавання"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Націск і ўтрыманне для выкліку Памочніка"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Націск і ўтрыманне для выкліку меню кнопкі сілкавання"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Націск і ўтрыманне выключаны"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Націск і ўтрыманне кнопкі сілкавання"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Што адбудзецца пры націску і ўтрыманні кнопкі сілкавання"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Меню кнопкі сілкавання"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Лічбавы памочнік"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Доступ да лічбавага памочніка"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Доступ да меню кнопкі сілкавання"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Спачатку трэба наладзіць блакіроўку экрана"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Выклік Памочніка доўгім націсканнем"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Для выкліку Памочніка ўтрымлівайце націснутай кнопку сілкавання"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Меню кнопкі сілкавання і экстранных выклікаў:\nадначасова націсніце кнопку сілкавання і павелічэння гучнасці."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Прадухіліць званок:\nярлык даступны ў меню гучнасці."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Меню кнопкі сілкавання:\nадначасова націсніце кнопку сілкавання і кнопку павелічэння гучнасці"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Адключэнне гуку званка:\nнацісніце кнопку гучнасці, каб скарыстаць ярлык"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Працягласць націску і ўтрымання"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Наладзіць адчувальнасць, выбраўшы працягласць націску і ўтрымання кнопкі сілкавання"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Коратка"</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 78a8abd..4daef42 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Изображенията от взаимодействията на детето ви с Pixel Imprint се използват за актуализиране на модела на отпечатъка му. Изображенията, ползвани за създаването на този модел, не се запазват, но той се съхранява надеждно на телефона и никога не го напуска. Цялото обработване се извършва надеждно на телефона."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"По всяко време можете да изтриете изображенията и модела на отпечатъка си или да изключите функцията за отключване с отпечатък от настройките. Изображенията и моделите се съхраняват на телефона ви, докато не ги изтриете."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Вие и детето ви можете по всяко време да изтриете изображенията и модела на отпечатъка му или да изключите функцията за отключване с отпечатък от настройките. Изображенията и моделите се съхраняват на телефона, докато не бъдат изтрити."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Телефонът ви може да бъде отключен неволно, ако например някой го допре до пръста ви."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Телефонът ви може да бъде отключен неволно, ако например някой го допре до пръста ви."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Таблетът ви може да бъде отключен, без да желаете, например ако някой го допре до пръста ви."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Устройството ви може да бъде отключено, без да желаете, например ако някой го допре до пръста ви."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Телефонът на детето ви може да бъде отключен неволно, ако например някой допре устройството до пръста му."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"За най-добри резултати използвайте защитен слой на екрана, който е със сертификат „Създадено за Google“. Отпечатъкът ви може да не работи с други защитни слоеве."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"За най-добри резултати използвайте защитен слой на екрана, който е със сертификат „Създадено за Google“. Отпечатъкът на детето ви може да не работи с други защитни слоеве."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Илюстрация с устройството и местоположението на сензора за отпечатък"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Име"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ОK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Нов опит"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Изтриване"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Докоснете сензора"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Поставете пръста си върху сензора и го вдигнете, след като усетите вибриране"</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Готово"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ами сега! Това не е сензорът"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"С показалеца си докоснете сензора на гърба на телефона."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Регистрирането не бе завършено"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Времевото ограничение за регистриране на отпечатък бе достигнато. Опитайте отново."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Настройването на отпечатък не завърши навреме"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Опитайте отново сега или настройте отпечатъка си по-късно от настройките"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Регистрирането на отпечатък не бе успешно. Опитайте отново или използвайте друг пръст."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Добавяне на друг"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Напред"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Персонализиране на телефона ви"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Изпробвайте различни стилове, тапети и др."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Скрийнсейвър"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"скрийнсейвър"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Използване на скрийнсейвър"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"При зареждане или връзка с докинг станция"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"И в двата случая"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"При зареждане"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"При свързване с докинг станция"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Никога"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Изкл."</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"За да контролирате какво се случва, когато телефонът е свързан с докинг станция и/или е в спящ режим, включете скрийнсейвъра."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Кога да стартира функцията"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Текущ скрийнсейвър"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Настройки"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Автоматична яркост"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Събуждане при повдигане"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Дисплей, открояващ важни неща"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Задаване на ПИН код"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Задаване на служебен ПИН код"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Задаване на фигура"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"За допълнителна сигурност задайте фигура за отключване на устройството"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Задаване на служебна фигура"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Задайте парола, за да ползвате отпечатък"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Задайте фигура, за да ползвате отпечатък"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Приложение за спешни случаи"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Нулиране на предпочитанията за приложенията"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Нулиране на предпочитанията?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Това действие ще нулира всички предпочитания за:\n\n"<li>"деактивираните приложения;"</li>\n<li>"известията за деактивирани приложения;"</li>\n<li>"стандартните приложения за действия;"</li>\n<li>"ограниченията за данни на заден план за приложенията;"</li>\n<li>" ограниченията за всички разрешения."</li>\n\n"Няма да загубите данни от приложенията."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Това действие ще нулира всички предпочитания за:\n\n"<li>"деактивираните приложения;"</li>\n<li>"известията за деактивирани приложения;"</li>\n<li>"стандартните приложения за действия;"</li>\n<li>"ограниченията за данни на заден план за приложенията;"</li>\n<li>"ограниченията за всички разрешения;"</li>\n<li>"настройките за използване на батерията."</li>\n\n"Няма да загубите данни от приложенията."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Нулиране на приложенията"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Управление на място"</string>
     <string name="filter" msgid="9039576690686251462">"Филтриране"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Нулиране на настройките"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Настройките за размер на текста и елементите на екрана бяха нулирани"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Да се нулира ли размерът на текста и елементите на екрана?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Предпочитанията ви за размера на текста и елементите на екрана ще се нулират към оригиналните настройки на телефона"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Предпочитанията ви за размера на текста и елементите на екрана ще се нулират към оригиналните настройки на телефона"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Предпочитанията ви за размера на текста и елементите на екрана ще се нулират към оригиналните настройки на таблета"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Нулиране"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Имаш ли планове за уикенда?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Отивам на плажа. Искаш ли да дойдеш?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Батерията не е използвана след последното пълно зареждане"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Батерията не е използвана през последните 24 ч"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Други потребители"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Прогнозата за оставащата батерия е въз основа на използването на устройството ви"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Приблизително оставащо време"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"До пълно зареждане"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Цялостна услуга за активиращи думи и взаимодействие"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Обикновено разпознаване на говор"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Тази услуга за гласово въвеждане ще може да извършва постоянно наблюдение на говора и да контролира от ваше име всички поддържащи говор приложения. Източникът й е <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Да се активира ли използването на услугата?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Настройки за локалното разпознаване"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Локално разпознаване"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Локално разпознаване на говор"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Предпочитана машина"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Настройки на машината"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Скорост и височина на речта"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Изтриване"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Всички приложения и данни в тази сесия ще бъдат изтрити."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Премахване"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Гост (вие)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Потребители"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Други потребители"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Изтриване на активността като гост"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Изтриване на всички приложения и данни при изход от режима на гост"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Изтриване на активността като гост?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Приложенията и данните от тази сесия като гост ще бъдат изтрити сега, а цялата бъдеща активност като гост ще се изтрива всеки път, когато излезете от режима на гост"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Включване на телефонните обаждания"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Включване на тел. обаждания и SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Изтриване на потребителя"</string>
@@ -4009,13 +4023,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Всички известия от: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Всички известия от: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Адаптивни известия"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> известия на ден</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> известие на ден</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Около <xliff:g id="NUMBER_1">%,d</xliff:g> известия на ден</item>
+      <item quantity="one">Около <xliff:g id="NUMBER_0">%d</xliff:g> известие на ден</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> известия на седмица</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> известие на седмица</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Около <xliff:g id="NUMBER_1">%,d</xliff:g> известия на седмица</item>
+      <item quantity="one">Около <xliff:g id="NUMBER_0">%d</xliff:g> известие на седмица</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Никога"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Известия в приложенията и на устройствата"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Да не се прави нищо"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Вибриране"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Спиране на звука"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"За да активирате, първо променете „Натиснете и задръжте бутона за включване/изключване“ към менюто за включване/изключване."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"За да активирате, първо променете „Натиснете и задръжте бутона за захранване“ към менюто за включване/изключване."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Подробности за мрежата"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Името на устройството ви е видимо за приложенията на телефона ви. То може да се вижда и от други хора, когато се свържете с устройства с Bluetooth или настроите точка за достъп до Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Устройства"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"контроли за устройството"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Карти и пропуски"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"карти и пропуски"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Натиснете и задръжте бутона за включване/изключване"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Натиснете и задръжте за Асистент"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Натиснете и задръжте за менюто за включване/изключване"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Опцията за натискане и задържане е деактивирана"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Натиснете и задръжте бутона за захранване"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"За достъп натиснете и задръжте бутона за захранване"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Меню за включване/изключване"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Дигитален асистент"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Достъп до дигиталния асистент"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Достъп до менюто за включване/изключване"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"За да използвате, първо задайте заключване на екрана"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Задържане за Асистент"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Задействайте Асистент, като задържите бутона за включване/изключване"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Меню за включване/изключване и при спешни случаи:\nНатиснете едновременно бутона за включване/изключване и този за увеличаване на силата на звука."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Предотвратяване на звъненето:\nВ менюто за силата на звука е налице пряк път."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Меню за включване/изключване:\nЕдновременно натиснете бутона за захранване и този за увеличаване на силата на звука"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Предотвратяване на звъненето:\nЗа целта натиснете бутон за силата на звука"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Продължителност на натискането и задържането"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Коригирайте чувствителността, като изберете колко дълго трябва да задържите натиснат бутона за включване/изключване"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Кратко"</string>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 7adadea..40a2275 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"সে Pixel Imprint ব্যবহার করার সময়, ফিঙ্গারপ্রিন্ট মডেল আপডেট করার জন্য সেইসব ছবি ব্যবহৃত হয়। আপনার সন্তানের ফিঙ্গারপ্রিন্ট মডেল তৈরির জন্য ব্যবহৃত ছবি কখনও সেভ করে রাখা হয় না, তবে ফোনে ফিঙ্গারপ্রিন্ট মডেল নিরাপদে সেভ করে রাখা হয় এবং কখনও ফোন থেকে মুছে যায় না। ফোনে সবকটি প্রসেস নিরাপদে করা হয়।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"সেটিংস থেকে যেকোনও সময় আপনি আঙ্গুলের ছাপের ছবি এবং মডেল মুছে ফেলতে পারেন অথবা ফিঙ্গারপ্রিন্ট আনলক ফিচার বন্ধ করতে পারেন। আপনি মুছে না দেওয়া পর্যন্ত আঙ্গুলের ছাপের ছবি এবং মডেল ফোনে থেকে যায়।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"আপনি ও আপনার সন্তান ফিঙ্গারপ্রিন্টের ছবি ও মডেল মুছে ফেলতে পারেন অথবা যে কোনও সময় সেটিংস থেকে \'ফিঙ্গারপ্রিন্ট আনলক\' ফিচারটি বন্ধ করে দিতে পারেন। মুছে না ফেলা পর্যন্ত ফিঙ্গারপ্রিন্টের ছবি ও মডেল ফোনে সেভ করা থাকে।"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"আপনি না চাইলেও, ফোনটি আপনার আঙুলে ছুঁইয়ে অন্য কেউ আপনার ফোন আনলক করতে পারেন।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"আপনি না চাইলেও, ফোনটি আপনার আঙুলে ছুঁইয়ে অন্য কেউ আপনার ফোন আনলক করতে পারেন।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"আপনি না চাইলেও, ট্যাবলেট আপনার আঙুলে ছুঁইয়ে অন্য কেউ সেটি আনলক করতে পারেন।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"আপনি না চাইলেও, ডিভাইস আপনার আঙুলে ছুঁইয়ে অন্য কেউ সেটি আনলক করতে পারেন।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"আপনার সন্তান না চাইলেও তার ফোন আনলক হয়ে যেতে পারে, যেমন যদি কেউ তার আঙুলটি ফিঙ্গারপ্রিন্টের নির্দিষ্ট জায়গায় ধরে।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"সবচেয়ে ভাল ফলাফল পেতে, Google-এর জন্য তৈরি হিসেবে সার্টিফিকেট প্রাপ্ত একটি স্ক্রিন প্রোটেকটর ব্যবহার করুন। অন্য কোনও স্ক্রিন প্রোটেকটর ব্যবহার করলে, আপনার আঙ্গুলের ছাপ কাজ নাও করতে পারে।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"সবচেয়ে ভাল ফলাফল পেতে, Google-এর জন্য তৈরি হিসেবে সার্টিফিকেট প্রাপ্ত একটি স্ক্রিন প্রোটেকটর ব্যবহার করুন। অন্য কোনও স্ক্রিন প্রোটেকটর ব্যবহার করলে, আপনার সন্তানের আঙ্গুলের ছাপ কাজ নাও করতে পারে।"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ডিভাইস এবং আঙ্গুলের ছাপ সেন্সরের অবস্থানের সাথে চিত্রালংকরণ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"নাম"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ঠিক আছে"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"আবার চেষ্টা করুন"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"মুছুন"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"সেন্সর স্পর্শ করুন"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"সেন্সরে আপনার আঙ্গুল রাখুন এবং আপনি একটি কম্পন অনুভব করার পর সরিয়ে নিন"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"সম্পন্ন"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ওহো, সেটি সেন্সর ছিল না"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"আপনার ফোন এর পিছনে থাকা সেন্সর স্পর্শ করুন। আপনার তর্জনী ব্যবহার করুন।"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"এনরোল করা যায়নি"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"আঙ্গুলের ছাপ তালিকাভুক্তির সময়সীমা শেষ হয়েছে। আবার চেষ্টা করুন৷"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ফিঙ্গারপ্রিন্ট সেট-আপ টাইম-আউট হয়ে গেছে"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"এখন চেষ্টা করুন অথবা পরে সেটিংস থেকে আপনার ফিঙ্গারপ্রিন্ট সেট-আপ করুন"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"আঙ্গুলের ছাপ তালিকাভুক্তিকরণ কাজ করেনি৷ আবার চেষ্টা করুন অথবা আলাদা কোনো আঙুল ব্যবহার করুন৷"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"আরেকটি জুড়ুন"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"পরবর্তী"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"আপনার ফোন কাস্টমাইজ করুন"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"বিভিন্ন স্টাইল, ওয়ালপেপার ও অনেক কিছু ব্যবহার করুন"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"স্ক্রিন সেভার"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"স্ক্রিন সেভার"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"স্ক্রিন সেভার ব্যবহার করা"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"চার্জ অথবা ডক করার সময়"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"উভয় ক্ষেত্রেই"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"চার্জ করার সময়"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ডক করে রাখার সময়"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"কখনই নয়"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"বন্ধ আছে"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ফোন ডক করা এবং/অথবা নিদ্রা মোডে থাকাকালীন কি হচ্ছে তা নিয়ন্ত্রণের জন্য স্ক্রিন সেভার চালু করুন।"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"কখন শুরু করবেন"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"বর্তমান স্ক্রিন সেভার"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"সেটিংস"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"স্বয়ংক্রিয় উজ্জ্বলতা"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"সক্রিয় করতে লিফ্ট করুন"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"অ্যাম্বিয়েন্ট ডিসপ্লে"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"একটি পিন সেট করুন"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"একটি অফিস প্রোফাইল পিন সেট করুন"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"একটি প্যাটার্ন সেট করুন"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"অতিরিক্ত সুরক্ষার জন্য, ডিভাইসটি আনলক করতে একটি প্যাটার্ন সেট করুন"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"একটি অফিস প্রোফাইল প্যাটার্ন সেট করুন"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"আঙ্গুলের ছাপ ব্যবহার করার জন্য পাসওয়ার্ড সেট করুন"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"আঙ্গুলের ছাপ ব্যবহার করার জন্য প্যাটার্ন সেট করুন"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"জরুরি অ্যাপ্লিকেশান"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"অ্যাপের ক্ষেত্রে পছন্দগুলি রিসেট করুন"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"অ্যাপ পছন্দ রিসেট করবেন?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"এটি নিম্নলিখিত বিষয়গুলির সব পছন্দ রিসেট করবে:\n\n"<li>" বন্ধ করা আছে এমন অ্যাপ"</li>\n<li>" বন্ধ করা আছে এমন অ্যাপের বিজ্ঞপ্তি"</li>\n<li>" অ্যাকশনের জন্য ডিফল্ট অ্যাপ্লিকেশন"</li>\n<li>" অ্যাপের ক্ষেত্রে ব্যাকগ্রাউন্ড ডেটার সীমাবদ্ধতা"</li>\n<li>" যেকোনও রকম অনুমতির সীমাবদ্ধতা"</li>\n\n" আপনি কোনও অ্যাপের ডেটা হারাবেন না।"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"এর ফলে এই ধরনের সব পছন্দ রিসেট করা হবে :\n\n"<li>"বন্ধ করা অ্যাপ"</li>\n<li>"বন্ধ করা অ্যাপ সংক্রান্ত বিজ্ঞপ্তি"</li>\n<li>"অ্যাকশনের জন্য ডিফল্ট অ্যাপ্লিকেশন"</li>\n<li>"অ্যাপের জন্য ব্যাকগ্রাউন্ড ডেটা সংক্রান্ত বিধিনিষেধ"</li>\n<li>"যেকোনও অনুমতি সংক্রান্ত বিধিনিষেধ"</li>\n<li>"ব্যাটারির ব্যবহার সংক্রান্ত সেটিংস"</li>\n\n"আপনি কোনও অ্যাপ ডেটা হারাবেন না।"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"অ্যাপ রিসেট করুন"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"জায়গা পরিচালনা করুন"</string>
     <string name="filter" msgid="9039576690686251462">"ফিল্টার"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"সেটিংস রিসেট করুন"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ডিসপ্লের সাইজ এবং টেক্সটের সেটিংস রিসেট করা হয়েছে"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ডিসপ্লে সাইজ ও টেক্সট রিসেট করবেন?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"আপনার ডিসপ্লে সাইজ ও টেক্সট সংক্রান্ত পছন্দ ফোনের আসল সেটিংসে রিসেট করা হবে"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"আপনার ডিসপ্লে সাইজ ও টেক্সট সংক্রান্ত পছন্দ ফোনের আসল সেটিংসে রিসেট করা হবে"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"আপনার ডিসপ্লে সাইজ ও টেক্সট সংক্রান্ত পছন্দ ট্যাবলেটের আসল সেটিংসে রিসেট করা হবে"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"রিসেট করুন"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"সপ্তাহান্তে কোনও প্ল্যান আছে?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"বিচে ঘুরতে যাচ্ছি। যোগ দিতে চান?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"শেষ বার সম্পূর্ণ চার্জ করার পরে আর ব্যাটারি ব্যবহার করা হয়নি"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"গত ২৪ ঘন্টায় ব্যাটারি আর ব্যবহার করা হয়নি"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"অন্যান্য ব্যবহারকারী"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"আপনার ডিভাইসের ব্যবহারের উপর ভিত্তি করে ব্যাটারি কতক্ষণ চলবে তার আনুমানিক হিসাব"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"আনুমানিক কতক্ষণ বাকি"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"সম্পূর্ণ চার্জ না হওয়া পর্যন্ত"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"পূর্ণ হটওয়ার্ড ও ইন্টারঅ্যাকশন"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"সাধারণ কথন থেকে পাঠ্যে"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"এই ভয়েস ইনপুট পরিষেবা আপনার হয়ে সর্বদা-চালু ভয়েস মনিটরিং সম্পাদন এবং ভয়েস সক্ষমিত অ্যাপ্লিকেশানগুলি নিয়ন্ত্রণ করতে পারবে। এটি <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> অ্যাপ্লিকেশান থেকে আসছে। এই পরিষেবার ব্যবহার সক্ষম করবেন?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"অন-ডিভাইস শনাক্তকরণ সেটিংস"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"অন-ডিভাইস শনাক্তকরণ"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"অন-ডিভাইস স্পিচ শনাক্তকরণ"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"পছন্দের ইঞ্জিন"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ইঞ্জিনের সেটিংস"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"কথা বলার রেট ও পিচ"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"মুছুন"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"এই সেশনের সব অ্যাপ ও ডেটা মুছে ফেলা হবে।"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"সরান"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"অতিথি (আপনি)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ব্যবহারকারী"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"অন্যান্য ব্যবহারকারী"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"অতিথি অ্যাক্টিভিটি মুছুন"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"\'অতিথি মোড\' ছেড়ে বেরিয়ে আসার সময় সব অতিথি অ্যাপ ও ডেটা মুছুন"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"অতিথি অ্যাক্টিভিটি মুছবেন?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"এই অতিথি সেশন থেকে এখন অ্যাপ এবং ডেটা মুছে দেওয়া হবে ও আপনি প্রত্যেকবার \'অতিথি মোড\' ছেড়ে বেরিয়ে আসার সময় পরবর্তী সব অতিথি অ্যাক্টিভিটি মুছে যাবে"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ফোন কলের সুবিধা চালু করুন"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ফোন কল এবং এসএমএস চালু করবেন?"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ব্যবহারকারীর অ্যাকাউন্ট মুছে দিন"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"সমস্ত \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" বিজ্ঞপ্তি"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"সমস্ত <xliff:g id="APP_NAME">%1$s</xliff:g> সংক্রান্ত বিজ্ঞপ্তি"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"অ্যাডাপটিভ বিজ্ঞপ্তি"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g>টি বিজ্ঞপ্তি প্রতিদিন</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g>টি বিজ্ঞপ্তি প্রতিদিন</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">প্রতিদিন প্রায় <xliff:g id="NUMBER_1">%,d</xliff:g>টি বিজ্ঞপ্তি</item>
+      <item quantity="other">প্রতিদিন প্রায় <xliff:g id="NUMBER_1">%,d</xliff:g>টি বিজ্ঞপ্তি</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">প্রতি সপ্তাহে ~<xliff:g id="NUMBER_1">%,d</xliff:g>টি বিজ্ঞপ্তি</item>
-      <item quantity="other">প্রতি সপ্তাহে ~<xliff:g id="NUMBER_1">%,d</xliff:g>টি বিজ্ঞপ্তি</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">প্রতি সপ্তাহে প্রায় <xliff:g id="NUMBER_1">%,d</xliff:g>টি বিজ্ঞপ্তি</item>
+      <item quantity="other">প্রতি সপ্তাহে প্রায় <xliff:g id="NUMBER_1">%,d</xliff:g>টি বিজ্ঞপ্তি</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"কখনও না"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ডিভাইস এবং অ্যাপ বিজ্ঞপ্তি"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"যেমন আছে থাক"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"কম্পন"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"মিউট"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"চালু করতে, আগে পাওয়ার মেনু থেকে \"পাওয়ার বোতাম প্রেস করে ধরে রাখুন\" বিকল্পটি পরিবর্তন করুন।"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"চালু করতে, আগে পাওয়ার মেনুতে \"পাওয়ার বোতাম প্রেস করে ধরে রাখুন\" বিকল্পটি পরিবর্তন করুন।"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"নেটওয়ার্কের বিবরণ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"আপনার ফোনের অ্যাপে আপনার ডিভাইসের নাম দেখা যাবে। আপনি ব্লুটুথ ডিভাইসে বা ওয়াই-ফাই নেটওয়ার্কে কানেক্ট করলে অথবা ওয়াই-ফাই হটস্পট সেট আপ করলে এটি অন্যরাও হয়ত দেখতে পাবেন।"</string>
     <string name="devices_title" msgid="649715719278562515">"ডিভাইস"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ডিভাইস কন্ট্রোল"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"কার্ড এবং পাস"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"কার্ড এবং পাস"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"\'পাওয়ার বোতাম\' প্রেস করে ধরে থাকুন"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant ব্যবহার করতে প্রেস করে ধরে থাকুন"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"\'পাওয়ার\' মেনু প্রেস করে ধরে থাকুন"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"\'প্রেস করে ধরে থাকা\' জেসচারটি বন্ধ করা আছে"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"পাওয়ার বোতাম প্রেস করে ধরে রাখুন"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"অ্যাক্সেসের জন্য পাওয়ার বোতাম প্রেস করে ধরে রাখুন"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"পাওয়ার মেনু"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ডিজিটাল অ্যাসিস্ট্যান্ট"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ডিজিটাল অ্যাসিস্ট্যান্ট অ্যাক্সেস করুন"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"পাওয়ার মেনু অ্যাক্সেস করুন"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ব্যবহার করার জন্য প্রথমে একটি স্ক্রিন লক সেট করুন"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant চালু করার জন্য পাওয়ার বোতাম প্রেস করে ধরে রাখুন"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"পাওয়ার বোতাম প্রেস করে ধরে রেখে Assistant চালু করুন"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"পাওয়ার ও ইমারজেন্সি মেনু:\nএকসাথে \'পাওয়ার\' এবং \'ভলিউম বাড়ানোর বোতাম\' প্রেস করুন।"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"রিং হওয়া বন্ধ করতে:\n\'ভলিউম\' মেনুতে শর্টকাট রয়েছে।"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"পাওয়ার মেনু:\nএকই সাথে পাওয়ার বোতাম ও ভলিউম বাড়ানোর বোতাম প্রেস করুন"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"রিং হওয়া প্রতিরোধ করুন:\nশর্টকার্ট ব্যবহার করার জন্য ভলিউমের বোতাম প্রেস করুন"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"বোতাম টিপে রাখার সময়"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"পাওয়ার বোতাম কতক্ষণ টিপে ধরে থাকবেন সেটি বেছে নিয়ে সেন্সিটিভিটি অ্যাডজাস্ট করুন"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"কম সময়ের জন্য"</string>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index 911ce0d..df554e0 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -468,7 +468,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Kada dijete koristi Pixel Imprint, slike će se koristiti da se ažurira njegov model otiska prsta. Slike koje se koriste da se kreira model otiska prsta djeteta se nikada ne pohranjuju, ali model otiska prsta se sigurno pohranjuje na telefonu i nikad ga ne napušta. Cjelokupna obrada se vrši sigurno na telefonu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Slike otiska prsta i model bilo kada možete izbrisati ili možete isključiti otključavanje otiskom prsta u Postavkama. Slike otiska prsta i modeli se pohranjuju na telefonu dok ih ne izbrišete."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Vi i vaše dijete možete bilo kada u Postavkama izbrisati slike otiska prsta djeteta i model ili isključiti otključavanje otiskom prsta. Slike otiska prsta i modeli će biti pohranjeni na telefonu dok ih ne izbrišete."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Vaš telefon se može otključati kada vam to nije namjera, npr. kada ga neko prinese vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Vaš telefon se može otključati kada vam to nije namjera, npr. kada ga neko prinese vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Vaš tablet se može otključati kada vam to nije namjera, naprimjer, kada ga neko prinese vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Vaš uređaj se može otključati kada vam to nije namjera, naprimjer, kada ga neko prinese vašem prstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefon vašeg djeteta se može otključati kada to djetetu nije namjera, npr. kada ga neko prinese prstu djeteta."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Za najbolje rezultate koristite zaštitu ekrana koja ima oznaku Proizvedeno za Google. Moguće je da vaš otisak prsta neće funkcionirati s drugim zaštitama ekrana."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Za najbolje rezultate koristite zaštitu ekrana koja ima oznaku Proizvedeno za Google. Moguće je da otisak prsta vašeg djeteta neće funkcionirati s drugim zaštitama ekrana."</string>
@@ -518,6 +520,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustracija sa uređajem i lokacijom senzora za otisak prsta"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Naziv"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Uredu"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Pokušajte ponovo"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Izbriši"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Dodirnite senzor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Stavite prst na senzor i podignite ga kad osjetite vibraciju"</string>
@@ -595,8 +598,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Gotovo"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ups, to nije senzor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Dodirnite senzor na poleđini telefona. Koristite kažiprst."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registracija nije dovršena"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Vrijeme za registraciju otiska prsta je isteklo. Pokušajte ponovo."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Vrijeme za postavljanje otiska je isteklo"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Pokušajte ponovo sada ili postavite otisak prsta kasnije u Postavkama"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registracija otiska prsta nije uspjela. Pokušajte ponovo ili koristite drugi prst."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Dodajte još jedan"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Naprijed"</string>
@@ -1468,17 +1471,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Prilagodite telefon"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Isprobajte različite stilove, pozadinske slike i još mnogo toga"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Čuvar ekrana"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"čuvar ekrana"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Koristi čuvara ekrana"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Tokom punjenja ili kada je na priključnoj stanici"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Bilo koje"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Tokom punjenja"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Kada je na priključnoj stanici"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nikada"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Isključeno"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Za kontrolisanje dešavanja kada je telefon priključen i/ili dok miruje, uključi čuvara ekrana."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kada početi"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Trenutni čuvar ekrana"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Postavke"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatsko osvjetljenje"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Podignite za buđenje"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambijentalni prikaz"</string>
@@ -1968,6 +1969,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Postavite PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Postavite PIN radnog profila"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Postavite uzorak"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Za dodatnu sigurnost postavite uzorak da otključate uređaj"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Postavite uzorak radnog profila"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Da koristite otisak prsta, postavite lozinku"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Da koristite otisak prsta, postavite uzorak"</string>
@@ -2123,7 +2125,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikacija za hitne situacije"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Vrati postavke aplikacije na zadano"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Vratiti postavke aplikacije na zadano?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Na ovaj način će se vratiti sve postavke na zadano za:\n\n"<li>"Onemogućene aplikacije"</li>\n<li>"Obavještenja za onemogućene aplikacije"</li>\n<li>"Zadane aplikacije za radnje"</li>\n<li>"Ograničenje pozadinskih podataka za aplikacije"</li>\n<li>"Sva ograničenja za odobrenja"</li>\n\n"Nećete izgubiti podatke iz aplikacija."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Ovim će se vratiti sve postavke na zadano za:\n\n"<li>"onemogućene aplikacije"</li>\n<li>"obavještenja za onemogućene aplikacije"</li>\n<li>"zadane aplikacije za radnje"</li>\n<li>"ograničenja pozadinskih podataka za aplikacije"</li>\n<li>"sva ograničenja za odobrenja"</li>\n<li>"postavke korištenja baterije"</li>\n\n"Nećete izgubiti podatke iz aplikacija."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Vrati aplikacije na zadano"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Upravljaj prostorom"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2378,7 +2380,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Vrati postavke na zadano"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Postavke veličine ekrana i teksta su poništene"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Vratiti veličinu ekrana i tekst na zadano?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Vaše preference za veličinu ekrana i tekst će se vratiti na originalne postavke telefona"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Vaše preference za veličinu ekrana i tekst će se vratiti na originalne postavke telefona"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Vaše postavke veličine ekrana i teksta će se vratiti na prvobitne postavke tableta"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Vrati na zadano"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Šta planiraš za vikend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Idem na plažu. Želiš li sa mnom?"</string>
@@ -2972,6 +2975,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nema korištenja od posljednje potpune napunjenosti"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nema korištenja za posljednja 24 h"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Drugi korisnici"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Procjena preostalog trajanja baterije zasnovana je na korištenju uređaja"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Procjena preostalog vremena"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Do potpune napunjenosti"</string>
@@ -3061,6 +3065,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Cela aktuelna reč i interakcija"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Jednostavno pretvaranje govora u tekst"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ova usluga za glasovni unos će biti u mogućnosti da obavlja uvijek uključeno praćenje glasa i da u vaše ime kontrolira aplikacije omogućene glasom. Ona dolazi iz <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> aplikacija. Omogućiti korištenje ove usluge?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Postavke prepoznavanja na uređaju"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Prepoznavanje na uređaju"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Prepoznavanje govora na uređaju"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Željeni alat"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Postavke programa"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Brzina govora i visina glasa"</string>
@@ -3457,6 +3464,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Izbriši"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Sve aplikacije i podaci iz ove sesije će se izbrisati."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Ukloniti"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gost (vi)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Korisnici"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Drugi korisnici"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Izbrišite aktivnost gosta"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Izbrisati sve aplikacije i podatke gosta pri izlasku iz načina rada za gosta"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Izbrisati aktivnost gosta?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplikacije i podaci iz ove sesije gosta će se izbrisati sada, a sve buduće aktivnosti gosta će se izbrisati svaki put kada napustite način rada za gosta"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Uključi telefonske pozive"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Uključi telefonske pozive i SMS-ove"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Izbriši korisnika"</string>
@@ -4051,15 +4065,15 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Sva obavještenja aplikacije \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Sva obavještenja aplikacije <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Prilagodljiva obavještenja"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavještenje dnevno</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavještenja dnevno</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavještenja dnevno</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">O <xliff:g id="NUMBER_1">%,d</xliff:g> obavještenju na dan</item>
+      <item quantity="few">O <xliff:g id="NUMBER_1">%,d</xliff:g> obavještenja na dan</item>
+      <item quantity="other">O <xliff:g id="NUMBER_1">%,d</xliff:g> obavještenja na dan</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavještenje sedmično</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavještenja sedmično</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavještenja sedmično</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">O <xliff:g id="NUMBER_1">%,d</xliff:g> obavještenju sedmično</item>
+      <item quantity="few">O <xliff:g id="NUMBER_1">%,d</xliff:g> obavještenja sedmično</item>
+      <item quantity="other">O <xliff:g id="NUMBER_1">%,d</xliff:g> obavještenja sedmično</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nikada"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Obavještenja uređaja i aplikacija"</string>
@@ -5339,7 +5353,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ne čini ništa"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibracija"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Isključi zvuk"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Da omogućite, prvo promijenite \"Pritisnite i držite dugme za uključivanje\" u meni napajanja."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Da omogućite, najprije promijenite opciju \"Pritisnite i zadržite dugme za uključivanje\" u meni napajanja."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalji o mreži"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Aplikacije na vašem telefonu će moći vidjeti naziv vašeg uređaja. Također će ga moći vidjeti druge osobe prilikom povezivanja s Bluetooth uređajima i WiFi mrežom ili prilikom postavljanja WiFi pristupne tačke."</string>
     <string name="devices_title" msgid="649715719278562515">"Uređaji"</string>
@@ -5629,15 +5643,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"kontrole uređaja"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartice i propusnice"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartice i propusnice"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Pritisnite i držite dugme za uključivanje"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Pritisnite i držite da pokrenete Asistenta"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Pritisnite i držite da otvorite meni napajanja"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Onemogućena je funkcija pritiska i zadržavanja"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Pritisnite i zadržite dugme za uključivanje"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Pritisnite i zadržite dugme za uključivanje da pristupite"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Meni napajanja"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitalni asistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Pristupite digitalnom asistentu"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Pristupite meniju napajanja"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Da koristite, prvo postavite zaključavanje ekrana"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Zadržavanje za aktiviranje Asistenta"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Aktivirajte Asistenta držanjem dugmeta za uključivanje"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Meni napajanja i hitnih službi:\nIstovremeno pritisnite dugme za uključivanje i dugme za pojačavanje zvuka."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Sprječavanje zvonjenja:\nPrečica je dostupna u meniju jačine zvuka."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Meni napajanja:\nistovremeno pritisnite dugme za uključivanje i dugme za pojačavanje zvuka"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Spriječite zvonjenje:\nza prečicu pritisnite dugme za jačinu zvuka"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Trajanje pritiska i držanja"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Podesite osjetljivost odabirom koliko dugo treba pritisnuti i držati dugme za uključivanje"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kratko"</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 38f4f7d..112b427 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Quan fa servir Pixel Imprint, les imatges s\'utilitzen per actualitzar el seu model d\'empremta digital. Les imatges utilitzades per crear-lo no s\'emmagatzemen mai, però el model d\'empremta digital sí que s\'emmagatzema de manera segura i no surt del dispositiu. Tot el procés es fa de manera segura al telèfon."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Pots suprimir les imatges i el model de l\'empremta digital o desactivar el desbloqueig amb empremta digital en qualsevol moment a Configuració. Les imatges i els models d\'empremta digital s\'emmagatzemen al telèfon fins que els suprimeixes."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Tu i el teu fill podeu suprimir les imatges i el model de la seva empremta digital o desactivar Desbloqueig amb empremta digital en qualsevol moment a Configuració. Les imatges i els models d\'empremta digital s\'emmagatzemen al telèfon fins que se suprimeixin."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"El teu telèfon es pot desbloquejar sense voler, per exemple si algú te l\'acosta al dit."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"El teu telèfon es pot desbloquejar sense voler, per exemple si algú te l\'acosta al dit."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"La tauleta es pot desbloquejar sense voler; per exemple, si algú te l\'acosta al dit."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"El dispositiu es pot desbloquejar sense voler; per exemple, si algú te l\'acosta al dit."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"El telèfon del teu fill es pot desbloquejar sense voler, com quan algú li l\'apropi al dit."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Per obtenir els millors resultats, utilitza un protector de pantalla que tingui la certificació Made For Google. Si utilitzes altres protectors de pantalla, pot ser que la teva empremta digital no funcioni."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Per obtenir els millors resultats, utilitza un protector de pantalla que tingui la certificació Made For Google. Si utilitzes altres protectors de pantalla, pot ser que l\'empremta digital del teu fill o filla no funcioni."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Il·lustració amb la ubicació del sensor d\'empremtes digitals i de dispositiu"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nom"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"D\'acord"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Torna-ho a provar"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Suprimeix"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Toca el sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Col·loca el dit al sensor i aixeca\'l quan notis una vibració"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Fet"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Això no és el sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Toca el sensor situat a la part posterior amb el dit índex."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"No s\'ha completat el registre"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"S\'ha esgotat el límit de temps per inscriure l\'empremta digital. Torna-ho a provar."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Temps esgotat per configurar l\'empremta digital"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Torna-ho a provar ara o configura l\'empremta digital més tard a Configuració"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"El registre de l\'empremta digital no ha funcionat. Torna-ho a provar o fes servir un altre dit."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Afegeix-ne una altra"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Següent"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personalitza el telèfon"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Prova diferents estils, fons de pantalla i més"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Estalvi de pantalla"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"estalvi de pantalla"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Utilitza l\'estalvi de pantalla"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Mentre es carrega o està acoblat a la base"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Els dos casos"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Mentre es carrega"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Mentre està acoblat a la base"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Mai"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Desactivat"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Per controlar què passa quan el telèfon està acoblat a una base o en mode de repòs, activa l\'estalvi de pantalla."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Quan comença"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Estalvi de pantalla actual"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Configuració"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Brillantor adaptativa"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Aixeca el dispositiu per activar-lo"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Pantalla ambient"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Defineix un PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Defineix un PIN de treball"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Defineix un patró"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Per a més seguretat, defineix un patró per desbloquejar el dispositiu"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Defineix un patró de treball"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Per utilitzar l\'empremta, defineix una contrasenya"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Per utilitzar l\'empremta, defineix un patró"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplicació en casos d\'emergència"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Restableix les preferències de les aplicacions"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Vols restablir les preferències de les aplicacions?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Es restabliran totes les preferències de:\n\n"<li>"Aplicacions desactivades"</li>\n<li>"Notificacions d\'aplicacions desactivades"</li>\n<li>"Aplicacions predeterminades per a les accions"</li>\n<li>"Restriccions de dades en segon pla per a les aplicacions"</li>\n<li>"Restriccions de permisos"</li>\n\n"No perdràs les dades de les aplicacions."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Es restabliran totes les preferències relacionades amb:\n\n"<li>"Les aplicacions desactivades"</li>\n<li>"Les notificacions d\'aplicacions desactivades"</li>\n<li>"Les aplicacions predeterminades per a accions"</li>\n<li>"Les restriccions de dades en segon pla per a aplicacions"</li>\n<li>"Qualsevol restricció de permisos"</li>\n<li>"La configuració d\'ús de la bateria"</li>\n\n"No es perdran les dades de les aplicacions."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Restableix aplicacions"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gestiona l\'espai"</string>
     <string name="filter" msgid="9039576690686251462">"Filtra"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Restableix la configuració"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"S\'han restablert la mida de visualització i la configuració del text"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Vols restablir la mida de la pantalla i el text?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Es restablirà la configuració original del telèfon pel que fa a les preferències de text i mida de la pantalla"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Es restablirà la configuració original del telèfon pel que fa a les preferències de text i mida de la pantalla"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Es restablirà la configuració original de la tauleta pel que fa a les preferències de text i mida de la pantalla"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Restableix"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Tens algun pla aquest cap de setmana?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Aniré a la platja. Vols venir?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Sense ús des de la darrera càrrega completa"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Sense ús durant les 24 darreres hores"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Altres usuaris"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"L\'estimació de la bateria restant es basa en l\'ús del teu dispositiu"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Temps estimat restant"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Fins a completar la càrrega"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Paraula d\'activació i interacció completes"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Conversió de parla a text simple"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Aquest servei d\'entrada de veu podrà supervisar sempre la veu i controlar les aplicacions compatibles amb l\'entrada de veu en nom teu. Procedeix de l\'aplicació <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Vols activar l\'ús d\'aquest servei?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Configuració del reconeixement al dispositiu"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Reconeixement al dispositiu"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Reconeixement de parla al dispositiu"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motor preferent"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Configuració del motor"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Velocitat i to de veu"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Suprimeix"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Totes les aplicacions i les dades d\'aquesta sessió se suprimiran."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Suprimeix"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Convidat (Tu)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Usuaris"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Altres usuaris"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Suprimeix l\'activitat de convidat"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Suprimeix totes les aplicacions i dades de la sessió de convidat en sortir d\'aquest mode"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Suprimir l\'activitat de convidat?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Les aplicacions i les dades d\'aquesta sessió de convidat se suprimiran ara, i tota l\'activitat de convidat que facis en el futur se suprimirà cada vegada que surtis del mode de convidat"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Activa les trucades telefòniques"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Activa les trucades telefòniques i els SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Suprimeix l\'usuari"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Totes les notificacions de: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Totes les notificacions de l\'aplicació <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notificacions adaptatives"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notificacions al dia</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notificació al dia</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Aproximadament <xliff:g id="NUMBER_1">%,d</xliff:g> notificacions per dia</item>
+      <item quantity="one">Aproximadament <xliff:g id="NUMBER_0">%d</xliff:g> notificació per dia</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notificacions a la setmana</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notificació a la setmana</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Aproximadament <xliff:g id="NUMBER_1">%,d</xliff:g> notificacions per setmana</item>
+      <item quantity="one">Aproximadament <xliff:g id="NUMBER_0">%d</xliff:g> notificació per setmana</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Mai"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Notificacions del dispositiu i d\'aplicacions"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"No fer res"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibra"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Silencia"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Per activar la funció, primer canvia l\'opció Mantén premut el botó d\'engegada al menú d\'engegada."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Per activar la funció, al menú d\'engegada, primer canvia l\'opció Mantén premut el botó d\'engegada."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalls de la xarxa"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"El nom del dispositiu és visible per a les aplicacions del telèfon. També el poden veure altres persones si el connectes a un dispositiu Bluetooth o a una xarxa Wi‑Fi, o si configures un punt d\'accés Wi‑Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispositius"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"controls de dispositius"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Targetes i passis"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"targetes i passis"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Mantén premut el botó d\'engegada"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Mantén premut per obrir l\'Assistent"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Mantén premut per obrir el menú d\'engegada"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Mantén premut està desactivat"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Mantén premut el botó d\'engegada"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Mantén premut el botó d\'engegada per accedir"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menú d\'engegada"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Assistent digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Accés a l\'assistent digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Accés al menú d\'engegada"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Per utilitzar aquesta opció, has de definir un bloqueig de pantalla"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Mantén premut per utilitzar l\'Assistent"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Activa l\'Assistent mantenint premut el botó d\'engegada"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menú d\'engegada i emergència:\nPrem els botons d\'engegada i d\'apujar el volum al mateix temps."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Impedeix els sons:\nDrecera disponible al menú de volum."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menú d\'engegada:\nPrem el botó d\'engegada i el d\'apujar el volum a la vegada"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Impedeix els sons:\nPrem un botó de volum per fer servir la drecera"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Durada de mantenir premut"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Tria quanta estona vols mantenir premut el botó d\'engegada per ajustar la sensibilitat"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Curt"</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 29335e2..ae0cd6f 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Když dítě používá Pixel Imprint, snímky slouží k aktualizaci modelu jeho otisku prstu. Snímky použité k vytvoření modelu otisku prstu se nikdy neukládají, ale model otisku prstu je bezpečně uložen v telefonu (a nikdy ho neopouští). Ke zpracování dochází bezpečně v telefonu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"V Nastavení můžete snímky a model otisku prstu kdykoli smazat, případně odemknutí otiskem prstu vypnout. Snímky a modely otisků prstů budou v telefonu uloženy, dokud je nesmažete."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"V Nastavení můžete vy nebo vaše dítě snímky a model otisku prstu kdykoli smazat, případně odemknutí otiskem prstu vypnout. Snímky a modely otisků prstů zůstanou v telefonu uloženy, dokud nebudou smazány."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Váš telefon lze odemknout, i když to nezamýšlíte, třeba když ho někdo podrží u vašeho prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Váš telefon lze odemknout, i když to nezamýšlíte, třeba když ho někdo podrží u vašeho prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tablet se může odemknout, aniž byste to chtěli, například když ho někdo podrží u vašeho prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Zařízení se může odemknout, aniž byste to chtěli, například když ho někdo podrží u vašeho prstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefon dítěte lze odemknout, i když to nezamýšlí, třeba když ho někdo podrží u prstu dítěte."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Nejlepších výsledků dosáhnete s ochranou displeje, která má certifikát Made for Google. S ostatními ochranami displeje nemusí otisk prstu fungovat."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Nejlepších výsledků dosáhnete s ochranou displeje, která má certifikát Made for Google. S ostatními ochranami displeje nemusí otisk prstu dítěte fungovat."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustrace se zařízením a polohou senzoru otisků prstů"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Název"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Zkusit znovu"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Smazat"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Dotkněte se senzoru"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Položte prst na senzor. Zvedněte ho, až zařízení zavibruje."</string>
@@ -599,8 +602,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Hotovo"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Jejda, to není senzor."</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Dotkněte se senzoru na zadní straně telefonu. Použijte ukazováček."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registrace nebyla dokončena"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Bylo dosaženo časového limitu registrace otisku prstu. Zkuste to znovu."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Časový limit nastavení otisku prstu vypršel"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Zkuste to znovu nebo otisk prstu nastavte později v Nastavení"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registrace otisku prstu nefungovala. Zkuste to znovu nebo použijte jiný prst."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Přidat další"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Další"</string>
@@ -1488,17 +1491,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Přizpůsobení telefonu"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Vyzkoušejte různé styly, tapety apod."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Spořič obrazovky"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"spořič obrazovky"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Používat spořič obrazovky"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Při nabíjení nebo v doku"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"V obou případech"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Při nabíjení"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Při vložení do doku"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nikdy"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Vyp."</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Chcete-li nastavit, co se stane, když je telefon vložen do doku nebo je v režimu spánku, zapněte spořič obrazovky."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kdy spustit"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Aktuální spořič obrazovky"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Nastavení"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatický jas"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Probudit zvednutím zařízení"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambientní displej"</string>
@@ -1990,6 +1991,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Nastavte kód PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Nastavte pracovní PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Nastavte gesto"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Pro ještě lepší zabezpečení nastavte gesto k odemknutí zařízení"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Nastavte pracovní gesto"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Otisk vyžaduje nastavení hesla"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Otisk vyžaduje nastavení gesta"</string>
@@ -2147,7 +2149,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikace k příjmu výstražných zpráv"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Obnovit nastavení aplikací"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Obnovit nastavení aplikací?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Touto akcí obnovíte všechna nastavení pro:\n\n"<li>"deaktivované aplikace,"</li>\n<li>"deaktivovaná oznámení aplikací,"</li>\n<li>"výchozí aplikace k provádění akcí,"</li>\n<li>"omezení dat na pozadí pro aplikace,"</li>\n<li>"omezení oprávnění."</li>\n\n"O žádná data aplikací nepřijdete."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Tímto resetujete všechny následující předvolby:\n\n"<li>"deaktivované aplikace,"</li>\n<li>"zakázaná oznámení aplikací,"</li>\n<li>"výchozí aplikace pro různé akce,"</li>\n<li>"omezení datových přenosů na pozadí pro aplikace,"</li>\n<li>"veškerá omezení oprávnění,"</li>\n<li>"nastavení využití baterie."</li>\n\n"Nepřijdete o žádná data aplikací."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Obnovit aplikace"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Spravovat místo"</string>
     <string name="filter" msgid="9039576690686251462">"Filtrovat"</string>
@@ -2402,7 +2404,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Resetovat nastavení"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Velikost zobrazení a nastavení textu byla resetována"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Resetovat velikost obrazovky a text?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Předvolby velikosti obrazovky a textu se resetují na původní nastavení telefonu"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Předvolby velikosti obrazovky a textu se resetují na původní nastavení telefonu"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Předvolby velikosti obrazovky a textu se resetují na původní nastavení tabletu"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Resetovat"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Máš plány na víkend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Jdu na pláž. Přidáš se?"</string>
@@ -3010,6 +3013,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Od posledního nabití žádné využití"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Za posledních 24 hodin žádné využití"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Další uživatelé"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Odhad zbývající výdrže baterie vychází z vašeho používání zařízení"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Odhadovaný zbývající čas"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Do úplného nabití"</string>
@@ -3099,6 +3103,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Úplná aktivace klíčových slov a interakce"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Jednoduchý převod řeči na text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Služba hlasového zadávání bude moci neustále monitorovat hlas a ovládat za vás aplikace s aktivovaným hlasovým zadáváním. Služba pochází z <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Chcete použití této služby povolit?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Nastavení rozpoznávání na zařízení"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Rozpoznávání na zařízení"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Rozpoznávání řeči na zařízení"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Preferovaný modul"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Nastavení modulu"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Rychlost řeči a výška hlasu"</string>
@@ -3499,6 +3506,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Smazat"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Veškeré aplikace a data v této relaci budou vymazána."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Odstranit"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Host (vy)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Uživatelé"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Další uživatelé"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Smazat aktivitu hosta"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Při ukončení režimu hosta smazat všechny aplikace a data hosta"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Smazat aktivitu hosta?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplikace a data z této relace hosta budou nyní smazány a veškerá budoucí aktivita hostů bude smazána pokaždé, když opustíte režim hosta"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Zapnout telefonní hovory"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Zapnout telefonní hovory a SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Smazání uživatele"</string>
@@ -4095,17 +4109,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"<xliff:g id="APP_NAME">%1$s</xliff:g>: všechna oznámení"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Všechna oznámení aplikace <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptivní oznámení"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za den</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za den</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za den</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> oznámení za den</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="few">Přibližně <xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za den</item>
+      <item quantity="many">Přibližně <xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za den</item>
+      <item quantity="other">Přibližně <xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za den</item>
+      <item quantity="one">Přibližně <xliff:g id="NUMBER_0">%d</xliff:g> oznámení za den</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za týden</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za týden</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za týden</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> oznámení za týden</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="few">Přibližně <xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za týden</item>
+      <item quantity="many">Přibližně <xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za týden</item>
+      <item quantity="other">Přibližně <xliff:g id="NUMBER_1">%,d</xliff:g> oznámení za týden</item>
+      <item quantity="one">Přibližně <xliff:g id="NUMBER_0">%d</xliff:g> oznámení za týden</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nikdy"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Oznámení v zařízeních a aplikacích"</string>
@@ -5423,7 +5437,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Nic nedělat"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrace"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Vypnout zvuk"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Pokud tuto možnost chcete zapnout, nejdříve změňte nastavení podržení vypínače na nabídku vypínače."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Pokud chcete zapnout tuto možnost, nejdříve změňte akci přidruženou k podržení vypínače tak, aby se jím otevírala nabídka vypínače."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Podrobnosti sítě"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Název vašeho zařízení je viditelný pro aplikace v telefonu. Mohou ho vidět také ostatní uživatelé, když se připojíte k zařízení Bluetooth nebo síti Wi-Fi, případně když vytvoříte hotspot Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Zařízení"</string>
@@ -5716,15 +5730,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ovládání zařízení"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Platební a ostatní karty"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"platební a ostatní karty"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Podržení vypínače"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Podržením aktivujete Asistenta"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Podržením aktivujete nabídku vypínače"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Podržení je deaktivováno"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Podržení vypínače"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Otevřete podržením vypínače"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Nabídka vypínače"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitální asistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Aktivace digitálního asistenta"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Otevření nabídky vypínače"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Před použitím nejdříve nastavte zámek obrazovky"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Aktivovat Asistenta podržením"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Asistenta aktivujete podržením vypínače"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Nabídka napájení a tísňového volání:\nStiskněte současně vypínač a tlačítko zvýšení hlasitosti."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Zabránit vyzvánění:\nZkratka je k dispozici v nabídce hlasitosti."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Nabídka vypínače:\nStiskněte současně vypínač a tlačítko zvýšení hlasitosti."</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Vypnutí vyzvánění:\nStiskněte tlačítko hlasitosti pro zkratku"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Délka podržení"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Nastavte citlivost úpravou délky podržení vypínače"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Krátké"</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 11b453c..ee84d05 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Når barnet bruger Pixel Imprint, bruges billederne til at opdatere barnets fingeraftryksmodel. De billeder, der bruges til at oprette dit barns fingeraftryksmodel, gemmes aldrig, men fingeraftryksmodellen gemmes på sikker vis på telefonen, og den forlader aldrig telefonen. Al behandling sker på sikker vis på telefonen."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Du kan til enhver tid slette dine fingeraftryksbilleder og din fingeraftryksmodel eller deaktivere Oplåsning med fingeraftryk i Indstillinger. Fingeraftryksbilleder og fingeraftryksmodellen gemmes på telefonen, indtil du sletter dem."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Du og dit barn kan til enhver tid slette barnets billeder og model eller deaktivere oplåsning med fingeraftryk i Indstillinger. Fingeraftryksbilleder og -modeller gemmes på telefonen, indtil de slettes."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Din telefon kan blive låst op, når det ikke er meningen, f.eks. hvis nogen holder din finger op mod den."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Din telefon kan blive låst op, når det ikke er meningen, f.eks. hvis nogen holder din finger op mod den."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Din tablet kan blive låst op utilsigtet, f.eks. hvis nogen holder din finger op mod den."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Din enhed kan blive låst op utilsigtet, f.eks. hvis nogen holder din finger op mod den."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Dit barns telefon kan låses op, når det ikke er meningen, f.eks. hvis nogen holder den op mod dit barns finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Du får de bedste resultater ved at bruge en skærmbeskytter, der er Made For Google-certificeret. Dit fingeraftryk virker muligvis ikke med andre skærmbeskyttere."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Du får de bedste resultater ved at bruge en skærmbeskytter, der er Made For Google-certificeret. Dit barns fingeraftryk virker muligvis ikke med andre skærmbeskyttere."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustration med enhed og lokation af fingeraftrykslæser"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Navn"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Prøv igen"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Slet"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Tryk på sensoren"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Placer fingeren på sensoren, og løft, når du mærker en vibration"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Udfør"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Hov! Dette er ikke sensoren"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Tryk på sensoren bagpå med pegefingeren."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Scanningen kunne ikke gennemføres"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Tidsgrænsen for registrering af fingeraftryk blev overskredet. Prøv igen."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Konfigurationen af fingeraftryk fik timeout"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Prøv igen nu, eller konfigurer fingeraftryk senere under Indstillinger"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registrering af fingeraftryk virkede ikke. Prøv igen, eller brug en anden finger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Tilføj endnu et"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Næste"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Tilpas din telefon"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Prøv forskellige layout, baggrunde og meget mere"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Pauseskærm"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"pauseskærm"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Brug pauseskærm"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Når enheden oplades eller tilsluttes en dockingstation"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Begge dele"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Under opladning"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Når enheden er tilsluttet en dockingstation"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Aldrig"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Fra"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Aktivér pauseskærmen for at administrere, hvad der sker, når telefonen er sat i dockingstationen og/eller går i dvale."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Starttidspunkt"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Aktuel pauseskærm"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Indstillinger"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatisk lysstyrke"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Løft enheden for at vække den"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Aktiv låseskærm"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Angiv en pinkode"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Angiv en pinkode til arbejdsprofilen"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Indstil et mønster"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Få ekstra beskyttelse ved at angive et mønster til oplåsning af enheden"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Indstil et mønster til arbejdsprofilen"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Angiv adgangskode for at bruge fingeraftryk"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Angiv mønster for at bruge fingeraftryk"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Nødapp"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Nulstil app-præferencer"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Nulstil app-præferencer?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Dette nulstiller alle præferencer for:\n\n "<li>"Deaktiverede apps"</li>\n" "<li>"Deaktiverede appnotifikationer"</li>\n" "<li>"Standardapps til handlinger"</li>\n" "<li>"Begrænsning af baggrundsdata for apps"</li>\n<li>" "</li>"Eventuelle begrænsede tilladelser\n\n Du vil ikke miste nogen appdata."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Dette nulstiller alle præferencer for:\n\n "<li>"Deaktiverede apps"</li>\n" "<li>"Deaktiverede appnotifikationer"</li>\n" "<li>"Standardapps til handlinger"</li>\n" "<li>"Begrænsning af baggrundsdata for apps"</li>\n<li>"Eventuelle begrænsede tilladelser"</li>\n<li>"Indstillinger for batteriforbrug"</li>\n\n"Du vil ikke miste nogen appdata."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Nulstil apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Administrer plads"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Nulstil indstillinger"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Skærmindstillinger for størrelse og tekst er blevet nulstillet"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Skal indstillingerne for skærmstørrelse og tekst nulstilles?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Telefonens oprindelige skærmstørrelse og tekstpræferencer gendannes"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Telefonens oprindelige skærmstørrelse og tekstpræferencer gendannes"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Din tablets oprindelige skærmstørrelse og tekstpræferencer gendannes"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Nulstil"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Har du nogen planer for weekenden?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Jeg skal på stranden. Vil du med?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Ikke brugt i baggrunden siden sidste fulde opladning"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Ikke brugt i løbet af de seneste 24 timer"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Andre brugere"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Den resterende batteritid er et skøn, der baseres på din brug af enheden"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Estimeret resterende tid"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Indtil den er fuldt opladet"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Komplet kommandoord og handling"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Enkel oplæsning"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Denne indtalingstjeneste vil kunne foretage lydovervågning, der altid er slået til, og styre taleaktiverede apps på dine vegne. Den kommer fra appen <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Vil du aktivere brugen af denne tjeneste?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Indstillinger for genkendelse på enheden"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Genkendelse på enheden"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Talegenkendelse på enheden"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Foretrukken maskine"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Indstillinger for oplæsningsmaskinen"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Talehastighed og stemmeleje"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Slet"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Alle apps og data i denne session slettes."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Fjern"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gæst (dig)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Brugere"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Andre brugere"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Slet gæsteaktivitet"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Slet alle gæsteapps og -data ved afslutning af gæstetilstand"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Vil du slette gæsteaktiviteten?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apps og data fra denne gæstesession slettes nu, og al fremtidig gæsteaktivitet slettes, hver gang du afslutter gæstetilstand"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Aktivér telefonopkald"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Aktivér telefonopkald og sms"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Slet bruger"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Alle notifikationer fra \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Alle notifikationer for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Automatiske notifikationer"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifikation om dagen</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifikationer om dagen</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Ca. <xliff:g id="NUMBER_1">%,d</xliff:g> notifikation om dagen</item>
+      <item quantity="other">Ca. <xliff:g id="NUMBER_1">%,d</xliff:g> notifikationer om dagen</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifikation om ugen</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifikationer om ugen</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Ca. <xliff:g id="NUMBER_1">%,d</xliff:g> notifikation om ugen</item>
+      <item quantity="other">Ca. <xliff:g id="NUMBER_1">%,d</xliff:g> notifikationer om ugen</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Aldrig"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Enheds- og appnotifikationer"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Lad være med at gøre noget"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrer"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Slå lyden fra"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Hvis du vil aktivere funktionen, skal du først ændre \"Hold afbryderknappen nede\" til menuen for afbryderknappen"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Hvis du vil aktivere funktionen, skal du først ændre \"Hold afbryderknappen nede\" til menuen for afbryderknappen."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Netværksoplysninger"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Din enheds navn er synligt for apps på din telefon. Det kan muligvis også ses af andre, når du opretter forbindelse til Bluetooth-enheder eller et Wi-Fi-netværk, eller når du konfigurerer et Wi-Fi-hotspot."</string>
     <string name="devices_title" msgid="649715719278562515">"Enheder"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"enhedsstyring"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kort og billetter"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kort og billetter"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Hold afbryderknappen nede"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Hold knappen nede for at åbne Assistent"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Hold knappen nede for at åbne menuen for afbryderknappen"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Muligheden for at åbne Assistent ved at holde knappen nede er deaktiveret"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Hold afbryderknappen nede"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Hold afbryderknappen nede for at tilgå"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu for afbryderknappen"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digital assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Tilgå digital assistent"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Tilgå menuen for afbryderknappen"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Du skal først konfigurere en skærmlås"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Hold nede for at aktivere Assistent"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Aktivér Assistent ved at holde afbryderknappen nede"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu for afbryderknappen og nødsituationer:\nTryk på afbryderknappen og knappen Lydstyrke op samtidig."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Deaktiver ringetoner:\nGenvejen findes i lydstyrkemenuen."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu for afbryderknappen:\nHold afbryderknappen og Lydstyrke op inde på samme tid"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Deaktiver ringetoner:\nTryk på en lydstyrkeknap for at bruge genvejen"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Tryklængde"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Juster følsomheden ved at vælge, hvor lang tid afbryderknappen skal holdes inde"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kort"</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 90f907c..b8657c8 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Wenn es „Pixel Imprint“ nutzt, werden Bilder zum Aktualisieren seines Fingerabdruckmodells verwendet. Während die zum Erstellen des Fingerabdruckmodells verwendeten Bilder niemals gespeichert werden, wird das Modell selbst sicher auf dem Smartphone abgelegt, ohne es je zu verlassen. Die Verarbeitung der entsprechenden Daten findet unter Einhaltung aller Sicherheitsvorgaben ausschließlich auf dem Smartphone statt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Du kannst jederzeit die Aufnahmen und das Modell deines Fingerabdrucks löschen oder das Entsperren per Fingerabdruck in den Einstellungen deaktivieren. Aufnahmen und Modelle von Fingerabdrücken werden auf deinem Gerät gespeichert, bis du sie löschst."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Du und dein Kind könnt jederzeit die Aufnahmen der Fingerabdrücke und das erstellte Fingerabdruckmodell löschen oder die Funktion „Entsperrung per Fingerabdruck“ in den Einstellungen deaktivieren. Aufnahmen von Fingerabdrücken und Fingerabdruckmodelle bleiben auf dem Smartphone gespeichert, bis sie gelöscht werden."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Es kann passieren, dass dein Smartphone unbeabsichtigt entsperrt wird, wenn es z. B. von jemandem gegen deinen Finger gehalten wird."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Es kann passieren, dass dein Smartphone unbeabsichtigt entsperrt wird, wenn es z. B. von jemandem gegen deinen Finger gehalten wird."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Es kann passieren, dass dein Tablet entsperrt wird, wenn du es nicht möchtest, z. B. wenn es von jemandem gegen deinen Finger gehalten wird."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Es kann passieren, dass dein Gerät entsperrt wird, wenn du es nicht möchtest, z. B. wenn es von jemandem gegen deinen Finger gehalten wird."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Das Smartphone deines Kindes kann entsperrt werden, selbst wenn es das nicht beabsichtigt. Dazu kann es z. B. an seinen Finger gehalten werden."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Die besten Ergebnisse erzielst du mit einem Displayschutz, der das Zertifikat „Made for Google“ hat. Bei anderen Displayschutzfolien wird dein Fingerabdruck möglicherweise nicht erkannt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Die besten Ergebnisse erzielst du mit einem Displayschutz, der das Zertifikat „Made for Google“ hat. Bei anderen Displayschutzfolien wird der Fingerabdruck deines Kindes möglicherweise nicht erkannt."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Abbildung mit Gerät und Position des Fingerabdrucksensors"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Name"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Ok"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Noch einmal versuchen"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Löschen"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Sensor berühren"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Lege deinen Finger auf den Sensor und hebe ihn an, wenn du eine Vibration spürst."</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Fertig"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Das ist nicht der Sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Sensor auf Rückseite mit Zeigefinger berühren."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registrierung wurde nicht abgeschlossen"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Zeitüberschreitung bei Fingerabdruckregistrierung. Bitte versuche es noch einmal."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Zeitüberschreitung bei Fingerabdruckeinrichtung"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Du kannst es entweder jetzt noch einmal versuchen oder den Fingerabdruck später in den Einstellungen einrichten"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Fehler bei Fingerabdruckregistrierung. Versuche es erneut oder verwende einen anderen Finger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Weiteren hinzufügen"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Weiter"</string>
@@ -1451,17 +1454,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Smartphone personalisieren"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Verschiedene Designs und Hintergründe ausprobieren"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Bildschirmschoner"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"Bildschirmschoner"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Bildschirmschoner verwenden"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Beim Aufladen oder wenn in Dockingstation"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"In beiden Fällen"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Beim Aufladen"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Wenn in Dockingstation"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nie"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Aus"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Um festzulegen, was geschieht, wenn dein Smartphone angedockt oder im Ruhemodus ist, aktiviere den Bildschirmschoner."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Zeitpunkt der Aktivierung"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Aktueller Bildschirmschoner"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Einstellungen"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatische Helligkeit"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Zum Aktivieren anheben"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Inaktivitätsdisplay"</string>
@@ -1949,6 +1950,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN festlegen"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"PIN für Arbeitsprofil festlegen"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Muster festlegen"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Für zusätzliche Sicherheit ein Muster zum Entsperren des Geräts einrichten"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Muster für Arbeitsprofil festlegen"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Für Fingerabdruck Passwort festlegen"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Für Fingerabdruck Muster festlegen"</string>
@@ -2102,7 +2104,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"App für Notfallbenachrichtigungen"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"App-Einstellungen zurücksetzen"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"App-Einstellungen zurücksetzen?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Hierdurch werden die folgenden Einstellungen zurückgesetzt:\n\n "<li>"Deaktivierungen von Apps"</li>\n" "<li>"Deaktivierungen von App-Benachrichtigungen"</li>\n" "<li>"Festlegungen von Standard-Apps für bestimmte Aktionen"</li>\n<li>"Einschränkungen der Hintergrunddaten für Apps"</li>\n<li>"Jegliche Zugriffsbeschränkungen"</li>\n\n"Alle App-Daten bleiben erhalten."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Dadurch werden die folgenden Einstellungen zurückgesetzt:\n\n"<li>"Deaktivierung von Apps"</li>\n<li>"Deaktivierung von App-Benachrichtigungen"</li>\n<li>"Festlegung von Standard-Apps für bestimmte Aktionen"</li>\n" "<li>"Einschränkungen der Hintergrunddaten für Apps"</li>\n<li>"Jegliche Zugriffsbeschränkungen"</li>\n<li>"Einstellungen für die Akkunutzung"</li>\n\n"Alle App-Daten bleiben erhalten."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Apps zurücksetzen"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Speicherplatz verwalten"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2357,7 +2359,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Einstellungen zurücksetzen"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Einstellungen für Anzeigegröße und Text wurden zurückgesetzt"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Anzeigegröße und Text zurücksetzen?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Deine Einstellungen für Anzeigegröße und Text werden auf die ursprünglichen Einstellungen des Smartphones zurückgesetzt"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Deine Einstellungen für Anzeigegröße und Text werden auf die ursprünglichen Einstellungen des Smartphones zurückgesetzt"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Deine Einstellungen für Anzeigegröße und Text werden auf die ursprünglichen Einstellungen des Tablets zurückgesetzt"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Zurücksetzen"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Hast du Pläne fürs Wochenende?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Ich will zum Strand. Kommst du mit?"</string>
@@ -2937,6 +2940,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Keine Nutzung seit der letzten vollständigen Aufladung"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Keine Nutzung in den letzten 24 Stunden"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Andere Nutzer"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Die verbleibende Akkulaufzeit wird anhand der Gerätenutzung geschätzt"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Geschätzte verbleibende Akkulaufzeit"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Bis zur vollständigen Aufladung"</string>
@@ -3026,6 +3030,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Vollständiger Sprachinteraktionsdienst einschließlich der Verwendung von Hotwords"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Einfache Sprachausgabe-Funktion"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Dieser Spracheingabedienst kann Spracheingaben jederzeit überwachen und Anwendungen, die Sprachbefehle unterstützen, für dich steuern. Er wird von der Anwendung <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> bereitgestellt. Möchtest du diesen Dienst aktivieren?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Einstellungen für Erkennung auf dem Gerät"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Erkennung auf dem Gerät"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Spracherkennung auf dem Gerät"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Bevorzugtes Modul"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Moduleinstellungen"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Sprechgeschwindigkeit &amp; Stimmlage"</string>
@@ -3418,6 +3425,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Löschen"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Alle Apps und Daten in dieser Sitzung werden gelöscht."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Entfernen"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gast (ich)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Nutzer"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Andere Nutzer"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Gastaktivität löschen"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Alle Gast-Apps und -daten beim Beenden des Gastmodus löschen"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Gastaktivität löschen?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apps und Daten dieser Gastsitzung werden jetzt gelöscht und alle künftigen Gastaktivitäten werden jeweils beim Beenden des Gastmodus gelöscht"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Telefonieren zulassen"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Telefonieren &amp; SMS zulassen"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Nutzer löschen"</string>
@@ -4010,13 +4024,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Alle Benachrichtigungen von „<xliff:g id="APP_NAME">%1$s</xliff:g>“"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Alle Benachrichtigungen von <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptive Benachrichtigungen"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">Ungefähr <xliff:g id="NUMBER_1">%,d</xliff:g> Benachrichtigungen pro Tag</item>
-      <item quantity="one">Ungefähr <xliff:g id="NUMBER_0">%d</xliff:g> Benachrichtigung pro Tag</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Etwa <xliff:g id="NUMBER_1">%,d</xliff:g> Benachrichtigungen pro Tag</item>
+      <item quantity="one">Etwa <xliff:g id="NUMBER_0">%d</xliff:g> Benachrichtigung pro Tag</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">Ungefähr <xliff:g id="NUMBER_1">%,d</xliff:g> Benachrichtigungen pro Woche</item>
-      <item quantity="one">Ungefähr <xliff:g id="NUMBER_0">%d</xliff:g> Benachrichtigung pro Woche</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Etwa <xliff:g id="NUMBER_1">%,d</xliff:g> Benachrichtigungen pro Woche</item>
+      <item quantity="one">Etwa <xliff:g id="NUMBER_0">%d</xliff:g> Benachrichtigung pro Woche</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nie"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Geräte- und App-​Benachrichtigungen"</string>
@@ -5258,7 +5272,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Nichts tun"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrieren"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Stummschalten"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Ändere zum Aktivieren erst „Ein-/Aus-Taste gedrückt halten“ zu „Ein-/Aus-Menü“."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Ändere zum Aktivieren erst „Ein-/Aus-Taste gedrückt halten“ zu „Ein-/Aus-Menü“."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Netzwerkdetails"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Dein Gerätename ist für Apps auf deinem Smartphone sichtbar. Wenn du dein Gerät mit Bluetooth-Geräten oder einem WLAN verbindest oder einen WLAN-Hotspot einrichtest, kann der Name möglicherweise auch von anderen Personen gesehen werden."</string>
     <string name="devices_title" msgid="649715719278562515">"Geräte"</string>
@@ -5545,15 +5559,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"Gerätesteuerung"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Karten und Tickets"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"Karten und Tickets"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Ein-/Aus-Taste gedrückt halten"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Gedrückt halten, um Assistant zu starten"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Gedrückt halten, um das Ein-/Aus-Menü aufzurufen"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"„Gedrückt halten“ deaktiviert"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Ein-/Aus-Taste gedrückt halten"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Für Zugriff Ein-/Aus-Taste gedrückt halten"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Ein-/Aus-Menü"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitaler Assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Auf digitalen Assistenten zugreifen"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Auf Ein-/Aus-Menü zugreifen"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Lege zuerst eine Displaysperre fest, damit du die Option verwenden kannst"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Zum Aktivieren von Assistant gedrückt halten"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Halte die Ein-/Aus-Taste gedrückt, um Assistant zu aktivieren"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"„Ein-/Aus- und Notfall-Menü“:\nEin-/Aus-Taste und Lautertaste gleichzeitig drücken."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"„Klingeln verhindern“:\nVerknüpfung im Lautstärke-Menü verfügbar."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Ein-/Aus-Menü:\nEin-/Aus-Taste und Lautertaste gleichzeitig drücken"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Klingeln verhindern:\nFür Verknüpfung eine Lautstärketaste drücken"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Dauer des Gedrückthaltens"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Stelle die Empfindlichkeit ein, indem du festlegst, wie lange du die Ein-/Aus-Taste gedrückt halten musst"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kurz"</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 33a1d49..1eb8f8e 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Κατά τη χρήση του Pixel Imprint, χρησιμοποιούνται εικόνες για την ενημέρωση του μοντέλου του δακτυλικού του αποτυπώματος. Οι εικόνες που χρησιμοποιούνται για τη δημιουργία του μοντέλου του δακτυλικού αποτυπώματος του παιδιού σας δεν αποθηκεύονται ποτέ, αλλά το μοντέλο δακτυλικού αποτυπώματος αποθηκεύεται με ασφάλεια στο τηλέφωνο και παραμένει αποκλειστικά σε αυτό. Όλη η επεξεργασία πραγματοποιείται με ασφάλεια στο τηλέφωνο."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Μπορείτε να διαγράψετε τις εικόνες και το μοντέλου του δακτυλικού σας αποτυπώματος ή να απενεργοποιήσετε το ξεκλείδωμα με δακτυλικό αποτύπωμα ανά πάσα στιγμή στις Ρυθμίσεις. Οι εικόνες και τα μοντέλα δακτυλικών αποτυπωμάτων αποθηκεύονται με ασφάλεια στο τηλέφωνό σας μέχρι να τα διαγράψετε."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Εσείς και το παιδί σας μπορείτε να διαγράψετε τις εικόνες και το μοντέλο του δακτυλικού του αποτυπώματος ή να απενεργοποιήσετε το ξεκλείδωμα με δακτυλικό αποτύπωμα ανά πάσα στιγμή στις Ρυθμίσεις. Οι εικόνες και τα μοντέλα δακτυλικού αποτυπώματος αποθηκεύονται με ασφάλεια στο τηλέφωνο μέχρι να διαγραφούν."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Το τηλέφωνό σας μπορεί να ξεκλειδωθεί ακόμη και όταν δεν το σκοπεύετε, όπως εάν κάποιος το ακουμπήσει στο δάχτυλό σας."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Το τηλέφωνό σας μπορεί να ξεκλειδωθεί ακόμη και όταν δεν το σκοπεύετε, όπως εάν κάποιος το ακουμπήσει στο δάχτυλό σας."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Το tablet σας μπορεί να ξεκλειδωθεί ακόμη και αν δεν σκοπεύετε να το ξεκλειδώσετε, όπως εάν κάποιος το ακουμπήσει στο δάχτυλό σας."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Η συσκευή σας μπορεί να ξεκλειδωθεί ακόμη και αν δεν σκοπεύετε να τη ξεκλειδώσετε, όπως εάν κάποιος την ακουμπήσει στο δάχτυλό σας."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Το τηλέφωνο του παιδιού σας μπορεί να ξεκλειδωθεί ακόμη και όταν δεν το σκοπεύει, όπως εάν κάποιος το ακουμπήσει στο δάχτυλό του."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Για βέλτιστα αποτελέσματα, χρησιμοποιήστε ένα προστατευτικό οθόνης που έχει την πιστοποίηση Made for Google. Με άλλα προστατευτικά οθόνης ενδέχεται να μην λειτουργεί το δακτυλικό σας αποτύπωμα."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Για βέλτιστα αποτελέσματα, χρησιμοποιήστε ένα προστατευτικό οθόνης που έχει την πιστοποίηση Made for Google. Με άλλα προστατευτικά οθόνης ενδέχεται να μην λειτουργεί το δακτυλικό αποτύπωμα του παιδιού σας."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Εικόνα συσκευής και της τοποθεσίας του αισθητήρα δακτυλικού αποτυπώματος"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Όνομα"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ΟΚ"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Δοκιμάστε ξανά"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Διαγραφή"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Αγγίξτε τον αισθητήρα"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Τοποθετήστε το δάχτυλό σας στον αισθητήρα και ανασηκώστε το μόλις αισθανθείτε μια δόνηση"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Τέλος"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ωχ, αυτό δεν είναι ο αισθητήρας"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Αγγίξτε τον πίσω αισθητήρα με τον δείκτη σας."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Η εγγραφή δεν ολοκληρώθηκε"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Λήξη χρονικού ορίου εγγραφής δακτυλικών αποτυπωμάτων. Δοκιμάστε ξανά."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Λήξη χρον. ορίου ρύθμισης δακτυλικού αποτυπ."</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Δοκιμάστε ξανά τώρα ή ρυθμίστε αργότερα το δακτυλικό σας αποτύπωμα στις Ρυθμίσεις"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Αποτυχία εγγραφής δακτυλικού αποτυπώματος. Δοκιμάστε ξανά ή χρησιμοποιήστε ένα άλλο δάκτυλο."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Προσθήκη άλλου"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Επόμενο"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Προσαρμογή του τηλεφώνου σας"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Δοκιμάστε διαφορετικά στιλ, ταπετσαρίες και άλλα"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Προφύλαξη οθόνης"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"προφύλαξη οθόνης"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Χρήση προφύλαξης οθόνης"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Στη φόρτιση ή στη βάση"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Είτε"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Στη φόρτιση"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Στη βάση"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Ποτέ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Απενεργοποίηση"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Ενεργοποιήστε την προφύλαξη οθόνης για να ελέγξετε τι συμβαίνει όταν το τηλέφωνό σας είναι συνδεδεμένο στη βάση σύνδεσης ή/και βρίσκεται σε κατάσταση αδράνειας."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Πότε να ξεκινάει"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Τρέχουσα προφύλαξη οθόνης"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Ρυθμίσεις"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Αυτόματη φωτεινότητα"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Σηκώστε για ενεργοποίηση"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Οθόνη περιβάλλοντος"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Ορίστε ένα PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Ορίστε ένα PIN εργασίας"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Ορίστε ένα μοτίβο"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Για πρόσθετη ασφάλεια, ορίστε ένα μοτίβο για ξεκλείδωμα της συσκευής"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Ορίστε ένα μοτίβο εργασίας"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Για χρήση δακτ. αποτ. ορίστε κωδ. πρόσβ."</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Για χρήση δακτ. αποτ. ορίστε μοτίβο"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Εφαρμογή έκτακτης ανάγκης"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Επαναφορά προτιμήσεων εφαρμογών"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Επαναφ. προτιμ. εφαρμ;"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Με αυτήν την ενέργεια, θα γίνει επαναφορά όλων των προτιμήσεων για:\n\n"<li>"απενεργοποιημένες εφαρμογές"</li>\n<li>"απενεργοποιημένες ειδοποιήσεις εφαρμογών"</li>\n<li>"προεπιλεγμένες εφαρμογές για ενέργειες"</li>\n<li>"περιορισμούς δεδομένων παρασκηνίου για εφαρμογές"</li>\n<li>"τυχόν περιορισμούς αδειών"</li>\n\n"Δεν θα χάσετε τυχόν δεδομένα εφαρμογών."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Αυτή η ενέργεια θα επαναφέρει όλες τις προτιμήσεις για τα εξής:\n\n"<li>"Απενεργοποιημένες εφαρμογές"</li>\n<li>"Απενεργοποιημένες ειδοποιήσεις εφαρμογών"</li>\n<li>"Προεπιλεγμένες εφαρμογές για ενέργειες"</li>\n<li>"Περιορισμοί δεδομένων παρασκηνίου για εφαρμογές"</li>\n<li>"Περιορισμοί αδειών"</li>\n<li>"Ρυθμίσεις χρήσης μπαταρίας"</li>\n\n"Δεν θα χάσετε δεδομένα εφαρμογών."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Επαναφορά εφαρμογών"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Διαχείριση χώρου"</string>
     <string name="filter" msgid="9039576690686251462">"Φίλτρο"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Επαναφορά ρυθμίσεων"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Έγινε επαναφορά των ρυθμίσεων μεγέθους προβολής και κειμένου"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Επαναφορά μεγέθους οθόνης και κειμένου;"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Θα γίνει επαναφορά των προτιμήσεων μεγέθους οθόνης και κειμένου στις αρχικές ρυθμίσεις του τηλεφώνου σας"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Θα γίνει επαναφορά των προτιμήσεων μεγέθους οθόνης και κειμένου στις αρχικές ρυθμίσεις του τηλεφώνου σας"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Θα γίνει επαναφορά των προτιμήσεων μεγέθους οθόνης και κειμένου στις αρχικές ρυθμίσεις του tablet σας"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Επαναφορά"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Έχετε προγραμματίσει κάτι για το Σαββατοκύριακο;"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Πάω στην παραλία. Θες να έρθεις;"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Καμία χρήση από την τελευταία πλήρη φόρτιση"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Καμία χρήση τις τελευταίες 24 ώρες"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Άλλοι χρήστες"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Η εκτίμηση της μπαταρίας που απομένει βασίζεται στη χρήση της συσκευής σας"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Εκτιμώμενος υπολειπόμενος χρόνος"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Μέχρι την πλήρη φόρτιση"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Πλήρης λέξη-κλειδί και αλληλεπίδραση"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Μετατροπή απλής ομιλίας σε κείμενο"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Αυτή η υπηρεσία φωνητικής εισαγωγής θα έχει τη δυνατότητα να εκτελεί διαρκώς ενεργή παρακολούθηση φωνητικών εντολών και να ελέγχει τις εφαρμογές με ενεργοποιημένες τις φωνητικές εντολές εκ μέρους σας. Προέρχεται από την εφαρμογή <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Ενεργοποίηση της χρήσης αυτής της υπηρεσίας;"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Ρυθμίσεις αναγνώρισης στη συσκευή"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Αναγνώριση στη συσκευή"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Αναγνώριση ομιλίας στη συσκευή"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Προτεινόμενη μηχανή"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Ρυθμίσεις μηχανής"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Ταχύτητα και τόνος ομιλίας"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Διαγραφή"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Όλες οι εφαρμογές και τα δεδομένα αυτής της περιόδου σύνδεσης θα διαγραφούν."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Κατάργηση"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Επισκέπτης (Εσείς)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Χρήστες"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Άλλοι χρήστες"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Διαγραφή δραστηριότητας επισκέπτη"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Διαγραφή όλων των εφαρμογών και των δεδομένων επισκέπτη κατά την έξοδο από τη λειτουργία επισκέπτη"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Διαγραφή δραστηριότητας επισκέπτη;"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Οι εφαρμογές και τα δεδομένα από αυτήν την περίοδο σύνδεσης επισκέπτη θα διαγραφούν τώρα και όλη η μελλοντική δραστηριότητα επισκέπτη θα διαγράφεται κάθε φορά που εξέρχεστε από τη λειτουργία επισκέπτη"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Ενεργοποίηση τηλεφωνικών κλήσεων"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Ενεργοποίηση κλήσεων και SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Διαγραφή χρήστη"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Όλες οι ειδοποιήσεις \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Όλες οι ειδοποιήσεις <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Προσαρμοστικές ειδοποιήσεις"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ειδοποιήσεις ανά ημέρα</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> ειδοποίηση ανά ημέρα</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Περίπου <xliff:g id="NUMBER_1">%,d</xliff:g> ειδοποιήσεις την ημέρα</item>
+      <item quantity="one">Περίπου <xliff:g id="NUMBER_0">%d</xliff:g> ειδοποίηση την ημέρα</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ειδοποιήσεις ανά εβδομάδα</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> ειδοποίηση ανά εβδομάδα</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Περίπου <xliff:g id="NUMBER_1">%,d</xliff:g> ειδοποιήσεις την εβδομάδα</item>
+      <item quantity="one">Περίπου <xliff:g id="NUMBER_0">%d</xliff:g> ειδοποίηση την εβδομάδα</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Ποτέ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Ειδοποιήσεις συσκευής και εφαρμογών"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Να μην γίνει καμία ενέργεια"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Δόνηση"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Σίγαση"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Για ενεργοποίηση, αλλάξτε πρώτα την επιλογή Παρατεταμένο πάτημα κουμπιού λειτουργίας στο μενού λειτουργίας."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Για ενεργοποίηση, αρχικά αλλάξτε την επιλογή \"Πατήστε παρατεταμένα το κουμπί λειτουργίας\" στο μενού λειτουργίας."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Λεπτομέρειες δικτύου"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Το όνομα της συσκευής σας είναι ορατό σε εφαρμογές στο τηλέφωνό σας. Ενδέχεται επίσης να είναι ορατό και σε άλλα άτομα, όταν συνδέεστε σε συσκευές Bluetooth, συνδέεστε σε ένα δίκτυο Wi-Fi ή ρυθμίζετε ένα σημείο πρόσβασης Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Συσκευές"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"στοιχεία ελέγχου συσκευής"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Κάρτες και πάσα"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"κάρτες και πάσα"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Παρατεταμένο πάτημα κουμπιού λειτουργίας"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Πατήστε παρατεταμένα για τον Βοηθό."</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Πατήστε παρατεταμένα για το μενού λειτουργίας."</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Το παρατεταμένο πάτημα έχει απενεργοποιηθεί."</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Πατήστε παρατεταμένα το κουμπί λειτουργίας"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Πατήστε παρατεταμένα το κουμπί λειτουργίας για πρόσβαση"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Μενού λειτουργίας"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Ψηφιακός βοηθός"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Πρόσβαση στον ψηφιακό βοηθό"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Πρόσβαση στο μενού λειτουργίας"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Για χρήση, ορίστε πρώτα το κλείδωμα οθόνης"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Πατήστε παρατεταμένα για τον Βοηθό"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Ενεργοποιήστε τον Βοηθό πατώντας παρατεταμένα το κουμπί λειτουργίας"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Μενού λειτουργίας και έκτακτης ανάγκης:\nΠατήστε το κουμπί λειτουργίας και το κουμπί αύξησης έντασης ήχου ταυτόχρονα."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Αποτροπή ήχου κλήσης:\nΗ συντόμευση είναι διαθέσιμη στο μενού έντασης ήχου."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Μενού λειτουργίας:\nΠατήστε ταυτόχρονα το κουμπί λειτουργίας και το κουμπί αύξησης έντασης ήχου"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Αποτροπή κουδουνίσματος:\nΠατήστε ένα κουμπί έντασης ήχου για τη συντόμευση"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Διάρκεια παρατεταμένου πατήματος"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Προσαρμόστε την ευαισθησία επιλέγοντας πόση ώρα θα πρέπει να διαρκεί το παρατεταμένο πάτημα του κουμπιού λειτουργίας."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Μικρή"</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index ea9ddb4..59e5875 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"When they use Pixel Imprint, images are used to update their fingerprint model. Images used to create your child’s fingerprint model are never stored, but the fingerprint model is stored securely on the phone and never leaves the phone. All processing occurs securely on the phone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"You can delete your fingerprint images and model, or turn off Fingerprint Unlock at any time in settings. Fingerprint images and models are stored on the phone until you delete them."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"You and your child can delete their fingerprint images and model, or turn off Fingerprint Unlock at any time in Settings. Fingerprint images and models are stored on the phone until they’re deleted."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Your phone can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Your phone can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Your tablet can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Your device can be unlocked when you don’t intend to, like if someone holds it up to your finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Your child’s phone can be unlocked when they don’t intend it to be; for example, if someone holds it up to their finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"For best results, use a screen protector that’s Made For Google certified. With other screen protectors, your fingerprint may not work."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"For best results, use a screen protector that’s Made For Google certified. With other screen protectors, your child’s fingerprint may not work."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustration with device and fingerprint sensor location"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Name"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Try again"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Delete"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Touch the sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Put your finger on the sensor and lift after you feel a vibration"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Done"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Whoops, that\'s not the sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Touch the sensor on the back of your phone. Use your index finger."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Enrolment was not completed"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Fingerprint enrolment time limit reached. Try again."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Fingerprint setup timed out"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Try again now or set up your fingerprint later in Settings"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Fingerprint enrolment didn\'t work. Try again or use a different finger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Add another"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Next"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Customise your phone"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Try different styles, wallpapers and more"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Screen saver"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"screensaver"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Use screen saver"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"While charging or docked"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Either"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"While charging"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"While docked"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Never"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Off"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"To control what happens when the phone is docked and/or sleeping, turn the screen saver on."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"When to start"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Current screen saver"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Settings"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatic brightness"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Lift to wake"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambient display"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Set a PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Set a work PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Set a pattern"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"For added security, set a pattern to unlock the device"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Set a work pattern"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"To use fingerprint, set password"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"To use fingerprint, set pattern"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Emergency app"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Reset app preferences"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Reset app preferences?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"This will reset all preferences for:\n\n"<li>"Disabled apps"</li>\n<li>"Disabled app notifications"</li>\n<li>"Default applications for actions"</li>\n<li>"Background data restrictions for apps"</li>\n<li>"Any permission restrictions"</li>\n\n"You will not lose any app data."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"This will reset all preferences for:\n\n"<li>"Disabled apps"</li>\n<li>"Disabled app notifications"</li>\n<li>"Default applications for actions"</li>\n<li>"Background data restrictions for apps"</li>\n<li>"Any permission restrictions"</li>\n<li>"Battery usage settings"</li>\n\n"You will not lose any app data."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Reset apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Manage space"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Reset settings"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Display size and text settings have been reset"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Reset display size and text?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Your display size and text preferences will reset to the phone’s original settings"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Your display size and text preferences will reset to the phone’s original settings"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Your display size and text preferences will be reset to the tablet’s original settings"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Reset"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Any weekend plans?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Heading to the beach. Want to join?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"No usage from last full charge"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"No usage for past 24 hr"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Other users"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Battery left estimate is based on your device usage"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Estimated time left"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Until fully charged"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Full hotword and interaction"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Simple speech to text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"This voice input service will be able to perform always-on voice monitoring, and control voice enabled applications on your behalf. It comes from the <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> application. Enable the use of this service?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"On-device recognition settings"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"On-device recognition"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"On-device speech recognition"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Preferred engine"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Engine settings"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Speech rate &amp; pitch"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Delete"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"All apps and data in this session will be deleted."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Remove"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Guest (you)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Users"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Other users"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Delete guest activity"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Delete all guest apps and data when exiting guest mode"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Delete guest activity?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apps and data from this guest session will be deleted now, and all future guest activity will be deleted each time that you exit guest mode"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Turn on phone calls"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Turn on phone calls &amp; SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Delete user"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"All \'<xliff:g id="APP_NAME">%1$s</xliff:g>\' notifications"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"All <xliff:g id="APP_NAME">%1$s</xliff:g> notifications"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptive notifications"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notification per day</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
+      <item quantity="one">About <xliff:g id="NUMBER_0">%d</xliff:g> notification per day</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notification per week</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
+      <item quantity="one">About <xliff:g id="NUMBER_0">%d</xliff:g> notification per week</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Never"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Device &amp; app notifications"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Do nothing"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrate"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Mute"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"To enable, first change \'Press and hold power button\' to the power menu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"To enable, first change \'Press &amp; hold power button\' to the power menu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Network details"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Your device name is visible to apps on your phone. It may also be seen by other people when you connect to Bluetooth devices, connect to a Wi-Fi network or set up a Wi-Fi hotspot."</string>
     <string name="devices_title" msgid="649715719278562515">"Devices"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"device controls"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cards and passes"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cards and passes"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Press and hold power button"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Press and hold for Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Press and hold for the power menu"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Press and hold disabled"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Press &amp; hold power button"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Press &amp; hold the power button to access"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Power menu"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digital assistant"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Access digital assistant"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Access power menu"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"To use, first set a screen lock"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Hold for Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Trigger Assistant by holding the power button"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Power &amp; emergency menu:\nPress power and volume up at the same time."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Prevent ringing:\nShortcut available in the volume menu."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Power menu:\nPress the power button and the volume up button at the same time"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Prevent ringing:\nPress a volume button for the shortcut"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Press &amp; hold duration"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Adjust sensitivity by choosing how long to press &amp; hold the power button"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Short"</string>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index 30bb518..ae19d44 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"When they use Pixel Imprint, images are used to update their fingerprint model. Images used to create your child’s fingerprint model are never stored, but the fingerprint model is stored securely on the phone and never leaves the phone. All processing occurs securely on the phone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"You can delete your fingerprint images and model, or turn off Fingerprint Unlock at any time in settings. Fingerprint images and models are stored on the phone until you delete them."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"You and your child can delete their fingerprint images and model, or turn off Fingerprint Unlock at any time in Settings. Fingerprint images and models are stored on the phone until they’re deleted."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Your phone can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Your phone can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Your tablet can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Your device can be unlocked when you don’t intend to, like if someone holds it up to your finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Your child’s phone can be unlocked when they don’t intend it to be; for example, if someone holds it up to their finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"For best results, use a screen protector that’s Made For Google certified. With other screen protectors, your fingerprint may not work."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"For best results, use a screen protector that’s Made For Google certified. With other screen protectors, your child’s fingerprint may not work."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustration with device and fingerprint sensor location"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Name"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Try again"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Delete"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Touch the sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Put your finger on the sensor and lift after you feel a vibration"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Done"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Whoops, that\'s not the sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Touch the sensor on the back of your phone. Use your index finger."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Enrolment was not completed"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Fingerprint enrolment time limit reached. Try again."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Fingerprint setup timed out"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Try again now or set up your fingerprint later in Settings"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Fingerprint enrolment didn\'t work. Try again or use a different finger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Add another"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Next"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Customise your phone"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Try different styles, wallpapers and more"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Screen saver"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"screensaver"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Use screen saver"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"While charging or docked"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Either"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"While charging"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"While docked"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Never"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Off"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"To control what happens when the phone is docked and/or sleeping, turn the screen saver on."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"When to start"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Current screen saver"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Settings"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatic brightness"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Lift to wake"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambient display"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Set a PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Set a work PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Set a pattern"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"For added security, set a pattern to unlock the device"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Set a work pattern"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"To use fingerprint, set password"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"To use fingerprint, set pattern"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Emergency app"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Reset app preferences"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Reset app preferences?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"This will reset all preferences for:\n\n"<li>"Disabled apps"</li>\n<li>"Disabled app notifications"</li>\n<li>"Default applications for actions"</li>\n<li>"Background data restrictions for apps"</li>\n<li>"Any permission restrictions"</li>\n\n"You will not lose any app data."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"This will reset all preferences for:\n\n"<li>"Disabled apps"</li>\n<li>"Disabled app notifications"</li>\n<li>"Default applications for actions"</li>\n<li>"Background data restrictions for apps"</li>\n<li>"Any permission restrictions"</li>\n<li>"Battery usage settings"</li>\n\n"You will not lose any app data."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Reset apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Manage space"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Reset settings"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Display size and text settings have been reset"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Reset display size and text?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Your display size and text preferences will reset to the phone’s original settings"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Your display size and text preferences will reset to the phone’s original settings"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Your display size and text preferences will be reset to the tablet’s original settings"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Reset"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Any weekend plans?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Heading to the beach. Want to join?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"No usage from last full charge"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"No usage for past 24 hr"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Other users"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Battery left estimate is based on your device usage"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Estimated time left"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Until fully charged"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Full hotword and interaction"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Simple speech to text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"This voice input service will be able to perform always-on voice monitoring, and control voice enabled applications on your behalf. It comes from the <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> application. Enable the use of this service?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"On-device recognition settings"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"On-device recognition"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"On-device speech recognition"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Preferred engine"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Engine settings"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Speech rate &amp; pitch"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Delete"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"All apps and data in this session will be deleted."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Remove"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Guest (you)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Users"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Other users"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Delete guest activity"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Delete all guest apps and data when exiting guest mode"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Delete guest activity?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apps and data from this guest session will be deleted now, and all future guest activity will be deleted each time that you exit guest mode"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Turn on phone calls"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Turn on phone calls &amp; SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Delete user"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"All \'<xliff:g id="APP_NAME">%1$s</xliff:g>\' notifications"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"All <xliff:g id="APP_NAME">%1$s</xliff:g> notifications"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptive notifications"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notification per day</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
+      <item quantity="one">About <xliff:g id="NUMBER_0">%d</xliff:g> notification per day</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notification per week</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
+      <item quantity="one">About <xliff:g id="NUMBER_0">%d</xliff:g> notification per week</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Never"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Device &amp; app notifications"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Do nothing"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrate"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Mute"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"To enable, first change \'Press and hold power button\' to the power menu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"To enable, first change \'Press &amp; hold power button\' to the power menu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Network details"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Your device name is visible to apps on your phone. It may also be seen by other people when you connect to Bluetooth devices, connect to a Wi-Fi network or set up a Wi-Fi hotspot."</string>
     <string name="devices_title" msgid="649715719278562515">"Devices"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"device controls"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cards and passes"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cards and passes"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Press and hold power button"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Press and hold for Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Press and hold for the power menu"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Press and hold disabled"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Press &amp; hold power button"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Press &amp; hold the power button to access"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Power menu"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digital assistant"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Access digital assistant"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Access power menu"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"To use, first set a screen lock"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Hold for Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Trigger Assistant by holding the power button"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Power &amp; emergency menu:\nPress power and volume up at the same time."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Prevent ringing:\nShortcut available in the volume menu."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Power menu:\nPress the power button and the volume up button at the same time"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Prevent ringing:\nPress a volume button for the shortcut"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Press &amp; hold duration"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Adjust sensitivity by choosing how long to press &amp; hold the power button"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Short"</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 10ec02c..d020650 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"When they use Pixel Imprint, images are used to update their fingerprint model. Images used to create your child’s fingerprint model are never stored, but the fingerprint model is stored securely on the phone and never leaves the phone. All processing occurs securely on the phone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"You can delete your fingerprint images and model, or turn off Fingerprint Unlock at any time in settings. Fingerprint images and models are stored on the phone until you delete them."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"You and your child can delete their fingerprint images and model, or turn off Fingerprint Unlock at any time in Settings. Fingerprint images and models are stored on the phone until they’re deleted."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Your phone can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Your phone can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Your tablet can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Your device can be unlocked when you don’t intend to, like if someone holds it up to your finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Your child’s phone can be unlocked when they don’t intend it to be; for example, if someone holds it up to their finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"For best results, use a screen protector that’s Made For Google certified. With other screen protectors, your fingerprint may not work."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"For best results, use a screen protector that’s Made For Google certified. With other screen protectors, your child’s fingerprint may not work."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustration with device and fingerprint sensor location"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Name"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Try again"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Delete"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Touch the sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Put your finger on the sensor and lift after you feel a vibration"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Done"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Whoops, that\'s not the sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Touch the sensor on the back of your phone. Use your index finger."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Enrolment was not completed"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Fingerprint enrolment time limit reached. Try again."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Fingerprint setup timed out"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Try again now or set up your fingerprint later in Settings"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Fingerprint enrolment didn\'t work. Try again or use a different finger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Add another"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Next"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Customise your phone"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Try different styles, wallpapers and more"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Screen saver"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"screensaver"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Use screen saver"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"While charging or docked"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Either"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"While charging"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"While docked"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Never"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Off"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"To control what happens when the phone is docked and/or sleeping, turn the screen saver on."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"When to start"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Current screen saver"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Settings"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatic brightness"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Lift to wake"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambient display"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Set a PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Set a work PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Set a pattern"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"For added security, set a pattern to unlock the device"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Set a work pattern"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"To use fingerprint, set password"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"To use fingerprint, set pattern"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Emergency app"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Reset app preferences"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Reset app preferences?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"This will reset all preferences for:\n\n"<li>"Disabled apps"</li>\n<li>"Disabled app notifications"</li>\n<li>"Default applications for actions"</li>\n<li>"Background data restrictions for apps"</li>\n<li>"Any permission restrictions"</li>\n\n"You will not lose any app data."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"This will reset all preferences for:\n\n"<li>"Disabled apps"</li>\n<li>"Disabled app notifications"</li>\n<li>"Default applications for actions"</li>\n<li>"Background data restrictions for apps"</li>\n<li>"Any permission restrictions"</li>\n<li>"Battery usage settings"</li>\n\n"You will not lose any app data."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Reset apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Manage space"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Reset settings"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Display size and text settings have been reset"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Reset display size and text?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Your display size and text preferences will reset to the phone’s original settings"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Your display size and text preferences will reset to the phone’s original settings"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Your display size and text preferences will be reset to the tablet’s original settings"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Reset"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Any weekend plans?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Heading to the beach. Want to join?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"No usage from last full charge"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"No usage for past 24 hr"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Other users"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Battery left estimate is based on your device usage"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Estimated time left"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Until fully charged"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Full hotword and interaction"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Simple speech to text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"This voice input service will be able to perform always-on voice monitoring, and control voice enabled applications on your behalf. It comes from the <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> application. Enable the use of this service?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"On-device recognition settings"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"On-device recognition"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"On-device speech recognition"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Preferred engine"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Engine settings"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Speech rate &amp; pitch"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Delete"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"All apps and data in this session will be deleted."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Remove"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Guest (you)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Users"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Other users"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Delete guest activity"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Delete all guest apps and data when exiting guest mode"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Delete guest activity?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apps and data from this guest session will be deleted now, and all future guest activity will be deleted each time that you exit guest mode"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Turn on phone calls"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Turn on phone calls &amp; SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Delete user"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"All \'<xliff:g id="APP_NAME">%1$s</xliff:g>\' notifications"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"All <xliff:g id="APP_NAME">%1$s</xliff:g> notifications"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptive notifications"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notification per day</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
+      <item quantity="one">About <xliff:g id="NUMBER_0">%d</xliff:g> notification per day</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notification per week</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
+      <item quantity="one">About <xliff:g id="NUMBER_0">%d</xliff:g> notification per week</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Never"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Device &amp; app notifications"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Do nothing"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrate"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Mute"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"To enable, first change \'Press and hold power button\' to the power menu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"To enable, first change \'Press &amp; hold power button\' to the power menu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Network details"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Your device name is visible to apps on your phone. It may also be seen by other people when you connect to Bluetooth devices, connect to a Wi-Fi network or set up a Wi-Fi hotspot."</string>
     <string name="devices_title" msgid="649715719278562515">"Devices"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"device controls"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cards and passes"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cards and passes"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Press and hold power button"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Press and hold for Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Press and hold for the power menu"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Press and hold disabled"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Press &amp; hold power button"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Press &amp; hold the power button to access"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Power menu"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digital assistant"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Access digital assistant"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Access power menu"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"To use, first set a screen lock"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Hold for Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Trigger Assistant by holding the power button"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Power &amp; emergency menu:\nPress power and volume up at the same time."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Prevent ringing:\nShortcut available in the volume menu."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Power menu:\nPress the power button and the volume up button at the same time"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Prevent ringing:\nPress a volume button for the shortcut"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Press &amp; hold duration"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Adjust sensitivity by choosing how long to press &amp; hold the power button"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Short"</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 3b71336..8370360 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"When they use Pixel Imprint, images are used to update their fingerprint model. Images used to create your child’s fingerprint model are never stored, but the fingerprint model is stored securely on the phone and never leaves the phone. All processing occurs securely on the phone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"You can delete your fingerprint images and model, or turn off Fingerprint Unlock at any time in settings. Fingerprint images and models are stored on the phone until you delete them."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"You and your child can delete their fingerprint images and model, or turn off Fingerprint Unlock at any time in Settings. Fingerprint images and models are stored on the phone until they’re deleted."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Your phone can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Your phone can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Your tablet can be unlocked when you don’t intend it to be; for example, if someone holds it up to your finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Your device can be unlocked when you don’t intend to, like if someone holds it up to your finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Your child’s phone can be unlocked when they don’t intend it to be; for example, if someone holds it up to their finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"For best results, use a screen protector that’s Made For Google certified. With other screen protectors, your fingerprint may not work."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"For best results, use a screen protector that’s Made For Google certified. With other screen protectors, your child’s fingerprint may not work."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustration with device and fingerprint sensor location"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Name"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Try again"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Delete"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Touch the sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Put your finger on the sensor and lift after you feel a vibration"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Done"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Whoops, that\'s not the sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Touch the sensor on the back of your phone. Use your index finger."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Enrolment was not completed"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Fingerprint enrolment time limit reached. Try again."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Fingerprint setup timed out"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Try again now or set up your fingerprint later in Settings"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Fingerprint enrolment didn\'t work. Try again or use a different finger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Add another"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Next"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Customise your phone"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Try different styles, wallpapers and more"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Screen saver"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"screensaver"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Use screen saver"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"While charging or docked"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Either"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"While charging"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"While docked"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Never"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Off"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"To control what happens when the phone is docked and/or sleeping, turn the screen saver on."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"When to start"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Current screen saver"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Settings"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatic brightness"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Lift to wake"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambient display"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Set a PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Set a work PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Set a pattern"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"For added security, set a pattern to unlock the device"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Set a work pattern"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"To use fingerprint, set password"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"To use fingerprint, set pattern"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Emergency app"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Reset app preferences"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Reset app preferences?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"This will reset all preferences for:\n\n"<li>"Disabled apps"</li>\n<li>"Disabled app notifications"</li>\n<li>"Default applications for actions"</li>\n<li>"Background data restrictions for apps"</li>\n<li>"Any permission restrictions"</li>\n\n"You will not lose any app data."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"This will reset all preferences for:\n\n"<li>"Disabled apps"</li>\n<li>"Disabled app notifications"</li>\n<li>"Default applications for actions"</li>\n<li>"Background data restrictions for apps"</li>\n<li>"Any permission restrictions"</li>\n<li>"Battery usage settings"</li>\n\n"You will not lose any app data."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Reset apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Manage space"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Reset settings"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Display size and text settings have been reset"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Reset display size and text?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Your display size and text preferences will reset to the phone’s original settings"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Your display size and text preferences will reset to the phone’s original settings"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Your display size and text preferences will be reset to the tablet’s original settings"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Reset"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Any weekend plans?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Heading to the beach. Want to join?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"No usage from last full charge"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"No usage for past 24 hr"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Other users"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Battery left estimate is based on your device usage"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Estimated time left"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Until fully charged"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Full hotword and interaction"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Simple speech to text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"This voice input service will be able to perform always-on voice monitoring, and control voice enabled applications on your behalf. It comes from the <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> application. Enable the use of this service?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"On-device recognition settings"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"On-device recognition"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"On-device speech recognition"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Preferred engine"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Engine settings"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Speech rate &amp; pitch"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Delete"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"All apps and data in this session will be deleted."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Remove"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Guest (you)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Users"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Other users"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Delete guest activity"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Delete all guest apps and data when exiting guest mode"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Delete guest activity?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apps and data from this guest session will be deleted now, and all future guest activity will be deleted each time that you exit guest mode"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Turn on phone calls"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Turn on phone calls &amp; SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Delete user"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"All \'<xliff:g id="APP_NAME">%1$s</xliff:g>\' notifications"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"All <xliff:g id="APP_NAME">%1$s</xliff:g> notifications"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptive notifications"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notification per day</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
+      <item quantity="one">About <xliff:g id="NUMBER_0">%d</xliff:g> notification per day</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notification per week</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
+      <item quantity="one">About <xliff:g id="NUMBER_0">%d</xliff:g> notification per week</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Never"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Device &amp; app notifications"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Do nothing"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrate"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Mute"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"To enable, first change \'Press and hold power button\' to the power menu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"To enable, first change \'Press &amp; hold power button\' to the power menu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Network details"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Your device name is visible to apps on your phone. It may also be seen by other people when you connect to Bluetooth devices, connect to a Wi-Fi network or set up a Wi-Fi hotspot."</string>
     <string name="devices_title" msgid="649715719278562515">"Devices"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"device controls"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cards and passes"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cards and passes"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Press and hold power button"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Press and hold for Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Press and hold for the power menu"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Press and hold disabled"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Press &amp; hold power button"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Press &amp; hold the power button to access"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Power menu"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digital assistant"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Access digital assistant"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Access power menu"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"To use, first set a screen lock"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Hold for Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Trigger Assistant by holding the power button"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Power &amp; emergency menu:\nPress power and volume up at the same time."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Prevent ringing:\nShortcut available in the volume menu."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Power menu:\nPress the power button and the volume up button at the same time"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Prevent ringing:\nPress a volume button for the shortcut"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Press &amp; hold duration"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Adjust sensitivity by choosing how long to press &amp; hold the power button"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Short"</string>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
index 7b9eb6e..80c8e39 100644
--- a/res/values-en-rXC/strings.xml
+++ b/res/values-en-rXC/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‎‎‏‎‎‎‎‎‎‎‎‎‏‏‎‏‎‏‏‏‎‎‏‎‎‎‎‏‏‎‏‏‎‎‎‎‎‏‏‏‎‎‎‎‎‏‏‏‏‏‏‏‎‏‎‎‏‏‎‏‎When they use Pixel Imprint, images are used to update their fingerprint model. Images used to create your child’s fingerprint model are never stored, but the fingerprint model is stored securely on the phone and never leaves the phone. All processing occurs securely on the phone.‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‏‏‎‏‏‎‎‏‎‏‏‎‎‏‏‎‎‏‎‏‎‎‎‎‏‎‏‎‎‎‏‎‏‎‎‏‏‏‏‎‏‏‎‏‏‎‏‎‏‎‏‎‏‎‏‎‎‎‏‎You can delete your fingerprint images and model, or turn off Fingerprint Unlock at any time in Settings. Fingerprint images and models are stored on the phone until you delete them.‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‏‎‏‎‎‏‎‏‎‎‏‏‏‏‎‏‎‎‎‏‏‏‏‎‏‎‎‏‎‏‏‎‏‏‏‎‎‏‏‏‎‎‏‎‎‎‎‏‎‏‎‏‎‎‎‏‎‏‏‎You and your child can delete their fingerprint images and model, or turn off Fingerprint Unlock at any time in Settings. Fingerprint images and models are stored on the phone until they’re deleted.‎‏‎‎‏‎"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‏‎‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‎‏‏‏‎‏‎‎‏‎‎‏‏‏‏‎‎‏‎‏‎‏‎‏‎‎‏‏‏‎‎‏‏‏‎‏‏‎‏‏‎‏‎Your phone can be unlocked when you don’t intend to, like if someone holds it up to your finger.‎‏‎‎‏‎"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‏‎‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‎‏‏‏‎‏‎‎‏‎‎‏‏‏‏‎‎‏‎‏‎‏‎‏‎‎‏‏‏‎‎‏‏‏‎‏‏‎‏‏‎‏‎Your phone can be unlocked when you don’t intend to, like if someone holds it up to your finger.‎‏‎‎‏‎"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‏‏‎‏‎‎‎‏‏‏‏‎‏‎‎‏‎‏‏‏‎‎‏‎‏‎‏‎‎‏‎‎‏‏‏‏‏‏‏‏‏‏‏‎‎‎‏‏‎‏‎‎‎‏‎‎‏‎‏‎Your tablet can be unlocked when you don’t intend to, like if someone holds it up to your finger.‎‏‎‎‏‎"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‏‏‏‎‎‎‏‎‎‏‎‏‎‏‎‎‎‏‏‏‎‎‎‏‎‏‎‏‎‎‏‏‏‏‏‏‏‎‎‏‎‏‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‏‎‎Your device can be unlocked when you don’t intend to, like if someone holds it up to your finger.‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‏‏‏‏‏‏‏‎‎‎‎‏‏‎‏‏‏‏‎‏‎‏‎‎‎‏‏‎‏‎‎‏‏‏‏‎‏‏‎‏‏‏‎‏‎‎‎‎‏‎‏‎‏‏‏‎‏‎‎Your child’s phone can be unlocked when they don’t intend to, like if someone holds it up to their finger.‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‏‎‎‏‏‎‏‏‏‏‏‏‎‎‏‏‏‎‏‏‎‏‏‏‏‏‎‎‎‏‎‏‎‎‏‎‏‎‎‎‏‏‎‏‏‏‎‎‎‏‏‏‏‎‎‏‏‎‏‏‎For best results, use a screen protector that’s Made for Google certified. With other screen protectors, your fingerprint may not work.‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‎‎‏‎‏‏‏‎‏‎‏‏‎‏‎‏‎‏‎‏‏‎‏‎‏‏‏‎‎‎‎‏‎‏‏‎‎‏‏‎‎‎‏‏‎‏‎‏‎‏‎‏‎‎‎‏‏‏‎‎For best results, use a screen protector that’s Made for Google certified. With other screen protectors, your child’s fingerprint may not work.‎‏‎‎‏‎"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‎‏‎‏‎‎‎‏‏‎‎‎‎‎‏‎‏‏‎‏‏‎‏‎‏‎‎‏‏‎‎‎‏‎‎‏‎‎‏‏‎‎‏‏‎‏‏‎‏‎‎‎‏‏‏‏‎‏‏‎Illustration with device and fingerprint sensor location‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‏‎‏‎‏‎‎‏‎‏‎‏‎‎‏‎‏‏‏‎‏‎‎‎‎‏‏‏‎‏‏‏‎‎‎‏‏‏‎‏‏‎‎‏‏‎‎‏‏‏‏‎‎‎‎‏‏‎‏‎Name‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‏‎‎‎‏‎‎‎‏‎‏‎‏‏‏‏‎‎‏‎‏‏‏‏‏‏‎‎‏‎‎‎‎‎‏‎‎‎‏‎‎‏‎‏‎‏‏‏‎‏‎‎‎‏‎‏‎‏‎‏‎OK‎‏‎‎‏‎"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‎‎‏‎‏‎‏‎‎‎‎‏‏‏‏‏‎‎‎‏‎‎‎‏‏‏‎‎‎‎‏‏‎‏‎‏‏‏‎‎‎‏‏‏‎‏‏‏‎‎‎‎‎‏‏‏‏‎‎Try again‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‎‎‏‏‏‎‏‎‎‏‎‎‏‎‏‏‎‏‎‏‏‎‏‎‎‎‎‎‎‎‏‏‎‏‎‎‎‏‏‎‏‎‏‎‎‏‎‎‏‎‏‏‎‎‏‏‎‏‎‏‎Delete‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‏‏‎‏‎‎‏‎‎‏‏‎‏‏‎‏‎‏‎‎‎‎‏‎‏‏‎‎‏‏‎‎‎‎‏‎‏‎‏‎‏‏‏‏‎‏‏‎‎‎‏‎‎‏‎‎‏‎‎‎Touch the sensor‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‏‎‏‏‎‎‎‎‏‏‏‏‏‏‎‎‏‏‏‏‎‎‏‏‏‎‏‎‎‏‎‏‏‏‎‏‏‎‎‏‏‏‏‎‎‏‎‎‏‎‏‎‏‏‏‎‎‏‎‎Put your finger on the sensor and lift after you feel a vibration‎‏‎‎‏‎"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‏‎‏‎‎‎‏‎‎‏‏‏‏‎‎‎‎‎‎‏‎‏‎‎‏‏‏‎‏‏‏‎‎‎‏‎‎‎‎‏‏‎‎‎‏‏‏‎‏‏‏‎‎‏‎Done‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‏‏‏‏‏‎‏‏‎‎‎‏‎‎‏‏‎‏‎‏‎‎‏‏‎‏‎‎‏‏‎‏‏‎‏‏‏‎‎‏‎‏‏‏‏‏‎‏‏‏‎‏‏‎‎‎‎‏‏‎‎Whoops, that’s not the sensor‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‎‏‏‏‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‏‎‎‏‏‎‏‏‏‎‎‎‎‎‎‎‎‎‎‎‏‏‏‏‎‎‏‎‎‏‎‏‎‎‎‎‎‏‏‎‎Touch the sensor on the back of your phone. Use your index finger.‎‏‎‎‏‎"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‎‏‏‏‏‎‏‎‏‎‏‎‏‎‎‎‎‏‎‏‏‏‎‏‏‏‏‏‏‏‎‎‏‏‎‏‎‎‎‎‏‎‏‎‏‏‎‏‏‏‎‎‎‎‏‎‎‏‎‎Enrollment was not completed‎‏‎‎‏‎"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‏‏‎‎‎‎‎‎‏‎‏‏‏‎‎‏‏‏‏‎‏‎‏‏‏‎‎‎‎‏‏‎‏‏‎‎‎‎‎‏‎‎‏‎‏‏‏‏‏‏‏‏‎‏‎‏‎‏‏‎‎Fingerprint enrollment time limit reached. Try again.‎‏‎‎‏‎"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‏‏‏‎‎‎‏‏‎‏‎‎‏‎‏‎‏‏‏‎‎‎‏‎‎‏‎‎‏‏‎‏‏‎‏‎‎‎‏‎‏‏‎‎‎‏‎‏‏‎‎‏‎‏‎‎‏‏‎‎Fingerprint setup timed out‎‏‎‎‏‎"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‏‏‏‎‎‏‏‏‏‏‏‎‏‎‎‎‏‎‏‏‏‏‎‎‎‏‏‏‏‏‎‏‏‎‎‏‎‎‏‎‏‏‏‏‏‏‎‎‏‏‏‏‎‎‏‏‏‏‎‎‎Try again now or set up your fingerprint later in Settings‎‏‎‎‏‎"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‎‏‎‎‎‎‏‏‏‎‎‏‎‎‏‏‎‎‎‎‏‎‏‏‎‏‎‏‎‏‏‎‏‏‎‏‎‏‎‏‏‎‎‏‎‏‎‏‏‏‏‎‎‏‏‏‎‏‏‏‎Fingerprint enrollment didn\'t work. Try again or use a different finger.‎‏‎‎‏‎"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‏‎‎‎‏‎‏‎‎‏‎‎‏‏‎‎‏‎‏‎‎‎‎‏‎‎‎‏‎‏‏‎‏‏‎‎‏‎‏‎‏‎‏‎‎‎‏‎‎‎‎‏‎‎‏‎‎‎‎‎Add another‎‏‎‎‏‎"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‏‏‎‎‏‎‏‏‎‎‏‏‏‏‎‎‏‎‏‏‎‏‎‏‏‎‏‏‎‎‏‏‏‎‎‏‎‎‏‏‏‎‎‏‏‏‎‎‎‎‏‏‏‎‏‏‏‎‎‎Next‎‏‎‎‏‎"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‎‎‎‏‏‎‏‏‎‎‎‎‎‎‏‏‎‎‎‏‏‏‎‏‎‎‎‎‎‎‏‏‏‎‏‎‏‏‏‏‎‏‎‎‎‎‎‏‎‎‎‎‏‏‎‎‏‏‏‎Customize your phone‎‏‎‎‏‎"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‏‎‏‏‎‏‎‎‎‏‏‎‎‎‎‏‏‎‏‏‏‏‎‏‎‎‎‎‎‎‏‏‏‏‎‏‎‎‏‎‏‏‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‏‏‏‎Try different styles, wallpapers, and more‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‎‎‏‏‏‎‎‏‏‎‏‎‎‎‎‏‎‏‎‎‎‏‎‎‏‏‎‏‏‎‎‎‎‏‎‏‎‎‎‎‎‎‎‎‎‏‎‎‎‎‏‎‏‎‏‎‎‏‏‎Screen saver‎‏‎‎‏‎"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‏‎‎‏‎‎‏‏‎‏‎‏‏‎‏‎‎‏‎‎‏‏‏‎‏‏‏‎‎‏‎‏‎‎‎‏‎‏‏‎‏‏‎‏‎‎‏‎‎‎‏‎‎‏‏‎‏‎‎‎screensaver‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‎‏‎‏‏‏‏‏‎‏‏‏‏‏‎‎‎‎‏‏‎‎‎‎‎‎‏‎‎‎‏‏‏‏‏‏‏‎‏‎‏‏‏‏‏‏‎‏‎‎‎‎‏‏‎‏‎‏‏‎‎Use screen saver‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‏‏‎‏‎‎‏‎‏‎‎‏‎‏‏‎‏‏‎‏‏‏‎‎‎‏‎‏‏‎‎‎‎‏‎‎‎‏‏‎‎‎‏‏‏‏‎‏‎‎‏‏‏‏‎‎‏‏‏‏‎While charging or docked‎‏‎‎‏‎"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‏‎‏‏‎‎‎‎‎‎‏‏‎‎‏‎‎‎‏‎‎‎‎‏‏‎‏‎‎‏‎‎‏‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‎‎‏‎‏‎‏‎‎‎‎Either‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‎‏‎‏‏‏‏‏‎‏‏‎‏‎‏‎‎‎‏‎‎‏‎‏‏‎‎‎‎‏‎‎‏‏‏‎‎‎‎‎‏‏‎‏‎‎‎‎‎‎‎‏‏‏‏‏‎‎‎‎While charging‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‎‎‏‎‎‎‏‏‏‎‏‎‎‎‎‏‏‏‏‎‏‏‏‎‎‏‏‏‎‎‏‏‎‏‎‎‏‏‎‎‎‎‏‏‎‏‏‎‏‏‏‏‎‎‎‎‏‎‏‎While docked‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‏‎‏‎‎‏‏‏‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‏‎‏‏‎‎‏‎‏‏‎‏‏‎‏‎‎‎‎‎‎‏‎‎‎‏‏‏‏‎‏‏‎‎‏‎‎Never‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‎‎‏‎‎‎‎‎‏‎‎‏‏‏‎‏‏‏‎‏‏‏‏‎‎‏‎‏‏‎‎‎‏‎‎‎‏‎‎‏‏‏‎‏‎‏‎‎‎‏‎‎‏‏‎‏‎‏‏‎Off‎‏‎‎‏‎"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‎‎‎‎‎‏‎‏‏‏‏‏‎‏‎‏‏‏‎‏‏‏‏‎‏‎‎‏‏‎‎‎‎‎‏‏‏‏‎‎‎‎‎‏‏‎‏‎‏‏‎‏‏‏‏‎‎‏‏‎To control what happens when the phone is docked and/or sleeping, turn screen saver on.‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‎‏‎‎‎‎‏‎‎‎‏‏‏‏‎‎‎‏‏‏‎‎‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‏‏‏‎‏‎‏‎‎‎‏‏‏‎‏‎‎‎‎When to start‎‏‎‎‏‎"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‏‏‎‏‎‏‏‎‏‎‏‏‎‎‏‏‏‏‎‏‎‎‎‎‎‎‎‎‏‎‏‏‎‎‏‎‎‎‏‎‏‎‎‎‏‎‎‎‏‏‏‏‏‎‏‏‏‎‏‏‎Current screen saver‎‏‎‎‏‎"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‎‏‎‏‎‏‏‏‏‎‏‎‎‎‎‎‎‎‎‏‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‎‏‏‏‎‏‎‏‎‎‏‏‏‎‎‏‏‎‎‏‏‏‏‏‎‎Settings‎‏‎‎‏‎"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‏‏‏‏‏‏‎‏‎‏‎‏‏‏‎‏‏‏‏‏‎‎‎‏‎‏‏‎‎‏‏‏‎‎‏‎‎‏‎‏‎‎‎‏‏‏‏‏‏‎‏‎‏‏‎‏‏‎‎‏‎Automatic brightness‎‏‎‎‏‎"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‎‏‎‎‎‏‏‏‏‎‎‎‎‏‏‏‎‎‎‎‏‏‎‎‎‎‏‏‏‏‏‏‏‎‏‏‎‏‏‏‏‎‏‎‏‏‎‏‏‏‏‏‏‎‎Lift to wake‎‏‎‎‏‎"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‏‏‏‏‎‎‏‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‎‏‎‎‏‏‎‏‎‎‏‏‏‎‏‎‏‏‏‎‎‎‏‎‏‎‎‏‎‏‏‎‎‏‏‎‏‎Ambient display‎‏‎‎‏‎"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‎‏‏‏‎‎‏‏‏‎‎‏‎‏‎‏‏‏‏‏‎‎‏‏‏‎‎‏‏‎‏‎‎‏‎‎‏‏‎‎‏‎‎‎‎‎‎‎‎‎‎‎‎‏‏‎‎‎‏‎Set a PIN‎‏‎‎‏‎"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‏‏‏‏‏‎‎‏‎‏‎‏‏‎‏‎‎‏‎‏‎‏‎‏‎‎‎‏‎‎‎‏‏‎‏‎‎‏‎‎‎‎‏‎‎‎‎‏‎‎‎‎‏‏‏‎‏‎‎‎‎Set a work PIN‎‏‎‎‏‎"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‏‏‏‎‏‏‎‎‎‎‎‏‎‏‎‏‎‏‎‎‎‎‎‎‎‏‏‎‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‎‎‎‎‏‎‏‏‎‏‏‎‎‏‏‎‎‎Set a pattern‎‏‎‎‏‎"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‏‏‎‎‏‏‏‏‎‏‏‎‏‎‎‎‎‏‏‎‏‎‎‏‏‎‎‎‎‏‎‎‏‎‎‎‏‏‎‏‏‏‏‎‎‏‏‏‎‎‏‎‎‎‏‎‏‏‎‎For added security, set a pattern to unlock the device‎‏‎‎‏‎"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‎‏‏‎‎‎‎‏‎‏‏‏‏‎‏‏‎‎‏‎‎‎‏‏‏‏‏‏‎‏‎‎‏‏‎‎‎‏‏‏‎‏‎‎‎‎‏‎‏‏‎‎‎‏‎‎‎‎‏‎Set a work pattern‎‏‎‎‏‎"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‎‏‏‏‏‏‏‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‎‏‏‏‎‏‏‏‏‎‎‎‎‎‎‎‏‏‎‏‏‎‏‎‎‎‎‏‏‏‎‎‏‎‏‎‎To use fingerprint, set password‎‏‎‎‏‎"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‎‎‏‎‏‎‏‎‏‎‏‎‏‏‎‏‏‎‎‎‏‏‏‏‏‎‎‏‏‏‏‏‎‏‎‎‎‎‎‏‎‎‎‎‎‏‎‎‎‏‏‎‎‏‎‏‎‎‎‎To use fingerprint, set pattern‎‏‎‎‏‎"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‎‏‎‏‏‎‎‏‎‎‎‏‎‏‎‎‏‎‏‏‏‎‏‏‎‏‏‎‎‎‏‎‎‏‏‎‎‏‏‎‎‎‎‎‏‎‏‏‎‎‎‎‎‏‎‏‎‏‏‎Emergency app‎‏‎‎‏‎"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‎‏‎‏‏‏‏‏‎‏‏‎‏‎‎‏‎‏‎‎‏‎‎‎‎‏‎‎‏‏‎‎‎‎‎‏‎‏‏‏‎‏‎‏‎‎‎‎‏‏‎‎‎‎‏‏‏‎‏‎Reset app preferences‎‏‎‎‏‎"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‏‏‏‎‎‏‎‎‏‎‎‏‏‏‏‏‎‏‏‎‎‎‎‏‎‏‎‏‏‏‏‏‎‏‎‏‎‎‎‏‏‏‎Reset app preferences?‎‏‎‎‏‎"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‎‏‎‎‏‎‏‏‎‎‎‎‎‎‏‎‏‏‏‎‎‏‎‏‎‎‎‏‎‎‏‏‏‏‏‎‏‎‎‎‏‏‎‏‏‏‎‎‎‏‏‏‎‏‎‏‏‎‏‎This will reset all preferences for:‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Disabled apps‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Disabled app notifications‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Default applications for actions‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Background data restrictions for apps‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Any permission restrictions‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎You will not lose any app data.‎‏‎‎‏‎"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‏‏‎‏‎‏‎‏‎‏‎‎‏‏‏‏‎‏‏‏‎‎‎‏‎‎‎‏‏‏‏‎‎‏‏‏‎‏‎‏‎‏‏‎‎‏‎‏‏‎‎‏‏‎‏‏‎‏‏‎This will reset all preferences for:‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Disabled apps‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Disabled app notifications‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Default applications for actions‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Background data restrictions for apps‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Any permission restrictions‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎"<li>"‎‏‎‎‏‏‏‎Battery usage settings‎‏‎‎‏‏‎"</li>"‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎You will not lose any app data.‎‏‎‎‏‎"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‎‎‏‏‏‏‏‏‎‏‏‎‎‎‏‏‎‏‏‎‏‎‏‎‎‎‏‏‎‏‏‏‏‎‏‏‎‎‏‏‎‎‏‏‏‎‏‎‎‎‏‏‏‎‎‎‏‎‏‎‎Reset apps‎‏‎‎‏‎"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‏‎‏‎‎‎‏‎‏‏‎‎‎‎‏‎‏‎‎‏‏‏‎‏‎‎‎‏‎‏‎‎‎‏‏‎‏‎‏‎‎‎‎‏‎‏‏‏‏‎‏‏‎‏‏‎‏‎‏‎Manage space‎‏‎‎‏‎"</string>
     <string name="filter" msgid="9039576690686251462">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‏‎‏‎‏‏‏‎‎‏‏‎‎‎‎‎‏‏‏‎‎‎‏‏‎‏‏‎‏‎‎‎‎‎‎‎‏‎‎‎‎‎‏‎‏‎‏‎‎‎‏‏‏‎‎‎‏‏‎‎Filter‎‏‎‎‏‎"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‎‎‏‎‏‎‏‏‏‎‎‎‏‏‎‏‏‎‎‏‏‎‎‎‎‏‏‎‏‏‎‎‏‎‏‏‏‎‎‎‎‏‎‏‎‎‎‎‎‎‎‎‎‎‎‏‎‏‎‏‎Reset settings‎‏‎‎‏‎"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‎‏‏‎‏‏‏‎‎‎‏‏‎‏‏‏‎‎‏‏‎‏‎‎‎‎‎‎‎‎‎‎‎‎‏‏‏‎‎‎‎‏‏‏‏‎‎‏‏‎‏‏‎‎‏‏‎‎‎‎Display size and text settings have been reset‎‏‎‎‏‎"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‎‏‏‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‏‏‏‎‏‎‏‏‏‎‏‏‎‏‎‎‎‏‎‏‎‏‏‎‎‎‏‎‎‎‏‏‎‏‏‎‎‏‎‏‎‏‎Reset display size and text?‎‏‎‎‏‎"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‏‏‏‏‎‎‏‎‏‏‎‏‎‎‎‏‎‎‏‎‏‏‎‎‏‎‏‏‎‏‏‎‎‏‎‏‎‎‏‏‏‎‏‏‏‎‎‏‎‏‏‏‎‎‏‎‏‎‎‎‎Your display size and text preferences will reset to the phone’s original settings‎‏‎‎‏‎"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‏‏‏‏‎‎‏‎‏‏‎‏‎‎‎‏‎‎‏‎‏‏‎‎‏‎‏‏‎‏‏‎‎‏‎‏‎‎‏‏‏‎‏‏‏‎‎‏‎‏‏‏‎‎‏‎‏‎‎‎‎Your display size and text preferences will reset to the phone’s original settings‎‏‎‎‏‎"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‎‎‏‏‏‏‎‏‏‎‎‏‏‎‎‏‎‏‎‏‎‎‏‎‎‎‎‏‎‎‏‏‎‎‎‏‎‏‎‏‏‏‎‎‏‏‎‎‎‏‏‎‏‏‏‏‏‏‏‎Your display size and text preferences will reset to the tablet’s original settings‎‏‎‎‏‎"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‏‎‎‎‎‎‎‏‎‎‎‏‏‎‎‎‏‎‏‎‏‏‎‎‏‎‎‎‏‏‏‎‏‎‎‎‏‎‏‎‏‏‎‏‎‎‏‎‏‎‏‎‎‏‏‎‎‎‎Reset‎‏‎‎‏‎"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‏‎‏‎‏‏‎‏‎‎‏‎‏‏‎‏‏‎‎‏‏‎‎‎‎‏‎‎‎‏‎‎‏‏‏‏‎‎‎‏‏‏‏‏‏‎‏‏‎‎‏‎‏‎‎‎‏‏‏‎Any weekend plans?‎‏‎‎‏‎"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‎‎‏‎‎‏‎‏‎‎‎‎‏‎‏‏‏‎‏‏‏‎‏‏‏‏‏‎‎‏‎‏‎‎‎‎‏‎‎‏‎‏‎‎‏‏‏‏‎‏‎‏‎‏‎‎‎‎‎Heading to the beach. Want to join?‎‏‎‎‏‎"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‏‎‎‎‏‏‎‏‏‏‎‏‎‎‏‎‎‏‏‎‎‎‎‎‎‎‏‎‎‏‏‎‎‏‎‎‏‏‏‎‎‎‎‏‎‏‏‏‎‏‏‏‏‏‏‎‏‎‎‎No usage from last full charge‎‏‎‎‏‎"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‏‎‎‏‎‎‎‏‎‎‏‏‏‏‏‏‎‏‏‏‎‎‎‎‏‏‎‏‎‏‏‎‎‏‏‎‏‎‎‎‎‏‏‏‎‎‏‎‏‏‏‏‎‎‎‎‎‎‎‎No usage for past 24 hr‎‏‎‎‏‎"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‏‎‏‏‏‏‏‏‎‏‎‎‎‎‎‏‏‎‎‎‎‏‎‎‎‏‎‏‏‏‏‎‎‎‏‏‏‎‎‎‎‎‏‎‏‎‎‏‎‏‎‏‎‏‎Other users‎‏‎‎‏‎"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‏‏‎‏‎‎‏‏‎‎‏‏‏‏‎‏‎‏‏‎‎‎‏‎‏‎‎‏‏‏‏‎‎‎‎‏‎‏‏‏‎‏‏‏‏‏‏‎‎‎‏‏‎‎‏‎‏‏‎‎Battery left estimate is based on your device usage‎‏‎‎‏‎"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‏‎‏‎‎‏‎‏‎‏‎‏‎‎‎‎‏‎‏‎‎‏‎‎‎‎‎‎‏‎‎‎‏‏‎‎‏‎‏‎‎‏‏‎‎‏‎‎‎‏‎‎‏‎‎‎‎‎‏‎Estimated time left‎‏‎‎‏‎"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‏‏‏‏‎‏‏‏‏‎‏‏‎‎‎‏‎‎‏‏‎‎‎‏‎‏‎‎‏‏‎‏‎‏‎‏‏‎‎‎‏‏‎‎‏‏‎‏‏‎‏‏‎‎‏‏‏‏‎‎Until fully charged‎‏‎‎‏‎"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‏‏‎‏‎‏‏‎‏‏‏‏‏‏‎‏‏‎‏‏‏‏‏‎‏‎‏‏‏‎‏‎‎‎‎‏‏‏‎‎‎‏‎‏‏‎‎‏‎‏‎‎‏‎‏‎‎‎‎‎Full hotword and interaction‎‏‎‎‏‎"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‏‎‎‏‎‏‏‏‎‎‎‏‏‎‎‏‎‏‏‏‏‏‏‏‎‎‎‎‏‎‎‏‏‏‎‎‏‎‎‏‏‎‏‏‎‏‎‏‎‎‎‎Simple speech to text‎‏‎‎‏‎"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‏‏‎‏‎‎‎‎‎‎‏‏‏‎‏‏‎‎‎‏‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‏‎‏‏‎‏‎‎‏‎‏‏‏‏‏‏‎‏‎‏‎‏‏‏‎This voice input service will be able to perform always-on voice monitoring and control voice enabled applications on your behalf. It comes from the ‎‏‎‎‏‏‎<xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>‎‏‎‎‏‏‏‎ application. Enable the use of this service?‎‏‎‎‏‎"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‎‏‎‎‎‏‏‏‏‏‏‏‏‎‏‏‏‎‏‏‏‏‎‎‏‏‎‏‎‎‏‎‎‏‎‎‏‏‎‎‏‎‏‎‎‎‎‏‏‎‎‏‎‏‏‎‏‎‏‎On-device recognition settings‎‏‎‎‏‎"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‎‏‏‎‎‎‎‏‏‎‏‏‏‎‏‏‎‎‏‎‎‏‎‎‎‎‏‎‏‏‎‏‏‎‏‎‎‎‏‎‎‎‏‎‎‏‏‎‏‎‎‏‏‏‎‎‎‎‏‎On-device recognition‎‏‎‎‏‎"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‏‎‏‏‎‏‏‎‎‏‎‎‎‏‎‎‏‏‎‎‏‎‏‎‏‎‎‏‏‎‎‏‏‎‏‎‎‏‏‏‎‏‎‎‎‎‏‏‎‏‎‎‏‎‏‎‏‎‎‎On-device speech recognition‎‏‎‎‏‎"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‏‎‎‎‏‎‏‏‏‏‎‎‏‎‏‏‎‎‎‎‎‏‎‏‏‏‏‎‏‎‏‎‎‏‎‎‏‎‎‏‏‏‎‎‎‎‎‎‏‏‎‎‏‏‏‏‏‎‎‎Preferred engine‎‏‎‎‏‎"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‎‏‎‎‎‎‎‎‎‏‏‏‏‎‎‎‎‎‏‎‎‏‏‎‏‎‏‏‏‏‏‎‎‏‎‎‏‎‏‏‎‏‏‎‎‏‎‎‏‎‎‎‎‏‎‏‎‎‏‎Engine settings‎‏‎‎‏‎"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‏‏‏‏‏‎‎‎‏‎‏‏‏‎‎‏‏‎‎‏‎‎‏‏‎‎‎‎‏‎‏‎‏‎‏‎‎‎‎‎‎‎‏‏‎‏‏‏‏‏‎‏‏‎‎‎‏‎‏‎Speech rate &amp; pitch‎‏‎‎‏‎"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‏‎‏‎‎‏‏‎‎‏‏‎‏‎‏‎‎‏‎‏‎‏‏‎‏‏‎‎‎‏‎‏‎‏‏‎‎‎‏‎‎‏‎‏‎‏‏‎‎‎‎‎‏‎‏‏‏‎‏‎Delete‎‏‎‎‏‎"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‎‏‎‏‎‏‏‎‏‏‎‏‏‎‏‏‎‏‎‏‎‎‎‏‎‏‏‎‏‏‏‎‎‏‏‏‎‏‏‎‏‎‏‏‏‏‏‎‏‎‏‎‏‎‎All apps and data in this session will be deleted.‎‏‎‎‏‎"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‎‏‎‎‎‎‏‎‏‎‏‏‎‎‏‏‏‎‎‏‎‎‎‏‎‏‏‏‎‏‏‏‎‏‎‏‎‎‏‎‏‎‏‎‏‏‏‎‎‏‎‏‏‏‏‏‏‎‏‎Remove‎‏‎‎‏‎"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‏‏‎‏‎‎‏‏‎‎‏‎‏‎‎‎‏‏‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‎‏‎‏‎‎‎‏‎‎‎‏‏‏‏‎‎‏‎‏‎‎‎‎‎‎‎‎Guest (You)‎‏‎‎‏‎"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‏‏‎‎‏‎‏‎‎‎‎‎‎‏‎‏‎‎‎‎‏‏‎‏‏‎‎‎‏‎‎‏‎‎‏‏‎‎‏‏‏‎‏‏‏‎‏‎‎‏‏‎‎‏‎‎‏‎‏‏‎Users‎‏‎‎‏‎"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‎‏‎‎‏‏‎‎‏‎‎‏‎‏‎‏‎‎‎‎‏‏‎‏‎‏‎‎‎‏‎‏‎‎‏‏‎‏‏‎‎‏‏‏‎‏‎‏‎‎‏‎‏‎‏‎‎‎‏‎Other users‎‏‎‎‏‎"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‎‏‏‏‎‏‎‏‏‎‏‏‎‎‏‏‏‏‏‏‏‎‏‎‎‏‎‎‎‏‏‏‏‏‎‎‏‏‎‎‎‏‏‎‎‏‏‎‎‏‏‎‏‏‏‎‏‎‎Delete guest activity‎‏‎‎‏‎"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‏‏‏‎‎‎‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‎‏‎‎‏‏‎‏‏‏‎‎‎‏‏‏‏‎‎‏‎‎‎‏‏‏‎‏‎‏‏‏‎‎‎‎‏‎Delete all guest apps and data when exiting guest mode‎‏‎‎‏‎"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‎‎‎‎‎‎‎‏‎‎‎‎‎‏‎‏‎‏‏‏‏‎‎‏‎‎‎‏‏‏‎‎‏‎‏‏‎‏‏‏‎‎‎‎‎‏‏‎‎‏‎‎‎‎‏‏‏‎‎‎‎Delete guest activity?‎‏‎‎‏‎"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‎‎‏‎‎‏‎‏‎‏‎‎‎‏‎‎‎‏‏‏‎‎‎‎‏‏‎‎‏‏‏‏‎‏‎‏‎‎‎‎‏‎‎‎‎‏‎‎‏‎‏‏‏‎‏‎‏‏‎Apps and data from this guest session will be deleted now, and all future guest activity will be deleted each time you exit guest mode‎‏‎‎‏‎"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‎‏‏‏‎‏‎‏‏‎‏‎‎‎‎‎‏‏‎‏‎‏‏‏‏‎‎‏‎‏‏‎‎‏‏‏‏‏‎‏‎‏‏‏‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‎Turn on phone calls‎‏‎‎‏‎"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‏‏‎‏‎‎‏‏‎‏‏‎‎‎‎‎‏‎‏‎‏‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‎‏‏‎‏‎‎‎‎‏‏‎‎‎‏‏‎‎‎Turn on phone calls &amp; SMS‎‏‎‎‏‎"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‏‎‏‏‎‎‎‎‏‎‏‎‎‎‏‏‎‏‎‎‏‏‏‏‎‏‎‏‏‏‏‎‏‎‏‎‎‎‎‏‏‎‏‎‎‎‏‎‏‏‏‎‎‎‏‎‏‎‏‎Delete user‎‏‎‎‏‎"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‏‏‏‎‏‏‎‏‏‏‎‎‎‎‎‏‏‏‎‏‎‏‎‏‏‎‏‏‏‏‏‎‏‏‎‎‎‎‎‎‎‎‎‎‎‎‎‏‎‎‎‏‏‏‏‎‏‎‏‎All \"‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎\" notifications‎‏‎‎‏‎"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‏‏‎‏‎‏‏‎‎‎‎‏‎‏‎‎‏‏‏‎‎‏‎‏‎‎‏‎‎‎‏‎‏‏‏‎‎‏‎‎‎‏‎‎‏‏‎‏‎‎‎‎‎‎‏‎‎‎‎‏‎All ‎‏‎‎‏‏‎<xliff:g id="APP_NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎ notifications‎‏‎‎‏‎"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‎‏‏‎‏‏‎‎‎‎‏‏‏‎‏‏‏‎‎‎‏‎‎‏‎‎‎‏‏‎‎‎‎‎‏‎‎‎‏‏‏‎‎‏‎‎‎‏‎‎‏‏‏‎‎‏‎‏‎‎Adaptive Notifications‎‏‎‎‏‎"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‏‎‎‏‎‎‎‎‏‏‏‎‏‏‏‏‎‎‎‏‎‎‏‏‏‎‏‏‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‎‎‎‎‏‏‎‎‎‎‏‏‏‏‏‎‎~‎‏‎‎‏‏‎<xliff:g id="NUMBER_1">%,d</xliff:g>‎‏‎‎‏‏‏‎ notifications per day‎‏‎‎‏‎</item>
-      <item quantity="one">‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‏‎‎‏‎‎‎‎‏‏‏‎‏‏‏‏‎‎‎‏‎‎‏‏‏‎‏‏‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‎‎‎‎‏‏‎‎‎‎‏‏‏‏‏‎‎~‎‏‎‎‏‏‎<xliff:g id="NUMBER_0">%d</xliff:g>‎‏‎‎‏‏‏‎ notification per day‎‏‎‎‏‎</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‎‏‎‎‏‎‎‏‏‏‎‏‎‎‎‎‎‏‏‎‎‏‎‏‎‎‎‎‏‎‏‏‏‎‏‏‎‎‏‏‎‎‏‎‎‎‎‏‎‏‎‎‏‏‏‎‏‎‎‎About ‎‏‎‎‏‏‎<xliff:g id="NUMBER_1">%,d</xliff:g>‎‏‎‎‏‏‏‎ notifications per day‎‏‎‎‏‎</item>
+      <item quantity="one">‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‎‏‎‎‏‎‎‏‏‏‎‏‎‎‎‎‎‏‏‎‎‏‎‏‎‎‎‎‏‎‏‏‏‎‏‏‎‎‏‏‎‎‏‎‎‎‎‏‎‏‎‎‏‏‏‎‏‎‎‎About ‎‏‎‎‏‏‎<xliff:g id="NUMBER_0">%d</xliff:g>‎‏‎‎‏‏‏‎ notification per day‎‏‎‎‏‎</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‏‎‎‎‎‏‏‎‎‎‎‎‎‎‎‏‏‏‎‏‏‎‎‎‏‎‎‏‏‎‎‏‎‏‏‏‏‎‏‎‎‏‎‏‎‏‎‏‎‎‎‎‏‎‏‎‏‏‏‎~‎‏‎‎‏‏‎<xliff:g id="NUMBER_1">%,d</xliff:g>‎‏‎‎‏‏‏‎ notifications per week‎‏‎‎‏‎</item>
-      <item quantity="one">‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‏‎‎‎‎‏‏‎‎‎‎‎‎‎‎‏‏‏‎‏‏‎‎‎‏‎‎‏‏‎‎‏‎‏‏‏‏‎‏‎‎‏‎‏‎‏‎‏‎‎‎‎‏‎‏‎‏‏‏‎~‎‏‎‎‏‏‎<xliff:g id="NUMBER_0">%d</xliff:g>‎‏‎‎‏‏‏‎ notification per week‎‏‎‎‏‎</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‎‎‏‏‎‎‎‏‎‎‎‎‏‏‏‎‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‏‏‏‏‎‎‎‏‎‎‏‎‏‏‎‏‏‏‏‎‏‏‏‎‎‎‏‎About ‎‏‎‎‏‏‎<xliff:g id="NUMBER_1">%,d</xliff:g>‎‏‎‎‏‏‏‎ notifications per week‎‏‎‎‏‎</item>
+      <item quantity="one">‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‎‎‏‏‎‎‎‏‎‎‎‎‏‏‏‎‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‏‏‏‏‎‎‎‏‎‎‏‎‏‏‎‏‏‏‏‎‏‏‏‎‎‎‏‎About ‎‏‎‎‏‏‎<xliff:g id="NUMBER_0">%d</xliff:g>‎‏‎‎‏‏‏‎ notification per week‎‏‎‎‏‎</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‏‏‎‎‎‎‎‎‏‏‏‎‎‏‎‏‏‏‎‏‏‎‏‏‏‏‏‎‎‎‎‏‎‏‏‏‏‎‏‎‎‏‎‎‏‎‏‎‎‎‏‏‎‎‏‏‏‏‎‎Never‎‏‎‎‏‎"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‎‎‏‏‏‏‏‎‎‏‎‎‎‎‎‏‏‎‎‎‎‎‎‏‏‏‎‎‏‎‎‎‎‎‎‎‏‎‎‏‎‎‏‏‏‎‏‎‎‎‏‎‎‎‎‏‏‏‎‎Device &amp; app notifications‎‏‎‎‏‎"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‎‏‏‏‏‏‎‏‏‎‎‎‏‎‎‏‏‎‏‏‎‏‎‎‎‎‎‎‎‏‏‏‏‎‏‎‏‎‏‎‎‎‏‎‎‎‏‎‏‎‏‎‏‏‏‎‎‏‏‎Do nothing‎‏‎‎‏‎"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‏‏‏‏‎‏‎‏‏‎‎‏‎‏‎‎‎‏‏‎‎‎‎‏‎‏‏‎‏‏‏‎‏‏‏‏‎‏‏‏‏‏‎‎‎‎‎‎‎‎‎‏‏‎‎‎‎‎‎‎Vibrate‎‏‎‎‏‎"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‏‏‎‏‎‏‎‏‎‏‏‎‏‏‎‎‎‏‎‎‏‏‎‏‏‎‏‏‎‏‎‏‏‎‏‏‎‎‏‏‏‎‏‎‎‎‎‎‏‎‏‏‎‏‏‎‏‎‏‎Mute‎‏‎‎‏‎"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‏‎‎‎‏‎‏‎‎‎‏‎‏‏‏‎‎‏‎‎‎‏‎‎‎‏‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‏‏‏‎‎‏‎‎‏‏‏‏‎‏‏‎‎‎To enable, first change \"Press and hold power button\" to the power menu.‎‏‎‎‏‎"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‏‏‏‏‏‏‏‏‏‏‏‏‎‏‎‏‎‏‎‎‎‏‏‎‏‎‏‏‎‎‏‎‏‏‎‎‎‎‎‎‏‎‏‎‏‏‎‏‎‏‎‏‏‏‏‎‎‎‏‎To enable, first change \"Press &amp; hold power button\" to the power menu.‎‏‎‎‏‎"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‏‎‏‏‎‏‏‏‎‎‎‏‎‎‎‏‎‎‏‎‏‏‏‎‏‏‎‎‎‏‏‎‎‎‏‎‎‏‎‏‎‎‎‎‏‏‏‎‏‎‎‎‏‏‎‏‏‎‎‎Network details‎‏‎‎‏‎"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‎‏‎‏‏‏‎‏‎‎‎‎‏‏‏‎‏‏‏‎‎‎‏‎‎‎‎‏‎‏‏‏‎‎‎‏‏‎‎‎‎‎‏‏‎‎‏‎‏‎‏‏‏‎‏‏‏‏‎‎Your device name is visible to apps on your phone. It may also be seen by other people when you connect to Bluetooth devices, connect to a Wi-Fi network or set up a Wi-Fi hotspot.‎‏‎‎‏‎"</string>
     <string name="devices_title" msgid="649715719278562515">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‎‎‏‎‎‎‎‎‏‎‎‎‏‎‎‎‎‎‏‎‎‎‎‎‎‎‏‎‎‎‏‏‏‎‎‏‎‎‏‎‏‏‎‎‎‎‎‏‏‎‎‏‏‎‏‎‎‏‏‎Devices‎‏‎‎‏‎"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‏‎‎‏‎‏‎‎‏‎‎‎‏‏‎‎‏‏‎‏‏‎‏‎‏‎‎‎‏‏‎‎‎‎‏‏‎‏‎‎‏‏‏‎‎‏‏‏‏‎‏‏‎‎‎‏‎‏‏‎device controls‎‏‎‎‏‎"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‎‎‏‏‏‏‎‎‏‏‎‎‏‏‏‏‎‎‎‏‎‏‎‏‏‎‏‏‎‎‎‏‏‎‏‎‏‎‏‏‏‎‎‎‎‎‏‎‏‎‏‏‏‎‎‎‎‎‎‎Cards &amp; passes‎‏‎‎‏‎"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‎‎‎‏‏‎‏‏‏‎‎‎‎‎‎‏‏‎‏‏‎‏‎‎‏‎‏‎‏‏‎‏‎‎‎‎‏‎‏‏‏‏‎‎‏‏‏‏‏‎‎‎‏‏‏‏‎‏‎‏‎cards &amp; passes‎‏‎‎‏‎"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‎‏‎‏‎‎‏‏‎‎‎‏‎‎‎‏‏‏‏‎‏‎‎‏‏‏‎‎‎‎‎‎‏‎‎‏‏‏‎‎‎‎‎‏‎‎‏‏‏‏‎‏‎‎‎‎‏‏‏‏‎Press and hold power button‎‏‎‎‏‎"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‏‎‎‏‏‏‎‏‏‏‎‎‎‎‎‏‎‎‏‏‏‏‏‎‏‎‎‏‏‏‏‎‏‎‏‏‎‏‎‏‎‎‏‎‏‎‏‏‏‎‏‏‎‎‎‎‏‎‎‎‎Press and hold for the Assistant‎‏‎‎‏‎"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‎‏‏‏‏‎‏‏‎‎‎‎‎‏‎‎‏‏‏‎‎‏‏‎‏‎‏‏‎‏‏‎‏‏‎‏‎‏‎‎‎‎‏‎‏‏‎‎‎‎‏‎‎‏‏‏‏‎‎‎‎Press and hold for the power menu‎‏‎‎‏‎"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‎‏‏‏‎‏‎‎‏‎‏‏‏‏‎‏‏‎‏‏‏‏‎‏‎‎‎‏‏‏‎‎‎‏‏‏‎‏‎‏‏‎‎‏‎‏‎‏‎‏‏‎‏‏‎‏‏‎‎‎‎Press and hold disabled‎‏‎‎‏‎"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‎‎‎‏‎‎‏‏‏‎‏‎‏‏‎‎‎‎‏‏‎‏‎‏‎‏‏‏‏‎‎‎‏‎‎‏‎‏‎‎‎‎‎‎‏‏‎‏‎‎‎‎‎‏‎‎‏‏‎‏‎Press &amp; hold power button‎‏‎‎‏‎"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‏‏‎‏‎‎‏‎‏‏‎‎‏‏‎‏‎‏‏‏‏‎‎‏‏‎‎‏‏‏‏‎‏‏‎‏‎‏‎‏‏‏‏‎‏‎‏‎‎‏‎‏‎‎‏‏‎‏‎‎Press &amp; hold power button to access‎‏‎‎‏‎"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‏‏‏‎‏‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‏‏‎‎‏‏‎‎‎‏‏‎‎‎‎‎‎‏‎‎‎‎‎‏‏‏‏‏‏‎‏‏‏‎‏‏‏‏‎Power menu‎‏‎‎‏‎"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‏‎‏‏‎‎‎‎‎‎‎‏‏‏‎‎‎‏‎‎‎‏‎‎‏‎‎‎‏‎‎‎‏‎‏‎‎‎‏‎‎‏‏‎‎‏‏‎‏‏‎‏‏‎‎‎‎‏‏‏‎Digital assistant‎‏‎‎‏‎"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‎‏‏‏‏‏‏‎‏‎‎‎‎‏‏‎‎‏‎‎‏‎‏‏‎‏‎‎‎‎‎‎‎‎‏‏‏‏‎‎‎‎‏‎‏‎‎‏‎‎‎‏‎‏‎‏‎‎‎‎Access digital assistant‎‏‎‎‏‎"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‎‎‏‏‎‏‏‎‏‎‏‏‏‏‎‎‏‎‏‏‏‏‎‏‎‎‏‎‏‎‏‏‏‏‎‎‏‎‏‎‎‏‎‏‎‏‏‏‏‏‎‎‏‏‏‏‏‏‎‎Access power menu‎‏‎‎‏‎"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‏‎‏‎‎‎‏‏‏‏‎‏‏‎‏‏‎‏‎‏‎‏‎‎‏‏‎‏‎‎‎‎‎‎‏‏‎‎‏‏‎‏‏‏‏‎‏‎‎‏‎‎‏‏‎‏‎‎‎‎To use, first set a screen lock‎‏‎‎‏‎"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‎‏‏‏‏‏‏‏‏‎‏‎‎‏‎‏‎‎‏‎‏‏‎‎‏‎‎‏‏‎‏‏‎‎‎‏‎‏‏‎‎‎‎‏‎‏‏‎‏‎‎‎‎‎‎‏‎‎‏‎Hold for Assistant‎‏‎‎‏‎"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‏‎‏‎‎‎‎‏‎‎‏‎‏‏‏‏‎‏‏‎‎‎‎‏‏‏‎‎‎‎‏‏‎‎‏‏‏‎‏‎‏‏‎‎‎‏‏‎‏‎‏‎‏‏‏‎‎‎‎Trigger the Assistant by holding the power button‎‏‎‎‏‎"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‏‎‎‎‎‎‎‎‏‏‎‏‎‎‎‎‏‎‎‏‎‎‎‏‏‎‎‎‏‏‎‎‎‏‎‎‎‎‏‏‎‎‏‎‏‏‏‎‏‎‏‏‏‏‏‏‎‏‏‏‎Power &amp; Emergency Menu:‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎Press Power and Volume up at the same time.‎‏‎‎‏‎"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‏‎‎‎‎‎‏‎‎‏‏‎‏‏‏‎‎‎‎‏‎‎‏‏‏‎‎‏‎‏‎‏‎‏‏‎‎‎‎‎‎‏‏‏‏‏‎‏‏‏‎‏‎‏‎‏‎‎‏‏‎‎Prevent ringing:‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎Shortcut available in the volume menu.‎‏‎‎‏‎"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‏‏‎‏‏‏‏‏‏‏‎‏‏‏‏‏‎‏‎‏‎‏‎‎‎‏‏‎‏‎‎‏‏‏‏‎‎‎‎‎‏‎‎‎‏‎‎‏‎‏‏‎‎‎‏‏‏‏‏‏‎Power menu:‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎Press the power button and the volume up button at the same time‎‏‎‎‏‎"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‎‎‎‎‎‏‏‏‏‎‎‏‎‎‎‎‎‏‏‏‏‏‎‎‎‏‏‎‎‎‏‏‏‏‏‎‎‎‎‏‎‏‏‏‎‏‎‏‎‎‎‎‏‎‏‏‎‎‏‎Prevent ringing:‎‏‎‎‏‏‎\n‎‏‎‎‏‏‏‎Press a volume button for the shortcut‎‏‎‎‏‎"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‏‏‎‏‏‎‏‎‎‏‎‎‏‏‏‎‎‏‎‏‎‏‏‎‏‏‏‎‎‎‎‏‎‎‏‎‎‏‏‏‏‏‏‎‎‎‎‏‏‏‎‏‏‎‏‎‏‎‏‎‎‏‎Press &amp; hold duration‎‏‎‎‏‎"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‏‏‏‎‏‎‎‎‏‏‎‎‏‎‎‏‎‎‏‎‎‏‏‏‏‏‎‏‏‎‏‎‏‏‏‏‎‏‏‏‎‎‏‎‏‏‏‏‏‎‏‏‏‏‎‏‎‎‎‎‏‏‏‏‎Adjust sensitivity by choosing how long to press &amp; hold the power button‎‏‎‎‏‎"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‏‏‏‏‎‎‏‏‎‏‎‎‎‏‎‏‎‎‏‏‏‎‎‎‎‏‎‏‏‏‏‎‎‏‏‎‏‏‏‎‎‏‎‏‏‏‏‎‏‎‏‎‏‎‎‎‎‏‏‎Short‎‏‎‎‏‎"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 0a4df20..56e0676 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Cuando usa Pixel Imprint, las imágenes se utilizan para actualizar el modelo de huella dactilar. Las imágenes que se usan para crear el modelo de tu hijo no se guardan, pero el modelo en sí se almacena de manera segura en el teléfono y nunca sale de él. Todo el proceso se lleva a cabo en el teléfono de forma segura."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Puedes borrar las imágenes de tu huella dactilar y el modelo, o bien desactivar el desbloqueo con huella dactilar en cualquier momento desde la Configuración. Los modelos y las imágenes de la huella dactilar se almacenan en el teléfono hasta que los borras."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Tu hijo y tú pueden borrar el modelo y las imágenes de su huella dactilar, así como desactivar la función Desbloqueo con huellas dactilares en cualquier momento desde Configuración. Los modelos y las imágenes de la huella se almacenan en el teléfono hasta que se borran."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Tu teléfono se puede desbloquear aunque no lo desees, por ejemplo, cuando alguien lo sostiene frente a tu dedo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Tu teléfono se puede desbloquear aunque no lo desees, por ejemplo, cuando alguien lo sostiene frente a tu dedo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tu tablet se puede desbloquear aunque no lo desees, por ejemplo, cuando alguien la sostiene frente a tu dedo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Tu dispositivo se puede desbloquear aunque no lo desees, por ejemplo, cuando alguien lo sostiene frente a tu dedo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"El teléfono de tu hijo puede desbloquearse sin que así lo quisiera, por ejemplo, porque alguien se lo acercó al dedo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Para obtener los mejores resultados, usa un protector de pantalla que tenga certificación Made for Google. Es posible que tu huella dactilar no funcione con otros protectores."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Para obtener los mejores resultados, usa un protector de pantalla que tenga certificación Made for Google. Es posible que la huella dactilar de tu hijo no funcione con otros protectores."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustración del dispositivo y la ubicación del sensor de huellas dactilares"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nombre"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Aceptar"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Reintentar"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Borrar"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Toca el sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Coloca el dedo en el sensor y levántalo cuando sientas una vibración."</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Listo"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ese no es el sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Toca el sensor en la parte posterior del teléfono con el dedo índice."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"No se completó la inscripción"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Se alcanzó el límite de tiempo para la inscripción de huellas dactilares. Vuelve a intentarlo."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Tiempo para conf. huella dactilar agotado"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Vuelve a intentarlo o hazlo más tarde en Configuración"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"El registro de huellas dactilares no funcionó. Vuelve a intentarlo o usa otro dedo."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Agregar otra huella digital"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Siguiente"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personaliza tu teléfono"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Prueba diferentes estilos, fondos de pantalla y mucho más"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Protector de pantalla"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"protector de pantalla"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Usar protector de pantalla"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Mientras se carga o está conectado"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"En ambos casos"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Mientras se carga"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Cuando está conectado"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nunca"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Apagado"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Para controlar qué sucede cuando el teléfono está conectado o suspendido, activa el protector de pantalla."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Cuándo comenzar"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Protector de pantalla actual"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Configuración"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Brillo automático"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Levantar el dispositivo para activarlo"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Pantalla Ambiente"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Establecer un PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Establecer un PIN de trabajo"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Establecer un patrón"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Para mayor seguridad, establece un patrón para desbloquear el dispositivo"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Establecer un patrón de trabajo"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Configura la contraseña de respaldo"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Para usar tu huella, configura un patrón"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplicación de emergencia"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Restablecer preferencias de apps"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"¿Restablecer preferencias de apps?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Se restablecerán todas las preferencias de lo siguiente:\n\n"<li>"Apps inhabilitadas"</li>\n<li>"Notificaciones de apps inhabilitadas"</li>\n<li>"Apps predeterminadas para realizar acciones"</li>\n<li>"Restricciones de datos en segundo plano para apps"</li>\n<li>"Restricciones de permisos"</li>\n\n"No perderás los datos de las apps."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Se restablecerán todas las preferencias de lo siguiente:\n\n"<li>"Apps inhabilitadas"</li>\n<li>"Notificaciones de apps inhabilitadas"</li>\n<li>"Apps predeterminadas para realizar acciones"</li>\n<li>"Restricciones de datos en segundo plano para apps"</li>\n<li>"Restricciones de permisos"</li>\n<li>"Configuración de uso de batería"</li>\n\n"No perderás los datos de las apps."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Restablecer apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Administrar el espacio"</string>
     <string name="filter" msgid="9039576690686251462">"Filtro"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Restablecer configuración"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Se restableció la configuración del tamaño de visualización y del texto"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"¿Deseas restablecer el texto y el tamaño de la pantalla?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Se restablecerán las preferencias de texto y tamaño de la pantalla a las de la configuración original del teléfono"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Se restablecerán las preferencias de texto y tamaño de la pantalla a las de la configuración original del teléfono"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Se restablecerán las preferencias de texto y tamaño de la pantalla a los parámetros de configuración originales de la tablet"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Restablecer"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"¿Tienes algún plan para el fin de semana?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Iré a la playa. ¿Quieres venir?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Se se usó desde la última carga completa"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Sin uso durante las últimas 24 h"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Otros usuarios"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"El cálculo de batería restante se basa en el uso del dispositivo"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Tiempo restante estimado"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Para completar la carga"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Interacción y palabra clave completa"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Voz a texto simple"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Este servicio de entrada de voz puede supervisar que siempre esté activada la voz y controlar en tu nombre las aplicaciones que pueden utilizar la entrada de voz. Procede de <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. ¿Quieres habilitar el uso de este servicio?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Configuración de reconocimiento integrada en el dispositivo"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Reconocimiento integrado en el dispositivo"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Reconocimiento de voz integrado en el dispositivo"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motor preferido"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Configuración del motor"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Velocidad y tono de la voz"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Borrar"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Se eliminarán las aplicaciones y los datos de esta sesión."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Eliminar"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Invitado (tú)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Usuarios"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Otros usuarios"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Borrar la actividad de invitado"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Borra todas las apps y los datos de invitado cuando salgas del modo de invitado"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"¿Borrar la actividad de invitado?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Las apps y los datos de esta sesión de invitado se borrarán ahora, y toda la actividad futura correspondiente se borrará cada vez que salgas del modo de invitado."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Activar llamadas telefónicas"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Activar llamadas telefónicas y SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Borrar usuario"</string>
@@ -4009,11 +4023,11 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Todas las notificaciones de \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Todas las notificaciones de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notificaciones adaptables"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
       <item quantity="other">Aproximadamente <xliff:g id="NUMBER_1">%,d</xliff:g> notificaciones por día</item>
       <item quantity="one">Aproximadamente <xliff:g id="NUMBER_0">%d</xliff:g> notificación por día</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
       <item quantity="other">Aproximadamente <xliff:g id="NUMBER_1">%,d</xliff:g> notificaciones por semana</item>
       <item quantity="one">Aproximadamente <xliff:g id="NUMBER_0">%d</xliff:g> notificación por semana</item>
     </plurals>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"No hacer nada"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Silenciar"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Para habilitar la función, cambia \"Mantener presionado el botón de encendido\" para acceder al menú de encendido."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"A fin de habilitar la función, cambia \"Mantener presionado el botón de encendido\" para acceder al menú de encendido."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalles de la red"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"El nombre de tu dispositivo es visible para las apps del teléfono. Es posible que también lo vean otras personas cuando te conectes a dispositivos Bluetooth o a una red Wi-Fi, o cuando configures un hotspot de Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispositivos"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"controles de dispositivos"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Tarjetas y pases"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"tarjetas y pases"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Mantener presionado el botón de encendido"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Mantener presionado para acceder al Asistente"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Mantener presionado para abrir menú de encendido"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Opción mantener presionado inhabilitada"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Mantén presionado el botón de encendido"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Mantén presionado el botón de encendido para acceder"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menú de encendido"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Asistente digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Acceso al asistente digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Acceso al menú de encendido"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para usarlo, debes establecer un bloqueo de pantalla"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Mantén presionado para hablar con Asistente"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Mantén presionado el botón de encendido para activar Asistente"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menú de encendido y emergencia:\nPresiona los botones de encendido y de subir volumen al mismo tiempo."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Impedir hacer sonar:\nEl acceso directo está disponible en el menú de volumen."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menú de encendido:\nPresiona el botón de encendido y el botón de subir volumen al mismo tiempo"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Silenciar sonidos:\nPresiona un botón de volumen para usar la combinación de teclas"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Duración de presión"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Elige durante cuánto tiempo quieres mantener presionado el botón de encendido para ajustar la sensibilidad"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Corta"</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 16a4e99..5d79b69 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Cuando usa Pixel Imprint, se utilizan imágenes para actualizar el modelo de su huella digital. Las imágenes usadas para crear el modelo de huella digital de tu hijo/a nunca se guardan, pero el modelo en sí se almacena de manera segura en el teléfono y nunca sale de él. Todos los procesos se llevan a cabo de forma segura en el teléfono."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Puedes eliminar las imágenes y el modelo de tu huella digital, o desactivar Desbloqueo con huella digital en cualquier momento desde Ajustes. Las imágenes y los modelos de huellas digitales se almacenan en el teléfono hasta que los eliminas."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Tú y tu hijo/a podéis eliminar el modelo y las imágenes de su huella digital, así como desactivar Desbloqueo con huella digital en cualquier momento desde Ajustes. Los modelos y las imágenes de la huella digital se almacenan en el teléfono hasta que se eliminan."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Tu teléfono puede desbloquearse aunque no sea tu intención (por ejemplo, si alguien lo acerca a tu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Tu teléfono puede desbloquearse aunque no sea tu intención (por ejemplo, si alguien lo acerca a tu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tu tablet puede desbloquearse aunque no sea tu intención (por ejemplo, si alguien lo acerca a tu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Tu dispositivo puede desbloquearse aunque no sea tu intención (por ejemplo, si alguien lo acerca a tu dedo)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"El teléfono de tu hijo/a puede desbloquearse sin que quiera, por ejemplo, porque alguien se lo ha acercado al dedo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Para obtener mejores resultados, usa un protector de pantalla con certificado Made for Google. Con otros protectores de pantalla, puede que tu huella digital no funcione."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Para obtener mejores resultados, usa un protector de pantalla con certificado Made for Google. Con otros protectores de pantalla, puede que la huella digital de tu hijo/a no funcione."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustración con la ubicación del sensor de huellas digitales y dispositivo"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nombre"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Aceptar"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Reintentar"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Eliminar"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Toca el sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Pon el dedo en el sensor y levántalo cuando notes una vibración"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Hecho"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"¡Vaya! Ese no es el sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Toca el sensor situado detrás del teléfono con el dedo índice."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registro no completado"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Se ha superado el tiempo de registro de la huella digital. Vuelve a intentarlo."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Tiempo agotado para configurar la huella digital"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Inténtalo otra vez ahora o configura la huella digital en otro momento desde Ajustes"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"El registro de la huella digital no se ha realizado correctamente. Vuelve a intentarlo o utiliza otro dedo."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Añadir otra"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Siguiente"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personalizar el teléfono"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Prueba diferentes estilos, fondos de pantalla y mucho más"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Salvapantallas"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"salvapantallas"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Usar salvapantallas"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Durante la carga o en una base"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Ambos casos"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Durante la carga"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Con el dispositivo en una base"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nunca"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Desactivado"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Para controlar lo que ocurre cuando el teléfono está en un dock o inactivo, activa el salvapantallas."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Cuándo empezar a mostrarlo"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Salvapantallas actual"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Ajustes"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Brillo automático"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Levantar el dispositivo para activarlo"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Pantalla ambiente"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Establece un PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Establece un PIN para el trabajo"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Crea un patrón"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Para mayor seguridad, configura un patrón para desbloquear el dispositivo"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Crea un patrón de trabajo"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Para usar una huella, establece un patrón"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Para usar una huella, establece un patrón"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplicación Emergencia"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Recuperar ajustes de aplicaciones"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"¿Recuperar preferencias de las aplicaciones?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Se recuperarán todas las preferencias de:\n\n"<li>"Aplicaciones inhabilitadas"</li>\n<li>"Notificaciones de aplicaciones inhabilitadas"</li>\n<li>"Aplicaciones predeterminadas para acciones"</li>\n<li>"Restricciones de datos en segundo plano de aplicaciones"</li>\n<li>"Restricciones de permisos"</li>\n\n"No se perderán los datos de las aplicaciones."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Se recuperarán todas las preferencias de:\n\n"<li>"Aplicaciones inhabilitadas"</li>\n<li>"Notificaciones de aplicaciones inhabilitadas"</li>\n<li>"Aplicaciones predeterminadas para acciones"</li>\n<li>"Restricciones de datos en segundo plano de aplicaciones"</li>\n<li>"Restricciones de permisos"</li>\n<li>"Ajustes del uso de batería"</li>\n\n"No se perderán los datos de las aplicaciones."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Recuperar aplicaciones"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gestionar espacio"</string>
     <string name="filter" msgid="9039576690686251462">"Filtrar"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Restablecer ajustes"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"La configuración del tamaño y texto de la pantalla se ha restablecido"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"¿Restablecer el tamaño y texto de la pantalla?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Tus preferencias de tamaño y texto de la pantalla se restablecerán a las de la configuración original del teléfono"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Tus preferencias de tamaño y texto de la pantalla se restablecerán a las de la configuración original del teléfono"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Tus preferencias de tamaño y texto de la pantalla se restablecerán a las de la configuración original del tablet"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Restablecer"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"¿Tienes algún plan este fin de semana?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Iré a la playa. ¿Quieres venir?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Sin uso desde la última carga completa"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Sin uso durante las últimas 24 horas"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Otros usuarios"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"La estimación de la batería restante se basa en el uso de tu dispositivo"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Tiempo restante estimado"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Hasta completar la carga"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Interacción y palabra activa completa"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Conversión de texto a voz simple"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Este servicio de entrada de voz podrá supervisar que la voz siempre esté activada y controlar las aplicaciones compatibles con la entrada de voz en tu nombre. Procede de la aplicación <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. ¿Quieres habilitar el uso de este servicio?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Ajustes de reconocimiento en el dispositivo"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Reconocimiento en el dispositivo"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Reconocimiento de voz en el dispositivo"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motor preferido"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Configuración del motor"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Velocidad y tono de la voz"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Eliminar"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Se eliminarán todas las aplicaciones y datos de esta sesión."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Quitar"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Invitado (tú)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Usuarios"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Otros usuarios"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Eliminar actividad de invitado"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Elimina todas las aplicaciones y datos de la sesión de invitado al salir del modo Invitado"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"¿Eliminar actividad de invitado?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Se eliminarán las aplicaciones y datos de esta sesión de invitado ahora, y toda la actividad futura correspondiente se borrará cada vez que salgas del modo Invitado"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Activar llamadas"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Activar llamadas y SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Eliminar usuario"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Todas las notificaciones de \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Todas las notificaciones de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notificaciones adaptativas"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">Aproximadamente <xliff:g id="NUMBER_1">%,d</xliff:g> notificaciones al día</item>
-      <item quantity="one">Aproximadamente <xliff:g id="NUMBER_0">%d</xliff:g> notificación al día</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Alrededor de <xliff:g id="NUMBER_1">%,d</xliff:g> notificaciones al día</item>
+      <item quantity="one">Alrededor de <xliff:g id="NUMBER_0">%d</xliff:g> notificación al día</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">Aproximadamente <xliff:g id="NUMBER_1">%,d</xliff:g> notificaciones a la semana</item>
-      <item quantity="one">Aproximadamente <xliff:g id="NUMBER_0">%d</xliff:g> notificación a la semana</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Alrededor de <xliff:g id="NUMBER_1">%,d</xliff:g> notificaciones a la semana</item>
+      <item quantity="one">Alrededor de <xliff:g id="NUMBER_0">%d</xliff:g> notificación a la semana</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nunca"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Notificaciones del dispositivo y de aplicaciones"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"No hacer nada"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Silenciar"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Para habilitarlo, primero cambia \"Mantener pulsado el botón de encendido\" al menú de encendido."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Para habilitarlo, primero cambia \"Mantener pulsado el botón de encendido\" en el menú de encendido."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalles de red"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Las aplicaciones de tu teléfono pueden ver el nombre de tu dispositivo. También es posible que lo vean otros usuarios si lo conectas con dispositivos Bluetooth, si te conectas a una red Wi-Fi o si configuras un punto de acceso Wi‑Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispositivos"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"control de dispositivos"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Tarjetas y pases"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"tarjetas y pases"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Mantener pulsado el botón de encendido"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Mantén pulsado el botón de encendido para activar el Asistente"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Mantenlo pulsado para abrir el menú de encendido"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Mantener pulsado está inhabilitado"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Mantener pulsado el botón de encendido"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Mantener pulsado el botón de encendido para acceder"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menú de encendido"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Asistente digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Acceder al asistente digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Acceder al menú de encendido"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para usar esta opción, primero tienes que configurar un bloqueo de pantalla"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Mantener pulsado para hablar con el Asistente"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Activa el Asistente manteniendo pulsado el botón de encendido"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menú de encendido y de emergencias:\nPulsa las teclas de encendido y de subir volumen al mismo tiempo."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Evitar sonar:\nAcceso directo disponible en el menú de volumen."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menú de encendido:\nPulsa el botón de encendido y el botón para subir volumen a la vez"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Evita que suene:\nPulsa un botón de volumen para usar el acceso directo"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Duración de la pulsación"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Ajusta la sensibilidad eligiendo durante cuánto tiempo hay que pulsar el botón de encendido"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Corta"</string>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index ac5913a..12214b3 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Kui ta kasutab Pixel Imprinti, kasutatakse kujutisi tema sõrmejäljemudeli värskendamiseks. Lapse sõrmejäljemudeli loomiseks kasutatavaid kujutisi ei salvestata mitte kunagi, kuid sõrmejäljemudel salvestatakse turvaliselt tema telefoni, kust seda välja ei saadeta. Kogu töötlus toimub turvaliselt telefonis."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Seadetes saate oma sõrmejäljekujutised ja -mudeli alati kustutada või sõrmejäljega avamise funktsiooni välja lülitada. Sõrmejäljekujutised ja -mudelid salvestatakse telefoni, kuni need kustutate."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Seadetes saate (või saab laps) sõrmejäljekujutised ja -mudeli alati kustutada või sõrmejäljega avamise funktsiooni välja lülitada. Sõrmejäljekujutised ja -mudelid salvestatakse telefoni, kuni need kustutatakse."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Teie telefoni saab avada, kui te seda teha ei kavatse (nt kui keegi hoiab seda teie sõrme vastas)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Teie telefoni saab avada, kui te seda teha ei kavatse (nt kui keegi hoiab seda teie sõrme vastas)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Teie tahvelarvuti saab avada, kui te seda teha ei kavatse (nt kui keegi hoiab seda teie sõrme vastas)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Teie seadme saab avada, kui te seda teha ei kavatse (nt kui keegi hoiab seda teie sõrme vastas)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Teie lapse telefoni saab avada, kui ta seda teha ei kavatse (nt kui keegi hoiab seda tema sõrme vastas)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Parimate tulemuste jaoks kasutage ekraanikaitset, millel on sertifikaat Made for Google. Teiste ekraanikaitsmetega ei pruugi teie sõrmejälg toimida."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Parimate tulemuste jaoks kasutage ekraanikaitset, millel on sertifikaat Made for Google. Teiste ekraanikaitsetega ei pruugi teie lapse sõrmejälg toimida."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Seadme joonis ja sõrmejäljeanduri asukoht"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nimi"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Proovige uuesti"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Kustuta"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Puudutage andurit"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Asetage oma sõrm andurile ja kui tunnete värinat, siis tõstke see üles."</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Valmis"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Vabandust, see pole andur"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Puud. telefoni tagaküljel asuvat andurit. Kasut. oma nimetissõrme."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registreerimist ei lõpetatud"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Sõrmejälje registreerimisaeg lõppes. Proovige uuesti."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Sõrmejälje seadistamine aegus"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Proovige kohe uuesti või seadistage sõrmejälg hiljem seadetes"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Sõrmejälje registreerimine ei toiminud. Proovige uuesti või kasutage teist sõrme."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Lisa veel üks"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Järgmine"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Telefoni kohandamine"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Proovige eri stiile, taustapilte ja muud"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Ekraanisäästja"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ekraanisäästja"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Kasuta ekraanisäästjat"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Laadimise ajal või dokis"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Kui on dokitud või laeb"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Laadimise ajal"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Kui on dokitud"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Mitte kunagi"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Välja"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Kui soovite juhtida, mis juhtub telefoni dokkimisel ja/või puhkerežiimi lülitamisel, siis lülitage ekraanisäästja sisse."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Alustamise aeg"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Praegune ekraanisäästja"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Seaded"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automaatne eredus"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Tõstke äratamiseks"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Säästlik ekraan"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Määrake PIN-kood"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Määrake tööprofiili PIN-kood"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Määrake muster"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Turvalisuse huvides seadistage seadme avamiseks muster"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Määrake tööprofiili muster"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Sõrmejälje kasutamiseks määrake parool"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Sõrmejälje kasutamiseks määrake muster"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Hädaabirakendus"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Rakenduste eelistuste lähtestamine"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Lähtestada rakenduste eelistused?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"See lähtestab kõik järgmised eelistused.\n\n"<li>"Keelatud rakendused"</li>\n<li>"Keelatud rakenduste märguanded"</li>\n<li>"Toimingute vaikerakendused"</li>\n<li>"Rakenduste taustaandmete piirangud"</li>\n<li>"Mis tahes lubade piirangud"</li>\n\n"Rakenduste andmed säilivad."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"See lähtestab kõik järgmised eelistused.\n\n"<li>"Keelatud rakendused"</li>\n<li>"Keelatud rakenduste märguanded"</li>\n<li>"Toimingute vaikerakendused"</li>\n<li>"Rakenduste taustaandmete piirangud"</li>\n<li>"Igasugused lubade piirangud"</li>\n<li>"Akukasutuse seaded"</li>\n\n"Rakenduste andmed säilivad."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Lähtesta rakendused"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Halda ruumi"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Lähtesta seaded"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Kuvamissuuruse ja teksti seaded on lähtestatud"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Kas lähtestada kuvamissuurus ja tekst?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Kuvamissuurus ja teksti eelistused lähtestatakse telefoni originaalseadetele"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Kuvamissuurus ja teksti eelistused lähtestatakse telefoni originaalseadetele"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Kuvamissuurus ja teksti eelistused lähtestatakse tahvelarvuti originaalseadetele"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Lähtesta"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Mida nädalavahetusel teed?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Lähen randa. Kas tahad kaasa tulla?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Pole alates viimasest täislaadimisest kasutatud"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Pole viimase 24 tunni jooksul kasutatud"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Teised kasutajad"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Aku järelejäänud tööaja prognoos põhineb seadme kasutusel"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Hinnanguline järelejäänud aeg"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Täislaadimiseni"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Täielik otsetee sõna ja interaktsioon"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Lihtne kõnesüntees"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"See häälsisendi teenus suudab pakkuda alati sisse lülitatud hääle jälgimisteenust ja juhtida teie nimel rakendusi, kus on lubatud häälefunktsioon. See pärineb rakendusest <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Kas lubada teenuse kasutamine?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Seadmepõhise tuvastuse seaded"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Seadmepõhine tuvastus"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Seadmepõhine kõnetuvastus"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Eelistatud kõnesünteesi mootor"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Kõnesünteesi mootori seaded"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Kõne kiirus ja helikõrgus"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Kustuta"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Seansi kõik rakendused ja andmed kustutatakse."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Eemalda"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Külaline (teie)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Kasutajad"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Teised kasutajad"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Kustuta külalise tegevus"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Kustuta külalisrežiimist väljumisel kõik külalise rakendused ja andmed"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Kas kustutada külalise tegevus?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Selle külastajaseansi rakendused ja andmed kustutatakse kohe ning kõik tulevased külastajate tegevused kustutatakse külalisrežiimist väljumisel."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Lülita telefonikõned sisse"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Lülita telefonikõned ja SMS-id sisse"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Kustuta kasutaja"</string>
@@ -4009,13 +4023,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Kõik tüüpi „<xliff:g id="APP_NAME">%1$s</xliff:g>” märguanded"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Kõik rakenduse <xliff:g id="APP_NAME">%1$s</xliff:g> märguanded"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Kohanduvad märguanded"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> märguannet päevas</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> märguanne päevas</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Ligikaudu <xliff:g id="NUMBER_1">%,d</xliff:g> märguannet päevas</item>
+      <item quantity="one">Ligikaudu <xliff:g id="NUMBER_0">%d</xliff:g> märguanne päevas</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> märguannet nädalas</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> märguanne nädalas</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Ligikaudu <xliff:g id="NUMBER_1">%,d</xliff:g> märguannet nädalas</item>
+      <item quantity="one">Ligikaudu <xliff:g id="NUMBER_0">%d</xliff:g> märguanne nädalas</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Mitte kunagi"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Seadmete ja rakenduste märguanded"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ära tee midagi"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibreerimine"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Vaigistamine"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Lubamiseks muutke esmalt toitemenüüs valikut „Toitenupu pikalt vajutamine“."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Lubamiseks muutke esmalt toitemenüüs valikut „Toitenupu pikalt vajutamine“."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Võrgu üksikasjad"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Teie seadme nimi on teie telefonis olevatele rakendustele nähtav. Bluetooth-seadmetega või WiFi-võrguga ühenduse loomisel või WiFi-kuumkoha seadistamisel võivad seda näha ka teised inimesed."</string>
     <string name="devices_title" msgid="649715719278562515">"Seadmed"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"seadmete juhikud"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kaardid ja pääsmed"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kaardid ja pääsmed"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Toitenupu pikalt vajutamine"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Pikalt vajutamisega avatakse assistent"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Pikalt vajutamisega kuvatakse menüü Toide"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Pikalt vajutamine on keelatud"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Vajutage pikalt toitenuppu"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Juurdepääsemiseks vajutage pikalt toitenuppu"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Toitemenüü"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitaalne assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Juurdepääs digitaalsele assistendile"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Juurdepääs toitemenüüle"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Kasutamiseks määrake kõigepealt ekraanilukk"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Hoidmine assistendi avamiseks"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Assistent aktiveeritakse toitenupu allhoidmisel"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menüüd Toide ja Hädaolukord:\nvajutage samal ajal toitenuppu ja helitugevuse suurendamise nuppu."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Helisemise vältimine:\notsetee asub helitugevuse menüüs."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Toitemenüü:\nvajutage korraga toitenuppu ja helitugevuse suurendamise nuppu"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Helisemise vältimine:\notsetee kasutamiseks vajutage helitugevuse nuppu"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Allhoidmise kestus"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Kohandage ühenduvust, valides, kui pikalt toitenuppu all hoida"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Lühike"</string>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index d12afba..63b4f6f 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Pixel Imprint erabiltzen duenean, haren hatz-markaren eredua eguneratzeko erabiltzen dira irudiak. Haurraren hatz-markaren eredua sortzeko erabilitako irudiak ez dira inoiz biltegiratzen, baina hatz-markaren eredua telefonoan gordetzen da, modu seguruan, eta ez da inoiz ateratzen telefonotik. Guztia telefonoan prozesatzen da, modu seguruan."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Hatz-markaren irudiak eta eredua ezabatzeko edo hatz-marka bidez desblokeatzeko eginbidea desaktibatzeko, joan Ezarpenak atalera. Ezabatzen dituzun arte, telefonoan gordeko dira hatz-markaren irudi eta ereduak."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Haurrak eta zuk haren hatz-markaren irudiak eta eredua ezabatu nahi badituzue edo hatz-marka bidez desblokeatzeko eginbidea desaktibatu nahi baduzue, joan Ezarpenak atalera. Ezabatzen dituzuen arte, telefonoan gordeko dira hatz-markaren irudiak eta ereduak."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Baliteke telefonoa nahi ez duzunean desblokeatzea; adibidez, norbaitek zure hatzarekin ukitzen badu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Baliteke telefonoa nahi ez duzunean desblokeatzea; adibidez, norbaitek zure hatzarekin ukitzen badu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Baliteke tableta nahi ez duzunean desblokeatzea; adibidez, norbaitek zure hatzarekin ukitzen badu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Baliteke gailua nahi ez duzunean desblokeatzea; adibidez, norbaitek zure hatzarekin ukitzen badu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Baliteke haurraren telefonoa nahi ez duzunean desblokeatzea; adibidez, norbaitek haren hatzarekin ukitzen badu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Emaitza onenak lortzeko, erabili Made for Google ziurtagiria duen pantaila babesteko osagarri bat. Besterik erabiliz gero, baliteke hatz-markak ez funtzionatzea."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Emaitza onenak lortzeko, erabili Made for Google ziurtagiria duen pantaila babesteko osagarri bat. Besterik erabiliz gero, baliteke haurraren hatz-markak ez funtzionatzea."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Hatz-marken sentsorea gailuan non dagoen erakusten duen ilustrazioa"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Izena"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Ados"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Saiatu berriro"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Ezabatu"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Ukitu sentsorea"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Ezarri hatza sentsorean eta, dardara sentitzen duzunean, jaso ezazu"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Eginda"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Hori ez da sentsorea"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Ukitu telefonoaren atzealdeko sentsorea. Erabili hatz erakuslea."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Ez da erregistratu"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Hatz-markak erregistratzeko denbora-muga gainditu da. Saiatu berriro."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Gainditu egin da hatz-marka konfiguratzeko denbora-muga"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Saiatu berriro orain edo konfiguratu hatz-marka geroago Ezarpenak atalean"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Ezin izan da erregistratu hatz-marka. Saiatu berriro edo erabili beste hatz bat."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Gehitu beste bat"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Hurrengoa"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Pertsonalizatu telefonoa"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Probatu askotariko estiloak, horma-paperak, etab."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Pantaila-babeslea"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"pantailarako babeslea"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Erabili pantaila-babeslea"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Kargatzen ari denean edo oinarrian dagoenean"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Bietako edozein"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Kargatzen ari denean"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Oinarrian dagoenean"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Inoiz ez"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Desaktibatuta"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Telefonoa oinarrian eta/edo inaktibo dagoenean zer gertatzen den kontrolatzeko, aktibatu pantaila-babeslea."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Noiz abiarazi"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Oraingo pantaila-babeslea"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Ezarpenak"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Distira automatikoa"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Aktibatu eskuetan hartzen denean"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Pantaila ilundua"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Ezarri PIN bat"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Ezarri laneko PIN bat"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Ezarri eredu bat"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Babestuago egoteko, ezarri gailua desblokeatzeko eredu bat"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Ezarri laneko eredu bat"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Hatz-marka erabiltzeko, ezarri pasahitza"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Hatz-marka erabiltzeko, ezarri eredu bat"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Larrialdietarako aplikazioa"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Berrezarri aplikazioen hobespenak"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Aplikazioen hobespenak berrezarri nahi dituzu?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Hauen hobespen guztiak berrezarriko dira:\n\n"<li>"desgaitutako aplikazioak"</li>\n<li>"desgaitutako aplikazio-jakinarazpenak"</li>\n<li>"ekintza jakinetarako aplikazio lehenetsiak"</li>\n<li>"aplikazioen atzeko planoko datuen murriztapenak"</li>\n<li>"baimen-murriztapenak"</li>\n\n"Ez dituzu galduko aplikazioetako datuak."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Hauen hobespen guztiak berrezarriko dira:\n\n"<li>"desgaitutako aplikazioak"</li>\n<li>"desgaitutako aplikazio-jakinarazpenak"</li>\n<li>"ekintza jakinetarako aplikazio lehenetsiak"</li>\n<li>"aplikazioen atzeko planoko datuen murriztapenak"</li>\n<li>"baimen-murriztapenak"</li>\n<li>"bateria erabiltzeko ezarpenak"</li>\n\n"Ez dituzu galduko aplikazioetako datuak."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Berrezarri aplikazioak"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Kudeatu tokia"</string>
     <string name="filter" msgid="9039576690686251462">"Iragazi"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Berrezarri ezarpenak"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Berrezarri dira bistaratzeko tamainaren eta testuaren ezarpenak"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Pantailaren tamaina eta testua berrezarri nahi dituzu?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Bistaratzeko tamainaren eta testuaren inguruko hobespenak leheneratu, eta telefonoaren jatorrizko ezarpenak berrezarriko dira"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Bistaratzeko tamainaren eta testuaren inguruko hobespenak leheneratu, eta telefonoaren jatorrizko ezarpenak berrezarriko dira"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Bistaratzeko tamainaren eta testuaren inguruko hobespenak leheneratu, eta tabletaren jatorrizko ezarpenak berrezarriko dira"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Berrezarri"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Astebururako planik?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Hondartzara joango naiz. Etorri nahi duzu?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Erabilerarik ez bateria guztiz kargatu zenetik"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Erabilerarik ez azken 24 orduetan"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Beste erabiltzaileak"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Gailuaren erabileran oinarritzen da gelditzen den bateriaren aurreikuspena"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Geratzen den denbora, gutxi gorabehera"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"guztiz kargatu arte"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Ahozko gako-hitzak eta erabateko interakzioa"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Ahoz idazteko eginbide arrunta"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Aginduak ahoz emateko zerbitzu honek une oro kontrolatuko du ahotsa eta ahozko gaitasuna duten aplikazioak ere kontrolatu ahal izango ditu. <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> aplikazioarena da. Zerbitzu hau erabiltzeko aukera gaitu nahi duzu?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Gailuko hautemate-ezarpenak"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Gailuko hautematea"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Gailuko ahots-hautematea"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motor hobetsia"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Motorraren ezarpenak"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Hizketaren abiadura eta tonua"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Ezabatu"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Saioko aplikazio eta datu guztiak ezabatuko dira."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Kendu"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gonbidatua (zu)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Erabiltzaileak"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Beste erabiltzaileak"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Ezabatu gonbidatuaren jarduerak"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Gonbidatu modutik irtetean, ezabatu gonbidatuaren aplikazio eta datu guztiak"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Gonbidatuaren jarduerak ezabatu nahi dituzu?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Gonbidatuentzako saio honetako aplikazio eta datuak orain ezabatuko dira; bestalde, etorkizuneko gonbidatuen jarduera guztiak gonbidatu modutik irteten zaren bakoitzean ezabatuko dira"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Aktibatu telefono-deiak"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Aktibatu telefono-deiak eta SMSak"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Ezabatu erabiltzailea"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\" aplikazioaren jakinarazpen guztiak"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g> aplikazioaren jakinarazpen guztiak"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Jakinarazpen egokituak"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other"><xliff:g id="NUMBER_1">%,d</xliff:g> jakinarazpen inguru eguneko</item>
-      <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> jakinarazpen inguru eguneko</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other"><xliff:g id="NUMBER_1">%,d</xliff:g> jakinarazpen inguru egunero</item>
+      <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> jakinarazpen inguru egunero</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other"><xliff:g id="NUMBER_1">%,d</xliff:g> jakinarazpen inguru asteko</item>
-      <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> jakinarazpen inguru asteko</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other"><xliff:g id="NUMBER_1">%,d</xliff:g> jakinarazpen inguru astero</item>
+      <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> jakinarazpen inguru astero</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Inoiz ez"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Gailu eta aplikazioen jakinarazpenak"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ez egin ezer"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Egin dar-dar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Desaktibatu audioa"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Gaitzeko, aldatu lehenik \"Eduki sakatuta etengailua\" aukera itzaltzeko menuan."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Gaitzeko, aldatu lehenik \"Eduki sakatuta etengailua\" aukera itzaltzeko menuan."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Sarearen xehetasunak"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Mugikorreko aplikazioek gailuaren izena ikus dezakete. Halaber, jendeak ere ikus dezake Bluetooth bidezko gailuetara edo wifi-sare batera konektatzean, edo wifi-gune bat konfiguratzean."</string>
     <string name="devices_title" msgid="649715719278562515">"Gailuak"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"gailuak kontrolatzeko widgetak"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Txartelak eta bonuak"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"txartelak eta bonuak"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Eduki sakatuta etengailua"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Eduki ezazu sakatuta Laguntzailea gai dadin"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Eduki ezazu sakatuta itzaltzeko menua ireki dadin"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Sakatuta edukitzeko aukera desgaituta dago"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Eduki sakatuta etengailua"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Eduki sakatuta etengailua hau atzitzeko"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Itzaltzeko menua"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Laguntzaile digitala"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Atzitu laguntzaile digitala"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Atzitu itzaltzeko menua"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Erabili ahal izateko, konfiguratu pantailaren blokeoa"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Eduki sakatuta Laguntzailea abiarazteko"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Abiarazi Laguntzailea etengailua sakatuta edukiz"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Itzaltzeko eta larrialdietarako menua:\nSakatu etengailua eta bolumena igotzeko tekla aldi berean."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Saihestu tonua jotzea:\nBolumenaren menuan dago lasterbidea."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Itzaltzeko menua:\nsakatu aldi berean etengailua eta bolumena igotzeko botoia"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Ez jo tonurik:\nsakatu bolumen-botoia lasterbidea erabiltzeko"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Zenbat denboraz edukiko duzu sakatuta etengailua?"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Sentikortasuna doitzeko, aukeratu zenbat denboraz edukiko duzun sakatuta etengailua"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Laburra"</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 4743f09..13fb0f0 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"‏وقتی فرزندتان از Pixel Imprint استفاده می‌کند، مدل اثر انگشت او به‌کمک تصاویر به‌روزرسانی می‌شود. تصاویر استفاده‌شده برای ایجاد مدل اثر انگشت فرزندتان هرگز ذخیره نمی‌شوند، اما مدل اثر انگشت به‌طور ایمن در تلفن ذخیره می‌شود و هرگز از آن خارج نمی‌شود. همه پردازش‌ها به‌طور ایمن در تلفن انجام می‌شود."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"می‌توانید مدل و تصاویر اثر انگشتتان را حذف کنید یا هرزمان خواستید «قفل‌گشایی با اثر انگشت» را در «تنظیمات» خاموش کنید. تا زمانی‌که مدل‌ها و تصاویر اثر انگشت را حذف نکنید، در تلفن ذخیره می‌مانند."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"شما و فرزندتان هرزمان بخواهید می‌توانید مدل و تصاویر اثر انگشت را حذف کنید، یا «قفل‌گشایی با اثر انگشت» را در «تنظیمات» خاموش کنید. تا زمانی‌که مدل‌ها و تصاویر اثر انگشت را حذف نکنید، در تلفن ذخیره می‌مانند."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"ممکن است قفل تلفنتان حتی اگر قصدش را نداشته باشید باز شود، مثلاً اگر فردی تلفن را جلوی انگشتتان نگه دارد."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"ممکن است قفل تلفنتان حتی اگر قصدش را نداشته باشید باز شود، مثلاً اگر فردی تلفن را جلوی انگشتتان نگه دارد."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"ممکن است قفل رایانه لوحی‌تان حتی اگر قصدش را نداشته باشید باز شود، مثلاً اگر فردی آن را جلوی انگشتتان نگه دارد."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"ممکن است قفل دستگاهتان حتی اگر قصدش را نداشته باشید باز شود، مثلاً اگر فردی آن را جلوی انگشتتان نگه دارد."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"قفل تلفن فرزندتان حتی اگر او نخواهد می‌تواند باز شود، مثلاً اگر فردی انگشت فرزندتان را روی حسگر تلفن نگه دارد."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"‏برای بهترین نتیجه، از محافظ صفحه‌نمایشی استفاده کنید که تأییدیه Made for Google داشته باشد. درصورت استفاده از دیگر محافظ‌های صفحه‌نمایش، ممکن است اثر انگشتتان کار نکند."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"‏برای بهترین نتیجه، از محافظ صفحه‌نمایشی استفاده کنید که تأییدیه Made for Google داشته باشد. درصورت استفاده از دیگر محافظ‌های صفحه‌نمایش، ممکن است اثر انگشت فرزندتان کار نکند."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"تصویر دستگاه و مکان حسگر اثر انگشت"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"نام"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"تأیید"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"امتحان مجدد"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"حذف"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"حسگر را لمس کنید"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"انگشتتان را روی حسگر بگذارید و بعد از احساس لرزش، آن را بردارید"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"تمام"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"اووه، آن حسگر نیست"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"با استفاده از انگشت اشاره، حسگر را در  پشت تلفن لمس کنید."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ثبت انجام نشد"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"مهلت ثبت اثر انگشت به‌پایان رسید. دوباره امتحان کنید."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"مهلت راه‌اندازی اثر انگشت به‌پایان رسید"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"همین‌حالا دوباره امتحان کنید یا اثر انگشتتان را بعداً در «تنظیمات» راه‌اندازی کنید"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ثبت اثر انگشت کار نمی‌کند. دوباره امتحان کنید یا از انگشت دیگری استفاده کنید."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"افزودن یک انگشت دیگر"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"بعدی"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"سفارشی کردن تلفن"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"انواع سبک‌ها، کاغذدیواری‌ها، و موارد دیگر را امتحان کنید"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"محافظ صفحه"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"محافظ صفحه‌نمایش"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"استفاده از محافظ صفحه"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"هنگام شارژ یا اتصال به پایه"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"هر دو"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"هنگام شارژ شدن"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"وقتی روی پایه است"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"هرگز"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"خاموش"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"برای کنترل اینکه وقتی تلفن روی پایه اتصال قرار دارد و/یا در حالت خواب است چه اتفاقی بیفتد، محافظ صفحه را روشن کنید."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"زمان شروع شدن"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"محافظ صفحه کنونی"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"تنظیمات"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"روشنایی خودکار"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"بیدار شدن با بالا بردن"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"نمایشگر محیط"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"تنظیم پین"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"تنظیم پین کاری"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"تنظیم الگو"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"برای امنیت بیشتر، الگویی برای باز کردن قفل دستگاه تنظیم کنید"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"تنظیم الگوی کاری"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"تنظیم گذرواژه برای استفاده از اثر انگشت"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"تنظیم الگو برای استفاده از اثر انگشت"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"برنامه اضطراری"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"بازنشانی اولویت‌های برنامه"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"بازنشانی اولویت‌های برنامه؟"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"با این کار همه اولویت‌های مربوط به موارد زیر بازنشانی می‌شود:\n\n"<li>"برنامه‌های غیرفعال‌شده"</li>\n<li>"اعلان‌های برنامه غیرفعال‌شده"</li>\n<li>"برنامه‌های پیش‌فرض برای عملکردها"</li>\n<li>"محدودیت‌های داده پس‌زمینه برای برنامه‌ها"</li>\n<li>"هرگونه محدودیت مجوز"</li>\n\n"هیچ داده برنامه‌ای را از دست نخواهید داد."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"با این کار همه اولویت‌های موارد زیر بازنشانی می‌شود:\n\n"<li>"برنامه‌های غیرفعال‌شده"</li>\n<li>"اعلان‌های برنامه‌های غیرفعال‌شده"</li>\n<li>"برنامه‌های پیش‌فرض برای کنش‌ها"</li>\n<li>"محدودیت‌های داده‌های پس‌زمینه برنامه‌ها"</li>\n<li>"همه محدودیت‌های اجازه‌ها"</li>\n<li>"تنظیمات مصرف باتری"</li>\n\n"هیچ داده برنامه‌ای را ازدست نخواهید داد."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"بازنشانی برنامه‌ها"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"مدیریت فضا"</string>
     <string name="filter" msgid="9039576690686251462">"فیلتر"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"بازنشانی تنظیمات"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"تنظیمات اندازه نمایش و نوشتار بازنشانی شد"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"اندازه نمایش و نوشتار بازنشانی شود؟"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"اندازه نمایش و اولویت‌های نوشتار به تنظیمات اصلی تلفن بازنشانی خواهد شد"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"اندازه نمایش و اولویت‌های نوشتار به تنظیمات اصلی تلفن بازنشانی خواهد شد"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"اندازه نمایش و اولویت‌های نوشتار به تنظیمات اصلی رایانه لوحی بازنشانی خواهد شد"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"بازنشانی"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"برنامه‌ای برای آخر هفته دارید؟"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"داریم به ساحل می‌رویم. شما هم می‌آیید؟"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"از آخرین شارژ کامل استفاده نشده است"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"در ۲۴ ساعت گذشته استفاده نشده است"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"کاربران دیگر"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"شارژ باتری باقی‌مانده براساس مصرف دستگاه تخمین زده می‌شود"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"زمان باقی‌مانده تخمینی"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"مانده تا شارژ کامل"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"کلیدگفته کامل و تعامل"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"ویژگی ساده گفتار به نوشتار"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"این سرویس ورودی گفتاری می‌تواند کنترل صوتی همیشه فعال را اجرا کند و از طرف شما برنامه‌هایی را کنترل کند که صدا در آن‌ها فعال است. از <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> است. استفاده از این سرویس فعال شود؟"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"تنظیمات تشخیص درون‌دستگاهی"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"تشخیص درون‌دستگاهی"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"تشخیص گفتار درون‌دستگاهی"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"موتور ترجیحی"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"تنظیمات موتور"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"زیروبمی و سرعت گفتار"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"حذف"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"همه برنامه‌ها و داده‌های این جلسه حذف خواهد شد."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"حذف"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"مهمان (شما)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"کاربران"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"کاربران دیگر"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"حذف فعالیت مهمان"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"همه برنامه‌ها و داده‌های مهمان هنگام خروج از حالت مهمان حذف می‌شوند"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"فعالیت مهمان حذف شود؟"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"برنامه‌ها و داده‌های این جلسه مهمان اکنون حذف خواهند شد و همه فعالیت‌های آتی مهمان هربار که از حالت مهمان خارج شوید حذف خواهد شد"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"روشن کردن تماس‌های تلفنی"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"روشن کردن تماس‌های تلفنی و پیامک"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"حذف کاربر"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"همه اعلان‌های «<xliff:g id="APP_NAME">%1$s</xliff:g>»"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"همه اعلان‌های <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"اعلان‌های تطبیقی"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> اعلان در روز</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> اعلان در روز</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">حدود <xliff:g id="NUMBER_1">%,d</xliff:g> اعلان در روز</item>
+      <item quantity="other">حدود <xliff:g id="NUMBER_1">%,d</xliff:g> اعلان در روز</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> اعلان در هفته</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> اعلان در هفته</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">حدود <xliff:g id="NUMBER_1">%,d</xliff:g> اعلان در هفته</item>
+      <item quantity="other">حدود <xliff:g id="NUMBER_1">%,d</xliff:g> اعلان در هفته</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"هرگز"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"اعلان‌های دستگاه و برنامه"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"كاری انجام نشود"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"لرزش"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"بی‌صدا کردن"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"برای فعال کردن، ابتدا «فشار دادن و نگه داشتن دکمه روشن / خاموش» را به «منوی روشن/ خاموش» تغییر دهید."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"برای فعال کردن، ابتدا «فشار دادن و نگه داشتن دکمه روشن / خاموش» را به «منوی روشن/ خاموش» تغییر دهید."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"جزئیات شبکه"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"‏نام دستگاه شما برای برنامه‌های موجود در تلفنتان قابل‌مشاهده است. همچنین ممکن است هنگام اتصال به دستگاه‌های بلوتوث، اتصال به شبکه Wi-Fi، یا راه‌اندازی نقطه اتصال Wi-Fi، برای افراد دیگر قابل‌مشاهده باشد."</string>
     <string name="devices_title" msgid="649715719278562515">"دستگاه‌ها"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"کنترل‌های دستگاه"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"کارت‌ها و مجوزها"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"کارت‌ها و مجوزها"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"دکمه روشن/خاموش را فشار دهید و نگه دارید"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"برای «دستیار»، فشار دهید و نگه دارید"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"برای منوی روشن/خاموش، فشار دهید و نگه دارید"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"فشار دادن و نگه داشتن غیرفعال شده است"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"دکمه روشن/ خاموش را فشار دهید و نگه دارید"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"برای دسترسی، دکمه روشن/ خاموش را فشار دهید و نگه دارید"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"منوی روشن/خاموش"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"دستیار دیجیتالی"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"دسترسی به دستیار دیجیتالی"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"دسترسی به منوی روشن/خاموش"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"برای استفاده، نخست قفل صفحه را تنظیم کنید"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"نگه داشتن دکمه برای فراخوانی «دستیار»"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"راه‌اندازی «دستیار»‌با نگه داشتن دکمه روشن/خاموش"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"منوی روشن/خاموش و اضطراری:\nدکمه روشن/خاموش و افزایش صدا را هم‌زمان فشار دهید."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"جلوگیری از زنگ زدن:\nمیان‌بر در منوی میزان صدا دردسترس است."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"منوی روشن/خاموش:\nدکمه روشن/ خاموش و دکمه افزایش صدا را هم‌زمان فشار دهید"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"جلوگیری از زنگ زدن:\nدکمه صدا را برای میان‌بر فشار دهید"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"مدت فشار دادن و نگه داشتن"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"با انتخاب مدت زمان فشار دادن و نگه داشتن دکمه روشن/ خاموش، میزان حساسیت را تنظیم کنید"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"کوتاه"</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 60412c6..d54f167 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Kun lapsi käyttää Pixel Imprintiä, kuvia käytetään sormenjälkimallin päivittämiseen. Lapsen sormenjälkimallin luontiin käytettäviä kuvia ei koskaan säilytetä, mutta itse sormenjälkimalli säilytetään suojatusti puhelimella, eikä se poistu puhelimelta. Kaikki käsittely tapahtuu turvallisesti puhelimella."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Voit poistaa sormenjälkesi kuvat ja mallin tai laittaa sormenjälkilukituksen pois päältä milloin tahansa asetuksista. Sormenjälkesi kuvat ja mallit säilytetään puhelimellasi, kunnes poistat ne."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Sinä ja lapsesi voitte poistaa sormenjälkien kuvat ja mallit tai laittaa sormenjälkiavauksen pois päältä milloin tahansa asetuksista. Sormenjälkien kuvat ja mallit säilytetään puhelimella, kunnes ne poistetaan."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Joku muu voi avata puhelimesi lukituksen haluamattasi, jos puhelin esimerkiksi asetetaan sormeasi vasten."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Joku muu voi avata puhelimesi lukituksen haluamattasi, jos puhelin esimerkiksi asetetaan sormeasi vasten."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Joku muu voi avata tabletin lukituksen haluamattasi, jos se esimerkiksi asetetaan sormeasi vasten."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Joku muu voi avata laitteen lukituksen haluamattasi, jos puhelin esimerkiksi asetetaan sormeasi vasten."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Joku muu voi avata lapsesi puhelimen lukituksen hänen haluamattaan pitämällä sitä hänen sormeaan vasten."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Saat parhaan lopputuloksen käyttämällä Made For Google ‑sertifioitua näytönsuojusta. Sormenjälkesi ei välttämättä toimi muiden näytönsuojusten kanssa."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Saat parhaan lopputuloksen käyttämällä Made For Google ‑sertifioitua näytönsuojusta. Lapsesi sormenjälki ei välttämättä toimi muiden näytönsuojusten kanssa."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Laitteen ja sormenjälkianturin sijainnin kuva."</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nimi"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Ok"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Yritä uudelleen"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Poista"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Kosketa tunnistinta"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Aseta sormesi tunnistimelle ja nosta se, kun tunnet värähdyksen"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Valmis"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Hups, anturi ei ole siinä."</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Kosketa puhelimen takaosan tunnistinta etusormella."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Käyttöönottoa ei suoritettu loppuun"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Sormenjäljen käyttöönoton enimmäisaika ylittyi. Yritä uudelleen."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Sormenjäljen käyttöönotto aikakatkaistu"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Yritä uudelleen nyt tai ota sormenjälki käyttöön myöhemmin asetuksista"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Sormenjäljen rekisteröinti ei onnistunut. Yritä uudelleen tai käytä eri sormea."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Lisää toinen"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Seuraava"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Puhelimen yksilöiminen"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Kokeile eri tyylejä, taustakuvia ja muuta"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Näytönsäästäjä"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"näytönsäästäjä"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Käytä näytönsäästäjää"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Latauksen aikana tai telakoituna"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Kumpi vain"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Latauksen aikana"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Telakoituna"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Ei koskaan"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Pois päältä"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Ota näytönsäästäjä käyttöön, niin voit hallita puhelimen toimintaa telakoituna ja/tai lepotilassa."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Aloitus"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Nykyinen näytönsäästäjä"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Asetukset"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automaattinen kirkkaus"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Herätä nostamalla"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Himmennetty näyttö"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Valitse PIN-koodi"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Valitse työ-PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Valitse kuvio"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Paranna suojausta lisäämällä kuvio laitteen lukituksen avaamiseksi"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Valitse työkuvio"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Sormenjälki: aseta salasana"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Sormenjälki: aseta kuvio"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Hätäsovellus"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Nollaa sovellusasetukset"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Nollaa sovellusasetukset?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Kaikki seuraavien asetukset nollataan:\n\n"<li>"Käytöstä poistetut sovellukset"</li>\n<li>"Käytöstä poistetut sovellusilmoitukset"</li>\n<li>"Toimintojen oletussovellukset"</li>\n<li>" Sovellusten taustadatan käyttörajoitukset"</li>\n<li>"Käyttöoikeusrajoitukset"</li>\n\n"Et menetä mitään sovellusten dataa."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Kaikki seuraavien asetukset nollataan:\n\n"<li>"Käytöstä poistetut sovellukset"</li>\n<li>"Käytöstä poistetut sovellusilmoitukset"</li>\n<li>"Toimintojen oletussovellukset"</li>\n<li>"Sovellusten taustatiedon käyttörajoitukset"</li>\n<li>"Luparajoitukset"</li>\n<li>"Akun käytön asetukset"</li>\n\n"Et menetä mitään sovellusdataa."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Nollaa sovellukset"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Hallinnoi tallennustilaa"</string>
     <string name="filter" msgid="9039576690686251462">"Suodata"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Nollaa asetukset"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Näytön koko ja tekstin asetukset on nollattu"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Nollataanko näytön koko ja teksti?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Näytön koko ja tekstiasetukset nollataan puhelimen alkuperäisiin asetuksiin"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Näytön koko ja tekstiasetukset nollataan puhelimen alkuperäisiin asetuksiin"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Näytön koko ja tekstiasetukset nollataan tabletin alkuperäisiin asetuksiin"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Nollaa"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Suunnitelmia viikonlopuksi?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Lähden rannalle. Liitytkö seuraan?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Ei käyttöä viimeisimmän täyteen lataamisen jälkeen"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Ei käyttöä 24 viime tunnin aikana"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Muut käyttäjät"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Arvio akun kestosta perustuu aiempaan laitteen käyttöön."</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Arvioitu jäljellä oleva aika"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Täyteen lataukseen"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Toimintosanat ja vuorovaikutus"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Yksinkertainen puheesta tekstiksi -palvelu"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Tämä puheohjauspalvelu huolehtii, että puheohjaus on aina päällä ja ohjaa puheohjausta käyttäviä sovelluksia automaattisesti puolestasi. Palvelu sisältyy sovellukseen <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Otetaanko palvelu käyttöön?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Laitepohjaiset tunnistusasetukset"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Laitepohjainen tunnistus"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Laitepohjainen puheentunnistus"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Ensisijainen moottori"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Moottorin asetukset"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Puheen nopeus ja korkeus"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Poista"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Kaikki sovellukset ja tämän istunnon tiedot poistetaan."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Poista"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Vieras (sinä)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Käyttäjät"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Muut käyttäjät"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Poista vierastoimintaa"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Poista kaikki vierassovellukset ja ‑data vierailija-käyttökerrasta poistumisen yhteydessä"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Poistetaanko vierastoiminta?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Tämän vierailija-käyttökerran sovellukset ja data poistetaan nyt. Kaikki tuleva vierastoiminta poistetaan aina, kun poistut vierailija-käyttökerrasta."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Ota puhelut käyttöön"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Ota puhelut ja tekstiviestit käyttöön"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Poista käyttäjä"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Kaikki ilmoitukset: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Kaikki ilmoitukset: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Mukautuvat ilmoitukset"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ilmoitusta päivässä</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> ilmoitus päivässä</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Noin <xliff:g id="NUMBER_1">%,d</xliff:g> ilmoitusta päivässä</item>
+      <item quantity="one">Noin <xliff:g id="NUMBER_0">%d</xliff:g> ilmoitus päivässä</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ilmoitusta viikossa</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> ilmoitus viikossa</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Noin <xliff:g id="NUMBER_1">%,d</xliff:g> ilmoitusta viikossa</item>
+      <item quantity="one">Noin <xliff:g id="NUMBER_0">%d</xliff:g> ilmoitus viikossa</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Ei koskaan"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Laite- ja sovellusilmoitukset"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Älä tee mitään"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Värinä"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Mykistä"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Jos haluat ottaa ominaisuuden käyttöön, vaihda ensin virtavalikkoon \"Paina virtapainiketta pitkään\"."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Jos haluat ottaa ominaisuuden käyttöön, vaihda ensin virtavalikkoon \"Paina virtapainiketta pitkään\"."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Verkon tiedot"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Puhelimen sovellukset näkevät laitteesi nimen. Myös muut käyttäjät voivat nähdä nimen, kun muodostat Bluetooth-yhteyden laitteisiin, yhteyden Wi-Fi-verkkoon tai aktivoit Wi-Fi-hotspotin."</string>
     <string name="devices_title" msgid="649715719278562515">"Laitteet"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"laitteiden hallinta"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kortit"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kortit"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Paina virtapainiketta pitkään"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Ota Assistant käyttöön painamalla pitkään"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Näytä virtavalikko painamalla pitkään"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Pitkään painaminen poissa käytöstä"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Paina virtapainiketta pitkään"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Valitse painamalla virtapainiketta pitkään"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Virtavalikko"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digiavustaja"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Avaa digiavustaja"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Avaa virtavalikko"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Käyttääksesi tätä aseta ensin näytön lukitus"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Paina pitkään käynnistääksesi Assistantin"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Käynnistä Assistant painamalla virtapainiketta pitkään"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Virta‑ ja Hätätilannevalikko:\nPaina virta‑ ja äänenvoimakkuuspainiketta yhtä aikaa."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Soittamisen esto:\nPikanäppäin näkyy äänenvoimakkuusvalikossa."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Virtavalikko:\nPaina virtapainiketta ja äänenvoimakkuuden lisäyspainiketta yhtä aikaa"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Estä soiminen:\nKäytä pikakomentoa painamalla äänenvoimakkuuspainiketta"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Valitse kesto painamalla pitkään"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Säädä herkkyyttä valitsemalla, kauanko virtapainiketta täytyy painaa"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Lyhyen ajan"</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 0ac9f2a..5c0531f 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Lorsque votre enfant utilise la fonctionnalité Pixel Imprint, les images sont utilisées pour mettre à jour son modèle d\'empreinte digitale. Les images utilisées pour créer le modèle d\'empreinte digitale de votre enfant ne sont jamais stockées, contrairement au modèle, qui est stocké de façon sécuritaire sur le téléphone et ne le quitte jamais. Tous les traitements sont sécurisés sur le téléphone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Vous pouvez supprimer les images et le modèle de votre empreinte digitale ou désactiver le déverrouillage par empreinte digitale à tout moment dans les paramètres. Les images et le modèle de l\'empreinte digitale sont stockés sur le téléphone jusqu\'à ce que vous les supprimiez."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Vous et votre enfant pouvez supprimer les images et le modèle de son empreinte digitale ou désactiver le déverrouillage par empreinte digitale en tout temps dans Paramètres. Les images et les modèles d\'empreinte digitale sont stockés sur le téléphone jusqu\'à ce qu\'ils soient supprimés."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Votre téléphone peut être déverrouillé même si vous ne le voulez pas, par exemple si quelqu\'un le tient contre votre doigt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Votre téléphone peut être déverrouillé même si vous ne le voulez pas, par exemple si quelqu\'un le tient contre votre doigt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Votre tablette peut être déverrouillée même lorsque vous n\'en avez pas l\'intention, par exemple si quelqu\'un la tient contre votre doigt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Votre tablette peut être déverrouillée même lorsque vous n\'en avez pas l\'intention, par exemple si quelqu\'un la tient contre votre doigt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Le téléphone de votre enfant peut être déverrouillé même s\'il ne le veut pas, par exemple si quelqu\'un le tient contre son doigt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Pour obtenir des résultats optimaux, utilisez un protecteur d\'écran certifié Fait pour Google. Vos empreintes digitales peuvent ne pas être reconnues avec d\'autres protecteurs d\'écran."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Pour obtenir des résultats optimaux, utilisez un protecteur d\'écran certifié Fait pour Google. Les empreintes digitales de votre enfant peuvent ne pas être reconnues avec d\'autres protecteurs d\'écran."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustration présentant l\'appareil et la position du capteur d\'empreintes digitales"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nom"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Réessayer"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Supprimer"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Toucher le capteur"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Placez votre doigt sur le capteur, puis soulevez-le lorsque vous sentez une vibration"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Terminé"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Oups, ce n\'est pas le capteur"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Touchez le capteur à l\'arrière de votre téléphone. Utilisez votre index."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"L\'enregistrement n\'est pas terminé"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Le temps attribué pour l\'enregistrement des empreintes digitales est écoulé. Veuillez réessayer."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Délai dépassé pour config. d\'empreinte digitale"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Réessayez maintenant ou configurez votre empreinte digitale plus tard dans les paramètres"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"L\'enregistrement de l\'empreinte digitale n\'a pas fonctionné. Réessayez ou utilisez un autre doigt."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Ajouter une empreinte"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Suivant"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personnaliser votre téléphone"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Essayez différents styles, fonds d\'écran, etc."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Écran de veille"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"écran de veille"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Utiliser l\'écran de veille"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Pendant la charge ou sur la station d\'accueil"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Les deux"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Pendant la charge"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Sur la station d\'accueil"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Jamais"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Désactivé"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Pour déterminer le comportement du téléphone lorsqu\'il se trouve sur une station d\'accueil ou lorsqu\'il est en veille, activez l\'écran de veille."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Quand commencer"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Écran de veille actuel"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Paramètres"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Ajuster automatiquement la luminosité"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Soulever pour activer"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Affichage en mode Veille"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Définir un NIP"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Définir un NIP professionnel"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Définir un schéma"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Pour renforcer la sécurité, définir un schéma pour déverrouiller l\'appareil"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Définir un mot de schéma professionnel"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Pour util. empr. digit., config. m. de passe"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Pour utiliser empreinte digitale, configurer un schéma"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Application d\'urgence"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Réinitialiser préférences applis"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Réinitialiser les préférences relatives aux applis?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Cette opération réinitialise toutes les préférences relatives aux éléments suivants :\n\n"<li>"Applications désactivées"</li>\n<li>"Notifications associées aux applications désactivées"</li>\n<li>"Applications par défaut pour les actions"</li>\n<li>"Restrictions de données en arrière-plan pour les applications"</li>\n<li>"Toutes les restrictions d\'autorisations"</li>\n\n"Vous ne perdrez aucune donnée liée aux applications."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Les préférences relatives aux éléments suivants seront réinitialisées :\n\n"<li>"Applications désactivées"</li>\n<li>"Notifications des applications désactivées"</li>\n<li>"Applications par défaut pour les actions"</li>\n<li>"Restrictions de données en arrière-plan pour les applications"</li>\n<li>"Toutes les restrictions d\'autorisations"</li>\n<li>"Paramètres d\'utilisation de la pile"</li>\n\n"Vous ne perdrez aucune donnée liée aux applications."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Réinitialiser applis"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gérer l\'espace"</string>
     <string name="filter" msgid="9039576690686251462">"Filtre"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Réinitialiser paramètres"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Les paramètres de texte et de taille d\'affichage ont été réinitialisés"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Réinitialiser la taille d\'affichage et le texte?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Vos préférences de taille d\'affichage et de texte seront réinitialisées aux paramètres par défaut du téléphone"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Vos préférences de taille d\'affichage et de texte seront réinitialisées aux paramètres par défaut du téléphone"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Vos préférences de taille d\'affichage et de texte seront réinitialisées aux paramètres par défaut de la tablette"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Réinitialiser"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Des plans pour la fin de semaine?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Direction la plage. Tu viens?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Aucune utilisation depuis la dernière recharge complète"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Aucune utilisation au cours des dernières 24 heures"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Autres utilisateurs"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"L\'estimation de l\'autonomie restante est basée sur l\'utilisation de l\'appareil"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Temps restant estimé"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Jusqu\'à la charge complète"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Détection de mot clé et interaction totales"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Synthèse vocale simple"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ce service d\'entrée vocale pourra contrôler en permanence les fonctionnalités vocales et utiliser en votre nom les applications commandées par la voix. Il provient de l\'application <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Autoriser l\'utilisation de ce service?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Paramètres de reconnaissance sur l\'appareil"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Reconnaissance sur l\'appareil"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Reconnaissance vocale sur l\'appareil"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Moteur préféré"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Paramètres du moteur"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Cadence et ton"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Supprimer"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Toutes les applications et les données de cette session seront supprimées."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Supprimer"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Invité (vous)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Utilisateurs"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Autres utilisateurs"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Supprimer l\'activité d\'invité"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Supprimer toutes les applications et données d\'invité en quittant le mode Invité"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Supprimer l\'activité d\'invité?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Les applications et les données de cette session d\'invité seront supprimées maintenant, et toutes les activités d\'invité futures seront supprimées chaque fois que vous quitterez le mode Invité"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Activer les appels téléphoniques"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Activer appels téléphoniques et textos"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Supprimer l\'utilisateur"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Toutes les notifications de « <xliff:g id="APP_NAME">%1$s</xliff:g> »"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Toutes les notifications de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notifications adaptatives"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> notification par jour</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications par jour</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Environ <xliff:g id="NUMBER_1">%,d</xliff:g> notification par jour</item>
+      <item quantity="other">Environ <xliff:g id="NUMBER_1">%,d</xliff:g> notifications par jour</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> notification par semaine</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications par semaine</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Environ <xliff:g id="NUMBER_1">%,d</xliff:g> notification par semaine</item>
+      <item quantity="other">Environ <xliff:g id="NUMBER_1">%,d</xliff:g> notifications par semaine</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Jamais"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Notifications de l\'appareil et des applications"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ne rien faire"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibration"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Désactiver le son"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Pour activer la fonctionnalité, modifiez d\'abord l\'option « Maintenir le bouton de l\'interrupteur enfoncé » du menu de l\'interrupteur."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Pour activer la fonctionnalité, modifiez d\'abord l\'option « Maintenir l\'interrupteur enfoncé » du menu de l\'interrupteur."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Infos sur le réseau"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Le nom de votre appareil est visible pour les applications de votre téléphone. Il est aussi possible que d\'autres personnes le voient lorsque vous vous connectez à des appareils Bluetooth ou à un réseau Wi-Fi, ou lorsque vous configurez un point d\'accès Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Appareils"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"commandes des appareils"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cartes et laissez-passer"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cartes et laissez-passer"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Maintenir le bouton de l\'interrupteur enfoncé"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Maintenir l\'interrupteur enfoncé pour activer l\'Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Maintenir le bouton du menu de l\'interrupteur enfoncé"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"L\'action relative au maintien de l\'interrupteur enfoncé est désactivée"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Maintenir l\'interrupteur enfoncé"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Maintenir l\'interrupteur enfoncé pour accéder au menu"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu de l\'interrupteur"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Assistant numérique"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Accédez à l\'assistant numérique"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Accédez au menu de l\'interrupteur"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Pour l\'utiliser, définissez d\'abord un écran de verrouillage"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Maintenir enfoncé pour activer l\'Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Activez l\'Assistant en maintenant l\'interrupteur enfoncé"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu d\'alimentation et d\'urgence :\nAppuyez simultanément sur l\'interrupteur et le bouton d\'augmentation du volume."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Bloquer la sonnerie :\nRaccourci proposé dans le menu du volume."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu de l\'interrupteur :\nAppuyez simultanément sur l\'interrupteur et sur le bouton d\'augmentation du volume"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Désactiver la sonnerie :\nAppuyez sur un bouton de volume pour le raccourci"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Durée de maintien du doigt"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Réglez la sensibilité en choisissant la durée de maintien du doigt sur l\'interrupteur"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Court"</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 868569d..c860935 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Lorsqu\'il se sert de Pixel Imprint, les images seront utilisées pour mettre à jour le modèle de son empreinte digitale. Les images permettant de créer ce modèle ne sont jamais stockées, mais celui-ci est enregistré de façon sécurisée sur son téléphone sans le quitter. Tous les traitements sont sécurisés sur son téléphone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"À tout moment dans les paramètres, vous pouvez supprimer les images et le modèle de votre empreinte, ou désactiver Fingerprint Unlock. Les images et le modèle sont stockés sur le téléphone jusqu\'à ce que vous les supprimiez."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"À tout moment dans les paramètres, vous et votre enfant pouvez supprimer les images et le modèle de vos empreintes, ou désactiver le déverrouillage par empreinte digitale. Les images et le modèle de vos empreintes digitales sont stockés sur le téléphone jusqu\'à ce que vous les supprimiez."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Vous pouvez déverrouiller votre téléphone sans le vouloir, par exemple si quelqu\'un le porte à votre doigt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Vous pouvez déverrouiller votre téléphone sans le vouloir, par exemple si quelqu\'un le porte à votre doigt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Vous pouvez déverrouiller votre tablette sans le vouloir, par exemple si quelqu\'un l\'approche de votre doigt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Vous pouvez déverrouiller votre appareil sans le vouloir, par exemple si quelqu\'un l\'approche de votre doigt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Le téléphone de votre enfant peut être déverrouillé involontairement, par exemple quand quelqu\'un pose le doigt dessus."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Pour de meilleurs résultats, utilisez une protection d\'écran certifiée Made for Google. Votre empreinte digitale peut ne pas être reconnue avec d\'autres protections d\'écran."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Pour de meilleurs résultats, utilisez une protection d\'écran certifiée Made for Google. L\'empreinte digitale de votre enfant peut ne pas être reconnue avec d\'autres protections d\'écran."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustration présentant l\'appareil et la position du lecteur d\'empreintes digitales"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nom"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Réessayer"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Supprimer"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Posez le doigt sur le lecteur"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Posez le doigt sur le lecteur et levez-le quand il vibre"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"OK"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Petit problème… Il ne s\'agit pas du capteur"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Posez l\'index sur le capteur à l\'arrière du téléphone."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Échec de l\'enregistrement"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Délai d\'enregistrement de l\'empreinte digitale expiré. Veuillez réessayer."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Délai de configuration de l\'empreinte dépassé"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Réessayez ou configurez votre empreinte plus tard dans les paramètres"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"L\'enregistrement de l\'empreinte digitale n\'a pas fonctionné. Veuillez réessayer ou utiliser un autre doigt."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Ajouter une empreinte"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Suivant"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personnaliser votre téléphone"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Essayez différents styles, fonds d\'écran, etc."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Économiseur d\'écran"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"économiseur d\'écran"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Utiliser l\'économiseur d\'écran"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Lorsque l\'appareil est en charge ou connecté à une station d\'accueil"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Dans les deux cas"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Lorsque l\'appareil est en charge"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Lorsque l\'appareil est connecté à une station d\'accueil"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Jamais"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Désactivé"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Pour contrôler le comportement du téléphone lorsqu\'il se trouve sur une station d\'accueil et/ou lorsqu\'il est en veille, activez l\'économiseur d\'écran."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Quand l\'activer"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Économiseur d\'écran actuel"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Paramètres"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Ajuster automatiquement la luminosité"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Soulever pour activer"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Affichage en mode Veille"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Définissez un code"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Définir un code professionnel"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Définissez un schéma"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Pour plus de sécurité, définissez un schéma pour déverrouiller l\'appareil"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Définir un schéma professionnel"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Définissez un mot de passe"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Définissez un schéma"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Application pour les urgences"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Réinitialiser les préférences des applis"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Réinitialiser les préférences ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Toutes les préférences suivantes seront réinitialisées :\n\n"<li>"Applis désactivées"</li>\n<li>"Notifications des applis désactivées"</li>\n<li>"Applis par défaut pour les actions"</li>\n<li>"Restrictions de données en arrière-plan pour les applis"</li>\n<li>"Toutes les restrictions d\'autorisations"</li>\n\n"Vous ne perdrez aucune donnée liée aux applications."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Toutes les préférences suivantes seront réinitialisées :\n\n"<li>"Applis désactivées"</li>\n<li>"Notifications des applis désactivées"</li>\n<li>"Applis par défaut pour les actions"</li>\n<li>"Restrictions de données en arrière-plan pour les applis"</li>\n<li>"Toutes les restrictions d\'autorisations"</li>\n<li>"Paramètres d\'utilisation de la batterie"</li>\n\n"Vous ne perdrez aucune donnée des applis."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Réinitialiser"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gérer l\'espace"</string>
     <string name="filter" msgid="9039576690686251462">"Filtrer"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Réinitialiser paramètres"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Les paramètres de texte et de taille d\'affichage ont été réinitialisés"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Réinitialiser la taille d\'affichage et le texte ?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Les paramètres d\'origine du téléphone concernant la taille d\'affichage et les préférences de texte seront rétablis"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Les paramètres d\'origine du téléphone concernant la taille d\'affichage et les préférences de texte seront rétablis"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Les paramètres d\'origine de la tablette concernant la taille d\'affichage et les préférences de texte seront rétablis"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Réinitialiser"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Des projets pour le week-end ?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Je vais à la plage. Tu veux venir ?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Pas d\'utilisation depuis la dernière charge complète"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Pas d\'utilisation au cours des dernières 24 h"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Autres utilisateurs"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"L\'estimation de l\'autonomie restante est basée sur l\'utilisation de l\'appareil"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Temps restant estimé"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Jusqu\'à la charge complète"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Détection de mot clé et interaction totales"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Reconnaissance vocale uniquement"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ce service de saisie vocale pourra effectuer une écoute vocale permanente et utiliser en votre nom les applications commandées par la voix. Il provient de l\'application :  <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Autoriser l\'utilisation de ce service ?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Paramètres de reconnaissance sur l\'appareil"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Reconnaissance sur l\'appareil"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Reconnaissance vocale sur l\'appareil"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Moteur préféré"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Paramètres du moteur"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Débit et ton"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Supprimer"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Toutes les applications et les données de cette session seront supprimées."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Supprimer"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Invité (Vous)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Utilisateurs"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Autres utilisateurs"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Supprimer l\'activité"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Supprimer toutes les applis et données de la session lorsque vous quittez le mode Invité"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Supprimer l\'activité ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Les applis et données de cette session Invité seront immédiatement supprimées, et toute l\'activité des futures sessions sera supprimée à chaque fois que vous quitterez le mode Invité"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Activer les appels téléphoniques"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Activer les appels téléphoniques et les SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Supprimer un compte utilisateur"</string>
@@ -4007,11 +4021,11 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Toutes les notifications de \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Toutes les notifications de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notifications intelligentes"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
       <item quantity="one">Environ <xliff:g id="NUMBER_1">%,d</xliff:g> notification par jour</item>
       <item quantity="other">Environ <xliff:g id="NUMBER_1">%,d</xliff:g> notifications par jour</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
       <item quantity="one">Environ <xliff:g id="NUMBER_1">%,d</xliff:g> notification par semaine</item>
       <item quantity="other">Environ <xliff:g id="NUMBER_1">%,d</xliff:g> notifications par semaine</item>
     </plurals>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ne rien faire"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibreur"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Silencieux"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Pour l\'activer, changez dans un premier temps l\'option \"Appui prolongé sur le bouton Marche/Arrêt\" du menu Marche/Arrêt."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Pour l\'activer, changez dans un premier temps l\'option \"Appui prolongé sur le bouton Marche/Arrêt\" du menu Marche/Arrêt."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Détails sur le réseau"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Les applications de votre téléphone ont accès au nom de votre appareil. D\'autres personnes peuvent aussi le voir lorsque vous vous connectez à des appareils Bluetooth ou à un réseau Wi-Fi, ou lorsque vous configurez un point d\'accès Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Appareils"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"commandes des appareils"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cartes de crédit et autres cartes"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cartes de crédit et autres cartes"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Appui prolongé sur le bouton Marche/Arrêt"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Appuyer de manière prolongée pour l\'Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Appuyer de manière prolongée pour le bouton Marche/Arrêt"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Appui prolongé désactivé"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Appuyez de manière prolongée sur le bouton Marche/Arrêt"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Appui prolongé sur le bouton Marche/Arrêt pour y accéder"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu Marche/Arrêt"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Assistant numérique"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Accéder à l\'assistant numérique"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Accéder au menu Marche/Arrêt"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Pour utiliser cette option, définissez d\'abord le verrouillage de l\'écran"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Maintenir enfoncé pour l\'Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Appuyer de manière prolongée sur le bouton Marche/Arrêt pour déclencher l\'Assistant"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu Marche/Arrêt et d\'urgence :\nAppuyez simultanément sur Marche/Arrêt et Volume+."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Bloquer la sonnerie :\nRaccourci disponible dans le menu du volume."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu Marche/Arrêt :\nAppuyez simultanément sur les boutons Marche/Arrêt et volume+"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Bloquer la sonnerie :\nUtilisez un bouton de volume pour utiliser le raccourci"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Durée de l\'appui prolongé"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Ajustez la sensibilité en choisissant combien de temps appuyer de manière prolongée sur le bouton Marche/Arrêt"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Court"</string>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index 7346333..29061d4 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Cando usa Pixel Imprint, utilízanse imaxes para actualizar o modelo da súa impresión dixital. As imaxes que se utilizan para crear o modelo da impresión dixital do teu fillo ou filla non se almacenan en ningún caso, pero este gárdase de maneira segura no teléfono e nunca sae del. Todo o procesamento ten lugar de maneira fiable no teléfono."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Podes eliminar as imaxes e o modelo da túa impresión dixital ou desactivar o desbloqueo dactilar en calquera momento desde Configuración. As imaxes e os modelos da túa impresión dixital almacénanse no teléfono ata que os eliminas."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"O teu fillo ou filla e mais ti podedes eliminar as imaxes e o modelo da súa impresión dixital ou desactivar o desbloqueo dactilar cando queirades en Configuración. As imaxes e os modelos de impresións dixitais gardaranse no teléfono ata que se eliminen."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"O teléfono pode desbloquearse sen que teñas intención de facelo (por exemplo, se alguén o achega ao teu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"O teléfono pode desbloquearse sen que teñas intención de facelo (por exemplo, se alguén o achega ao teu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"A tableta pode desbloquearse sen que teñas intención de facelo (por exemplo, se alguén a achega ao teu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"O dispositivo pode desbloquearse sen que teñas intención de facelo (por exemplo, se alguén o achega ao teu dedo)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"O teléfono do teu fillo ou filla pode desbloquearse sen que el ou ela teña esa intención (por exemplo, se alguén llo achega ao dedo)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Para obter os mellores resultados, utiliza un protector de pantalla que conte coa certificación Made for Google. Se utilizas outros protectores, pode que non se detecte a túa impresión dixital."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Para obter os mellores resultados, utiliza un protector de pantalla que conte coa certificación Made for Google. Se utilizas outros protectores, pode que non se detecte a impresión dixital do teu fillo ou filla."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustración coa localización do sensor de impresión dixital e do dispositivo"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nome"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Aceptar"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Tentar de novo"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Eliminar"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Toca o sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Coloca o dedo no sensor e levántao cando notes unha vibración"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Feito"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Iso non é o sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Toca co dedo índice o sensor que está detrás do teléfono."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Non se completou o rexistro"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Esgotouse o tempo de espera do rexistro da impresión dixital. Téntao de novo."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Esgotouse o tempo para configurar a impresión"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Téntao de novo agora mesmo ou configura a impresión dixital máis tarde en Configuración"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"O rexistro da impresión dixital non funcionou. Téntao de novo ou utiliza outro dedo."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Engadir outra"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Seguinte"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personaliza o teléfono"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Proba diferentes estilos, fondos de pantalla e moito máis"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Protector de pantalla"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"protector de pantalla"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Usar protector de pantalla"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Ao estar cargando ou na base"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"As dúas opcións"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Ao estar cargando"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Ao estar na base"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nunca"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Desactivado"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Para controlar o que sucederá cando o teléfono estea ancorado ou en modo de suspensión, activa o protector de pantalla."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Cando comezar"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Protector de pantalla actual"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Configuración"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Brillo intelixente"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Levantar para acender"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Pantalla en suspensión"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Define un PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Define un PIN para o traballo"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Define un padrón"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Se queres gozar de seguranza adicional, define un padrón para desbloquear o dispositivo"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Define un padrón para o traballo"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Impresión dixital: contrasinal"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Define un padrón para a impresión dixital"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplicación de emerxencia"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Restablecer preferencias das aplicacións"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Restablecer as preferencias das aplicacións?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Con esta acción, restableceranse todas as preferencias de:\n\n"<li>"Aplicacións desactivadas"</li>\n<li>"Notificacións de aplicacións desactivadas"</li>\n" "<li>"Aplicacións predeterminadas para accións"</li>\n<li>"Restricións de datos en segundo plano para aplicacións"</li>\n<li>"Calquera restrición de permisos"</li>\n\n"Non perderás datos de ningunha aplicación."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Restableceranse todas as preferencias de:\n\n"<li>"Aplicacións desactivadas"</li>\n<li>"Notificacións de aplicacións desactivadas"</li>\n<li>"Aplicacións predeterminadas para accións"</li>\n<li>" Restricións de datos en segundo plano para aplicacións"</li>\n<li>"Calquera restrición de permisos"</li>\n<li>"Configuración de uso da batería"</li>\n\n"Non perderás datos de ningunha aplicación."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Restablecer aplicacións"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Xestionar espazo"</string>
     <string name="filter" msgid="9039576690686251462">"Filtro"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Restablecer configuración"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Restablecéronse as preferencias de texto e tamaño de visualización"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Queres restablecer o texto e o tamaño de visualización?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"As túas preferencias de texto e tamaño de visualización substituiranse pola configuración orixinal do teléfono"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"As túas preferencias de texto e tamaño de visualización substituiranse pola configuración orixinal do teléfono"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"As túas preferencias de texto e tamaño de visualización substituiranse pola configuración orixinal da tableta"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Restablecer"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Que vas facer esta fin de semana?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Pensaba ir á praia. Queres vir?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Sen uso da batería desde a última carga completa"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Sen uso da batería nas últimas 24 horas"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Outros usuarios"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"A estimación do nivel de batería baséase no uso do dispositivo"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Tempo restante estimado"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Para completar a carga"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Interacción e palabra de activación completa"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Conversión simple de voz a texto"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Este servizo de entrada de voz poderá supervisar que a voz sempre estea activada e controlar as aplicacións compatibles coa voz no teu nome. Procede da aplicación <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Queres activar o uso deste servizo?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Configuración de recoñecemento no dispositivo"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Recoñecemento no dispositivo"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Recoñecemento de voz no dispositivo"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motor preferido"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Configuración do motor"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Velocidade da fala e ton"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Eliminar"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Eliminaranse todas as aplicacións e datos desta sesión."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Quitar"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Convidado (ti)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Usuarios"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Outros usuarios"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Eliminar actividade do convidado"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Elimina todas as aplicacións e datos da sesión de convidado ao saír do modo de convidado"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Eliminar actividade do convidado?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"As aplicacións e os datos desta sesión de convidado eliminaranse agora, e toda actividade de convidados futura eliminarase cada vez que se saia do modo de convidado"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Activar chamadas telefónicas"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Activar chamadas telefónicas e SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Eliminar usuario"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Todas as notificacións de \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Todas as notificacións de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notificacións intelixentes"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notificacións ao día</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notificación ao día</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Arredor de <xliff:g id="NUMBER_1">%,d</xliff:g> notificacións ao día</item>
+      <item quantity="one">Arredor de <xliff:g id="NUMBER_0">%d</xliff:g> notificación ao día</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other"><xliff:g id="NUMBER_1">%,d</xliff:g> notificacións á semana aproximadamente</item>
-      <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> notificación á semana aproximadamente</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Arredor de <xliff:g id="NUMBER_1">%,d</xliff:g> notificacións á semana</item>
+      <item quantity="one">Arredor de <xliff:g id="NUMBER_0">%d</xliff:g> notificación á semana</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nunca"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Notificacións de aplicacións e dispositivos"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Non facer nada"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Silenciar"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Para activar a opción, no menú de acendido, primeiro cambia Manter premido botón de acendido."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Para activar a opción, no menú de acendido, primeiro cambia Manter premido botón de acendido."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalles da rede"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"As aplicacións do teu teléfono poden consultar o nome do teu dispositivo. Tamén poden velo outros usuarios cando te conectes a dispositivos Bluetooth ou a redes wifi, así como cando configures zonas wifi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispositivos"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"control de dispositivos"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Tarxetas e pases"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"tarxetas e pases"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Manter premido botón de acendido"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Accede ao Asistente cando se mantén premido o botón"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Mostra o menú de acendido cando se mantén premido o botón"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"A función de manter premido o botón está desactivada"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Manter premido botón de acendido"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Mantén premido o botón de acendido para acceder ao menú"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menú de acendido"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Asistente dixital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Acceder ao asistente dixital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Acceder ao menú de acendido"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para usar esta función, tes que configurar un bloqueo de pantalla"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Manter premido para activar o Asistente"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Activa o Asistente ao manter premido o botón de acendido"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menú de acendido e emerxencia:\nPreme as teclas de acendido e de subir volume ao mesmo tempo."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Evitar que soe:\nAtallo dispoñible no menú de volume."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menú de acendido:\nPreme o botón de acendido e o botón de subida de volume ao mesmo tempo"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Evita que soe:\nPreme un botón de volume para usar o atallo"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Duración da presión no botón"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Para axustar a sensibilidade, escolle durante canto tempo debe manterse premido o botón de acendido"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Curta"</string>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index ca1accf..5f17ed6 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"જ્યારે તેઓ Pixel Imprint સુવિધાનો ઉપયોગ કરે, ત્યારે તેમની ફિંગરપ્રિન્ટના મૉડલને અપડેટ કરવા માટે છબીઓનો ઉપયોગ કરવામાં આવે છે. તમારા બાળકની ફિંગરપ્રિન્ટનું મૉડલ બનાવવા માટે ઉપયોગમાં લેવાયેલી છબીઓને ક્યારેય પણ સ્ટોર કરવામાં આવતી નથી, પણ ફિંગરપ્રિન્ટના મૉડલને તમારા ફોન પર સુરક્ષિત રીતે સ્ટોર કરવામાં આવે છે અને તે હંમેશાં તમારા ફોનમાં જ રહે છે. બધી પ્રક્રિયાઓ સુરક્ષિત રીતે ફોનમાં જ કરવામાં આવે છે."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"તમે તમારી ફિંગરપ્રિન્ટની છબીઓ અને મૉડલ ડિલીટ કરી શકો છો અથવા કોઈપણ સમયે સેટિંગમાં ફિંગરપ્રિન્ટ અનલૉક સુવિધાને બંધ કરી શકો છો. જ્યાર સુધી તમે તમારી ફિંગરપ્રિન્ટની છબીઓ અને મૉડલ ડિલીટ ન કરો, ત્યાર સુધી તેમને તમારા ફોનમાં સ્ટોર કરવામાં આવે છે."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"સેટિંગમાં જઈને તમે અને તમારું બાળક કોઈપણ સમયે તેમની ફિંગરપ્રિન્ટની છબીઓ અને મૉડલ ડિલીટ કરી શકશો અથવા ફિંગરપ્રિન્ટ અનલૉક સુવિધા બંધ કરી શકશો. જ્યાં સુધી ફિંગરપ્રિન્ટની છબીઓ અને મૉડલને ડિલીટ ન કરવામાં આવે, ત્યાં સુધી તેને ફોન પર સ્ટોર કરવામાં આવે છે."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"તમારે તમારો ફોન અનલૉક કરવો ન હોય, ત્યારે પણ તે અનલૉક થઈ શકે છે, જેમ કે જો કોઈ વ્યક્તિ તેને તમારી આંગળી સામે પકડી રાખે તો."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"તમારે તમારો ફોન અનલૉક કરવો ન હોય, ત્યારે પણ તે અનલૉક થઈ શકે છે, જેમ કે જો કોઈ વ્યક્તિ તેને તમારી આંગળી સામે પકડી રાખે તો."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"તમારે તમારું ટૅબ્લેટ અનલૉક કરવું ન હોય, ત્યારે પણ તે અનલૉક થઈ શકે છે, જેમ કે જો કોઈ વ્યક્તિ તેને તમારી આંગળી સામે પકડી રાખે તો."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"તમારે તમારું ડિવાઇસ અનલૉક કરવું ન હોય, ત્યારે પણ તે અનલૉક થઈ શકે છે, જેમ કે જો કોઈ વ્યક્તિ તેને તમારી આંગળી સામે પકડી રાખે તો."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"તમારા બાળકે તેમનો ફોન અનલૉક કરવો ન હોય, ત્યારે પણ તે અનલૉક થઈ શકે છે, જેમ કે જો કોઈ વ્યક્તિ તેને તેમની આંગળી સામે પકડી રાખે તો."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"શ્રેષ્ઠ પરિણામો માટે, \'Google માટે બનાવેલા\' પ્રમાણિત સ્ક્રીનગાર્ડનો ઉપયોગ કરો. અન્ય સ્ક્રીનગાર્ડમાં, તમારી ફિંગરપ્રિન્ટ કદાચ યોગ્ય રીતે કામ કરશે નહીં."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"શ્રેષ્ઠ પરિણામો માટે, \'Google માટે બનાવેલા\' પ્રમાણિત સ્ક્રીનગાર્ડનો ઉપયોગ કરો. અન્ય સ્ક્રીનગાર્ડમાં, તમારા બાળકની ફિંગરપ્રિન્ટ કદાચ યોગ્ય રીતે કામ કરશે નહીં."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ડિવાઇસ અને ફિંગરપ્રિન્ટ સેન્સર સ્થાન સાથેનું ચિત્ર"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"નામ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ઓકે"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ફરી પ્રયાસ કરો"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"ડિલીટ કરો"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"સેન્સરને સ્પર્શ કરો"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"સેન્સર પર તમારી આંગળી મૂકો અને વાઇબ્રેશનનો અનુભવ થવા પર ઉઠાવી લો"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"થઈ ગયું"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ઓહ, તે સેન્સર નથી"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"ફોનની પાછળના સેન્સરને અડો. પ્રથમ આંગળી વાપરો."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"નોંધણી પૂર્ણ થઈ ન હતી"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"ફિંગરપ્રિન્ટ નોંધણીની સમય મર્યાદા સુધી પહોંચી ગયાં. ફરીથી પ્રયાસ કરો."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ફિંગરપ્રિન્ટ સેટઅપ કરવાનો સમય સમાપ્ત થઈ ગયો"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"હમણાં ફરી પ્રયાસ કરો અથવા થોડા સમય પછી સેટિંગમાં જઈને તમારા ફિંગરપ્રિન્ટનું સેટઅપ કરો"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ફિંગરપ્રિન્ટ નોંધણી કામ કરતી ન હતી. ફરીથી પ્રયાસ કરો અથવા એક અલગ આંગળીનો ઉપયોગ કરો."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"બીજી ઉમેરો"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"આગલું"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"તમારા ફોનને કસ્ટમાઇઝ કરો"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"અલગ-અલગ શૈલીઓ, વૉલપેપર અને બીજું ઘણું અજમાવી જુઓ"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"સ્ક્રીન સેવર"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"સ્ક્રીનસેવર"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"સ્ક્રીન સેવરનો ઉપયોગ કરો"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ચાર્જ થતું હોય અથવા ડૉક કરેલ હોય ત્યારે"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"બેમાંથી કોઈપણ એક"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ચાર્જિંગ થતી વખતે"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ડૉક હોય ત્યારે"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ક્યારેય નહીં"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"બંધ"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ફોન ડૉક થાય અને/અથવા નિષ્ક્રિય થઈ જાય ત્યારે શું થાય તેને નિયંત્રિત કરવા માટે, સ્ક્રીન સેવર ચાલુ કરો."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"ક્યારે શરૂ કરવું"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"વર્તમાન સ્ક્રીન સેવર"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"સેટિંગ"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"સ્વચલિત તેજ"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"જાગૃત કરવા માટે લિફ્ટ કરો"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ઍમ્બિઅન્ટ ડિસ્પ્લે"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"પિન સેટ કરો"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ઑફિસની પ્રોફાઇલ માટે પિન સેટ કરો"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"પૅટર્ન સેટ કરો"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"વધારાની સુરક્ષા માટે, ડિવાઇસ અનલૉક કરવા પૅટર્ન સેટ કરો"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ઑફિસની પ્રોફાઇલ માટે પૅટર્ન સેટ કરો"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ફિંગરપ્રિન્ટ વાપરવા પાસવર્ડ સેટ કરો"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ફિંગરપ્રિન્ટ વાપરવા પૅટર્ન સેટ કરો"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"ઇમર્જન્સી ઍપ્લિકેશન"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ઍપ પસંદગીઓને રીસેટ કરો"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"ઍપ પસંદગીઓને રીસેટ કરીએ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"આમ કરવાથી આ બધી પસંદગીઓ રીસેટ થઈ જશે:\n\n"<li>"બંધ કરેલી ઍપ"</li>\n<li>"ઍપના બંધ કરેલાં નોટિફિકેશન"</li>\n<li>"ક્રિયાઓ માટેની ડિફૉલ્ટ ઍપ્લિકેશનો"</li>\n<li>"ઍપ માટે બૅકગ્રાઉન્ડ ડેટાના પ્રતિબંધો"</li>\n<li>"કોઈપણ પરવાનગીના પ્રતિબંધો"</li>\n\n"તમે કોઈપણ ઍપનો ડેટા ગુમાવશો નહીં."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"આમ કરવાથી આ બધી પસંદગીઓ રીસેટ થઈ જશે:\n\n"<li>"બંધ કરેલી ઍપ"</li>\n<li>"બંધ કરેલાં નોટિફિકેશન"</li>\n<li>"ક્રિયાઓ માટેની ડિફૉલ્ટ ઍપ્લિકેશનો"</li>\n<li>"ઍપ માટે બૅકગ્રાઉન્ડ ડેટાના પ્રતિબંધો"</li>\n<li>"કોઈપણ પરવાનગીના પ્રતિબંધો"</li>\n<li>"બૅટરીના વપરાશના સેટિંગ"</li>\n\n"તમે કોઈપણ ઍપનો ડેટા ગુમાવશો નહીં."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ઍપ ફરીથી સેટ કરો"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"સ્પેસ મેનેજ કરો"</string>
     <string name="filter" msgid="9039576690686251462">"ફિલ્ટર"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"સેટિંગ રીસેટ કરો"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ડિસ્પ્લેનું કદ અને ટેક્સ્ટના સેટિંગ રીસેટ કરવામાં આવ્યા છે"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"શું ડિસ્પ્લેનું કદ અને ટેક્સ્ટ રીસેટ કરીએ?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"તમારા ડિસ્પ્લેનું કદ અને ટેક્સ્ટની પસંદગીઓને ફોનના ઑરિજિનલ સેટિંગ પર રીસેટ કરવામાં આવશે"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"તમારા ડિસ્પ્લેનું કદ અને ટેક્સ્ટની પસંદગીઓને ફોનના ઑરિજિનલ સેટિંગ પર રીસેટ કરવામાં આવશે"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"તમારા ડિસ્પ્લેનું કદ અને ટેક્સ્ટની પસંદગીઓ ટૅબ્લેટના ઑરિજિનલ સેટિંગ પર રીસેટ થઈ જશે"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"રીસેટ કરો"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"શું વીકએન્ડ માટે કોઈ પ્લાન છે?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"દરિયાકિનારે જઈ રહ્યા છીએ. જોડાવા માગો છો?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"છેલ્લે પૂર્ણ ચાર્જ કરાયા પછી બિલકુલ વપરાશ થયો નથી"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"છેલ્લા 24 કલાકમાં બિલકુલ વપરાશ થયો નથી"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"અન્ય વપરાશકર્તાઓ"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"બાકી રહેલી બૅટરીનો અંદાજ ડિવાઇસના તમારા ઉપયોગ પર આધારિત છે"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"અંદાજિત બાકી સમય"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"સંપૂર્ણપણે ચાર્જ થવામાં"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"પૂર્ણ હૉટવર્ડ અને ક્રિયાપ્રતિક્રિયા"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"સરળ સ્પીચ ટુ ટેક્સ્ટ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"આ વૉઇસ ઇનપુટ સેવા તમારા વતી હંમેશા-ચાલુ વૉઇસ મોનિટરિંગ કરવા અને વૉઇસ સક્ષમ એપ્લિકેશન્સને નિયંત્રિત કરવા માટે સમર્થ હશે. તે <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> એપ્લિકેશનમાંથી આવે છે. આ સેવાના ઉપયોગને સક્ષમ કરીએ?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"ડિવાઇસ પર ઓળખ સંબંધિત સેટિંગ"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"ડિવાઇસ પર ઓળખ"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"ડિવાઇસ પર વાણી ઓળખ"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"મનપસંદ એન્જિન"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"એન્જિન સેટિંગ"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"બોલવાની ઝડપ અને પિચ"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ડિલીટ કરો"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"આ સત્રમાંની તમામ ઍપ અને ડેટા કાઢી નાખવામાં આવશે."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"કાઢી નાખો"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"અતિથિ (તમે)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"વપરાશકર્તાઓ"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"અન્ય વપરાશકર્તાઓ"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"અતિથિ પ્રવૃત્તિ ડિલીટ કરો"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"અતિથિ મોડમાંથી બહાર નીકળતી વખતે તમામ અતિથિ ઍપ અને ડેટા ડિલીટ કરો"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"શું અતિથિની પ્રવૃત્તિ ડિલીટ કરીએ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"આ અતિથિ સત્રમાંની તમામ ઍપ અને ડેટા હમણાં ડિલીટ કરવામાં આવશે તેમજ ભવિષ્યમાં જ્યારે પણ તમે અતિથિ મોડમાંથી બહાર નીકળો, ત્યારે તમામ અતિથિ પ્રવૃત્તિ ડિલીટ કરવામાં આવશે"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ફોન કૉલ ચાલુ કરો"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ફોન કૉલ અને SMS ચાલુ કરો"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"વપરાશકર્તાને ડિલીટ કરો"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\"ના તમામ નોટિફિકેશન"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g>ના બધા નોટિફિકેશન"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"સુવિધાજનક નોટિફિકેશન"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> નોટિફિકેશન પ્રતિ દિવસ</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> નોટિફિકેશન પ્રતિ દિવસ</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">દરરોજ લગભગ <xliff:g id="NUMBER_1">%,d</xliff:g> નોટિફિકેશન</item>
+      <item quantity="other">દરરોજ લગભગ <xliff:g id="NUMBER_1">%,d</xliff:g> નોટિફિકેશન</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> નોટિફિકેશન પ્રતિ સપ્તાહ</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> નોટિફિકેશન પ્રતિ સપ્તાહ</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">દર અઠવાડિયે લગભગ <xliff:g id="NUMBER_1">%,d</xliff:g> નોટિફિકેશન</item>
+      <item quantity="other">દર અઠવાડિયે લગભગ <xliff:g id="NUMBER_1">%,d</xliff:g> નોટિફિકેશન</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ક્યારેય નહીં"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ડિવાઇસ અને ઍપના નોટિફિકેશન"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"કંઈ કરતા નહીં"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"વાઇબ્રેટ"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"મ્યૂટ કરો"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ચાલુ કરવા માટે, પહેલાં \"પાવર બટનને દબાવી રાખો\" વિકલ્પને બદલીને પાવર મેનૂ કરો."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ચાલુ કરવા માટે, પહેલાં \"પાવર બટન દબાવી રાખો\" વિકલ્પને બદલીને પાવર મેનૂ કરો."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"નેટવર્કની વિગતો"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"તમારા ડિવાઇસનું નામ તમારા ફોનની ઍપ પર જોઈ શકાય છે. તમે બ્લૂટૂથ ડિવાઇસથી કનેક્ટ કરો, વાઇ-ફાઇ નેટવર્કથી કનેક્ટ કરો અથવા વાઇ-ફાઇ હૉટસ્પૉટને સેટ કરો ત્યારે તે અન્ય લોકોને પણ દેખાઈ શકે છે."</string>
     <string name="devices_title" msgid="649715719278562515">"ઉપકરણો"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ડિવાઇસનાં નિયંત્રણો"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"કાર્ડ અને પાસ"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"કાર્ડ અને પાસ"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"પાવર બટન દબાવી રાખો"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant માટે પાવર બટન દબાવી રાખો"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"પાવર મેનૂ માટે પાવર બટન દબાવી રાખો"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Assistant માટે દબાવી રાખો બટન અક્ષમ કરેલું છે"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"પાવર બટનને દબાવી રાખો"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ઍક્સેસ કરવા માટે, પાવર બટન દબાવી રાખો"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"પાવર મેનૂ"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ડિજિટલ આસિસ્ટંટ"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ડિજિટલ આસિસ્ટંટને ઍક્સેસ કરો"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"પાવર મેનૂ ઍક્સેસ કરો"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ઉપયોગ કરવા માટે, પહેલાં કોઈ સ્ક્રીન લૉક સેટ કરો"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistantને ચાલુ કરવા માટે થોડીવાર દબાવી રાખો"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"પાવર બટનને દબાવી રાખીને Assistantનો ઉપયોગ કરો"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"પાવર અને ઇમર્જન્સી મેનૂ:\nએક જ સમયે અને વૉલ્યૂમ વધારવાનું બટન દબાવો."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"રિંગ વાગતી અટકાવો:\nવૉલ્યૂમ મેનૂમાં શૉર્ટકટ ઉપલબ્ધ છે."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"પાવર મેનૂ:\nપાવર બટન અને વૉલ્યૂમ વધારવાના બટનને એકસાથે દબાવો"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"રિંગ વાગવાનું ટાળો:\nશૉર્ટકટ માટે વૉલ્યૂમનું કોઈ બટન દબાવો"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"દબાવી રાખવાનો સમયગાળો"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"પાવર બટનને કેટલા સમય સુધી દબાવી રાખવું તે પસંદ કરીને સંવેદિતાની ગોઠવણ કરો"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"નાનો"</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index b5de38a..5233ff8 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"जब आपका बच्चा Pixel Imprint का इस्तेमाल करता है, तब उसके फ़िंगरप्रिंट के मॉडल को अपडेट करने के लिए उसके फ़िंगरप्रिंट की इमेज इस्तेमाल की जाती हैं. आपके बच्चे के फ़िंगरप्रिंट का मॉडल बनाते समय इस्तेमाल की गई इमेज कभी भी सेव नहीं की जाती हैं. हालांकि, फ़िंगरप्रिंट के मॉडल को फ़ोन में सुरक्षित तरीके से सेव किया जाता है और इसे किसी के साथ शेयर नहीं किया जाता है. इसे पूरी तरह से आपके फ़ोन में ही सुरक्षित तरीके से प्रोसेस किया जाता है."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"\'सेटिंग\' में जाकर, अपने फ़िंगरप्रिंट के मॉडल को कभी भी मिटाया जा सकता है. इसके अलावा, फ़िंगरप्रिंट अनलॉक को बंद किया जा सकता है. फ़िंगरप्रिंट के मॉडल, फ़ोन में तब तक सेव रहते हैं, जब तक उन्हें मिटाया नहीं जाता."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"आपका बच्चा और आप किसी भी समय, सेटिंग में जाकर फ़िंगरप्रिंट की इमेज और मॉडल मिटा सकते हैं या फ़िंगरप्रिंट से अनलॉक करने की सुविधा को बंद कर सकते हैं. फ़िंगरप्रिंट की इमेज और मॉडल, फ़ोन में तब तक सेव रहते हैं, जब तक उन्हें नहीं मिटाया जाता है."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"आपके न चाहने पर भी आपका फ़ोन अनलॉक किया जा सकता है, जैसे कि कोई व्यक्ति आपके फ़ोन को आपकी उंगली से छूकर अनलॉक कर सकता है."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"आपके न चाहने पर भी आपका फ़ोन अनलॉक किया जा सकता है, जैसे कि कोई व्यक्ति आपके फ़ोन को आपकी उंगली से छूकर अनलॉक कर सकता है."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"आपके न चाहने पर भी आपका टैबलेट अनलॉक किया जा सकता है. जैसे, कोई व्यक्ति आपके टैबलेट को आपकी उंगली से छूकर अनलॉक कर सकता है."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"आपके न चाहने पर भी आपका डिवाइस अनलॉक किया जा सकता है. जैसे, कोई व्यक्ति आपके डिवाइस को आपकी उंगली से छूकर अनलॉक कर सकता है."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"आपके बच्चे के न चाहने पर भी उसका फ़ोन अनलॉक किया जा सकता है, जैसे कि कोई व्यक्ति फ़ोन को आपके बच्चे की उंगली से छुआकर अनलॉक कर सकता है."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"बेहतर नतीजों के लिए, ऐसे स्क्रीन प्राेटेक्टर का इस्तेमाल करें जिसे Made for Google का सर्टिफ़िकेट मिला है. हो सकता है कि दूसरे स्क्रीन प्राेटेक्टर के साथ, आपका फ़िंगरप्रिंट काम न करे."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"बेहतर नतीजों के लिए, ऐसे स्क्रीन प्राेटेक्टर का इस्तेमाल करें जिसे Made for Google का सर्टिफ़िकेट मिला है. हो सकता है कि दूसरे स्क्रीन प्राेटेक्टर पर आपके बच्चे का फ़िंगरप्रिंट काम न करे."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"डिवाइस और उस पर फ़िंगरप्रिंट सेंसर की जगह बताने वाला चित्रण"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"नाम"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ठीक है"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"फिर से कोशिश करें"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"मिटाएं"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"सेंसर को छुएं"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"अपनी उंगली सेंसर पर रखें और वाइब्रेशन महसूस होने पर हटा लें"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"हो गया"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ओह हो, वह सेंसर नहीं है"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"अपने फ़ोन के पीछे लगे सेंसर को छुएं. अपनी तर्जनी (अंगूठे के बगल वाली) उंगली का इस्तेमाल करें."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"उंगली जोड़ने की प्रक्रिया पूरी नहीं हो सकी"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"फ़िंगरप्रिंट दर्ज करने की समयसीमा खत्म हो गई है. फिर से कोशिश करें."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"फ़िंगरप्रिंट सेट अप करने का समय खत्म हो गया"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"अभी दोबारा कोशिश करें या कुछ समय बाद सेटिंग में जाकर, फ़िंगरप्रिंट सेट अप करें"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"फ़िंगरप्रिंट नामांकन ने काम नहीं किया. फिर से प्रयास करें या किसी दूसरी उंगली का उपयोग करें."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"दूसरा फ़िंगरप्रिंट जोड़ें"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"आगे बढ़ें"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"अपने फ़ोन को पसंद के मुताबिक बनाएं"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"अलग-अलग स्टाइल, वॉलपेपर, और बहुत कुछ आज़माएं"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"स्क्रीन सेवर"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"स्क्रीन सेवर"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"स्क्रीन सेवर का इस्तेमाल करें"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"चार्ज करते समय या डॉक किए होने पर"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"कोई एक"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"चार्ज करते समय"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"जब डॉक किया हुआ हो"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"कभी नहीं"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"बंद"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"फ़ोन के डॉक रहते समय और/या उपयोग में नहीं होने पर जो भी होता है, उसे नियंत्रित करने के लिए स्क्रीन सेवर चालू करें."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"कब शुरू करना है"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"मौजूदा स्क्रीन सेवर"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"सेटिंग"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"अपनेआप स्क्रीन की रोशनी"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"सक्रिय करने के लिए उठाएं"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"हमेशा चालू स्क्रीन दिखाएं"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"पिन सेट करें"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"वर्क प्रोफ़ाइल का पिन सेट करें"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"पैटर्न सेट करें"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ज़्यादा सुरक्षा के लिए, इस डिवाइस को अनलॉक करने के लिए एक पैटर्न सेट करें"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"वर्क प्रोफाइल का पैटर्न सेट करें"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"फ़िंगरप्रिंट का इस्तेमाल करने के लिए, पासवर्ड सेट करें"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"फ़िंगरप्रिंट का इस्तेमाल करने के लिए, पैटर्न सेट करें"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"आपातकालीन ऐप"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ऐप्लिकेशन से जुड़ी पसंद रीसेट करें"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"ऐप्लिकेशन से जुड़ी पसंद को रीसेट करना चाहते हैं?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"इससे इन सबके लिए पसंद रीसेट हो जाएंगी:\n\n"<li>"बंद किए गए ऐप्लिकेशन"</li>\n<li>"बंद की गई ऐप्लिकेशन सूचनाएं"</li>\n<li>"कार्रवाइयों के लिए डिफ़ॉल्ट ऐप्लिकेशन"</li>\n<li>"ऐप्लिकेशन के लिए बैकग्राउंड डेटा पर रोक"</li>\n<li>"किसी भी मंज़ूरी पर रोक"</li>\n\n"आपका सारा ऐप्लिकेशन डेटा बना रहेगा."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ऐसा करने पर, इन सभी से जुड़ी सेटिंग रीसेट हो जाएंगी:\n\n"<li>"बंद किए गए ऐप्लिकेशन"</li>\n<li>"ऐप्लिकेशन की बंद गई सूचनाएं"</li>\n<li>"कार्रवाइयों के लिए डिफ़ॉल्ट ऐप्लिकेशन"</li>\n<li>"ऐप्लिकेशन के लिए बैकग्राउंड डेटा की पाबंदियां"</li>\n<li>"किसी भी अनुमति से जुड़ी पाबंदियां"</li>\n<li>"बैटरी खर्च होने से जुड़ी सेटिंग"</li>\n\n"ऐप्लिकेशन का कोई डेटा गायब नहीं होगा."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ऐप्लिकेशन  रीसेट करें"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"जगह मैनेज करें"</string>
     <string name="filter" msgid="9039576690686251462">"फ़िल्टर"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"सेटिंग रीसेट करें"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"डिसप्ले साइज़ और टेक्स्ट की सेटिंग रीसेट हो गई हैं"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"क्या आपको डिसप्ले के साइज़ और टेक्स्ट को रीसेट करना है?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"आपके डिसप्ले का साइज़ और टेक्स्ट की सेटिंग, फ़ोन की मूल सेटिंग पर रीसेट कर दी जाएगी"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"आपके डिसप्ले का साइज़ और टेक्स्ट की सेटिंग, फ़ोन की मूल सेटिंग पर रीसेट कर दी जाएगी"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"डिसप्ले के साइज़ और टेक्स्ट की सेटिंग को रीसेट करके, टैबलेट की मूल सेटिंग लागू कर दी जाएंगी"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"रीसेट करें"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"वीकेंड का कोई प्लान है?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"बीच की ओर जा रहे हैं. क्या आपको आना है?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"पिछली बार पूरी चार्ज होने के बाद, बैटरी का इस्तेमाल नहीं हुआ"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"पिछले 24 घंटे में, बैटरी का इस्तेमाल नहीं हुआ"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"अन्य उपयोगकर्ता"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"डिवाइस के इस्तेमाल के हिसाब से अनुमान लगाया गया है कि फ़ोन की बैटरी और कितनी देर चलेगी"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"अनुमानित बचा हुआ समय"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"पूरी तरह चार्ज होने तक"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"पूरा हॉटवर्ड और इंटरैक्शन"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"आसान वाक् से लेख"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"बोलकर फ़ोन को निर्देश देने की यह सेवा, आपकी ओर से हमेशा आवाज़ की निगरानी और ऐसी ऐप जिसमें आवाज़ का इस्तेमाल होता है, को नियंत्रित करने में मदद करेगी. यह <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ऐप से आता है. इस सेवा को चालू करें?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"उपयोगकर्ता के डिवाइस पर, बोली पहचानने की सेटिंग"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"उपयोगकर्ता के डिवाइस पर, बोली पहचानने की सुविधा"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"उपयोगकर्ता के डिवाइस पर बोली पहचानने की सेटिंग"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"पसंदीदा इंजन"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"इंजन सेटिंग"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"बोलने की दर और पिच"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"मिटाएं"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"इस सेशन के सभी ऐप्लिकेशन और डेटा को हटा दिया जाएगा."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"निकालें"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"मेहमान (आप)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"उपयोगकर्ता"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"अन्य उपयोगकर्ता"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"मेहमान मोड में की गई गतिविधि मिटाएं"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"मेहमान मोड से बाहर निकलने पर, मेहमान मोड में मौजूद डेटा और इस्तेमाल किए गए सभी ऐप्लिकेशन को मिटा दिया जाता है"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"मेहमान मोड की गतिविधि को मिटाना है?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"मेहमान के तौर पर ब्राउज़ किए गए इस सेशन में मौजूद डेटा और इस्तेमाल किए गए ऐप्लिकेशन को मिटा दिया जाएगा. इसके अलावा, आने वाले समय में हर बार मेहमान मोड से बाहर निकलने पर, उस दौरान की गई गतिविधियां मिटा दी जाएंगी"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"फ़ोन कॉल की सुविधा चालू करें"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"फ़ोन कॉल और मैसेज (एसएमएस) चालू करें"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"उपयोगकर्ता को हटाना"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\" की सभी सूचनाएं"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g> की सभी सूचनाएं"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"ज़रूरत के हिसाब से सूचनाएं"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">रोज़~<xliff:g id="NUMBER_1">%,d</xliff:g> सूचना</item>
-      <item quantity="other">रोज़ ~<xliff:g id="NUMBER_1">%,d</xliff:g> सूचनाएं</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">हर दिन करीब <xliff:g id="NUMBER_1">%,d</xliff:g> सूचना</item>
+      <item quantity="other">हर दिन करीब <xliff:g id="NUMBER_1">%,d</xliff:g> सूचनाएं</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">हर हफ़्ते ~<xliff:g id="NUMBER_1">%,d</xliff:g> सूचना</item>
-      <item quantity="other">हर हफ़्ते ~<xliff:g id="NUMBER_1">%,d</xliff:g> सूचनाएं</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">हर हफ़्ते करीब <xliff:g id="NUMBER_1">%,d</xliff:g> सूचना</item>
+      <item quantity="other">हर हफ़्ते करीब <xliff:g id="NUMBER_1">%,d</xliff:g> सूचनाएं</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"कभी नहीं"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"डिवाइस और ऐप्लिकेशन की सूचनाएं"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"कुछ न करें"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"वाइब्रेट"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"म्यूट"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"इस सेटिंग को चालू करने के लिए, पहले \"पावर बटन को दबाकर रखें\" को पावर मेन्यू में बदलें."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"इस सेटिंग को चालू करने के लिए, पहले \"पावर बटन को दबाकर रखें\" को पावर मेन्यू में बदलें."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"नेटवर्क के बारे में जानकारी"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"आपके डिवाइस के नाम की जानकारी को फ़ोन पर मौजूद ऐप्लिकेशन ऐक्सेस कर सकते हैं. ब्लूटूथ डिवाइस जोड़ते समय, वाई-फ़ाई नेटवर्क से जुड़ते समय या वाई-फ़ाई हॉटस्पॉट सेट अप करते समय भी दूसरे लोग आपके डिवाइस का नाम देख सकते हैं."</string>
     <string name="devices_title" msgid="649715719278562515">"डिवाइस"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"डिवाइस कंट्रोल"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"कार्ड और पास"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"कार्ड और पास"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"पावर बटन को दबाकर रखें"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant को शुरू करने के लिए, पावर बटन को दबाकर रखें"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"पावर मेन्यू खोलने के लिए, पावर बटन को दबाकर रखें"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Assistant को शुरू करने के लिए, पावर बटन को दबाकर रखने की सुविधा बंद है"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"पावर बटन को दबाकर रखें"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"पावर मेन्यू को ऐक्सेस करने के लिए, पावर बटन को दबाकर रखें"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"पावर मेन्यू"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"डिजिटल असिस्टेंट"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"डिजिटल असिस्टेंट को ऐक्सेस करें"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"पावर मेन्यू को ऐक्सेस करें"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"इस्तेमाल करने के लिए, सबसे पहले स्क्रीन लॉक सेट करें"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant को चालू करने के लिए, पावर बटन को कुछ देर दबाकर रखें"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"पावर बटन को कुछ देर तक दबाकर, Assistant का इस्तेमाल करें"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"पावर और आपातकालीन मेन्यू:\nपावर बटन और आवाज़ तेज़ करने वाले बटन को एक साथ दबाएं."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"घंटी बजने से रोकना:\nइसका शॉर्टकट, वॉल्यूम मेन्यू में मौजूद है."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"पावर मेन्यू खोलना:\nइसके लिए, पावर बटन और आवाज़ तेज़ करने वाले बटन को एक साथ दबाएं"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"घंटी बजने से रोकना:\nइसके लिए शॉर्टकट के तौर पर, आवाज़ कम या ज़्यादा करने वाले बटन को दबाएं"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"बटन को दबाकर रखने का समय"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"पावर बटन को दबाकर रखने का समय चुनकर, संवेदनशीलता में बदलाव करें"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"कम समय के लिए"</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 0657c64..6cfac90 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -468,7 +468,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Kad koristi Pixel Imprint, slike se upotrebljavaju za ažuriranje modela njegovog otiska prsta. Slike koje se koriste za izradu modela djetetovog otiska prsta nikad se ne pohranjuju, ali se model otiska prsta sigurno pohranjuje na telefonu i nikad se ne šalje s telefona. Sva se obrada vrši sigurno na telefonu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"U postavkama možete izbrisati model i slike otiska prsta ili isključiti otključavanje otiskom prsta kad god želite. Slike i modeli otiska prsta pohranjeni su na telefonu dok ih ne izbrišete."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Dijete i vi uvijek možete izbrisati slike i model njegovog otiska prsta ili isključiti otključavanje otiskom prsta u postavkama. Slike i modeli otiska prsta pohranjuju se na telefonu dok se ne izbrišu."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Vaš se telefon može otključati kad to ne namjeravate, na primjer ako ga netko prinese vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Vaš se telefon može otključati kad to ne namjeravate, na primjer ako ga netko prinese vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Vaš se tablet može otključati kad to ne namjeravate, na primjer ako ga netko prinese vašem prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Vaš se uređaj može otključati kad to ne namjeravate, na primjer ako ga netko prinese vašem prstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Djetetov telefon može se otključati i kad dijete to ne namjerava, na primjer ako ga netko prinese djetetovom prstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Za najbolje rezultate koristite zaštitu zaslona s certifikatom Made for Google. Vaš otisak prsta možda neće funkcionirati s drugim zaštitama zaslona."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Za najbolje rezultate koristite zaštitu zaslona s certifikatom Made for Google. Otisak prsta vašeg djeteta možda neće funkcionirati s drugim zaštitama zaslona."</string>
@@ -518,6 +520,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustracija uređaja i lokacije senzora otiska prsta"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Naziv"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"U redu"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Pokušajte ponovo"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Izbriši"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Dodirnite senzor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Stavite prst na senzor i podignite ga kada osjetite vibraciju"</string>
@@ -597,8 +600,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Gotovo"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ups, to nije senzor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Kažiprstom dodirnite senzor na stražnjoj strani telefona."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registracija nije dovršena"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Isteklo je vremensko ograničenje za registraciju otiska prsta. Pokušajte ponovo."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Vrijeme za postavljanje otiska prsta je isteklo"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Pokušajte ponovo odmah ili ga postavite kasnije u postavkama"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registracija otiska prsta nije uspjela. Pokušajte ponovo ili prislonite neki drugi prst."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Dodajte drugi"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Dalje"</string>
@@ -1470,17 +1473,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Prilagodba telefona"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Isprobajte različite stilove, pozadine i drugo"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Čuvar zaslona"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"čuvar zaslona"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Koristi čuvar zaslona"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Tijekom punjenja ili kada je na priključnoj stanici"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Bilo koje od navedenog"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Tijekom punjenja"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Kada je na priključnoj stanici"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nikada"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Isključeno"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Da biste kontrolirali događaje dok je telefon na priključnoj stanici i/ili dok miruje, uključite čuvar zaslona."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kada pokrenuti"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Trenutačni čuvar zaslona"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Postavke"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatska svjetlina"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Aktivacija podizanjem"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambijentalni zaslon"</string>
@@ -1970,6 +1971,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Postavite PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Postavite PIN poslovnog profila"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Postavite uzorak"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Za dodatnu sigurnost postavite uzorak za otključavanje uređaja"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Postavite uzorak poslovnog profila"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Otisak prsta zahtijeva zaporku"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Otisak prsta zahtijeva uzorak"</string>
@@ -2125,7 +2127,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikacija za hitne slučajeve"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Poništavanje postavki aplikacija"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Poništiti postavke aplikacija?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Sve sljedeće postavke vratit će se na zadano:\n\n"<li>"onemogućene aplikacije"</li>\n<li>"onemogućene obavijesti aplikacija"</li>\n<li>"zadane aplikacije za radnje"</li>\n<li>"ograničenja pozadinskih podataka za aplikacije"</li>\n<li>"sva ograničenja dopuštenja."</li>\n\n"Nećete izgubiti podatke nijedne aplikacije."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Sve sljedeće postavke vratit će se na zadano:\n\n"<li>"onemogućene aplikacije"</li>\n<li>"onemogućene obavijesti aplikacija"</li>\n<li>"zadane aplikacije za radnje"</li>\n<li>"ograničenja pozadinskih podataka za aplikacije"</li>\n<li>"sva ograničenja dopuštenja"</li>\n<li>"postavke potrošnje baterije."</li>\n\n"Nećete izgubiti podatke aplikacija."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Poništi aplikacije"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Upravljaj prostorom"</string>
     <string name="filter" msgid="9039576690686251462">"Filtar"</string>
@@ -2380,7 +2382,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Poništi postavke"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Postavke veličine zaslona i teksta vraćene su na zadano"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Želite li poništiti veličinu prikaza i tekst?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Vaše postavke veličine prikaza i teksta vratit će se na izvorne postavke telefona."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Vaše postavke veličine prikaza i teksta vratit će se na izvorne postavke telefona."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Vaše postavke veličine prikaza i teksta vratit će se na izvorne postavke tableta."</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Poništi"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Što planiraš ovaj vikend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Idem na plažu. Ideš sa mnom?"</string>
@@ -2974,6 +2977,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nema potrošnje od posljednjeg potpunog punjenja"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nema potrošnje u posljednja 24 h"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Drugi korisnici"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Procjena stanja baterije temelji se na upotrebi uređaja"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Procijenjeno preostalo vrijeme"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Do potpune napunjenosti"</string>
@@ -3063,6 +3067,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Potpuni pokretač značajki i interakcija"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Jednostavno pretvaranje govora u tekst"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Usluga glasovnog unosa moći će u vaše ime neprekidno nadzirati glasovne unose i kontrolirati aplikacije s omogućenom glasovnom interakcijom. Pruža je <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Želite li omogućiti tu uslugu?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Postavke prepoznavanja na uređaju"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Prepoznavanje na uređaju"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Prepoznavanje govora na uređaju"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Željeni alat"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Postavke alata"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Brzina govora i visina glasa"</string>
@@ -3459,6 +3466,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Izbriši"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Izbrisat će se sve aplikacije i podaci u ovoj sesiji."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Ukloni"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gost (vi)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Korisnici"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Drugi korisnici"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Izbriši aktivnost gostujuće sesije"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Izbriši sve aplikacije i podatke gostujuće sesije prilikom izlaska iz načina rada za goste"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Izbrisati aktivnost gosta?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplikacije i podaci iz ove gostujuće sesije izbrisat će se odmah, a sve buduće aktivnosti gostujuće sesije izbrisat će se svaki put kad napustite način rada za goste."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Uključi telefonske pozive"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Uključivanje telefonskih poziva i SMS-a"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Brisanje korisnika"</string>
@@ -4053,15 +4067,15 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Sve obavijesti aplikacije \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Sve obavijesti aplikacije <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Prilagodljive obavijesti"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavijest dnevno</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavijesti dnevno</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavijesti dnevno</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obavijest dnevno</item>
+      <item quantity="few">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obavijesti dnevno</item>
+      <item quantity="other">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obavijesti dnevno</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavijest tjedno</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavijesti tjedno</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> obavijesti tjedno</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obavijest tjedno</item>
+      <item quantity="few">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obavijesti tjedno</item>
+      <item quantity="other">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obavijesti tjedno</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nikada"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Obavijesti na uređaju i u aplikacijama"</string>
@@ -5341,7 +5355,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ne poduzimaj ništa"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibracija"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Isključi zvuk"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Da biste omogućili tu opciju, najprije promijenite opciju \"Pritisnite i zadržite tipku za uključivanje/isključivanje\" u izbornik tipke za uključivanje."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Da biste omogućili tu opciju, najprije promijenite opciju \"Pritisnite i zadržite tipku za uključivanje/isključivanje\" u izbornik tipke za uključivanje."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Podaci o mreži"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Naziv vašeg uređaja vidljiv je aplikacijama na vašem telefonu. Mogu ga vidjeti i drugi ljudi kada se povežete s Bluetooth uređajima ili Wi-Fi mrežom ili postavite Wi-Fi žarišnu točku."</string>
     <string name="devices_title" msgid="649715719278562515">"Uređaji"</string>
@@ -5631,15 +5645,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"kontrole uređaja"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartice i propusnice"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartice i propusnice"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Pritisnite i zadržite tipku za uključivanje/isključivanje"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Pritisnite i zadržite za Asistenta"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Pritisnite i zadržite za izbornik tipke za uključivanje"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Onemogućena je opcija pritiska i zadržavanja"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Pritisnite i zadržite tipku za uključivanje/isključivanje"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Pritisnite i zadržite tipku za uklj./isklj. za pristup"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Izbornik tipke za uključivanje (/isključivanje)"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitalni asistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Pristupi digitalnom asistentu"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Pristupi izborniku tipke za uključivanje (/isključivanje)"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Za upotrebu najprije postavite zaključavanje zaslona"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Zadržavanje za Asistenta"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Pokrenite Asistenta zadržavajući tipku za uključivanje/isključivanje"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Izbornik tipke za uključivanje i hitnih službi:\nIstovremeno pritisnite tipku za uključivanje/isključivanje i tipku za glasnoću."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Sprječavanje zvonjenja:\nprečac je dostupan u izborniku glasnoće."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Izbornik tipke za uključivanje (/isključivanje):\nistodobno pritisnite tipku za uključivanje/isključivanje i gumb za pojačavanje glasnoće"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Sprječavanje zvonjenja:\nza prečac pritisnite gumb za glasnoću"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Trajanje pritiska i zadržavanja tipke"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Prilagodite osjetljivost tako što ćete odabrati duljinu pritiska i zadržavanja tipke za uključivanje/isključivanje"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kratko"</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index e5dab70..882952b 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Amikor gyermeke a Pixel Imprintet használja, a rendszer felhasználja a képeket az ujjlenyomatmodell frissítésére. Az ujjlenyomatmodell elkészítéséhez használt képeket nem, de magát az ujjlenyomatmodellt biztonságosan tárolja a telefon, és az ujjlenyomatmodell sosem kerül ki róla. A feldolgozás teljes mértékben és biztonságos módon a telefonon történik."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"A Beállítások menüben bármikor törölheti az ujjlenyomatképeket és -modellt, illetve kikapcsolhatja az ujjlenyomat-alapú feloldást. A telefon addig tárolja az ujjlenyomatképeket és -modelleket, amíg Ön nem törli őket."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Ön és gyermeke a Beállításokban bármikor törölheti gyermeke ujjlenyomatképeit és -modelljét, illetve kikapcsolhatja a Feloldás ujjlenyomattal funkciót. A telefon addig tárolja az ujjlenyomatképeket és -modelleket, amíg Ön vagy gyermeke nem törli őket."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefonját az Ön szándéka ellenére más is feloldhatja, például ha valaki az ujjához tartja."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefonját az Ön szándéka ellenére más is feloldhatja, például ha valaki az ujjához tartja."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Táblagépét az Ön szándéka ellenére más is feloldhatja, például ha valaki az Ön ujjához tartja."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Eszközét az Ön szándéka ellenére más is feloldhatja, például ha valaki az Ön ujjához tartja."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Gyermeke telefonját az ő szándéka ellenére valaki más is feloldhatja, például ha valaki az Ön gyermeke ujjához tartja a telefont."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"A legjobb eredmény érdekében használjon Made for Google tanúsítvánnyal rendelkező kijelzővédőt. Előfordulhat, hogy más kijelzővédők esetében az ujjlenyomat nem működik."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"A legjobb eredmény érdekében használjon Made for Google tanúsítvánnyal rendelkező kijelzővédőt. Előfordulhat, hogy más kijelzővédők esetében gyermeke ujjlenyomata nem működik."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Az eszközt és az ujjlenyomat-érzékelő helyét ábrázoló illusztráció"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Név"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Újrapróbálkozás"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Törlés"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Érintse meg az érzékelőt"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Helyezze az ujját az érzékelőre, és emelje fel a rezgést követően"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Kész"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Hoppá! Az nem az érzékelő"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Érintse meg a hátsó érzékelőt mutatóujjával."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"A rögzítés nincs kész"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Letelt az ujjlenyomat-rögzítés időkorlátja. Próbálja újra."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Lejárt az ujjlenyomat-beállítás időkorlátja."</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Próbálja meg újra beállítani az ujjlenyomatát most, illetve később a Beállítások menüben"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Az ujjlenyomat regisztrációja nem sikerült. Próbálja újra, vagy próbálkozzon egy másik ujjával."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Még egy hozzáadása"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Következő"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"A telefon testreszabása"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Próbáljon ki más stílusokat, háttérképeket és egyebeket"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Képernyővédő"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"képernyővédő"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Képernyővédő használata"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Töltés és dokkolás közben"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Bármelyik"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Töltés közben"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Dokkolt állapotban"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Soha"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Ki"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"A képernyővédő bekapcsolásával beállíthatja, hogy mit csináljon a telefon dokkolt, illetve alvó állapotban."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kezdés ideje"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Jelenlegi képernyővédő"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Beállítások"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatikus fényerő"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Felébresztéshez emelje meg"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Környezeti kijelző"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN-kód beállítása"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Munkahelyi PIN-kód beállítása"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Minta beállítása"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"A nagyobb biztonság érdekében állítson be mintát az eszköz feloldásához"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Munkahelyi minta beállítása"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Jelszó az ujjlenyomathoz"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Minta az ujjlenyomathoz"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Segélyhívó"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Alapbeállítások"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Visszaállítja a beállításokat?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Ez visszaállítja a következőkre vonatkozó összes beállítást:\n\n"<li>"letiltott alkalmazások;"</li>\n<li>"letiltott alkalmazásértesítések;"</li>\n<li>"alapértelmezett alkalmazások adott műveletekhez;"</li>\n<li>"az alkalmazások háttéradataira vonatkozó korlátozások;"</li>\n<li>"minden engedélykorlátozás."</li>\n\n"Az alkalmazásadatok nem vesznek el."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Ez visszaállítja a következőkre vonatkozó összes beállítást:\n\n"<li>"Letiltott alkalmazások"</li>\n<li>"Letiltott alkalmazásértesítések"</li>\n<li>"Alapértelmezett alkalmazások adott műveletekhez"</li>\n<li>"Alkalmazások háttéradat-korlátozása"</li>\n<li>"Minden engedélykorlátozás"</li>\n<li>"Akkumulátorhasználati beállítások"</li>\n\n"Az alkalmazásadatok nem vesznek el."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Visszaállítás"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Tárhely kezelése"</string>
     <string name="filter" msgid="9039576690686251462">"Szűrő"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Visszaállítás"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"A képernyőméretre és a szövegre vonatkozó beállításokat visszaállította a rendszer"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Visszaállítja a megjelenítési méretet és a szöveg beállításait?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"A megjelenítési méret és a szövegbeállítások visszaállnak a telefon eredeti beállításaira"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"A megjelenítési méret és a szövegbeállítások visszaállnak a telefon eredeti beállításaira"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"A megjelenítési méret és a szövegbeállítások visszaállnak a táblagép eredeti beállításaira"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Visszaállítás"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Vannak terveid a hétvégére?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Én lemegyek a partra. Van kedved csatlakozni?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nincs használat az utolsó teljes feltöltés óta"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nem volt használatban az elmúlt 24 órában"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Egyéb felhasználók"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Az akkumulátor becsült töltöttsége az eszközhasználaton alapszik"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Becsült hátralévő idő"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"A teljes feltöltésig"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Parancsszó és hangvezérlés"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Egyszerű beszédfelismerés"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ez a hangbeviteli szolgáltatás képes lesz a folyamatos beszédhangkeresésre, valamint a hangvezérelt alkalmazásoknak az Ön nevében történő irányítására. A(z) <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> alkalmazás működteti. Engedélyezi a szolgáltatást?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Az eszközalapú felismerés beállításai"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Eszközalapú felismerés"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Eszközalapú beszédfelismerés"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Elsődleges szövegfelolvasó"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Szövegfelolvasó motor beállításai"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Beszédsebesség és hangszín"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Törlés"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"A munkamenetben található összes alkalmazás és adat törlődni fog."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Eltávolítás"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Vendég (Ön)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Felhasználók"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Egyéb felhasználók"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Vendégtevékenységek törlése"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Összes vendégalkalmazás és -adat törlése a vendég módból való kilépéskor"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Törli a vendégtevékenységeket?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Az ebből a vendégmunkamenetből származó alkalmazások és adatok azonnal törlődnek, és az összes jövőbeli, vendég módban végzett tevékenység törlődik minden olyan alkalomkor, amikor kilép a vendég módból"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Hívások engedélyezése"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Hívások és SMS-ek engedélyezése"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Felhasználó törlése"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"A(z) „<xliff:g id="APP_NAME">%1$s</xliff:g>” összes értesítése"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Az összes <xliff:g id="APP_NAME">%1$s</xliff:g>-értesítés"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Alkalmazkodó értesítések"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> értesítés naponta</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> értesítés naponta</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Nagyjából <xliff:g id="NUMBER_1">%,d</xliff:g> értesítés naponta</item>
+      <item quantity="one">Nagyjából <xliff:g id="NUMBER_0">%d</xliff:g> értesítés naponta</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> értesítés hetente</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> értesítés hetente</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Nagyjából <xliff:g id="NUMBER_1">%,d</xliff:g> értesítés hetente</item>
+      <item quantity="one">Nagyjából <xliff:g id="NUMBER_0">%d</xliff:g> értesítés hetente</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Soha"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Eszköz- és alkalmazásértesítések"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ne tegyen semmit"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Rezgés"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Néma"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"A bekapcsoláshoz előbb módosítsa a bekapcsológombhoz tartozó menüben a „Bekapcsológomb lenyomva tartása” beállítást."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Az aktiválásához előbb módosítsa a bekapcsológombhoz tartozó menüben a „Bekapcsológomb lenyomva tartása” beállítást."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Hálózati információk"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Eszköze neve látható a telefonján lévő alkalmazások számára. Mások is láthatják, ha csatlakoztatja telefonját más Bluetooth-eszközökhöz, Wi-Fi-hálózathoz, vagy ha Wi-Fi-hotspotot állít be."</string>
     <string name="devices_title" msgid="649715719278562515">"Eszközök"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"eszközvezérlők"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kártyák és utalványok"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kártyák és utalványok"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Bekapcsológomb lenyomva tartása"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Tartsa lenyomva a Segéd megnyitásához"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Tartsa lenyomva a bekapcsológombhoz tartozó menü megnyitásához"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Lenyomva tartás kikapcsolva"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Tartsa lenyomva a bekapcsológombot"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"A hozzáféréshez tartsa lenyomva a bekapcsológombot"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Bekapcsológombhoz tartozó menü"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitális asszisztens"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Hozzáférés a digitális asszisztenshez"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Hozzáférés a bekapcsológombhoz tartozó menühöz"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"A használathoz előbb állítson be egy képernyőzárat"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Lenyomva tartás a Segéd aktiválásához"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"A bekapcsológombot lenyomva tartva aktiválhatja a Segédet"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Bekapcsológombhoz és vészhelyzethez tartozó menü:\nNyomja le egyszerre a bekapcsológombot és a hangerő növelése gombot."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Csörgés megakadályozása:\nA gyorsparancs a hangerő menüben áll rendelkezésre."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Bekapcsológombhoz tartozó menü:\nNyomja le egyszerre a bekapcsológombot és a hangerő növelése gombot."</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Csörgés kikapcsolása:\nNyomja meg a hangerőszabályzó gombot a billentyűparancsért."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Nyomva tartás időtartama"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Az érzékenység módosításához válassza ki, hogy mennyi ideig kelljen nyomva tartani a bekapcsológombot"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Rövid"</string>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index 235bdf3..3561b4a 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Երբ նա օգտագործում է Pixel Imprint-ը, նրա մատնահետքի նմուշը թարմացվում է՝ այդ գործառույթի հետ աշխատանքի ընթացքում ստացված պատկերների հիման վրա։ Նմուշը պահվում է միայն հեռախոսում, իսկ այն ստեղծելու ժամանակ արված լուսանկարները չեն պահվում։ Բոլոր մշակումները կատարվում են անմիջապես հեռախոսում։"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Դուք ցանկացած պահի կարող եք ջնջել ձեր մատնահետքի պատկերներն ու նմուշը կամ անջատել մատնահետքով ապակողպումը սարքի կարգավորումներում։ Մատնահետքի պատկերներն ու նմուշները պահվում են հեռախոսում այնքան ժամանակ, մինչև որ չջնջեք դրանք։"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Դուք և ձեր երեխան ցանկացած պահի կարող եք ջնջել նրա մատնահետքի պատկերներն ու նմուշը կամ անջատել մատնահետքով ապակողպումը սարքի կարգավորումներում։ Մատնահետքի պատկերներն ու նմուշները պահվում են հեռախոսում այնքան ժամանակ, մինչև որ ջնջեք դրանք։"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Հեռախոսը կարող է երբեմն ապակողպվել առանց ձեր ցանկության, օրինակ, երբ ինչ-որ մեկը այն հպի ձեր մատին։"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Հեռախոսը կարող է երբեմն ապակողպվել առանց ձեր ցանկության, օրինակ, երբ ինչ-որ մեկը այն հպի ձեր մատին։"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Պլանշետը կարող է երբեմն ապակողպվել առանց ձեր ցանկության, օրինակ, երբ ինչ-որ մեկը այն հպի ձեր մատին։"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Սարքը կարող է երբեմն ապակողպվել առանց ձեր ցանկության, օրինակ, երբ ինչ-որ մեկը այն հպի ձեր մատին։"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Ձեր երեխայի հեռախոսը կարող է ապակողպվել, նույնիսկ եթե նա մտադրված չէ դա անել, օրինակ, երբ ինչ-որ մեկը այն հպի նրա մատին։"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Խորհուրդ ենք տալիս օգտագործել էկրանի պաշտպանիչ՝ «Made for Google» մակնշմամբ։ Էկրանի այլ պաշտպանիչներով սարքերը կարող են չճանաչել ձեր մատնահետքը։"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Խորհուրդ ենք տալիս օգտագործել էկրանի պաշտպանիչ՝ «Made for Google» մակնշմամբ։ Էկրանի այլ պաշտպանիչներով սարքերը կարող են չճանաչել ձեր երեխայի մատնահետքը։"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Սարքի և մատնահետքի սենսորի տեղադրության պատկեր"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Անուն"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Լավ"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Նորից փորձել"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Ջնջել"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Հպեք սենսորին"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Մատը դրենք սենսորի վրա և բարձրացրեք թրթռոց զգալուց հետո"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Պատրաստ է"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Դա սենսորը չէ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Ցուցամատով հպեք հեռախոսի հետևում գտնվող սկաներին:"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Գրանցումն ավարտված չէ"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Մատնահետքի գրանցման ժամանակը սպառվել է: Փորձեք նորից:"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Մատնահետքի կարգավորման ժամանակը սպառվեց"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Նորից փորձեք հիմա կամ կարգավորեք մատնահետքն ավելի ուշ՝ անցնելով կարգավորումներ"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Մատնահետքը չգրանցվեց: Փորձեք նորից կամ ուրիշ մատով:"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Նոր մատնահետք"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Հաջորդը"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Հեռախոսի անհատականացում"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Փորձեք տարբեր ոճեր, պաստառներ և ավելին"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Էկրանապահ"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"էկրանապահ"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Օգտագործել էկրանապահ"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Լիցքավորման ընթացքում կամ դոկ-կայանում"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Երկու դեպքում էլ"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Լիցքավորման ընթացքում"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Դոկ-կայանում"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Երբեք"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Անջատված է"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Հեռախոսը դոկ-կայանում և քնի ռեժիմում վերահսկելու համար միացրեք էկրանապահը։"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Երբ սկսել"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Ընթացիկ էկրանապահ"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Կարգավորումներ"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Ավտոմատ պայծառություն"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Բարձրացնել՝ միանալու համար"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ամբիենտ էկրան"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Սահմանեք PIN կոդ"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Սահմանեք աշխատանքային պրոֆիլի PIN կոդ"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Սահմանեք նախշ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Լրացուցիչ պաշտպանության նպատակով ավելացրեք նախշ սարքի ապակողպման համար"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Սահմանեք աշխատանքային պրոֆիլի նախշ"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Մատնահետքն օգտագործելու համար գաղտնաբառ մտածեք"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Մատնահետքն օգտագործելու համար ստեղծեք նախշ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Արտակարգ իրավիճակների հավելված"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Զրոյացնել հավելվածների կարգավորումները"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Զրոյացնե՞լ կարգավորումները"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Հետևյալ կարգավորումները կզրոյանան՝\n\n"<li>"անջատված հավելվածները,"</li>\n<li>"հավելվածների անջատված ծանուցումները,"</li>\n<li>"կանխադրված հավելվածները,"</li>\n<li>"ֆոնային ռեժիմում տվյալների փոխանցման սահմանափակումները,"</li>\n<li>"թույլտվությունների բոլոր սահմանափակումները։"</li>\n\n"Հավելվածների տվյալները կպահպանվեն։"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Հետևյալ կարգավորումները կզրոյանան՝\n\n"<li>"Անջատված հավելվածները"</li>\n<li>"Հավելվածների անջատված ծանուցումները"</li>\n<li>"Գործողությունների համար կանխադրված հավելվածները"</li>\n<li>"Ֆոնային ռեժիմում տվյալների փոխանակման սահմանափակումները հավելվածների համար"</li>\n<li>"Թույլտվությունների բոլոր սահմանափակումները"</li>\n<li>"Մարտկոցի օգտագործման կարգավորումները"</li>\n\n"Դուք չեք կորցնի հավելվածների ոչ մի տվյալ։"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Զրոյացնել"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Կառավարել տարածքը"</string>
     <string name="filter" msgid="9039576690686251462">"Զտիչ"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Զրոյացնել կարգավորումները"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Ցուցադրման չափսը և տեքստի կարգավորումները զրոյացվել են"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Զրոյացնե՞լ ցուցադրման չափսի և տեքստի կարգավորումները"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Կվերականգնվեն ցուցադրման չափսի և տեքստի կարգավորումների սկզբնական կարգավորումները։"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Կվերականգնվեն ցուցադրման չափսի և տեքստի կարգավորումների սկզբնական կարգավորումները։"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Կվերականգնվեն ցուցադրման չափսի և տեքստի կարգավորումների սկզբնական կարգավորումները։"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Զրոյացնել"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Որևէ բան պլանավորե՞լ եք հանգստյան օրերի համար։"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Գնում ենք լողափ։ Կմիանա՞ք մեզ։"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Մարտկոցը չի օգտագործվել վերջին լրիվ լիցքավորումից հետո"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Մարտկոցը չի օգտագործվել վերջին 24 ժամվա ընթացքում"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Այլ օգտատերեր"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Մարտկոցի աշխատանքի տևողությունը մոտավոր է և կախված է սարքի օգտագործումից"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Մոտավոր մնացած ժամանակը"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Մինչև լրիվ լիցքավորումը"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Ամբողջական թեժ բառեր և շփում"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Խոսքից տեքստի պարզ տարբերակ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ձայնի ներածման այս ծառայությունը կկարողանա կատարել ձայնի մշտադիտարկում և ձեր անունից վերահսկել ձայնի հնարավորությամբ ծրագրերը: Դրա պատճառը <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ծրագիրն է: Միացնե՞լ այս ծառայությունը:"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Սարքում ճանաչման կարգավորումներ"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Ճանաչում սարքում"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Խոսքի ճանաչում սարքում"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Նախընտրելի մեխանիզմը"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Համակարգի կարգավորումները"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Խոսքի արագությունը և բարձրությունը"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Ջնջել"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Այս աշխատաշրջանի բոլոր հավելվածներն ու տվյալները կջնջվեն:"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Հեռացնել"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Հյուր (դուք)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Օգտատերեր"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Այլ օգտատերեր"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Ջնջել հյուրի պատմությունը"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Դուրս գալիս ջնջել հյուրի աշխատաշրջանի բոլոր հավելվածներն ու տվյալները"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Ջնջե՞լ հյուրի պատմությունը"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Հյուրի այս աշխատաշրջանի հավելվածներն ու տվյալները հիմա կջնջվեն։ Հետագայում պատմությունը կջնջվի ամեն անգամ հյուրի ռեժիմից դուրս գալիս։"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Միացնել հեռախոսազանգերը"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Միացնել զանգերն ու SMS-ները"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Ջնջել օգտատիրոջը"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"«<xliff:g id="APP_NAME">%1$s</xliff:g>» պիտակով բոլոր ծանուցումները"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի բոլոր ծանուցումները"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Հարմարվող ծանուցումներ"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">Օրական ~<xliff:g id="NUMBER_1">%d</xliff:g> ծանուցում</item>
-      <item quantity="other">Օրական ~<xliff:g id="NUMBER_1">%d</xliff:g> ծանուցում</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Օրական մոտավորապես <xliff:g id="NUMBER_1">%d</xliff:g> ծանուցում</item>
+      <item quantity="other">Օրական մոտավորապես <xliff:g id="NUMBER_1">%d</xliff:g> ծանուցում</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">Շաբաթական ~<xliff:g id="NUMBER_1">%d</xliff:g> ծանուցում</item>
-      <item quantity="other">Շաբաթական ~<xliff:g id="NUMBER_1">%d</xliff:g> ծանուցում</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Շաբաթական մոտավորապես <xliff:g id="NUMBER_1">%d</xliff:g> ծանուցում</item>
+      <item quantity="other">Շաբաթական մոտավորապես <xliff:g id="NUMBER_1">%d</xliff:g> ծանուցում</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Երբեք"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Սարքերի և հավելվածների ծանուցումներ"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ոչինչ չանել"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Թրթռոց"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Անձայն"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Միացնելու համար նախ նշեք, որ «Սնուցման կոճակի սեղմում և պահում» գործողությունը բացի սնուցման կոճակի ընտրացանկը։"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Միացնելու համար նախ նշեք, որ «Սեղմել և պահել սնուցման կոճակը» գործողության դեպքում սնուցման կոճակի ընտրացանկը բացվի։"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Ցանցի տվյալներ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Ձեր սարքի անունը տեսանելի է հեռախոսում տեղադրված հավելվածներին։ Այն կարող են տեսնել օգտատերերը, երբ միանում եք Bluetooth սարքերի, Wi-Fi ցանցի, կամ կարգավորում եք Wi-Fi թեժ կետ։"</string>
     <string name="devices_title" msgid="649715719278562515">"Սարքեր"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"սարքերի կառավարման տարրեր"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Քարտեր և տոմսեր"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"քարտեր և տոմսեր"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Սնուցման կոճակի սեղմում և պահում"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Սեղմել և պահելուց հետո միանում է Օգնականը"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Սեղմել և պահելուց հետո բացվում է սնուցման կոճակի ընտրացանկը"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Սեղմում և պահումն անջատված է"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Սեղմած պահել սնուցման կոճակը"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Ընտրեք, թե ինչ բացվի՝ սնուցման կոճակը սեղմած պահելու դեպքում"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Սնուցման կոճակի ընտրացանկ"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Թվային օգնական"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Բացել թվային օգնականը"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Բացել սնուցման կոճակի ընտրացանկը"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Օգտագործելու համար նախ սահմանեք էկրանի կողպման եղանակը"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Սեղմած պահել՝ Օգնականը միացնելու համար"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Ակտիվացրեք Օգնականը՝ երկար սեղմած պահելով սնուցման կոճակը"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Սնուցման կոճակի և արտակարգ իրավիճակների տեղեկությունների ընտրացանկ\nՄիաժամանակ սեղմեք սնուցման և ձայնի բարձրացման կոճակները։"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Զանգի ձայնի անջատում\nԴյուրանցումը հասանելի է ձայնի ուժգնության ընտրացանկում։"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Սնուցման կոճակի ընտրացանկ։\nՍեղմած պահեք սնուցման և ձայնի բարձրացման կոճակները"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Զանգի ձայնի անջատում։\nՍեղմեք ձայնի ուժգնության կոճակը՝ դյուրանցումը կիրառելու համար"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Սեղմելու և պահելու տևողությունը"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Կարգավորեք զգայունությունը՝ նշելով, թե որքան երկար է անհրաժեշտ սեղմել և պահել սնուցման կոճակը։"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Կարճ"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 89ccdeb..becaaa0 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Saat dia menggunakan Pixel Imprint, gambar digunakan untuk memperbarui model sidik jarinya. Gambar yang digunakan untuk membuat model sidik jari anak Anda tidak pernah disimpan, tetapi model sidik jarinya disimpan secara aman di ponsel dan tidak pernah dikirim ke luar ponsel. Semua pemrosesan dilakukan secara aman di ponsel."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Anda dapat menghapus gambar dan model sidik jari Anda, atau menonaktifkan Fingerprint Unlock kapan saja di Setelan. Gambar dan model sidik jari disimpan di ponsel sampai Anda menghapusnya."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Anda dan anak Anda dapat menghapus gambar dan model sidik jarinya atau menonaktifkan Fingerprint Unlock kapan saja di Setelan. Gambar dan model sidik jari disimpan di ponsel sampai dihapus."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Ponsel Anda dapat dibuka kuncinya meski Anda tidak bermaksud membukanya, misalnya saat seseorang mendekatkan ponsel ke jari Anda."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Ponsel Anda dapat dibuka kuncinya meski Anda tidak bermaksud membukanya, misalnya saat seseorang mendekatkan ponsel ke jari Anda."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tablet Anda dapat dibuka kuncinya meski Anda tidak bermaksud membukanya, misalnya saat seseorang menempelkan tablet ke jari Anda."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Perangkat Anda dapat dibuka kuncinya meski Anda tidak bermaksud membukanya, misalnya saat seseorang menempelkan perangkat ke jari Anda."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Ponsel anak Anda dapat dibuka kuncinya meski dia tidak bermaksud membukanya, misalnya saat seseorang mendekatkan ponsel ke jarinya."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Untuk hasil terbaik, gunakan pelindung layar yang bersertifikasi Made for Google. Jika pelindung layar lain digunakan, sidik jari Anda mungkin tidak akan berfungsi."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Untuk hasil terbaik, gunakan pelindung layar yang bersertifikasi Made for Google. Jika pelindung layar lain digunakan, sidik jari anak Anda mungkin tidak akan berfungsi."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustrasi dengan perangkat dan lokasi sensor sidik jari"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nama"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Oke"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Coba lagi"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Hapus"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Sentuh sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Letakkan jari Anda di sensor dan angkat setelah merasakan getaran"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Selesai"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ups, bukan itu sensornya"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Sentuh sensor di bagian belakang ponsel. Gunakan jari telunjuk Anda."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Pendaftaran tidak selesai"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Waktu pendaftaran sidik jari habis. Coba lagi."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Waktu penyiapan sidik jari habis"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Coba lagi sekarang atau siapkan sidik jari nanti di Setelan"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Pendaftaran sidik jari tidak berhasil. Coba lagi atau gunakan jari lain."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Tambahkan lainnya"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Berikutnya"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Sesuaikan ponsel Anda"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Coba wallpaper dan gaya yang berbeda, serta banyak lagi"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Screensaver"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"screensaver"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Gunakan screensaver"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Saat mengisi baterai atau dipasang ke dok"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Keduanya"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Saat mengisi baterai"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Saat terpasang di dok"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Tidak pernah"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Mati"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Untuk mengontrol yang terjadi saat ponsel dipasang ke dok dan/atau sedang tidur, aktifkan screen saver."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Waktu mulai"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Screensaver saat ini"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Setelan"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Kecerahan otomatis"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Angkat untuk membangunkan"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Tampilan standby"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Setel PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Setel PIN profil kerja"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Setel pola"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Untuk keamanan tambahan, setel pola untuk membuka kunci perangkat"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Setel pola profil kerja"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Untuk memakai sidik jari, setel sandi"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Untuk memakai sidik jari, setel pola"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikasi darurat"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Reset preferensi aplikasi"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Reset preferensi aplikasi?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Tindakan ini akan mereset semua preferensi untuk:\n\n"<li>"Aplikasi yang dinonaktifkan"</li>\n<li>"Notifikasi aplikasi yang dinonaktifkan"</li>\n<li>"Aplikasi default untuk tindakan"</li>\n<li>"Batasan data latar belakang untuk aplikasi"</li>\n<li>"Batasan izin apa pun"</li>\n\n"Data aplikasi Anda tidak akan hilang."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Tindakan ini akan mereset semua preferensi untuk:\n\n"<li>"Aplikasi yang dinonaktifkan"</li>\n<li>"Notifikasi aplikasi yang dinonaktifkan"</li>\n<li>"Aplikasi default untuk tindakan"</li>\n<li>"Batasan data latar belakang untuk aplikasi"</li>\n<li>"Batasan izin apa pun"</li>\n<li>"Setelan penggunaan baterai"</li>\n\n"Data aplikasi tidak akan hilang."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Reset aplikasi"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Kelola ruang"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Reset setelan"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Setelan ukuran tampilan dan teks telah direset"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Reset ukuran tampilan dan teks?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Preferensi ukuran tampilan dan teks akan direset ke setelan asli ponsel"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Preferensi ukuran tampilan dan teks akan direset ke setelan asli ponsel"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Preferensi ukuran layar dan teks akan direset ke setelan asli tablet"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Reset"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Ada rencana weekend ini?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Pergi ke pantai. Mau ikut?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Tidak ada penggunaan sejak terakhir kali baterai terisi penuh"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Tidak ada penggunaan selama 24 jam terakhir"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Pengguna lainnya"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Perkiraan sisa baterai berdasarkan pada penggunaan perangkat"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Perkiraan sisa waktu"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Sampai terisi penuh"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Frasa pengaktif dan interaksi lengkap"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Speech to text yang sederhana"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Layanan masukan suara ini akan dapat melakukan pemantauan suara yang selalu aktif dan mengontrol aplikasi yang aktif untuk suara atas nama Anda. Layanan ini berasal dari aplikasi <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Aktifkan penggunaan layanan ini?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Setelan pengenalan di perangkat"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Pengenalan di perangkat"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Pengenalan ucapan di perangkat"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Mesin yang dipilih"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Setelan mesin"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Kecepatan &amp; tinggi nada ucapan"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Hapus"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Semua aplikasi dan data dalam sesi ini akan dihapus."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Hapus"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Tamu (Anda)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Pengguna"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Pengguna lainnya"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Hapus aktivitas tamu"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Hapus semua aplikasi dan data tamu saat keluar dari mode tamu"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Hapus aktivitas tamu?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplikasi dan data dari sesi tamu ini akan dihapus sekarang, dan semua aktivitas tamu mendatang akan dihapus setiap kali Anda keluar dari mode tamu"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Aktifkan panggilan telepon"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Aktifkan panggilan telepon &amp; SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Hapus pengguna"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Semua notifikasi \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Semua notifikasi <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notifikasi Adaptif"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifikasi per hari</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notifikasi per hari</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Sekitar <xliff:g id="NUMBER_1">%,d</xliff:g> notifikasi per hari</item>
+      <item quantity="one">Sekitar <xliff:g id="NUMBER_0">%d</xliff:g> notifikasi per hari</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifikasi per minggu</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notifikasi per minggu</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Sekitar <xliff:g id="NUMBER_1">%,d</xliff:g> notifikasi per minggu</item>
+      <item quantity="one">Sekitar <xliff:g id="NUMBER_0">%d</xliff:g> notifikasi per minggu</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Tidak pernah"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Notifikasi perangkat &amp; aplikasi"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Jangan lakukan apa pun"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Bergetar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Bisukan"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Untuk mengaktifkan, ubah \"Tekan dan tahan tombol daya\" ke menu daya terlebih dahulu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Untuk mengaktifkan, ubah \"Tekan &amp; tahan tombol daya\" ke menu daya terlebih dahulu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detail jaringan"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Nama perangkat terlihat oleh aplikasi di ponsel, dan juga mungkin dilihat oleh orang lain saat Anda menghubungkan ke perangkat Bluetooth atau jaringan Wi-Fi, atau saat menyiapkan hotspot Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Perangkat"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"kontrol perangkat"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartu &amp; tiket"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartu &amp; tiket"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Tekan dan tahan tombol daya"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Tekan dan tahan untuk membuka Asisten"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Tekan dan tahan untuk membuka menu daya"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Fitur tekan dan tahan dinonaktifkan"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Tekan &amp; tahan tombol daya"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Tekan &amp; dan tahan tombol daya untuk mengakses"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu daya"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Asisten digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Mengakses asisten digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Mengakses menu daya"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Untuk menggunakannya, setel kunci layar terlebih dahulu"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Tekan lama untuk membuka Asisten"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Picu Asisten dengan menekan lama tombol daya"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu daya &amp; darurat:\nTekan tombol daya dan volume naik bersamaan."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Cegah berdering:\nPintasan tersedia di menu volume."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu daya:\nTekan tombol daya dan tombol naikkan volume secara bersamaan"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Mencegah dering:\nTekan tombol volume untuk menggunakan pintasan"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Durasi tekan &amp; tahan"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Sesuaikan sensitivitas dengan memilih durasi menekan &amp; menahan tombol daya"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Singkat"</string>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index 6a2487c..5e2758f 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Þegar barnið notar Pixel Imprint eru myndir notaðar til að uppfæra fingrafarslíkan þess. Myndir sem eru notaðar til að búa fingrafarslíkan barnsins til eru aldrei geymdar en líkanið er geymt á öruggan hátt í símanum og fer aldrei þaðan. Öll úrvinnsla fer fram í símanum á öruggan hátt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Þú getur eytt fingrafaramyndunum og -líkaninu eða slökkt á fingrafarskenni hvenær sem er í stillingunum. Fingrafaramyndir og -líkön eru geymd á öruggan hátt í símanum þar til þeim er eytt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Þú og barnið þitt getið eytt fingrafarsmyndunum og -líkaninu eða slökkt á fingrafarskenni hvenær sem er í stillingunum. Fingrafaramyndir og -líkön eru geymd á öruggan hátt í símanum þar til þeim er eytt."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Síminn gæti opnast óvart, til dæmis ef einhver heldur honum að fingrinum á þér."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Síminn gæti opnast óvart, til dæmis ef einhver heldur honum að fingrinum á þér."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Spjaldtölvan gæti opnast án þess að þú ætlir þér það, til dæmis ef einhver heldur henni að fingrinum á þér."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Tækið gæti opnast án þess að þú ætlir þér það, til dæmis ef einhver heldur því að fingrinum á þér."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Sími barnsins kann að opnast án þess að það hafi verið ætlun þess, t.d. ef einhver heldur símanum að fingri þess."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Best er að nota skjávörn sem er vottuð með merkinu „Hannað fyrir Google“. Óvíst er að hægt sé að nota fingrafarið með öðrum skjávörnum."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Best er að nota skjávörn sem er vottuð með merkinu „Hannað fyrir Google“. Óvíst er að barnið geti notað fingrafarið með öðrum skjávörnum."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Teikning af tæki og staðsetningu fingrafaraskynjara"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Heiti"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Í lagi"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Reyna aftur"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Eyða"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Snertu lesarann"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Settu fingurinn á skynjarann og lyftu honum þegar þú finnur titring"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Lokið"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Úbbs, þetta er ekki skynjarinn"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Snertu lesarann aftan á símanum. Notaðu vísifingur."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Innritun var ekki lokið"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Skráning fingrafars rann út á tíma. Reyndu aftur."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Fingrafarsuppsetning rann út á tíma"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Reyndu aftur núna eða settu upp fingrafar síðar í stillingum"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Skráning fingrafars virkaði ekki. Reyndu aftur eða notaðu annan fingur."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Bæta öðru við"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Áfram"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Sérsníddu símann"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Prófaðu mismunandi stíla, veggfóður og fleira"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Skjávari"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"skjávari"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Nota skjávara"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Við hleðslu eða í dokku"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Annaðhvort"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Við hleðslu"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Þegar tækið er í dokku"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Aldrei"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Slökkt"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Kveiktu á skjávaranum til að stjórna því hvað gerist þegar síminn er í dokku og/eða í biðstöðu."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Hvenær á að byrja"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Núverandi skjávari"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Stillingar"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Sjálfvirk birtustilling"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Lyfta til að vekja"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Umhverfisskjár"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Stilltu PIN-númer"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Stilltu PIN-númer fyrir vinnu"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Stilltu mynstur"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Auktu öryggið og veldu þér mynstur til að taka tækið úr lás"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Stilltu mynstur fyrir vinnu"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Veldu aðgangsorð til að nota fingrafar"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Veldu mynstur til að nota fingrafar"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Neyðarforrit"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Endurstilla stillingar forrita"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Endurstilla stillingar forrita?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Þetta endurstillir allar kjörstillingar fyrir:\n\n "<li>"Óvirk forrit"</li>\n" "<li>"Óvirkar tilkynningar forrita"</li>\n" "<li>"Sjálfgefin forrit aðgerða"</li>\n" "<li>"Takmarkanir á bakgrunnsgögnum forrita"</li>\n" "<li>"Allar takmarkanir á heimildum"</li>\n\n" Þú glatar engum forritagögnum."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Þetta endurstillir allar stillingar fyrir:\n\n"<li>"Óvirk forrit"</li>\n<li>"Óvirkar tilkynningar forrita"</li>\n<li>"Sjálfgefin forrit aðgerða"</li>\n<li>"Gagnatakmarkanir forrita í bakgrunni"</li>\n<li>"Takmarkanir á heimildum"</li>\n<li>"Stillingar rafhlöðunotkunar"</li>\n\n"Þú glatar engum forritsgögnum."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Endurstilla forrit"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Stjórna plássi"</string>
     <string name="filter" msgid="9039576690686251462">"Sía"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Endurstilla"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Skjástærð og textastillingar hafa verði endurstilltar"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Endurstilla skjástærð og texta?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Skjástærð og kjörstillingar texta verða endurstilltar á upprunalegar stillingar símans"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Skjástærð og kjörstillingar texta verða endurstilltar á upprunalegar stillingar símans"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Skjástærð og kjörstillingar texta verða endurstilltar á upprunalegar stillingar spjaldtölvunnar"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Endurstilla"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Á að gera eitthvað um helgina?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Ég ætla á ströndina. Viltu koma með?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Engin notkun frá síðustu fullu hleðslu"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Engin notkun síðasta sólarhringinn"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Aðrir notendur"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Áætluð rafhlöðuending er byggð á notkun þinni á tækinu"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Áætlaður tími eftir"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Þar til fullri hleðslu er náð"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Alhliða virkar skipanir og samskipti"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Einföld talkennsl"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Þessi raddinntaksþjónusta mun geta fylgst með raddsamskiptum þínum öllum stundum og stýrt forritum sem notast við raddsamskipti fyrir þína hönd. Hún tilheyrir forritinu <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Viltu leyfa notkun þessarar þjónustu?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Greiningarstillingar í tæki"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Greining í tæki"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Raddgreining í tæki"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Valin vél"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Stillingar vélar"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Talhraði og tónhæð"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Eyða"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Öllum forritum og gögnum í þessari lotu verður eytt."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Fjarlægja"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gestur (þú)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Notendur"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Aðrir notendur"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Eyða aðgerðum úr gestalotu"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Eyða öllum forritum og gögnum úr gestalotu þegar gestastillingu er lokað"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Eyða aðgerðum úr gestalotu?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Forritum og gögnum úr þessari gestalotu verður eytt núna og öllum aðgerðum úr síðari gestalotum verður eytt í hvert skipti sem gestastillingu er lokað"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Kveikja á símtölum"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Kveikja á símtölum og SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Eyða notanda"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Allar tilkynningar frá „<xliff:g id="APP_NAME">%1$s</xliff:g>“"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Allar tilkynningar frá <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Breytilegar tilkynningar"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> tilkynning á dag</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> tilkynningar á dag</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Um það bil <xliff:g id="NUMBER_1">%,d</xliff:g> tilkynning á dag</item>
+      <item quantity="other">Um það bil <xliff:g id="NUMBER_1">%,d</xliff:g> tilkynningar á dag</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> tilkynning á viku</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> tilkynningar á viku</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Um það bil <xliff:g id="NUMBER_1">%,d</xliff:g> tilkynning á viku</item>
+      <item quantity="other">Um það bil <xliff:g id="NUMBER_1">%,d</xliff:g> tilkynningar á viku</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Aldrei"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Tækja- og forritatilkynningar"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ekki aðhafast neitt"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Titringur"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Þagga"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Til að virkja þarf fyrst að breyta „Halda inni aflrofa“ á aflrofavalmyndinni."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Til að virkja þarf fyrst að breyta „Halda aflrofa inni“ í aflrofavalmyndina."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Upplýsingar um net"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Heiti tækisins þíns er sýnilegt forritum í símanum. Heiti þess er hugsanlega einnig sýnilegt öðru fólki þegar þú tengist Bluetooth-tækjum, Wi-Fi neti eða setur upp heitan Wi-Fi reit."</string>
     <string name="devices_title" msgid="649715719278562515">"Tæki"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"tækjastjórnun"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kort og passar"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kort og passar"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Halda aflrofanum inni"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Haltu inni til að opna Hjálparann"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Haltu inni til að opna aflrofavalmyndina"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Ekki er hægt að halda inni"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Halda aflrofa inni"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Haltu aflrofanum inni til að opna"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Aflrofavalmynd"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Stafrænn hjálpari"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Opna stafrænan hjálpara"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Opna aflrofavalmynd"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Stilltu skjálás áður en þú byrjar"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Haltu inni til að ræsa Hjálparann"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Ræstu Hjálparann með því að halda aflrofanum inni"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Aflrofa- og neyðarvalmynd:\nÝttu samtímis á aflrofann og hnappinn til að hækka hljóðstyrk."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Koma í veg fyrir hringingu:\nFlýtileið í boði á hljóðvalmyndinni."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Aflrofavalmynd:\nÝttu samtímis á aflrofann og hnappinn til að hækka hljóðstyrk"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Loka á hringingar:\nÝttu á hljóðstyrkshnappinn til að finna flýtileiðina"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Hversu lengi á að halda inni"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Stilltu næmi með því að velja í hversu langan tíma á að halda aflrofanum inni"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Stutt"</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 67fbaa1..1b85dd7 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Quando utilizza Pixel Imprint, le immagini vengono usate per aggiornare il modello dell\'impronta. Le immagini usate per creare il modello dell\'impronta di tuo figlio non vengono mai archiviate, ma il modello viene memorizzato in modo sicuro sul telefono e non viene mai trasferito dal dispositivo. L\'intera elaborazione avviene in modo sicuro sul telefono."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Puoi eliminare le immagini e il modello dell\'impronta o disattivare lo sblocco con l\'impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sul telefono finché non li elimini."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Tu e tuo figlio potete eliminare le immagini e il modello dell\'impronta o disattivare lo sblocco con l\'impronta in qualsiasi momento nelle Impostazioni. Le immagini e i modelli delle impronte rimangono memorizzati sul telefono finché non vengono eliminati."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Il tuo telefono può essere sbloccato anche quando non hai intenzione di farlo, ad esempio se qualcuno te lo avvicina al dito."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Il tuo telefono può essere sbloccato anche quando non hai intenzione di farlo, ad esempio se qualcuno te lo avvicina al dito."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Il tuo tablet può essere sbloccato anche quando non hai intenzione di farlo, ad esempio se qualcuno lo avvicina al tuo dito."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Il tuo dispositivo può essere sbloccato anche quando non hai intenzione di farlo, ad esempio se qualcuno lo avvicina al tuo dito."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Il telefono di tuo figlio può essere sbloccato anche quando non vuole farlo intenzionalmente, ad esempio se qualcuno lo rivolge verso il suo dito."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Per risultati ottimali, usa una protezione per lo schermo con la certificazione Made For Google. Con altre protezioni per lo schermo la tua impronta potrebbe non funzionare."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Per risultati ottimali, usa una protezione per lo schermo con la certificazione Made For Google. Con altre protezioni per lo schermo l\'impronta di tuo figlio potrebbe non funzionare."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustrazione con il dispositivo e la posizione del sensore di impronte"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nome"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Riprova"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Elimina"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Tocca il sensore"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Appoggia il dito sul sensore e sollevalo quando senti una vibrazione."</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Fine"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ops, questo non è il sensore"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Tocca il sensore sulla parte posteriore del telefono. Utilizza il dito indice."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registrazione non completata"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Hai raggiunto il tempo limite per la registrazione dell\'impronta. Riprova."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Timeout della configurazione dell\'impronta"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Riprova subito o configura l\'impronta in un secondo momento nelle Impostazioni"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registrazione dell\'impronta non riuscita. Riprova o utilizza un dito diverso."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Aggiungine un\'altra"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Avanti"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personalizza il telefono"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Prova diversi stili, sfondi e non solo"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Salvaschermo"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"salvaschermo"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Usa il salvaschermo"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Durante la ricarica o quando inserito nel dock"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Entrambi i casi"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Durante la ricarica"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Quando inserito nel dock"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Mai"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Off"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Attiva il salvaschermo per controllare ciò che accade quando il telefono è inserito nel dock e/o in standby."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Quando avviare"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Salvaschermo attuale"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Impostazioni"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Luminosità automatica"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Solleva per riattivare"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Display ambient"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Imposta un PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Imposta un PIN per profilo lavoro"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Imposta una sequenza"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Per maggiore sicurezza, imposta una sequenza per sbloccare il dispositivo"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Imposta una sequenza per profilo lavoro"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Per usare l\'impronta, imposta una password"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Per usare l\'impronta, imposta una sequenza"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"App di emergenza"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Reimposta preferenze app"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Reimpostare preferenze app?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Verranno reimpostate tutte le preferenze relative a:\n\n"<li>"App disattivate"</li>\n<li>"Notifiche di app disattivate"</li>\n<li>"Applicazioni predefinite per azioni"</li>\n<li>"Limitazioni di dati in background per app"</li>\n<li>"Eventuali limitazioni di autorizzazione"</li>\n\n"Non perderai i dati delle app."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Verranno reimpostate tutte le preferenze relative a:\n\n"<li>"App disattivate"</li>\n<li>"Notifiche di app disattivate"</li>\n<li>"Applicazioni predefinite per le azioni"</li>\n<li>"Limitazioni di dati in background per le app"</li>\n<li>"Eventuali limitazioni delle autorizzazioni"</li>\n<li>"Impostazioni di utilizzo della batteria"</li>\n\n"Non perderai i dati delle app."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Reimposta app"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gestisci spazio"</string>
     <string name="filter" msgid="9039576690686251462">"Filtra"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Ripristina impostazioni"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Le impostazioni relative a dimensioni di visualiz. e testo sono state reimpostate"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Vuoi reimpostare le dimensioni di visualizzazione e testo?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Verranno reimpostate le impostazioni originali del telefono relative a dimensioni di visualizzazione e testo"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Verranno reimpostate le impostazioni originali del telefono relative a dimensioni di visualizzazione e testo"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Verranno ripristinate le impostazioni originali del tablet relative a dimensioni di visualizzazione e testo"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Reimposta"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Hai programmi per il fine settimana?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Vado al mare. Vuoi venire?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nessun utilizzo dall\'ultima ricarica completa"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nessun utilizzo nelle ultime 24 ore"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Altri utenti"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"La stima della batteria residua si basa sul tuo utilizzo del dispositivo"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Tempo residuo stimato"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Tempo rimanente alla carica completa"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Interazione e hotword completa"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Semplice immissione vocale"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Questo servizio di input vocale potrà eseguire sempre il monitoraggio della voce e controllare le applicazioni vocali per tuo conto. Deriva dall\'applicazione <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Attivare l\'utilizzo del servizio?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Impostazioni di riconoscimento sul dispositivo"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Riconoscimento sul dispositivo"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Riconoscimento vocale sul dispositivo"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motore preferito"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Impostazioni motore"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Velocità voce e tono"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Elimina"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Tutte le app e i dati di questa sessione verranno eliminati."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Rimuovi"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Ospite (tu)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Utenti"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Altri utenti"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Elimina attività Ospite"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Elimina tutti i dati e le app Ospite quando esci dalla modalità Ospite"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Vuoi eliminare l\'attività Ospite?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Le app e i dati di questa sessione Ospite verranno eliminati subito e ogni volta che uscirai dalla modalità Ospite verrà eliminata tutta l\'attività Ospite"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Attiva chiamate"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Attiva chiamate e SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Elimina utente"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Tutte le notifiche di \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Tutte le notifiche di <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notifiche adattative"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifiche al giorno</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notifica al giorno</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Circa <xliff:g id="NUMBER_1">%,d</xliff:g> notifiche al giorno</item>
+      <item quantity="one">Circa <xliff:g id="NUMBER_0">%d</xliff:g> notifica al giorno</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifiche alla settimana</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notifica alla settimana</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Circa <xliff:g id="NUMBER_1">%,d</xliff:g> notifiche alla settimana</item>
+      <item quantity="one">Circa <xliff:g id="NUMBER_0">%d</xliff:g> notifica alla settimana</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Mai"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Notifiche app e dispositivi"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Non fare niente"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrazione"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Disattiva audio"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Per procedere con l\'attivazione, devi prima modificare l\'opzione \"Tieni premuto il tasto di accensione\" impostandola sul menu del tasto di accensione."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Per procedere con l\'attivazione, devi prima modificare l\'opzione \"Tieni premuto il tasto di accensione\" impostandola sul menu del tasto di accensione."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Dettagli rete"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Il nome del tuo dispositivo è visibile alle app installate sul telefono. Potrebbe essere visibile anche ad altre persone quando ti connetti a dispositivi Bluetooth, a una rete Wi-Fi o configuri un hotspot Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispositivi"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"controllo dei dispositivi"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Carte e pass"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"carte e pass"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Tieni premuto il tasto di accensione"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Tieni premuto per l\'assistente"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Tieni premuto per il menu del tasto di accensione"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Pulsante Tieni premuto disattivato"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Tieni premuto il tasto di accensione"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Per accedere devi tenere premuto il tasto di accensione"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu del tasto di accensione"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Assistente digitale"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Accedi all\'assistente digitale"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Accedi al menu del tasto di accensione"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Per usare questa opzione, imposta prima un blocco schermo"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Tieni premuto per l\'assistente"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Attiva l\'assistente tenendo premuto il tasto di accensione"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu accensione ed emergenze:\nPremi contemporaneamente il tasto di accensione e il tasto alza il volume"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Disattiva suoneria:\nscorciatoia disponibile nel menu del volume."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu del tasto di accensione:\nPremi contemporaneamente il tasto di accensione e il pulsante Alza il volume"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Disattiva suoneria:\nPremi un pulsante del volume per usare la scorciatoia"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Durata pressione"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Regola la sensibilità scegliendo la durata della pressione del tasto di accensione"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Breve"</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index eeb390a..471192e 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"‏בשימוש ב-Pixel Imprint, נעשה שימוש בתמונות כדי לעדכן את התבנית של טביעת האצבע שלהם. התמונות המשמשות ליצירת התבנית של טביעת האצבע של הילד או הילדה אף פעם לא נשמרות. התבנית של טביעת האצבע נשמרת באופן מאובטח בטלפון ואף פעם לא נשלחת או מועברת ממנו. כל פעולות העיבוד מתבצעות בטלפון באופן מאובטח."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"בכל שלב אפשר למחוק את התבנית ואת התמונות של טביעת האצבע, או להשבית את התכונה \'ביטול הנעילה בטביעת אצבע\', דרך ה\'הגדרות\'. התמונות והתבניות של טביעת האצבע מאוחסנות בטלפון עד שהן נמחקות."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"האפשרות למחוק את התמונות והתבנית של טביעת האצבע, או להשבית את הפיצ\'ר \'ביטול הנעילה בטביעת אצבע\', זמינה לך ולילד או לילדה שלך בכל שלב בהגדרות. התמונות והתבניות של טביעת האצבע נשמרות בטלפון עד שהן נמחקות."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"נעילת הטלפון עלולה להתבטל בלי כוונה, למשל כשמישהו מחזיק אותו בצמוד לאצבע שלך."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"נעילת הטלפון עלולה להתבטל בלי כוונה, למשל כשמישהו מחזיק אותו בצמוד לאצבע שלך."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"נעילת הטאבלט עלולה להתבטל בלי כוונה, למשל כשמישהו מחזיק אותו בצמוד לאצבע שלך."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"נעילת המכשיר עלולה להתבטל בלי כוונה, למשל כשמישהו מחזיק אותו בצמוד לאצבע שלך."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"נעילת הטלפון של הילד או הילדה עשויה להתבטל ללא כוונה, למשל במקרה שמישהו יצמיד את הטלפון לאצבע שלהם."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"‏לקבלת התוצאות הטובות ביותר, כדאי להשתמש במגן מסך בעל אישור Made for Google. טביעת האצבע שלך עלולה לא לעבוד עם מגני מסך אחרים."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"‏לקבלת התוצאות הטובות ביותר, כדאי להשתמש במגן מסך בעל אישור Made for Google. טביעת האצבע של הילד או הילדה עלולה לא לעבוד עם מגני מסך אחרים."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"איור המציג את המיקום של חיישן טביעת האצבע במכשיר"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"שם"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"אישור"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ניסיון חוזר"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"מחיקה"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"נגיעה בחיישן"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"יש להניח את האצבע על החיישן ולהרים אותה לאחר שמרגישים רטט"</string>
@@ -601,8 +604,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"סיום"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"אופס. זה לא החיישן הנכון"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"יש לגעת בחיישן שבגב הטלפון באצבע המורה."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"הסריקה לא הושלמה"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"חלף הזמן הקצוב להרשמה באמצעות טביעת אצבע. יש לנסות שוב."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"הזמן שהוקצב להגדרת טביעת האצבע פג"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"עליך לנסות שוב עכשיו או להגדיר את טביעת האצבע שלך מאוחר יותר ב\'הגדרות\'"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ההרשמה באמצעות טביעת אצבע נכשלה. כדאי לנסות שוב או להשתמש באצבע אחרת."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"עוד אחת"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"הבא"</string>
@@ -1490,17 +1493,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"התאמה אישית של הטלפון"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"מגוון סגנונות, טפטים שונים ואפשרויות נוספות לבחירתך"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"שומר מסך"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"שומר מסך"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"שימוש בשומר מסך"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"במהלך טעינה או עגינה"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"בשני המצבים"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"במהלך טעינה"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"בזמן עגינה"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"אף פעם"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"כבוי"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"כדי לשלוט במה שקורה כאשר הטלפון בעגינה ו/או במצב שינה, הפעל את שומר המסך."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"מתי להפעיל"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"שומר המסך הנוכחי"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"הגדרות"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"בהירות אוטומטית"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"אפשר להרים כדי להוציא ממצב שינה"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"תצוגה רגישה לסביבה"</string>
@@ -1992,6 +1993,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"הגדרת קוד אימות"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"הגדרת קוד אימות לפרופיל העבודה"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"הגדרת קו ביטול נעילה"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"להוספה של שכבת אבטחה, ניתן להגדיר קו ביטול נעילה לביטול הנעילה של המכשיר"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"הגדרת קו ביטול נעילה לפרופיל עבודה"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"כדי להשתמש בטביעת אצבע, עליך להגדיר סיסמה"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"לשימוש בטביעת אצבע, נדרש קו ביטול נעילה"</string>
@@ -2149,7 +2151,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"אפליקציה לשעת חירום"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"איפוס העדפות של אפליקציות"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"לאפס את העדפות האפליקציות?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"הפעולה תאפס את כל ההעדפות עבור:\n\n"<li>"אפליקציות מושבתות"</li>\n<li>"השבתת התראות של אפליקציות"</li>\n<li>"אפליקציות ברירת מחדל לביצוע פעולות"</li>\n<li>"הגבלות של נתוני רקע לאפליקציות"</li>\n<li>"הגבלת הרשאות"</li>\n\n"נתוני האפליקציות לא יאבדו."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"הפעולה תאפס את כל ההעדפות עבור:\n\n"<li>"אפליקציות מושבתות"</li>\n<li>"השבתת התראות של אפליקציות"</li>\n<li>"אפליקציות שהן ברירת המחדל לביצוע פעולות"</li>\n<li>"הגבלות של נתוני רקע לאפליקציות"</li>\n<li>"הגבלת הרשאות"</li>\n<li>"הגדרות שימוש בסוללה"</li>\n\n"נתוני האפליקציות לא יאבדו."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"איפוס אפליקציות"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ניהול נפח האחסון"</string>
     <string name="filter" msgid="9039576690686251462">"סינון"</string>
@@ -2404,7 +2406,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"איפוס ההגדרות"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"הגדרות גודל התצוגה והטקסט אופסו"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"לאפס את גודל התצוגה והטקסט?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ההעדפות שלך לגבי גודל התצוגה והטקסט יאופסו להגדרות המקוריות של הטלפון"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ההעדפות שלך לגבי גודל התצוגה והטקסט יאופסו להגדרות המקוריות של הטלפון"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ההעדפות שלך לגבי גודל התצוגה והטקסט יאופסו להגדרות המקוריות של הטאבלט"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"איפוס"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"יש לך תוכניות לסוף השבוע?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"נראה לי שאלך לחוף הים. רוצה להצטרף?"</string>
@@ -3012,6 +3015,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"לא בשימוש מאז הטעינה המלאה האחרונה"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"לא נעשה שימוש ב-24 השעות האחרונות"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"משתמשים אחרים"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"הערכת הזמן שנותר עד שתיגמר הסוללה מבוססת על השימוש שנעשה במכשיר"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"זמן משוער שנותר"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"עד לטעינה מלאה"</string>
@@ -3101,6 +3105,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"שירות מלא של אינטראקציה ומילות הפעלה"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"שירות פשוט של דיבור לטקסט"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"שירות הקלט הקולי הזה יוכל לקיים ניטור תמידי של קול ולשלוט בשמך באפליקציות בעלות תכונות הפעלה קולית. מקורו באפליקציה <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. האם להפעיל את השימוש בשירות הזה?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"הגדרות זיהוי במכשיר"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"זיהוי במכשיר"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"זיהוי דיבור במכשיר"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"מנוע מועדף"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"הגדרות מנוע"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"קצב הדיבור וגובה הקול"</string>
@@ -3501,6 +3508,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"מחיקה"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"כל האפליקציות והנתונים בסשן הזה יימחקו."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"הסרה"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"אורח (את/ה)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"משתמשים"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"משתמשים אחרים"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"מחיקת פעילות האורח"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"מחיקת כל האפליקציות והנתונים של האורח ביציאה ממצב אורח"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"למחוק את הפעילות במצב אורח?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"האפליקציות והנתונים מהגלישה הזו במצב אורח יימחקו עכשיו, וכל פעילות עתידית במצב אורח תימחק בכל יציאה ממצב זה"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"הפעלת שיחות טלפון"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"‏הפעלת שיחות טלפון ו-SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"מחיקת משתמש"</string>
@@ -4097,17 +4111,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"כל ההתראות של​ \'<xliff:g id="APP_NAME">%1$s</xliff:g>\'"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"כל ההתראות של \'<xliff:g id="APP_NAME">%1$s</xliff:g>\'"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"התראות מותאמות"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="two">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות ביום</item>
-      <item quantity="many">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות ביום</item>
-      <item quantity="other">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות ביום</item>
-      <item quantity="one">כהתראה אחת (<xliff:g id="NUMBER_0">%d</xliff:g>) ביום</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="two">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות ליום</item>
+      <item quantity="many">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות ליום</item>
+      <item quantity="other">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות ליום</item>
+      <item quantity="one">כהתראה אחת (<xliff:g id="NUMBER_0">%d</xliff:g>) ליום</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="two">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות בשבוע</item>
-      <item quantity="many">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות בשבוע</item>
-      <item quantity="other">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות בשבוע</item>
-      <item quantity="one">כהתראה אחת (<xliff:g id="NUMBER_0">%d</xliff:g>) בשבוע</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="two">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות לשבוע</item>
+      <item quantity="many">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות לשבוע</item>
+      <item quantity="other">כ-<xliff:g id="NUMBER_1">%,d</xliff:g> התראות לשבוע</item>
+      <item quantity="one">כהתראה אחת (<xliff:g id="NUMBER_0">%d</xliff:g>) לשבוע</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"אף פעם"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"התראות במכשירים ובאפליקציות"</string>
@@ -5425,7 +5439,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"לא לבצע שום פעולה"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"רטט"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"השתקה"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"כדי להפעיל, קודם צריך לשנות את \"לחיצה ארוכה על לחצן ההפעלה\" לתפריט ההפעלה."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"כדי להפעיל, קודם צריך לשנות את \'לחיצה ארוכה על לחצן ההפעלה\' לתפריט ההפעלה."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"פרטי הרשת"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"‏שם המכשיר שלך גלוי לאפליקציות בטלפון. כמו כן, ייתכן שאנשים אחרים יראו אותו בהתחברות למכשירי Bluetooth, לרשת Wi-Fi, או בהגדרת נקודת Wi-Fi לשיתוף אינטרנט."</string>
     <string name="devices_title" msgid="649715719278562515">"מכשירים"</string>
@@ -5718,15 +5732,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"פקדי המכשירים"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"כרטיסים וכרטיסי אשראי"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"כרטיסים וכרטיסי אשראי"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"לחיצה ארוכה על לחצן ההפעלה"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"‏לוחצים לחיצה ארוכה על לחצן ההפעלה כדי להפעיל Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"לחיצה ארוכה למעבר לתפריט ההפעלה"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"לחיצה ארוכה מושבתת"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"לחיצה ארוכה על לחצן ההפעלה"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"יש ללחוץ לחיצה ארוכה על לחצן ההפעלה כדי לגשת"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"תפריט הפעלה"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"העוזר הדיגיטלי"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"גישה לעוזר הדיגיטלי"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"גישה לתפריט ההפעלה"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"כדי להשתמש בתכונה הזו, קודם צריך להגדיר נעילת מסך"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"‏לחיצה ארוכה להפעלת Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"‏כדי להפעיל את Assistant, לוחצים לחיצה ארוכה על לחצן ההפעלה"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"תפריט הפעלה וחירום:\nלוחצים על לחצן ההפעלה ועל הלחצן להגברת עוצמת הקול בו-זמנית."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"מניעת השמעה של צלצול:\nקיצור דרך זמין בתפריט עוצמת הקול."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"תפריט הפעלה:\nיש ללחוץ על לחצן ההפעלה ולחצן הגברת עוצמת הקול בו-זמנית"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"מניעת צלצול:\nיש ללחוץ על לחצן עוצמת הקול כדי להשתמש בקיצור הדרך"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"משך הלחיצה"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"כדי להתאים את מידת הרגישות, צריך לבחור את משך הלחיצה על לחצן ההפעלה."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"לחיצה קצרה"</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index b9a97cb..45beb30 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Pixel Imprint を使用すると、画像を基に指紋モデルが更新されます。お子様の指紋モデルの作成に使用された画像が保存されることはありませんが、指紋モデルはスマートフォンに安全に保存されます。この情報が外部に送信されることは一切なく、処理はすべてスマートフォン上で安全に行われます。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"いつでも [設定] で指紋の画像やモデルを削除したり、指紋認証を OFF にしたりできます。指紋の画像とモデルは、削除するまでデバイスに保存されたままになります。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"あなたとお子様はいつでも [設定] で指紋の画像や指紋モデルを削除したり指紋認証を OFF にしたりできます。指紋の画像と指紋モデルは、削除するまでスマートフォンに保存されたままになります。"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"あなたの指にスマートフォンを近づけられた場合など、意図せずスマートフォンのロックが解除されることがあります。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"あなたの指にスマートフォンを近づけられた場合など、意図せずスマートフォンのロックが解除されることがあります。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"あなたの指にタブレットを近づけられた場合など、意図せずタブレットのロックが解除されることがあります。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"あなたの指にデバイスを近づけられた場合など、意図せずデバイスのロックが解除されることがあります。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"お子様の指にスマートフォンを近づけられた場合など、意図せずお子様のスマートフォンのロックが解除されることがあります。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"最適な結果を得るには、Made For Google 認定の画面保護シートを使用してください。これ以外の画面保護シートを使うと、指紋が認識されない可能性があります。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"最適な結果を得るには、Made For Google 認定の画面保護シートを使用してください。これ以外の画面保護シートを使うと、お子様の指紋が認識されない可能性があります。"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"デバイスの指紋認証センサーの位置を示した図"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"名前"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"再試行"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"削除"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"センサーを指でタッチ"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"指をセンサーに当て、振動したら離します。"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"完了"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"これはセンサーではありません"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"スマートフォンの背面にある指紋センサーを人差し指でタッチしてください。"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"登録を完了できませんでした"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"指紋の登録がタイムアウトになりました。再度お試しください。"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"指紋の設定がタイムアウトしました"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"今すぐもう一度指紋を設定してみるか、後から [設定] で設定してください"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"指紋を登録できませんでした。もう一度試すか、別の指を使用してください。"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"別の指紋を登録"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"次へ"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"スマートフォンのカスタマイズ"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"別のスタイル、壁紙などを試す"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"スクリーン セーバー"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"スクリーンセーバー"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"スクリーン セーバーを使用する"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"充電時またはドッキング時"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"いずれか"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"充電時"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ドッキング時"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"なし"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"OFF"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"スマートフォンのドッキング時やスリープ時の動作を管理するには、スクリーン セーバーを ON にします。"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"起動するタイミング"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"現在のスクリーンセーバー"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"設定"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"明るさを自動調整"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"指を離してスリープ状態から復帰"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"アンビエント表示"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN の設定"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"仕事用 PIN を設定してください"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"パターンを設定"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"セキュリティ強化のため、デバイスをロック解除するためのパターンを設定してください"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"仕事用パターンを設定してください"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"指紋認証にはパスワードが必要です"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"指紋認証にはパターンが必要です"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"緊急アプリ"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"アプリの設定をリセット"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"アプリの設定をリセットしますか？"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"この操作により、次の設定がすべてリセットされます。\n\n"<li>"無効化されているアプリ"</li>\n<li>"無効化されているアプリの通知"</li>\n<li>"特定の操作で使用するデフォルトのアプリ"</li>\n<li>"アプリのバックグラウンド データの制限"</li>\n<li>"権限のすべての制限"</li>\n\n"アプリのデータが失われることはありません。"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"この操作により、次の設定がすべてリセットされます。\n\n"<li>"無効化されているアプリ"</li>\n<li>"無効化されているアプリの通知"</li>\n<li>"特定の操作で使用するデフォルトのアプリ"</li>\n<li>"アプリのバックグラウンド データの制限"</li>\n<li>"権限のすべての制限"</li>\n<li>"バッテリー使用量の設定"</li>\n\n"アプリのデータが失われることはありません。"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"アプリをリセット"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"容量を管理"</string>
     <string name="filter" msgid="9039576690686251462">"フィルタ"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"設定をリセット"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"サイズとテキストの表示設定がリセットされました"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ディスプレイのサイズとテキストをリセットしますか？"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ディスプレイのサイズとテキストの設定をスマートフォンの元の設定にリセットします"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ディスプレイのサイズとテキストの設定をスマートフォンの元の設定にリセットします"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ディスプレイのサイズとテキストの設定をタブレットの元の設定にリセットします"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"リセット"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"週末の予定は？"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ビーチに行こうと思っています。一緒にいかがですか？"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"使用: なし（前回のフル充電以降）"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"使用: なし（過去 24 時間）"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"その他のユーザー"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"バッテリー残量はデバイスの使用状況に基づく推定値です"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"予測される残り時間"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"フル充電まで"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"完全な起動ワードと対話"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"シンプルな音声認識"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"この音声入力サービスを使用すると、常時音声監視を実行し、音声対応アプリの管理をユーザーに代わって行えるようになります。これは<xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>の一部です。このサービスの使用を有効にしますか？"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"デバイス上の認識の設定"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"デバイス上の認識"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"デバイス上の音声認識"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"優先するエンジン"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"エンジンの設定"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"音声の速度と高さ"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"削除"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"このセッションでのアプリとデータはすべて削除されます。"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"削除"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ゲスト（自分）"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ユーザー"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"その他のユーザー"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"ゲストアクティビティを削除"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ゲストモードの終了時にゲストのすべてのアプリとデータを削除します"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"ゲストのアクティビティを削除しますか？"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"今回のゲスト セッションのアプリとデータが今すぐ削除され、今後のゲストのアクティビティはすべて、ゲストモードを終了するたびに削除されます"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"通話をON"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"通話とSMSをON"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ユーザーの削除"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」のすべての通知"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g> のすべての通知"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"通知の自動調整"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">約 <xliff:g id="NUMBER_1">%,d</xliff:g> 件の通知 / 日</item>
-      <item quantity="one">約 <xliff:g id="NUMBER_0">%d</xliff:g> 件の通知 / 日</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">1 日あたりの通知の数: 約 <xliff:g id="NUMBER_1">%,d</xliff:g> 件</item>
+      <item quantity="one">1 日あたりの通知の数: 約 <xliff:g id="NUMBER_0">%d</xliff:g> 件</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">週に約 <xliff:g id="NUMBER_1">%,d</xliff:g> 件の通知</item>
-      <item quantity="one">週に約 <xliff:g id="NUMBER_0">%d</xliff:g> 件の通知</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">1 週間あたりの通知の数: 約 <xliff:g id="NUMBER_1">%,d</xliff:g> 件</item>
+      <item quantity="one">1 週間あたりの通知の数: 約 <xliff:g id="NUMBER_0">%d</xliff:g> 件</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"なし"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"デバイスとアプリの通知"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"何もしない"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"バイブレーション"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"ミュート"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"有効にするには、まず [電源ボタンを長押しする] を電源ボタン メニューに変更します。"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"有効にするには、まず [電源ボタンを長押しする] を電源ボタン メニューに変更します。"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ネットワークの詳細"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"デバイス名がスマートフォンのアプリに表示されます。また、Bluetooth デバイスや Wi-Fi ネットワークに接続したり Wi-Fi アクセス ポイントを設定したりすると、他のユーザーもデバイス名を確認できるようになります。"</string>
     <string name="devices_title" msgid="649715719278562515">"デバイス"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"デバイス コントロール"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"カードとパス"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"カードとパス"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"電源ボタンを長押し"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"長押しすることでアシスタントを呼び出せます"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"長押しすると電源ボタン メニューが表示されます"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"長押しは無効です"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"電源ボタンを長押しする"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"電源ボタンを長押ししてアクセスする"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"電源ボタン メニュー"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"デジタル アシスタント"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"デジタル アシスタントにアクセスする"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"電源ボタン メニューにアクセスする"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"使用するには、まず画面ロックを設定してください"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"長押しでアシスタントを呼び出す"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"電源ボタンを長押ししてアシスタントを呼び出します"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"電源ボタンと緊急通報のメニュー:\n電源ボタンと音量大ボタンを同時に押してください。"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"着信音のミュート:\n音量メニューでショートカットを利用できます。"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"電源ボタン メニュー:\n電源ボタンと音量大ボタンを同時に押します"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"着信音のミュート:\n音量ボタンを押します（ショートカット操作）"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"長押しの長さ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"長さを選択して感度を調整し、電源ボタンを長押しします。"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"短い"</string>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index fa872db..d58ed37 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Pixel Imprint-ის გამოყენებისას თითის ანაბეჭდის მოდელი სურათების მეშვეობით იქმნება. თქვენი ბავშვის თითის ანაბეჭდის მოდელის შესაქმნელად გამოყენებული სურათები არ ინახება, მაგრამ თითის ანაბეჭდის მოდელი უსაფრთხოდ ინახება ტელეფონში. ტელეფონში ყველა დამუშავება ხდება უსაფრთხოდ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"თქვენი თითის ანაბეჭდის სურათებისა და მოდელის წაშლა ან თითის ანაბეჭდით განბლოკვის პარამეტრებიდან გამორთვა ნებისმიერ დროს შეგიძლიათ. თითის ანაბეჭდის სურათები და მოდელები ტელეფონზე შეინახება, სანამ მათ წაშლიდეთ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"თქვენ ან თქვენ ბავშვს შეგიძლიათ თითის ანაბეჭდის სურათების და მოდელის წაშლა ან ანაბეჭდით განბლოკვის ნებისმიერ დროს გამორთვა პარამეტრებიდან. თითის ანაბეჭდის სურათები და მოდელები მანამ ინახება ტელეფონში, სანამ მათ არ წაშლით."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"თქვენი ტელეფონი შეიძლება მაშინაც განიბლოკოს, როცა ამის განზრახვა არ გაქვთ, მაგალითად, მაშინ, თუ ვინმე მასზე თითს მიგაჭერინებთ."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"თქვენი ტელეფონი შეიძლება მაშინაც განიბლოკოს, როცა ამის განზრახვა არ გაქვთ, მაგალითად, მაშინ, თუ ვინმე მასზე თითს მიგაჭერინებთ."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"თქვენი პლანშეტი შეიძლება გაუთვალისწინებლადაც განიბლოკოს, მაგალითად, თუ ვინმე მასზე თითს მიგაჭერინებთ."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"თქვენი ტელეფონი შეიძლება გაუთვალისწინებლადაც განიბლოკოს, მაგალითად, თუ ვინმე მასზე თითს მიგაჭერინებთ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"თქვენი ბავშვის ტელეფონის განბლოკვა მაშინაც შესაძლებელია, როცა ამის განზრახვა არ გაქვთ, მაგალითად, თუ ვინმე მასზე თითს მიგაჭერინებთ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"საუკეთესო შედეგების მისაღებად გამოიყენეთ ეკრანის დამცავი, რომელიც სერტიფიცირებულია Made for Google-ის მიერ. ეკრანის სხვა დამცავებზე თქვენი თითის ანაბეჭდი, შესაძლოა, არ მუშაობდეს."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"საუკეთესო შედეგების მისაღებად გამოიყენეთ ეკრანის დამცავი, რომელიც სერტიფიცირებულია Made for Google-ის მიერ. ეკრანის სხვა დამცავებზე თქვენი ბავშვის თითის ანაბეჭდი, შესაძლოა, არ მუშაობდეს."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ილუსტრაცია მოწყობილობისა და თითის ანაბეჭდის სენსორის ადგილმდებარეობით"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"სახელი"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"კარგი"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ხელახლა ცდა"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"წაშლა"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"შეეხეთ სენსორს"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"დაადეთ თითი სენსორს და ვიბრაციის შეგრძნების შემდეგ აიღეთ"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"შესრულდა"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ეს სენსორი არ არის"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"შეეხეთ თქვენი ტელეფონის უკანა მხარეს მდებარე სენსორს. ამისთვის გამოიყენეთ საჩვენებელი თითი."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"რეგისტრაცია არ დასრულდა"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"თითის ანაბეჭდის რეგისტრაციის დროის ლიმიტი ამოიწურა. ცადეთ ისევ."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"თითის ანაბეჭდის დაყენების დრო ამოიწურა"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ცადეთ ხელახლა ახლავე ან დააყენეთ თითის ანაბეჭდი მოგვიანებით პარამეტრებიდან"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"თითის ანაბეჭდის რეგისტრაცია ვერ მოხერხდა. ცადეთ ისევ ან გამოიყენეთ სხვა თითი."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"კიდევ ერთის დამატება"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"შემდეგი"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"მოირგეთ ტელეფონი"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"ცადეთ სხვადასხვა სტილი, ფონი და ა.შ."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"ეკრანმზოგი"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ეკრანმზოგი"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"გამოიყენეთ ეკრანმზოგი"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"დატენვისას ან სანამ ჩამაგრებულია"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"ორივე შემთხვევაში"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"დატენვისას"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"სანამ ჩამაგრებულია"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"არასოდეს"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"გამორთული"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"დოკ-სადგურთან მიერთების და/ან ძილის რეჟიმზე გადასვლის დროს ტელეფონის ქცევის სამართავად, ჩართეთ ეკრანმზოგი."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"გაშვების დრო"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"ამჟამინდელი ეკრანმზოგი"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"პარამეტრები"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ავტომატური სიკაშკაშე"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"გაღვიძება აწევისას"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ემბიენტური ეკრანი"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"დააყენეთ PIN-კოდი"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"დააყენეთ სამსახურის PIN-კოდი"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"დააყენეთ ნიმუში"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"დამატებითი უსაფრთხოებისთვის დააყენეთ ნიმუში მოწყობილობის განსაბლოკად"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"დააყენეთ სამსახურის ნიმუში"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"თითის ანაბეჭდის გამოსაყენებლად დააყენეთ პაროლი"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"თითის ანაბეჭდისთვის დააყენეთ ნიმუში"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"საგანგებო სიტუაციების აპი"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"აპის პარამეტრების აღდგენა"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"დაბრუნდეს აპის პარამეტრები?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ეს ქმედება გადააყენებს ყველა პარამეტრს, რომელიც ეხება:\n\n"<li>"გათიშულ აპებს"</li>\n<li>"აპების გათიშულ შეტყობინებებს"</li>\n<li>"ქმედებებზე მიმაგრებულ ნაგულისხმევ აპლიკაციებს"</li>\n<li>"ფონურ რეჟიმში მონაცემთა გამოყენების შეზღუდვებს აპებისთვის"</li>\n<li>"ნებისმიერი ნებართვის შეზღუდვას"</li>\n\n"აპების მონაცემები არ დაიკარგება."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ამგვარად გადაყენდება პარამეტრები შემდეგი კომპონენტებისთვის:\n\n"<li>"გათიშული აპები"</li>\n<li>"აპების გათიშული შეტყობინებები"</li>\n<li>"ქმედებებისთვის ნაგულისხმევი აპები"</li>\n<li>"ფონური მონაცემების შეზღუდვები აპებისთვის"</li>\n<li>"ნებისმიერი ნებართვის შეზღუდვა"</li>\n<li>"ბატარეის გამოყენების პარამეტრები"</li>\n\n"აპების მონაცემები არ დაიკარგება."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"აპების საწყისი მდგომარეობის აღდგენა"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"სივრცის მართვა"</string>
     <string name="filter" msgid="9039576690686251462">"გაფილტვრა"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"პარამეტრების გადაყენება"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ეკრანის ზომა და ტექსტის პარამეტრები გადაყენებულია"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"გსურთ ეკრანის ზომის და ტექსტის პარამეტრების გადაყენება?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"თქვენი ეკრანის ზომის და ტექსტის პარამეტრები დაუბრუნდება ტელეფონის თავდაპირველ პარამეტრებს"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"თქვენი ეკრანის ზომის და ტექსტის პარამეტრები დაუბრუნდება ტელეფონის თავდაპირველ პარამეტრებს"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"თქვენი ეკრანის ზომის და ტექსტის პარამეტრები დაუბრუნდება ტაბლეტის თავდაპირველ პარამეტრებს"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"გადაყენება"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"გაქვს რაიმე გეგმა უქმეებისთვის?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"პლაჟზე ვაპირებ წასვლას. ხომ არ წამოხვალ?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"ბოლო სრული დატენვის შემდეგ მოხმარება არ ფიქსირდება"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"ბოლო 24 საათში გამოყენება არ მომხდარა"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"სხვა მომხმარებლები"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ბატარეის მუშაობის დარჩენილი ხანგრძლივობის მიახლოებითი ვარაუდი თქვენი მოწყობილობის მოხმარებას ეყრდნობა"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"სავარაუდო დარჩენილი დრო"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"სრულ დატენვამდე"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"სრული ჯადოსნური სიტყვა და ინტერაქცია"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"მარტივი მეტყველების ტექსტში გადაყვანა"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ხმოვანი შეყვანის სერვისი შეძლებს შეასრულოს ხმის მონიტორინგი, რომელიც მუდამ ჩართულია და აკონტროლოს ხმასთან თავსებადი აპლიკაციები თქვენი სახელით. ის მომდინარეობს <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> აპლიკაციიდან. გსურთ ამ სერვისის ჩათვლა?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"მოწყობილობაზე მომუშავე ამოცნობის პარამეტრები"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"მოწყობილობაზე მომუშავე ამოცნობა"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"მოწყობილობაზე მომუშავე მეტყველების ამოცნობა"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"რჩეული ძრავა"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ძრავის პარამეტრები"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"მეტყველების ტემპი და ტონი"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"წაშლა"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"ამ სესიის ყველა აპი და მონაცემი წაიშლება."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"ამოშლა"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"სტუმარი (თქვენ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"მომხმარებლები"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"სხვა მომხმარებლები"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"სტუმრის აქტივობის წაშლა"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"სტუმრის ყველა აპის და მონაცემის წაშლა სტუმრის რეჟიმიდან გასვლისას"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"გსურთ სტუმრის აქტივობის წაშლა?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"აპები და მონაცემები სტუმრის ამ სესიიდან წაიშლება ახლავე, ხოლო სტუმრის ყველა მომავალი აქტივობა წაიშლება ყოველთვის, როცა სტუმრის რეჟიმიდან გახვალთ"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"სატელეფონო ზარების ჩართვა"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"სატელ. ზარების და SMS-ის ჩართვა"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"მომხმარებლის წაშლა"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"„<xliff:g id="APP_NAME">%1$s</xliff:g>“-ის ყველა შეტყობინება"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g>-ის ყველა შეტყობინება"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"ადაპტაციური შეტყობინებები"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> შეტყობინება დღეში</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> შეტყობინება დღეში</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">დაახლოებით <xliff:g id="NUMBER_1">%,d</xliff:g> შეტყობინება დღეში</item>
+      <item quantity="one">დაახლოებით <xliff:g id="NUMBER_0">%d</xliff:g> შეტყობინება დღეში</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> შეტყობინება კვირაში</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> შეტყობინება კვირაში</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">დაახლოებით <xliff:g id="NUMBER_1">%,d</xliff:g> შეტყობინება კვირაში</item>
+      <item quantity="one">დაახლოებით <xliff:g id="NUMBER_0">%d</xliff:g> შეტყობინება კვირაში</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"არასოდეს"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"მოწყობილობისა და აპის შეტყობინებები"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"არ შეიცვალოს არაფერი"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"ვიბრაცია"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"დადუმება"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ჩასართავად ჯერ შეცვალეთ „ხანგრძლივად დააჭირეთ ჩართვის ღილაკს“ ჩართვის მენიუთი."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ჩასართავად ჯერ შეცვალეთ „ხანგრძლივად დააჭირეთ ჩართვის ღილაკს“ ჩართვის მენიუთი."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ქსელის დეტალები"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"თქვენი მოწყობილობის სახელი ხილულია თქვენს ტელეფონზე არსებული აპებისთვის. მის დანახვას შეძლებენ სხვა პირებიც, როცა Bluetooth მოწყობილობებს ან Wi-Fi ქსელს დაუკავშირდებით, ან Wi-Fi უსადენო ქსელს დააყენებთ."</string>
     <string name="devices_title" msgid="649715719278562515">"მოწყობილობები"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"მოწყობილობის მართვის საშუალებები"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"ბარათები და საშვები"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"ბარათები და საშვები"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"ხანგრძლივად დააჭირეთ ჩართვის ღილაკს"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"ხანგრძლივად დააჭირეთ ასისტენტის გამოსაძახებლად"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"ხანგრძლივად დააჭირეთ ჩართვის მენიუს სანახავად"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"ხანგრძლივად დაჭერა გათიშულია"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"ხანგრძლივად დააჭირეთ ჩართვის ღილაკს"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"წვდომისათვის ხანგრძლივად დააჭირეთ ჩართვის ღილაკს"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"ჩართვის მენიუ"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ციფრული ასისტენტი"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"მიწვდით ციფრულ ასისტენტს"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"მიწვდით ჩართვის მენიუს"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"გამოსაყენებლად, ჯერ დააყენეთ ეკრანის ბლოკი"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"ხანგრძლივად დაჭერა ასისტენტის გამოსაძახებლად"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"ასისტენტის გაშვება ჩართვის ღილაკზე ხანგრძლივად დაჭერით"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"ჩართვის და საგანგებო მენიუ:\nერთდროულად დააჭირეთ ჩართვას და ხმის აწევას."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"დარეკვის თავიდან აცილება:\nმალსახმობი ხმის სიმძლავრის მენიუშია."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"ჩართვის მენიუ:\nერთდროულად დააჭირეთ ჩართვის და ხმის აწევის ღილაკებს"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"თავიდან აიცილეთ რეკვა:\nდააჭირეთ ხმის ღილაკს მალსახმობისთვის"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"დაჭერის ხანგრძლივობა"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"დაარეგულირეთ მგრძნობიარობა იმის არჩევით, თუ რამდენი ხნით უნდა გეჭიროთ ჩართვის ღილაკი"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"ხანმოკლე"</string>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index 4f1d448..cfd12cf 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Pixel Imprint функциясын қолданған кездегі суреттер саусақ ізінің үлгісін жаңарту үшін пайдаланылады. Балаңыздың саусақ ізінің үлгісін жасау үшін қолданылған суреттер ешқашан сақталмайды, бірақ саусақ ізінің үлгісі телефонда қауіпсіз түрде сақталады және басқа ешқайда жіберілмейді. Барлық өңдеу жұмыстары телефонда ғана орындалады."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Кез келген уақытта \"Параметрлер\" бөлімінен саусақ ізінің суреттері мен үлгісін жоя немесе Саусақ ізімен ашу функциясын өшіре аласыз. Саусақ ізінің суреттері мен үлгілері жойылмайынша, телефоныңызда сақталады."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Балаңыз екеуіңіз кез келген уақытта \"Параметрлер\" бөлімінен оның саусақ ізінің суреттері мен үлгісін жоя аласыздар. Саусақ ізімен ашу функциясын өшіріп қоюға да болады. Суреттер мен үлгілер өзіңіз жойғанша сақталып тұрады."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Телефон құлпын ашқыңыз келмесе де, біреу телефоныңызды саусағыңызға тақап тұрған кезде, ол ашылып кетуі мүмкін."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Телефон құлпын ашқыңыз келмесе де, біреу телефоныңызды саусағыңызға тақап тұрған кезде, ол ашылып кетуі мүмкін."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Планшеттің құлпын ашқыңыз келмесе де, біреу оны саусағыңызға тақап тұрған кезде, ол ашылып кетуі мүмкін."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Құрылғының құлпын ашқыңыз келмесе де, біреу оны саусағыңызға тақап тұрған кезде, ол ашылып кетуі мүмкін."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Балаңыз телефон құлпын ашқысы келмесе де, біреу телефонды оның саусағына тақап тұрса, ол ашылып кетуі мүмкін."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Ең жақсы нәтижелер алу үшін \"Google-ға арнап жасалған\" сертификаты бар экран қорғанышын пайдаланыңыз. Басқа экран қорғаныштары пайдаланылса, саусақ ізі оқылмай қалуы мүмкін."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Ең жақсы нәтижелер алу үшін \"Google-ға арнап жасалған\" сертификаты бар экран қорғанышын пайдаланыңыз. Басқа экран қорғаныштары пайдаланылса, балаңыздың саусақ ізі оқылмай қалуы мүмкін."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Құрылғы мен саусақ таңбасы сенсорының орны бар сурет"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Атауы"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Жарайды"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Қайталау"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Жою"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Сканерді түртіңіз"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Саусақты сканерге қойып, дірілді сезгеннен кейін көтеріңіз."</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Дайын"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Бұл сенсор емес"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Телефонның артындағы датчикті сұқ саусақпен түртіңіз."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Тіркеу аяқталмады"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Саусақ ізін тіркеу уақыты бітті. Әрекетті қайталаңыз."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Саусақ ізін реттеу уақыты өтіп кетті."</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Қазір қайталап көріңіз немесе саусақ ізін кейін \"Параметрлер\" бөлімінен реттеңіз."</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Саусақ ізін тіркеу нәтиже бермеді. Әрекетті қайталаңыз немесе басқа саусақты пайдаланыңыз."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Тағы біреуін енгізу"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Келесі"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Телефонды реттеу"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Түрлі стильдерді, тұсқағаздарды, т.б. пайдаланып көріңіз."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Скринсейвер"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"скринсейвер"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Скринсейверді пайдалану"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Зарядтау кезінде немесе қондыру станциясында"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Екеуі де"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Зарядтау кезінде"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Қондыру станциясында"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Ешқашан"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Өшірулі"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Телефон қондырылған және/немесе ұйықтаған кездегі процесті бақылау үшін скринсейверді қосыңыз."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Іске қосылатын кезі"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Қазіргі скринсейвер"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Параметрлер"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Aвтоматтық жарықтық"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Ояту үшін көтеру"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Экранды автоматты қосу"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN кодын орнатыңыз"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Жұмыс PIN кодын орнатыңыз"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Өрнек орнатыңыз"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Қауіпсіздікті күшейту үшін құрылғының құлпын ашатын өрнек орнатыңыз."</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Жұмыс өрнегін орнатыңыз"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Саусақ ізін пайдалану үшін құпия сөз орнатыңыз"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Саусақ ізін пайдалану үшін өрнек орнатыңыз"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Төтенше жағдай қолданбасы"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Қолданба параметрлерін бастапқы күйіне қайтару"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Қолданба параметрлері бастапқы күйіне қайтарылсын ба?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Келесілердің параметрлері бастапқы күйіне қайтарылады:\n\n"<li>"өшірілген қолданбалар;"</li>\n<li>"қолданбалардың өшірілген хабарландырулары;"</li>\n<li>"әрекеттерге арналған әдепкі қолданбалар;"</li>\n<li>"фондық режимдегі дерек тасымалын шектеу;"</li>\n<li>"барлық рұқсат шектеулері."</li>\n\n"Қолданба деректері жоғалмайды."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Төмендегі реттеулер бастапқы күйге қайтарылады:\n\n"<li>"өшірілген қолданбалар;"</li>\n<li>"өшірілген қолданба ескертулері;"</li>\n<li>"әрекеттерге арналған әдепкі қолданбалар;"</li>\n<li>"қолданбалар үшін фондық режимдегі дерек тасымалын шектеу;"</li>\n<li>"қандай да бір рұқсат шектеулері;"</li>\n<li>"батарея шығыны параметрлері."</li>\n\n"Қолданба деректері жоғалмайды."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Бастапқы күйге қайтару"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Орынды басқару"</string>
     <string name="filter" msgid="9039576690686251462">"Сүзгі"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Бастапқы күйге қайтару"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Экрандағы кескін өлшемі мен мәтін параметрлері бастапқы күйге қайтарылды."</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Масштаб пен мәтін өлшемі бастапқы күйге қайтарылсын ба?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Масштаб пен мәтін параметрлері телефонның бастапқы параметрлеріне қайтарылады."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Масштаб пен мәтін параметрлері телефонның бастапқы параметрлеріне қайтарылады."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Масштаб пен мәтін параметрлері планшеттің бастапқы параметрлеріне қайтарылады."</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Бастапқы күйге қайтару"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Демалыс күндеріне жоспар бар ма?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Жағажайға барамыз. Барасың ба?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Соңғы толық зарядталғаннан бері пайдаланылмады."</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Соңғы 24 сағатта пайдаланылмады."</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Басқа пайдаланушылар"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Қалған батарея зарядының деңгейі құрылғының пайдаланылуы негізінде анықталады"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Қалған болжалды уақыт"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Толық зарядталғанға дейін"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Толықтай дауыспен басқару"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Тілді мәтінге түрлендіру"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Бұл дауыспен енгізу қызметі дауысты бақылап, осындай қызметті қолдайтын қолданбаларды сіздің атыңыздан басқарады. Оның шыққан жері — <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Осы мүмкіндікті қосу керек пе?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Құрылғыда тану параметрлері"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Құрылғыда тану"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Құрылғыда сөз тану"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Таңдалған жүйе"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Жүйе параметрлері"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Сөйлеу жылдамдығы және екпін"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Жою"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Осы сеанстағы барлық қолданбалар мен деректер жойылады."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Алып тастау"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Қонақ (сіз)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Пайдаланушылар"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Басқа пайдаланушылар"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Қонақ әрекетін жою"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Қонақ режимінен шыққан кезде, барлық қонақ қолданбасы мен дерегін жою"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Қонақ әрекетін жою керек пе?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Осы қонақ сеансындағы қолданбалар мен деректер қазір жойылады және қонақ режимінен шыққан сайын қонақтың барлық әрекеті өшіп отырады."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Телефон қоңырауларын қосу"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Телефон қоңырауларын және SMS қосу"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Пайдаланушыны жою"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Барлық \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" хабарландырулары"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Барлық <xliff:g id="APP_NAME">%1$s</xliff:g> хабарландырулары"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Бейімделетін хабарландырулар"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">Күніне ~<xliff:g id="NUMBER_1">%,d</xliff:g> хабарландыру</item>
-      <item quantity="one">Күніне ~<xliff:g id="NUMBER_0">%d</xliff:g> хабарландыру</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Күніне шамамен <xliff:g id="NUMBER_1">%,d</xliff:g> хабарландыру</item>
+      <item quantity="one">Күніне шамамен <xliff:g id="NUMBER_0">%d</xliff:g> хабарландыру</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">Аптасына ~<xliff:g id="NUMBER_1">%,d</xliff:g> хабарландыру</item>
-      <item quantity="one">Аптасына ~<xliff:g id="NUMBER_0">%d</xliff:g> хабарландыру</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Аптасына шамамен <xliff:g id="NUMBER_1">%,d</xliff:g> хабарландыру</item>
+      <item quantity="one">Аптасына шамамен <xliff:g id="NUMBER_0">%d</xliff:g> хабарландыру</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Ешқашан"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Құрылғы мен қолданба хабарландырулары"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ештеңе істемеу"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Діріл"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Дыбысын өшіру"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Қосу үшін алдымен қуат мәзірінен \"Қуат түймесін басып тұру\" пәрменін өзгертіңіз."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Қосу үшін алдымен \"Қуат түймесін басып тұру\" параметріне \"Қуат мәзірі\" мәнін орнатыңыз."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Желі мәліметі"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Құрылғыңыздың аты телефоныңыздағы қолданбаларға көрінеді. Сонымен қатар Bluetooth құрылғыларына қосылғанда, Wi-Fi желісіне қосылғанда немесе Wi-Fi хотспотын орнатқанда, басқа адамдарға көрінуі мүмкін."</string>
     <string name="devices_title" msgid="649715719278562515">"Құрылғылар"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"құрылғыны басқару элементтері"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Карталар мен жол жүру билеттері"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"карталар мен жол жүру билеттері"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Қуат түймесін басып тұру"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant-ті ашу үшін басып тұру"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Қуат мәзірін ашу үшін басып тұру"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Басып тұру өшірулі"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Қуат түймесін басып тұру"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Қуат мәзіріне кіру үшін қуат түймесін басып тұрыңыз"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Қуат мәзірі"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Цифрлық көмекші"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Цифрлық көмекшіге кіру"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Қуат мәзіріне кіру"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Пайдалану үшін алдымен экран құлпын орнатыңыз."</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant-ті іске қосу үшін басып тұру"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Assistant-ті қуат түймесін басып тұру арқылы іске қосыңыз."</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Қуат және төтенше жағдай мәзірі:\nҚуат түймесі мен дыбысты арттыру түймесін бірге басыңыз."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Қоңырау дыбысын өшіру:\nДыбыс деңгейі мәзірінде таңбаша бар."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Қуат мәзірі:\nқуат пен дыбысты арттыру түймесін бір уақытта басыңыз."</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Қоңырау дыбысын өшіру:\n жылдам пәрменді пайдалану үшін дыбыс деңгейі түймесін басыңыз."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Басып тұру ұзақтығы"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Қуат түймесін қанша басып тұру қажеттігін таңдау арқылы сезгіштікті реттеңіз."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Қысқа"</string>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index fd85f2f..becade1 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"នៅពេលគាត់ប្រើ Pixel Imprint រូបភាពត្រូវ​បានប្រើ ដើម្បីធ្វើបច្ចុប្បន្នភាព​គំរូស្នាមម្រាមដៃរបស់គាត់។ រូបភាព​ដែលប្រើ​សម្រាប់បង្កើត​គំរូស្នាមម្រាមដៃ​របស់កូនអ្នក​មិនត្រូវបាន​រក្សាទុកទេ ប៉ុន្តែ​គំរូស្នាមម្រាមដៃនោះ​ត្រូវបានរក្សាទុក​ដោយសុវត្ថិភាព​នៅលើ​ទូរសព្ទ និង​មិនចាកចេញ​ពីទូរសព្ទឡើយ​។ ការដំណើរការ​ទាំងអស់​ប្រព្រឹត្តទៅ​ដោយសុវត្ថិភាព​នៅលើ​ទូរសព្ទ។"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"អ្នកអាច​លុបរូបភាព​ស្នាមម្រាមដៃ និងគំរូ​របស់អ្នក ឬបិទ​ការដោះសោ​ដោយប្រើស្នាមម្រាមដៃ​បានគ្រប់ពេល​នៅក្នុង​ការកំណត់។ រូបភាពស្នាមម្រាមដៃ និងគំរូត្រូវបានរក្សាទុកនៅលើទូរសព្ទ រហូតទាល់តែ​អ្នកលុបវា។"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"អ្នក និងកូនរបស់អ្នកអាច​លុបគំរូ និងរូបភាព​ស្នាមម្រាមដៃរបស់គាត់ ឬបិទ​ការដោះសោ​ដោយប្រើស្នាមម្រាមដៃ​បានគ្រប់ពេល​នៅក្នុង​ការកំណត់។ គំរូ និងរូបភាពស្នាមម្រាមដៃត្រូវបានរក្សាទុកនៅលើទូរសព្ទ រហូតទាល់តែគំរូ និងរូបភាព​ស្នាមម្រាមដៃទាំងនោះត្រូវបានលុប។"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"ទូរសព្ទ​របស់អ្នក​អាចត្រូវបាន​ដោះសោ នៅពេលដែល​អ្នកមិនមានបំណងដោះសោ​ ដូចជា​ប្រសិនបើ​នរណាម្នាក់​លើកវាមកប៉ះនឹង​ម្រាមដៃ​របស់អ្នក​ជាដើម។"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"ទូរសព្ទ​របស់អ្នក​អាចត្រូវបាន​ដោះសោ នៅពេលដែល​អ្នកមិនមានបំណងដោះសោ​ ដូចជា​ប្រសិនបើ​នរណាម្នាក់​លើកវាមកប៉ះនឹង​ម្រាមដៃ​របស់អ្នក​ជាដើម។"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"ថេប្លេត​​របស់អ្នក​អាចត្រូវបាន​ដោះសោ នៅពេលដែល​អ្នកមិនមានបំណងដោះសោ​ ដូចជា​ប្រសិនបើ​នរណាម្នាក់​លើកវាមកប៉ះនឹង​ម្រាមដៃ​របស់អ្នក​ជាដើម។"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"ឧបករណ៍​របស់អ្នក​អាចត្រូវបាន​ដោះសោ នៅពេលដែល​អ្នកមិនមានបំណងដោះសោ​ ដូចជា​ប្រសិនបើ​នរណាម្នាក់​លើកវាមកប៉ះនឹង​ម្រាមដៃ​របស់អ្នក​ជាដើម។"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"ទូរសព្ទ​របស់កូនអ្នក​អាចត្រូវបាន​ដោះសោ ទោះបីជា​គាត់មិនមានបំណងដោះសោក៏ដោយដូចជា ប្រសិនបើ​នរណាម្នាក់​លើកវាមកប៉ះនឹង​ម្រាមដៃ​របស់គាត់​ជាដើម។"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ដើម្បីទទួលបាន​លទ្ធផល​ល្អបំផុត សូមប្រើកញ្ចក់​ការពារ​អេក្រង់​ដែលបានទទួលស្គាល់​ពី Made for Google។ តាមរយៈ​កញ្ចក់​ការពារ​អេក្រង់ផ្សេងទៀត ស្នាមម្រាមដៃរបស់អ្នកអាចមិនដំណើរការ។"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ដើម្បីទទួលបាន​លទ្ធផល​ល្អបំផុត សូមប្រើកញ្ចក់​ការពារ​អេក្រង់​ដែលបានទទួលស្គាល់​ពី Made for Google។ តាមរយៈ​កញ្ចក់​ការពារ​អេក្រង់ផ្សេងទៀត ស្នាមម្រាមដៃរបស់អ្នកអាចមិនដំណើរការ។"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"រូបភាពបង្ហាញទីតាំងឧបករណ៍ចាប់ស្នាមម្រាមដៃ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"ឈ្មោះ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"យល់ព្រម"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ព្យាយាមម្ដងទៀត"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"លុប"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"ប៉ះឧបករណ៍ចាប់ស្នាមម្រាមដៃ"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"ដាក់ម្រាមដៃរបស់អ្នកនៅលើឧបករណ៍ចាប់សញ្ញា ហើយលើកវាឡើងបន្ទាប់ពីអ្នកមានអារម្មណ៍ថាវាញ័រហើយ"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"រួចរាល់"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"អូ នោះមិនមែនជាឧបករណ៍ចាប់សញ្ញាទេ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"ប៉ះឧបករណ៍ចាប់ស្នាមម្រាមដៃនៅផ្នែកខាងក្រោយនៃទូរសព្ទរបស់អ្នក។ សូមប្រើម្រាមដៃចង្អុលរបស់អ្នក។"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ការបញ្ចូលស្នាមម្រាមដៃមិនបាន​បញ្ចប់​ទេ"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"រយៈពេលបញ្ចូលស្នាមម្រាមដៃបានអស់ពេលហើយ សូមព្យាយាមម្តងទៀត។"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"អស់ម៉ោងក្នុងកា​ររៀបចំ​ស្នាមម្រាមដៃ"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"សាកល្បង​ម្ដ​ងទៀត​ឥឡូវ​នេះ ឬ​រៀបចំ​ស្នាមម្រាមដៃ​របស់​អ្នក​នៅ​ពេល​ក្រោយ​នៅ​ក្នុងការ​កំណត់"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ការបញ្ចូលស្នាមម្រាមដៃមិនដំណើរការទេ សូមព្យាយាមម្តងទៀត ឬប្រើម្រាមដៃផ្សេងពីនេះ។"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"បញ្ចូលមួយទៀត"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"បន្ទាប់"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"កំណត់​ទូរសព្ទ​របស់អ្នក​តាមបំណង"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"សាកប្រើ​រចនាប័ទ្ម ផ្ទាំងរូបភាពផ្សេងៗគ្នា និង​អ្វីៗជាច្រើនទៀត"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"ធាតុរក្សាអេក្រង់"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ធាតុ​រក្សា​អេក្រង់"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"ប្រើធាតុ​រក្សា​អេក្រង់"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ពេលសាកថ្ម ឬភ្ជាប់"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"ទាំង​ពីរ"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ពេលសាកថ្ម"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ពេល​​ភ្ជាប់"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"កុំឲ្យសោះ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"បិទ"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ដើម្បីគ្រប់គ្រងអ្វីដែលកើតឡើង នៅពេលទូរស័ព្ទត្រូវបានដោត និង/ឬកំពុងដេក សូមបើកធាតុរក្សាអេក្រង់។"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"ពេលដែលត្រូវចាប់ផ្តើម"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"ធាតុ​រក្សា​អេក្រង់​បច្ចុប្បន្ន"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ការ​កំណត់"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ពន្លឺ​ស្វ័យ​ប្រវត្តិ"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"លើក​ដៃ​ដើម្បី​ឲ្យ​ភ្ញាក់"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"មុខងារអេក្រង់សម្ងំ"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"កំណត់កូដ PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"កំណត់​កូដ PIN ការងារ"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"កំណត់លំនាំ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ដើម្បីទទួលបាន​សុវត្ថិភាពបន្ថែម សូមកំណត់​លំនាំ ដើម្បីដោះសោ​ឧបករណ៍"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"កំណត់​លំនាំ​ការងារ"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ដើម្បី​ប្រើប្រាស់​ស្នាម​ម្រាមដៃ សូម​កំណត់​ពាក្យសម្ងាត់"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ដើម្បី​ប្រើស្នាម​ម្រាមដៃ សូម​កំណត់​លំនាំ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"កម្មវិធីអាសន្ន"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"កំណត់​ចំណូល​ចិត្ត​កម្មវិធី​ឡើងវិញ"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"កំណត់​ចំណូលចិត្ត​កម្មវិធី​ឡើងវិញ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ការធ្វើបែបនេះ​នឹងកំណត់​ចំណូលចិត្ត​ទាំងអស់​ឡើងវិញសម្រាប់៖\n\n"<li>"កម្មវិធី​ដែលបានបិទ"</li>\n<li>"ការជូនដំណឹង​កម្មវិធីដែលបានបិទ"</li>\n<li>"កម្មវិធីលំនាំដើម​សម្រាប់​សកម្មភាពផ្សេងៗ"</li>\n<li>"ការដាក់កំហិតទិន្នន័យផ្ទៃខាងក្រោយ​លើកម្មវិធីផ្សេងៗ"</li>\n<li>"ការដាក់កំហិត​លើការអនុញ្ញាត​ទាំងឡាយ"</li>\n\n"អ្នកនឹងមិន​បាត់បង់ទិន្នន័យ​កម្មវិធីណាមួយឡើយ។"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ការធ្វើបែបនេះ​នឹង​កំណត់​ចំណូលចិត្ត​ទាំងអស់​ឡើងវិញ​សម្រាប់៖\n\n"<li>"កម្មវិធី​ដែលបាន​បិទ"</li>\n<li>"ការ​ជូនដំណឹងអំពី​កម្មវិធី​ដែល​បានបិទ"</li>\n<li>"កម្មវិធី​លំនាំដើម​សម្រាប់​សកម្មភាព"</li>\n<li>"ការ​រឹតបន្តឹង​ទិន្នន័យ​ផ្ទៃខាងក្រោយ​សម្រាប់​កម្មវិធី"</li>\n<li>"ការរឹតបន្តឹង​ការអនុញ្ញាត"</li>\n<li>"ការកំណត់ការប្រើប្រាស់ថ្ម"</li>\n\n"អ្នក​នឹង​មិន​បាត់បង់​ទិន្នន័យ​កម្មវិធីទេ។"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"កំណត់​កម្មវិធី​ឡើងវិញ"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"គ្រប់គ្រង​ទំហំ"</string>
     <string name="filter" msgid="9039576690686251462">"តម្រង"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"កំណត់ការកំណត់ឡើងវិញ"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ការកំណត់អក្សរ និងទំហំនៃការបង្ហាញត្រូវបានកំណត់ឡើងវិញ"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"កំណត់អក្សរ និងទំហំបង្ហាញឡើងវិញឬ?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ចំណូលចិត្តអក្សរ និងទំហំបង្ហាញរបស់អ្នកនឹងកំណត់ឡើងវិញទៅការកំណត់ដើមរបស់ទូរសព្ទ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ចំណូលចិត្តអក្សរ និងទំហំបង្ហាញរបស់អ្នកនឹងកំណត់ឡើងវិញទៅការកំណត់ដើមរបស់ទូរសព្ទ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ចំណូលចិត្តអក្សរ និងទំហំបង្ហាញរបស់អ្នកនឹងកំណត់ឡើងវិញទៅការកំណត់ដើមរបស់ថេប្លេត"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"កំណត់​ឡើងវិញ"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"មានគម្រោងចុងសប្ដាហ៍ដែរទេ?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ទៅលេងឆ្នេរសមុទ្រ។ ចង់ទៅដែរទេ?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"មិនមាន​ការប្រើប្រាស់ទេ​តាំងពី​សាកថ្មពេញ​លើកចុងក្រោយ"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"មិនមាន​ការប្រើប្រាស់ទេ​ក្នុងរយៈពេល 24 ម៉ោងចុងក្រោយ"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"អ្នក​ប្រើ​ប្រាស់ផ្សេងទៀត"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ការ​ប៉ាន់ស្មាន​អំពី​កម្រិត​ថ្ម​ដែល​នៅសល់​គឺ​ផ្អែក​លើ​ការ​ប្រើប្រាស់​ឧបករណ៍​របស់​អ្នក"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"រយៈពេល​នៅ​សល់​ប៉ាន់​ស្មាន"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"ទៀតទើបសាកថ្មពេញ"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"hotword ពេញលេញ និង​អន្តរកម្ម"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"ការ​និយាយ​ទៅ​ជា​អត្ថបទ​សាមញ្ញ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"សេវាកម្ម​បញ្ចូល​សំឡេង​នេះ​នឹង​អាច​អនុវត្ត​ការ​តាមដាន​សំឡេង​ជា​និច្ច និង​ពិនិត្យ​សំឡេង​ដែល​បាន​បើក​កម្មវិធី​ក្នុង​នាម​អ្នក។​ វា​បាន​មកពី​កម្មវិធី <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ។ បើក​ការ​ប្រើ​សេវាកម្ម​នេះ?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"ការ​កំណត់ការសម្គាល់នៅលើ​ឧបករណ៍"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"ការសម្គាល់នៅលើ​ឧបករណ៍"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"ការសម្គាល់ការនិយាយនៅលើ​ឧបករណ៍"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"ម៉ាស៊ីន​ដែល​ចង់ប្រើ"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ការកំណត់​ម៉ាស៊ីន"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"ល្បឿន​នៃ​ការនិយាយ និង​កម្រិត​សំឡេង"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"លុប"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"កម្មវិធី និងទិន្នន័យ​ទាំងអស់​ក្នុង​វគ្គ​នេះ​នឹង​ត្រូវ​លុប។"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"ដកចេញ"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ភ្ញៀវ (អ្នក)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"អ្នកប្រើប្រាស់"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"អ្នក​ប្រើ​ប្រាស់ផ្សេងទៀត"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"លុបសកម្មភាពភ្ញៀវ"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"លុបទិន្នន័យ និងកម្មវិធីភ្ញៀវទាំងអស់ នៅពេលចាកចេញពីមុខងារភ្ញៀវ"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"លុបសកម្មភាពភ្ញៀវឬ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"កម្មវិធី និងទិន្នន័យពីវគ្គភ្ញៀវនេះនឹងត្រូវបានលុបឥឡូវនេះ ហើយសកម្មភាពភ្ញៀវនាពេលអនាគតទាំងអស់នឹងត្រូវបានលុប នៅរាល់ពេលដែលអ្នកចាកចេញពីមុខងារភ្ញៀវ"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"បើកការហៅទូរសព្ទ"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"បើកការហៅទូរសព្ទ និងសារ SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"លុប​អ្នក​ប្រើប្រាស់"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"ការជូនដំណឹង​ទាំងអស់ពី \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"ការជូនដំណឹង​ទាំងអស់ពី​<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"ការជូនដំណឹង​ដែល​មានភាព​បត់បែន"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">ការជូន​ដំណឹង ~<xliff:g id="NUMBER_1">%,d</xliff:g> ក្នុងមួយថ្ងៃ</item>
-      <item quantity="one">ការជូន​ដំណឹង ~<xliff:g id="NUMBER_0">%d</xliff:g> ក្នុងមួយថ្ងៃ</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">ការជូនដំណឹងប្រហែលជា <xliff:g id="NUMBER_1">%,d</xliff:g> ក្នុងមួយថ្ងៃ</item>
+      <item quantity="one">ការជូនដំណឹងប្រហែលជា <xliff:g id="NUMBER_0">%d</xliff:g> ក្នុងមួយថ្ងៃ</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">ការ​ជូនដំណឹង ~<xliff:g id="NUMBER_1">%,d</xliff:g> ក្នុងមួយសប្ដាហ៍</item>
-      <item quantity="one">ការ​ជូនដំណឹង ~<xliff:g id="NUMBER_0">%d</xliff:g> ក្នុងមួយសប្ដាហ៍</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">ការជូនដំណឹងប្រហែលជា <xliff:g id="NUMBER_1">%,d</xliff:g> ក្នុងមួយសប្ដាហ៍</item>
+      <item quantity="one">ការជូនដំណឹងប្រហែលជា <xliff:g id="NUMBER_0">%d</xliff:g> ក្នុងមួយសប្ដាហ៍</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"កុំឱ្យសោះ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ការជូនដំណឹង​ឧបករណ៍ និងកម្មវិធី"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"មិន​ធ្វើ​អ្វី​សោះ"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"ញ័រ"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"បិទសំឡេង"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ដើម្បី​បើក សូមធ្វើការ​ផ្លាស់ប្ដូរ \"ចុចប៊ូតុង​ថាមពល​ឱ្យជាប់\" ចំពោះ​ម៉ឺនុយថាមពល​ជាមុនសិន។"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ដើម្បី​បើក សូមធ្វើការ​ផ្លាស់ប្ដូរ \"ចុចប៊ូតុង​ថាមពល​ឱ្យជាប់\" ចំពោះ​ម៉ឺនុយថាមពល​ជាមុនសិន។"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ព័ត៌មាន​បណ្ដាញ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"ឈ្មោះ​ឧបករណ៍​របស់អ្នក​អាច​ឱ្យ​កម្មវិធី​នៅលើ​ទូរសព្ទ​របស់អ្នក​មើលឃើញ។ វាក៏​អាចឱ្យ​អ្នកដទៃ​មើលឃើញ​ផងដែរ នៅពេលអ្នក​ភ្ជាប់​ជាមួយឧបករណ៍​ប៊្លូធូស បណ្ដាញ Wi-Fi ឬរៀបចំ ហតស្ប៉ត Wi-Fi។"</string>
     <string name="devices_title" msgid="649715719278562515">"ឧបករណ៍"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ផ្ទាំងគ្រប់គ្រង​ឧបករណ៍"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"កាត និង​សំបុត្រ"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"បណ្ណឥណទាន និង​សំបុត្រធ្វើដំណើរ"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"ចុចប៊ូតុង​ថាមពលឱ្យជាប់"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"ចុចឱ្យជាប់​សម្រាប់ជំនួយការ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"ចុចឱ្យជាប់សម្រាប់​ម៉ឺនុយថាមពល"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"បានបិទការចុចឱ្យជាប់"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"ចុចប៊ូតុងថាមពលឱ្យជាប់"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ចុចប៊ូតុងថាមពលឱ្យជាប់ ដើម្បីចូលប្រើ"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"ម៉ឺនុយ​ថាមពល"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ជំនួយការ​ឌីជីថល"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ចូលប្រើជំនួយការឌីជីថល"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"ចូលប្រើម៉ឺនុយ​ថាមពល"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ដើម្បីប្រើ សូមកំណត់​ការចាក់សោអេក្រង់​ជាមុនសិន"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"ចុចឱ្យជាប់ ដើម្បីប្រើជំនួយការ"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"បើកដំណើរការ​ជំនួយការ​ដោយចុច​ប៊ូតុងថាមពលឱ្យជាប់"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"ម៉ឺនុយថាមពល និងពេលមានអាសន្ន៖\nចុចប៊ូតុងថាមពល និងដំឡើងកម្រិត​សំឡេងក្នុងពេលតែមួយ។"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"ទប់ស្កាត់ការរោទ៍៖\nអាចប្រើផ្លូវកាត់បាន​នៅក្នុងម៉ឺនុយ​កម្រិតសំឡេង។"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"ម៉ឺនុយ​ថាមពល៖\nចុច​ប៊ូតុង​ថាមពល និង​ប៊ូតុង​ដំឡើង​កម្រិត​សំឡេង​ដំណាលគ្នា"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"ទប់ស្កាត់ការរោទ៍៖\nចុចប៊ូតុង​កម្រិត​សំឡេងសម្រាប់ផ្លូវកាត់"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"រយៈពេល​ចុចឱ្យជាប់"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"កែតម្រូវកម្រិតរំញោចដោយជ្រើសរើស​រយៈពេលដែលត្រូវ​ចុចប៊ូតុងថាមពលឱ្យជាប់"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"ខ្លី"</string>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index d322e3f..43b7efd 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"ಅವರು Pixel Imprint ಬಳಸುವಾಗ, ಅವರ ಫಿಂಗರ್‌ ಪ್ರಿಂಟ್ ಮಾಡೆಲ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಲು ಚಿತ್ರಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ನಿಮ್ಮ ಮಗುವಿನ ಫಿಂಗರ್‌ ಪ್ರಿಂಟ್ ಅನ್ನು ರಚಿಸಲು ಬಳಸುವ ಚಿತ್ರಗಳನ್ನು ಎಂದಿಗೂ ಸಂಗ್ರಹಿಸಲಾಗುವುದಿಲ್ಲ, ಆದರೆ ಫಿಂಗರ್‌ ಪ್ರಿಂಟ್ ಮಾಡೆಲ್ ಅನ್ನು ಫೋನ್‌ನಲ್ಲಿ ಸುರಕ್ಷಿತವಾಗಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಅದು ಫೋನ್‌ನಿಂದ ಹೊರಹೋಗುವುದಿಲ್ಲ. ಎಲ್ಲಾ ಪ್ರಕ್ರಿಯೆಗಳು ಫೋನ್‌ನಲ್ಲಿ ಸುರಕ್ಷಿತವಾಗಿ ಸಂಭವಿಸುತ್ತವೆ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"ನಿಮ್ಮ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಚಿತ್ರಗಳು ಮತ್ತು ಮಾಡೆಲ್ ಅನ್ನು ನೀವು ಅಳಿಸಬಹುದು ಅಥವಾ ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ಯಾವಾಗ ಬೇಕಾದರೂ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಅನ್‌ಲಾಕ್ ಅನ್ನು ಆಫ್ ಮಾಡಬಹುದು. ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಚಿತ್ರಗಳು ಮತ್ತು ಮಾಡೆಲ್‌ಗಳನ್ನು ನೀವು ಅಳಿಸುವವರೆಗೆ, ಅವುಗಳನ್ನು ಫೋನ್‌ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ಯಾವಾಗ ಬೇಕಾದರೂ ಅವರ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಚಿತ್ರಗಳು ಮತ್ತು ಮಾಡೆಲ್ ಅನ್ನು ನೀವು ಮತ್ತು ನಿಮ್ಮ ಮಗು ಅಳಿಸಬಹುದು ಅಥವಾ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಅನ್‌ಲಾಕ್ ಅನ್ನು ಆಫ್ ಮಾಡಬಹುದು. ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಚಿತ್ರಗಳು ಮತ್ತು ಮಾಡೆಲ್‌ಗಳನ್ನು ಅವರು ಅಳಿಸುವವರೆಗೆ, ಫೋನ್‌ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"ನಿಮಗೆ ಬೇಕಿಲ್ಲದಿರುವಾಗಲೂ ನಿಮ್ಮ ಫೋನ್ ಅನ್‌ಲಾಕ್ ಆಗಬಹುದು, ಉದಾಹರಣೆಗೆ ಯಾರೋ ಒಬ್ಬರು ಫೋನ್ ಅನ್ನು ನಿಮ್ಮ ಬೆರಳಿಗೆ ಸ್ಪರ್ಶಿಸಿದಾಗ ಇತ್ಯಾದಿ."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"ನಿಮಗೆ ಬೇಕಿಲ್ಲದಿರುವಾಗಲೂ ನಿಮ್ಮ ಫೋನ್ ಅನ್‌ಲಾಕ್ ಆಗಬಹುದು, ಉದಾಹರಣೆಗೆ ಯಾರೋ ಒಬ್ಬರು ಫೋನ್ ಅನ್ನು ನಿಮ್ಮ ಬೆರಳಿಗೆ ಸ್ಪರ್ಶಿಸಿದಾಗ ಇತ್ಯಾದಿ."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ ಅನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು ನೀವು ಬಯಸದಿದ್ದರೂ ಸಹ, ನಿಮ್ಮ ಬೆರಳ ತುದಿಗೆ ಸ್ಕ್ರೀನ್ ಅನ್ನು ತರುವ ಮೂಲಕ ಯಾರಾದರೂ ಅದನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಬಹುದು."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು ನೀವು ಬಯಸದಿದ್ದರೂ ಸಹ, ನಿಮ್ಮ ಬೆರಳ ತುದಿಗೆ ಸ್ಕ್ರೀನ್ ಅನ್ನು ತರುವ ಮೂಲಕ ಯಾರಾದರೂ ಅದನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಬಹುದು."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"ಅವರಿಗೆ ಬೇಕಿಲ್ಲದಿರುವಾಗಲೂ ನಿಮ್ಮ ಮಗುವಿನ ಫೋನ್ ಅನ್‌ಲಾಕ್ ಆಗಬಹುದು, ಉದಾಹರಣೆಗೆ ಯಾರೋ ಒಬ್ಬರು ಫೋನ್ ಅನ್ನು ಅವರ ಬೆರಳಿಗೆ ಸ್ಪರ್ಶಿಸಿದಾಗ ಇತ್ಯಾದಿ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ಉತ್ತಮ ಫಲಿತಾಂಶಗಳಿಗಾಗಿ, Google ಗಾಗಿ ತಯಾರಿಸಲಾಗಿದೆ ಎಂದು ಪ್ರಮಾಣೀಕರಿಸಿದ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್ ಅನ್ನು ಬಳಸಿ. ಇತರ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್‌ಗಳನ್ನು ಬಳಸಿದರೆ ನಿಮ್ಮ ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸದೇ ಇರಬಹುದು."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ಉತ್ತಮ ಫಲಿತಾಂಶಗಳಿಗಾಗಿ, Google ಗಾಗಿ ತಯಾರಿಸಲಾಗಿದೆ ಎಂದು ಪ್ರಮಾಣೀಕರಿಸಿದ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್ ಅನ್ನು ಬಳಸಿ. ಇತರ ಸ್ಕ್ರೀನ್ ಗಾರ್ಡ್‌ಗಳನ್ನು ಬಳಸಿದರೆ ನಿಮ್ಮ ಮಗುವಿನ ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸದೇ ಇರಬಹುದು."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ಸಾಧನ ಮತ್ತು ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಸೆನ್ಸರ್‌ನ ಸ್ಥಳವನ್ನು ತಿಳಿಸುವ ಚಿತ್ರಣ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"ಹೆಸರು"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ಸರಿ"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ಪುನಃ ಪ್ರಯತ್ನಿಸಿ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"ಅಳಿಸಿ"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"ಸೆನ್ಸರ್ ಸ್ಪರ್ಶಿಸಿ"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"ಸೆನ್ಸರ್ ಮೇಲೆ ನಿಮ್ಮ ಬೆರಳಿರಿಸಿ ಮತ್ತು ನಿಮಗೆ ವೈಬ್ರೇಷನ್ ಅನುಭವ ಆದ ನಂತರ ತೆಗೆಯಿರಿ"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"ಮುಗಿದಿದೆ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ಓಹ್, ಅದು ಸೆನ್ಸರ್ ಅಲ್ಲ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"ನಿಮ್ಮ ಫೋನ್ ಹಿಂಬದಿಯಲ್ಲಿರುವ ಸೆನ್ಸಾರ್ ಸ್ಪರ್ಶಿಸಿ. ನಿಮ್ಮ ತೋರು ಬೆರಳನ್ನು ಬಳಸಿ."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ನೋಂದಣಿ ಪೂರ್ಣಗೊಂಡಿಲ್ಲ"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ನೋಂದಣಿ ಸಮಯದ ಮಿತಿಯು ಮೀರಿದೆ. ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ಫಿಂಗರ್‌ ಪ್ರಿಂಟ್ ಸೆಟಪ್ ಮಾಡುವ ಅವಧಿ ಮುಗಿದಿದೆ"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ಈಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ ಅಥವಾ ನಂತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ನಿಮ್ಮ ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಅನ್ನು ಸೆಟ್ ಮಾಡಿ"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ನೋಂದಣಿ ಕೆಲಸ ಮಾಡುತ್ತಿಲ್ಲ. ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ ಅಥವಾ ಬೇರೊಂದು ಬೆರಳನ್ನು ಬಳಸಿ."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"ಇನ್ನೊಂದನ್ನು ಸೇರಿಸಿ"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"ಮುಂದೆ"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"ನಿಮ್ಮ ಫೋನ್ ಕಸ್ಟಮೈಸ್ ಮಾಡಿ"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"ವಿವಿಧ ಶೈಲಿಗಳು, ವಾಲ್‌ಪೇಪರ್‌ಗಳು, ಇತ್ಯಾದಿಗಳನ್ನು ಬಳಸಿ ನೋಡಿ"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"ಸ್ಕ್ರೀನ್ ಸೇವರ್"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ಸ್ಕ್ರೀನ್‌ಸೇವರ್"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"ಸ್ಕ್ರೀನ್ ಸೇವರ್ ಅನ್ನು ಬಳಸಿ"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ಚಾರ್ಜ್ ಮಾಡುವಾಗ ಅಥವಾ ಡಾಕ್ ಮಾಡುವಾಗ"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"ಎರಡೂ ಸಂದರ್ಭಗಳಲ್ಲಿ"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ಚಾರ್ಜ್‌ ಆಗುತ್ತಿರುವಾಗ"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ಡಾಕ್‌ ಆಗಿರುವಾಗ"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ಎಂದಿಗೂ ಇಲ್ಲ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ಆಫ್"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ಫೋನ್‌ ಡಾಕ್‌ ಆದಾಗ ಮತ್ತು/ಅಥವಾ ನಿದ್ದೆ ಮೋಡ್‌ನಲ್ಲಿರುವಾಗ ಏನಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ನಿಯಂತ್ರಿಸಲು ಸ್ಕ್ರೀನ್ ಸೇವರ್ ಆನ್‌ ಮಾಡಿ."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"ಯಾವಾಗ ಪ್ರಾರಂಭಿಸಬೇಕು"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"ಪ್ರಸ್ತುತ ಸ್ಕ್ರೀನ್ ಸೇವರ್"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ಸ್ವಯಂಚಾಲಿತ ಪ್ರಖರತೆ"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"ಎಬ್ಬಿಸಲು ಎತ್ತಿರಿ"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ಆಂಬಿಯೆಂಟ್ ಡಿಸ್‌ಪ್ಲೇ"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ಪಿನ್ ಸೆಟ್ ಮಾಡಿ"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ಕೆಲಸದ ಪಿನ್ ಹೊಂದಿಸಿ"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ಪ್ಯಾಟರ್ನ್ ಸೆಟ್ ಮಾಡಿ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ಹೆಚ್ಚಿನ ಭದ್ರತೆಗಾಗಿ, ಸಾಧನವನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡುವುದಕ್ಕಾಗಿ ಪ್ಯಾಟರ್ನ್ ಅನ್ನು ಸೆಟ್ ಮಾಡಿ"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ಕೆಲಸದ ಪ್ಯಾಟರ್ನ್ ಹೊಂದಿಸಿ"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಬಳಸಲು, ಪಾಸ್‌ವರ್ಡ್‌ ಹೊಂದಿಸಿ"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ಪಿಂಗರ್‌ಪ್ರಿಂಟ್ ಬಳಸಲು ಪ್ಯಾಟರ್ನ್ ಸೆಟ್ ಮಾಡಿ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"ತುರ್ತು ಅಪ್ಲಿಕೇಶನ್"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ಆ್ಯಪ್ ಆದ್ಯತೆಗಳನ್ನು ಮರುಹೊಂದಿಸಿ"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"ಆ್ಯಪ್ ಆದ್ಯತೆಗಳನ್ನು ಮರುಹೊಂದಿಸುವುದೇ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ಇದು ಕೆಳಗಿನ ಎಲ್ಲಾ ಆದ್ಯತೆಗಳಿಗಾಗಿ ಮರುಹೊಂದಿಸುತ್ತದೆ:\n\n"<li>"ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ ಆ್ಯಪ್‌ಗಳು"</li>\n<li>"ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ ಆ್ಯಪ್‌ ಅಧಿಸೂಚನೆಗಳು"</li>\n<li>"ಕ್ರಿಯೆಗಳಿಗಾಗಿ ಡೀಫಾಲ್ಟ್ ಆ್ಯಪ್‌ಗಳು"</li>\n<li>"ಆ್ಯಪ್‌ ಹಿನ್ನೆಲೆ ಡೇಟಾ ನಿರ್ಬಂಧಗಳು"</li>\n<li>"ಯಾವುದೇ ಅನುಮತಿ ನಿರ್ಬಂಧಗಳು"</li>\n\n"ಯಾವುದೇ ಆ್ಯಪ್‌ ಡೇಟಾವನ್ನು ನೀವು ಕಳೆದುಕೊಳ್ಳುವುದಿಲ್ಲ."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ಇದು ಕೆಳಗಿನವುಗಳ ಎಲ್ಲಾ ಆದ್ಯತೆಗಳನ್ನು ರೀಸೆಟ್ ಮಾಡುತ್ತದೆ:\n\n"<li>"ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ ಆ್ಯಪ್‌ಗಳು"</li>\n<li>"ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ ಆ್ಯಪ್ ಅಧಿಸೂಚನೆಗಳು"</li>\n<li>"ಕ್ರಿಯೆಗಳಿಗಾಗಿ ಡೀಫಾಲ್ಟ್ ಆ್ಯಪ್‌ಗಳು"</li>\n<li>"ಆ್ಯಪ್‌ನ ಹಿನ್ನೆಲೆ ಡೇಟಾ ನಿರ್ಬಂಧಗಳು"</li>\n<li>"ಯಾವುದೇ ಅನುಮತಿ ನಿರ್ಬಂಧಗಳು"</li>\n<li>"ಬ್ಯಾಟರಿ ಬಳಕೆ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</li>\n\n"ನೀವು ಯಾವುದೇ ಆ್ಯಪ್ ಡೇಟಾವನ್ನು ಕಳೆದುಕೊಳ್ಳುವುದಿಲ್ಲ."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ಆ್ಯಪ್‍‍ಗಳನ್ನು ಮರುಹೊಂದಿಸಿ"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ಸ್ಥಳ ನಿರ್ವಹಿಸಿ"</string>
     <string name="filter" msgid="9039576690686251462">"ಫಿಲ್ಟರ್‌"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ರಿಸೆಟ್ ಮಾಡಿ"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ಡಿಸ್‌ಪ್ಲೇ ಗಾತ್ರ ಮತ್ತು ಪಠ್ಯದ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ರೀಸೆಟ್ ಮಾಡಲಾಗಿದೆ"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ಡಿಸ್‌ಪ್ಲೇ ಗಾತ್ರ ಮತ್ತು ಪಠ್ಯವನ್ನು ರೀಸೆಟ್ ಮಾಡಬೇಕೆ?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ನಿಮ್ಮ ಡಿಸ್‌ಪ್ಲೇ ಗಾತ್ರ ಮತ್ತು ಪಠ್ಯದ ಆದ್ಯತೆಗಳು ಫೋನ್‌ನ ಮೂಲ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಗೆ ರೀಸೆಟ್ ಆಗುತ್ತದೆ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ನಿಮ್ಮ ಡಿಸ್‌ಪ್ಲೇ ಗಾತ್ರ ಮತ್ತು ಪಠ್ಯದ ಆದ್ಯತೆಗಳು ಫೋನ್‌ನ ಮೂಲ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಗೆ ರೀಸೆಟ್ ಆಗುತ್ತದೆ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ನಿಮ್ಮ ಡಿಸ್‌ಪ್ಲೇ ಗಾತ್ರ ಮತ್ತು ಪಠ್ಯದ ಆದ್ಯತೆಗಳು ಟ್ಯಾಬ್ಲೆಟ್‌ನ ಮೂಲ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಗೆ ರೀಸೆಟ್ ಆಗುತ್ತವೆ"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ರೀಸೆಟ್ ಮಾಡಿ"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"ವಾರಾಂತ್ಯಕ್ಕೆ ಯಾವುದಾದರೂ ಯೋಜನೆ ಇದೆಯೇ?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ಬೀಚ್‌ಗೆ ಹೋಗಬೇಕೆಂದಿದ್ದೇನೆ. ನೀವು ಬರುವಿರಾ?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"ಪೂರ್ಣ ಚಾರ್ಜ್ ಮಾಡಿದಾಗಿನಿಂದ ಯಾವುದೇ ಬಳಕೆಯಾಗಿಲ್ಲ"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"ಕಳೆದ 24 ಗಂಟೆಗಳಲ್ಲಿ ಯಾವುದೇ ಬಳಕೆಯಾಗಿಲ್ಲ"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"ಇತರ ಬಳಕೆದಾರರು"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ಎಷ್ಟು ಸಮಯದವರೆಗೆ ಬಳಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ಆಧರಿಸಿ ಉಳಿದಿರುವ ಬ್ಯಾಟರಿಯನ್ನು ಅಂದಾಜು ಮಾಡಲಾಗುತ್ತದೆ"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"ಅಂದಾಜಿಸಿದ ಸಮಯ ಮುಗಿದಿದೆ"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"ಸಂಪೂರ್ಣ ಚಾರ್ಜ್ ಆಗಲು"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"ಪೂರ್ಣ ಹಾಟ್‌ವರ್ಡ್ ಮತ್ತು ಸಂವಹನ"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"ಸರಳ ಧ್ವನಿಯಿಂದ ಪಠ್ಯಕ್ಕೆ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ಈ ಧ್ವನಿ ಇನ್‌ಪುಟ್ ಸೇವೆ ನಿಮ್ಮ ಪರವಾಗಿ ಯಾವಾಗಲೂ ಆನ್ ಇರುವ ಧ್ವನಿ ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡಲು ಮತ್ತು ಧ್ವನಿ ಸಕ್ರಿಯಗೊಳಿಸಿದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗೆ ನಿಯಂತ್ರಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ. ಅದು <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ಅಪ್ಲಿಕೇಶನ್‌ನಿಂದ ಬರುತ್ತದೆ. ಈ ಸೇವೆಯ ಬಳಕೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುವುದೇ?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"ಸಾಧನದಲ್ಲಿರುವ ಗುರುತಿಸುವಿಕೆ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"ಸಾಧನದಲ್ಲಿರುವ ಗುರುತಿಸುವಿಕೆ"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"ಸಾಧನದಲ್ಲಿರುವ ಧ್ವನಿ ಗುರುತಿಸುವಿಕೆ"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"ಆದ್ಯತೆಯ ಇಂಜಿನ್"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ಇಂಜಿನ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"ಧ್ವನಿ ದರ ಮತ್ತು ಪಿಚ್"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ಅಳಿಸಿ"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"ಈ ಸೆಷನ್‌ನಲ್ಲಿನ ಎಲ್ಲ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಮತ್ತು ಡೇಟಾವನ್ನು ಅಳಿಸಲಾಗುತ್ತದೆ."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"ತೆಗೆದುಹಾಕಿ"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ಅತಿಥಿ (ನೀವು)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ಬಳಕೆದಾರರು"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"ಇತರ ಬಳಕೆದಾರರು"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"ಅಥಿತಿ ಚಟುವಟಿಕೆಯನ್ನು ಅಳಿಸಿ"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ಅತಿಥಿ ಮೋಡ್‌ನಿಂದ ನಿರ್ಗಮಿಸುವಾಗ ಎಲ್ಲಾ ಅತಿಥಿ ಆ್ಯಪ್‌ಗಳು ಮತ್ತು ಡೇಟಾವನ್ನು ಅಳಿಸಿ"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"ಅಥಿತಿ ಚಟುವಟಿಕೆಯನ್ನು ಅಳಿಸಬೇಕೆ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ಈ ಅತಿಥಿ ಸೆಶನ್‌ನಿಂದ ಆ್ಯಪ್‌ಗಳು ಮತ್ತು ಡೇಟಾವನ್ನು ಈಗ ಅಳಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ನೀವು ಅತಿಥಿ ಮೋಡ್‌ನಿಂದ ನಿರ್ಗಮಿಸಿದ ಪ್ರತಿ ಬಾರಿ ಭವಿಷ್ಯದ ಎಲ್ಲಾ ಅತಿಥಿ ಚಟುವಟಿಕೆಯನ್ನು ಅಳಿಸಲಾಗುತ್ತದೆ"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ಫೋನ್ ಕರೆಗಳನ್ನು ಆನ್ ಮಾಡಿ"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ಫೋನ್ ಕರೆಗಳು ಮತ್ತು ಎಸ್‌ಎಂಎಸ್‌ ಆನ್ ಮಾಡಿ"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ಬಳಕೆದಾರರನ್ನು ಅಳಿಸಿ"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"ಎಲ್ಲಾ \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" ಅಧಿಸೂಚನೆಗಳು"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"ಎಲ್ಲಾ <xliff:g id="APP_NAME">%1$s</xliff:g> ಅಧಿಸೂಚನೆಗಳು"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"ಅಡಾಪ್ಟಿವ್ ಅಧಿಸೂಚನೆಗಳು"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">ಪ್ರತಿ ದಿನಕ್ಕೆ ~<xliff:g id="NUMBER_1">%,d</xliff:g> ಅಧಿಸೂಚನೆಗಳು</item>
-      <item quantity="other">ಪ್ರತಿ ದಿನಕ್ಕೆ ~<xliff:g id="NUMBER_1">%,d</xliff:g> ಅಧಿಸೂಚನೆಗಳು</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">ಪ್ರತಿ ದಿನಕ್ಕೆ <xliff:g id="NUMBER_1">%,d</xliff:g> ನೋಟಿಫಿಕೇಶನ್‌ಗಳ ಕುರಿತು</item>
+      <item quantity="other">ಪ್ರತಿ ದಿನಕ್ಕೆ <xliff:g id="NUMBER_1">%,d</xliff:g> ನೋಟಿಫಿಕೇಶನ್‌ಗಳ ಕುರಿತು</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">ಪ್ರತಿ ವಾರಕ್ಕೆ ~<xliff:g id="NUMBER_1">%,d</xliff:g> ಅಧಿಸೂಚನೆಗಳು</item>
-      <item quantity="other">ಪ್ರತಿ ವಾರಕ್ಕೆ ~<xliff:g id="NUMBER_1">%,d</xliff:g> ಅಧಿಸೂಚನೆಗಳು</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one"><xliff:g id="NUMBER_1">%,d</xliff:g> ಅಧಿಸೂಚನೆಗಳ ಕುರಿತು</item>
+      <item quantity="other"><xliff:g id="NUMBER_1">%,d</xliff:g> ಅಧಿಸೂಚನೆಗಳ ಕುರಿತು</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ಎಂದೂ ಇಲ್ಲ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ಸಾಧನದ &amp; ಆ್ಯಪ್ ಅಧಿಸೂಚನೆಗಳು"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"ಏನೂ ಮಾಡಬೇಡಿ"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"ವೈಬ್ರೇಟ್"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"ಮ್ಯೂಟ್"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ಸಕ್ರಿಯಗೊಳಿಸಲು, ಮೊದಲು ಪವರ್ ಮೆನುಗೆ \"ಪವರ್ ಬಟನ್ ಒತ್ತಿ ಹಿಡಿದುಕೊಳ್ಳಿ\" ಅನ್ನು ಬದಲಾಯಿಸಿ."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ಸಕ್ರಿಯಗೊಳಿಸಲು, ಮೊದಲು ಪವರ್ ಮೆನುಗೆ \"ಪವರ್ ಬಟನ್ ಒತ್ತಿ ಹಿಡಿದುಕೊಳ್ಳಿ\" ಅನ್ನು ಬದಲಾಯಿಸಿ."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ನೆಟ್‌ವರ್ಕ್‌ ವಿವರಗಳು"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿರುವ ಆ್ಯಪ್‌ಗಳಿಗೆ ನಿಮ್ಮ ಸಾಧನದ ಹೆಸರು ಕಾಣಿಸುತ್ತದೆ. ನೀವು ಬ್ಲೂಟೂತ್ ಸಾಧನಗಳಿಗೆ ಕನೆಕ್ಟ್ ಮಾಡಿದಾಗ, ವೈ-ಫೈ ನೆಟ್‌ವರ್ಕ್‌ಗೆ ಕನೆಕ್ಟ್ ಮಾಡಿದಾಗ ಅಥವಾ ವೈ-ಫೈ ಹಾಟ್‌ಸ್ಪಾಟ್ ಅನ್ನು ಸೆಟಪ್ ಮಾಡಿದಾಗ ಇತರ ಜನರು ಸಹ ಅದನ್ನು ನೋಡಬಹುದು."</string>
     <string name="devices_title" msgid="649715719278562515">"ಸಾಧನಗಳು"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ಸಾಧನ ನಿಯಂತ್ರಣಗಳು"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"ಕಾರ್ಡ್‌ಗಳು ಮತ್ತು ಪಾಸ್‌ಗಳು"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"ಕಾರ್ಡ್‌ಗಳು ಮತ್ತು ಪಾಸ್‌ಗಳು"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"ಪವರ್ ಬಟನ್ ಅನ್ನು ಒತ್ತಿಹಿಡಿಯಿರಿ"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant ಗಾಗಿ ಒತ್ತಿಹಿಡಿಯಿರಿ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"ಪವರ್ ಮೆನುವಿಗಾಗಿ ಒತ್ತಿಹಿಡಿಯಿರಿ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"ಒತ್ತಿಹಿಡಿಯುವುದು ನಿಷ್ಕ್ರಿಯಗೊಂಡಿದೆ"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"ಪವರ್ ಬಟನ್ ಅನ್ನು ಒತ್ತಿ ಹಿಡಿದುಕೊಳ್ಳಿ"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ಪ್ರವೇಶಿಸಲು ಪವರ್ ಬಟನ್ ಅನ್ನು ಒತ್ತಿ ಹಿಡಿದುಕೊಳ್ಳಿ"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"ಪವರ್ ಮೆನು"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ಡಿಜಿಟಲ್ ಅಸಿಸ್ಟೆಂಟ್"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ಡಿಜಿಟಲ್ ಅಸಿಸ್ಟೆಂಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"ಪವರ್ ಮೆನು ಅನ್ನು ಪ್ರವೇಶಿಸಿ"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ಬಳಸಲು, ಮೊದಲು ಸ್ಕ್ರೀನ್‌ ಲಾಕ್ ಸೆಟ್ ಮಾಡಿ"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant ಗಾಗಿ ಪವರ್ ಬಟನ್ ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳಿ"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"ಪವರ್ ಬಟನ್ ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳುವ ಮೂಲಕ Assistant ಅನ್ನು ಬಳಸಿ"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"ಪವರ್ ಮತ್ತು ತುರ್ತು ಮೆನು:\nಪವರ್ ಮತ್ತು ವಾಲ್ಯೂಮ್ ಬಟನ್ ಅನ್ನು ಒಟ್ಟಿಗೆ ಒತ್ತಿರಿ."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"ರಿಂಗ್ ಆಗುವುದನ್ನು ತಡೆಯಿರಿ:\nವಾಲ್ಯೂಮ್ ಮೆನುವಿನಲ್ಲಿ ಶಾರ್ಟ್‌ಕಟ್ ಲಭ್ಯವಿದೆ."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"ಪವರ್ ಮೆನು:\nಪವರ್ ಬಟನ್ ಹಾಗೂ ವಾಲ್ಯೂಮ್ ಹೆಚ್ಚು ಮಾಡುವ ಬಟನ್ ಅನ್ನು ಒಂದೇ ಸಮಯದಲ್ಲಿ ಒತ್ತಿರಿ"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"ರಿಂಗ್‌ ಆಗುವುದನ್ನು ತಡೆಯಿರಿ:\nಶಾರ್ಟ್‌ಕಟ್‌ಗಾಗಿ ವಾಲ್ಯೂಮ್ ಬಟನ್ ಅನ್ನು ಒತ್ತಿರಿ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"ಒತ್ತಿ ಹಿಡಿಯುವ ಅವಧಿ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"ಪವರ್ ಬಟನ್ ಅನ್ನು ಎಷ್ಟು ಹೊತ್ತು ಒತ್ತಿ ಹಿಡಿಯಬೇಕು ಎಂಬುದನ್ನು ಆಯ್ಕೆ ಮಾಡುವ ಮೂಲಕ ಸೂಕ್ಷ್ಮತೆಯನ್ನು ಸರಿಹೊಂದಿಸಿ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"ಚಿಕ್ಕದು"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 6bbdf3b..100bcc5 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"자녀가 Pixel Imprint를 사용하면 자녀의 지문 모델을 업데이트하는 데 이미지가 활용됩니다. 자녀의 지문 모델을 만드는 데 사용된 이미지는 저장되지 않으나 지문 모델은 휴대전화에 안전하게 저장되며 기기 외부로 전송되지 않습니다. 모든 처리는 휴대전화 내에서 안전하게 이뤄집니다."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"언제든지 설정에서 지문 이미지와 모델을 삭제하거나 지문 잠금 해제를 사용 중지할 수 있습니다. 지문 이미지와 모델은 삭제하기 전까지 휴대전화에 저장됩니다."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"부모와 자녀가 언제든지 설정에서 자녀의 지문 이미지와 모델을 삭제하거나 지문 잠금 해제를 사용 중지할 수 있습니다. 지문 이미지와 모델은 삭제하기 전까지 휴대전화에 저장됩니다."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"다른 사람이 내 손가락에 휴대전화를 가져다 대는 등 내가 의도하지 않은 상황에서 휴대전화 잠금을 해제할 수 있습니다."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"다른 사람이 내 손가락에 휴대전화를 가져다 대는 등 내가 의도하지 않은 상황에서 휴대전화 잠금을 해제할 수 있습니다."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"다른 사람이 내 손가락에 태블릿을 가져다 대는 등 내가 의도하지 않은 상황에서 태블릿 잠금이 해제될 수 있습니다."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"다른 사람이 내 손가락에 기기를 가져다 대는 등 내가 의도하지 않은 상황에서 기기 잠금이 해제될 수도 있습니다."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"다른 사람이 자녀의 손가락에 휴대전화를 가져다 대는 등 자녀가 의도하지 않은 상황에서 자녀의 휴대전화 잠금을 해제할 수 있습니다."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"최상의 결과를 얻으려면 Made For Google 인증 화면 보호재를 사용하세요. 다른 화면 보호재를 사용할 경우 지문이 인식되지 않을 수 있습니다."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"최상의 결과를 얻으려면 Made For Google 인증 화면 보호재를 사용하세요. 다른 화면 보호재를 사용할 경우 자녀의 지문이 인식되지 않을 수 있습니다."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"기기와 지문 센서 위치가 포함된 그림"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"이름"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"확인"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"다시 시도"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"삭제"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"센서 터치"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"센서에 손가락을 올리고 진동이 느껴지면 떼세요."</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"완료"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"죄송합니다. 센서가 아닙니다."</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"휴대전화 뒷면에 있는 센서를 터치하세요. 검지를 사용하세요."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"등록이 완료되지 않았습니다"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"지문 등록 시간이 초과되었습니다. 다시 시도하세요."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"지문 설정 시간 초과됨"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"지금 다시 시도하거나 나중에 설정에서 지문을 등록하세요."</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"지문 등록이 되지 않았습니다. 다시 시도하거나 다른 손가락을 사용하세요."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"다른 지문 추가"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"다음"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"휴대전화 맞춤설정"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"다른 스타일, 배경화면 등 사용해 보기"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"화면 보호기"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"화면 보호기"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"화면 보호기 사용"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"충전 또는 도킹하는 동안"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"도킹이나 충전 중일 때"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"충전하는 동안"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"도킹하는 동안"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"사용 안함"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"사용 안함"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"휴대전화가 도킹 또는 절전 모드일 때 작동 방식을 조정하려면 화면 보호기를 사용 설정합니다."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"표시 시간"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"현재 화면 보호기"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"설정"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"자동 밝기"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"기기를 들어 대기 모드 해제"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"절전 모드 자동 해제"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN 설정"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"직장 PIN 설정"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"패턴 설정"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"보안 강화를 위해 기기 잠금 해제에 사용할 패턴 설정"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"직장 패턴 설정"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"비밀번호 설정 후 지문 사용"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"지문 사용을 위한 패턴 설정"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"긴급 앱"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"앱 환경설정 초기화"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"앱 환경설정을 초기화하시겠습니까?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"이렇게 하면 다음 환경설정이 모두 재설정됩니다.\n\n"<li>"사용 중지된 앱"</li>\n<li>"사용 중지된 앱 알림"</li>\n<li>"작업에 사용되는 기본 애플리케이션"</li>\n<li>"앱의 백그라운드 데이터 제한"</li>\n<li>"모든 권한 제한"</li>\n\n"앱 데이터는 손실되지 않습니다."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"다음 환경설정이 모두 초기화됩니다.\n\n"<li>"사용 중지된 앱"</li>\n<li>"사용 중지된 앱 알림"</li>\n<li>"작업용 기본 애플리케이션"</li>\n<li>"앱의 백그라운드 데이터 제한"</li>\n<li>"그 밖의 권한 제한"</li>\n<li>"배터리 사용량 설정"</li>\n\n"앱 데이터는 손실되지 않습니다."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"앱 초기화"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"공간 관리"</string>
     <string name="filter" msgid="9039576690686251462">"필터"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"설정 초기화"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"디스플레이 크기 및 텍스트 설정이 초기화되었습니다."</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"디스플레이 크기와 텍스트를 초기화하시겠습니까?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"화면 크기와 텍스트 설정이 휴대전화의 원래 설정으로 초기화됩니다."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"화면 크기와 텍스트 설정이 휴대전화의 원래 설정으로 초기화됩니다."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"화면 크기와 텍스트 설정이 태블릿의 원래 설정으로 초기화됩니다."</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"초기화"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"주말에 계획 있나요?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"바다에 갈 거예요. 함께 가실래요?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"마지막으로 완전히 충전한 이후 사용 안 함"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"지난 24시간 동안 사용 안 함"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"다른 사용자"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"예상 잔여 배터리 소모 시간은 기기 사용량을 기반으로 표시됩니다."</string>
     <string name="estimated_time_left" msgid="948717045180211777">"남은 예상 시간"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"충전 완료까지 남은 시간"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"전체 핫워드 및 상호작용"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"간단한 STT(음성 텍스트 변환)"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"이 음성 입력 서비스는 항상 음성을 모니터링하고 사용자를 대신하여 음성 지원 애플리케이션을 제어할 수 있습니다. 이 서비스는 <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> 애플리케이션에서 제공합니다. 서비스를 사용하도록 설정하시겠습니까?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"온디바이스 인식 설정"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"온디바이스 인식"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"온디바이스 음성 인식"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"기본 엔진"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"엔진 설정"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"말하기 속도 및 음 높이"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"삭제"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"이 세션에 있는 모든 앱과 데이터가 삭제됩니다."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"삭제"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"게스트(나)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"사용자"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"다른 사용자"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"게스트 활동 삭제"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"게스트 모드 종료 시 모든 게스트 앱 및 데이터 삭제"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"게스트 활동을 삭제하시겠습니까?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"현재 게스트 세션의 앱과 데이터가 지금 삭제되고 이후 모든 게스트 활동은 게스트 모드를 종료할 때마다 삭제됩니다."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"통화 기능 사용"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"통화 및 SMS 기능 사용"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"사용자 삭제"</string>
@@ -4009,13 +4023,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"모든 ‘<xliff:g id="APP_NAME">%1$s</xliff:g>’ 알림"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"모든 <xliff:g id="APP_NAME">%1$s</xliff:g> 알림"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"적응형 알림"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">하루에 약 <xliff:g id="NUMBER_1">%,d</xliff:g>개</item>
-      <item quantity="one">하루에 약 <xliff:g id="NUMBER_0">%d</xliff:g>개</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">알림 약 <xliff:g id="NUMBER_1">%,d</xliff:g>개/일</item>
+      <item quantity="one">알림 약 <xliff:g id="NUMBER_0">%d</xliff:g>개/일</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">1주일에 약 <xliff:g id="NUMBER_1">%,d</xliff:g>개</item>
-      <item quantity="one">1주일에 약 <xliff:g id="NUMBER_0">%d</xliff:g>개</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">알림 약 <xliff:g id="NUMBER_1">%,d</xliff:g>개/주</item>
+      <item quantity="one">알림 약 <xliff:g id="NUMBER_0">%d</xliff:g>개/주</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"전송하지 않음"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"기기 및 앱 알림"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"동작 없음"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"진동"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"음소거"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"사용 설정하려면 먼저 \'전원 버튼 길게 누르기\'를 전원 메뉴로 변경하세요."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"사용 설정하려면 먼저 \'전원 버튼 길게 누르기\'를 전원 메뉴로 변경하세요."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"네트워크 세부정보"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"기기 이름이 휴대전화에 있는 앱에 표시됩니다. 기기 이름은 블루투스 기기 및 Wi-Fi 네트워크에 연결하거나 Wi-Fi 핫스팟을 설정할 때 다른 사용자에게도 표시될 수 있습니다."</string>
     <string name="devices_title" msgid="649715719278562515">"기기"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"기기 제어"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"카드 및 패스"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"카드 및 패스"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"전원 버튼을 길게 누르기"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"길게 눌러서 어시스턴트 열기"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"전원 메뉴 길게 누르기"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"길게 누르기 사용 중지됨"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"전원 버튼을 길게 누름"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"전원 버튼을 길게 눌러 액세스"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"전원 메뉴"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"디지털 어시스턴트"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"디지털 어시스턴트 액세스"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"전원 메뉴 액세스"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"이 기능을 사용하려면 화면 잠금을 설정하세요."</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"길게 눌러 어시스턴트 실행"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"전원 버튼을 길게 눌러 어시스턴트 실행"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"전원 및 비상 메뉴:\n전원 버튼과 볼륨 업 버튼을 동시에 누릅니다."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"벨 울림 방지:\n볼륨 메뉴에서 바로가기를 사용할 수 있습니다."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"전원 메뉴:\n전원 버튼과 볼륨 업 버튼을 동시에 누름"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"벨 울림 방지:\n볼륨 버튼을 눌러서 단축키 사용"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"길게 누르기 시간"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"전원 버튼을 얼마나 길게 누를지 선택하여 민감도 조정"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"짧게"</string>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index 767c331..0cfeb00c 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Үлгүнү жаңыртуу үчүн Pixel Imprint функциясында алынган сүрөттөр колдонулат. Сүрөттөр менен үлгү түзмөктө гана иштелет. Сүрөттөр сакталбайт, ал эми манжа изинин үлгүсү түзмөгүңүздө гана сакталып, эч жакка жөнөтүлбөйт."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Манжаңыздын изинин сүрөттөрүн жана үлгүсүн же \"Манжа изи менен ачуу\" функциясын Жөндөөлөрдөн каалаган убакта өчүрсөңүз болот. Манжа изинин сүрөттөрү жана үлгүлөрү өчүрүлмөйүнчө телефонуңузда сакталат."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Манжа изинин сүрөттөрүн жана үлгүсүн, же болбосо Манжа изи менен ачуу функциясын каалаган убакта Жөндөөлөргө өтүп, өчүрсөңүздөр болот. Манжа изинин сүрөттөрү жана үлгүлөрү өчүрүлмөйүнчө телефондо сакталат."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Телефондун кулпусу капыстан ачылып калышы мүмкүн, мисалы, кимдир бирөө аны манжаңызга тийгизип койсо."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Телефондун кулпусу капыстан ачылып калышы мүмкүн, мисалы, кимдир бирөө аны манжаңызга тийгизип койсо."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Планшеттин кулпусу капыстан ачылып калышы мүмкүн, мисалы, кимдир бирөө аны манжаңызга тийгизип койсо."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Түзмөктүн кулпусу капыстан ачылып калышы мүмкүн, мисалы, кимдир бирөө аны манжаңызга тийгизип койсо."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Балаңыздын телефонунун кулпусу капыстан ачылып калышы мүмкүн, мисалы, кимдир бирөө аны манжасына тийгизип койсо."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"\"Google үчүн жасалган\" деген коргоочу айнекти же пленканы колдонууну сунуштайбыз. Башка коргоочу айнектер же пленкалар манжаңыздын изин тааныбай коюшу мүмкүн."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"\"Google үчүн жасалган\" деген коргоочу айнекти же пленканы колдонууну сунуштайбыз. Башка коргоочу айнектер же пленкалар балаңыздын манжа изин тааныбай коюшу мүмкүн."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Бул сүрөт сенсор кайда жайгашканын көрсөтөт"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Аталышы"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Жарайт"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Кайталап көрүңүз"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Өчүрүү"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Сенсорго тийиңиз"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Манжаңызды сенсорго коюп, дирилдегенин сезгенден кийин көтөрүңүз"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Даяр"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ой, ал сенсор эмес"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Телефонуңуздун аркасындагы сенсорго сөөмөйүңүз менен тийиңиз."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Манжа изи кошулган жок"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Күтүү убакыты узакка созулуп кетти. Кайталап көрүңүз."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Манжа изин тууралоо убакыты бүтүп калды"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Азыр аракет кылып көрүңүз же кийинчерээк тууралап алыңыз"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Манжа изи кошулбай калды. Кайра кайталап көрүңүз же башка манжаңыздын изин сактаңыз."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Дагы бирди кошуу"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Кийинки"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Телефонуңузду ыңгайлаштырыңыз"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Ар кандай стилдерди, тушкагаздарды жана башкаларды көрүңүз"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Көшөгө"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"көшөгө"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Көшөгөнү колдонуу"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Кубатталып жатканда же док-станцияга туташканда"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Эки учурда тең"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Кубатталып жатканда"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Док-станцияда"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Эч качан"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Өчүк"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Телефон докко орнотулганда жана/же уйку режиминде турганда эмне болоорун көзөмөлдөө үчүн көшөгөнү күйгүзүңүз."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Качан иштеп баштайт"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Учурдагы көшөгө"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Жөндөөлөр"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Автоматтык жарыктык"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Ойготуу үчүн көтөрүү"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Экран автоматтык түрдө күйөт"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN кодду коюңуз"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Жумуш профилинин PIN кодун коюңуз"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Графикалык ачкычты коюңуз"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Коопсуздукту жакшыртуу максатында түзмөктүн кулпусун ачуу үчүн графикалык ачкыч коюңуз"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Жумуш профилинин графикалык ачкычын коюңуз"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Сырсөздү коюңуз"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Графикалык ачкычты коюңуз"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Өзгөчө кырдаал колдонмосу"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Колдонмонун жөндөөлөрүн кайра коюу"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Колдонмону кайра баштан жөндөйсүзбү?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Ушуну менен, төмөнкүлөр кайра жөндөлөт:\n\n"<li>"Өчүрүлгөн колдонмолор"</li>\n<li>"Өчүрүлгөн колдонмолордун билдирмелери"</li>\n<li>"Демейки колдонмолордун аракеттери"</li>\n<li>"Колдонмолордун Фондук режиминдеги чектөөлөрү"</li>\n<li>"Бардык уруксаттарды чектөөлөр"</li>\n\n"Колдонмонун бардык маалыматтары сакталып калат."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Ушуну менен төмөнкүлөрдүн бардык параметрлери баштапкы абалга келтирилет:\n\n"<li>"Өчүрүлгөн колдонмолор"</li>\n<li>"Өчүрүлгөн колдонмолордун билдирмелери"</li>\n<li>"Демейки колдонмолордун аракеттери"</li>\n<li>"Колдонмолордун фондук режиминдеги чектөөлөрү"</li>\n<li>"Уруксаттардын бардык чектөөлөрү"</li>\n<li>"Батареянын колдонулушунун жөндөөлөрү"</li>\n\n"Колдонмолордун дайындары өчпөйт."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Баштапкы абалга келтирүү"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Орун бошотуу"</string>
     <string name="filter" msgid="9039576690686251462">"Чыпка"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Жөндөөлөрдү баштапкы абалга келтирүү"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Экрандын өлчөмү жана тексттин параметрлери баштапкы абалга келтирилди"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Экрандын өлчөмүн жана тексттин параметрлерин баштапкы абалга келтиресизби?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Текст менен экрандын өлчөмү баштапкы абалга кайтарылат"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Текст менен экрандын өлчөмү баштапкы абалга кайтарылат"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Текст менен экрандын өлчөмү баштапкы абалга кайтарылат"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Баштапкы абалга келтирүү"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Дем алышка пландар барбы?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Көлгө барганы жатабыз. Кошуласыңарбы?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Акыркы жолу толук кубатталгандан бери колдонулган жок"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Акыркы 24 сааттын ичинде колдонулган жок"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Башка колдонуучулар"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Калган убакыт түзмөктүн колдонулушуна жараша эсептелип көрсөтүлүүдө."</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Болжолдуу калган убакыт"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Батарея толгонго чейин калган убакыт"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Толук ачкыч сөз жана өз ара мамиле"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Жөнөкөй сөздөн текстке"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Бул үн киргизүү кызматы сиздин атыңыздан ар дайым күйүк үн көзөмөлүн аткарып жана үн менен иштетилген колдонмолорду иштете алат. Ал <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> колдонмосунан келет. Бул кызматты иштетүүбү?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Түзмөктө таануу параметрлери"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Түзмөктө таануу"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Түзмөктө кепти таануу"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Тандалган каражат"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Каражаттын жөндөөлөрү"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Кеп ылдамдыгы жана негизги тон"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Ооба"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Бул сеанстагы бардык колдонмолор жана аларга байланыштуу нерселер өчүрүлөт."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Өчүрүү"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Конок (сиз)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Колдонуучулар"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Башка колдонуучулар"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Коноктун аракеттерин жок кылуу"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Конок режиминен чыкканда бардык колдонмолор жана алардагы нерселер өчүрүлөт"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Коноктун аракеттери өчүрүлсүнбү?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Бул конок сеансындагы бардык колдонмолор жана башка нерселер өчүрүлөт жана кийин конок режиминен чыккан сайын бардык аракеттер тазаланып турат."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Телефон аркылуу чалууну иштетүү"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Чалуулар менен SMS иштетүү"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Колдонуучуну жок кылуу"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\" колдонмосундагы бардык билдирмелер"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g> колдонмосунун бардык билдирмелери"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Ыңгайлаштырылуучу билдирмелер"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">Күнүнө болжол менен <xliff:g id="NUMBER_1">%,d</xliff:g> билдирме</item>
-      <item quantity="one">Күнүнө болжол менен <xliff:g id="NUMBER_0">%d</xliff:g> билдирме</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Күнүнө болжолдуу <xliff:g id="NUMBER_1">%,d</xliff:g> билдирме</item>
+      <item quantity="one">Күнүнө болжолдуу <xliff:g id="NUMBER_0">%d</xliff:g> билдирме</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">Аптасына болжол менен <xliff:g id="NUMBER_1">%,d</xliff:g> билдирме</item>
-      <item quantity="one">Аптасына болжол менен <xliff:g id="NUMBER_0">%d</xliff:g> билдирме</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Аптасына болжолдуу <xliff:g id="NUMBER_1">%,d</xliff:g> билдирме</item>
+      <item quantity="one">Аптасына болжолдуу <xliff:g id="NUMBER_0">%d</xliff:g> билдирме</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Эч качан"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Түзмөктөгү жана колдонмодогу билдирмелер"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Эч нерсе кылынбасын"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Дирилдөө"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Үнсүз"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Иштетүү үчүн алгач кубат баскычынын менюсунан \"кубат баскычын коё бербей басып туруу\" опциясын өзгөртүңүз."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Иштетүү үчүн алгач кубат баскычынын менюсунан \"кубат баскычын коё бербей басып туруу\" опциясын өзгөртүңүз."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Тармактын чоо-жайы"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Түзмөгүңүздүн аталышы телефонуңуздагы колдонмолорго көрүнүп турат. Bluetooth түзмөктөрүнө, Wi‑Fi тармагына туташканыңызда же Wi‑Fi байланыш түйүнүн жөндөгөнүңүздө, аны башка адамдар да көрүшү мүмкүн."</string>
     <string name="devices_title" msgid="649715719278562515">"Түзмөктөр"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"түзмөктү башкаруу элементтери"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Карталар жана билеттер"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"карталар жана билеттер"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Кубат баскычын коё бербей басып туруу"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Жардамчыга кайрылуу үчүн коё бербей басып туруңуз"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Кубат баскычынын менюсун ачуу үчүн коё бербей басып туруңуз"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Коё бербей басып туруу өчүрүлдү"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Кубат баскычын коё бербей басуу"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Мүмкүнчүлүк алуу үчүн кубат баскычын коё бербей басып туруу"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Кубат баскычынын менюсу"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Санариптик жардамчы"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Санариптик жардамчыга мүмкүнчүлүк алуу"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Кубат баскычынын менюсуна мүмкүнчүлүк алуу"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Алгач экранды кулпулоо ыкмасын тандаңыз"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Баскычты көпкө басып, Жардамчыны иштетүү"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Кубат баскычын көпкө басып, Жардамчыны иштетесиз"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Кубат баскычы жана Шашылыш билдирүү менюсу:\nКубат менен Үндү катуулатуу баскычтарын чогуу басыңыз."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Шыңгыратуунун алдын алуу:\nЫкчам баскыч үндү катуулатуу менюсунда жеткиликтүү."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Кубат баскычынын менюсу:\nТелефонуңузду өчүрүү үчүн Кубат менен Үндү катуулатуу баскычтарын чогуу басыңыз"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Шыңгырдын үнүн өчүрүү:\nЫкчам баскычты колдонуу үчүн үндү катуулатуу/акырындатуу баскычын басыңыз"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Коё бербей басып туруунун узактыгы"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Сезгичтигин тууралоо үчүн кубат баскычын канчага чейин коё бербей басып туруу керектигин тандаңыз"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Кыска"</string>
diff --git a/res/values-ldltr/dimens.xml b/res/values-ldltr/dimens.xml
new file mode 100755
index 0000000..11d5b33
--- /dev/null
+++ b/res/values-ldltr/dimens.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<resources>
+    <!-- Biometrics UDFPS enroll landscape dimensions-->
+    <dimen name="enroll_padding_start">0dp</dimen>
+    <dimen name="enroll_padding_end">0dp</dimen>
+    <dimen name="enroll_margin_end">0dp</dimen>
+
+    <dimen name="rotation_90_enroll_padding_start">-290dp</dimen>
+    <dimen name="rotation_90_enroll_padding_end">108dp</dimen>
+    <dimen name="rotation_90_enroll_margin_end">150dp</dimen>
+</resources>
diff --git a/res/values-ldrtl/dimens.xml b/res/values-ldrtl/dimens.xml
new file mode 100755
index 0000000..cbe7eb5
--- /dev/null
+++ b/res/values-ldrtl/dimens.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<resources>
+    <!-- Biometrics UDFPS enroll landscape RTL dimensions-->
+    <dimen name="enroll_padding_start">-440dp</dimen>
+    <dimen name="enroll_padding_end">320dp</dimen>
+    <dimen name="enroll_margin_end">150dp</dimen>
+
+    <dimen name="rotation_90_enroll_padding_start">20dp</dimen>
+    <dimen name="rotation_90_enroll_padding_end">0dp</dimen>
+    <dimen name="rotation_90_enroll_margin_end">20dp</dimen>
+</resources>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index f32fa88..13ccfdb 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"ເມື່ອເຂົາເຈົ້າໃຊ້ Pixel Imprint, ຮູບຈະຖືກໃຊ້ເພື່ອອັບເດດຮູບແບບລາຍນິ້ວມືຂອງເຂົາເຈົ້າ. ຮູບທີ່ຖືກໃຊ້ເພື່ອສ້າງຮູບແບບລາຍນິ້ວມືຂອງລູກທ່ານຈະບໍ່ຖືກຈັດເກັບໄວ້, ແຕ່ຮູບແບບລາຍນິ້ວມືແມ່ນຖືກຈັດເກັບໄວ້ຢ່າງປອດໄພຢູ່ໂທລະສັບ ແລະ ຈະບໍ່ຖືກສົ່ງອອກຈາກໂທລະສັບເດັດຂາດ. ການປະມວນຜົນທັງໝົດຈະເກີດຂຶ້ນຢ່າງປອດໄພຢູ່ໂທລະສັບ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"ທ່ານສາມາດລຶບຮູບ ແລະ ຮູບແບບລາຍນິ້ວມືຂອງທ່ານ ຫຼື ປິດການປົດລັອກດ້ວຍລາຍນິ້ວມືຕອນໃດກໍໄດ້ໃນການຕັ້ງຄ່າ. ຮູບ ແລະ ຮູບແບບລາຍນິ້ວມືແມ່ນຖືກຈັດເກັບໄວ້ຢູ່ໂທລະສັບຈົນກວ່າທ່ານຈະລຶບພວກມັນອອກ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"ທ່ານ ແລະ ລູກຂອງທ່ານສາມາດລຶບຮູບ ແລະ ຮູບແບບລາຍນິ້ວມືຂອງເຂົາເຈົ້າອອກ ຫຼື ປິດການໃຊ້ການປົດລັອກດ້ວຍລາຍນິ້ວມືຕອນໃດກໍໄດ້ໃນການຕັ້ງຄ່າ. ຮູບລາຍນິ້ວມື ແລະ ຮູບແບບແມ່ນຖືກຈັດເກັບໄວ້ຢູ່ໂທລະສັບຈົນກວ່າພວກມັນຈະຖືກລຶບອອກ."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"ໂທລະສັບຂອງທ່ານສາມາດຖືກປົດລັອກໄດ້ເມື່ອທ່ານບໍ່ໄດ້ຕັ້ງໃຈ ເຊັ່ນ: ຫາກມີຄົນຖືມັນໄປໃສ່ນິ້ວມືຂອງທ່ານ."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"ໂທລະສັບຂອງທ່ານສາມາດຖືກປົດລັອກໄດ້ເມື່ອທ່ານບໍ່ໄດ້ຕັ້ງໃຈ ເຊັ່ນ: ຫາກມີຄົນຖືມັນໄປໃສ່ນິ້ວມືຂອງທ່ານ."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"ແທັບເລັດຂອງທ່ານສາມາດຖືກປົດລັອກໄດ້ເມື່ອທ່ານບໍ່ໄດ້ຕັ້ງໃຈ, ເຊັ່ນ: ຫາກມີຄົນຖືມັນໄປໃສ່ນິ້ວມືຂອງທ່ານ."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"ອຸປະກອນຂອງທ່ານສາມາດຖືກປົດລັອກໄດ້ເມື່ອທ່ານບໍ່ໄດ້ຕັ້ງໃຈ, ເຊັ່ນ: ຫາກມີຄົນຖືມັນໄປໃສ່ນິ້ວມືຂອງທ່ານ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"ໂທລະສັບຂອງລູກທ່ານສາມາດຖືກປົດລັອກໄດ້ໃນເວລາທີ່ເຂົາເຈົ້າບໍ່ໄດ້ຕັ້ງໃຈ ເຊັ່ນ: ຫາກມີຄົນຖືໂທລະສັບໄປໃສ່ນິ້ວມືຂອງເຂົາເຈົ້າ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ເພື່ອໃຫ້ໄດ້ຜົນຮັບທີ່ດີທີ່ສຸດ, ໃຫ້ໃຊ້ຕົວປົກປ້ອງໜ້າຈໍທີ່ໄດ້ຮັບການຮັບຮອງ Made for Google. ດ້ວຍຕົວປົກປ້ອງໜ້າຈໍແບບອື່ນ, ລາຍນິ້ວມືຂອງທ່ານອາດໃຊ້ບໍ່ໄດ້."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ເພື່ອໃຫ້ໄດ້ຜົນຮັບທີ່ດີທີ່ສຸດ, ໃຫ້ໃຊ້ຕົວປົກປ້ອງໜ້າຈໍທີ່ໄດ້ຮັບການຮັບຮອງ Made for Google. ດ້ວຍຕົວປົກປ້ອງໜ້າຈໍແບບອື່ນ, ລາຍນິ້ວມືຂອງລູກທ່ານອາດໃຊ້ບໍ່ໄດ້."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ການ​ອະ​ທິ​ບາຍ​ປະ​ກອບ​ດ້ວຍ​ທີ່​ຕັ້ງ​ເຊັນ​ເຊີ​ອຸ​ປະ​ກອນ ແລະ​ລາຍ​ນີ້ວ​ມື"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"ຊື່"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ຕົກລົງ"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ລອງໃໝ່"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"​ລຶບ"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"ແຕະທີ່ເຊັນເຊີ"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"ວາງ​ນີ້ວ​ມື​ຂອງ​ທ່ານ​ລົງ​ເທິງ​ເຊັນ​ເຊີ ແລະ ຍົກ​ຂຶ້ນ​ຫຼັງ​ຈາກ​ທ່ານ​ຮູ້​ສຶກ​ມີ​ການ​ສັ່ນ"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"ແລ້ວໆ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ອຸ້ຍ, ນັ້ນ​ບໍ່​ແມ່ນ​ເຊັນ​ເຊີ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"ແຕະທີ່ເຊັນເຊີຢູ່ຫຼັງຂອງໂທລະສັບຂອງທ່ານ. ໃຫ້ໃຊ້ນິ້ວຊີ້ທ່ານ."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ການ​ລົງ​ທະ​ບຽນ​ບໍ່​ສຳ​ເລັດ"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"ຮອດ​ຂີດ​ຈຳ​ກັດ​ເວ​ລາ​ການ​ລົງ​ທະ​ບຽນ​ລາຍ​ນີ້ວ​ມື​ແລ້ວ. ກະລຸນາລອງ​ໃໝ່​ອີກຄັ້ງ."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ໝົດເວລາຕັ້ງຄ່າລາຍນິ້ວມື"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ລອງໃໝ່ຕອນນີ້ ຫຼື ຕັ້ງຄ່າລາຍນິ້ວມືຂອງທ່ານພາຍຫຼັງໃນການຕັ້ງຄ່າ"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ການ​ລົງ​ທະ​ບຽນ​ລາຍ​ນີ້ວ​ມື​ບໍ່​ເຮັດ​ວຽກ. ລອງ​ໃໝ່​ອີກ ຫຼື ໃຊ້​ນີ້ວ​ມື​ນີ້ວ​ອື່ນ."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"ເພີ່ມ​ອັນ​ອື່ນ"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"ຕໍ່​ໄປ"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"ປັບແຕ່ງໂທລະສັບຂອງທ່ານ"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"ລອງໃຊ້ຮູບແບບ, ຮູບພື້ນຫຼັງ ແລະ ອື່ນໆທີ່ແຕກຕ່າງກັນ"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"ພາບພັກໜ້າຈໍ"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ພາບພັກໜ້າຈໍ"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"ໃຊ້ພາບພັກໜ້າຈໍ"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ໃນຂະນະທີ່ກຳລັງສາກ ຫຼື ວາງໄວ້ບ່ອນຕັ້ງສາກ"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"ແບບໃດກໍໄດ້"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ໃນຂະນະທີ່ກຳລັງສາກໄຟ"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ໃນຂະນະຕັ້ງໃສ່ບ່ອນຕັ້ງສາກ"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ບໍ່ມີກຳນົດ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ປິດ"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ເພື່ອຄວບຄຸມວ່າຈະເກີດຫຍັງຂຶ້ນເມື່ອວາງໂທລະສັບໄວ້ ແລະ/ຫຼື ເມື່ອກຳລັງນອນຫຼັບ, ໃຫ້ເປີດພາບພັກໜ້າຈໍກ່ອນ."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"ເລີ່ມຕອນໃດ"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"ຕົວພັກໜ້າຈໍປັດຈຸບັນ"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ການຕັ້ງຄ່າ"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ປັບຄວາມແຈ້ງອັດຕະໂນມັດ"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"ຍົກ​ເພື່ອ​ເປີດ​ໜ້າ​ຈໍ"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ການສະແດງຜົນສະພາບແວດລ້ອມ"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ຕັ້ງ PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ຕັ້ງ PIN ບ່ອນເຮັດວຽກ"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ຕັ້ງຮູບແບບ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ເພື່ອຄວາມປອດໄພເພີ່ມເຕີມ, ໃຫ້ຕັ້ງຮູບແບບເພື່ອປົດລັອກອຸປະກອນ"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ຕັ້ງຮູບແບບບ່ອນເຮັດວຽກ"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ເພື່ອໃຊ້ລາຍນິ້ວມື, ໃຫ້ຕັ້ງລະຫັດຜ່ານກ່ອນ"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ເພື່ອໃຊ້ລາຍນິ້ວມື, ໃຫ້ຕັ້ງຮູບແບບປົດລັອກກ່ອນ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"ແອັບ​ສຸກ​ເສີນ"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ຣີເຊັດການຕັ້ງຄ່າແອັບ"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"ຣີເຊັດການຕັ້ງຄ່າຕ່າງໆຂອງແອັບບໍ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ນີ້ຈະຣີເຊັດການຕັ້ງຄ່າທັງໝົດສຳລັບ:\n\n"<li>"ແອັບທີ່ປິດນຳໃຊ້"</li>\n<li>"ການແຈ້ງເຕືອນແອັບທີ່ປິດນຳໃຊ້"</li>\n<li>"ແອັບພລິເຄຊັນເລີ່ມຕົ້ນສຳລັບຄຳສັ່ງຕ່າງໆ"</li>\n<li>"ການຈຳກັດຂໍ້ມູນໃນພື້ນຫຼັງສຳລັບແອັບ"</li>\n<li>"ການຈຳກັດການອະນຸຍາດຕ່າງໆ"</li>\n\n"ທ່ານຈະບໍ່ເສຍຂໍ້ມູນແອັບໃດໆ."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ຂັ້ນຕອນນີ້ຈະຣີເຊັດການຕັ້ງຄ່າທັງໝົດຂອງ:\n\n"<li>"ແອັບທີ່ປິດການນຳໃຊ້"</li>\n<li>"ການແຈ້ງເຕືອນແອັບທີ່ປິດການນຳໃຊ້"</li>\n<li>"ແອັບພລິເຄຊັນເລີ່ມຕົ້ນສຳລັບຄຳສັ່ງຕ່າງໆ"</li>\n<li>"ການຈຳກັດຂໍ້ມູນໃນພື້ນຫຼັງສຳລັບແອັບຕ່າງໆ"</li>\n<li>"ການຈຳກັດການອະນຸຍາດໃກໍຕາມ"</li>\n<li>"ການຕັ້ງຄ່າການນຳໃຊ້ແບັດເຕີຣີ"</li>\n\n"ທ່ານຈະບໍ່ສູນເສຍຂໍ້ມູນແອັບໃດກໍຕາມ."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ຣີເຊັດແອັບ"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ຈັດການພື້ນທີ່"</string>
     <string name="filter" msgid="9039576690686251462">"ໂຕກັ່ນຕອງ"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ຣີເຊັດການຕັ້ງຄ່າ"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ຣີເຊັດການຕັ້ງຄ່າຂະໜາດການສະແດງຜົນ ແລະ ຂໍ້ຄວາມແລ້ວ"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ຣີເຊັດຂະໜາດການສະແດງຜົນ ແລະ ຂໍ້ຄວາມບໍ?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ຂະໜາດການສະແດງຜົນ ແລະ ການຕັ້ງຄ່າຂໍ້ຄວາມຂອງທ່ານຈະຖືກຣີເຊັດເປັນການຕັ້ງຄ່າຕົ້ນສະບັບຂອງໂທລະສັບ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ຂະໜາດການສະແດງຜົນ ແລະ ການຕັ້ງຄ່າຂໍ້ຄວາມຂອງທ່ານຈະຖືກຣີເຊັດເປັນການຕັ້ງຄ່າຕົ້ນສະບັບຂອງໂທລະສັບ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ຂະໜາດການສະແດງຜົນ ແລະ ການຕັ້ງຄ່າຂໍ້ຄວາມຂອງທ່ານຈະຖືກຣີເຊັດເປັນການຕັ້ງຄ່າຕົ້ນສະບັບຂອງແທັບເລັດ"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ຣີເຊັດ"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"ມີແຜນມື້ພັກບໍ່?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ກຳລັງໄປຫາດຊາຍ. ຢາກໄປນຳບໍ?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"ບໍ່ມີການນຳໃຊ້ຫຼັງຈາກສາກເຕັມຫຼ້າສຸດ"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"ບໍ່ມີການນຳໃຊ້ໃນຮອບ 24 ຊມ ທີ່ຜ່ານມາ"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"ຜູ້ໃຊ້ອື່ນໆ"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ການປະເມີນໄລຍະເວລາແບັດເຕີຣີທີ່ເຫຼືອແມ່ນອ້າງອີງຈາກການນຳໃຊ້ອຸປະກອນຂອງທ່ານ"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"ເວລາທີ່ເຫຼືອໂດຍປະມານ"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"ຈົນກວ່າຈະສາກເຕັມ"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"ຄຳ​ສັ່ງ​ສຽງ​ເຕັມ​ຮູບ​​ແບບ ແລະ​ການ​​ໂຕ້​ຕອບ"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"​ການ​ແປງ​ສຽງ​ເປັນ​ຂໍ້​ຄວາມ​ແບບ​ງ່າຍໆ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ບໍ​ລິ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ດ້ວຍ​ສຽງ​ນີ້​ຈະ​​ສາ​ມາດກວດ​ສອບ​ສຽງ​ຕະຫຼອດ​ເວ​ລາ ແລະ​ຄວບ​ຄຸມ​ແອັບ​ພລິ​ເຄ​ຊັນ​ທີ່​ເປີດ​ນຳ​ໃຊ້​ສຽງ​ແທນ​ທ່ານ​ໄດ້. ມັນ​ມາ​ຈາກ​ແອັບ​ພລິ​ເຄ​ຊັນ <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. ທ່ານ​ຕ້ອງ​ການ​ເປີດ​ໃຊ້​ບໍ​ລິ​ການ​ນີ້ບໍ່"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"ການຕັ້ງຄ່າການຈຳແນກຢູ່ອຸປະກອນ"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"ການຈຳແນກຢູ່ອຸປະກອນ"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"ການຈຳແນກສຽງເວົ້າຢູ່ອຸປະກອນ"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"ລະບົບທີ່ຕ້ອງການ"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ການຄັ້ງຄ່າລະບົບ"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"ອັດຕາການເວົ້າ ແລະ ລະດັບສຽງ"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ລຶບ"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"​ແອັບ ແລະ ​ຂໍ້​ມູນ​ທັງ​ໝົດ​ໃນ​ເຊດ​ຊັນ​ນີ້​ຈະ​ຖືກ​ລຶບ​ອອກ."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"ລຶບ​"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ແຂກ (ທ່ານ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ຜູ້ໃຊ້"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"ຜູ້ໃຊ້ອື່ນໆ"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"ລຶບການເຄື່ອນໄຫວແຂກ"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ລຶບແອັບ ແລະ ຂໍ້ມູນແຂກທັງໝົດອອກໃນເວລາອອກຈາກໂໝດແຂກ"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"ລຶບການເຄື່ອນໄຫວແຂກບໍ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ແອັບ ແລະ ຂໍ້ມູນຈາກເຊດຊັນແຂກຈະຖືກລຶບອອກຕອນນີ້ ແລະ ການເຄື່ອນໄຫວແຂກໃນອະນາຄົດທັງໝົດຈະຖືກລຶບອອກໃນແຕ່ລະເທື່ອທີ່ທ່ານອອກຈາກໂໝດແຂກ"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ເປີດ​ການໂທ​"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ເປີດ​ໂທ​ລະ​ສັບ ແລະ SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ລຶບຜູ້ໃຊ້"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"ການແຈ້ງເຕືອນ \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" ທັງໝົດ"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"ການແຈ້ງເຕືອນ <xliff:g id="APP_NAME">%1$s</xliff:g> ທັງໝົດ"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"ການແຈ້ງເຕືອນແບບປັບປ່ຽນໄດ້ເອງ"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ການແຈ້ງເຕືອນຕໍ່ມື້</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> ການແຈ້ງເຕືອນຕໍ່ມື້</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">ປະມານ <xliff:g id="NUMBER_1">%,d</xliff:g> ການແຈ້ງເຕືອນຕໍ່ມື້</item>
+      <item quantity="one">ປະມານ <xliff:g id="NUMBER_0">%d</xliff:g> ການແຈ້ງເຕືອນຕໍ່ມື້</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ການແຈ້ງເຕືອນຕໍ່ອາທິດ</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> ການແຈ້ງເຕືອນຕໍ່ອາທິດ</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">ປະມານ <xliff:g id="NUMBER_1">%,d</xliff:g> ການແຈ້ງເຕືອນຕໍ່ອາທິດ</item>
+      <item quantity="one">ປະມານ <xliff:g id="NUMBER_0">%d</xliff:g> ການແຈ້ງເຕືອນຕໍ່ອາທິດ</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ບໍ່ສົ່ງ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ການແຈ້ງເຕືອນອຸປະກອນ ແລະ ແອັບ"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"ບໍ່ເຮັດຫຍັງ"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"ສັ່ນເຕືອນ"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"ປິດສຽງ"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ເພື່ອເປີດການນຳໃຊ້, ທຳອິດໃຫ້ປ່ຽນ \"ກົດປຸ່ມເປີດປິດຄ້າງໄວ້\" ເປັນເມນູເປີດປິດ."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ເພື່ອເປີດການນຳໃຊ້, ທຳອິດໃຫ້ປ່ຽນ \"ກົດປຸ່ມເປີດປິດຄ້າງໄວ້\" ເປັນເມນູເປີດປິດ."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ລາຍລະອຽດເຄືອຂ່າຍ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"ຊື່ອຸປະກອນຂອງທ່ານຈະສະແດງໃຫ້ແອັບຕ່າງໆຢູ່ໂທລະສັບເຫັນ. ມັນອາດຖືກສະແດງໃຫ້ຄົນອື່ນເຫັນໃນເວລາທີ່ທ່ານເຊື່ອມຕໍ່ຫາອຸປະກອນ Bluetooth, ເຊື່ອມຕໍ່ຫາເຄືອຂ່າຍ Wi-Fi ຫຼື ຕັ້ງຄ່າຮັອດສະປອດ Wi-Fi ນຳ."</string>
     <string name="devices_title" msgid="649715719278562515">"ອຸປະກອນ"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ການຄວບຄຸມອຸປະກອນ"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"ບັດ ແລະ ປີ້ຕ່າງໆ"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"ບັດ ແລະ ປີ້ຕ່າງໆ"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"ກົດປຸ່ມເປີດປິດຄ້າງໄວ້"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"ກົດຄ້າງໄວ້ເພື່ອໃຊ້ຜູ້ຊ່ວຍ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"ກົດຄ້າງໄວ້ເພື່ອເຂົ້າເມນູເປີດປິດ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"ປິດການນຳໃຊ້ການກົດຄ້າງໄວ້ແລ້ວ"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"ກົດປຸ່ມເປີດປິດຄ້າງໄວ້"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ກົດປຸ່ມເປີດປິດຄ້າງໄວ້ເພື່ອເຂົ້າເຖິງ"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"ເມນູເປີດປິດ"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ຜູ້ຊ່ວຍດິຈິຕອນ"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ເຂົ້າເຖິງຜູ້ຊ່ວຍດິຈິຕອນ"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"ເຂົ້າເຖິງເມນູເປີດປິດ"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ເພື່ອໃຊ້, ໃຫ້ຕັ້ງການລັອກໜ້າຈໍກ່ອນ"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"ກົດຄ້າງໄວ້ເພື່ອເອີ້ນຜູ້ຊ່ວຍ"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"ເອີ້ນຜູ້ຊ່ວຍໂດຍການກົດປຸ່ມເປີດປິດຄ້າງໄວ້"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"ເມນູເປີດປິດ ແລະ ເມນູສຸກເສີນ:\nກົດປຸ່ມເປີດປິດ ແລະ ປຸ່ມເພີ່ມສຽງຂຶ້ນພ້ອມກັນ."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"ປ້ອງກັນບໍ່ໃຫ້ເຕືອນດ້ວຍສຽງ:\nມີທາງລັດໃນເມນູລະດັບສຽງ."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"ເມນູເປີດປິດ:\nກົດປຸ່ມເປີດປິດ ແລະ ປຸ່ມເພີ່ມສຽງຂຶ້ນໃນເວລາດຽວກັນ"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"ຢຸດການເຕືອນດ້ວຍສຽງ:\nກົດປຸ່ມລະດັບສຽງສໍາລັບທາງລັດ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"ໄລຍະເວລາກົດຄ້າງໄວ້"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"ປັບຄວາມລະອຽດອ່ອນໂດຍການເລືອກໄລຍະເວລາໃນການກົດປຸ່ມເປີດປິດຄ້າງໄວ້"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"ບໍ່ດົນ"</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 31cc7b5..7a324ae 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Naudojant „Pixel Imprint“, vaizdai naudojami kontrolinio kodo modeliui atnaujinti. Vaizdai, kurie naudojami vaiko kontrolinio kodo modeliui kurti, niekada nesaugomi, bet kontrolinio kodo modelis saugiai saugomas telefone ir visada lieka jame. Visas apdorojimo procesas saugiai vykdomas telefone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Galite bet kada ištrinti kontrolinio kodo vaizdus ir modelį arba išjungti atrakinimo kontroliniu kodu funkciją „Nustatymų“ skiltyje. Kontrolinio kodo vaizdai ir modeliai saugomi telefone, kol juos ištrinate."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Jūs ir jūsų vaikas galite bet kada ištrinti kontrolinio kodo vaizdus ir modelį arba išjungti atrakinimą kontroliniu kodu „Nustatymų“ skiltyje. Kontrolinio kodo vaizdai ir modeliai saugomi telefone, kol ištrinami."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Jūsų telefonas gali būti atrakinamas, kai to neketinate atlikti, pvz., kam nors palaikius jį prie jūsų piršto."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Jūsų telefonas gali būti atrakinamas, kai to neketinate atlikti, pvz., kam nors palaikius jį prie jūsų piršto."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Jūsų planšetinis kompiuteris gali būti atrakinamas, kai to neketinate atlikti, pvz., kam nors palaikius jį prie jūsų piršto."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Jūsų įrenginys gali būti atrakinamas, kai to neketinate atlikti, pvz., kam nors palaikius jį prie jūsų piršto."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Jūsų vaiko telefonas gali būti atrakinamas, kai vaikas to neketina atlikti, pvz., kam nors palaikius jį prie vaiko piršto."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Kad pasiektumėte geriausių rezultatų, naudokite „Made for Google“ sertifikuotą apsauginį ekrano stiklą. Naudojant kitus apsauginius ekrano stiklus kontrolinis kodas gali neveikti."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Kad pasiektumėte geriausių rezultatų, naudokite „Made for Google“ sertifikuotą apsauginį ekrano stiklą. Naudojant kitus apsauginius ekrano stiklus vaiko kontrolinis kodas gali neveikti."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Įrenginio ir piršto antspaudo jutiklio vietos iliustracija"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Pavadinimas"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Gerai"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Bandyti dar kartą"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Ištrinti"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Palieskite jutiklį"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Uždėkite pirštą ant jutiklio ir pakelkite, kai pajusite vibravimą"</string>
@@ -599,8 +602,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Atlikta"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Oi, tai ne jutiklis"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Smiliumi palieskite jutiklį tel. užp. dalyje."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registracija neužbaigta"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Pasiektas piršto antspaudo registracijos laiko apribojimas. Bandykite dar kartą."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Baigėsi kontrolinio kodo sąrankos skirtasis laikas"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Dabar bandykite dar kartą arba vėliau nustatykite kontrolinį kodą skiltyje „Nustatymai“"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Nepavyko užregistruoti piršto antspaudo. Bandykite dar kartą arba atlikite tai kitu pirštu."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Pridėti kitą"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Kitas"</string>
@@ -1488,17 +1491,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Telefono tinkinimas"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Išbandykite skirtingus stilius, ekrano fonus ir kt."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Ekrano užsklanda"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ekrano užsklanda"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Ekrano užsklandos naudojimas"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Įkraunat ar prijungus prie doko"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Abiem atvejais"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Įkraunant"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Kai yra doke"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Niekada"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Išjungta"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Jei norite valdyti, kas vyksta, kai telefonas yra doke ir (arba) veikia miego režimu, įjunkite ekrano užsklandą."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kada paleisti"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Dabartinė ekrano užsklanda"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Nustatymai"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatinis šviesumas"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Pakelti ir pažadinti"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Adaptyvusis vaizdas"</string>
@@ -1990,6 +1991,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN kodo nustatymas"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Darbo PIN kodo nustatymas"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Atrakinimo piešinio nustatymas"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Papildomai saugai užtikrinti nustatykite įrenginio atrakinimo piešinį"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Darbo atrakinimo piešinio nustatymas"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Nust. slapt., kad gal. naud. kont. kodą"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Nust. atrak. pieš., kad gal. naud. piršt. atsp."</string>
@@ -2147,7 +2149,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Avarinė programa"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Iš naujo nustat. nuostat."</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Iš naujo nust. nuostat.?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Bus iš naujo nustatytos visos nurodytų elementų nuostatos:\n\n"<li>"išjungtos programos;"</li>\n<li>"išjungti programų pranešimai;"</li>\n<li>"numatytosios veiksmų programos;"</li>\n<li>"programų foninių duomenų apribojimai;"</li>\n<li>"visi leidimų apribojimai."</li>\n\n"Neprarasite jokių programų duomenų."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Bus iš naujo nustatytos visos nurodytų elementų nuostatos:\n\n"<li>"išjungtos programos;"</li>\n<li>"išjungti programų pranešimai;"</li>\n<li>"numatytosios veiksmų programos;"</li>\n<li>"programų foninių duomenų apribojimai;"</li>\n<li>"visi leidimų apribojimai;"</li>\n<li>"akumuliatoriaus energijos vartojimo nustatymai."</li>\n\n"Neprarasite jokių programų duomenų."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Iš naujo nustat. program."</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Valdyti vietą"</string>
     <string name="filter" msgid="9039576690686251462">"Filtruoti"</string>
@@ -2402,7 +2404,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Nust. nustatymus iš naujo"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Pateikties dydžio ir teksto nustatymai nustatyti iš naujo"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Iš naujo nustatyti ekrano dydį ir tekstą?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Ekrano dydžio ir teksto nuostatos bus nustatytos iš naujo pagal pradinius telefono nustatymus"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Ekrano dydžio ir teksto nuostatos bus nustatytos iš naujo pagal pradinius telefono nustatymus"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Ekrano dydžio ir teksto nuostatos bus nustatytos iš naujo pagal pradinius planšetinio kompiuterio nustatymus"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Nustatyti iš naujo"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Turite planų savaitgaliui?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Vyksime į paplūdimį. Norite prisijungti?"</string>
@@ -3010,6 +3013,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nenaudota nuo pastarojo visiško įkrovimo"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nenaudota per pastarąsias 24 val."</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Kiti naudotojai"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Likęs akumuliatoriaus veikimo laikas numatytas pagal tai, kaip naudojate įrenginį"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Liko laiko (numatyta)"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Iki visiško įkrovimo"</string>
@@ -3099,6 +3103,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Visas aktyvinamasis žodis ir sąveika"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Paprasta kalbos keitimo į tekstą funkcija"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ši įvesties balsu paslauga galės visada stebėti balsu vykdomus veiksmus ir valdyti balsu įgalintas programas jūsų vardu. Ji teikiama iš programos <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Įgalinti šios paslaugos naudojimą?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Atpažinimo įrenginyje nustatymai"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Atpažinimas įrenginyje"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Kalbos atpažinimas įrenginyje"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Pageidaujamas variklis"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Variklio nustatymai"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Kalbėjimo greitis ir tonas"</string>
@@ -3499,6 +3506,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Ištrinti"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Bus ištrintos visos šios sesijos programos ir duomenys."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Pašalinti"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Svečias (jūs)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Naudotojai"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Kiti naudotojai"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Ištrinti svečio veiklą"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Išeinant iš svečio režimo ištrinti visas svečio programas ir duomenis"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Ištrinti svečio veiklą?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Šios svečio sesijos programos ir duomenys bus ištrinti dabar, o visa būsima svečio veikla bus ištrinta kiekvieną kartą, kai išeisite iš svečio režimo"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Įjungti telefono skambučius"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Įjungti telefono skambučius ir SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Naudotojo ištrynimas"</string>
@@ -4095,17 +4109,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Visi „<xliff:g id="APP_NAME">%1$s</xliff:g>“ pranešimai"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Visi „<xliff:g id="APP_NAME">%1$s</xliff:g>“ pranešimai"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Prisitaikantys pranešimai"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~ <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimas per dieną</item>
-      <item quantity="few">~ <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimai per dieną</item>
-      <item quantity="many">~ <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimo per dieną</item>
-      <item quantity="other">~ <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimų per dieną</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Maždaug <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimas per dieną</item>
+      <item quantity="few">Maždaug <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimai per dieną</item>
+      <item quantity="many">Maždaug <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimo per dieną</item>
+      <item quantity="other">Maždaug <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimų per dieną</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~ <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimas per savaitę</item>
-      <item quantity="few">~ <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimai per savaitę</item>
-      <item quantity="many">~ <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimo per savaitę</item>
-      <item quantity="other">~ <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimų per savaitę</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Maždaug <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimas per savaitę</item>
+      <item quantity="few">Maždaug <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimai per savaitę</item>
+      <item quantity="many">Maždaug <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimo per savaitę</item>
+      <item quantity="other">Maždaug <xliff:g id="NUMBER_1">%,d</xliff:g> pranešimų per savaitę</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Niekada"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Įrenginių ir programų pranešimai"</string>
@@ -5423,7 +5437,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Nieko nedaryti"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibruoti"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Nutildyti"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Jei norite įgalinti, pirmiausia pakeiskite veiksmą „Paspausti ir palaikyti maitinimo mygtuką“ į įjungimo meniu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Jei norite įgalinti, pirmiausia pakeiskite veiksmą „Paspausti ir palaikyti maitinimo mygtuką“ į įjungimo meniu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Išsami tinklo info."</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Įrenginio pavadinimas matomas jūsų telefone esančioms programoms. Kai prisijungiate prie „Bluetooth“ įrenginių ar „Wi-FI“ tinklo arba nustatote „Wi-Fi“ viešosios interneto prieigos tašką, jį taip pat gali matyti kiti žmonės."</string>
     <string name="devices_title" msgid="649715719278562515">"Įrenginiai"</string>
@@ -5716,15 +5730,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"įrenginio valdikliai"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kortelės"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kortelės"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Paspausti ir palaikyti maitinimo mygtuką"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Paspausti ir palaikyti, kad būtų suaktyvintas Padėjėjas"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Paspausti ir palaikyti, kad būtų pateiktas maitinimo meniu"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Paspaudimas ir palaikymas išjungtas"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Paspauskite ir palaikykite maitinimo mygtuką"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Paspauskite ir palaikykite maitinimo mygtuką prieigai"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Įjungimo meniu"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Skaitmeninis pagelbiklis"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Pasiekite skaitmeninį pagelbiklį"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Pasiekite įjungimo meniu"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Jei norite naudoti, pirmiausia nustatykite ekrano užraktą"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Paspaudus palaikyti, norint iškviesti Padėjėją"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Padėjėją suaktyvinti laikant nuspaustą maitinimo mygtuką"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Maitinimo ir kritinės padėties meniu:\npaspauskite maitinimo ir garsumo didinimo mygtukus tuo pačiu metu."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Skambėjimo išjungimas:\nspartusis klavišas pasiekiamas garsumo meniu."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Įjungimo meniu:\npaspauskite maitinimo ir garsumo mygtukus tuo pačiu metu"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Skambėjimo išjungimas:\nnorėdami naudoti spartųjį klavišą paspauskite garsumo mygtuką"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Laikymo paspaudus trukmė"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Koreguokite jautrumą nustatydami, kaip ilgai reikia laikyti paspaudus maitinimo mygtuką"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Trumpai"</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 392f807..fd29d09 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -468,7 +468,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Izmantojot funkciju Pixel Imprint, pirksta nospieduma modeļa atjaunināšanai tiek izmantoti attēli. Jūsu bērna pirksta nospieduma modeļa izveidei izmantotie attēli nekad netiek saglabāti, savukārt pirksta nospieduma modelis tiek droši glabāts bērna tālrunī un vienmēr atrodas tikai tālrunī. Apstrāde tiek veikta drošā veidā un tikai bērna tālrunī."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Jebkurā brīdī iestatījumos varat izdzēst pirksta nospieduma attēlus un modeli vai izslēgt autorizāciju ar pirksta nospiedumu. Pirkstu nospiedumu attēli un modeļi tiks glabāti tālrunī, līdz tos izdzēsīsiet."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Iestatījumos jūs un jūsu bērns varat jebkurā laikā dzēst pirksta nospieduma attēlus un modeli vai izslēgt autorizāciju ar pirksta nospiedumu. Pirksta nospieduma attēli un modeļi tiek glabāti tālrunī, līdz tie tiek izdzēsti."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Jūsu tālrunis var tikt nejauši atbloķēts, piemēram, ja kāda persona pavērš to pret jūsu pirkstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Jūsu tālrunis var tikt nejauši atbloķēts, piemēram, ja kāda persona pavērš to pret jūsu pirkstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Jūsu planšetdators var tikt nejauši atbloķēts, piemēram, ja kāda persona pavērš to pret jūsu pirkstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Jūsu ierīce var tikt nejauši atbloķēta, piemēram, ja kāda persona pavērš to pret jūsu pirkstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Jūsu bērna tālrunis var tikt nejauši atbloķēts, piemēram, ja kāda persona pavērš to pret bērna pirkstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Lai iegūtu vislabākos rezultātus, izmantojiet ekrāna aizsargplēvi, kam ir “Made for Google” sertifikāts. Ar citām ekrāna aizsargplēvēm jūsu pirksta nospiedums, iespējams, nedarbosies."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Lai iegūtu vislabākos rezultātus, izmantojiet ekrāna aizsargplēvi, kam ir “Made for Google” sertifikāts. Ar citām ekrāna aizsargplēvēm jūsu bērna pirksta nospiedums, iespējams, nedarbosies."</string>
@@ -518,6 +520,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Attēls ar ierīci un pirkstu nospiedumu sensora atrašanās vietu uz tās"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nosaukums"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Labi"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Mēģināt vēlreiz"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Dzēst"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Pieskarieties sensoram"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Novietojiet pirkstu uz sensora un paceliet to pēc tam, kad sajūtat vibrāciju"</string>
@@ -595,8 +598,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Gatavs"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Tas nav sensors!"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Pieskarieties sensoram tālruņa aizmugurē ar rādītājpirkstu."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Reģistrēšana netika pabeigta"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Ir sasniegts pirksta nospieduma reģistrēšanas laika ierobežojums. Mēģiniet vēlreiz."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Iestatot pirksta nospiedumu, iestājās noildze"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Mēģiniet vēlreiz tūlīt vai iestatiet pirksta nospiedumu vēlāk iestatījumos."</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Neizdevās reģistrēt pirksta nospiedumu. Mēģiniet vēlreiz vai izmantojiet citu pirkstu."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Pievienot citu"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Tālāk"</string>
@@ -1468,17 +1471,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Tālruņa pielāgošana"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Izmēģiniet dažādus stilus, fona tapetes utt."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Ekrānsaudzētājs"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ekrānsaudzētājs"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Izmantot ekrānsaudzētāju"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Uzlādes vai dokošanas laikā"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Vienmēr"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Uzlādes laikā"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Kamēr tiek dokots"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nekad"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Izslēgts"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Lai kontrolētu, kas notiek, kad tālrunis tiek dokots un/vai ir miega režīmā, ieslēdziet ekrānsaudzētāju."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kad sākt"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Pašreizējais ekrānsaudzētājs"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Iestatījumi"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automātisks spilgtums"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Pacelt, lai ieslēgtu"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Gaidstāves ekrāns"</string>
@@ -1968,6 +1969,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN iestatīšana"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Darba PIN iestatīšana"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Kombinācijas iestatīšana"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Papildu drošībai iestatiet kombināciju šīs ierīces atbloķēšanai"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Darba kombinācijas iestatīšana"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Parole pirksta nosp. lietošanai"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Kombinācijas iestatīšana"</string>
@@ -2123,7 +2125,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Ārkārtas izsaukumu lietotne"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Atiest. lietotnes prefer."</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Vai atiest. liet. pref.?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Šādi tiks atiestatītas visas preferences, kas saistītas ar:\n\n"<li>"atspējotām lietotnēm;"</li>\n<li>"atspējotu lietotņu paziņojumiem;"</li>\n<li>"darbībām paredzētām noklusējuma lietojumprogrammām;"</li>\n<li>"lietotņu fona datu ierobežojumiem;"</li>\n<li>"visiem atļauju ierobežojumiem."</li>\n\n"Jūs nezaudēsiet lietotņu datus."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Šādi tiks atiestatītas visas preferences, kas saistītas ar:\n\n"<li>"atspējotām lietotnēm;"</li>\n<li>"atspējotu lietotņu paziņojumiem;"</li>\n<li>"noklusējuma lietojumprogrammām konkrētu darbību veikšanai;"</li>\n<li>"lietotņu fona datu ierobežojumiem;"</li>\n<li>"visiem atļauju ierobežojumiem;"</li>\n<li>"akumulatora lietojuma iestatījumiem."</li>\n\n"Jūs nezaudēsiet lietotņu datus."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Atiestatīt lietotnes"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Vietas pārvaldība"</string>
     <string name="filter" msgid="9039576690686251462">"Filtrs"</string>
@@ -2378,7 +2380,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Atiestatīt iestatījumus"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Attēlojuma lieluma un teksta iestatījumi ir atiestatīti"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Vai atiestatīt displeja izmērus un tekstu?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Jūsu displeja izmēru un teksta preferences tiks atiestatītas uz tālruņa sākotnējiem iestatījumiem."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Jūsu displeja izmēru un teksta preferences tiks atiestatītas uz tālruņa sākotnējiem iestatījumiem."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Jūsu displeja izmēru un teksta preferences tiks atiestatītas uz planšetdatora sākotnējiem iestatījumiem."</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Atiestatīt"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Vai ir kādi plāni nedēļas nogalei?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Es došos uz pludmali. Vai vēlies pievienoties?"</string>
@@ -2972,6 +2975,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nav lietots kopš pēdējās pilnās uzlādes"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nav lietots pēdējo 24 h laikā"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Citi lietotāji"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Akumulatora darbības laiks tiek aprēķināts, pamatojoties uz ierīces lietojuma datiem."</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Plānotais atlikušais laiks"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Līdz pilnai uzlādei"</string>
@@ -3061,6 +3065,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Pilna īsinājumvārdu un mijiedarbības funkcionalitāte"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Vienkārša runas pārvēršana tekstā"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Šis balss ievades pakalpojums varēs jūsu vietā nepārtraukti veikt balss pārraudzību un pārvaldīt lietojumprogrammas, kurās iespējota balss ievade. Tas ir saistīts ar lietojumprogrammu <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Vai iespējot šo pakalpojumu?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Ierīcē izpildāmās atpazīšanas iestatījumi"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Atpazīšana ierīcē"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Runas atpazīšana ierīcē"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Vēlamā programma"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Programmas iestatījumi"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Runas ātrums un augstums"</string>
@@ -3457,6 +3464,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Dzēst"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Tiks dzēstas visas šīs sesijas lietotnes un dati."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Noņemt"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Viesis (jūs)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Lietotāji"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Citi lietotāji"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Dzēst viesa darbības"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Dzēst visas viesa lietotnes un darbības, izejot no viesa režīma"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Vai dzēst viesa darbības?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Šīs viesa sesijas darbības un dati tagad tiks dzēsti, un turpmākās viesu darbības tiks dzēstas katru reizi, kad iziesiet no viesa režīma."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Ieslēgt tālruņa zvanus"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Ieslēgt tālruņa zvanus un īsziņas"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Dzēst lietotāju"</string>
@@ -4051,15 +4065,15 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Visi lietotnes <xliff:g id="APP_NAME">%1$s</xliff:g> paziņojumi"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Visi lietotnes <xliff:g id="APP_NAME">%1$s</xliff:g> paziņojumi"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptīvie paziņojumi"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="zero">Ap <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumiem dienā</item>
-      <item quantity="one">Ap <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumu dienā</item>
-      <item quantity="other">Ap <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumiem dienā</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="zero">Aptuveni <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumu dienā</item>
+      <item quantity="one">Aptuveni <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojums dienā</item>
+      <item quantity="other">Aptuveni <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumi dienā</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="zero">Ap <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumiem nedēļā</item>
-      <item quantity="one">Ap <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumu nedēļā</item>
-      <item quantity="other">Ap <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumiem nedēļā</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="zero">Aptuveni <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumu nedēļā</item>
+      <item quantity="one">Aptuveni <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojums nedēļā</item>
+      <item quantity="other">Aptuveni <xliff:g id="NUMBER_1">%,d</xliff:g> paziņojumi nedēļā</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nekad"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Ierīču un lietotņu paziņojumi"</string>
@@ -5339,7 +5353,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Neveikt nekādas darbības"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrēt"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Izslēgt skaņu"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Lai iespējotu, vispirms nomainiet iestatījumā “Barošanas pogas nospiešana un turēšana” piešķirto darbību uz barošanas izvēlnes atvēršanu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Lai iespējotu, vispirms nomainiet iestatījumu “Nospiest un turēt barošanas pogu” uz barošanas izvēlni."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Dati par tīklu"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Jūsu ierīces nosaukums ir redzams tālrunī instalētajām lietotnēm. Tas var būt redzams arī citām personām, ja izveidosiet savienojumu ar Bluetooth ierīcēm, Wi-Fi tīklu vai iestatīsiet Wi-Fi tīklāju."</string>
     <string name="devices_title" msgid="649715719278562515">"Ierīces"</string>
@@ -5629,15 +5643,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ierīču vadīklas"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartes un caurlaides"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartes un caurlaides"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Barošanas pogas nospiešana un turēšana"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Nospiežot un turot tiek aktivizēts Asistents"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Nospiežot un turot tiek atvērta barošanas izvēlne"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Nospiešana un turēšana ir atspējota"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Nospiediet un turiet barošanas pogu"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Lai piekļūtu, nospiediet un turiet barošanas pogu"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Barošanas izvēlne"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitālais asistents"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Piekļūt digitālajam asistentam"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Piekļūt barošanas izvēlnei"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Lai to izmantotu, vispirms ir jāiestata ekrāna bloķēšana."</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Turēt, lai palaistu Asistentu"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Aktivizējiet Asistentu, turot barošanas pogu."</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Barošanas un ārkārtas izvēlne:\nvienlaikus nospiediet barošanas un skaļuma palielināšanas pogu."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Zvana signāla novēršana:\nsaīsne ir pieejama skaļuma izvēlnē."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Barošanas izvēlne:\nvienlaikus nospiediet barošanas pogu un skaļuma palielināšanas pogu"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Zvana signāla novēršana:\nlai izmantotu īsinājumtaustiņu, nospiediet skaļuma pogu"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Nospiešanas un turēšanas ilgums"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Pielāgojiet jutīgumu, izvēloties, cik ilgi nospiest un turēt barošanas pogu."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Īsi"</string>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index 648bac4..86d93fc 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"При користење на Pixel Imprint, моделот на отпечатокот се ажурира со слики. Сликите што се користат за создавање на моделот на отпечатокот на детето никогаш не се складираат, а самиот модел се складира безбедно во телефонот и никогаш не го напушта. Целата обработка се одвива безбедно во телефонот."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Сега може да ги избришете сликите и моделот на отпечатокот или да го исклучите „Отклучување со отпечаток на прст“ во кое било време во „Поставки“. Сликите и моделот на отпечатокот се складирани во телефонот додека не ги избришете."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Вие и вашето дете може да ги избришете сликите или моделот на отпечатокот или да го исклучите „Отклучувањето со отпечаток на прст“ во секое време во „Поставки“. Сликите и моделите на отпечатокот се складираат во телефонот додека не се избришат."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Телефонот може да се отклучи кога немате таква намера, како на пример, ако некој го допре до вашиот прст."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Телефонот може да се отклучи кога немате таква намера, како на пример, ако некој го допре до вашиот прст."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Таблетот може да се отклучи кога немате таква намера, како на пример, ако некој го допре до вашиот прст."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Уредот може да се отклучи кога немате таква намера, како на пример, ако некој го допре до вашиот прст."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Телефонот на вашето дете може да се отклучи кога детето нема намера за тоа, на пример, ако некој го постави телефонот под неговиот прст."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"За најдобри резултати, користете заштитник на екранот што е сертифициран со „Создадено за Google“. Со другите заштитници на екрани, отпечатоците може да не функционираат."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"За најдобри резултати, користете заштитник на екранот што е сертифициран со „Создадено за Google“. Со другите заштитници на екрани, отпечатоците на вашето дете може да не функционираат."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Илустрација со локација на уредот и сензорот за отпечаток"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Име"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Во ред"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Обидете се пак"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Избриши"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Допрете го сензорот"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Ставете го прстот на сензорот и подигнете го откако ќе почувствувате вибрации"</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Готово"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Упс, тоа не е сензорот"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Допрете го сензорот одзади со показалецот."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Регистрацијата не е завршена"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Времето за регистрирање отпечаток истече. Обидете се повторно."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Времето за поставување отпечаток истече"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Обидете се повторно сега или поставете отпечаток подоцна во „Поставки“"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Внесувањето отпечаток не успеа. Обидете се повторно или користете друг прст."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Додај друг"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Следно"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Приспособете го телефонот"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Пробајте различни стилови, тапети и друго"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Заштитник на екран"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"заштитник на екран"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Користи заштитник на екран"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Додека се полни или е приклучен"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"И во двата случаи"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Додека се полни"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Додека е приклучен на док"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Никогаш"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Исклучено"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"За да контролирате што се случува кога телефонот е приклучен на полнач и/или е во мирување, вклучете го заштитникот на екранот."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Кога да започне"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Тековен заштитник на екранот"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Поставки"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Автоматска осветленост"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Подигнете да се активира"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Амбиентален екран"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Поставете PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Поставете PIN за работен профил"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Поставете шема"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"За дополнителна безбедност, поставете шема за отклучување на уредот"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Поставете шема за работен профил"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"За отпечаток, поставете лозинка"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"За отпечаток, поставете шема"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Апликација за итност"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Ресетирај ги поставките за апликациите"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Да се ресетираат поставките за апликациите?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Со ова ќе се ресетираат сите поставки за:\n\n"<li>"оневозможените апликации"</li>\n<li>"оневозможените известувања за апликации"</li>\n<li>"стандардните апликации за дејства"</li>\n<li>"ограничувањата за интернет во заднина за апликациите"</li>\n<li>"сите ограничувања за дозволите"</li>\n\n"Нема да изгубите никакви податоци во апликациите."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Со ова ќе се ресетираат сите поставки за:\n\n"<li>"оневозможените апликации"</li>\n<li>"оневозможените известувања за апликации"</li>\n<li>"стандардните апликации за дејства"</li>\n<li>"ограничувањата за податоци од заднина за апликациите"</li>\n<li>"сите ограничувања за дозволите"</li>\n<li>"поставките за користење на батеријата"</li>\n\n"Нема да изгубите никакви податоци во апликациите."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Ресетирај апликации"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Управувај со простор"</string>
     <string name="filter" msgid="9039576690686251462">"Филтер"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Ресетирај поставки"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Ресетирани се поставките за големина и текст на екранот"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Да се ресетираат големината и текстот на екранот?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Вашите поставки за големина и текст на екранот ќе се ресетираат на оригиналните поставки на телефонот"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Вашите поставки за големина и текст на екранот ќе се ресетираат на оригиналните поставки на телефонот"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Вашите поставки за големина и текст на екранот ќе се ресетираат на оригиналните поставки на таблетот"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Ресетирај"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Имате ли планови за викендот?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Одиме на плажа. Сакате да ни се придружите?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Не е користена од последното целосно полнење"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Не е користена во минатите 24 часа"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Други корисници"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Проценката за преостанатата батерија се базира врз користењето на уредот"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Проценето преостанато време"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"До целосно полнење"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Целосна услуга – клучен збор и интеракција"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Едноставна услуга – говор во текст"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Услугата за гласовен запис ќе може да извршува постојан гласовен надзор и да ги контролира гласовно овозможените апликации во ваше име. Ова доаѓа од апликацијата <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Овозможете користење на услугата?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Поставки за препознавање на уред"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Препознавање на уред"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Препознавање говор на уред"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Претпочитан софтвер"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Поставки на софтвер"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Брзина и интензитет на говор"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Избриши"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Сите апликации и податоци во сесијата ќе се избришат."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Отстрани"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Гостин (Вие)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Корисници"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Други корисници"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Избришете ја активноста на гостинот"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Избришете ги сите гостински апликации и податоци кога излегувате од режимот на гостин"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Да се избрише активноста на гостин?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Апликациите и податоците од оваа гостинска сесија ќе се избришат сега, а целата идна активност на гостите ќе се брише секој пат кога ќе излезете од режимот на гостин"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Вклучи телефонски повици"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Вклучи телефонски повици и SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Избриши корисник"</string>
@@ -4009,13 +4023,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Сите известувања од „<xliff:g id="APP_NAME">%1$s</xliff:g>“"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Сите известувања од <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Адаптивни известувања"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">околу <xliff:g id="NUMBER_1">%,d</xliff:g> известување дневно</item>
-      <item quantity="other">околу <xliff:g id="NUMBER_1">%,d</xliff:g> известувања дневно</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Околу <xliff:g id="NUMBER_1">%,d</xliff:g> известување дневно</item>
+      <item quantity="other">Околу <xliff:g id="NUMBER_1">%,d</xliff:g> известувања дневно</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">околу <xliff:g id="NUMBER_1">%,d</xliff:g> известување неделно</item>
-      <item quantity="other">околу <xliff:g id="NUMBER_1">%,d</xliff:g> известувања неделно</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Околу <xliff:g id="NUMBER_1">%,d</xliff:g> известување седмично</item>
+      <item quantity="other">Околу <xliff:g id="NUMBER_1">%,d</xliff:g> известувања седмично</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Никогаш"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Известувања во уреди и апликации"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Не прави ништо"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Вибрации"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Исклучи звук"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"За да се овозможи, прво променете ја опцијата „Притиснете го и задржете го копчето за вклучување“ во менито на копчето за вклучување."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"За да се овозможи, прво променете ја опцијата „Притиснете го и задржете го копчето за вклучување“ во менито на копчето за вклучување."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Детали за мрежата"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Името на уредот е видливо за апликациите на телефонот. Може да го видат и други луѓе кога ќе се поврзете со уреди со Bluetooth, ќе се поврзете на Wi-Fi мрежа или кога ќе поставите точка на пристап за Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Уреди"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"контроли за уреди"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Картички и пропусници"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"картички и пропусници"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Притиснете и задржете го копчето за вклучување"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Притиснете и задржете за „Помошникот“"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Притиснете и задржете за менито на копчето за вклучување"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Притиснувањето и задржувањето е оневозможено"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Притиснете го и задржете го копчето за вклучување"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Притиснете го и задржете го копчето за вклучување за пристап"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Мени на копчето за вклучување"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Дигитален помошник"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Пристап до дигиталниот помошник"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Пристап до менито на копчето за вклучување"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"За да користите, прво поставете заклучување екран"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Задржете за „Помошникот“"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Стартувајте го „Помошникот“ со задржување на копчето за вклучување"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Мени на копчето за вклучување и за итни случаи:\nпритиснете ги копчињата за вклучување и зголемување на звукот истовремено."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Спречете ѕвонење:\nкратенката е достапна во менито за јачина на звук."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Мени на копчето за вклучување:\nпритиснете ги и задржете ги копчињата за вклучување и зголемување на звукот истовремено"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Спречете ѕвонење:\nпритиснете го копчето за јачина на звук за да ја користите кратенката"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Времетраење на притискање и задржување"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Приспособете ја чувствителноста со бирање колку долго треба да го притиснете и задржите копчето за вклучување"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Кратко"</string>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index 28f988c..0d63904 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"അവർ Pixel Imprint ഉപയോഗിക്കുമ്പോൾ, അവരുടെ ഫിംഗർപ്രിന്റ് മോഡൽ അപ്ഡേറ്റ് ചെയ്യാൻ ചിത്രങ്ങൾ ഉപയോഗിക്കുന്നു. ഫിംഗർപ്രിന്റ് മോഡൽ സൃഷ്‌ടിക്കാൻ ഉപയോഗിക്കുന്ന ചിത്രങ്ങൾ സംഭരിക്കില്ലെങ്കിലും ഫിംഗർപ്രിന്റ് മോഡൽ സുരക്ഷിതമായി ഫോണിൽ സംഭരിക്കുന്നു, അത് ഒരിക്കലും ഫോണിൽ നിന്ന് പുറത്ത് പോകില്ല. എല്ലാ പ്രോസസിംഗും ഫോണിൽ സുരക്ഷിതമായി നടക്കുന്നു."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"നിങ്ങൾക്ക് ക്രമീകരണത്തിൽ ഏതുസമയത്തും ഫിംഗർപ്രിന്റ് ചിത്രങ്ങളും മോഡലും ഇല്ലാതാക്കാനോ ഫിംഗർപ്രിന്റ് അൺലോക്ക് ഓഫാക്കാനോ കഴിയും. നിങ്ങൾ ഇല്ലാതാക്കുന്നത് വരെ ഫിംഗർപ്രിന്റ് ചിത്രങ്ങളും മോഡലുകളും ഫോണിൽ സംഭരിക്കുന്നു."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"നിങ്ങൾക്കും കുട്ടിക്കും ക്രമീകരണത്തിൽ ഏതുസമയത്തും ഫിംഗർപ്രിന്റ് ചിത്രങ്ങളും മോഡലും ഇല്ലാതാക്കാനോ ഫിംഗർപ്രിന്റ് അൺലോക്ക് ഓഫാക്കാനോ കഴിയും. ഫിംഗർപ്രിന്റ് ചിത്രങ്ങളും മോഡലുകളും ഇല്ലാതാക്കുന്നത് വരെ അവ ഫോണിൽ സംഭരിക്കുന്നു."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"ആരെങ്കിലും ഫോൺ നിങ്ങളുടെ വിരലിൽ തട്ടിക്കുന്നത് പോലെ, നിങ്ങൾ ഉദ്ദേശിക്കാത്ത സന്ദർഭങ്ങളിലും ഫോൺ അൺലോക്ക് ചെയ്യാനാകും."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"ആരെങ്കിലും ഫോൺ നിങ്ങളുടെ വിരലിൽ തട്ടിക്കുന്നത് പോലെ, നിങ്ങൾ ഉദ്ദേശിക്കാത്ത സന്ദർഭങ്ങളിലും ഫോൺ അൺലോക്ക് ചെയ്യാനാകും."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"ആരെങ്കിലും ടാബ്‌ലെറ്റ് നിങ്ങളുടെ വിരലിൽ തട്ടിക്കുന്നത് പോലെ, നിങ്ങൾ ഉദ്ദേശിക്കാത്ത സന്ദർഭങ്ങളിലും ടാബ്‌ലെറ്റ് അൺലോക്ക് ചെയ്യാനാകും."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"ആരെങ്കിലും ഉപകരണം നിങ്ങളുടെ വിരലിൽ തട്ടിക്കുന്നത് പോലെ, നിങ്ങൾ ഉദ്ദേശിക്കാത്ത സന്ദർഭങ്ങളിലും ഉപകരണം അൺലോക്ക് ചെയ്യാനാകും."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"ആരെങ്കിലും ഫോൺ നിങ്ങളുടെ കുട്ടിയുടെ വിരലിന് നേരെ പിടിച്ചാൽ, അവർ ഉദ്ദേശിക്കാത്ത സന്ദർഭങ്ങളിലും ഫോൺ അൺലോക്ക് ചെയ്യാനാകും."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"മികച്ച ഫലങ്ങൾക്കായി, Google-നായി നിർമ്മിച്ചതെന്ന് സാക്ഷ്യപ്പെടുത്തിയ സ്‌ക്രീൻ പ്രൊട്ടക്‌ടർ ഉപയോഗിക്കുക. മറ്റ് സ്‌ക്രീൻ പ്രൊട്ടക്‌ടറുകളിൽ നിങ്ങളുടെ വിരലടയാളം പ്രവർത്തിക്കണമെന്നില്ല."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"മികച്ച ഫലങ്ങൾക്കായി, Google-നായി നിർമ്മിച്ചതെന്ന് സാക്ഷ്യപ്പെടുത്തിയ സ്‌ക്രീൻ പ്രൊട്ടക്‌ടർ ഉപയോഗിക്കുക. മറ്റ് സ്‌ക്രീൻ പ്രൊട്ടക്‌ടറുകളിൽ നിങ്ങളുടെ കുട്ടിയുടെ വിരലടയാളം പ്രവർത്തിക്കണമെന്നില്ല."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ഉപകരണത്തിലെ ചിത്രീകരണവും ഫിംഗർപ്രിന്റ് സെൻസർ ലൊക്കേഷനും"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"പേര്"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ശരി"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"വീണ്ടും ശ്രമിക്കുക"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"ഇല്ലാതാക്കുക"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"സെൻസർ സ്പർശിക്കുക"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"സെൻസറിൽ വിരൽ വച്ച് വൈബ്രേഷൻ അനുഭവപ്പെട്ട ശേഷം വിരൽ മാറ്റുക."</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"പൂർത്തിയായി"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ക്ഷമിക്കണം, അത് സെൻസർ അല്ല"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"നിങ്ങളുടെ ഫോണിന്റെ പിൻവശത്തെ സെൻസർ സ്പർശിക്കുക. ചൂണ്ടുവിരൽ ഉപയോഗിക്കുക."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"എൻറോൾമെന്റ് പൂർത്തിയായിട്ടില്ല"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"ഫിംഗർപ്രിന്റ് എൻറോൾമെന്റിന്റെ സമയ പരിധി എത്തി. വീണ്ടും ശ്രമിക്കുക."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ഫിംഗർപ്രിന്റ് സജ്ജീകരണം ടൈംഔട്ടായി"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ഇപ്പോൾ വീണ്ടും ശ്രമിക്കുക അല്ലെങ്കിൽ പിന്നീട് ക്രമീകരണത്തിൽ ഫിംഗർപ്രിന്റ് സജ്ജീകരിക്കുക"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ഫിംഗർപ്രിന്റ് എൻറോൾമെന്റ് പ്രവർത്തിച്ചില്ല. വീണ്ടും ശ്രമിക്കുകയോ മറ്റൊരു വിരൽ ഉപയോഗിക്കുകയോ ചെയ്യുക."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"മറ്റൊന്ന് ചേർക്കുക"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"അടുത്തത്"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"നിങ്ങളുടെ ഫോൺ ഇഷ്‌ടാനുസൃതമാക്കുക"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"വ്യത്യസ്‌ത സ്റ്റൈലുകളും വാൾപേപ്പറുകളും മറ്റും പരീക്ഷിക്കൂ"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"സ്ക്രീൻ സേവർ"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"സ്‌ക്രീൻ സേവർ"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"സ്ക്രീൻ സേവർ ഉപയോഗിക്കുക"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ചാർജ്/ഡോക്ക് ചെയ്യുമ്പോൾ"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"ഏതിലെങ്കിലും"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ചാർജ് ചെയ്യുമ്പോൾ"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ഡോക്ക് ചെയ്‌തിരിക്കുമ്പോൾ"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ഒരിക്കലും വേണ്ട"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ഓഫ്"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ഫോൺ ഡോക്ക് ചെയ്തിരിക്കുമ്പോൾ ഒപ്പം/അല്ലെങ്കിൽ ഉറക്കത്തിലായിരിക്കുമ്പോൾ ഫോണിൽ നടക്കുന്നതെല്ലാം നിയന്ത്രിക്കുന്നതിന് സ്ക്രീൻ സേവർ ഓണാക്കുക."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"എപ്പോൾ തുടങ്ങണം"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"നിലവിലെ സ്‌ക്രീൻ സേവർ"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ക്രമീകരണം"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"യാന്ത്രിക തെളിച്ചം"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"സജീവമാക്കാൻ ലിഫ്റ്റുചെയ്യുക"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"പാതിമയക്ക ഡിസ്‌പ്ലേ"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"പിൻ സജ്ജീകരിക്കുക"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ഔദ്യോഗിക പിൻ സജ്ജീകരിക്കുക"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"പാറ്റേൺ സജ്ജീകരിക്കുക"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"അധിക സുരക്ഷയ്ക്ക്, ഉപകരണം അൺലോക്ക് ചെയ്യാനൊരു പാറ്റേൺ സജ്ജീകരിക്കുക"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ഔദ്യോഗിക പാറ്റേൺ സജ്ജീകരിക്കുക"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ഫിംഗർപ്രിന്റ് ഉപയോഗിക്കാൻ, പാസ്‌വേഡ് സജ്ജമാക്കുക"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ഫിംഗർപ്രിന്റ് ഉപയോഗിക്കാൻ, പാറ്റേൺ സജ്ജമാക്കുക"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"അടിയന്തിര അപ്ലിക്കേഷൻ"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ആപ്പ് മുൻഗണനകൾ റീസെറ്റ് ചെയ്യുക"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"ആപ്പ് മുൻഗണനകൾ റീസെറ്റ് ചെയ്യണോ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ഇത് ഇനിപ്പറയുന്നവയ്‌ക്കുള്ള എല്ലാ മുൻഗണനകളും റീസെറ്റ് ചെയ്യും:\n\n"<li>"പ്രവർത്തനരഹിതമാക്കിയ ആപ്പുകൾ"</li>\n<li>"പ്രവർത്തനരഹിതമാക്കിയ ആപ്പ് അറിയിപ്പുകൾ"</li>\n<li>"പ്രവർത്തനങ്ങൾക്കുള്ള ഡിഫോൾട്ട് ആപ്പുകൾ"</li>\n<li>"ആപ്പുകൾക്കുള്ള പശ്ചാത്തല ഡാറ്റാ നിയന്ത്രണങ്ങൾ"</li>\n<li>" ഏതെങ്കിലും അനുമതി നിയന്ത്രണങ്ങൾ"</li>\n\n" നിങ്ങൾക്ക് ആപ്പ് ഡാറ്റയൊന്നും നഷ്‌ടമാകില്ല."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ഇത് ഇനിപ്പറയുന്നവയ്‌ക്കുള്ള എല്ലാ മുൻഗണനകളും റീസെറ്റ് ചെയ്യും:\n\n"<li>"പ്രവർത്തനരഹിതമാക്കിയ ആപ്പുകൾ"</li>\n<li>"പ്രവർത്തനരഹിതമാക്കിയ ആപ്പ് അറിയിപ്പുകൾ"</li>\n<li>"പ്രവർത്തനങ്ങൾക്കുള്ള ഡിഫോൾട്ട് ആപ്പുകൾ"</li>\n<li>"ആപ്പുകൾക്കുള്ള പശ്ചാത്തല ഡാറ്റാ നിയന്ത്രണങ്ങൾ"</li>\n<li>"ഏതെങ്കിലും അനുമതി നിയന്ത്രണങ്ങൾ"</li>\n<li>"ബാറ്ററി ഉപയോഗ ക്രമീകരണം"</li>\n\n"ഒരു ആപ്പ് ഡാറ്റയും നിങ്ങൾക്ക് നഷ്‌ടപ്പെടില്ല."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ആപ്പുകൾ റീസെറ്റ് ചെയ്യുക"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ഇടം മാനേജ് ചെയ്യുക"</string>
     <string name="filter" msgid="9039576690686251462">"ഫിൽട്ടർ ചെയ്യുക"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ക്രമീകരണം റീസെറ്റ് ചെയ്യൂ"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ഡിസ്‌പ്ലേ വലുപ്പവും ടെക്‌സ്‌റ്റ് ക്രമീകരണവും റീസെറ്റ് ചെയ്‌തു"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ഡിസ്പ്ലേ വലുപ്പവും ടെക്സ്റ്റും റീസെറ്റ് ചെയ്യണോ?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"നിങ്ങളുടെ ഡിസ്പ്ലേ വലുപ്പവും ടെക്സ്റ്റ് മുൻഗണനകളും ഫോണിന്റെ ഒറിജിനൽ ക്രമീകരണത്തിലേക്ക് റീസെറ്റ് ചെയ്യും"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"നിങ്ങളുടെ ഡിസ്പ്ലേ വലുപ്പവും ടെക്സ്റ്റ് മുൻഗണനകളും ഫോണിന്റെ ഒറിജിനൽ ക്രമീകരണത്തിലേക്ക് റീസെറ്റ് ചെയ്യും"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"നിങ്ങളുടെ ഡിസ്പ്ലേ വലുപ്പവും ടെക്സ്റ്റ് മുൻഗണനകളും ടാബ്‌ലെറ്റിന്റെ ഒറിജിനൽ ക്രമീകരണത്തിലേക്ക് റീസെറ്റ് ചെയ്യും"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"റീസെറ്റ് ചെയ്യുക"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"വാരാന്ത്യ പരിപാടികൾ എന്തെങ്കിലുമുണ്ടോ?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ബീച്ചിൽ പോകുന്നു. ചേരാൻ താൽപ്പര്യമുണ്ടോ?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"അവസാനം പൂർണ്ണമായി ചാർജ് ആയതിന് ശേഷം ഉപയോഗിച്ചിട്ടില്ല"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"കഴിഞ്ഞ 24 മണിക്കൂറിനിടെ ഉപയോഗിച്ചിട്ടില്ല"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"മറ്റ് ഉപയോക്താക്കൾ"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"നിങ്ങളുടെ ഉപകരണ ഉപയോഗത്തെ അടിസ്ഥാനമാക്കിയുള്ളതാണ് ബാക്കിയുള്ള ബാറ്ററിയുടെ ഏകദേശക്കണക്ക്"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"അവശേഷിക്കുന്ന ഏകദേശ സമയം"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"പൂർണ്ണമായി ചാർജ്ജുചെയ്യുന്നത് വരെ"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"മുഴുവൻ ഹോട്ട്‌വേഡും ആശയവിനിമയവും"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"ലളിതമായ സ്‌പീച്ച് ടു ടെക്‌സ്റ്റ്"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ഈ വോയ്‌സ് ഇൻപുട്ട് സേവനത്തിന് നിങ്ങൾക്കായി എപ്പോഴും വോയ്‌സ് നിരീക്ഷിക്കാനും വോയ്‌സ് പ്രവർത്തനക്ഷമമാക്കിയ അപ്ലിക്കേഷനുകളെ നിയന്ത്രിക്കാനുമാകും. ഇത് <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> അപ്‌ലിക്കേഷനിൽ നിന്നുള്ളതാണ്. ഈ സേവനത്തിന്റ ഉപയോഗം പ്രവർത്തനക്ഷമമാക്കണോ?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"ഉപകരണത്തിലെ തിരിച്ചറിയൽ ക്രമീകരണം"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"ഉപകരണത്തിലെ തിരിച്ചറിയൽ"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"ഉപകരണത്തിലെ സംഭാഷണം തിരിച്ചറിയൽ"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"മുൻഗണന നൽകുന്ന എഞ്ചിൻ"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"എഞ്ചിൻ ക്രമീകരണം"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"വായനയുടെ വേഗത, ഉച്ചത"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ഇല്ലാതാക്കുക"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"ഈ സെഷനിലെ എല്ലാ ആപ്പുകളും ഡാറ്റയും ഇല്ലാതാക്കും."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"നീക്കംചെയ്യുക"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"അതിഥി (നിങ്ങൾ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ഉപയോക്താക്കൾ"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"മറ്റ് ഉപയോക്താക്കൾ"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"അതിഥി ആക്‌റ്റിവിറ്റി ഇല്ലാതാക്കുക"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"അതിഥി മോഡിൽ നിന്ന് പുറത്തുകടക്കുമ്പോൾ എല്ലാ അതിഥി ആപ്പുകളും ഡാറ്റയും ഇല്ലാതാക്കുക"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"അതിഥി ആക്‌റ്റിവിറ്റി ഇല്ലാതാക്കണോ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ഈ അതിഥി സെഷനിൽ നിന്നുള്ള ആപ്പുകളും ഡാറ്റയും ഇപ്പോൾ ഇല്ലാതാക്കും, അതിഥി മോഡിൽ നിന്ന് നിങ്ങൾ പുറത്തുകടക്കുമ്പോഴെല്ലാം ഭാവിയിലെ എല്ലാ അതിഥി ആക്‌റ്റിവിറ്റിയും ഇല്ലാതാക്കും"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ഫോൺ കോളുകൾ ഓണാക്കുക"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ഫോൺ കോളുകൾ, SMS എന്നിവ ഓണാക്കുക"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ഉപയോക്താവിനെ ഇല്ലാതാക്കുക"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"എല്ലാ \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" അറിയിപ്പുകളും"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"എല്ലാ <xliff:g id="APP_NAME">%1$s</xliff:g> അറിയിപ്പുകളും"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"അഡാപ്റ്റീവ് അറിയിപ്പുകൾ"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">പ്രതിദിനം ~<xliff:g id="NUMBER_1">%,d</xliff:g> അറിയിപ്പുകൾ</item>
-      <item quantity="one">പ്രതിദിനം ~<xliff:g id="NUMBER_0">%d</xliff:g> അറിയിപ്പ്</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">ഓരോ ദിവസവും ഏകദേശം <xliff:g id="NUMBER_1">%,d</xliff:g> അറിയിപ്പുകൾ</item>
+      <item quantity="one">ഓരോ ദിവസവും ഏകദേശം <xliff:g id="NUMBER_0">%d</xliff:g> അറിയിപ്പ്</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">പ്രതിവാരം ~<xliff:g id="NUMBER_1">%,d</xliff:g> അറിയിപ്പുകൾ</item>
-      <item quantity="one">പ്രതിവാരം ~<xliff:g id="NUMBER_0">%d</xliff:g> അറിയിപ്പ്</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">ഓരോ ആഴ്ചയും ഏകദേശം <xliff:g id="NUMBER_1">%,d</xliff:g> അറിയിപ്പുകൾ</item>
+      <item quantity="one">ഓരോ ആഴ്ചയും ഏകദേശം <xliff:g id="NUMBER_0">%d</xliff:g> അറിയിപ്പ്</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ഒരിക്കലും"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ഉപകരണ, ആപ്പ് അറിയിപ്പുകൾ"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"ഒന്നും ചെയ്യരുത്"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"വൈബ്രേറ്റ് ചെയ്യുക"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"മ്യൂട്ട് ചെയ്യുക"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"പ്രവർത്തനക്ഷമമാക്കാൻ ആദ്യം \"പവർ ബട്ടൺ അമർത്തിപ്പിടിക്കുക\" പവർ മെനുവിലേക്ക് മാറ്റുക."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"പ്രവർത്തനക്ഷമമാക്കാൻ, ആദ്യം \"പവർ ബട്ടൺ അമർത്തിപ്പിടിക്കുക\" പവർ മെനുവിലേക്ക് മാറ്റുക."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"നെറ്റ്‌വർക്ക് വിശദാംശങ്ങൾ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"ഫോണിലെ ആപ്പുകൾക്ക് നിങ്ങളുടെ ഉപകരണത്തിന്റെ പേര് ദൃശ്യമാണ്. Bluetooth ഉപകരണങ്ങളിലേക്കോ വൈഫൈ നെറ്റ്‌വർക്കിലേക്കോ കണക്റ്റ് ചെയ്യുമ്പോഴോ ഒരു വൈഫൈ ഹോട്ട്സ്പോട്ട് സജ്ജീകരിക്കുമ്പോഴോ ഇത് മറ്റ് ആളുകൾക്കും കാണാനായേക്കും."</string>
     <string name="devices_title" msgid="649715719278562515">"ഉപകരണങ്ങൾ"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ഉപകരണ നിയന്ത്രണങ്ങൾ"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"കാർഡുകളും പാസുകളും"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"കാർഡുകളും പാസുകളും"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"പവർ ബട്ടൺ അമർത്തിപ്പിടിക്കുക"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant-ന്, അമർത്തിപ്പിടിക്കുക"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"പവർ മെനുവിന്, അമർത്തിപ്പിടിക്കുക"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"അമർത്തിപ്പിടിക്കൽ പ്രവർത്തനരഹിതമാക്കി"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"പവർ ബട്ടൺ അമർത്തിപ്പിടിക്കുക"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ആക്‌സസ് ചെയ്യാൻ പവർ ബട്ടൺ അമർത്തിപ്പിടിക്കുക"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"പവർ മെനു"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ഡിജിറ്റൽ അസിസ്‌റ്റന്റ്"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ഡിജിറ്റൽ അസിസ്‌റ്റന്റ് ആക്‌സസ് ചെയ്യുക"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"പവർ മെനു ആക്‌സസ് ചെയ്യുക"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ഉപയോഗിക്കാൻ, ആദ്യം സ്ക്രീൻ ലോക്ക് സജ്ജീകരിക്കുക"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant-നായി അമർത്തിപ്പിടിക്കുക"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"പവർ ബട്ടൺ അമർത്തിപ്പിടിച്ച് Assistant സജീവമാക്കുക"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"പവർ, അടിയന്തര മെനു:\nപവർ, ശബ്‌ദം കൂട്ടുക എന്നീ ബട്ടണുകൾ ഒരേസമയം അമർത്തുക."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"റിംഗ് ചെയ്യുന്നത് തടയുക:\nശബ്‌ദ മെനുവിൽ കുറുക്കുവഴി ലഭ്യമാണ്."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"പവർ മെനു:\nപവർ ബട്ടണും ശബ്‌ദം കൂട്ടുന്ന ബട്ടണും ഒരുമിച്ച് അമർത്തുക"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"റിംഗ് ചെയ്യുന്നത് തടയുക:\nകുറുക്കുവഴിക്കായി ഒരു വോളിയം ബട്ടൺ അമർത്തുക"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"സമയ ദൈർഘ്യം അമർത്തിപ്പിടിക്കുക"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"പവർ ബട്ടൺ എത്ര സമയം അമർത്തിപ്പിടിക്കണമെന്ന് തിരഞ്ഞെടുത്ത് സെൻസിറ്റിവിറ്റി ക്രമീകരിക്കുക"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"ദൈർഘ്യം കുറഞ്ഞത്"</string>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 21f097a..f1fcceb 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Таны хүүхэд Pixel Imprint-г ашиглах үед зургийг түүний хурууны хээний загварыг шинэчлэхэд ашиглана. Таны хүүхдийн хурууны хээний загварыг үүсгэхэд ашигласан зургийг хэзээ ч хадгалахгүй хэдий ч хурууны хээний загварыг утсанд аюулгүйгээр хадгалах бөгөөд тэндээ үлдэнэ. Бүх боловсруулалт утсанд аюулгүйгээр хийгдэнэ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Та хүссэн үедээ Тохиргоо хэсэгт хурууны хээний зургууд болон загвараа устгах эсвэл Хурууны хээгээр түгжээ тайлах онцлогийг унтраах боломжтой. Хурууны хээний зургууд болон загваруудыг таныг устгах хүртэл утсан дээр хадгална."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Та болон таны хүүхэд хүссэн үедээ Тохиргоо хэсэгт түүний хурууны хээний зураг болон загварыг устгах эсвэл Хурууны хээгээр түгжээ тайлах онцлогийг унтраах боломжтой. Хурууны хээний зураг болон загварыг устгах хүртэл утсанд хадгална."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Таны утсыг хэн нэгэн хуруунд тань барьж хүргэх зэргээр түгжээг нь санамсаргүйгээр тайлах боломжтой."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Таны утсыг хэн нэгэн хуруунд тань барьж хүргэх зэргээр түгжээг нь санамсаргүйгээр тайлах боломжтой."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Таны таблетыг хэн нэгэн хуруунд тань барьж хүргэх зэргээр таныг хүсээгүй байхад түгжээг нь тайлах боломжтой."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Таны төхөөрөмжийг хэн нэгэн хуруунд тань барьж хүргэх зэргээр таныг хүсээгүй байхад түгжээг нь тайлах боломжтой."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Таны хүүхдийн утсыг хэн нэгэн хуруунд нь барьж хүргэх зэргээр түгжээг нь санамсаргүйгээр тайлах боломжтой."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Хамгийн сайн үр дүнд хүрэхийн тулд Made for Google-р баталгаажсан дэлгэц хамгаалагчийг ашиглана уу. Бусад дэлгэц хамгаалагчийг ашиглах үед таны хурууны хээг танихгүй байж болзошгүй."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Хамгийн сайн үр дүнд хүрэхийн тулд Made for Google-р баталгаажсан дэлгэц хамгаалагчийг ашиглана уу. Бусад дэлгэц хамгаалагчийг ашиглах үед таны хүүхдийн хурууны хээг танихгүй байж болзошгүй."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Төхөөрөмж болон хурууны хээний мэдрэгчийн байршлын зураг"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Нэр"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Дахин оролдох"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Устгах"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Мэдрэгчид хүрнэ үү"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Мэдрэгч дээр хуруугаа тавиад, чичиргээ мэдрэгдэхэд аваарай"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Болсон"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Уучлаарай, энэ мэдрэгч биш байна"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Утасныхаа ар талын мэдрэгчид хүрнэ үү. Долоовор хуруугаа ашиглана уу."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Бүртгэлийг гүйцэт хийж чадсангүй"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Хурууны хээ оруулах хугацаа өнгөрсөн байна. Дахин оруулна уу."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Хурууны хээний тохируулга завсарласан"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Одоо дахин оролдох эсвэл Тохиргоо хэсэгт хурууны хээгээ тохируулна уу"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Хурууны хээг оруулж чадсангүй. Дахин оролдох, эсвэл өөр хуруу ашиглана уу."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Өөрийг нэмэх"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Дараах"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Утсаа өөрчлөх"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Өөр загвар, дэлгэцийн зураг болон бусад зүйлийг туршиж үзнэ үү"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Дэлгэц амраагч"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"дэлгэц амраагч"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Дэлгэц амраагчийг ашиглах"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Цэнэглэх эсвэл суурилуулах үед"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Аль аль нь"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Цэнэглэж байх үед"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Док дээр суурилуулсан үед"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Хэзээ ч үгүй"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Идэвхгүй"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Утсыг суурилуулсан ба/эсвэл идэвхгүй үед хэрхэхийг удирдахын тулд дэлгэц амраагчийг асаана уу."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Эхлэх үе"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Одоогийн дэлгэц амраагч"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Тохиргоо"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Автомат гэрэлтүүлэг"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Сэрээхийн тулд өргөх"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Идэвхгүй дэлгэц"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ПИН тохируулах"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Ажлын ПИН тохируулах"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Хээ тохируулах"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Хамгаалалтыг сайжруулахын тулд төхөөрөмжийн түгжээг тайлах хээ тохируулна уу"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Ажлын хээ тохируулах"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Хурууны хээ ашиглахын тулд нууц үг тохируулах"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Хурууны хээ ашиглахын тулд хээ тохируулах"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Яаралтай тусламжийн апп"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Апп тохируулгыг дахин шинэчлэх"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Апп тохируулгыг дахин шинэчлэх үү?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Энэ нь дараахын бүх тохиргоог шинэчилнэ:\n\n "<li>"Идэвхгүй болгосон хэрэглээний аппууд"</li>\n" "<li>"Идэвхгүй болгосон аппын мэдэгдлүүд"</li>\n" "<li>"Үйлдэл хийх өгөгдмөл аппууд"</li>\n" "<li>"Аппуудын цаана дата ашиглах хязгаарлалт"</li>\n" "<li>"Зөвшөөрлийн аливаа хязгаарлалт"</li>\n\n" Та аппын ямар ч өгөгдлөө алдахгүй."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Энэ нь дараахын бүх тохиргоог шинэчилнэ:\n\n"<li>"Идэвхгүй болгосон аппууд"</li>\n<li>"Идэвхгүй болгосон аппын мэдэгдэл"</li>\n<li>"Үйлдэл хийх өгөгдмөл аппликэйшнууд"</li>\n<li>"Аппуудын арын дата хязгаарлалт"</li>\n<li>"Аливаа зөвшөөрлийн хязгаарлалт"</li>\n<li>"Батарей ашиглалтын тохиргоо"</li>\n\n"Та ямар ч аппын өгөгдөл алдахгүй."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Апп-г дахин шинэчлэх"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Эзэлсэн зайг удирдах"</string>
     <string name="filter" msgid="9039576690686251462">"Шүүлтүүр"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Тохиргоог шинэчлэх"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Дэлгэцийн хэмжээ болон текстийн тохиргоог шинэчилсэн"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Дэлгэцийн хэмжээ болон текстийг шинэчлэх үү?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Таны дэлгэцийн хэмжээ болон текстийн сонголтыг утасны эх тохиргоо руу шинэчилнэ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Таны дэлгэцийн хэмжээ болон текстийн сонголтыг утасны эх тохиргоо руу шинэчилнэ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Таны дэлгэцийн хэмжээ болон текстийн сонголтыг таблетын эх тохиргоо руу шинэчилнэ"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Шинэчлэх"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Амралтын өдрүүдээр ямар нэг төлөвлөгөө байна уу?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Далайн эрэг рүү явна. Цуг явах уу?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Сүүлд бүрэн цэнэглэснээс хойш ашиглаагүй"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Өнгөрсөн 24 цагийн турш ашиглаагүй"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Бусад хэрэглэгч"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Таны төхөөрөмжийн ашиглалтад үндэслэн батарейны үлдсэн түвшнийг тооцдог"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Барагцаалсан үлдсэн хугацаа"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Бүрэн цэнэглэх хүртэл"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Бүрэн хотворд болон харилцан үйлчлэл"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Энгийн яриаг бичвэрт буулгах"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Энэ дуун оруулгын үйлчилгээ нь дуун хяналтыг байнга ажиллуулах болон дуугаар ажиллах апп-уудыг таны өмнөөс хянах боломжтой болно.Үүнийг <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> аппликейшн нийлүүлдэг. Энэ үйлчилгээг идэвхжүүлэх үү?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Төхөөрөмж дээрх танилтын тохиргоо"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Төхөөрөмж дээрх танилт"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Төхөөрөмж дээрх яриа таних"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Давуу систем"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Хөдөлгүүрийн тохиргоо"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Ярианы түвшин, өнгө"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Устгах"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Энэ харилцан үйлдлийн бүх апп болон дата устах болно."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Хасах"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Зочин (Та)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Хэрэглэгчид"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Бусад хэрэглэгч"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Зочны үйл ажиллагааг устгах"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Бүх зочны апп болон өгөгдлийг зочны горимоос гарах үед устгана"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Зочны үйл ажиллагааг устгах уу?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Энэ зочны харилцан үйлдлийн аппууд болон өгөгдлийг одоо устгах бөгөөд ирээдүйн бүх зочны үйл ажиллагааг таныг зочны горимоос гарах бүрд устгана"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Утасны дуудлагыг идэвхжүүлэх"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Утасны дуудлага &amp; SMS авах"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Хэрэглэгчийг устгах"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\"-н бүх мэдэгдэл"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g>-н бүх мэдэгдэл"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Орчинтой тохирсон мэдэгдлүүд"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~Өдөрт <xliff:g id="NUMBER_1">%,d</xliff:g> мэдэгдэл</item>
-      <item quantity="one">~Өдөрт <xliff:g id="NUMBER_0">%d</xliff:g> мэдэгдэл</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Өдөрт ойролцоогоор <xliff:g id="NUMBER_1">%,d</xliff:g> мэдэгдэл</item>
+      <item quantity="one">Өдөрт ойролцоогоор <xliff:g id="NUMBER_0">%d</xliff:g> мэдэгдэл</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~Долоо хоногт <xliff:g id="NUMBER_1">%,d</xliff:g> мэдэгдэл</item>
-      <item quantity="one">~Долоо хоногт <xliff:g id="NUMBER_0">%d</xliff:g> мэдэгдэл</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Долоо хоногт ойролцоогоор <xliff:g id="NUMBER_1">%,d</xliff:g> мэдэгдэл</item>
+      <item quantity="one">Долоо хоногт ойролцоогоор <xliff:g id="NUMBER_0">%d</xliff:g> мэдэгдэл</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Хэзээ ч үгүй"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Төхөөрөмж, аппын мэдэгдлүүд"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Юу ч бүү хий"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Чичиргэх"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Дууг хаах"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Идэвхжүүлэхийн тулд эхлээд \"Асаах/унтраах товчийг удаан дарах\"-ыг асаах/унтраах цэс болгож өөрчлөөрэй."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Идэвхжүүлэхийн тулд эхлээд \"Асаах/унтраах товчийг удаан дарах\"-ыг асаах/унтраах цэс болгож өөрчлөөрэй."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Сүлжээний мэдээлэл"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Таны төхөөрөмжийн нэр таны утсан дээрх аппуудад харагдана. Үүнийг мөн таныг Bluetooth төхөөрөмжүүд болон Wi-Fi сүлжээнд холбогдох эсвэл Wi-Fi сүлжээний цэг тохируулах үед бусад хүн харж болзошгүй."</string>
     <string name="devices_title" msgid="649715719278562515">"Төхөөрөмжүүд"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"төхөөрөмжийн хяналт"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Карт, тасалбарууд"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"карт, тасалбарууд"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Асаах/унтраах товчийг удаан дарна уу"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Туслахыг ашиглахын тулд удаан дарах товчийг идэвхжүүлсэн"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Асаах/унтраах цэсэд удаан дарах товчийг идэвхжүүлсэн"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Удаан дарах товчийг идэвхгүй болгосон"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Асаах/унтраах товчийг удаан дарна уу"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Нэвтрэхийн тулд асаах/унтраах товчийг удаан дарна уу"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Асаах/унтраах цэс"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Дижитал туслах"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Дижитал туслах руу нэвтрэх"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Асаах/унтраах цэс рүү нэвтрэх"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Ашиглахын тулд эхлээд дэлгэцийн түгжээг тохируулна уу"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Туслахыг дуудахын тулд удаан дарна уу"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Асаах/унтраах товчийг удаан дарснаар Туслахыг идэвхжүүлнэ үү"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Асаах/унтраах болон яаралтай тусламжийн цэс:\nАсаах/унтраах болон дууны түвшнийг нэмэх товчийг зэрэг дарна уу."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Хонх дуугаргахаас сэргийлэх:\nДууны түвшний цэсэд товчлол боломжтой байна."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Асааах унтраах цэс:\nАсаах/унтраах товч болон дууны түвшнийг нэмэх товчийг нэгэн зэрэг дарна уу"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Хонх дуугаргахаас сэргийлэх:\n Товчлолд зориулан дууны түвшний товчлуурыг дарна уу"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Дараад үргэлжлэх хугацааг удаан дарна уу"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Хэр удаан дарахаа сонгож мэдрэгшлийг тохируулаад асаах/унтраах товчийг удаан дарна уу"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Хурдан"</string>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index 69e1daf..6dc13c2 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"ते Pixel Imprint वापरतात तेव्हा, त्यांचे फिंगरप्रिंट मॉडेल अपडेट करण्यासाठी इमेज वापरल्या जातात. तुमच्या लहान मुलाचे फिंगरप्रिंट मॉडेल तयार करण्यासाठी वापरलेल्या इमेज कधीही स्टोअर केल्या जात नाहीत पण, फिंगरप्रिंट मॉडेल फोनवर सुरक्षितरीत्या स्टोअर केले जाते आणि ते फोनमध्येच राहते. फोनवर सर्व प्रक्रिया सुरक्षितरीत्या होते."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"तुम्ही तुमच्या फिंगरप्रिंट इमेज आणि मॉडेल हटवू शकता किंवा सेटिंग्ज मध्ये फिंगरप्रिंट अनलॉक कधीही बंद करू शकता. तुम्ही फिंगरप्रिंट इमेज आणि मॉडेल हे हटवत नाही तोपर्यंत, ते तुमच्या फोनमध्ये स्टोअर केलेले असतात."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"तुम्ही आणि तुमचे लहान मूल त्यांच्या फिंगरप्रिंट इमेज व मॉडेल हटवू शकते किंवा सेटिंग्ज मध्ये फिंगरप्रिंट अनलॉक कधीही बंद करू शकते. फिंगरप्रिंट इमेज आणि मॉडेल हटवली जात नाहीत तोपर्यंत, ती फोनमध्ये स्टोअर केलेली असतात."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"एखाद्या व्यक्तीने तुमच्या बोटावर तुमचा फोन धरल्यास, तुम्हाला तो अनलॉक करायचा नसतानादेखील तो अनलॉक होऊ शकतो."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"एखाद्या व्यक्तीने तुमच्या बोटावर तुमचा फोन धरल्यास, तुम्हाला तो अनलॉक करायचा नसतानादेखील तो अनलॉक होऊ शकतो."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"एखाद्या व्यक्तीने तुमच्या बोटावर तुमचा टॅबलेट धरल्यास, तुम्हाला टॅबलेट अनलॉक करायचा नसतानादेखील तो अनलॉक होऊ शकतो."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"एखाद्या व्यक्तीने तुमच्या बोटावर तुमचे डिव्हाइस धरल्यास, तुम्हाला डिव्हाइस अनलॉक करायचे नसतानादेखील ते अनलॉक होऊ शकते."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"एखाद्या व्यक्तीने तुमच्या लहान मुलाच्या बोटावर त्यांचा फोन धरल्यास, त्यांना तो अनलॉक करायचा नसतानादेखील तो अनलॉक होऊ शकतो."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"सर्वोत्तम परिणामांसाठी, Google साठी बनवलेले प्रमाणित असलेले स्क्रीन प्रोटेक्टर वापरा. इतर स्क्रीन प्रोटेक्‍टरसह, तुमचे फिंगरप्रिंट कदाचित काम करणार नाही."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"सर्वोत्तम परिणामांसाठी, Google साठी बनवलेले प्रमाणित असलेले स्क्रीन प्रोटेक्टर वापरा. इतर स्क्रीन प्रोटेक्‍टरसह, तुमच्या लहान मुलाचे फिंगरप्रिंट कदाचित काम करणार नाही."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"डिव्हाइस आणि फिंगरप्रिंट सेन्सर स्थानासह चित्रे"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"नाव"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ठीक आहे"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"पुन्हा प्रयत्न करा"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"हटवा"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"सेंसरला स्पर्श करा"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"तुमचे बोट सेन्सरवर ठेवा आणि व्हायब्रेशन जाणवल्यावर काढा"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"पूर्ण झाले"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"अरेरे, तो सेन्सर नाही"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"तुमच्या फोनच्या मागील बाजूस असलेल्या सेंसरला स्पर्श करा. तुमची तर्जनी वापरा."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"नोंदणी पूर्ण झाली नाही"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"फिंगरप्रिंट नोंदणी वेळ मर्यादा गाठली. पुन्हा प्रयत्न करा."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"फिंगरप्रिट सेट करण्याची वेळ संपली आहे"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"आता पुन्हा प्रयत्न करा किंवा सेटिंग्ज मध्ये तुमचे फिंगरप्रिंट नंतर सेट करा"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"फिंगरप्रिंट नोंदणीने कार्य केले नाही. पुन्हा प्रयत्न करा किंवा भिन्न बोट वापरून पहा."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"आणखी एक जोडा"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"पुढील"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"तुमचा फोन कस्टमाइझ करा"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"वेगळी शैली, वॉलपेपर आणि बरेच काही वापरून पहा"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"स्क्रीन सेव्हर"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"स्क्रीनसेव्हर"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"स्क्रीन सेव्हर वापरा"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"चार्ज होत असताना किंवा डॉक केलेले असताना"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"दोन्ही"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"चार्ज होत असताना"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"डॉक केलेले असताना"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"कधीही नाही"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"बंद"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"फोन डॉक केलेला असताना आणि/किंवा निष्क्रिय असताना काय होते हे नियंत्रित करण्यासाठी स्क्रीन सेव्हर सुरू करा."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"कधी सुरू करायचे"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"सध्याचा स्क्रीन सेव्हर"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"सेटिंग्ज"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"स्वयंचलित चकाकी"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"सक्रिय करण्‍यासाठी लिफ्‍ट"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"अँबियंट डिस्प्ले"</string>
@@ -1947,6 +1948,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"पिन सेट करा"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"कार्य प्रोफाईलसाठी पिन सेट करा"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"पॅटर्न सेट करा"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"अतिरिक्त सुरक्षेसाठी, डिव्हाइस अनलॉक करण्याकरिता पॅटर्न सेट करा"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"कार्य प्रोफाईलसाठी पॅटर्न सेट करा"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"फिंगरप्रिंट वापरण्यासाठी पासवर्ड सेट करा"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"फिंगरप्रिंट वापरण्यासाठी पॅटर्न सेट करा"</string>
@@ -2100,7 +2102,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"आणीबाणी अ‍ॅप"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"अ‍ॅप प्राधान्ये रीसेट करा"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"अ‍ॅप प्राधान्ये रीसेट करायची?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"हे यासाठी सर्व प्राधान्ये रीसेट करेल:\n\n"<li>"बंद केलेली अ‍ॅप्स"</li>\n<li>"बंद केलेल्या अ‍ॅप्स सूचना"</li>\n<li>"वेगवेगळ्या क्रियांसाठी डीफॉल्ट अ‍ॅप्लिकेशन"</li>\n<li>"अ‍ॅप्ससाठी बॅकग्राउंड डेटा प्रतिबंध"</li>\n<li>"परवानगीविषयक कोणतेही प्रतिबंध"</li>\n\n"तुम्ही कोणताही अ‍ॅप डेटा गमावणार नाही."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"हे यासाठी सर्व प्राधान्ये रीसेट करेल:\n\n"<li>"बंद केलेली अ‍ॅप्स"</li>\n<li>"बंद केलेल्या अ‍ॅप्स सूचना"</li>\n<li>"वेगवेगळ्या कृतींसाठी डीफॉल्ट अ‍ॅप्लिकेशन"</li>\n<li>"अ‍ॅप्ससाठी बॅकग्राउंड डेटा निर्बंध"</li>\n<li>"परवानगीशी संबंधित कोणतेही निर्बंध"</li>\n<li>"बॅटरीच्या वापराची सेटिंग्ज"</li>\n\n"तुम्ही कोणताही अ‍ॅप डेटा गमावणार नाही."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"अ‍ॅप्स रीसेट करा"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"जागा व्यवस्थापित करा"</string>
     <string name="filter" msgid="9039576690686251462">"फिल्टर"</string>
@@ -2355,7 +2357,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"सेटिंग्ज रीसेट करा"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"डिस्प्ले आकार आणि मजकूर सेटिंग्ज रीसेट केली आहेत"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"डिस्प्ले आकार आणि मजकूर रीसेट करायचा आहे का?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"तुमचा डिस्प्ले आकार आणि मजकूर प्राधान्ये फोनच्या मूळ सेटिंग्जवर रीसेट होतील"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"तुमचा डिस्प्ले आकार आणि मजकूर प्राधान्ये फोनच्या मूळ सेटिंग्जवर रीसेट होतील"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"तुमचा डिस्प्ले आकार आणि मजकूर प्राधान्ये टॅबलेटच्या मूळ सेटिंग्जवर रीसेट होतील"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"रीसेट करा"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"विकेंड प्लॅन आहेत का?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"बीचवर जाणार आहे. सोबत यायचे आहे का?"</string>
@@ -2935,6 +2938,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"शेवटची पूर्ण चार्ज केल्यानंतर बॅटरी वापरलेली नाही"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"मागील २४ तासांमध्ये बॅटरी वापरलेली नाही"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"इतर वापरकर्ते"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"अंदाजे शिल्लक बॅटरी ही तुमच्या डिव्हाइसच्या वापरावर अवलंबून असते"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"अंदाजे शिल्लक वेळ"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"पूर्ण चार्ज होईपर्यंत"</string>
@@ -3024,6 +3028,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"पूर्ण हॉटवर्ड आणि परस्परसंवाद"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"मजकूर पाठविण्यासाठी सोपे उच्चारण"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"आपल्या वतीने व्हॉइस परीक्षण नेहमी-सुरू कार्यप्रदर्शन करण्यासाठी आणि व्हॉइस सक्षम ॲप्लिकेशन नियंत्रित करण्यासाठी व्हॉइस इनपुट सेवा सक्षम असेल. हे <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ॲप्लिकेशनावरून येते. या सेवेचा वापर सक्षम करायचा?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"डिव्‍हाइसवरील रेकग्निशन सेटिंग्ज"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"डिव्‍हाइसवरील रेकग्निशन"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"डिव्‍हाइसवरील स्पीच रेकग्निशन"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"प्राधान्य इंजीन"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"इंजीन सेटिंग्ज"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"भाषण गती आणि पिच"</string>
@@ -3416,6 +3423,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"हटवा"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"या सत्रातील सर्व अ‍ॅप्स आणि डेटा हटवला जाईल."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"काढा"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"अतिथी (तुम्ही)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"वापरकर्ते"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"इतर वापरकर्ते"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"अतिथी अ‍ॅक्टिव्हिटी हटवा"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"अतिथी मोडमधून बाहेर पडताना सर्व अतिथी अ‍ॅप्स आणि डेटा हटवा"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"अतिथी अ‍ॅक्टिव्हिटी हटवायची का?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"या अतिथी सत्रातील अ‍ॅप्स आणि डेटा आता हटवला जाईल व प्रत्येक वेळी तुम्ही अतिथी मोडमधून बाहेर पडाल, तेव्हा भविष्यातील सर्व अतिथी अ‍ॅक्टिव्हिटी हटवली जाईल"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"फोन कॉल सुरू करा"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"फोन कॉल आणि SMS सुरू करा"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"वापरकर्ता हटवा"</string>
@@ -4008,13 +4022,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"सर्व \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" सूचना"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"सर्व <xliff:g id="APP_NAME">%1$s</xliff:g> वरील सूचना"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"अ‍ॅडॅप्टिव्ह सूचना"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~दर दिवसाला <xliff:g id="NUMBER_1">%,d</xliff:g> सूचना</item>
-      <item quantity="one">~दर दिवसाला <xliff:g id="NUMBER_0">%d</xliff:g> सूचना</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">प्रति दिवस साधारण <xliff:g id="NUMBER_1">%,d</xliff:g> सूचना</item>
+      <item quantity="one">प्रति दिवस साधारण <xliff:g id="NUMBER_0">%d</xliff:g> सूचना</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~दर आठवड्याला <xliff:g id="NUMBER_1">%,d</xliff:g> सूचना</item>
-      <item quantity="one">~दर आठवड्याला <xliff:g id="NUMBER_0">%d</xliff:g> सूचना</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">प्रति आठवडा साधारण <xliff:g id="NUMBER_1">%,d</xliff:g> सूचना</item>
+      <item quantity="one">प्रति आठवडा साधारण <xliff:g id="NUMBER_0">%d</xliff:g> सूचना</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"कधीही नाही"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"डिव्हाइस आणि ॲप सूचना"</string>
@@ -5256,7 +5270,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"काहीही करू नका"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"व्हायब्रेट"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"म्यूट करा"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"सुरू करण्यासाठी, सर्वप्रथम \"पॉवर बटण दाबा आणि धरून ठेवा\" ला पॉवर मेनूवर बदला."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"सुरू करण्यासाठी, सर्वप्रथम \"पॉवर बटण दाबा &amp; धरून ठेवा\" हे पॉवर मेनूवर बदला."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"नेटवर्क तपशील"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"तुमच्या डिव्हाइसचे नाव तुमच्या फोनवरील ॲप्सना दृश्यमान आहे. तुम्ही ब्लूटूथ डिव्हाइसशी कनेक्ट करता, वाय-फाय नेटवर्कशी कनेक्ट करता किंवा वाय-फाय हॉटस्पॉट सेट करता तेव्हा हे कदाचित इतर लोकदेखील पाहू शकतात."</string>
     <string name="devices_title" msgid="649715719278562515">"डिव्हाइस"</string>
@@ -5543,15 +5557,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"डिव्हाइस नियंत्रणे"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"कार्डे आणि पास"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"कार्डे आणि पास"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"पॉवर बटण दाबा आणि धरून ठेवा"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant साठी दाबा आणि धरून ठेवा"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"पॉवर मेनूसाठी दाबा आणि धरून ठेवा"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"दाबणे आणि धरून ठेवणे बंद केले आहे"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"पॉवर बटण दाबा &amp; धरून ठेवा"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"अ‍ॅक्सेस करण्यासाठी पॉवर बटण दाबा &amp; धरून ठेवा"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"पॉवर मेनू"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"डिजिटल असिस्टंट"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"डिजिटल असिस्टंट अ‍ॅक्सेस करा"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"पॉवर मेनू अ‍ॅक्सेस करा"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"वापरण्यासाठी सर्वप्रथम स्क्रीन लॉक सेट करा"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant साठी धरून ठेवा"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"पॉवर बटण धरून ठेवून Assistant ट्रिगर करा"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"पॉवर आणि आणीबाणीशी संबंधित मेनू:\nपॉवर आणि व्‍हॉल्‍यूम जास्त ही बटणे एकाच वेळी दाबा."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"रिंग होणे थांबवणे:\nव्‍हॉल्‍यूम मेनूमध्ये शॉर्टकट उपलब्ध आहे."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"पॉवर मेनू:\nपॉवर बटण आणि व्‍हॉल्‍यूम जास्‍त बटण एकाचवेळी दाबा"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"रिंग होणे थांबवा:\nशॉर्टकटसाठी व्‍हॉल्‍यूम बटण दाबा"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"दाबून धरून ठेवण्याचा कालावधी"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"किती वेळासाठी पॉवर बटण दाबून धरून ठेवायचे हे निवडून संवेदनशीलता अ‍ॅडजस्ट करा"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"कमी वेळासाठी"</string>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index f68ef59..0feb85c 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Apabila mereka menggunakan Pixel Imprint, imej digunakan untuk mengemas kini model cap jari mereka. Imej yang digunakan untuk menghasilkan model cap jari anak anda tidak akan disimpan, tetapi model cap jari disimpan dengan selamat pada telefon dan tidak akan keluar daripada telefon itu. Semua pemprosesan berlaku dengan selamat pada telefon."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Anda boleh memadamkan imej dan model cap jari anda atau mematikan Buka Kunci Cap Jari pada bila-bila masa dalam Tetapan. Imej dan model cap jari disimpan di telefon sehingga anda memadamkan imej dan model itu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Anda dan anak anda boleh memadamkan imej dan model cap jari mereka atau mematikan Buka Kunci Cap Jari pada bila-bila masa dalam Tetapan. Imej dan model cap jari disimpan pada telefon sehingga dipadamkan."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefon anda boleh dibuka kunci apabila anda tidak berniat untuk berbuat demikian, seperti jika seseorang menghalakan telefon dengan rapat pada jari anda."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefon anda boleh dibuka kunci apabila anda tidak berniat untuk berbuat demikian, seperti jika seseorang menghalakan telefon dengan rapat pada jari anda."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tablet anda boleh dibuka kunci walaupun anda tidak berniat untuk berbuat demikian, contohnya apabila seseorang mendekatkan tablet dengan jari anda."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Peranti anda boleh dibuka kunci walaupun anda tidak berniat untuk berbuat demikian, contohnya apabila seseorang mendekatkan peranti dengan jari anda."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefon anak anda boleh dibuka kunci apabila mereka tidak bermaksud untuk berbuat demikian, seperti jika seseorang menghalakan telefon dengan rapat pada jari mereka."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Untuk mendapatkan hasil yang terbaik, gunakan pelindung skrin yang diperakui Made For Google. Dengan pelindung skrin yang lain, cap jari anda mungkin tidak berfungsi."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Untuk mendapatkan hasil yang terbaik, gunakan pelindung skrin yang diperakui Made For Google. Dengan pelindung skrin yang lain, cap jari anak anda mungkin tidak berfungsi."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustrasi yang memaparkan peranti dan lokasi penderia cap jari"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nama"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Cuba lagi"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Padam"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Sentuh penderia"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Letakkan jari anda pada penderia, kemudian angkat jari itu selepas anda merasa getaran"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Selesai"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Op, itu bukan penderia"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Sntuh penderia di bhg blkg tel. Gnakan jari telunjuk."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Pendaftaran tidak selesai"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Had masa pendaftaran cap jari dicapai. Cuba lagi."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Persediaan cap jari telah tamat masa"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Cuba lagi sekarang atau sediakan cap jari anda kemudian dalam Tetapan"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Pendaftaran cap jari tidak berjaya. Cuba lagi atau gunakan jari yang lain."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Tambah yang lain"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Seterusnya"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Sesuaikan telefon anda"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Cuba gaya serta kertas dinding yang berbeza dan pelbagai lagi"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Penyelamat skrin"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"penyelamat skrin"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Gunakan penyelamat skrin"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Semasa dicas atau didok"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Salah satu"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Semasa mengecas"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Semasa didok"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Jangan sekali-kali"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Mati"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Untuk mengawal perkara yang berlaku semasa telefon didok dan/atau tidur, hidupkan penyelamat skrin."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Masa untuk mulakan"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Penyelamat skrin semasa"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Tetapan"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Kecerahan automatik"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Angkat untuk bangunkan"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Paparan ambien"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Tetapkan PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Tetapkan PIN kerja"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Tetapkan corak"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Untuk keselamatan tambahan, tetapkan corak untuk membuka kunci peranti"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Tetapkan corak kerja"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Buat kata laluan untuk guna cap jari"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Buat corak untuk guna cap jari"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Apl kecemasan"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Tetapkan semula pilihan apl"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Tetapkan semula pilihan apl?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Tindakan ini akan menetapkan semula semua pilihan untuk:\n\n"<li>"Apl yang dilumpuhkan"</li>\n<li>"Pemberitahuan untuk apl yang dilumpuhkan"</li>\n<li>"Aplikasi lalai untuk tindakan"</li>\n<li>"Sekatan data latar belakang untuk apl"</li>\n<li>"Sebarang sekatan kebenaran"</li>\n\n"Anda tidak akan kehilangan sebarang data apl."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Tindakan ini akan menetapkan semula semua pilihan untuk:\n\n"<li>"Apl yang dilumpuhkan"</li>\n<li>"Pemberitahuan untuk apl yang dilumpuhkan"</li>\n<li>"Aplikasi lalai untuk tindakan"</li>\n<li>"Sekatan data latar belakang untuk apl"</li>\n<li>"Mana-mana sekatan kebenaran"</li>\n<li>"Tetapan penggunaan bateri"</li>\n\n"Anda tidak akan kehilangan apa-apa data apl."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Tetapkan semula apl"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Urus ruang"</string>
     <string name="filter" msgid="9039576690686251462">"Tapis"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Tetapkan semula tetapan"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Tetapan paparan saiz dan teks telah ditetapkan semula"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Tetapkan semula saiz paparan dan teks?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Saiz paparan dan pilihan teks anda akan ditetapkan semula kepada tetapan asal telefon"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Saiz paparan dan pilihan teks anda akan ditetapkan semula kepada tetapan asal telefon"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Saiz paparan dan pilihan teks anda akan ditetapkan semula kepada tetapan asal tablet"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Tetapkan semula"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Ada apa-apa rancangan hujung minggu?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Bercadang pergi ke pantai. Mahu ikut sekali?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Tiada penggunaan sejak cas penuh terakhir"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Tiada penggunaan untuk tempoh 24 jam yang lalu"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Pengguna lain"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Anggaran baki bateri adalah berdasarkan penggunaan peranti anda"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Anggaran baki masa"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Sehingga dicas penuh"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Sebutan laluan penuh dan interaksi"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Pertuturan kepada teks mudah"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Perkhidmatan input suara ini akan dapat melaksanakan pemantauan suara sentiasa hidup dan mengawal aplikasi didayakan suara bagi pihak anda. Ini datang dari aplikasi <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Dayakan penggunaan perkhidmatan ini?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Tetapan pengecaman pada peranti"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Pengecaman pada peranti"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Pengecaman pertuturan pada peranti"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Enjin pilihan"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Tetapan enjin"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Kadar pertuturan &amp; nada"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Padam"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Semua apl dan data dalam sesi ini akan dipadam."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Alih keluar"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Tetamu (Anda)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Pengguna"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Pengguna lain"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Padamkan aktiviti tetamu"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Padamkan semua apl dan data tetamu semasa keluar daripada mod tetamu"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Padamkan aktiviti tetamu?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apl dan data daripada sesi tetamu ini akan dipadamkan sekarang dan semua aktiviti tetamu pada masa hadapan akan dipadamkan setiap kali anda keluar daripada mod tetamu"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Hidupkan panggilan telefon"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Hidupkan panggilan telefon &amp; SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Padamkan pengguna"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Semua pemberitahuan \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Semua pemberitahuan <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Pemberitahuan Boleh Suai"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> pemberitahuan sehari</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> pemberitahuan sehari</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Lebih kurang <xliff:g id="NUMBER_1">%,d</xliff:g> pemberitahuan setiap hari</item>
+      <item quantity="one">Lebih kurang <xliff:g id="NUMBER_0">%d</xliff:g> pemberitahuan setiap hari</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> pemberitahuan seminggu</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> pemberitahuan seminggu</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Lebih kurang <xliff:g id="NUMBER_1">%,d</xliff:g> pemberitahuan setiap minggu</item>
+      <item quantity="one">Lebih kurang <xliff:g id="NUMBER_0">%d</xliff:g> pemberitahuan setiap minggu</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Jangan sekali-kali"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Pemberitahuan peranti &amp; apl"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Jangan buat apa-apa"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Bergetar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Redam"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Untuk mendayakan tetapan tersebut, tukar \"Tekan dan tahan butang kuasa\" pada menu kuasa terlebih dahulu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Untuk mendayakan tetapan ini, tukar \"Tekan &amp; tahan butang kuasa\" kepada menu kuasa terlebih dahulu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Butiran rangkaian"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Nama peranti anda boleh dilihat oleh apl pada telefon anda. Nama peranti anda juga boleh dilihat oleh orang lain apabila anda menyambung kepada peranti Bluetooth, menyambung kepada rangkaian Wi-Fi atau menyediakan tempat liputan Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Peranti"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"kawalan peranti"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kad &amp; pas"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kad &amp; pas"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Tekan dan tahan butang kuasa"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Tekan dan tahan untuk Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Tekan dan tahan untuk menu kuasa"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Tekan dan tahan dilumpuhkan"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Tekan &amp; tahan butang kuasa"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Tekan &amp; tahan butang kuasa untuk mengakses"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu kuasa"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Pembantu digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Akses pembantu digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Akses menu kuasa"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Untuk menggunakan, mula-mula tetapkan kunci skrin"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Tahan untuk Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Cetuskan Assistant dengan menahan butang kuasa"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu Kuasa &amp; Kecemasan:\nTekan Kuasa dan Naikkan kelantangan pada masa yang sama."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Halang deringan:\nPintasan tersedia pada menu kelantangan."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu kuasa:\nTekan butang kuasa dan butang naikkan kelantangan pada masa yang sama"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Halang deringan:\nTekan butang kelantangan untuk pintasan"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Tempoh tekan &amp; tahan"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Laraskan kepekaan dengan memilih tempoh untuk menekan &amp; menahan butang kuasa"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Pendek"</string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 67e4286..ebad7bf 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"သူက Pixel Imprint သုံးသောအခါ သူ၏လက်ဗွေနမူနာကို အပ်ဒိတ်လုပ်ရန် ပုံများကို သုံးသည်။ သင့်ကလေး၏ လက်ဗွေနမူနာပြုလုပ်ရန် သုံးထားသောပုံများကို မည်သည့်အခါမှ မသိမ်းပါ။ သို့သော် လက်ဗွေနမူနာကို ဖုန်းတွင် လုံခြုံစွာသိမ်းပြီး စက်အတွင်း၌သာ ထားပါသည်။ လုပ်ဆောင်ချက်အားလုံး ဖုန်းတွင် လုံခြုံစွာ ဖြစ်ပေါ်သည်။"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"‘ဆက်တင်များ’ တွင် သင့်လက်ဗွေပုံများနှင့် နမူနာကို ဖျက်ခြင်း (သို့) ‘လက်ဗွေသုံးသော့ဖွင့်ခြင်း’ ကို ပိတ်ခြင်းတို့ အချိန်မရွေး လုပ်နိုင်သည်။ လက်ဗွေပုံနှင့် နမူနာများကို သင်မဖျက်မချင်း ဖုန်းတွင်သိမ်းထားသည်။"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"သင်နှင့် သင့်ကလေးက ဆက်တင်များတွင် လက်ဗွေပုံများနှင့် နမူနာကို ဖျက်ခြင်း (သို့) ‘လက်ဗွေသုံး လော့ခ်ဖွင့်ခြင်း’ ကို ပိတ်ခြင်းတို့ အချိန်မရွေး လုပ်နိုင်သည်။ လက်ဗွေပုံနှင့် နမူနာများကို မဖျက်မချင်း ဖုန်းတွင် သိမ်းထားသည်။"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"တစ်စုံတစ်ယောက်က သင့်လက်ချောင်းရှေ့တွင် သင့်ဖုန်းကို ကိုင်ထားခြင်းကဲ့သို့ သင်မရည်ရွယ်သည့်အချိန်တွင် ၎င်းကို လော့ခ်ဖွင့်နိုင်သည်။"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"တစ်စုံတစ်ယောက်က သင့်လက်ချောင်းရှေ့တွင် သင့်ဖုန်းကို ကိုင်ထားခြင်းကဲ့သို့ သင်မရည်ရွယ်သည့်အချိန်တွင် ၎င်းကို လော့ခ်ဖွင့်နိုင်သည်။"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"တစ်စုံတစ်ယောက်က သင့်လက်ချောင်းရှေ့တွင် သင့်တက်ဘလက်ကို ကိုင်ထားခြင်းကဲ့သို့ သင်မရည်ရွယ်သည့်အချိန်တွင် ၎င်းကို လော့ခ်ဖွင့်နိုင်သည်။"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"တစ်စုံတစ်ယောက်က သင့်လက်ချောင်းရှေ့တွင် သင့်စက်ကို ကိုင်ထားခြင်းကဲ့သို့ သင်မရည်ရွယ်သည့်အချိန်တွင် ၎င်းကို လော့ခ်ဖွင့်နိုင်သည်။"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"တစ်စုံတစ်ယောက်က သင့်ကလေး၏ဖုန်းကို သူ၏လက်ချောင်းရှေ့တွင် ကိုင်ထားခြင်းကဲ့သို့ သူ မရည်ရွယ်သည့်အချိန်တွင် ၎င်းကို လော့ခ်ဖွင့်နိုင်သည်။"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"အကောင်းဆုံးရလဒ်များအတွက် ‘Google အတွက် ပြုလုပ်ထားသည်’ လက်မှတ်ရ ဖန်သားပြင် အကာအကွယ်ကို သုံးနိုင်သည်။ အခြားဖန်သားပြင် အကာအကွယ်များသုံးပါက သင်၏လက်ဗွေ အလုပ်မလုပ်နိုင်ပါ။"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"အကောင်းဆုံးရလဒ်များအတွက် Google အတွက် ပြုလုပ်ထားသည့် လက်မှတ်ရ ဖန်သားပြင် အကာအကွယ်သုံးနိုင်သည်။ အခြားဖန်သားပြင် အကာအကွယ်များသုံးပါက သင့်ကလေး၏လက်ဗွေ အလုပ်မလုပ်နိုင်ပါ။"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"စက်နှင့် လက်ဗွေအာရုံခံကိရိယာကို တည်နေရာနှင့်အတူ သရုပ်ဖော်ပုံ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"အမည်"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ထပ်စမ်းကြည့်ရန်"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"ဖျက်ရန်"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"အာရုံခံကိရိယာကို ထိပါ"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"သင့်လက်ချောင်းကို အာရုံခံကိရိယာပေါ်သို့ တင်လိုက်ပြီး တုန်ခါမှုကို ခံစားရချိန်တွင် ပြန်ရုပ်လိုက်ပါ"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"ပြီးပါပြီ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"အိုး။ ဒါ အာရုံခံကိရိယာမဟုတ်ဘူး"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"သင့်ဖုန်း ကျောဘက်ရှိ အာရုံခံကိရိယာကို ထိပါ။ လက်ညှိုးကို အသုံးပြုပါ။"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"စာရင်းသွင်းမှု မပြီးစီးခဲ့ပါ"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"လက်ဗွေစာရင်းသွင်းမှု ကန့်သတ်ချိန် ကုန်သွားပြီ။ ထပ်စမ်းကြည့်ပါ။"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"လက်ဗွေစနစ်ထည့်သွင်းချိန် ကုန်သွားပါပြီ"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ယခုထပ်စမ်းကြည့်ပါ (သို့) ‘ဆက်တင်များ’ တွင် လက်ဗွေကို နောက်မှ စနစ်ထည့်သွင်းပါ"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"လက်ဗွေထည့်သွင်းမှု အဆင်မပြေပါ။ အခြားလက်ချောင်းကို သုံးပါ သို့မဟုတ် ထပ်စမ်းကြည့်ပါ။"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"နောက်တစ်ခု ထည့်ရန်"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"ရှေ့သို့"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"သင့်ဖုန်းကို စိတ်ကြိုက်လုပ်ပါ"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"မတူသည့် ပုံစံများ၊ နောက်ခံများနှင့် အခြားအရာများကို စမ်းကြည့်ပါ"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"ဖန်သားပြင်ချွေတာစနစ်"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ဖန်သားပြင်နားချိန်"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"ဖန်သားပြင်ချွေတာစနစ် သုံးခြင်း"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"အားသွင်းနေစဉ် သို့မဟုတ် တပ်ဆင်ထားစဉ်"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"နှစ်မျိုးအနက် တမျိုးရွေးချယ်ရန်"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"အားသွင်းနေစဉ်"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"အထိုင်တွင်တပ်ထားစဉ်"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ဘယ်တော့မှ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ပိတ်"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ဖုန်းကို အထိုင်တွင် တပ်ဆင်လိုက်ချိန် နှင့်/သို့မဟုတ် အနားယူနေချိန်တွင် လုပ်ဆောင်မည့်အရာများကို ထိန်းချုပ်ရန်၊ ဖန်သားပြင်အသုံးပြုမှု ချွေတာမှုစနစ်ကို ဖွင့်ပါ။"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"စတင်ရန်အချိန်"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"လက်ရှိဖန်သားပြင်ချွေတာစနစ်"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ဆက်တင်များ"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"အလိုအလျောက်အလင်းချိန်ခြင်း။"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"‘မ’ ယူ၍ နှိုးရန်"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ဝန်းကျင်ပြသမှု"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ပင်နံပါတ် သတ်မှတ်ပါ"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"အလုပ်သုံးပင်နံပါတ် သတ်မှတ်ပါ"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ပုံစံ သတ်မှတ်ပါ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"လုံခြုံရေး တိုးမြှင့်ရန်အတွက် စက်ကို လော့ခ်ဖွင့်ရန် ပုံစံ သတ်မှတ်ပါ"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"အလုပ်သုံးပုံစံ သတ်မှတ်ပါ"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"လက်ဗွေသုံးရန် စကားဝှက်သတ်မှတ်ပါ"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"လက်ဗွေသုံးရန် ပုံစံသတ်မှတ်ပါ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"အရေးပေါ်အပ်ဖ်"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"အက်ပ်သတ်မှတ်ချက်များ ပြန်လုပ်ရန်"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"အက်ပ်သတ်မှတ်ချက်များကို ပြန်လုပ်မလား။"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"၎င်းက အောက်ပါတို့အတွက် ဦးစားပေးများအားလုံးကို ပြင်ဆင်သတ်မှတ်ပါမည်-\n\n"<li>"ပိတ်ထားသော အက်ပ်များ"</li>\n<li>"ပိတ်ထားသော အက်ပ် အကြောင်းကြားချက်များ"</li>\n<li>"လုပ်ဆောင်ချက်များအတွက် မူရင်းအပလီကေးရှင်းများ"</li>\n<li>"အက်ပ်များအတွက် နောက်ခံဒေတာ ကန့်သတ်မှုများ"</li>\n<li>"မည်သည့် ခွင့်ပြုချက် ကန့်သတ်မှုများမဆို"</li>\n\n"မည်သည့်အက်ပ်ဒေတာကိုမျှ ဆုံးရှုံးမည်မဟုတ်ပါ။"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"၎င်းက အောက်ပါတို့အတွက် အားလုံးကို ပြင်ဆင်သတ်မှတ်ပါမည်-\n\n"<li>"ပိတ်ထားသော အက်ပ်များ"</li>\n<li>"ပိတ်ထားသော အက်ပ် အကြောင်းကြားချက်များ"</li>\n<li>"လုပ်ဆောင်ချက်များအတွက် မူရင်းအပလီကေးရှင်းများ"</li>\n<li>"အက်ပ်များအတွက် နောက်ခံဒေတာ ကန့်သတ်မှုများ"</li>\n<li>"မည်သည့် ခွင့်ပြုချက် ကန့်သတ်မှုများမဆို"</li>\n<li>"ဘက်ထရီ အသုံးပြုမှု ဆက်တင်များ"</li>\n\n"မည်သည့်အက်ပ်ဒေတာကိုမျှ ဆုံးရှုံးမည်မဟုတ်ပါ။"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"အက်ပ်ပြန်လည်သတ်မှတ်ရန်"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"နေရာ စီမံရန်"</string>
     <string name="filter" msgid="9039576690686251462">"စီစစ်ရန်"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ဆက်တင်ပြင်ဆင်သတ်မှတ်ရန်"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ပြကွက်အရွယ်အစားနှင့် စာသားဆက်တင်များကို ပြင်ဆင်သတ်မှတ်ထားသည်"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ပြကွက်အရွယ်နှင့် စာသားပြင်ဆင်သတ်မှတ်မလား။"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"သင့်ပြကွက်နှင့် စာသားသတ်မှတ်ချက်များကို ဖုန်း၏ မူလဆက်တင်များသို့ ပြင်ဆင်သတ်မှတ်ပါမည်"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"သင့်ပြကွက်နှင့် စာသားသတ်မှတ်ချက်များကို ဖုန်း၏ မူလဆက်တင်များသို့ ပြင်ဆင်သတ်မှတ်ပါမည်"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ပြကွက်နှင့် စာသားရွေးချယ်မှုများကို တက်ဘလက်၏ မူလဆက်တင်များသို့ ပြင်ဆင်သတ်မှတ်မည်"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ပြင်ဆင်သတ်မှတ်ရန်"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"စနေ၊ တနင်္ဂနွေမှာ တစ်ခုခုစီစဉ်ထားလား။"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ကမ်းခြေသွားမလို့။ လိုက်မလား။"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"နောက်ဆုံးအကြိမ် အားအပြည့်သွင်းပြီးနောက် အသုံးပြုမှု မရှိပါ"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"ပြီးခဲ့သော ၂၄ နာရီအတွက် အသုံးပြုမှု မရှိပါ"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"အခြားအသုံးပြုသူများ"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ဘက်ထရီလက်ကျန်ခန့်မှန်းချက်သည် သင့်စက်၏ အသုံးပြုမှုအပေါ် အခြေခံပါသည်"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"ခန့်မှန်း ကျန်ရှိချိန်"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"အားပြည့်ရန် လိုအပ်ချိန်"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"စကားလုံးတို နှင့် ပြန်လှန်တုံ့ပြန်မှု အပြည့်"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"ရိုးရိုး စကားမှ စာသို့"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ဒီအသံဖြင့် ရိုက်သွင်းရေး ဝန်ဆောင်မှုက သင့်ကိုယ်စား အမြဲတမ်း အသံကို စောင့်ကြပ်ပေးလျက် အသံကို ဖွင့်ပေးထားသည့် အပလီကေးရှင်းများကို ထိန်းချုပ်ပေးသည်။ ၎င်းကို <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> အပလီကေးရှင်းက ဆောင်ရွက်ပေးသည်။ ဒီဝန်ဆောင်မှု သုံးရန်ကို ဖွင့်ပေးရမလား?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"စက်ပစ္စည်းတွင်ပါသော မှတ်သားမှုဆက်တင်များ"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"စက်ပစ္စည်းတွင်ပါသော မှတ်သားမှု"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"စက်ပစ္စည်းတွင်ပါသော စကားသံ မှတ်သားမှု"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"ဦးစားပေးအင်ဂျင်"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"အင်ဂျင်ဆက်တင်များ"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"စကားပြောဆိုမှုနှုန်းနှင့် အသံပေါက်"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ဖျက်ရန်"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"ဤချိတ်ဆက်မှုမှ အက်ပ်နှင့် ဒေတာအားလုံးကို ဖျက်ပါမည်။"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"ဖယ်ထုတ်ပါ"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ဧည့်သည် (သင်)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"အသုံးပြုသူများ"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"အခြားအသုံးပြုသူများ"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"ဧည့်သည်လုပ်ဆောင်ချက် ဖျက်ရန်"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ဧည့်သည်မုဒ်မှ ထွက်ချိန်တွင် ဧည့်သည်အက်ပ်နှင့် ဒေတာအားလုံးကို ဖျက်ရန်"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"ဧည့်သည်လုပ်ဆောင်ချက် ဖျက်မလား။"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ဤဧည့်သည် စက်ရှင်မှ အက်ပ်နှင့် ဒေတာများကို ယခုဖျက်လိုက်မည်ဖြစ်ပြီး လာမည့်ဧည့်သည် လုပ်ဆောင်ချက်အားလုံးကို ဧည့်သည်မုဒ်မှ ထွက်ချိန်တိုင်းတွင် ဖျက်လိုက်ပါမည်"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ဖုန်းခေါ်ဆိုမှုများ ဖွင့်ရန်"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ဖုန်းခေါ်ဆိုမှုနှင့် SMS ဖွင့်မည်"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"အသုံးပြုသူကို ဖျက်ပါ"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\" အကြောင်းကြားချက်အားလုံး"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g> အကြောင်းကြားချက် အားလုံး"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"အလိုက်သင့် အကြောင်းကြားချက်များ"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">တစ်နေ့လျှင် အကြောင်းကြားချက်~<xliff:g id="NUMBER_1">%,d</xliff:g> ခု</item>
-      <item quantity="one">တစ်နေ့လျှင် အကြောင်းကြားချက်~<xliff:g id="NUMBER_0">%d</xliff:g> ခု</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">တစ်ရက်လျှင် အကြောင်းကြားချက် <xliff:g id="NUMBER_1">%,d</xliff:g> ခုခန့်</item>
+      <item quantity="one">တစ်ရက်လျှင် အကြောင်းကြားချက် <xliff:g id="NUMBER_0">%d</xliff:g> ခုခန့်</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">တစ်ပတ်လျှင် အကြောင်းကြားချက်~<xliff:g id="NUMBER_1">%,d</xliff:g> ခု</item>
-      <item quantity="one">တစ်ပတ်လျှင် အကြောင်းကြားချက်~<xliff:g id="NUMBER_0">%d</xliff:g> ခု</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">တစ်ပတ်လျှင် အကြောင်းကြားချက် <xliff:g id="NUMBER_1">%,d</xliff:g> ခုခန့်</item>
+      <item quantity="one">တစ်ပတ်လျှင် အကြောင်းကြားချက် <xliff:g id="NUMBER_0">%d</xliff:g> ခုခန့်</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ဘယ်တော့မှ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"စက်နှင့်အက်ပ် အကြောင်းကြားချက်များ"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"ပြောင်းလဲမှု မလုပ်ပါနှင့်"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"တုန်ခါသည်"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"အသံတိတ်သည်"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ဖွင့်ရန်အတွက် ဦးစွာ \"ဖွင့်ပိတ်ခလုတ် နှိပ်ထားခြင်း\" ကို ပါဝါမီနူးသို့ ပြောင်းပါ။"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ဖွင့်ရန် \"ဖွင့်ပိတ်ခလုတ်ကို နှိပ်ထားခြင်း\" ကို ပါဝါမီနူးသို့ အရင်ပြောင်းပါ။"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ကွန်ရက် အသေးစိတ်များ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"သင့်စက်ပစ္စည်းအမည်ကို သင့်ဖုန်းပေါ်ရှိ အက်ပ်များက မြင်ရပါသည်။ သင် ဘလူးတုသ်သုံးစက်များသို့ ချိတ်ဆက်သည့်အခါ၊ Wi-Fi ကွန်ရက်သို့ ချိတ်ဆက်သည့်အခါ သို့မဟုတ် Wi-Fi ဟော့စပေါ့ ထုတ်လွှင့်သည့်အခါ တို့တွင်လည်း ၎င်းကို အခြားသူများက မြင်နိုင်ပါသည်။"</string>
     <string name="devices_title" msgid="649715719278562515">"စက်များ"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"စက်ထိန်းစနစ်"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"ကတ်နှင့်လက်မှတ်များ"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"ကတ်များနှင့် ဖြတ်သန်းခွင့်များ"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"ဖွင့်ပိတ်ခလုတ် နှိပ်ထားခြင်း"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant အတွက် နှိပ်ထားနိုင်သည်"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"နှိပ်ထားလျှင် ပါဝါမီနူးပေါ်လာသည်"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"နှိပ်ထားခြင်းကို ပိတ်ထားသည်"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"ဖွင့်ပိတ်ခလုတ်ကို နှိပ်ထားခြင်း"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"အသုံးပြုရန် ဖွင့်ပိတ်ခလုတ်ကို နှိပ်ထားခြင်း"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"ပါဝါမီနူး"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ဒစ်ဂျစ်တယ် Assistant"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ဒစ်ဂျစ်တယ် Assistant သုံးရန်"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"ပါဝါမီနူး သုံးရန်"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"အသုံးပြုရန် ဖန်သားပြင် လော့ခ်ကို ဦးစွာသတ်မှတ်ပါ"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant ဖွင့်ရန် ဖိထားပါ"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"ဖွင့်ပိတ်ခလုတ်ကို ဖိထားခြင်းဖြင့် Assistant ကိုဖွင့်ပါ"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"ပါဝါနှင့် အရေးပေါ် မီနူး-\nဖွင့်ပိတ်ခလုတ်နှင့် အသံချဲ့ခလုတ်ကို တစ်ပြိုင်တည်းနှိပ်ပါ။"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"အသံမြည်ခြင်းကို ပိတ်ရန်-\nအသံထိန်း မီနူးတွင် ဖြတ်လမ်းလင့်ခ် ရနိုင်သည်။"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"ပါဝါမီနူး-\nဖွင့်ပိတ်ခလုတ်နှင့် အသံချဲ့ခလုတ်ကို တစ်ပြိုင်တည်း နှိပ်ပါ"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"အသံမမြည်စေရန်-\nဖြတ်လမ်းလင့်ခ်အနေဖြင့် အသံထိန်း ခလုတ်တစ်ခုကို နှိပ်ပါ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"နှိပ်ထားရမည့်အချိန်"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"ဖွင့်ပိတ်ခလုတ်နှိပ်ထားရမည့် ကြာချိန်ကိုရွေးပြီး အာရုံခံနိုင်စွမ်းကို ချိန်ညှိပါ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"အတို"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index be82aa2..796ae4e 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Når hen bruker Pixel Imprint, brukes bilder til å oppdatere fingeravtrykkmodellen. Bildene som brukes til å lage barnets fingeravtrykkmodell, lagres aldri, men fingeravtrykkmodellen lagres på en sikker måte på telefonen og forlater aldri telefonen. All behandling skjer på en sikker måte på telefonen."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Du kan når som helst slette fingeravtrykkbildene og -modellen din eller slå av opplåsing med fingeravtrykk i innstillingene. Fingeravtrykkbildene og -modellene lagres på telefonen til du sletter dem."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Du og barnet ditt kan når som helst slette fingeravtrykkbildene og -modellen til barnet eller slå av opplåsing med fingeravtrykk i innstillingene. Fingeravtrykkbildene og -modellene lagres på telefonen til de slettes."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefonen kan låses opp selv om det ikke er meningen, for eksempel hvis noen holder den opp mot fingeren din."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefonen kan låses opp selv om det ikke er meningen, for eksempel hvis noen holder den opp mot fingeren din."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Nettbrettet kan låses opp selv om det ikke er meningen, for eksempel hvis noen holder den opp mot fingeren din."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Enheten kan låses opp selv om det ikke er meningen, for eksempel hvis noen holder den opp mot fingeren din."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefonen til barnet ditt kan låses opp selv om det ikke er meningen, for eksempel hvis noen holder den opp mot fingeren til barnet."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Du får best resultater ved å bruke en skjermbeskytter som er Made For Google-sertifisert. Fingeravtrykket ditt fungerer muligens ikke med andre skjermbeskyttere."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Du får best resultater ved å bruke en skjermbeskytter som er Made For Google-sertifisert. Fingeravtrykket til barnet ditt fungerer muligens ikke med andre skjermbeskyttere."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustrasjon med enheten og plasseringen av fingeravtrykksensoren"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Navn"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Prøv igjen"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Slett"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Berør sensoren"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Legg fingeren på sensoren, og løft den når du kjenner en vibrasjon"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Ferdig"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ops, det er ikke sensoren"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Berør sensoren på baksiden av telefonen. Bruk pekefingeren."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registreringen er ikke fullført"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Tidsgrensen for registrering av fingeravtrykk er nådd. Prøv på nytt."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Konfigurering av fingeravtrykk er tidsavbrutt"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Prøv på nytt nå, eller konfigurer fingeravtrykket senere i innstillingene"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registrering av fingeravtrykket mislyktes. Prøv på nytt, eller bruk en annen finger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Legg til ett til"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Neste"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Tilpass telefonen"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Prøv forskjellige stiler, bakgrunner med mer"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Skjermsparer"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"skjermsparer"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Bruk skjermsparer"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Når enheten lades / er i dokken"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Begge"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Når enheten lades"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Når enheten er i dokken"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Aldri"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Av"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"For å kontrollere hva som skjer når telefonen er plassert i dokken og/eller i hvilemodus, slå på skjermspareren."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Starttidspunkt"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Aktiv skjermsparer"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Innstillinger"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatisk lysstyrke"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Aktiver enheten med løftebevegelser"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Passiv skjerm"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Angi en PIN-kode"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Angi en jobb-PIN-kode"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Angi et mønster"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"For å øke sikkerheten, angi et mønster for å låse opp enheten"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Angi et jobbmønster"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Angi passord for å bruke fingeravtrykk"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Angi mønster for å bruke fingeravtrykk"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Nødapp"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Tilbakestill app-innstillingene"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Vil du tilbakestille app-innstillingene?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Dette tilbakestiller alle innstillinger for\n\n"<li>"deaktiverte apper"</li>\n<li>"deaktiverte appvarsler"</li>\n<li>"standardapper for handlinger"</li>\n<li>"begrensninger på bakgrunnsdata for apper"</li>\n<li>"eventuelle tillatelsesbegrensninger"</li>\n\n"Du mister ingen appdata."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Dette tilbakestiller alle innstillinger for\n\n"<li>"deaktiverte apper"</li>\n<li>"deaktiverte appvarsler"</li>\n<li>"standardapper for handlinger"</li>\n<li>"begrensninger for bakgrunnsdata for apper"</li>\n<li>"eventuelle tillatelsesbegrensninger"</li>\n<li>"innstillinger for batteribruk"</li>\n\n"Du mister ingen appdata."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Tilbakestill apper"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Styr lagring"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Tilbakestill valgene"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Skjermstørrelsen og tekstinnstillingene er tilbakestilt"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Vil du tilbakestille visningsstørrelse og tekst?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Innstillingene for visningsstørrelse og tekst blir tilbakestilt til de opprinnelge telefoninnstillingene"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Innstillingene for visningsstørrelse og tekst blir tilbakestilt til de opprinnelge telefoninnstillingene"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Innstillingene for visningsstørrelse og tekst blir tilbakestilt til de opprinnelige nettbrettinnstillingene"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Tilbakestill"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Har du planer for helgen?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Jeg skal til stranden. Vil du bli med?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Ingen bruk siden sist batteriet var fulladet"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Ingen bruk de siste 24 timene"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Andre brukere"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Beregnet gjenværende batteritid er basert på måten du bruker enheten på"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Anslått tid som er igjen"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Til det er fulladet"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Full tjeneste for kommandoord og interaksjon"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Enkel tjeneste for tale til tekst"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Denne taleinndata-tjenesten kan utføre «alltid på»-taleovervåking og kontrollere taleaktiverte apper på dine vegne. Den kommer fra <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>-appen. Vil du slå på denne tjenesten?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Innstillinger for gjenkjenning på enheten"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Gjenkjenning på enheten"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Talegjenkjenning på enheten"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Foretrukket motor"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Innstillinger for motor"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Talehastighet og stemmeleie"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Slett"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Alle apper og data i denne økten blir slettet."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Fjern"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gjest (du)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Brukere"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Andre brukere"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Slett gjesteaktivitet"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Slett alle gjesteapper og -data når du avslutter gjestemodus"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Vil du slette gjesteaktivitet?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apper og data fra denne gjesteøkten slettes nå, og all fremtidig gjesteaktivitet slettes hver gang du avslutter gjestemodus"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Slå på telefonsamtaler"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Slå på telefonsamtaler og SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Slett brukeren"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"«<xliff:g id="APP_NAME">%1$s</xliff:g>»: alle varsler"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g>: alle varsler"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Varsler som kan tilpasses"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> varsler per dag</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> varsel per dag</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Omtrent <xliff:g id="NUMBER_1">%,d</xliff:g> varsler per dag</item>
+      <item quantity="one">Omtrent <xliff:g id="NUMBER_0">%d</xliff:g> varsel per dag</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">ca. <xliff:g id="NUMBER_1">%,d</xliff:g> varsler per uke</item>
-      <item quantity="one">ca. <xliff:g id="NUMBER_0">%d</xliff:g> varsel per uke</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Omtrent <xliff:g id="NUMBER_1">%,d</xliff:g> varsler per uke</item>
+      <item quantity="one">Omtrent <xliff:g id="NUMBER_0">%d</xliff:g> varsel per uke</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Aldri"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Enhets- og appvarsler"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ikke gjør noe"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrer"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Ignorer"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"For å slå på, endre først «Trykk og hold på av/på-knappen» til av/på-menyen."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"For å slå på dette, endre først «Trykk og hold på av/på-knappen» til av/på-menyen."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Nettverksdetaljer"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Enhetsnavnet ditt er synlig for apper på telefonen. Det kan også ses av andre personer når du kobler til Bluetooth-enheter, kobler til et Wi-Fi-nettverk eller konfigurerer en wifi-sone."</string>
     <string name="devices_title" msgid="649715719278562515">"Enheter"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"enhetsstyring"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kort og billetter"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kort og billetter"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Trykk og hold av/på-knappen"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Trykk og hold for assistenten"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Trykk og hold for av/på-menyen"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Trykk og hold er slått av"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Trykk og hold på av/på-knappen"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Trykk og hold på av/på-knappen for å åpne"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Av/på-meny"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digital assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Åpne den digitale assistenten"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Åpne av/på-menyen"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Du må angi en skjermlås for å bruke denne funksjonen"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Hold for å starte assistenten"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Start assistenten ved å holde inne av/på-knappen"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Av/på- og nødmeny:\nTrykk inn av/på og volum opp samtidig."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Forhindre ringing:\nEn snarvei er tilgjengelig i volummenyen."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Av/på-meny:\nTrykk på av/på-knappen og volum opp-knappen samtidig"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Forhindre ringing:\nTrykk på en volumknapp for å bruke snarveien"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Varighet for trykk og hold"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Juster følsomheten ved å velge hvor lenge av/på-knappen skal holdes inne"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kort"</string>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index 487f7b7..1809cc4 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"तपाईंका बच्चाले Pixel Imprint प्रयोग गर्दा उनको फिंगरप्रिन्ट मोडेल अपडेट गर्न ती फोटोहरू प्रयोग गरिन्छन्। तपाईंका बच्चाको फिंगरप्रिन्ट मोडेल बनाउन प्रयोग गरिने फोटोहरू कहिल्यै पनि भण्डारण गरिँदैन तर यो फिंगरप्रिन्ट मोडेल यो फोनमा सुरक्षित तरिकाले भण्डारण गरिन्छ र कहिल्यै पनि यो फोनबाहेक अन्यत्र पठाइँदैन। यी सबै कारबाही यो फोनमा सुरक्षित तरिकाले गरिन्छ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"तपाईं जुनसुकै बेला सेटिङमा गई आफ्नो फिंगरप्रिन्टका फोटो र मोडेल मेटाउन वा फिंगरप्रिन्ट अनलक अफ गर्न सक्नुहुन्छ। फिंगरप्रिन्टका फोटो र मोडेल तपाईंले नमेटाउञ्जेलसम्म तपाईंको फोनमा सुरक्षित तरिकाले भण्डारण गरिन्छ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"तपाईं र तपाईंका बच्चा सेटिङमा गई जुनसुकै बेला उनको फिंगरप्रिन्टका फोटो र मोडेल मेटाउन वा फिंगरप्रिन्ट अनलक अफ गर्न सक्नुहुन्छ। तपाईंले फिंगरप्रिन्टका फोटो र मोडेलहरू नमेटाउन्जेल ती मोडेल र फोटो फोनमा नै भण्डारण गरिन्छन्।"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"तपाईंले अनलक गर्न नचाहेका बेलामा पनि फोन अनलक हुन सक्छ। जस्तै: कसैले तपाईंका औँला फोनको फिंगरप्रिन्ट सेन्सरमा छुवाए भने फोन अनलक हुन सक्छ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"तपाईंले अनलक गर्न नचाहेका बेलामा पनि फोन अनलक हुन सक्छ। जस्तै: कसैले तपाईंका औँला फोनको फिंगरप्रिन्ट सेन्सरमा छुवाए भने फोन अनलक हुन सक्छ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"तपाईंले अनलक गर्न नचाहेका बेलामा पनि ट्याब्लेट अनलक हुन सक्छ। जस्तै: कसैले तपाईंका औँला फोनको फिंगरप्रिन्ट सेन्सरमा छुवाए भने फोन अनलक हुन सक्छ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"तपाईंले अनलक गर्न नचाहेका बेलामा पनि डिभाइस अनलक हुन सक्छ। जस्तै: कसैले तपाईंका औँला फोनको फिंगरप्रिन्ट सेन्सरमा छुवाए भने फोन अनलक हुन सक्छ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"तपाईंका बच्चाले अनलक गर्न नचाहेका बेला पनि फोन अनलक हुन सक्छ। जस्तै कसैले तपाईंका बच्चाको औँला फोनको फिंगरप्रिन्ट सेन्सरमा छुवाए भने फोन अनलक हुन सक्छ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"उत्कृष्ट परिणाम प्राप्त गर्न \"Google का लागि बनाइएको\" प्रमाणपत्र प्राप्त स्क्रिन प्रोटेक्टर प्रयोग गर्नुहोस्। तपाईंले अन्य स्क्रिन प्रोटेक्टरहरू हाल्नुभयो भने तपाईंको फिंगरप्रिन्टले काम नगर्न सक्छ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"उत्कृष्ट परिणाम प्राप्त गर्न \"Google का लागि बनाइएको\" प्रमाणपत्र प्राप्त स्क्रिन प्रोटेक्टर प्रयोग गर्नुहोस्। तपाईंले अन्य स्क्रिन प्रोटेक्टरहरू हाल्नुभयो भने तपाईंको बच्चाको फिंगरप्रिन्टले काम नगर्न सक्छ।"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"यन्त्र साथ चित्रण र फिंगरप्रिन्ट सेन्सर स्थान"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"नाम"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ठिक छ"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"फेरि प्रयास गर्नुहोस्"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"मेटाउनुहोस्"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"सेन्सरमा छुनुहोस्"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"सेन्सरमा आफ्नो औंला राख्नुहोस् र भाइब्रेसन भएपछि उठाउनुहोस्"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"सम्पन्न भयो"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"आच्यौं, त्यो सेन्सर होइन नि त"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"तपाईंको फोनको पछाडि भागमा रहेको सेन्सरमा छुनुहोस्। चोर औंला प्रयोग गर्नुहोस्‌।"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"दर्ता गर्न सकिएन"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"फिंगरप्रिन्ट दर्ताको समय सीमा पुग्यो। पुन: प्रयास गर्नुहोस्।"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"फिंगरप्रिन्ट सेट अप गर्ने समय सकियो"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"अहिले नै फेरि प्रयास गर्नुहोस् वा पछि सेटिङमा गई फिंगरप्रिन्ट सेटअप गर्नुहोस्"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"फिंगरप्रिन्ट दर्ता गर्न सकिएन। पुन: प्रयास गर्नुहोस् वा अरू औँलाको प्रयोग गर्नुहोस्।"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"अर्को हाल्नुहोस्"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"अर्को"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"आफ्नो फोन आफूले चाहे जस्तो पार्नुहोस्‌"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"विभिन्न शैली, वालपेपर र थप कुरा चलाएर हेर्नुहोस्"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"स्क्रिन सेभर"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"स्क्रिनसेभर"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"स्क्रिन सेभर प्रयोग गरियोस्"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"चार्ज वा डक गरिरहँदा"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"कुनै"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"चार्ज गरिरहेका बेला"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"डक गरिएको बेला"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"कहिल्यै पनि होइन"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"बन्द"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"फोन डकमा र/वा शयन अवस्थामा हुँदा हुने कुरालाई नियन्त्रण गर्न स्क्रिन सेभरलाई अन गर्नुहोस्।"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"सुरु हुने समय"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"हालको स्क्रिन सेभर"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"सेटिङहरू"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"स्वचालित उज्यालोपना"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"चालु गर्न उठाउनुहोस्"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"एम्बियन्ट प्रदर्शन"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN सेट गर्नुहोस्"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"कार्य प्रोफाइलको PIN सेट गर्नुहोस्"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"प्याटर्न सेट गर्नुहोस्"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"यो डिभाइस थप सुरक्षित बनाउनका लागि यसलाई अनलक गर्ने प्याटर्न सेट गर्नुहोस्"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"कार्य प्रोफाइलको प्याटर्न सेट गर्नुहोस्"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"फिंगरप्रिन्ट प्रयोग गर्न पासवर्ड सेट गर्नुहोस्"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"फिंगरप्रिन्ट प्रयोग गर्न प्याटर्न सेट गर्नुहोस्"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"आपत्‌कालीन एप"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"एपका प्राथमिकताहरू रिसेट गर्नुहोस्"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"एपका प्राथमिकताहरू रिसेट गर्ने हो?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"यस कार्यले निम्न सुविधाहरूका सबै प्राथमिकताहरूलाई रिसेट गर्ने छ:\n\n"<li>"असक्षम पारिएका एपहरू"</li>\n<li>"असक्षम पारिएका एपसम्बन्धी सूचनाहरू"</li>\n<li>"कारबाहीका लागि तोकिएका डिफल्ट एप"</li>\n<li>"एपको ब्याकग्राउन्ड डेटासम्बन्धी बन्देजहरू"</li>\n<li>"अनुमतिसम्बन्धी सबै बन्देजहरू"</li>\n\n"तपाईं एपको कुनै पनि डेटा गुमाउनु हुने छैन।"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"तपाईंले यसो गर्नुभयो भने तल दिइएका कुराहरूसँग सम्बन्धित सबै प्राथमिकताहरू रिसेट हुने छन्:\n\n"<li>"अफ गरिएका एपहरू"</li>\n<li>"अफ गरिएका एपका सूचनाहरू"</li>\n<li>"विभिन्न कार्य गर्न प्रयोग गरिने डिफल्ट एपहरू"</li>\n<li>"एपहरूमा ब्याकग्राउन्ड डेटासम्बन्धी प्रतिबन्धहरू"</li>\n<li>"अनुमतिसँग सम्बन्धित सबै प्रतिबन्धहरू"</li>\n<li>"ब्याट्रीको खपतसम्बन्धी सेटिङ"</li>\n\n"तपाईंले एपसम्बन्धी कुनै पनि डेटा गुमाउनु हुने छैन।"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"एपहरू रिसेट गर्नुहोस्"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"उपलब्ध भण्डारणको व्यवस्थापन गर्नुहोस्"</string>
     <string name="filter" msgid="9039576690686251462">"फिल्टर गर्नुहोस्"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"सेटिङ रिसेट गर्नुहोस्"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"डिस्प्लेको आकार तथा टेक्स्ट सेटिङ रिसेट गरिएका छन्"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"डिस्प्लेको आकार र टेक्स्टसम्बन्धी सेटिङ रिसेट गर्ने हो?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"डिस्प्लेको आकार र टेक्स्टसम्बन्धी सेटिङ रिसेट गरी फोनको डिफल्ट सेटिङ लागू गरिने छ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"डिस्प्लेको आकार र टेक्स्टसम्बन्धी सेटिङ रिसेट गरी फोनको डिफल्ट सेटिङ लागू गरिने छ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"डिस्प्लेको आकार र टेक्स्टसम्बन्धी सेटिङ रिसेट गरी ट्याब्लेटको डिफल्ट सेटिङ लागू गरिने छ"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"रिसेट गर्नुहोस्"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"सप्ताहान्त कसरी बिताउने योजना छ?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"समुद्री तटतिर जाँदै छु। तपाईं पनि मसँगै जाने हो?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"पछिल्लो पटक पूर्ण चार्ज भएदेखि ब्याट्री प्रयोग गरिएको छैन"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"पछिल्लो २४ घन्टामा ब्याट्री प्रयोग गरिएन"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"अन्य प्रयोगकर्ताहरू"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"बाँकी रहेको ब्याट्रीको प्रतिशतको अनुमान तपाईंको डिभाइसको प्रयोगमा आधारित हुन्छ"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"अनुमानित बाँकी समय"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"पूर्ण चार्ज नभएसम्म"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"पूर्ण हटवर्ड शब्द र अन्तरक्रिया"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"पाठको लागि सरल बोली"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"यो आवाज प्रविष्ट सेवाले आफ्नो तर्फबाट सधैं-आवाज अनुगमन र आवाज नियन्त्रण उपकरण सक्षम प्रदर्शन गर्न सक्षम हुनेछ। यो <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> उपकरणबाट आउँछ। यो सेवाको प्रयोग सक्षम गर्ने हो?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"डिभाइसमै चल्ने पहिचानसम्बन्धी सेटिङ"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"डिभाइसमै चल्ने पहिचान"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"डिभाइसमै चल्ने वाक् पहिचान"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"रुचाइएको इन्जिन"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"इन्जिन सम्बन्धी सेटिङहरू"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"बोलीको तीव्रता र तीक्षणता"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"मेट्नुहोस्"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"यो सत्रमा भएका सबै एपहरू र डेटा मेटाइने छ।"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"हटाउनुहोस्"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"अतिथि (तपाईं)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"प्रयोगकर्ताहरू"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"अन्य प्रयोगकर्ताहरू"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"अतिथि सत्रका क्रियाकलाप मेटाउनुहोस्"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"अतिथि मोडबाट बाहिरिँदा अतिथि सत्रका सबै एप तथा डेटा मेटाइऊन्"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"अतिथि सत्रका क्रियाकलाप मेटाउने हो?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"यो अतिथि सत्रका एप तथा डेटा अहिले नै मेटाइने छ र भविष्यमा तपाईं अतिथि मोडबाट बाहिरिँदा हरेक पटक अतिथि सत्रमा गरिने सबै क्रियाकलाप मेटाइने छन्"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"फोन गर्ने सेवा सक्रिय गरियोस्"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"फोन कल तथा SMS सक्षम पार्नुहोस्"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"प्रयोगकर्ता मेटाउनुहोस्"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\" का सबै सूचनाहरू"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g> सम्बन्धी सबै सूचनाहरू"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"अनुकूल पार्न मिल्ने सूचनाहरू"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">प्रति दिन लगभग <xliff:g id="NUMBER_1">%,d</xliff:g> सूचनाहरू</item>
-      <item quantity="one">प्रति दिन लगभग <xliff:g id="NUMBER_0">%d</xliff:g> सूचना</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">हरेक दिन लगभग <xliff:g id="NUMBER_1">%,d</xliff:g> वटा सूचना</item>
+      <item quantity="one">हरेक दिन लगभग <xliff:g id="NUMBER_0">%d</xliff:g> सूचना</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">प्रति हप्ता लगभग <xliff:g id="NUMBER_1">%,d</xliff:g> सूचनाहरू</item>
-      <item quantity="one">प्रति हप्ता लगभग <xliff:g id="NUMBER_0">%d</xliff:g> सूचना</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">हरेक हप्ता लगभग <xliff:g id="NUMBER_1">%,d</xliff:g> वटा सूचना</item>
+      <item quantity="one">हरेक हप्ता लगभग <xliff:g id="NUMBER_0">%d</xliff:g> सूचना</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"कहिल्यै होइन"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"डिभाइस तथा एपसम्बन्धी सूचनाहरू"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"केही पनि नगर्नुहोस्"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"भाइब्रेट गरियोस्"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"म्युट गर्नुहोस्"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"तपाईंले पावर मेनुमा गएर \"पावर बटन थिचिराख्नुहोस्\" परिवर्तन गरेपछि मात्र यो सेटिङ अन गर्न मिल्छ।"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"तपाईंले पावर मेनुमा गएर \"पावर बटन थिचिराख्नुहोस्\" परिवर्तन गरेपछि मात्र यो सेटिङ अन गर्न मिल्छ।"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"नेटवर्कको विवरण"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"तपाईंको फोनमा रहेका एपको प्रयोग गरी तपाईंको डिभाइसको नाम हेर्न सकिन्छ। तपाईंले ब्लुटुथ चल्ने डिभाइसमा कनेक्ट गर्दा, कुनै Wi-Fi नेटवर्कमा कनेक्ट गर्दा वा कुनै Wi-Fi हटस्पट सेटअप गर्दा अरू मान्छेहरू पनि यसलाई देख्न सक्छन्।"</string>
     <string name="devices_title" msgid="649715719278562515">"यन्त्रहरू"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"डिभाइस नियन्त्रण गर्ने विजेटहरू"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"कार्ड तथा पासहरू"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"कार्ड तथा पासहरू"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"पावर बटन थिचिराख्नुहोस्"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"सहायता पाउन पावर बटन थिचिराख्नुहोस्"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"पावर मेनु प्रयोग गर्न पावर बटन थिचिराख्नुहोस्"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"पावर बटन थिचिराखेर सहायता लिने सुविधा अफ गरिएको छ"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"पावर बटन थिचिराख्नुहोस्"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"पावर मेनु प्रयोग गर्न पावर बटन थिचिराख्नुहोस्"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"पावर मेनु"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"डिजिटल सहायक"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"डिजिटल सहायक प्रयोग गर्नुहोस्"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"पावर मेनु प्रयोग गर्नुहोस्"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"यो सुविधा प्रयोग गर्न सर्वप्रथम स्क्रिन लक हाल्नुहोस्"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"पावर बटन थिच्दा सहायक अन गरियोस्"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"पावर बटन थिच्दा सहायक खुलोस्"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"पावर र आपत्‌कालीन मेनु:\nपावर र भोल्युम बढाउने बटन एकै पटक थिच्नुहोस्।"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"डिभाइसको घण्टी म्युट गरियोस्:\nसर्टकट भोल्युम मेनुमा छ।"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"पावर मेनु:\nपावर बटन र भोल्युम बढाउने बटन एकै चोटि थिच्नुहोस्"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"घण्टी बज्न नदिनुहोस्:\nसर्टकट प्रयोग गर्न भोल्युम बटन थिच्नुहोस्"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"थिचिराख्ने अवधि"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"कति समयसम्म पावर बटन थिचिराख्ने भन्ने कुरा छनौट गरेर संवेदनशीलता मिलाउनुहोस्"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"छोटो"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index f500a29..fd06fd8 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Als je kind Pixel Imprint gebruikt, worden foto\'s gebruikt om het vingerafdrukmodel van je kind te updaten. De foto\'s die worden gebruikt om het vingerafdrukmodel van je kind te maken, worden nooit opgeslagen, maar het vingerafdrukmodel zelf wordt beveiligd opgeslagen op de telefoon en verlaat deze nooit. Alle verwerking vindt beveiligd plaats op de telefoon."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Je kunt je vingerafdrukafbeeldingen en -model op elk moment verwijderen of ontgrendeling via vingerafdruk uitzetten in Instellingen. Vingerafdrukafbeeldingen en -modellen worden opgeslagen op de telefoon totdat je ze verwijdert."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Jij en je kind kunnen op elk moment de vingerafdrukfoto\'s en het vingerafdrukmodel van het kind verwijderen of ontgrendelen met vingerafdruk uitzetten in Instellingen. Vingerafdrukfoto\'s en -modellen worden opgeslagen op de telefoon totdat ze worden verwijderd."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Je telefoon kan onbedoeld worden ontgrendeld, bijvoorbeeld wanneer iemand deze tegen je vinger houdt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Je telefoon kan onbedoeld worden ontgrendeld, bijvoorbeeld wanneer iemand deze tegen je vinger houdt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Je tablet kan onbedoeld worden ontgrendeld, bijvoorbeeld als iemand deze tegen je vinger houdt."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Je apparaat kan onbedoeld worden ontgrendeld, bijvoorbeeld als iemand het tegen je vinger houdt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"De telefoon van je kind kan onbedoeld worden ontgrendeld, bijvoorbeeld als iemand deze tegen de vinger van je kind houdt."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Voor de beste resultaten gebruik je een gecertificeerde Made for Google-screenprotector. Bij andere screenprotectors werkt je vingerafdruk misschien niet."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Voor de beste resultaten gebruik je een gecertificeerde Made for Google-screenprotector. Bij andere screenprotectors werkt de vingerafdruk van je kind misschien niet."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustratie met apparaat en locatie van vingerafdruksensor"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Naam"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Opnieuw proberen"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Verwijderen"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Raak de sensor aan"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Plaats je vinger op de sensor en til deze op nadat je een trilling hebt gevoeld."</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Klaar"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Dat is niet de sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Raak de sensor achter op je telefoon aan. Gebruik je wijsvinger."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registratie is niet voltooid"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Tijdlimiet voor vingerafdrukregistratie is bereikt. Probeer het opnieuw."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Time-out bij instellen van vingerafdruk"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Probeer het nu opnieuw of stel je vingerafdruk later in via Instellingen"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Vingerafdrukregistratie is mislukt. Probeer het opnieuw of gebruik een andere vinger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Nog een toevoegen"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Volgende"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Je telefoon aanpassen"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Probeer verschillende stijlen, achtergronden en meer"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Screensaver"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"screensaver"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Screensaver gebruiken"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Tijdens opladen of docken"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Tijdens beide"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Tijdens het opladen"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Tijdens het docken"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nooit"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Uit"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Zet de screensaver aan om te bepalen wat er gebeurt als de telefoon is gedockt en/of de slaapstand actief is."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Wanneer starten"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Huidige screensaver"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Instellingen"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatische helderheid"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Optillen om te activeren"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Inactief scherm"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Stel een pincode in"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Een werkpincode instellen"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Stel een patroon in"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Stel voor extra beveiliging een patroon in om het apparaat te ontgrendelen"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Een werkpatroon instellen"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Stel wachtwoord in voor gebruik van vingerafdruk"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Stel patroon in voor gebruik van vingerafdruk"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Nood-app"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"App-voorkeuren resetten"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"App-voorkeuren resetten?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Dit reset alle voorkeuren voor:\n\n"<li>"Uitgezette apps"</li>\n<li>"Uitgezette app-meldingen"</li>\n<li>"Standaardapps voor acties"</li>\n<li>"Beperkingen voor achtergrondgegevens voor apps"</li>\n<li>"Rechtenbeperkingen"</li>\n\n"Je verliest geen app-gegevens."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Hiermee worden alle voorkeuren gereset voor:\n\n"<li>"Uitgezette apps"</li>\n<li>"Uitgezette app-meldingen"</li>\n<li>"Standaard-apps voor acties"</li>\n<li>"Beperkingen voor achtergrondgegevens voor apps"</li>\n<li>"Rechtenbeperkingen"</li>\n<li>"Instellingen voor batterijgebruik"</li>\n\n"Je verliest geen app-gegevens."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Apps resetten"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Ruimte beheren"</string>
     <string name="filter" msgid="9039576690686251462">"Filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Instellingen resetten"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Instellingen voor weergavegrootte en tekst zijn gereset"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Weergavegrootte en tekst resetten?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Je weergavegrootte en tekstvoorkeuren worden gereset naar de oorspronkelijke instellingen van de telefoon"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Je weergavegrootte en tekstvoorkeuren worden gereset naar de oorspronkelijke instellingen van de telefoon"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Je weergavegrootte en tekstvoorkeuren worden gereset naar de oorspronkelijke instellingen van de tablet"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Resetten"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Heb je plannen voor het weekend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Ik ga naar het strand. Ga je mee?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Geen gebruik sinds laatste volledige lading"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Geen gebruik in de afgelopen 24 u"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Andere gebruikers"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Schatting van resterende batterijduur is gebaseerd op je apparaatgebruik"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Geschatte resterende tijd"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Tot volledige lading"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Volledige hotword- en interactieservice"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Eenvoudige spraak-naar-tekst"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Deze spraakinvoerservice kan doorlopend de spraakinvoer volgen en namens jou spraakgestuurde apps bedienen. De service wordt geleverd door de <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Wil je het gebruik van deze service aanzetten?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Instellingen voor herkenning op het apparaat"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Herkenning op het apparaat"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Spraakherkenning op het apparaat"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Voorkeursengine"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Engine-instellingen"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Spreeksnelheid en toonhoogte"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Verwijderen"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Alle apps en gegevens in deze sessie worden verwijderd."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Verwijderen"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gast (jij)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Gebruikers"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Andere gebruikers"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Gastactiviteit verwijderen"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Verwijder alle gast-apps en -gegevens bij het afsluiten van de gastmodus"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Gastactiviteit verwijderen?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Apps en gegevens van deze gastsessie worden nu verwijderd en alle toekomstige gastactiviteit wordt verwijderd telkens wanneer je de gastmodus afsluit"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Telefoonoproepen aanzetten"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Telefoonoproepen en sms aanzetten"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Gebruiker verwijderen"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Alle meldingen van <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Alle meldingen van <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Aanpasbare meldingen"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> meldingen per dag</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> melding per dag</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Ongeveer <xliff:g id="NUMBER_1">%,d</xliff:g> meldingen per dag</item>
+      <item quantity="one">Ongeveer <xliff:g id="NUMBER_0">%d</xliff:g> melding per dag</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> meldingen per week</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> melding per week</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Ongeveer <xliff:g id="NUMBER_1">%,d</xliff:g> meldingen per week</item>
+      <item quantity="one">Ongeveer <xliff:g id="NUMBER_0">%d</xliff:g> melding per week</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nooit"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Apparaat- en app-meldingen"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Niets doen"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Trillen"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Geluid uit"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Als je dit wilt aanzetten, wijzig je eerst \'Aan/uit-knop ingedrukt houden\' in het aan/uit-menu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Als je dit wilt aanzetten, wijzig je eerst \'Aan/uit-knop ingedrukt houden\' in het aan/uit-menu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Netwerk­gegevens"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Je apparaatnaam is zichtbaar voor apps op je telefoon. De apparaatnaam kan ook door andere mensen worden gezien als je verbinding maakt met bluetooth-apparaten of een wifi-netwerk, of als je een wifi-hotspot instelt."</string>
     <string name="devices_title" msgid="649715719278562515">"Apparaten"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"apparaatbediening"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kaarten en passen"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kaarten en passen"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Aan/uit-knop ingedrukt houden"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Houd ingedrukt voor de Assistent"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Ingedrukt houden voor het aan/uit-menu"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Ingedrukt houden staat uit"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Aan/uit-knop ingedrukt houden"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Aan/uit-knop ingedrukt houden voor toegang"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Aan/uit-menu"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitale assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Digitale assistent openen"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Aan/uit-menu openen"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Stel voor gebruik eerst een schermvergrendeling in"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Vasthouden voor de Assistent"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Houd de aan/uit-knop ingedrukt om de Assistent te activeren"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Aan/uit- en noodmenu:\ndruk tegelijkertijd op de aan/uit-knop en de knop Volume omhoog"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Ringtone uitzetten:\nsnelkoppeling beschikbaar in het volumemenu."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Aan/uit-menu:\nDruk tegelijkertijd op de aan/uit-knop en de knop Volume omhoog"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Ringtone uitzetten:\nDruk op een volumeknop voor de sneltoets"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Duur van ingedrukt houden"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Pas de gevoeligheid aan door te kiezen hoelang je de aan/uit-knop ingedrukt moet houden"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kort"</string>
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
index 00fd66a..24f24b1 100644
--- a/res/values-or/strings.xml
+++ b/res/values-or/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"ସେ Pixel Imprint ବ୍ୟବହାର କରିବା ସମୟରେ, ତା\'ର ଟିପଚିହ୍ନ ମଡେଲକୁ ଅପଡେଟ୍ କରିବା ପାଇଁ ଛବିଗୁଡ଼ିକୁ ବ୍ୟବହାର କରାଯାଏ। ଆପଣଙ୍କ ପିଲାର ଟିପଚିହ୍ନ ମଡେଲ୍ ତିଆରି କରିବା ପାଇଁ ବ୍ୟବହୃତ ଛବିଗୁଡ଼ିକୁ କେବେ ବି ଷ୍ଟୋର୍ କରାଯାଏ ନାହିଁ, କିନ୍ତୁ ଟିପଚିହ୍ନ ମଡେଲକୁ ଫୋନରେ ସୁରକ୍ଷିତ ଭାବେ ଷ୍ଟୋର୍ କରାଯାଇଥାଏ ଏବଂ କେବେ ବି ଫୋନରୁ କାଢ଼ି ଦିଆଯାଏ ନାହିଁ। ସମସ୍ତ ପ୍ରକ୍ରିୟାକରଣ ସୁରକ୍ଷିତ ଭାବେ ଫୋନରେ କରାଯାଇଥାଏ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"ଆପଣ ଆପଣଙ୍କ ଟିପଚିହ୍ନର ଛବି ଓ ମଡେଲଗୁଡ଼ିକୁ ଡିଲିଟ କରିପାରିବେ କିମ୍ବା ଯେ କୌଣସି ସମୟରେ ସେଟିଂସରେ ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକକୁ ବନ୍ଦ କରିପାରିବେ। ଟିପଚିହ୍ନର ଛବି ଓ ମଡେଲଗୁଡ଼ିକୁ ଆପଣ ଡିଲିଟ ନକରିବା ପର୍ଯ୍ୟନ୍ତ ତାହା ଫୋନରେ ଷ୍ଟୋର ହୋଇ ରହିଥାଏ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"ଟିପଚିହ୍ନର ଛବି ଓ ମଡେଲକୁ ଆପଣ ଏବଂ ଆପଣଙ୍କ ପିଲା ଡିଲିଟ କରିପାରିବେ କିମ୍ବା ଯେ କୌଣସି ସମୟରେ ସେଟିଂସରେ ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ଅନଲକ ବନ୍ଦ କରିପାରିବେ। ଟିପଚିହ୍ନ ଛବି ଏବଂ ମଡେଲଗୁଡ଼ିକୁ ଡିଲିଟ ନକରିବା ପର୍ଯ୍ୟନ୍ତ ସେଗୁଡ଼ିକ ଫୋନରେ ଷ୍ଟୋର ହୋଇ ରହିଥାଏ।"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"ଯଦି କେହି ଜଣେ ବ୍ୟକ୍ତି ଆପଣଙ୍କ ଫୋନକୁ ଆପଣଙ୍କ ଆଙ୍ଗୁଠିରେ ସ୍ପର୍ଶ କରାନ୍ତି, ତେବେ ଆପଣଙ୍କ ଅଜାଣତରେ ମଧ୍ୟ ଏହାକୁ ଅନଲକ୍ କରାଯାଇପାରିବ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"ଯଦି କେହି ଜଣେ ବ୍ୟକ୍ତି ଆପଣଙ୍କ ଫୋନକୁ ଆପଣଙ୍କ ଆଙ୍ଗୁଠିରେ ସ୍ପର୍ଶ କରାନ୍ତି, ତେବେ ଆପଣଙ୍କ ଅଜାଣତରେ ମଧ୍ୟ ଏହାକୁ ଅନଲକ୍ କରାଯାଇପାରିବ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"ଯଦି କେହି ଜଣେ ବ୍ୟକ୍ତି ଆପଣଙ୍କ ଟାବଲେଟକୁ ଆପଣଙ୍କ ଆଙ୍ଗୁଠିରେ ସ୍ପର୍ଶ କରନ୍ତି, ତେବେ ଆପଣଙ୍କ ଅଜାଣତରେ ମଧ୍ୟ ଏହାକୁ ଅନଲକ କରାଯାଇପାରିବ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"ଯଦି କେହି ଜଣେ ବ୍ୟକ୍ତି ଆପଣଙ୍କ ଡିଭାଇସକୁ ଆପଣଙ୍କ ଆଙ୍ଗୁଠିରେ ସ୍ପର୍ଶ କରନ୍ତି, ତେବେ ଆପଣଙ୍କ ଅଜାଣତରେ ମଧ୍ୟ ଏହାକୁ ଅନଲକ କରାଯାଇପାରିବ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"ଯଦି କେହି ଜଣେ ବ୍ୟକ୍ତି ଆପଣଙ୍କ ପିଲାର ଫୋନକୁ ତା’ର ଆଙ୍ଗୁଠିରେ ସ୍ପର୍ଶ କରେ, ତେବେ ତା’ର ଅଜାଣତରେ ମଧ୍ୟ, ଏହାକୁ ଅନଲକ୍ କରାଯାଇପାରିବ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ସର୍ବୋତ୍ତମ ଫଳାଫଳ ପାଇଁ, Made for Google ସ୍ୱୀକୃତିପ୍ରାପ୍ତ ଏକ ସ୍କ୍ରିନ ପ୍ରୋଟେକ୍ଟର ବ୍ୟବହାର କରନ୍ତୁ। ଅନ୍ୟ ସ୍କ୍ରିନ ପ୍ରୋଟେକ୍ଟରଗୁଡ଼ିକ ସହିତ, ଆପଣଙ୍କ ଟିପଚିହ୍ନ କାମ କରିନପାରେ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ସର୍ବୋତ୍ତମ ଫଳାଫଳ ପାଇଁ, Made for Google ସ୍ୱୀକୃତିପ୍ରାପ୍ତ ଏକ ସ୍କ୍ରିନ ପ୍ରୋଟେକ୍ଟର ବ୍ୟବହାର କରନ୍ତୁ। ଅନ୍ୟ ସ୍କ୍ରିନ ପ୍ରୋଟେକ୍ଟରଗୁଡ଼ିକ ସହିତ, ଆପଣଙ୍କ ପିଲାର ଟିପଚିହ୍ନ କାମ କରିନପାରେ।"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ଡିଭାଇସ୍‌ ଏବଂ ଟିପଚିହ୍ନ ସେନସର୍ ଲୋକେସନ୍‌ ଚିତ୍ରଣ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"ନାମ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ଠିକ୍‍ ଅଛି"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"ଡିଲିଟ୍‌ କରନ୍ତୁ"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"ସେନ୍ସରକୁ ସ୍ପର୍ଶ କରନ୍ତୁ"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"ନିଜ ଆଙ୍ଗୁଠିକୁ ସେନ୍ସର୍ ଉପରେ ରଖନ୍ତୁ ଏବଂ ଏକ ଭାଇବ୍ରେସନ୍ ଅନୁଭବ କରିବା ପରେ ଉଠାଇଦିଅନ୍ତୁ"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"ହୋଇଗଲା"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ଆଃ, ସେଇଟା ସେନ୍ସର୍‌ ନୁହେଁ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"ଆପଣଙ୍କ ଫୋନ୍‌ର ପଛରେ ଥିବା ସେନସର୍‌ ସ୍ପର୍ଶ କରନ୍ତୁ। ଆପଣଙ୍କ ତର୍ଜନୀ ବ୍ୟବହାର କରନ୍ତୁ।"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ପଞ୍ଜିକରଣ ସମ୍ପୂର୍ଣ୍ଣ ହୋଇନାହିଁ"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"ଟିପଚିହ୍ନ ପଞ୍ଜିକରଣ ସମୟ ସୀମା ଶେଷ ହୋଇଯାଇଛି। ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ସେଟଅପ ସମୟସୀମା ସମାପ୍ତ ହୋଇଯାଇଛି"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ବର୍ତ୍ତମାନ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ କିମ୍ବା ପରେ ସେଟିଂସରେ ଆପଣଙ୍କ ଫିଙ୍ଗରପ୍ରିଣ୍ଟ ସେଟ ଅପ କରନ୍ତୁ"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ଟିପଚିହ୍ନ ଏନରୋଲମ୍ୟାଣ୍ଟ କାମ କଲା ନାହିଁ। ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ କିମ୍ବା ଭିନ୍ନ ଏକ ଆଙ୍ଗୁଠି ବ୍ୟବହାର କରନ୍ତୁ।"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"ଆଉ ଗୋଟିଏ ଯୋଗ କରନ୍ତୁ"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"ପରବର୍ତ୍ତୀ"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"ଆପଣଙ୍କର ଫୋନ୍ କଷ୍ଟମାଇଜ୍ କରନ୍ତୁ"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"ବିଭିନ୍ନ ଷ୍ଟାଇଲ୍, ୱାଲ୍‌ପେପର୍ ଏବଂ ଆହୁରି ଅନେକ କିଛି ବ୍ୟବହାର କରି ଦେଖନ୍ତୁ"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"ସ୍କ୍ରିନ୍‌ ସେଭର୍‌"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ସ୍କ୍ରିନସେଭର"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"ସ୍କ୍ରିନ ସେଭର ବ୍ୟବହାର କରନ୍ତୁ"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ଚାର୍ଜ ହେଉଥିବା କିମ୍ବା ଡକ୍‌ ହୋଇଥିବା ବେଳେ"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"ଏହା କିମ୍ବା ତାହା"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ଚାର୍ଜ ହେଉଥିବାବେଳେ"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ଡକ୍‌ ହୋଇଥିବାବେଳେ"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ଆଦୌ ନୁହେଁ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ବନ୍ଦ"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ଫୋନ୍‌ ଡକ୍‌ କରାଯାଇଥିଲେ ଏବଂ/କିମ୍ବା ସୁପ୍ତ ଥିବାବେଳେ ସେଥିରେ ହେଉଥିବା ଘଟଣାଗୁଡ଼ିକୁ ନିୟନ୍ତ୍ରଣ କରିବା ପାଇଁ ସ୍କ୍ରୀନ୍‌ ସେଭର୍‌ ଅନ୍‌ କରନ୍ତୁ।"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"କେତେବେଳେ ଆରମ୍ଭ କରିବେ"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"ବର୍ତ୍ତମାନର ସ୍କ୍ରିନ୍ ସେଭର୍"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ସେଟିଂସ"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ସ୍ୱଚାଳିତ ଉଜ୍ଜ୍ୱଳତା"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"ଉଠାଇଲେ ଜାଗ୍ରତ ହେବ"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ଆମ୍ବିଏଣ୍ଟ୍ ଡିସ୍‌ପ୍ଲେ"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ଏକ PIN ସେଟ୍ କରନ୍ତୁ"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ଏକ ୱାର୍କ PIN ସେଟ୍ କରନ୍ତୁ"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ଏକ ପାଟର୍ନ ସେଟ୍ କରନ୍ତୁ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ଅତିରିକ୍ତ ସୁରକ୍ଷା ପାଇଁ, ଡିଭାଇସ ଅନଲକ କରିବାକୁ ଏକ ପାଟର୍ନ ସେଟ କରନ୍ତୁ"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ଏକ ୱାର୍କ ପାଟର୍ନ ସେଟ୍ କରନ୍ତୁ"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ଟିପଚିହ୍ନ ବ୍ୟବହାର କରିବା ପାଇଁ ପାସ୍‌ୱାର୍ଡ ସେଟ୍‌ କରନ୍ତୁ"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ଟିପଚିହ୍ନ ବ୍ୟବହାର କରିବା ପାଇଁ ପାଟର୍ନ ସେଟ୍‌ କରନ୍ତୁ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"ଜରୁରୀକାଳୀନ ଆପ୍‌"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ଆପ୍‌ ପସନ୍ଦ ରିସେଟ୍‌ କରନ୍ତୁ"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"ଆପ୍‌ ପସନ୍ଦଗୁଡ଼ିକୁ ରିସେଟ୍‌ କରିବେ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ଏହା ନିମ୍ନରେ ଥିବା ସମସ୍ତ ପସନ୍ଦକୁ ରିସେଟ୍‍ କରିବ:\n\n"<li>" ଅକ୍ଷମ କରାଯାଇଥିବା ଆପ୍ସ"</li>\n<li>" ଅକ୍ଷମ କରାଯାଇଥିବା ଆପ୍ ବିଜ୍ଞପ୍ତି"</li>\n<li>" କାର୍ଯ୍ୟ ପାଇଁ ଡିଫଲ୍ଟ ଆପ୍ଲିକେସନ୍‌ଗୁଡ଼ିକ"</li>\n<li>"ଆପ୍ସ ପାଇଁ ବ୍ୟାକଗ୍ରାଉଣ୍ଡ ଡାଟା ପ୍ରତିବନ୍ଧକ"</li>\n<li>"ଯେ କୌଣସି ଅନୁମତି ପ୍ରତିବନ୍ଧକ"</li>\n\n"ଆପଣ କୌଣସି ଆପ୍ ଡାଟା ହରାଇବେ ନାହିଁ।"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ନିମ୍ନୋକ୍ତ ପାଇଁ ଏହା ସମସ୍ତ ପସନ୍ଦକୁ ରିସେଟ କରିବ:\n\n "<li>"ଅକ୍ଷମ କରାଯାଇଥିବା ଆପ୍ସ"</li>\n<li>"ଅକ୍ଷମ କରାଯାଇଥିବା ଆପ ବିଜ୍ଞପ୍ତିଗୁଡ଼ିକ"</li>\n<li>"କାର୍ଯ୍ୟଗୁଡ଼ିକ ପାଇଁ ଡିଫଲ୍ଟ ଆପ୍ଲିକେସନଗୁଡ଼ିକ"</li>\n<li>"ଆପ୍ସ ପାଇଁ ପୃଷ୍ଠପଟ ଡାଟା ପ୍ରତିବନ୍ଧକଗୁଡ଼ିକ"</li>\n<li>"ଯେ କୌଣସି ଅନୁମତି ପ୍ରତିବନ୍ଧକ"</li>\n<li>"ବ୍ୟାଟେରୀ ବ୍ୟବହାର ସେଟିଂସ"</li>\n\n"ଆପଣ କୌଣସି ଆପ ଡାଟା ହରାଇବେ ନାହିଁ।"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ଆପ୍‌ଗୁଡ଼ିକୁ ରିସେଟ୍‌ କରନ୍ତୁ"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ସ୍ଥାନ ପରିଚାଳନା କରନ୍ତୁ"</string>
     <string name="filter" msgid="9039576690686251462">"ଫିଲ୍ଟର୍"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ସେଟିଂସକୁ ରିସେଟ କରନ୍ତୁ"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ଡିସପ୍ଲେ ଆକାର ଏବଂ ଟେକ୍ସଟ ସେଟିଂସକୁ ରିସେଟ କରାଯାଇଛି"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ଡିସପ୍ଲେର ଆକାର ଏବଂ ଟେକ୍ସଟକୁ ରିସେଟ କରିବେ?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ଆପଣଙ୍କ ଡିସପ୍ଲେର ଆକାର ଏବଂ ଟେକ୍ସଟ ପସନ୍ଦଗୁଡ଼ିକ ଫୋନର ମୂଳ ସେଟିଂସରେ ରିସେଟ ହେବ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ଆପଣଙ୍କ ଡିସପ୍ଲେର ଆକାର ଏବଂ ଟେକ୍ସଟ ପସନ୍ଦଗୁଡ଼ିକ ଫୋନର ମୂଳ ସେଟିଂସରେ ରିସେଟ ହେବ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ଆପଣଙ୍କ ଡିସପ୍ଲେର ଆକାର ଏବଂ ଟେକ୍ସଟ ପସନ୍ଦଗୁଡ଼ିକ ଟାବଲେଟର ମୂଳ ସେଟିଂସରେ ରିସେଟ ହେବ"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ରିସେଟ କରନ୍ତୁ"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"ସପ୍ତାହାନ୍ତ ପାଇଁ କୌଣସି ପ୍ଲାନ ଅଛି?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ବେଳାଭୂମିକୁ ବୁଲିବା ପାଇଁ ଯାଉଛି। ଯୋଗ ଦେବାକୁ ଚାହୁଁଛନ୍ତି?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"ଗତଥର ସମ୍ପୂର୍ଣ୍ଣ ଚାର୍ଜ ହେବା ପରଠାରୁ ବ୍ୟବହାର କରାଯାଇନାହିଁ"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"ଗତ 24 ଘଣ୍ଟାରେ ବ୍ୟବହାର କରାଯାଇନାହିଁ"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"ଅନ୍ୟ ଉପଯୋଗକର୍ତ୍ତାମାନେ"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ଆପଣଙ୍କ ଡିଭାଇସ୍‌ର ବ୍ୟବହାରକୁ ନେଇ ବଳକା ଥିବା ବ୍ୟାଟେରୀର ଅନୁମାନ କରାଯାଇଥାଏ"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"ଆନୁମାନିକ ବଳକା ସମୟ"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"ପୂର୍ଣ୍ଣ ଚାର୍ଜ ହେବା ପାଇଁ"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"ସମ୍ପୂର୍ଣ୍ଣ hotword ଓ ଯୋଗାଯୋଗ"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"କଥା ରୁ ଲେଖା"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ଏହି ଭଏସ୍‌ ଇନପୁଟ୍‌ ସେବା ସର୍ବଦା-ଅନ୍‌ ଭଏସ୍‌ ନୀରିକ୍ଷଣ ସମ୍ପାଦନ କରିପାରିବ ଏବଂ ଆପଣଙ୍କ ତରଫରୁ ଭଏସ୍‌ ସକ୍ଷମ ହୋଇଥିବା ଆପ୍ଲିକେସନଗୁଡିକ ନିୟନ୍ତ୍ରଣ କରିପାରିବେ। ଏହା <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ଆପ୍ଲିକେସନରୁ ଆସିଥାଏ। ଏହି ସେବାର ବ୍ୟବହାର ସକ୍ଷମ କରିବେ?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"ଅନ-ଡିଭାଇସ ଚିହ୍ନଟକରଣ ସେଟିଂସ"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"ଅନ-ଡିଭାଇସ ଚିହ୍ନଟକରଣ"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"ଅନ-ଡିଭାଇସ ସ୍ପିଚ ଚିହ୍ନଟକରଣ"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"ନିଜ ପସନ୍ଦର ଇଞ୍ଜିନ୍"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ଇଞ୍ଜିନ ସେଟିଂସ"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"ସ୍ପୀଚ୍ ବେଗ ଓ ପିଚ୍‌"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ଡିଲିଟ୍‌ କରନ୍ତୁ"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"ଏହି ସେସନ୍‌ର ସମସ୍ତ ଆପ୍‌ ଏବଂ ଡାଟା ଡିଲିଟ୍‍ ହୋଇଯିବ।"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"କାଢିଦିଅନ୍ତୁ"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ଅତିଥି (ଆପଣ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ଉପଯୋଗକର୍ତ୍ତାମାନେ"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"ଅନ୍ୟ ଉପଯୋଗକର୍ତ୍ତାମାନେ"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"ଅତିଥି କାର୍ଯ୍ୟକଳାପକୁ ଡିଲିଟ କରନ୍ତୁ"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ଅତିଥି ମୋଡରୁ ବାହାରକୁ ଯିବା ସମୟରେ ସମସ୍ତ ଅତିଥି ଆପ୍ସ ଏବଂ ଡାଟା ଡିଲିଟ କରନ୍ତୁ"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"ଅତିଥି କାର୍ଯ୍ୟକଳାପକୁ ଡିଲିଟ କରିବେ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ବର୍ତ୍ତମାନ ଏହି ଅତିଥି ସେସନରୁ ଆପ୍ସ ଏବଂ ଡାଟା ଡିଲିଟ ହୋଇଯିବ ଏବଂ ଆପଣ ପ୍ରତ୍ୟେକ ଥର ଅତିଥି ମୋଡରୁ ବାହାରକୁ ଗଲେ ଭବିଷ୍ୟତର ସମସ୍ତ ଅତିଥି କାର୍ଯ୍ୟକଳାପ ଡିଲିଟ ହୋଇଯିବ"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ଫୋନ୍‌ କଲ୍‌ ଚାଲୁ କରନ୍ତୁ"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ଫୋନ୍‌ କଲ୍‌ ଓ SMS ଚାଲୁ କରନ୍ତୁ"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ଉପଯୋଗକର୍ତ୍ତାଙ୍କୁ ଡିଲିଟ୍‌ କରନ୍ତୁ"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"ସମସ୍ତ \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" ବିଜ୍ଞପ୍ତି"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"<xliff:g id="APP_NAME">%1$s</xliff:g> ବିଷୟରେ ସମସ୍ତ ବିଜ୍ଞପ୍ତି"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"ଆଡେପ୍ଟିଭ୍ ବିଜ୍ଞପ୍ତିଗୁଡ଼ିକ"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">ପ୍ରତି ବିଜ୍ଞପ୍ତି ~<xliff:g id="NUMBER_1">%,d</xliff:g>ଟି ବିଜ୍ଞପ୍ତି</item>
-      <item quantity="one">ପ୍ରତି ଦିନ ~<xliff:g id="NUMBER_0">%d</xliff:g>ଟି ବିଜ୍ଞପ୍ତି</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">ପ୍ରତି ଦିନ ପ୍ରାୟ <xliff:g id="NUMBER_1">%,d</xliff:g>ଟି ବିଜ୍ଞପ୍ତି</item>
+      <item quantity="one">ପ୍ରତି ଦିନ ପ୍ରାୟ <xliff:g id="NUMBER_0">%d</xliff:g>ଟି ବିଜ୍ଞପ୍ତି</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">ପ୍ରତି ସପ୍ତାହ~<xliff:g id="NUMBER_1">%,d</xliff:g>ଟି ବିଜ୍ଞପ୍ତି</item>
-      <item quantity="one">ପ୍ରତି ସପ୍ତାହ~<xliff:g id="NUMBER_0">%d</xliff:g>ଟି ବିଜ୍ଞପ୍ତି</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">ପ୍ରତି ସପ୍ତାହରେ ପ୍ରାୟ <xliff:g id="NUMBER_1">%,d</xliff:g>ଟି ବିଜ୍ଞପ୍ତି</item>
+      <item quantity="one">ପ୍ରତି ସପ୍ତାହରେ ପ୍ରାୟ <xliff:g id="NUMBER_0">%d</xliff:g>ଟି ବିଜ୍ଞପ୍ତି</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ଆଦୌ ନୁହେଁ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ଡିଭାଇସ୍ ଓ ଆପ୍ ବିଜ୍ଞପ୍ତି"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"କିଛି କରନ୍ତୁ ନାହିଁ"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"ଭାଇବ୍ରେଟ୍ କରନ୍ତୁ"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"ମ୍ୟୁଟ୍ କରନ୍ତୁ"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ସକ୍ଷମ କରିବାକୁ, ପାୱାର ମେନୁରେ ପ୍ରଥମେ \"ପାୱାର ବଟନକୁ ଦବାଇ ଧର\"କୁ ପରିବର୍ତ୍ତନ କରନ୍ତୁ।"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ସକ୍ଷମ କରିବା ପାଇଁ, ପାୱାର ମେନୁରେ ପ୍ରଥମେ \"ପାୱାର ବଟନକୁ ଦବାଇ ଧରି ରଖନ୍ତୁ\"କୁ ପରିବର୍ତ୍ତନ କରନ୍ତୁ।"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ନେଟୱାର୍କ୍‌ ବିବରଣୀ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"ଆପଣଙ୍କ ଫୋନରେ ଥିବା ଆପଗୁଡ଼ିକୁ ଆପଣଙ୍କ ଡିଭାଇସ୍ ନାମ ଦୃଶ୍ୟମାନ ହୋଇଥାଏ। ଯେତେବେଳେ ଆପଣ ବ୍ଲୁଟୁଥ୍ ଡିଭାଇସଗୁଡ଼ିକ ସହ ସଂଯୋଗ କରନ୍ତି, ଏକ ୱାଇ-ଫାଇ ନେଟୱାର୍କ ସହ ସଂଯୋଗ କରନ୍ତି କିମ୍ବା ଏକ ୱାଇ-ଫାଇ ହଟସ୍ପଟ୍ ସେଟ୍ ଅପ୍ କରନ୍ତି, ସେତେବେଳେ ଏହା ଅନ୍ୟ ଲୋକମାନଙ୍କୁ ମଧ୍ୟ ଦେଖାଯାଇପାରେ।"</string>
     <string name="devices_title" msgid="649715719278562515">"ଡିଭାଇସ୍‌"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ଡିଭାଇସ୍ ନିୟନ୍ତ୍ରଣଗୁଡ଼ିକ"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"କାର୍ଡ ଓ ପାସଗୁଡ଼ିକ"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"କାର୍ଡ ଓ ପାସଗୁଡ଼ିକ"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"ପାୱାର ବଟନକୁ ଦବାଇ ଧରି ରଖନ୍ତୁ"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant ପାଇଁ ଦବାଇ ଧରି ରଖନ୍ତୁ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"ପାୱାର ମେନୁ ପାଇଁ ଦବାଇ ଧରି ରଖନ୍ତୁ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"\"ଦବାଇ ଧରି ରଖିବା\"କୁ ଅକ୍ଷମ କରାଯାଇଛି"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"ପାୱାର ବଟନକୁ ଦବାଇ ଧରି ରଖନ୍ତୁ"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ଆକ୍ସେସ କରିବା ପାଇଁ ପାୱାର ବଟନକୁ ଦବାଇ ଧରି ରଖନ୍ତୁ"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"ପାୱାର ମେନୁ"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ଡିଜିଟାଲ ଆସିଷ୍ଟାଣ୍ଟ"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ଡିଜିଟାଲ ଆସିଷ୍ଟାଣ୍ଟକୁ ଆକ୍ସେସ କରନ୍ତୁ"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"ପାୱାର ମେନୁକୁ ଆକ୍ସେସ କରନ୍ତୁ"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ବ୍ୟବହାର କରିବାକୁ, ପ୍ରଥମେ ଏକ ସ୍କ୍ରିନ୍ ଲକ୍ ସେଟ୍ କରନ୍ତୁ"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant ପାଇଁ ଧରି ରଖନ୍ତୁ"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"ପାୱାର ବଟନକୁ ଧରି ରଖି Assistantକୁ ଟ୍ରିଗର୍ କରନ୍ତୁ"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"ପାୱାର ଏବଂ ଜରୁରୀକାଳୀନ ମେନୁ:\nସମାନ ସମୟରେ \"ପାୱାର\" ଏବଂ \"ଭଲ୍ୟୁମ୍ ବଢ଼ାନ୍ତୁ\"କୁ ଦବାନ୍ତୁ।"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"ରିଙ୍ଗ ହେବାକୁ ପ୍ରତିରୋଧ କରନ୍ତୁ:\nଭଲ୍ୟୁମ୍ ମେନୁରେ ସର୍ଟକଟ୍ ଉପଲବ୍ଧ ଅଛି।"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"ପାୱାର ମେନୁ:\nପାୱାର ବଟନ ଏବଂ ଭଲ୍ୟୁମ ଅପ ବଟନକୁ ସମାନ ସମୟରେ ଦବାନ୍ତୁ"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"ରିଂ ହେବା ବନ୍ଦ କରନ୍ତୁ:\nସର୍ଟକଟ ପାଇଁ ଏକ ଭଲ୍ୟୁମ ବଟନ ଦବାନ୍ତୁ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"ଦବାଇ ଧରି ରଖିବାର ଅବଧି"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"ପାୱାର ବଟନକୁ କେତେ ସମୟ ଦବାଇ ଧରି ରଖିବେ, ତାହା ବାଛି ସମ୍ବେଦନଶୀଳତାକୁ ଆଡଜଷ୍ଟ କରନ୍ତୁ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"କମ୍ ସମୟ"</string>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index 7928e3a..93f308c 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"ਜਦੋਂ ਉਹ Pixel Imprint ਵਰਤਦਾ ਹੈ, ਤਾਂ ਉਸਦੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੇ ਮਾਡਲ ਨੂੰ ਅੱਪਡੇਟ ਕਰਨ ਲਈ ਚਿੱਤਰ ਵਰਤੇ ਜਾਂਦੇ ਹਨ। ਤੁਹਾਡੇ ਬੱਚੇ ਦੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦਾ ਮਾਡਲ ਬਣਾਉਣ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਚਿੱਤਰ ਕਦੇ ਵੀ ਸਟੋਰ ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ, ਪਰ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੇ ਮਾਡਲ ਨੂੰ ਉਹਨਾਂ ਦੇ ਫ਼ੋਨ \'ਤੇ ਸੁਰੱਖਿਅਤ ਤਰੀਕੇ ਨਾਲ ਸਟੋਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਹ ਕਦੇ ਵੀ ਫ਼ੋਨ ਤੋਂ ਬਾਹਰ ਨਹੀਂ ਜਾਂਦਾ। ਸਾਰੀ ਪ੍ਰਕਿਰਿਆ ਫ਼ੋਨ \'ਤੇ ਸੁਰੱਖਿਅਤ ਤਰੀਕੇ ਨਾਲ ਵਾਪਰਦੀ ਹੈ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"ਤੁਸੀਂ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਕਿਸੇ ਵੇਲੇ ਵੀ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੇ ਚਿੱਤਰਾਂ ਅਤੇ ਮਾਡਲ ਨੂੰ ਮਿਟਾ ਸਕਦੇ ਹੋ ਜਾਂ ਫਿੰਗਰਪ੍ਰਿੰਟ ਅਣਲਾਕ ਨੂੰ ਬੰਦ ਕਰ ਸਕਦੇ ਹੋ। ਫਿੰਗਰਪ੍ਰਿੰਟ ਚਿੱਤਰ ਅਤੇ ਮਾਡਲ ਫ਼ੋਨ \'ਤੇ ਉਦੋਂ ਤੱਕ ਸਟੋਰ ਰਹਿੰਦੇ ਹਨ ਜਦੋਂ ਤੱਕ ਤੁਸੀਂ ਉਨ੍ਹਾਂ ਨੂੰ ਮਿਟਾਉਂਦੇ ਨਹੀਂ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"ਤੁਸੀਂ ਅਤੇ ਤੁਹਾਡਾ ਬੱਚਾ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਕਿਸੇ ਵੇਲੇ ਵੀ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੇ ਚਿੱਤਰਾਂ ਅਤੇ ਮਾਡਲ ਨੂੰ ਮਿਟਾ ਸਕਦੇ ਹਨ ਜਾਂ ਫਿੰਗਰਪ੍ਰਿੰਟ ਅਣਲਾਕ ਨੂੰ ਬੰਦ ਕਰ ਸਕਦੇ ਹਨ। ਫਿੰਗਰਪ੍ਰਿੰਟ ਚਿੱਤਰ ਅਤੇ ਮਾਡਲ ਫ਼ੋਨ \'ਤੇ ਉਦੋਂ ਤੱਕ ਸਟੋਰ ਰਹਿੰਦੇ ਹਨ ਜਦੋਂ ਤੱਕ ਉਨ੍ਹਾਂ ਨੂੰ ਮਿਟਾਇਆ ਨਹੀਂ ਜਾਂਦਾ।"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"ਤੁਹਾਡੇ ਨਾ ਚਾਹੁੰਦੇ ਹੋਏ ਵੀ ਕਈ ਵਾਰ ਤੁਹਾਡਾ ਫ਼ੋਨ ਅਣਲਾਕ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ, ਜੇ ਕੋਈ ਵਿਅਕਤੀ ਤੁਹਾਡੇ ਫ਼ੋਨ ਨੂੰ ਤੁਹਾਡੀ ਉਂਗਲ ਕੋਲ ਲਿਜਾ ਕੇ ਸਪਰਸ਼ ਕਰਵਾ ਦੇਵੇ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"ਤੁਹਾਡੇ ਨਾ ਚਾਹੁੰਦੇ ਹੋਏ ਵੀ ਕਈ ਵਾਰ ਤੁਹਾਡਾ ਫ਼ੋਨ ਅਣਲਾਕ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ, ਜੇ ਕੋਈ ਵਿਅਕਤੀ ਤੁਹਾਡੇ ਫ਼ੋਨ ਨੂੰ ਤੁਹਾਡੀ ਉਂਗਲ ਕੋਲ ਲਿਜਾ ਕੇ ਸਪਰਸ਼ ਕਰਵਾ ਦੇਵੇ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"ਤੁਹਾਡੇ ਨਾ ਚਾਹੁੰਦੇ ਹੋਏ ਵੀ ਕਈ ਵਾਰ ਤੁਹਾਡਾ ਫ਼ੋਨ ਅਣਲਾਕ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ, ਜੇ ਕੋਈ ਵਿਅਕਤੀ ਤੁਹਾਡੇ ਟੈਬਲੈੱਟ ਨੂੰ ਤੁਹਾਡੀ ਉਂਗਲ ਕੋਲ ਲਿਜਾ ਕੇ ਸਪਰਸ਼ ਕਰਵਾ ਦੇਵੇ।"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"ਤੁਹਾਡੇ ਨਾ ਚਾਹੁੰਦੇ ਹੋਏ ਵੀ ਕਈ ਵਾਰ ਤੁਹਾਡਾ ਫ਼ੋਨ ਅਣਲਾਕ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ, ਜੇ ਕੋਈ ਵਿਅਕਤੀ ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਨੂੰ ਤੁਹਾਡੀ ਉਂਗਲ ਕੋਲ ਲਿਜਾ ਕੇ ਸਪਰਸ਼ ਕਰਵਾ ਦੇਵੇ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"ਜੇ ਕੋਈ ਵਿਅਕਤੀ ਤੁਹਾਡੇ ਬੱਚੇ ਦੇ ਫ਼ੋਨ ਨੂੰ ਉਸਦੀ ਉਂਗਲ ਕੋਲ ਲਿਜਾ ਕੇ ਸਪਰਸ਼ ਕਰਵਾ ਦੇਵੇ, ਤਾਂ ਨਾ ਚਾਹੁੰਦੇ ਹੋਏ ਵੀ ਇਹ ਅਣਲਾਕ ਹੋ ਸਕਦਾ ਹੈ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ਬਿਹਤਰੀਨ ਨਤੀਜਿਆਂ ਲਈ, Made for Google ਵੱਲੋਂ ਪ੍ਰਮਾਣਿਤ ਸਕ੍ਰੀਨ ਰੱਖਿਅਕ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਹੋਰ ਸਕ੍ਰੀਨ ਰੱਖਿਅਕਾਂ ਨਾਲ, ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਡਾ ਫਿੰਗਰਪ੍ਰਿੰਟ ਕੰਮ ਨਾ ਕਰੇ।"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ਬਿਹਤਰੀਨ ਨਤੀਜਿਆਂ ਲਈ, Made for Google ਵੱਲੋਂ ਪ੍ਰਮਾਣਿਤ ਸਕ੍ਰੀਨ ਰੱਖਿਅਕ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਹੋਰ ਸਕ੍ਰੀਨ ਰੱਖਿਅਕਾਂ ਨਾਲ, ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਡੇ ਬੱਚੇ ਦਾ ਫਿੰਗਰਪ੍ਰਿੰਟ ਕੰਮ ਨਾ ਕਰੇ।"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ਡੀਵਾਈਸ ਵਾਲੀ ਤਸਵੀਰ ਅਤੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਸੈਂਸਰ ਟਿਕਾਣਾ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"ਨਾਮ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ਠੀਕ ਹੈ"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"ਮਿਟਾਓ"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"ਸੈਂਸਰ ਨੂੰ ਸਪਰਸ਼ ਕਰੋ"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"ਆਪਣੀ ਉਂਗਲ ਨੂੰ ਸੈਂਸਰ ’ਤੇ ਰੱਖੋ ਅਤੇ ਇੱਕ ਥਰਥਰਾਹਟ ਮਹਿਸੂਸ ਹੋਣ ਤੋਂ ਬਾਅਦ ਚੁੱਕ ਲਵੋ"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"ਹੋ ਗਿਆ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"ਓਹੋ, ਉਹ ਸੈਂਸਰ ਨਹੀਂ ਹੈ"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"ਫ਼ੋਨ ਦੇ ਪਿਛਲੇ ਪਾਸੇ ਸੈਂਸਰ ਨੂੰ ਸਪਰਸ਼ ਕਰੋ। ਪਹਿਲੀ ਉਂਗਲ ਵਰਤੋ।"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ਦਰਜਾਬੰਦੀ ਪੂਰੀ ਨਹੀਂ ਹੋਈ"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਦਰਜ ਕਰਨ ਦੀ ਸਮਾਂ ਸੀਮਾ ਪੂਰੀ ਹੋ ਗਈ। ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਦਾ ਸੈੱਟਅੱਪ ਕਰਨ ਲਈ ਸਮਾਂ ਸਮਾਪਤ ਹੋਇਆ"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ਹੁਣੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜਾਂ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਜਾ ਕੇ ਬਾਅਦ ਵਿੱਚ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦਾ ਸੈੱਟਅੱਪ ਕਰੋ"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਦਰਜ ਨਹੀਂ ਹੋਇਆ। ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜਾਂ ਕੋਈ ਵੱਖਰੀ ਉਂਗਲ ਵਰਤੋ।"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"ਇੱਕ ਹੋਰ ਸ਼ਾਮਲ ਕਰੋ"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"ਅੱਗੇ"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"ਆਪਣੇ ਫ਼ੋਨ ਨੂੰ ਵਿਉਂਤਬੱਧ ਕਰੋ"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"ਵੱਖ-ਵੱਖ ਸਟਾਈਲ, ਵਾਲਪੇਪਰ ਵਰਤ ਕੇ ਦੇਖੋ ਅਤੇ ਹੋਰ ਬਹੁਤ ਕੁਝ"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"ਸਕ੍ਰੀਨ ਸੇਵਰ"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ਸਕ੍ਰੀਨ-ਸੇਵਰ"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"ਸਕ੍ਰੀਨ ਸੇਵਰ ਵਰਤੋ"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ਚਾਰਜ ਕਰਨ ਵੇਲੇ ਜਾਂ ਡੌਕ ਕੀਤੇ ਹੋਣ ਦੌਰਾਨ"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"ਦੋਵਾਂ ਵਿੱਚੋਂ ਇੱਕ"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ਚਾਰਜ ਕਰਨ ਵੇਲੇ"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ਜਦੋਂ ਡੌਕ ਕੀਤਾ ਹੋਵੇ"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ਕਦੇ ਵੀ ਨਹੀਂ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ਬੰਦ"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ਇਹ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਕਿ ਜਦੋਂ ਫ਼ੋਨ ਡੌਕ ਕੀਤਾ ਅਤੇ/ਜਾਂ ਸਲੀਪ ਮੋਡ ਵਿੱਚ ਹੁੰਦਾ ਹੈ ਉਦੋਂ ਕੀ ਹੁੰਦਾ ਹੈ, ਸਕ੍ਰੀਨ ਸੇਵਰ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"ਕਦੋਂ ਸ਼ੁਰੂ ਕਰਨਾ ਹੈ"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"ਮੌਜੂਦਾ ਸਕ੍ਰੀਨ ਸੇਵਰ"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ਸੈਟਿੰਗਾਂ"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ਸਵੈਚਲਿਤ ਚਮਕ"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"ਕਿਰਿਆਸ਼ੀਲ ਕਰਨ ਲਈ ਚੁੱਕੋ"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ਸਰਗਰਮ ਡਿਸਪਲੇ"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ਪਿੰਨ ਸੈੱਟ ਕਰੋ"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ਕੰਮ ਸੰਬੰਧੀ ਪਿੰਨ ਸੈੱਟ ਕਰੋ"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ਪੈਟਰਨ ਸੈੱਟ ਕਰੋ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ਵਾਧੂ ਸੁਰੱਖਿਆ ਲਈ, ਡੀਵਾਈਸ ਨੂੰ ਅਣਲਾਕ ਕਰਨ ਵਾਸਤੇ ਪੈਟਰਨ ਸੈੱਟ ਕਰੋ"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ਕੰਮ ਸੰਬੰਧੀ ਪੈਟਰਨ ਸੈੱਟ ਕਰੋ"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਵਰਤਣ ਲਈ ਪਾਸਵਰਡ ਸੈੱਟ ਕਰੋ"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਵਰਤਣ ਲਈ ਪੈਟਰਨ ਸੈੱਟ ਕਰੋ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"ਆਪਾਤਕਾਲ ਐਪ"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ਐਪ ਤਰਜੀਹਾਂ ਰੀਸੈੱਟ ਕਰੋ"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"ਕੀ ਐਪ ਤਰਜੀਹਾਂ ਰੀਸੈੱਟ ਕਰਨੀਆਂ ਹਨ?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ਇਹ ਹੇਠਲੀਆਂ ਸਾਰੀਆਂ ਤਰਜੀਹਾਂ ਨੂੰ ਰੀਸੈੱਟ ਕਰ ਦੇਵੇਗਾ:\n\n"<li>" ਬੰਦ ਕੀਤੀਆਂ ਐਪਾਂ"</li>\n<li>"ਬੰਦ ਕੀਤੀਆਂ ਐਪ ਸੂਚਨਾਵਾਂ"</li>\n<li>"ਕਾਰਵਾਈਆਂ ਲਈ ਪੂਰਵ-ਨਿਰਧਾਰਿਤ ਐਪਲੀਕੇਸ਼ਨਾਂ"</li>\n<li>" ਐਪਾਂ ਲਈ ਬੈਕਗ੍ਰਾਊਂਡ ਡਾਟੇ ਸੰਬੰਧੀ ਪਾਬੰਦੀਆਂ"</li>\n<li>"ਕੋਈ ਵੀ ਇਜਾਜ਼ਤ ਸੰਬੰਧੀ ਪਾਬੰਦੀ"</li>\n\n"ਤੁਸੀਂ ਕੋਈ ਵੀ ਐਪ ਡਾਟਾ ਨਹੀਂ ਗੁਆਓਗੇ।"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ਇਹ ਹੇਠਲੀਆਂ ਸਾਰੀਆਂ ਤਰਜੀਹਾਂ ਨੂੰ ਰੀਸੈੱਟ ਕਰ ਦੇਵੇਗਾ:\n\n"<li>"ਬੰਦ ਕੀਤੀਆਂ ਐਪਾਂ"</li>\n<li>"ਬੰਦ ਕੀਤੀਆਂ ਐਪ ਸੂਚਨਾਵਾਂ"</li>\n<li>"ਕਾਰਵਾਈਆਂ ਲਈ ਪੂਰਵ-ਨਿਰਧਾਰਿਤ ਐਪਲੀਕੇਸ਼ਨਾਂ"</li>\n<li>"ਐਪਾਂ ਲਈ ਬੈਕਗ੍ਰਾਊਂਡ ਡਾਟੇ ਸੰਬੰਧੀ ਪਾਬੰਦੀਆਂ"</li>\n<li>"ਕੋਈ ਵੀ ਇਜਾਜ਼ਤ ਸੰਬੰਧੀ ਪਾਬੰਦੀਆਂ"</li>\n<li>"ਬੈਟਰੀ ਵਰਤੋਂ ਸੰਬੰਧੀ ਸੈਟਿੰਗਾਂ"</li>\n\n"ਤੁਸੀਂ ਕੋਈ ਵੀ ਐਪ ਡਾਟਾ ਨਹੀਂ ਗੁਆਓਗੇ।"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ਐਪਾਂ ਰੀਸੈੱਟ ਕਰੋ"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ਜਗ੍ਹਾ ਵਿਵਸਥਿਤ ਕਰੋ"</string>
     <string name="filter" msgid="9039576690686251462">"ਫਿਲਟਰ"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ਸੈਟਿੰਗਾਂ ਰੀਸੈੱਟ ਕਰੋ"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ਡਿਸਪਲੇ ਦੇ ਅਕਾਰ ਅਤੇ ਲਿਖਤ ਸੈਟਿੰਗਾਂ ਨੂੰ ਰੀਸੈੱਟ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ਕੀ ਡਿਸਪਲੇ ਦੇ ਆਕਾਰ ਅਤੇ ਲਿਖਤ ਨੂੰ ਰੀਸੈੱਟ ਕਰਨਾ ਹੈ?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ਤੁਹਾਡੀ ਡਿਸਪਲੇ ਦਾ ਆਕਾਰ ਅਤੇ ਲਿਖਤ ਸੰਬੰਧੀ ਤਰਜੀਹਾਂ ਫ਼ੋਨ ਦੀਆਂ ਮੂਲ ਸੈਟਿੰਗਾਂ \'ਤੇ ਰੀਸੈੱਟ ਹੋ ਜਾਣਗੀਆਂ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ਤੁਹਾਡੀ ਡਿਸਪਲੇ ਦਾ ਆਕਾਰ ਅਤੇ ਲਿਖਤ ਸੰਬੰਧੀ ਤਰਜੀਹਾਂ ਫ਼ੋਨ ਦੀਆਂ ਮੂਲ ਸੈਟਿੰਗਾਂ \'ਤੇ ਰੀਸੈੱਟ ਹੋ ਜਾਣਗੀਆਂ"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ਤੁਹਾਡੀ ਡਿਸਪਲੇ ਦੇ ਆਕਾਰ ਅਤੇ ਲਿਖਤ ਸੰਬੰਧੀ ਤਰਜੀਹਾਂ ਟੈਬਲੈੱਟ ਦੀਆਂ ਮੂਲ ਸੈਟਿੰਗਾਂ \'ਤੇ ਰੀਸੈੱਟ ਹੋ ਜਾਣਗੀਆਂ"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ਰੀਸੈੱਟ ਕਰੋ"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"ਕੀ ਵੀਕੈਂਡ ਲਈ ਕੋਈ ਪਲਾਨ ਹੈ?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ਬੀਚ \'ਤੇ ਜਾ ਰਹੇ ਹਾਂ। ਨਾਲ ਆਓਗੇ?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"ਪਿਛਲੀ ਵਾਰ ਪੂਰਾ ਚਾਰਜ ਕਰਨ ਤੋਂ ਬਾਅਦ ਕੋਈ ਵਰਤੋਂ ਨਹੀਂ"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"ਪਿਛਲੇ 24 ਘੰਟਿਆਂ ਦੌਰਾਨ ਕੋਈ ਵਰਤੋਂ ਨਹੀਂ"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"ਹੋਰ ਵਰਤੋਂਕਾਰ"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ਬਾਕੀ ਬਚੀ ਬੈਟਰੀ ਦਾ ਅਨੁਮਾਨ ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਦੀ ਵਰਤੋਂ \'ਤੇ ਆਧਾਰਿਤ ਹੈ"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"ਅਨੁਮਾਨਿਤ ਬਾਕੀ ਸਮਾਂ"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"ਪੂਰਾ ਚਾਰਜ ਹੋਣ ਲਈ"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"ਪੂਰਾ ਹੌਟਵਰਡ ਅਤੇ ਇੰਟਰੈਕਸ਼ਨ"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"ਸਧਾਰਨ ਬੋਲੀ ਤੋਂ ਲਿਖਤ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ਇਹ ਵੌਇਸ ਇਨਪੁੱਟ ਸੇਵਾ ਹਮੇਸ਼ਾਂ-ਚਾਲੂ ਵੌਇਸ ਨਿਰੀਖਣ ਪਰਫੌਰਮ ਕਰਨ ਵਿੱਚ ਅਤੇ ਤੁਹਾਡੇ ਵੱਲੋਂ ਵੌਇਸ ਸਮਰਥਿਤ ਐਪਲੀਕੇਸ਼ਨਾਂ ਤੇ ਨਿਯੰਤਰਣ ਪਾਉਣ ਵਿੱਚ ਸਮਰੱਥ ਹੋਵੇਗੀ। ਇਹ <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>ਐਪਲੀਕੇਸ਼ਨ ਤੋਂ ਆਉਂਦੀ ਹੈ। ਕੀ ਇਸ ਸੇਵਾ ਦੀ ਵਰਤੋਂ ਨੂੰ ਚਾਲੂ ਕਰਨਾ ਹੈ?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"ਡੀਵਾਈਸ \'ਤੇ ਪਛਾਣ ਸੈਟਿੰਗਾਂ"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"ਡੀਵਾਈਸ \'ਤੇ ਪਛਾਣ"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"ਡੀਵਾਈਸ \'ਤੇ ਬੋਲੀ ਪਛਾਣ"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"ਤਰਜੀਹੀ ਇੰਜਣ"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ਇੰਜਣ ਦੀਆਂ ਸੈਟਿੰਗਾਂ"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"ਬੋਲਣ ਦੀ ਗਤੀ ਅਤੇ ਸੁਰ"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ਮਿਟਾਓ"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"ਇਸ ਸੈਸ਼ਨ ਵਿਚਲੀਆਂ ਸਾਰੀਆਂ ਐਪਾਂ ਅਤੇ ਡਾਟਾ ਨੂੰ ਮਿਟਾ ਦਿੱਤਾ ਜਾਏਗਾ।"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"ਹਟਾਓ"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ਮਹਿਮਾਨ (ਤੁਸੀਂ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ਵਰਤੋਂਕਾਰ"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"ਹੋਰ ਵਰਤੋਂਕਾਰ"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"ਮਹਿਮਾਨ ਦੀ ਸਰਗਰਮੀ ਮਿਟਾਓ"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ਮਹਿਮਾਨ ਮੋਡ ਤੋਂ ਬਾਹਰ ਜਾਣ \'ਤੇ ਮਹਿਮਾਨ ਦੀਆਂ ਸਾਰੀਆਂ ਐਪਾਂ ਅਤੇ ਡਾਟੇ ਨੂੰ ਮਿਟਾਓ"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"ਕੀ ਮਹਿਮਾਨ ਦੀ ਸਰਗਰਮੀ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ਇਸ ਮਹਿਮਾਨ ਸੈਸ਼ਨ ਦੀਆਂ ਐਪਾਂ ਅਤੇ ਡਾਟੇ ਨੂੰ ਹੁਣੇ ਮਿਟਾਇਆ ਜਾਵੇਗਾ ਅਤੇ ਮਹਿਮਾਨ ਦੀ ਸਾਰੀ ਭਵਿੱਖੀ ਸਰਗਰਮੀ ਨੂੰ ਤੁਹਾਡੇ ਮਹਿਮਾਨ ਮੋਡ ਤੋਂ ਬਾਹਰ ਜਾਣ \'ਤੇ ਹਰ ਵਾਰ ਮਿਟਾਇਆ ਜਾਵੇਗਾ"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ਫ਼ੋਨ ਕਾਲਾਂ ਚਾਲੂ ਕਰੋ"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ਫ਼ੋਨ ਕਾਲਾਂ ਅਤੇ SMS ਚਾਲੂ ਕਰੋ"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ਵਰਤੋਂਕਾਰ ਨੂੰ ਮਿਟਾਓ"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"ਸਾਰੀਆਂ \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" ਸੂਚਨਾਵਾਂ"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"ਸਾਰੀਆਂ <xliff:g id="APP_NAME">%1$s</xliff:g> ਸੂਚਨਾਵਾਂ"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"ਅਡੈਪਟਿਵ ਸੂਚਨਾਵਾਂ"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">ਹਰ ਰੋਜ਼ ~<xliff:g id="NUMBER_1">%,d</xliff:g> ਸੂਚਨਾ</item>
-      <item quantity="other">ਹਰ ਰੋਜ਼ ~<xliff:g id="NUMBER_1">%,d</xliff:g> ਸੂਚਨਾਵਾਂ</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">ਪ੍ਰਤੀ ਦਿਨ ਲਗਭਗ <xliff:g id="NUMBER_1">%,d</xliff:g> ਸੂਚਨਾ</item>
+      <item quantity="other">ਪ੍ਰਤੀ ਦਿਨ ਲਗਭਗ <xliff:g id="NUMBER_1">%,d</xliff:g> ਸੂਚਨਾਵਾਂ</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~ਹਰ ਹਫ਼ਤੇ <xliff:g id="NUMBER_1">%,d</xliff:g> ਸੂਚਨਾ</item>
-      <item quantity="other">~ਹਰ ਹਫ਼ਤੇ <xliff:g id="NUMBER_1">%,d</xliff:g> ਸੂਚਨਾਵਾਂ</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">ਪ੍ਰਤੀ ਹਫ਼ਤੇ ਲਗਭਗ <xliff:g id="NUMBER_1">%,d</xliff:g> ਸੂਚਨਾ</item>
+      <item quantity="other">ਪ੍ਰਤੀ ਹਫ਼ਤੇ ਲਗਭਗ <xliff:g id="NUMBER_1">%,d</xliff:g> ਸੂਚਨਾਵਾਂ</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ਕਦੇ ਵੀ ਨਹੀਂ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"ਡੀਵਾਈਸ ਅਤੇ ਐਪ ਸੂਚਨਾਵਾਂ"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"ਕੁਝ ਨਾ ਕਰੋ"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"ਥਰਥਰਾਹਟ ਕਰੋ"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"ਮਿਊਟ ਕਰੋ"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ਚਾਲੂ ਕਰਨ ਲਈ, ਪਹਿਲਾਂ ਪਾਵਰ ਮੀਨੂ ਲਈ \"ਪਾਵਰ ਬਟਨ ਨੂੰ ਦਬਾਈ ਰੱਖੋ\" ਵਿਕਲਪ ਨੂੰ ਬਦਲੋ।"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ਚਾਲੂ ਕਰਨ ਲਈ, ਪਹਿਲਾਂ ਪਾਵਰ ਮੀਨੂ ਲਈ \"ਪਾਵਰ ਬਟਨ ਨੂੰ ਦਬਾਈ ਰੱਖੋ\" ਵਿਕਲਪ ਨੂੰ ਬਦਲੋ।"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ਨੈੱਟਵਰਕ ਵੇਰਵੇ"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਦਾ ਨਾਮ ਤੁਹਾਡੇ ਫ਼ੋਨ \'ਤੇ ਐਪਾਂ ਨੂੰ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ। ਇਸਨੂੰ ਤੁਹਾਡੇ ਬਲੂਟੁੱਥ ਡੀਵਾਈਸ ਨਾਲ ਕਨੈਕਟ ਕਰਨ, ਵਾਈ-ਫਾਈ ਨੈੱਟਵਰਕ ਨਾਲ ਕਨੈਕਟ ਕਰਨ ਜਾਂ ਵਾਈ-ਫਾਈ ਹੌਟਸਪੌਟ ਸੈੱਟਅੱਪ ਕਰਨ \'ਤੇ ਹੋਰ ਲੋਕਾਂ ਵੱਲੋਂ ਵੀ ਦੇਖਿਆ ਜਾ ਸਕਦਾ ਹੈ।"</string>
     <string name="devices_title" msgid="649715719278562515">"ਡੀਵਾਈਸਾਂ"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ਡੀਵਾਈਸ ਕੰਟਰੋਲ"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"ਕਾਰਡ ਅਤੇ ਪਾਸ"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"ਕਾਰਡ ਅਤੇ ਪਾਸ"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"ਪਾਵਰ ਬਟਨ ਨੂੰ ਦਬਾਈ ਰੱਖੋ"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant ਲਈ ਦਬਾਈ ਰੱਖੋ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"ਪਾਵਰ ਮੀਨੂ ਲਈ ਦਬਾਈ ਰੱਖੋ"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"ਦਬਾਈ ਰੱਖਣ ਦੀ ਸੁਵਿਧਾ ਬੰਦ ਹੈ"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"ਪਾਵਰ ਬਟਨ ਨੂੰ ਦਬਾ ਕੇ ਰੱਖੋ"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ਪਹੁੰਚ ਲਈ ਪਾਵਰ ਬਟਨ ਨੂੰ ਦਬਾ ਕੇ ਰੱਖੋ"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"ਪਾਵਰ ਮੀਨੂ"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ਡਿਜੀਟਲ ਸਹਾਇਕ"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ਡਿਜੀਟਲ ਸਹਾਇਕ ਤੱਕ ਪਹੁੰਚ ਕਰੋ"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"ਪਾਵਰ ਮੀਨੂ ਤੱਕ ਪਹੁੰਚ ਕਰੋ"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ਵਰਤਣ ਲਈ, ਪਹਿਲਾਂ ਸਕ੍ਰੀਨ ਲਾਕ ਸੈੱਟ ਕਰੋ"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant ਲਈ ਪਾਵਰ ਬਟਨ ਨੂੰ ਕੁਝ ਸਮਾਂ ਦਬਾਈ ਰੱਖੋ"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"ਪਾਵਰ ਬਟਨ ਨੂੰ ਕੁਝ ਸਮਾਂ ਦਬਾਈ ਰੱਖ ਕੇ Assistant ਨੂੰ ਟ੍ਰਿਗਰ ਕਰੋ"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"ਪਾਵਰ ਅਤੇ ਐਮਰਜੈਂਸੀ ਮੀਨੂ:\nਪਾਵਰ ਬਟਨ ਅਤੇ \'ਅਵਾਜ਼ ਵਧਾਓ\' ਬਟਨ ਨੂੰ ਇੱਕੋ ਸਮੇਂ ਦਬਾਓ।"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"ਘੰਟੀ ਵੱਜਣ ਤੋਂ ਰੋਕੋ:\nਸ਼ਾਰਟਕੱਟ ਅਵਾਜ਼ ਮੀਨੂ ਵਿੱਚ ਉਪਲਬਧ ਹੈ।"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"ਪਾਵਰ ਮੀਨੂ:\nਪਾਵਰ ਬਟਨ ਅਤੇ \'ਅਵਾਜ਼ ਵਧਾਓ\' ਬਟਨ ਨੂੰ ਇੱਕੋ ਸਮੇਂ ਦਬਾ ਕੇ ਰੱਖੋ"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"ਘੰਟੀ ਵੱਜਣ ਤੋਂ ਰੋਕੋ:\nਸ਼ਾਰਟਕੱਟ ਲਈ ਅਵਾਜ਼ ਬਟਨ ਦਬਾਓ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"ਦਬਾਈ ਰੱਖਣ ਦੀ ਮਿਆਦ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"ਪਾਵਰ ਬਟਨ ਨੂੰ ਦਬਾਈ ਰੱਖਣ ਦੀ ਮਿਆਦ ਦੀ ਚੋਣ ਕਰਕੇ ਸੰਵੇਦਨਸ਼ੀਲਤਾ ਨੂੰ ਵਿਵਸਥਿਤ ਕਰੋ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"ਛੋਟਾ"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 9f231e0..69cb349 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Obrazy tworzone, gdy dziecko korzysta z funkcji Pixel Imprint, służą do aktualizowania modelu odcisku jego palca. Obrazy użyte do utworzenia modelu odcisku palca nigdy nie są zapisywane, a sam model jest bezpiecznie przechowywany na telefonie i nigdy go nie opuszcza. Przetwarzanie danych odbywa się w całości na telefonie w bezpieczny sposób."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"W dowolnej chwili możesz usunąć obrazy oraz model odcisku palca i wyłączyć funkcję odblokowywania odciskiem palca w Ustawieniach. Obrazy i modele odcisku palca będą przechowywane na telefonie, dopóki ich nie usuniesz."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Ty i Twoje dziecko w dowolnej chwili możecie usunąć obrazy oraz model odcisku palca i wyłączyć odblokowywanie odciskiem palca w Ustawieniach. Obrazy i modele odcisku palca są przechowywane na telefonie, dopóki nie zostaną usunięte."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefon może się niechcący odblokować, jeżeli inna osoba przyłoży do niego Twój palec."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefon może się niechcący odblokować, jeżeli inna osoba przyłoży do niego Twój palec."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tablet może się odblokować wbrew Twojej woli, jeżeli inna osoba przyłoży do niego Twój palec."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Urządzenie może się odblokować wbrew Twojej woli, jeżeli inna osoba przyłoży do niego Twój palec."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefon dziecka może zostać odblokowany, jeżeli inna osoba go do palca dziecka."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Najlepsze efekty daje osłona ekranu z oznaczeniem „Made for Google”. W przypadku innych osłon ekranu Twój odcisk palca może nie zadziałać."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Najlepsze efekty daje osłona ekranu z oznaczeniem „Made for Google”. W przypadku innych osłon ekranu odcisk palca Twojego dziecka może nie zadziałać."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustracja pokazująca urządzenie i umiejscowienie czytnika linii papilarnych"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nazwa"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Spróbuj ponownie"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Usuń"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Dotknij czytnika"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Przyłóż palec do czytnika. Podnieś go, gdy poczujesz wibracje."</string>
@@ -599,8 +602,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Gotowe"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ups, to nie jest czytnik"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Dotknij czytnika z tyłu telefonu. Użyj palca wskazującego."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Nie ukończono rejestracji"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Osiągnięto limit czasu rejestracji odcisku palca. Spróbuj ponownie."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Upłynął limit czasu konfiguracji odcisku palca"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Spróbuj ponownie lub skonfiguruj odcisk palca później w Ustawieniach"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Nie udało się zarejestrować odcisku palca. Spróbuj ponownie lub przyłóż inny palec."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Dodaj kolejny"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Dalej"</string>
@@ -1488,17 +1491,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Dostosowywanie telefonu"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Wypróbuj różne style, tapety i inne elementy"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Wygaszacz ekranu"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"wygaszacz ekranu"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Używaj wygaszacza ekranu"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Podczas ładowania lub po zadokowaniu"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Po zadokowaniu lub podczas ładowania"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Podczas ładowania"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Po zadokowaniu"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nigdy"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Wył."</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Włącz wygaszacz ekranu, by kontrolować to, co dzieje się, gdy telefon jest w stacji dokującej i/lub w trybie uśpienia."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kiedy włączać"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Bieżący wygaszacz ekranu"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Ustawienia"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatyczna"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Podnieś, by wybudzić"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Wygaszacz z powiadomieniami"</string>
@@ -1990,6 +1991,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Ustaw kod PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Ustaw służbowy kod PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Ustaw wzór"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Dla większego bezpieczeństwa ustaw wzór do odblokowywania urządzenia"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Ustaw wzór służbowy"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Aby korzystać z odcisku palca, ustaw hasło"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Aby korzystać z odcisku palca, ustaw wzór"</string>
@@ -2147,7 +2149,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikacja alarmowa"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Resetuj ustawienia aplikacji"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Zresetować ustawienia aplikacji?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"To działanie zresetuje wszystkie ustawienia:\n\n"<li>"wyłączonych aplikacji,"</li>\n<li>"wyłączonych powiadomień z aplikacji,"</li>\n<li>"domyślnych aplikacji dla wybranych czynności,"</li>\n<li>"ograniczeń korzystania przez aplikacje z danych w tle,"</li>\n<li>"wszystkich ograniczeń dotyczących uprawnień."</li>\n\n"Nie stracisz żadnych danych aplikacji."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"To działanie zresetuje wszystkie ustawienia dotyczące:\n\n"<li>"wyłączonych aplikacji,"</li>\n<li>"wyłączonych powiadomień aplikacji,"</li>\n<li>"domyślnych aplikacji dla wybranych czynności,"</li>\n<li>"ograniczeń użycia danych w tle dla aplikacji,"</li>\n<li>"wszelkich ograniczeń dostępu,"</li>\n<li>"ustawień wykorzystania baterii."</li>\n\n"Nie utracisz żadnych danych aplikacji."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Resetuj aplikacje"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Zarządzaj miejscem"</string>
     <string name="filter" msgid="9039576690686251462">"Filtr"</string>
@@ -2402,7 +2404,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Resetuj ustawienia"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Rozmiar wyświetlacza i ustawienia tekstu zostały zresetowane"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Zresetować rozmiar wyświetlacza i tekst?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Ustawienia rozmiaru wyświetlacza i tekstu zostaną zresetowane do ustawień fabrycznych telefonu"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Ustawienia rozmiaru wyświetlacza i tekstu zostaną zresetowane do ustawień fabrycznych telefonu"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Ustawienia rozmiaru wyświetlacza i tekstu zostaną zresetowane do ustawień fabrycznych tabletu"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Resetuj"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Masz plany na weekend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Wybieram się na plażę. Przyłączysz się?"</string>
@@ -3010,6 +3013,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Brak użycia od ostatniego pełnego naładowania"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Brak wykorzystania w ciągu ostatnich 24 godzin"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Inni użytkownicy"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Pozostały czas pracy na baterii jest szacowany na podstawie wykorzystania urządzenia"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Szacowany pozostały czas"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Do pełnego naładowania"</string>
@@ -3099,6 +3103,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Pełne słowo-klucz i interakcja"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Prosta zamiana mowy na tekst"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ta usługa głosowego wprowadzania tekstu będzie mogła nieustannie monitorować aktywność głosową i sterować aplikacjami z włączoną obsługą głosową w Twoim imieniu. Pochodzi z tej aplikacji: <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Włączyć ją?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Ustawienia rozpoznawania na urządzeniu"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Rozpoznawanie na urządzeniu"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Rozpoznawanie mowy na urządzeniu"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Preferowany mechanizm"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Ustawienia mechanizmu"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Szybkość mowy i ton głosu"</string>
@@ -3499,6 +3506,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Usuń"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Wszystkie aplikacje i dane w tej sesji zostaną usunięte."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Usuń"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gość (Ty)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Użytkownicy"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Inni użytkownicy"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Usuń aktywność gościa"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Usuwaj wszystkie aplikacje i dane gościa podczas zamykania trybu gościa"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Usunąć aktywność gościa?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplikacje i dane z tej sesji gościa zostaną teraz usunięte. Cała przyszła aktywność gościa będzie usuwana podczas zamykania trybu gościa."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Włącz rozmowy telefoniczne"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Włącz rozmowy telefoniczne i SMS-y"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Usuń użytkownika"</string>
@@ -4095,17 +4109,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Wszystkie powiadomienia z aplikacji „<xliff:g id="APP_NAME">%1$s</xliff:g>”"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Wszystkie powiadomienia z aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Powiadomienia adaptacyjne"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> powiadomienia dziennie</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> powiadomień dziennie</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> powiadomienia dziennie</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> powiadomienie dziennie</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="few">Mniej więcej <xliff:g id="NUMBER_1">%,d</xliff:g> powiadomienia dziennie</item>
+      <item quantity="many">Mniej więcej <xliff:g id="NUMBER_1">%,d</xliff:g> powiadomień dziennie</item>
+      <item quantity="other">Mniej więcej <xliff:g id="NUMBER_1">%,d</xliff:g> powiadomienia dziennie</item>
+      <item quantity="one">Mniej więcej <xliff:g id="NUMBER_0">%d</xliff:g> powiadomienie dziennie</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> powiadomienia tygodniowo</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> powiadomień tygodniowo</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> powiadomienia tygodniowo</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> powiadomienie tygodniowo</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="few">Mniej więcej <xliff:g id="NUMBER_1">%,d</xliff:g> powiadomienia tygodniowo</item>
+      <item quantity="many">Mniej więcej <xliff:g id="NUMBER_1">%,d</xliff:g> powiadomień tygodniowo</item>
+      <item quantity="other">Mniej więcej <xliff:g id="NUMBER_1">%,d</xliff:g> powiadomienia tygodniowo</item>
+      <item quantity="one">Mniej więcej <xliff:g id="NUMBER_0">%d</xliff:g> powiadomienie tygodniowo</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nigdy"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Powiadomienia na urządzeniu i w aplikacjach"</string>
@@ -5423,7 +5437,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Nic nie rób"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Wibracje"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Wyciszenie"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Aby włączyć, najpierw zmień „Naciśnij i przytrzymaj przycisk zasilania” na menu zasilania."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Aby włączyć, najpierw zmień „Naciśnij i przytrzymaj przycisk zasilania” na menu zasilania."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Szczegóły sieci"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Nazwa urządzenia jest widoczna dla aplikacji na telefonie. Mogą ją też zobaczyć inne osoby, gdy łączysz się z urządzeniami przez Bluetooth, łączysz się z siecią Wi-Fi lub konfigurujesz hotspot Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Urządzenia"</string>
@@ -5716,15 +5730,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"sterowanie urządzeniami"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Karty i bilety"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"Karty i bilety"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Naciśnij i przytrzymaj przycisk zasilania"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Naciśnij i przytrzymaj, aby uruchomić Asystenta"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Naciśnij i przytrzymaj, aby wyświetlić menu zasilania"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Opcja Naciśnij i przytrzymaj jest wyłączona"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Naciśnij i przytrzymaj przycisk głośności"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Naciśnij i przytrzymaj przycisk zasilania, aby uzyskać dostęp"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu zasilania"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Asystent cyfrowy"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Otwórz asystenta cyfrowego"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Otwórz menu zasilania"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Najpierw ustaw blokadę ekranu"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Przytrzymaj, aby włączyć Asystenta"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Przytrzymaj przycisk zasilania, aby uaktywnić Asystenta"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu zasilania i alarmowe:\nNaciśnij jednocześnie przyciski zasilania i zwiększania głośności."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Zapobiegaj włączeniu się dzwonka:\nSkrót dostępny w menu głośności."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu zasilania:\nnaciśnij jednocześnie przycisk zasilania i przycisk zwiększania głośności"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Wyłączanie dzwonków:\naby uruchomić ten skrót, naciśnij przycisk głośności"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Czas naciskania i przytrzymywania przycisku głośności"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Dostosuj czułość, określając, jak długo ma być naciskany i przytrzymywany przycisk głośności"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Krótko"</string>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index 1f695f9..d068e8b 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Quando a criança utiliza o Pixel Imprint, as imagens são usadas para atualizar o modelo de impressão digital dela. As imagens usadas para criar o modelo da criança nunca são armazenadas, mas ele fica salvo em segurança no smartphone, sem deixar o dispositivo. Todo o processamento ocorre de forma segura no smartphone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Você pode excluir as imagens e o modelo da impressão digital ou desativar o Desbloqueio por impressão digital a qualquer momento nas configurações. As imagens e os modelos de impressão digital são armazenados no smartphone até serem excluídos."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Você e a criança podem excluir as imagens e o modelo de impressão digital dela ou desativar o Desbloqueio por impressão digital a qualquer momento nas Configurações. As imagens e os modelos de impressão digital ficam armazenados no smartphone até serem excluídos."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"O smartphone pode ser desbloqueado mesmo se não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"O smartphone pode ser desbloqueado mesmo se não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"O tablet poderá ser desbloqueado mesmo se essa não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"O dispositivo poderá ser desbloqueado mesmo se essa não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"O smartphone da criança poderá ser desbloqueado mesmo quando essa não for a intenção. Por exemplo, se alguém levar o leitor ao dedo dela."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Para conseguir melhores resultados, use uma película com certificação Made For Google. Sua impressão digital pode não funcionar com outras películas."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Para conseguir melhores resultados, use uma película com certificação Made For Google. A impressão digital da criança pode não funcionar com outras películas."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustração mostrando a localização do sensor de impressão digital no dispositivo"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nome"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Ok"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Tentar novamente"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Excluir"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Toque no sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Encoste o dedo no sensor e, após sentir uma vibração, tire o dedo"</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Concluído"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Opa, este não é o sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Toque no sensor na parte traseira do smartphone. Use o dedo indicador."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"O registro não foi concluído"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Tempo limite para registro de impressões digitais atingido. Tente novamente."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"A configuração da impressão digital expirou"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Tente novamente ou configure a impressão digital mais tarde nas configurações"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"O registro da impressão digital não funcionou. Tente novamente ou use um dedo diferente."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Adicionar outra"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Próxima"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personalizar seu smartphone"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Use diferentes estilos, planos de fundo e muito mais"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Protetor de tela"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"protetor de tela"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Usar o protetor de tela"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Ao carregar ou quando encaixado na base"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Ambos"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Ao carregar"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Encaixado na base"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nunca"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Desativado"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Para controlar o que acontece quando o smartphone está na base e/ou no modo de suspensão, ative o protetor de tela."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Quando começar"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Protetor de tela atual"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Configurações"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Brilho automático"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Levantar para ativar"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Tela ambiente"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Definir um PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Defina um PIN de trabalho"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Definir um padrão"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Para aumentar a segurança, defina um padrão para desbloquear o dispositivo"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Definir um padrão de trabalho"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Para usar a impressão digital, defina uma senha"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Para usar a impressão digital, defina um padrão"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"App de emergência"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Redefinir apps"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Redefinir apps?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Isso redefinirá todas as preferências para:\n\n"<li>" apps desativados;"</li>" \n "<li>"notificações de apps desativados; "</li>\n<li>"apps padrão para ações;"</li>\n<li>"restrições de dados em segundo plano para apps; "</li>\n<li>"qualquer restrição de permissão."</li>\n\n"Você não perderá os dados dos apps."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Isso vai redefinir todas as preferências para:\n\n"<li>"apps desativados;"</li>\n<li>"notificações de apps desativados;"</li>\n<li>"apps padrão para ações;"</li>\n<li>"restrições de dados em segundo plano para apps;"</li>\n<li>"qualquer restrição de permissão;"</li>\n<li>"configurações de uso da bateria."</li>\n\n"Você não vai perder nenhum dado do app."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Redefinir apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gerenciar espaço"</string>
     <string name="filter" msgid="9039576690686251462">"Filtro"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Redefinir configurações"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"As definições de tamanho e texto da tela foram redefinidas"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Redefinir o texto e o tamanho da tela?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"As preferências de texto e tamanho da tela serão redefinidas para as configurações originais do smartphone"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"As preferências de texto e tamanho da tela serão redefinidas para as configurações originais do smartphone"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"As preferências de texto e tamanho da tela serão redefinidas para as configurações originais do tablet"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Redefinir"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Algum plano para o fim de semana?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Vou para a praia. Quer ir também?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Sem uso desde a última carga completa"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Sem uso nas últimas 24h"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Outros usuários"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"A estimativa de carga da bateria restante é baseada no uso que você faz do dispositivo"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Tempo restante estimado"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Até a carga completa"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Hotword completa e interação"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Conversão simples de fala em texto"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Este serviço de entrada por voz poderá executar monitoramento por voz sempre ativado e apps com o recurso de comando de voz em seu nome. Ele está incluído no app <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Quer ativar o uso deste serviço?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Configurações de reconhecimento no dispositivo"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Reconhecimento no dispositivo"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Reconhecimento de fala no dispositivo"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Mecanismo preferencial"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Configurações do mecanismo"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Velocidade da fala e tom de voz"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Excluir"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Todos os apps e dados nesta sessão serão excluídos."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Remover"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Visitante (você)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Usuários"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Outros usuários"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Excluir atividade de convidado"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Excluir todos os apps e dados do convidado ao sair do modo convidado"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Excluir atividade do convidado?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Os apps e dados desta sessão de convidado serão excluídos agora e toda a atividade futura será excluída sempre que você sair do modo convidado"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Ativar chamadas telefônicas"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Ativar chamadas telefônicas e SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Excluir usuário"</string>
@@ -4009,12 +4023,12 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Todas as notificações de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Todas as notificações do app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notificações adaptáveis"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
       <item quantity="one">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificação por dia</item>
       <item quantity="other">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificações por dia</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one"><xliff:g id="NUMBER_1">%,d</xliff:g> notificação por semana</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificação por semana</item>
       <item quantity="other">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificações por semana</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nunca"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Não fazer nada"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Desativar som"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Para ativar, mude a opção \"Aperte no botão liga/desliga e o mantenha pressionado\" para o menu liga/desliga."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Para ativar, mude a opção \"Aperte o botão liga/desliga e o mantenha pressionado\" para o menu liga/desliga."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalhes da rede"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"O nome do seu dispositivo está visível para os apps no smartphone. Ele também pode ser visto por outras pessoas quando você se conecta a dispositivos Bluetooth ou a uma rede Wi-Fi ou quando configura um ponto de acesso Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispositivos"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"controles do dispositivo"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cartões e passes"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cartões e passes"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Aperte o botão liga/desliga e o mantenha pressionado"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Aperte o botão e o mantenha pressionado para abrir o Google Assistente"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Aperte o botão e o mantenha pressionado para abrir o menu liga/desliga"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"A opção de apertar o botão e mantê-lo pressionado não está disponível"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Aperte o botão liga/desliga e o mantenha pressionado"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Mantenha o botão liga/desliga pressionado para acessar"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu liga/desliga"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Assistente digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Acessar o assistente digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Acessar o menu liga/desliga"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para usar, primeiro defina um bloqueio de tela"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Segurar para ativar o Google Assistente"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Mantenha o botão liga/desliga pressionado para acionar o Google Assistente"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu liga/desliga e de emergência:\nPressione os botões liga/desliga e aumentar volume ao mesmo tempo."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Impedir o toque:\nAtalho disponível no menu de volumes."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu liga/desliga:\nAperte os botões liga/desliga e de aumentar volume ao mesmo tempo"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Impedir o toque do telefone:\nAperte o botão de volume para usar o atalho"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Duração do pressionamento"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Ajuste a sensibilidade escolhendo por quanto tempo manter o botão liga/desliga pressionado"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Curto"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 901bb9b..5ab6930 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Quando a criança utiliza o Pixel Imprint, são utilizadas imagens para atualizar o respetivo modelo de impressão digital. As imagens utilizadas para criar o modelo de impressão digital da criança nunca são armazenadas, mas o modelo de impressão digital é guardado em segurança no telemóvel e nunca sai do mesmo. Todo o processamento ocorre de forma segura no telemóvel."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Pode eliminar o modelo e as imagens da sua impressão digital ou desativar o Desbloqueio por impressão digital em qualquer altura nas Definições. Os modelos e as imagens de impressões digitais são armazenados no telemóvel até os eliminar."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"O utilizador e a criança podem eliminar o modelo e as imagens da impressão digital ou desativar o Desbloqueio por impressão digital em qualquer altura nas Definições. Os modelos e as imagens de impressões digitais são armazenados no telemóvel até serem eliminados."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"O telemóvel pode ser desbloqueado involuntariamente (por exemplo, se alguém o encostar ao seu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"O telemóvel pode ser desbloqueado involuntariamente (por exemplo, se alguém o encostar ao seu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"O tablet pode ser desbloqueado involuntariamente (por exemplo, se alguém o encostar ao seu dedo)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"O dispositivo pode ser desbloqueado involuntariamente (por exemplo, se alguém o encostar ao seu dedo)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"O telemóvel da criança pode ser desbloqueado involuntariamente, como se alguém o encostar ao dedo da criança."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Para obter os melhores resultados, use um protetor de ecrã com a certificação Made For Google. Com outros protetores de ecrã, a sua impressão digital pode não funcionar."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Para obter os melhores resultados, use um protetor de ecrã com a certificação Made For Google. Com outros protetores de ecrã, a impressão digital da criança pode não funcionar."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustração com o dispositivo e a localização do sensor de impressões digitais"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nome"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Tentar novamente"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Eliminar"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Toque no sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Coloque o dedo sobre o sensor e levante-o depois de sentir uma vibração"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Concluído"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ups, isso não é o sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Toque no sensor na parte traseira do telemóvel com o indicador."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"A inscrição não foi concluída"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Atingiu o tempo limite da inscrição de impressões digitais. Tente novamente."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"A configuração da impressão digital expirou"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Tente novamente agora ou configure a impressão digital mais tarde nas Definições"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"A inscrição de impressões digitais não funcionou. Tente novamente ou utilize um dedo diferente."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Adicionar outra"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Seguinte"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personalizar o telemóvel"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Experimente diferentes estilos, imagens de fundo e muito mais"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Proteção de ecrã"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"proteção de ecrã"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Usar proteção de ecrã"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Ao carregar ou na estação de ancoragem"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Ambos os casos"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Ao carregar"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Ancorado"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nunca"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Desligado"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Para controlar o que acontece quando o telemóvel está ancorado e/ou em suspensão, ative a proteção de ecrã."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Quando iniciar"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Proteção de ecrã atual"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Definições"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Brilho automático"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Ativar ao levantar"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Visualização ambiente"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Defina um PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Defina um PIN de trabalho"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Defina um padrão"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Para maior segurança, defina um padrão para desbloquear o dispositivo"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Defina um padrão de trabalho"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Defina palavra-passe para usar impressão digital"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Defina padrão para usar impressão digital"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplicação de emergência"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Repor preferências de apps"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Repor preferências de apps?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Esta ação irá repor todas as preferências de:\n\n"<li>"Apps desativadas"</li>\n<li>"Notificações de aplicações desativadas"</li>\n<li>"Apps predefinidas para ações"</li>\n<li>"Restrições de dados de segundo plano para aplicações"</li>\n<li>"Todas as restrições de autorização"</li>\n\n"Não irá perder quaisquer dados das aplicações."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Isto irá repor todas as preferências de:\n\n"<li>"Apps desativadas"</li>\n<li>"Notificações de apps desativadas"</li>\n<li>"Aplicações predefinidas para ações"</li>\n<li>"Restrições de dados de segundo plano para apps"</li>\n<li>"Quaisquer restrições de autorização"</li>\n<li>"Definições de utilização da bateria"</li>\n\n"Não irá perder quaisquer dados de apps."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Repor aplicações"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gerir espaço"</string>
     <string name="filter" msgid="9039576690686251462">"Filtrar"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Repor definições"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"As definições de texto e tamanho do ecrã foram repostas"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Repor texto e tamanho da visualização?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"As suas preferências de texto e tamanho do ecrã vão ser repostas para as definições originais do telemóvel"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"As suas preferências de texto e tamanho do ecrã vão ser repostas para as definições originais do telemóvel"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"As suas preferências de texto e tamanho do ecrã vão ser repostas para as definições originais do tablet"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Repor"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Algum plano para o fim de semana?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Vou à praia. Quer juntar-se?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nenhuma utilização desde o último carregamento"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nenhuma utilização nas últimas 24 h"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Outros utilizadores"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"A estimativa de bateria restante baseia-se na utilização do dispositivo"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Tempo restante estimado"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Até ficar totalmente carregada"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Palavra de ativação e interação completas"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Serviço simples de voz para texto"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Este serviço de entrada de texto por voz poderá efetuar monitorização de voz permanente e controlar aplicações ativadas por voz em seu nome. É proveniente da aplicação <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Permitir a utilização deste serviço?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Definições de reconhecimento no dispositivo"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Reconhecimento no dispositivo"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Reconhecimento de voz no dispositivo"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motor preferido"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Definições do motor"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Taxa e tom de voz"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Eliminar"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Todas as apps e dados desta sessão serão eliminados."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Remover"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Convidado (utilizador)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Utilizadores"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Outros utilizadores"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Elimine a atividade de convidado"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Elimine todas as apps e dados de convidado ao sair do modo convidado"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Eliminar a atividade de convidado?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"As apps e os dados desta sessão de convidado vão ser eliminados agora e toda a atividade de convidado futura é eliminada sempre que sair do modo convidado"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Ativar chamadas telefónicas"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Ativar chamadas telefónicas e SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Eliminar utilizador"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Todas as notificações da app \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Todas as notificações da app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notificações adaptáveis"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notificações por dia</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notificação por dia</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificações por dia</item>
+      <item quantity="one">Cerca de <xliff:g id="NUMBER_0">%d</xliff:g> notificação por dia</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> notificações por semana</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notificação por semana</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificações por semana</item>
+      <item quantity="one">Cerca de <xliff:g id="NUMBER_0">%d</xliff:g> notificação por semana</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nunca"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Notificações do dispositivo e de apps"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Não fazer nada"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Desativar som"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Para ativar, comece por alterar \"Premir sem soltar o botão ligar/desligar\" para o menu ligar/desligar."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Para ativar, comece por alterar \"Premir sem soltar o botão ligar/desligar\" para o menu ligar/desligar."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalhes da rede"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"O nome do seu dispositivo é visível para as apps do telemóvel. Também pode ser visto por outras pessoas quando se liga a dispositivos Bluetooth ou a uma rede Wi-Fi, assim como quando configura uma zona Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispositivos"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"controlos de dispositivos"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cartões e passes"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cartões e passes"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Prima sem soltar o botão ligar/desligar"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Prima sem soltar para obter o Assistente"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Prima sem soltar para obter o menu ligar/desligar"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Premir sem soltar desativado"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Prima sem soltar o botão ligar/desligar"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Prima sem soltar o botão ligar/desligar para aceder"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu ligar/desligar"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Assistente digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Aceda ao assistente digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Aceda ao menu ligar/desligar"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para utilizar, defina primeiro um bloqueio de ecrã"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Manter premido para chamar o Assistente"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Acione o Assistente ao manter premido o botão ligar/desligar"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu ligar/desligar e de emergência:\nprima os botões ligar/desligar e aumentar volume em simultâneo."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Impedir o toque:\natalho disponível no menu do volume."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu ligar/desligar:\nprima os botões ligar/desligar e aumentar volume em simultâneo"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Impedir o toque:\nprima um botão de volume para o atalho"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Duração de premir sem soltar"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Ajuste a sensibilidade ao escolher durante quanto tempo o botão ligar/desligar deve ser premido sem soltar"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Curta"</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 1f695f9..d068e8b 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Quando a criança utiliza o Pixel Imprint, as imagens são usadas para atualizar o modelo de impressão digital dela. As imagens usadas para criar o modelo da criança nunca são armazenadas, mas ele fica salvo em segurança no smartphone, sem deixar o dispositivo. Todo o processamento ocorre de forma segura no smartphone."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Você pode excluir as imagens e o modelo da impressão digital ou desativar o Desbloqueio por impressão digital a qualquer momento nas configurações. As imagens e os modelos de impressão digital são armazenados no smartphone até serem excluídos."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Você e a criança podem excluir as imagens e o modelo de impressão digital dela ou desativar o Desbloqueio por impressão digital a qualquer momento nas Configurações. As imagens e os modelos de impressão digital ficam armazenados no smartphone até serem excluídos."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"O smartphone pode ser desbloqueado mesmo se não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"O smartphone pode ser desbloqueado mesmo se não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"O tablet poderá ser desbloqueado mesmo se essa não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"O dispositivo poderá ser desbloqueado mesmo se essa não for sua intenção. Por exemplo, se alguém colocar seu dedo no sensor."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"O smartphone da criança poderá ser desbloqueado mesmo quando essa não for a intenção. Por exemplo, se alguém levar o leitor ao dedo dela."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Para conseguir melhores resultados, use uma película com certificação Made For Google. Sua impressão digital pode não funcionar com outras películas."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Para conseguir melhores resultados, use uma película com certificação Made For Google. A impressão digital da criança pode não funcionar com outras películas."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustração mostrando a localização do sensor de impressão digital no dispositivo"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nome"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Ok"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Tentar novamente"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Excluir"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Toque no sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Encoste o dedo no sensor e, após sentir uma vibração, tire o dedo"</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Concluído"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Opa, este não é o sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Toque no sensor na parte traseira do smartphone. Use o dedo indicador."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"O registro não foi concluído"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Tempo limite para registro de impressões digitais atingido. Tente novamente."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"A configuração da impressão digital expirou"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Tente novamente ou configure a impressão digital mais tarde nas configurações"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"O registro da impressão digital não funcionou. Tente novamente ou use um dedo diferente."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Adicionar outra"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Próxima"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personalizar seu smartphone"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Use diferentes estilos, planos de fundo e muito mais"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Protetor de tela"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"protetor de tela"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Usar o protetor de tela"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Ao carregar ou quando encaixado na base"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Ambos"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Ao carregar"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Encaixado na base"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nunca"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Desativado"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Para controlar o que acontece quando o smartphone está na base e/ou no modo de suspensão, ative o protetor de tela."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Quando começar"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Protetor de tela atual"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Configurações"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Brilho automático"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Levantar para ativar"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Tela ambiente"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Definir um PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Defina um PIN de trabalho"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Definir um padrão"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Para aumentar a segurança, defina um padrão para desbloquear o dispositivo"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Definir um padrão de trabalho"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Para usar a impressão digital, defina uma senha"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Para usar a impressão digital, defina um padrão"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"App de emergência"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Redefinir apps"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Redefinir apps?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Isso redefinirá todas as preferências para:\n\n"<li>" apps desativados;"</li>" \n "<li>"notificações de apps desativados; "</li>\n<li>"apps padrão para ações;"</li>\n<li>"restrições de dados em segundo plano para apps; "</li>\n<li>"qualquer restrição de permissão."</li>\n\n"Você não perderá os dados dos apps."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Isso vai redefinir todas as preferências para:\n\n"<li>"apps desativados;"</li>\n<li>"notificações de apps desativados;"</li>\n<li>"apps padrão para ações;"</li>\n<li>"restrições de dados em segundo plano para apps;"</li>\n<li>"qualquer restrição de permissão;"</li>\n<li>"configurações de uso da bateria."</li>\n\n"Você não vai perder nenhum dado do app."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Redefinir apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gerenciar espaço"</string>
     <string name="filter" msgid="9039576690686251462">"Filtro"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Redefinir configurações"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"As definições de tamanho e texto da tela foram redefinidas"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Redefinir o texto e o tamanho da tela?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"As preferências de texto e tamanho da tela serão redefinidas para as configurações originais do smartphone"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"As preferências de texto e tamanho da tela serão redefinidas para as configurações originais do smartphone"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"As preferências de texto e tamanho da tela serão redefinidas para as configurações originais do tablet"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Redefinir"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Algum plano para o fim de semana?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Vou para a praia. Quer ir também?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Sem uso desde a última carga completa"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Sem uso nas últimas 24h"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Outros usuários"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"A estimativa de carga da bateria restante é baseada no uso que você faz do dispositivo"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Tempo restante estimado"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Até a carga completa"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Hotword completa e interação"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Conversão simples de fala em texto"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Este serviço de entrada por voz poderá executar monitoramento por voz sempre ativado e apps com o recurso de comando de voz em seu nome. Ele está incluído no app <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Quer ativar o uso deste serviço?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Configurações de reconhecimento no dispositivo"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Reconhecimento no dispositivo"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Reconhecimento de fala no dispositivo"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Mecanismo preferencial"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Configurações do mecanismo"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Velocidade da fala e tom de voz"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Excluir"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Todos os apps e dados nesta sessão serão excluídos."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Remover"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Visitante (você)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Usuários"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Outros usuários"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Excluir atividade de convidado"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Excluir todos os apps e dados do convidado ao sair do modo convidado"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Excluir atividade do convidado?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Os apps e dados desta sessão de convidado serão excluídos agora e toda a atividade futura será excluída sempre que você sair do modo convidado"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Ativar chamadas telefônicas"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Ativar chamadas telefônicas e SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Excluir usuário"</string>
@@ -4009,12 +4023,12 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Todas as notificações de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Todas as notificações do app <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notificações adaptáveis"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
       <item quantity="one">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificação por dia</item>
       <item quantity="other">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificações por dia</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one"><xliff:g id="NUMBER_1">%,d</xliff:g> notificação por semana</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificação por semana</item>
       <item quantity="other">Cerca de <xliff:g id="NUMBER_1">%,d</xliff:g> notificações por semana</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nunca"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Não fazer nada"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrar"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Desativar som"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Para ativar, mude a opção \"Aperte no botão liga/desliga e o mantenha pressionado\" para o menu liga/desliga."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Para ativar, mude a opção \"Aperte o botão liga/desliga e o mantenha pressionado\" para o menu liga/desliga."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalhes da rede"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"O nome do seu dispositivo está visível para os apps no smartphone. Ele também pode ser visto por outras pessoas quando você se conecta a dispositivos Bluetooth ou a uma rede Wi-Fi ou quando configura um ponto de acesso Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispositivos"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"controles do dispositivo"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Cartões e passes"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"cartões e passes"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Aperte o botão liga/desliga e o mantenha pressionado"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Aperte o botão e o mantenha pressionado para abrir o Google Assistente"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Aperte o botão e o mantenha pressionado para abrir o menu liga/desliga"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"A opção de apertar o botão e mantê-lo pressionado não está disponível"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Aperte o botão liga/desliga e o mantenha pressionado"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Mantenha o botão liga/desliga pressionado para acessar"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menu liga/desliga"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Assistente digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Acessar o assistente digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Acessar o menu liga/desliga"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para usar, primeiro defina um bloqueio de tela"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Segurar para ativar o Google Assistente"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Mantenha o botão liga/desliga pressionado para acionar o Google Assistente"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu liga/desliga e de emergência:\nPressione os botões liga/desliga e aumentar volume ao mesmo tempo."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Impedir o toque:\nAtalho disponível no menu de volumes."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menu liga/desliga:\nAperte os botões liga/desliga e de aumentar volume ao mesmo tempo"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Impedir o toque do telefone:\nAperte o botão de volume para usar o atalho"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Duração do pressionamento"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Ajuste a sensibilidade escolhendo por quanto tempo manter o botão liga/desliga pressionado"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Curto"</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index a94e4fc..cb2f0a0 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -468,7 +468,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Când folosește Pixel Imprint, imaginile sunt folosite pentru a-i actualiza modelul de amprentă. Imaginile folosite pentru a crea modelul de amprentă al copilului dvs. nu sunt stocate niciodată, dar modelul de amprentă este stocat în siguranță pe telefon și nu părăsește niciodată dispozitivul. Toată procesarea are loc în siguranță pe telefon."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Puteți să ștergeți imaginile amprentelor și modelul de amprentă sau să dezactivați deblocarea cu amprenta oricând din Setări. Imaginile amprentelor și modelul de amprentă sunt stocate pe telefon până când le ștergeți."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Dvs. și copilul dvs. puteți să ștergeți imaginile amprentelor și modelul de amprentă sau să dezactivați Deblocarea cu amprenta oricând din Setări. Imaginile amprentelor și modelele de amprentă sunt stocate pe telefon până când le ștergeți."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefonul poate fi deblocat când nu doriți, de exemplu, dacă cineva îl ține în dreptul degetului dvs."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefonul poate fi deblocat când nu doriți, de exemplu, dacă cineva îl ține în dreptul degetului dvs."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tableta poate fi deblocată când nu doriți, de exemplu, dacă cineva o ține în dreptul degetului dvs."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Dispozitivul poate fi deblocat când nu doriți, de exemplu, dacă cineva îl ține în dreptul degetului dvs."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefonul copilului dvs. poate fi deblocat și când nu dorește, de exemplu, dacă cineva îl ține în dreptul degetului său."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Pentru rezultate optime, folosiți o protecție pentru ecran care este certificată Made for Google. Este posibil ca amprenta să nu funcționeze cu alte protecții pentru ecran."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Pentru rezultate optime, folosiți o protecție pentru ecran care este certificată Made for Google. Este posibil ca amprenta copilului să nu funcționeze cu alte protecții pentru ecran."</string>
@@ -518,6 +520,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Imagine cu dispozitivul și poziția senzorului de amprentă"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Denumiți"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Încercați din nou"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Ștergeți"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Atingeți senzorul"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Puneți degetul pe senzor și ridicați-l după ce simțiți o vibrație"</string>
@@ -597,8 +600,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Terminat"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Hopa, acela nu este senzorul"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Atingeți senzorul de pe spatele telefonului. Folosiți degetul arătător."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Înregistrarea nu a fost finalizată"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Timpul limită pentru înregistrarea amprentei a expirat. Încercați din nou."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Configurarea amprentei a expirat"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Încercați din nou acum sau configurați amprenta mai târziu în Setări"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Înregistrarea amprentei nu a funcționat. Încercați din nou sau folosiți un alt deget."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Adăugați altă amprentă"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Înainte"</string>
@@ -1470,17 +1473,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personalizați-vă telefonul"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Încercați diverse stiluri, imagini de fundal și altele"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Economizor de ecran"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"screensaver"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Folosiți screensaverul"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"În timpul încărcării sau andocării"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"În ambele situații"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"În timpul încărcării"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Când dispozitivul este andocat"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Niciodată"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Dezactivat"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Pentru a stabili ce se întâmplă când telefonul este andocat și/sau inactiv, activați economizorul de ecran."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Când pornește"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Screensaver actual"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Setări"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Luminozitate automată"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Ridicați pentru a reactiva"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Afișaj ambiental"</string>
@@ -1970,6 +1971,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Setați un cod PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Setați un cod PIN de serviciu"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Setați un model"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Pentru mai multă siguranță, setați un model pentru deblocarea dispozitivului"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Setați un model de serviciu"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Pentru a utiliza amprenta, setați parola"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Pentru a utiliza amprenta, setați modelul"</string>
@@ -2125,7 +2127,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplicația de urgență"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Resetați preferințele pentru aplicații"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Resetați preferințele pentru aplicații?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Astfel vor fi resetate toate preferințele pentru:\n\n"<li>"aplicații dezactivate,"</li>\n<li>"notificări de aplicații dezactivate,"</li>\n<li>"aplicații prestabilite pentru acțiuni,"</li>\n<li>"restricții privind datele de fundal pentru aplicații,"</li>\n<li>"orice restricții de permisiuni."</li>\n\n"Nu veți pierde datele aplicațiilor."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Astfel vor fi resetate toate preferințele pentru:\n\n"<li>"aplicații dezactivate,"</li>\n<li>"notificări de aplicații dezactivate,"</li>\n<li>"aplicații prestabilite pentru acțiuni,"</li>\n<li>"restricții privind datele de fundal pentru aplicații,"</li>\n<li>"orice restricții de permisiuni,"</li>\n<li>"setări pentru folosirea bateriei."</li>\n\n"Nu veți pierde datele aplicațiilor."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Resetați aplicațiile"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Gestionați spațiul"</string>
     <string name="filter" msgid="9039576690686251462">"Filtrați"</string>
@@ -2380,7 +2382,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Restabiliți setările"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Setările privind dimensiunea pentru afișare și textul au fost resetate"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Resetați textul și dimensiunea ecranului?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Preferințele privind textul și dimensiunea ecranului se vor reseta la setările inițiale ale telefonului"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Preferințele privind textul și dimensiunea ecranului se vor reseta la setările inițiale ale telefonului"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Preferințele privind textul și dimensiunea ecranului se vor reseta la setările inițiale ale tabletei"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Resetați"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Ai planuri de weekend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Mă duc la plajă. Vrei să vii cu mine?"</string>
@@ -2974,6 +2977,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Nu a fost folosită de la ultima încărcare completă"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nu a fost folosită în ultimele 24 h"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Alți utilizatori"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Estimarea bateriei rămase se bazează pe utilizarea dispozitivului"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Timp estimat rămas"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Până la încărcarea completă"</string>
@@ -3063,6 +3067,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Expresie de activare și interacțiune complete"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Transformare simplă a vorbirii în text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Acest serviciu de introducere vocală va putea să asigure în permanență monitorizarea vocală și să controleze aplicațiile cu comenzi vocale în locul dvs. Acesta provine din aplicația <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Activați utilizarea acestui serviciu?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Setări de recunoaștere pe dispozitiv"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Recunoaștere pe dispozitiv"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Recunoaștere vocală pe dispozitiv"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motor preferat"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Setările motorului"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Viteza și tonalitatea vorbirii"</string>
@@ -3459,6 +3466,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Ștergeți"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Toate aplicațiile și datele din această sesiune vor fi șterse."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Ștergeți"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Invitat (dvs.)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Utilizatori"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Alți utilizatori"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Ștergeți activitatea invitatului"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Ștergeți toate aplicațiile și datele invitatului când ieșiți din modul pentru invitați"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Ștergeți activitatea invitatului?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplicațiile și datele din această sesiune pentru invitați vor fi șterse acum și toate activitățile viitoare ale invitaților vor fi șterse de fiecare dată când ieșiți din modul pentru invitați"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Activați apelurile telefonice"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Activați apelurile telefonice și SMS-urile"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Ștergeți utilizatorul"</string>
@@ -4053,15 +4067,15 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Toate notificările din „<xliff:g id="APP_NAME">%1$s</xliff:g>”"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Toate notificările din <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Notificări adaptive"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> notificări pe zi</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> de notificări pe zi</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notificare pe zi</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="few">Aproximativ <xliff:g id="NUMBER_1">%,d</xliff:g> notificări pe zi</item>
+      <item quantity="other">Aproximativ <xliff:g id="NUMBER_1">%,d</xliff:g> de notificări pe zi</item>
+      <item quantity="one">Aproximativ <xliff:g id="NUMBER_0">%d</xliff:g> notificare pe zi</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> notificări pe săptămână</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> de notificări pe săptămână</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> notificare pe săptămână</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="few">Aproximativ <xliff:g id="NUMBER_1">%,d</xliff:g> notificări pe săptămână</item>
+      <item quantity="other">Aproximativ <xliff:g id="NUMBER_1">%,d</xliff:g> de notificări pe săptămână</item>
+      <item quantity="one">Aproximativ <xliff:g id="NUMBER_0">%d</xliff:g> notificare pe săptămână</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Niciodată"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Notificări pe dispozitive și în aplicații"</string>
@@ -5341,7 +5355,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Nicio acțiune"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrație"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Dezactivați sunetul"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Pentru activare, mai întâi modificați opțiunea Apăsați lung butonul de pornire din meniul de pornire."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Pentru activare, mai întâi modifică opțiunea Apasă lung butonul de pornire din meniul de pornire."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detalii despre rețea"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Numele dispozitivului este vizibil pentru aplicațiile de pe telefon. Poate fi văzut și de alte persoane când vă conectați la dispozitivele Bluetooth sau la o rețea Wi-Fi sau când configurați un hotspot Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Dispozitive"</string>
@@ -5631,15 +5645,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"comenzile dispozitivelor"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Carduri și permise"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"carduri și permise"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Apăsați lung pe butonul de pornire"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Apăsați lung pentru Asistent"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Apăsați lung pentru meniul de pornire"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Apăsarea lungă este dezactivată"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Apasă lung pe butonul de pornire"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Apasă lung butonul de pornire pentru a accesa"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Meniul de pornire"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Asistent digital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Accesează asistentul digital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Accesează meniul de pornire"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Pentru utilizare, setați mai întâi un ecran de blocare"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Apăsați lung pentru Asistent"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Declanșați Asistentul apăsând lung butonul de pornire"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Meniul Pornire și urgențe:\napăsați simultan pe butonul de pornire și pe cel de creștere a volumului"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Împiedicați sunatul:\ncomandă rapidă disponibilă în meniul de volum"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Meniul de pornire:\napasă simultan pe butonul de pornire și pe cel de creștere a volumului"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Împiedică sunatul:\napasă pe un buton de volum pentru comanda rapidă"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Durata cât țineți apăsat"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Ajustați sensibilitatea alegând cât să țineți apăsat butonul de pornire"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Scurtă"</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 28e65b5..e7367ba 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Изображения, создаваемые во время работы функции Pixel Imprint, будут использоваться для обновления модели. Обработка снимков и модели происходит только на устройстве. Сами изображения не сохраняются, а модель отпечатка хранится только на вашем устройстве и никуда не отправляется."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Вы можете в любой момент удалить изображения и модель вашего отпечатка или отключить функцию разблокировки по отпечатку пальца в настройках. Изображения и модель хранятся на телефоне, пока вы не удалите их."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Вы и ваш ребенок в любой момент можете удалить модель и снимки отпечатка пальца или отключить функцию разблокировки по отпечатку пальца в настройках. Изображения и модель хранятся на телефоне, пока вы не удалите их."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"В некоторых ситуациях телефон может быть разблокирован без вашего желания, например если кто-то приложит его к вашему пальцу."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"В некоторых ситуациях телефон может быть разблокирован без вашего желания, например если кто-то приложит его к вашему пальцу."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"В некоторых ситуациях планшет может быть разблокирован без вашего желания, например если кто-то приложит его к вашему пальцу."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"В некоторых ситуациях устройство может быть разблокировано без вашего желания, например если кто-то приложит его к вашему пальцу."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"В некоторых ситуациях телефон может быть разблокирован без желания ребенка, например если кто-то приложит устройство к пальцу ребенка."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Рекомендуем использовать защитное стекло или пленку из серии \"Сделано для Google\". Устройства с другими стеклами или пленками могут не распознавать отпечаток пальца."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Рекомендуем использовать защитное стекло или пленку из серии \"Сделано для Google\". Устройства с другими стеклами или пленками могут не распознавать отпечаток пальца ребенка."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"На этом рисунке показано, где находится сканер"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Название"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ОК"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Повторить"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Удалить"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Коснитесь сканера отпечатков"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Прикладывайте палец к сканеру и удерживайте, пока не почувствуете вибрацию."</string>
@@ -599,8 +602,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Готово"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Мимо! Это не сканер отпечатков пальцев..."</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Найдите сканер на задней панели и коснитесь его указательным пальцем."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Отпечаток не добавлен"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Превышен срок ожидания. Повторите попытку."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Время настройки отпечатка пальца истекло"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Повторите попытку или добавьте отпечаток пальца позже в настройках."</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Не удалось добавить отпечаток. Повторите попытку или попробуйте сохранить отпечаток другого пальца."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Добавить ещё"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Далее"</string>
@@ -1488,17 +1491,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Настройка телефона"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Пробуйте разные стили, обои и не только"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Заставка"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"заставка"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Использовать заставку"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Во время зарядки и на док-станции"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Всегда"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Во время зарядки"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"На док-станции"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Никогда"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Отключено"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Чтобы настроить поведение телефона при подключении к док-станции и в спящем режиме, включите заставку."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Когда запускать"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Текущая заставка"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Настройки"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Автонастройка"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Активация в вертикальном положении"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Автоматич. включение экрана"</string>
@@ -1990,6 +1991,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Задайте PIN-код"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Задайте PIN-код для рабочего профиля"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Задайте графический ключ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Чтобы обеспечить дополнительную безопасность, задайте графический ключ для разблокировки этого устройства"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Задайте граф. ключ для рабочего профиля"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Задайте пароль"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Задайте графический ключ"</string>
@@ -2147,7 +2149,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Тревожное оповещение"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Сбросить настройки приложений"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Сбросить настройки?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Будут сброшены следующие настройки:\n\n"<li>"отключенные приложения;"</li>\n<li>"отключенные уведомления приложений;"</li>\n<li>"приложения по умолчанию;"</li>\n<li>"ограничения на передачу данных в фоновом режиме;"</li>\n<li>"все ограничения разрешений."</li>\n\n"Данные приложений не будут удалены."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Будут сброшены следующие настройки:\n\n"<li>"отключенные приложения;"</li>\n<li>"отключенные уведомления приложений;"</li>\n<li>"приложения по умолчанию;"</li>\n<li>"ограничения на передачу данных приложениями в фоновом режиме;"</li>\n<li>"все ограничения разрешений;"</li>\n<li>"настройки расхода заряда батареи."</li>\n\n"Данные приложений удалены не будут."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Сбросить"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Управление местом"</string>
     <string name="filter" msgid="9039576690686251462">"Фильтр"</string>
@@ -2402,7 +2404,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Сбросить настройки"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Масштаб изображения на экране и настройки текста сброшены."</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Сбросить настройки текста и размера экрана?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Будут восстановлены исходные параметры текста и размера экрана, заданные на телефоне."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Будут восстановлены исходные параметры текста и размера экрана, заданные на телефоне."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Для планшета будут восстановлены исходные параметры текста и масштаба изображения"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Сбросить"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Есть планы на выходные?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Мы собираемся на пляж. Хочешь присоединиться?"</string>
@@ -3010,6 +3013,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Батарея не использовалась с момента последней полной зарядки"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Батарея не использовалась за последние 24 часа"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Другие пользователи"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Оставшееся время работы рассчитано с учетом того, как используется устройство."</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Расчетное время работы без подзарядки"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"До полной зарядки"</string>
@@ -3099,6 +3103,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Расширенный режим: управление с помощью голосовых команд"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Обычный режим: распознавание речи"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Эта служба голосового ввода сможет выполнять непрерывный мониторинг речи и управлять приложениями от вашего имени. Для ее работы необходимо установить приложение \"<xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>\". Включить службу?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Настройки распознавания на устройстве"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Распознавание на устройстве"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Распознавание речи на устройстве"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Синтезатор речи по умолчанию"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Настройки синтеза"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Скорость речи и тон"</string>
@@ -3499,6 +3506,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Удалить"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Все приложения и данные этого профиля будут удалены."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Удалить"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Гость (вы)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Пользователи"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Другие пользователи"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Удалить историю гостевого сеанса"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Удалять все приложения и данные при выходе из гостевого режима"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Удалить историю гостевого сеанса?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Все данные и приложения этого гостевого сеанса будут удалены. В дальнейшем история будет очищаться каждый раз при выходе из гостевого режима."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Включить звонки"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Включить звонки и SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Удалить пользователя"</string>
@@ -4095,17 +4109,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"<xliff:g id="APP_NAME">%1$s</xliff:g>: все уведомления"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Показывать все уведомления приложения \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Адаптивные уведомления"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~ <xliff:g id="NUMBER_1">%,d</xliff:g> уведомление в день</item>
-      <item quantity="few">~ <xliff:g id="NUMBER_1">%,d</xliff:g> уведомления в день</item>
-      <item quantity="many">~ <xliff:g id="NUMBER_1">%,d</xliff:g> уведомлений в день</item>
-      <item quantity="other">~ <xliff:g id="NUMBER_1">%,d</xliff:g> уведомления в день</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Примерно <xliff:g id="NUMBER_1">%,d</xliff:g> уведомление в день</item>
+      <item quantity="few">Примерно <xliff:g id="NUMBER_1">%,d</xliff:g> уведомления в день</item>
+      <item quantity="many">Примерно <xliff:g id="NUMBER_1">%,d</xliff:g> уведомлений в день</item>
+      <item quantity="other">Примерно <xliff:g id="NUMBER_1">%,d</xliff:g> уведомления в день</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> уведомление в неделю</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> уведомления в неделю</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> уведомлений в неделю</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> уведомления в неделю</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Примерно <xliff:g id="NUMBER_1">%,d</xliff:g> уведомление в неделю</item>
+      <item quantity="few">Примерно <xliff:g id="NUMBER_1">%,d</xliff:g> уведомления в неделю</item>
+      <item quantity="many">Примерно <xliff:g id="NUMBER_1">%,d</xliff:g> уведомлений в неделю</item>
+      <item quantity="other">Примерно <xliff:g id="NUMBER_1">%,d</xliff:g> уведомления в неделю</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Никогда"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Уведомления на устройствах и в приложениях"</string>
@@ -5423,7 +5437,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Не менять настройки"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Вибрация"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Отключение звука"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Чтобы включить эту функцию, сначала измените параметр \"Долгое нажатие кнопки питания\" в ее меню."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Чтобы включить эту функцию, сначала установите для параметра \"Долгое нажатие кнопки питания\" значение \"Меню кнопки питания\"."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Сведения о сети"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"У приложений на телефоне есть доступ к названию устройства. Его могут видеть другие пользователи, когда вы подключаетесь к устройствам по Bluetooth или настраиваете точку доступа Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Устройства"</string>
@@ -5716,15 +5730,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"виджеты управления устройством"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Карты, билеты и пропуска"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"Карты, билеты и пропуска"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Долгое нажатие кнопки питания"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"После долгого нажатия запускается Ассистент"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"После долгого нажатия открывается меню кнопки питания"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Долгое нажатие отключено"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Долгое нажатие кнопки питания"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Выберите, что открывается при долгом нажатии кнопки питания"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Меню кнопки питания"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Цифровой помощник"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Открытие цифрового помощника"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Открытие меню кнопки питания"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Сначала необходимо настроить блокировку экрана"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Запускать Ассистента долгим нажатием"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Нажмите и удерживайте кнопку питания для запуска Ассистента"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Меню кнопки питания и экстренных вызовов:\nЧтобы его открыть, одновременно нажмите кнопки питания и увеличения громкости."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Отключение звука звонка:\nБыстрый запуск функции доступен в меню регулировки громкости."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Меню кнопки питания\nОдновременно нажмите кнопку питания и кнопку увеличения громкости."</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Отключение звука звонка\nНажмите кнопку регулировки громкости, чтобы применить сочетание клавиш."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Длительность нажатия и удержания"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Настройте чувствительность, выбрав длительность нажатия и удержания кнопки питания."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Быстро"</string>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index 1b94aba..e7b5021 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"ඔවුන් Pixel Imprint භාවිත කරන විට, ඔවුන්ගේ ඇඟිලි සලකුණු ආකෘතිය යාවත්කාලීන කිරීමට රූප භාවිත කෙරේ. ඔබගේ දරුවාගේ ඇඟිලි සලකුණු ආකෘතිය තැනීමට භාවිත කරන රූප කිසි විටක ගබඩා නොකරනු ඇත, නමුත් ඇඟිලි සලකුණු ආකෘතිය දුරකථනයේ ආරක්ෂිතව ගබඩා කර ඇති අතර කිසි විටක දුරකථනය හැර නොයයි. සියලු සැකසීම් දුරකථනයේ ආරක්ෂිතව සිදු වේ."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"ඔබට සැකසීම් තුළ ඕනෑම වේලාවක ඔබගේ ඇඟිලි සලකුණු රූප සහ ආකෘතිය මැකීමට, හෝ ඇඟිලි සලකුණු අගුලු හැරීම ක්‍රියාවිරහිත කිරීමට හැකිය. ඇඟිලි සලකුණු රූප සහ මාදිලි ඔබ මකන තෙක් දුරකථනයේ ගබඩා කර ඇත."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"ඔබට සහ ඔබගේ දරුවාට සැකසීම් තුළ ඕනෑම වේලාවක සිය ඇඟිලි සලකුණු රූප සහ ආකෘතිය මැකීමට, හෝ ඇඟිලි සලකුණු අගුලු හැරීම ක්‍රියාවිරහිත කිරීමට හැකිය. ඇඟිලි සලකුණු රූප සහ ආකෘති ඔබ ඒවා මකන තෙක් දුරකථනයේ ගබඩා කර ඇත."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"යම් කෙනෙක් එය ඔබගේ ඇඟිල්ලට තබාගෙන සිටින විට වැනි, ඔබ අදහස් නොකරන විටක ඔබගේ දුරකථනය අගුලු හැරීමට හැකිය."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"යම් කෙනෙක් එය ඔබගේ ඇඟිල්ලට තබාගෙන සිටින විට වැනි, ඔබ අදහස් නොකරන විටක ඔබගේ දුරකථනය අගුලු හැරීමට හැකිය."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"කිසිවෙකු ඔබේ ටැබ්ලටය ඔබගේ ඇඟිල්ලට තබා ගෙන සිටින විට වැනි, ඔබ අදහස් නොකරන විටක ඔබගේ දුරකථනය අගුලු හැරීමට හැකි ය."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"කිසිවෙකු ඔබේ උපාංගය ඔබගේ ඇඟිල්ලට තබා ගෙන සිටින විට වැනි, ඔබ අදහස් නොකරන විටක ඔබගේ දුරකථනය අගුලු හැරීමට හැකි ය."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"යම් කෙනෙක් එය ඔවුන්ගේ ඇඟිල්ලට තබාගෙන සිටින විට වැනි, ඔවුන් අදහස් නොකරන විටක ඔබගේ දරුවාගේ දුරකථනය අගුලු හැරීමට හැකිය."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"හොඳම ප්‍රතිඵල සඳහා, සහතික කළ Google සඳහා තනන ලද තිර ආරක්ෂකයක් භාවිත කරන්න. වෙනත් තිර ආරක්ෂක සමඟ, ඔබ‍ගේ ඇඟිලි සලකුණ ක්‍රියා නොකරනු ඇත."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"හොඳම ප්‍රතිඵල සඳහා, සහතික කළ Google සඳහා තනන ලද තිර ආරක්ෂකයක් භාවිත කරන්න. වෙනත් තිර ආරක්ෂක සමඟ, ඔබ‍ගේ දරුවාගේ ඇඟිලි සලකුණ ක්‍රියා නොකළ හැකිය."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"උපාංගයේ ඇඟිලි සලකුණු සංවේදකයේ පිහිටීම නිරූපණය"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"නම‍"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"හරි"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"නැවත උත්සාහ කරන්න"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"මකන්න"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"සංවේදකය ස්පර්ශ කරන්න"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"ඔබගේ ඇඟිල්ල සංවේදකය මත තබා කම්පනයක් දැනෙන විට ඔසවන්න"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"නිමයි"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"අපොයි, එය සංවේදකය නොවෙයි"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"දුරකථනය පිටුපස ඇති සංවේදකය ස්පර්ශ ක. දබරැඟිල්ල භාවිත ක."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"බඳවා ගැනීම අවසන් නොකරන ලදී"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"ඇඟිලි සලකුණ ඇතුළත් කිරිමේ කාල සීමාව ළඟා විය. නැවත උත්සාහ කරන්න."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"ඇඟිලි සලකුණු සැකසීමේ කාලය නිමා විය"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"නැවත උත්සාහ කරන්න, නැතහොත් සැකසුම් වෙත පිවිස පසුව ඔබේ ඇඟිලි සලකුණ සකසන්න"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"ඇඟිලි සලකුණ ඇතුළත් කිරිම ක්‍රියා කළේ නැත. නැවත උත්සාහ කරන්න, නැතහොත් වෙනත් ඇඟිල්ලක් භාවිත කරන්න."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"තවත් එකක් එක් කරන්න"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"මීළඟ"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"ඔබේ දුරකථනය අභිරුචිකරණය කරන්න"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"වෙනත් මෝස්තර, වෝල්පේපර, සහ තවත් ඒවා උත්සාහ කරන්න"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"තිර සුරැකුම"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"තිර සුරැකුම"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"තිර සුරැකුම භාවිත කරන්න"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ආරෝපණය හෝ ඩොක් කර ඇති විට"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"දෙකෙන් එකක්"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ආරෝපණය වන අතරතුර"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ඩොක් කර ඇති විට"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"කවදාවත් නෑ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"අක්‍රියයි"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"දුරකථනය රඳවා ඇති විට සහ/හෝ නිද්‍රාවේ ඇති විට සිදු වන දේ පාලනය කිරීමට, තිර සුරැකුම ක්‍රියාත්මක කරන්න."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"පටන් ගන්න මොන වේලාවටද"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"වර්තමාන තිර සුරැකුම"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"සැකසීම්"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ස්වයංක්‍රිය දීප්තිය"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"අවදි කිරීමට ඔසවන්න"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ස්ථානික සංදර්ශකය"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN අංකයක් සකසන්න"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"කාර්යාල PIN එකක් සකසන්න"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"රටාවක් සකසන්න"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"එක් කළ ආරක්ෂාව සඳහා, උපාංගය අගුලු හැරීමට රටාවක් සකසන්න"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"කාර්යාල රටාවක් සකසන්න"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ඇඟිලි සලකුණ භාවිත කිරීමට, මුරපදයක් සකසන්න"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ඇඟිලි සලකුණ භාවිත කිරීමට, රටාවක් සකසන්න"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"හදිසි යෙදුම"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"යෙදුම් මනාප නැවත සකසන්න"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"යෙදුම් මනාප නැවත සකසන්නද?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"මෙය මේ සඳහා සියලු මනාප යළි සකසනු ඇත:\n\n"<li>"අබලිත යෙදුම්"</li>\n<li>"අබලිත යෙදුම් දැනුම්දීම්"</li>\n<li>"ක්‍රියා සඳහා පෙරනිමි යෙදුම්"</li>\n<li>"යෙදුම් සඳහා පසුබිම් දත්ත සීමා කිරීම්"</li>\n<li>"ඕනෑම අවසර සීමා"</li>\n\n"ඔබට යෙදුම් දත්ත කිසිවක් අහිමි නොවනු නැත."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"මෙය මේ සඳහා සියලු මනාප යළි සකසනු ඇත:\n\n"<li>"අබලිත යෙදුම්"</li>\n<li>"අබලිත යෙදුම් දැනුම්දීම්"</li>\n<li>"ක්‍රියා සඳහා පෙරනිමි යෙදුම්"</li>\n<li>"යෙදුම් සඳහා පසුබිම් දත්ත සීමා කිරීම්"</li>\n<li>"ඕනෑම අවසර සීමා"</li>\n<li>"බැටරි භාවිත සැකසීම්"</li>\n\n"ඔබට යෙදුම් දත්ත කිසිවක් අහිමි නොවනු ඇත."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"යෙදුම් මනාප නැවත සකසන්න"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"ඉඩ කළමනාකරණය"</string>
     <string name="filter" msgid="9039576690686251462">"පෙරහන කරන්න"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"සැකසීම් යළි සකසන්න"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"සංදර්ශක තරම සහ පෙළ සැකසීම් යළි සකසා ඇත"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"සංදර්ශක තරම සහ පෙළ යළි සකසන්නද?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ඔබගේ සංදර්ශක තරම සහ පෙළ මනාප දුරකථනයේ මුල් සැකසීම් වෙත යළි සකසනු ඇත"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ඔබගේ සංදර්ශක තරම සහ පෙළ මනාප දුරකථනයේ මුල් සැකසීම් වෙත යළි සකසනු ඇත"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ඔබේ සංදර්ශක තරම සහ පාඨ මනාප ටැබ්ලටයේ මුල් සැකසීම් වෙත සකසයි"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"යළි සකසන්න"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"සති අන්තයේ මොකද කරන්නේ?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"මුහුදු වෙරළට යනවා. එක් වීමට කැමති ද?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"අවසන් පූර්ණ ආරෝපණයේ සිට භාවිත කර නැත"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"පසුගිය පැය 24 සඳහා භාවිතයක් නැත"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"වෙනත් පරිශීලකයින්"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ඉතිරිව ඇති බැටරි ඇස්තමේන්තුව ඔබගේ උපාංග භාවිතය මත පදනම් වේ"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"ඇස්තමේන්තුගත ඉතිරි කාලය"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"පූර්ණ ආරෝපණය වන තෙක්"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"සම්පුර්ණ අණවදන සහ අන්තර්ක්‍රියාව"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"සරළ කථනයෙන් පෙළට"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"හඬ නිරීක්ෂණය කිරීම සැමවිටම සක්‍රියව තැබීමට සහ ඔබ වෙනුවෙන් හඬ සබල කර ඇති යෙදුම් පාලනය කිරීමට හැකියාව හඬ ආදාන සේවාවට තිබේ. <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> යෙදුමෙන් එය පැමිණේ. මෙම සේවාවේ භාවිතා කිරීම සබල කරන්නද?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"උපාංගයේ හැඳුනුම් සැකසුම්"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"උපාංගය මත හඳුනා ගැනීම"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"උපාංගය මත කථන හඳුනා ගැනීම"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"මනාප යාන්ත්‍රණය"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"යාන්ත්‍රණ සැකසීම්"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"කථන අනුපාතය සහ තාරතාව"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"මකන්න"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"මෙම සැසියේ සියළුම යෙදුම් සහ දත්ත මකාවී."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"ඉවත් කරන්න"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ආගන්තුකයා (ඔබ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"පරිශීලකයින්"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"වෙනත් පරිශීලකයින්"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"ආගන්තුක ක්‍රියාකාරකම් මකන්න"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ආගන්තුක ප්‍රකාරයෙන් පිටවන විට සියලු ආගන්තුක යෙදුම් සහ දත්ත මකන්න"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"ආගන්තුක ක්‍රියාකාරකම මකන්නද?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"මෙම ආගන්තුක සැසියේ යෙදුම් සහ දත්ත දැන් මකනු ඇති අතර, ඔබ ආගන්තුක ප්‍රකාරයෙන් පිටවන සෑම අවස්ථාවකම අනාගත ආගන්තුකයන්ගේ ක්‍රියාකාරකම් සියල්ල මකනු ඇත"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"දුරකථන ඇමතුම් ක්‍රියාත්මක කරන්න"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"දුරකථන ඇමතුම් සහ SMS ක්‍රියාත්මක කරන්න?"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"පරිශීලකයා මකන්න"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"සියලු \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" දැනුම් දීම්"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"සියලු <xliff:g id="APP_NAME">%1$s</xliff:g> දැනුම් දීම්"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"අනුවර්තී දැනුම්දීම්"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">දිනකට දැනුම්දීම් ~<xliff:g id="NUMBER_1">%,d</xliff:g> ක්</item>
-      <item quantity="other">දිනකට දැනුම්දීම් ~<xliff:g id="NUMBER_1">%,d</xliff:g> ක්</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">දිනකට දැනුම්දීම් <xliff:g id="NUMBER_1">%,d</xliff:g>ක් පමණ</item>
+      <item quantity="other">දිනකට දැනුම්දීම් <xliff:g id="NUMBER_1">%,d</xliff:g>ක් පමණ</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">සතියකට දැනුම්දීම් ~<xliff:g id="NUMBER_1">%,d</xliff:g> ක්</item>
-      <item quantity="other">සතියකට දැනුම්දීම් ~<xliff:g id="NUMBER_1">%,d</xliff:g> ක්</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">සතියකට දැනුම්දීම් <xliff:g id="NUMBER_1">%,d</xliff:g>ක් පමණ</item>
+      <item quantity="other">සතියකට දැනුම්දීම් <xliff:g id="NUMBER_1">%,d</xliff:g>ක් පමණ</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"කිසි විටක නැත"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"උපාංගය සහ යෙදුම් දැනුම්දීම්"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"කිසිවක් නොකරන්න"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"කම්පනය"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"නිහඬ කරන්න"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"සබල කිරීමට, පළමුව බල මෙනුවට \"බල බොත්තම ඔබා අල්ලාගෙන සිටින්න\" යන්න වෙනස් කරන්න."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"සබල කිරීම සඳහා, පළමුව බල මෙනුවට \"බල බොත්තම ඔබා සිටින්න\" යන්න වෙනස් කරන්න."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"ජාල විස්තර"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"ඔබගේ උපාංගයේ නම ඔබගේ දුරකථනයේ යෙදුම්වලට දෘශ්‍යමානය. ඔබ බ්ලූටූත්වලට සම්බන්ධ වූ විට හෝ Wi-Fi හොට්ස්පොට් එකක් පිහිටු වූ විට වෙනත් පුද්ගලයන්ද එය දැකිය හැකිය."</string>
     <string name="devices_title" msgid="649715719278562515">"උපාංග"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"උපාංග පාලන"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"කාඩ්පත් &amp; ප්‍රවේශපත්"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"කාඩ්පත් &amp; ප්‍රවේශපත්"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"බල බොත්තම ඔබා අල්ලාගෙන සිටින්න"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"සහායක සඳහා ඔබා අල්ලාගෙන සිටින්න"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"බල මෙනුව සඳහා ඔබා අල්ලාගෙන සිටින්න"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"අබලයි ඔබා අල්ලාගෙන සිටින්න"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"බල බොත්තම ඔබා සිටින්න"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"ප්‍රවේශ වීමට බල බොත්තම ඔබා සිටින්න"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"බල මෙනුව"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ඩිජිටල් සහායක"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ඩිජිටල් සහායක වෙත ප්‍රවේශ වන්න"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"බල මෙනුවට ප්‍රවේශ වන්න"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"භාවිත කිරීමට, පළමුව තීර අගුල සකසන්න"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"සහායක සඳහා රඳවා ගන්න"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"බල බොත්තම තද කර ගෙන සිටීමෙන් සහායක ප්‍රේරණය කරන්න"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"බලය සහ හදිසි අවස්ථා මෙනුව:\nඑකම අවස්ථාවේදී බලය සහ හඬ ඉහළට බොත්තම ඔබන්න."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"නාද වීම වළක්වන්න:\nකෙටි මග හඬ පරිමා මෙනුවෙහි තිබේ."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"බල මෙනුව:\nබල බොත්තම සහ හඬ පරිමාව වැඩි කිරීමේ බොත්තම එකවර ඔබන්න"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"නාද වීම වළක්වන්න:\nකෙටිමඟ සඳහා ශබ්ද බොත්තමක් ඔබන්න"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"ඔබා අල්ලාගෙන සිටින කාල සීමාව"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"බල බොත්තම කොපමණ වේලාවක් ඔබා අල්ලාගෙන සිටින්නේද යන්න තෝරා සංවේදීතාව සීරුමාරු කරන්න"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"කෙටි"</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 932821d..2f94c71 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Keď použije Pixel Imprint, model odtlačku prsta sa aktualizuje pomocou príslušných fotiek. Fotky, pomocou ktorých bol vytvorený model prsta vášho dieťaťa, sa za žiadnych okolností neukladajú. Model odtlačku prsta je bezpečne uložený v telefóne a nikdy ho neopustí. Všetko sa bezpečne spracúva v telefóne."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"V Nastaveniach môžete kedykoľvek odstrániť obrázky aj model odltačku prsta alebo vypnúť odomknutie odtlačkom prsta. Obrázky a modely odtlačku prsta sú uložené v telefóne, dokým ich neodstránite."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Vy a vaše dieťa môžete v Nastaveniach kedykoľvek fotky a model odtlačku prsta odstrániť alebo odomknutie odtlačkom prsta vypnúť. Fotky a modely odtlačku prsta sú uložené v telefóne, kým ich neodstránite."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefón môže byť odomknutý, aj keď to nechcete, napríklad keď ho niekto priloží k vášmu prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefón môže byť odomknutý, aj keď to nechcete, napríklad keď ho niekto priloží k vášmu prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tablet môže byť odomknutý, aj keď to nechcete, napríklad keď ho niekto priloží k vášmu prstu."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Zariadenie môže byť odomknuté aj keď to nechcete, napríklad keď ho niekto priloží k vášmu prstu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefón vášho dieťaťa sa dá odomknúť aj náhodne, napríklad keď naň niekto priloží prst."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Najlepšie výsledky dosiahnete, keď použijete ochranu obrazovky s certifikátom Made for Google. S inými ochranami obrazovky nemusí odtlačok prsta fungovať."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Najlepšie výsledky dosiahnete, keď použijete ochranu obrazovky s certifikátom Made for Google. S inými ochranami obrazovky nemusí odtlačok prsta vášho dieťa fungovať."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustrácia zariadenia a umiestnenia senzora odtlačku prsta"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Názov"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Skúsiť znova"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Odstrániť"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Dotknite sa senzora"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Priložte prst k senzoru a zdvihnite ho, keď zacítite vibráciu"</string>
@@ -601,8 +604,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Hotovo"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ojoj, to nie je senzor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Dotknite sa senzora na zadnej strane telefónu. Použite ukazovák."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registrácia nebola dokončená"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Časový limit registrácie odtlačku prsta vypršal. Skúste to znova."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Nastavenie odtlačku prsta vypršalo"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Skúste to znova alebo odtlačok nastavte neskôr v Nastaveniach"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registrácia odtlačku prsta nefungovala. Skúste to znova alebo použite iný prst."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Pridať ďalší"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Ďalej"</string>
@@ -1490,17 +1493,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Prispôsobenie telefónu"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Vyskúšajte rôzne štýly, tapety atď."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Šetrič obrazovky"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"šetrič obrazovky"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Použiť šetrič obrazovky"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Pri nabíjaní alebo v doku"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"V oboch prípadoch"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Pri nabíjaní"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Pri vložení do doku"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nikdy"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Vypnuté"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Ak chcete ovládať, čo sa má stať, keď je telefón v doku alebo v režime spánku, zapnite šetrič obrazovky."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Čas spustenia"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Aktuálny šetrič obrazovky"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Nastavenia"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatický jas"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Prebudiť zdvihnutím"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambientné zobrazenie"</string>
@@ -1992,6 +1993,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Nastavte si PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Nastavenie pracovného kódu PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Nastavenie vzoru"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"V záujme zvýšenia zabezpečenia nastavte vzor na odomknutie zariadenia"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Nastavenie pracovného vzoru"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Ak chcete použiť odtlačok prsta, nastavte heslo"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Ak chcete použiť odtlačok prsta, nastavte vzor"</string>
@@ -2149,7 +2151,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikácia pre tiesňové volania"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Resetovať nastavenia aplikácií"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Chcete resetovať nastavenia aplikácií?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Táto akcia resetuje predvoľby \n\n"<li>"zakázaných aplikácií;"</li>\n<li>"upozornení zakázaných aplikácií;"</li>\n<li>"predvolených aplikácií pre akcie;"</li>\n<li>"obmedzení dát na pozadí pre aplikácie;"</li>\n<li>"akýchkoľvek obmedzení povolení."</li>\n\n"Neprídete o žiadne dáta aplikácií."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Touto akciou resetujete nasledujúce nastavenia:\n\n"<li>"deaktivované aplikácie,"</li>\n<li>"deaktivované upozornenia aplikácií,"</li>\n<li>"predvolené aplikácie pre rôzne akcie,"</li>\n<li>"obmedzenia dát na pozadí pre aplikácie,"</li>\n<li>"všetky obmedzenia povolení"</li>\n<li>"nastavenia spotreby batérie."</li>\n\n"Neprídete o žiadne dáta aplikácií."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Obnoviť aplikácie"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Spravovať pamäť"</string>
     <string name="filter" msgid="9039576690686251462">"Filtrovať"</string>
@@ -2404,7 +2406,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Resetovať nastavenia"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Nastavenia veľkosti obrazovky a textu boli resetované"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Chcete resetovať veľkosť zobrazenia a textu?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Veľkosť zobrazenia a predvoľby textu budú resetované na pôvodné nastavenia telefónu"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Veľkosť zobrazenia a predvoľby textu budú resetované na pôvodné nastavenia telefónu"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Veľkosť zobrazenia a predvoľby textu budú resetované na pôvodné nastavenia tabletu"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Resetovať"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Máš nejaké plány na víkend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Chystám sa na pláž. Chceš sa pridať?"</string>
@@ -3012,6 +3015,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Žiadne použitie od posledného úplného dobitia"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Žiadne použitie za posledných 24 hodín"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Ďalší používatelia"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Odhad zostávajúcej batérie vychádza z vášho používania zariadenia"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Odhadovaný zostávajúci čas:"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Do úplného dobitia"</string>
@@ -3101,6 +3105,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Úplná aktivácia kľúčových slov a interakcia"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Jednoduchý prevod reči na text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Táto služba hlasového vstupu bude môcť neustále monitorovať hlas a ovládať za vás aplikácie so zapnutým hlasovým vstupom. Pochádza z aplikácie <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Chcete povoliť používanie tejto služby?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Nastavenia rozpoznávania v zariadení"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Rozpoznávanie v zariadení"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Rozpoznávanie reči v zariadení"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Preferovaný nástroj"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Nastavenia nástroja"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Rýchlosť reči a výška hlasu"</string>
@@ -3501,6 +3508,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Odstrániť"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Všetky aplikácie a údaje v tejto relácii budú odstránené."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Odstrániť"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Hosť (vy)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Používatelia"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Ďalší používatelia"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Odstrániť aktivitu hosťa"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Odstrániť všetky aplikácie a údaje hosťa pri ukončení režimu pre hostí"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Chcete odstrániť aktivitu hosťa?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplikácie a údaje z tejto relácie hosťa sa teraz odstránia a budúca aktivita hosťa sa odstráni vždy pri ukončení režimu pre hostí"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Zapnúť telefonické hovory"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Zapnúť telefonáty a SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Odobrať používateľa"</string>
@@ -4097,17 +4111,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Všetky upozornenia aplikácie <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Všetky upozornenia aplikácie <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Adaptívne upozornenia"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> upozornenia denne</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> upozornení denne</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> upozornenie denne</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="few">Približne <xliff:g id="NUMBER_1">%,d</xliff:g> upozornenia denne</item>
+      <item quantity="many">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per day</item>
+      <item quantity="other">Približne <xliff:g id="NUMBER_1">%,d</xliff:g> upozornení denne</item>
+      <item quantity="one">Približne <xliff:g id="NUMBER_0">%d</xliff:g> upozornenie denne</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> upozornenia týždenne</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> upozornení týždenne</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> upozornenie týždenne</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="few">Približne <xliff:g id="NUMBER_1">%,d</xliff:g> upozornenia týždenne</item>
+      <item quantity="many">About <xliff:g id="NUMBER_1">%,d</xliff:g> notifications per week</item>
+      <item quantity="other">Približne <xliff:g id="NUMBER_1">%,d</xliff:g> upozornení týždenne</item>
+      <item quantity="one">Približne <xliff:g id="NUMBER_0">%d</xliff:g> upozornenie týždenne</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nikdy"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Upozornenia v zariadeniach a aplikáciách"</string>
@@ -5425,7 +5439,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Nerobiť nič"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibrovať"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Vypnúť zvuk"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Ak chcete túto možnosť povoliť, najprv zmeňte Pridržať vypínač na ponuku vypínača."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Ak chcete túto funkciu zapnúť, najprv zmeňte možnosť Pridržanie vypínača na ponuku vypínača."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Podrobnosti siete"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Názov zariadenia uvidia aplikácie v telefóne. Keď sa pripojíte k zariadeniam s rozhraním Bluetooth alebo sieti Wi‑Fi, prípadne ak nastavíte hotspot Wi‑Fi, môžu ho uvidieť aj ostatní ľudia."</string>
     <string name="devices_title" msgid="649715719278562515">"Zariadenia"</string>
@@ -5718,15 +5732,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ovládanie zariadení"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Karty a lístky"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"karty a lístky"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Pridržanie vypínača"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Pridržaním aktivovať Asistenta"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Pridržaním zobrazte ponuku vypínača"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Pridržte, je deaktivovaný"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Pridržanie vypínača"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Prístup získate pridržaním vypínača"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Ponuka vypínača"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitálny asistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Prístup k digitálnemu asistentovi"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Otvorenie ponuky vypínača"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Pred použitím je potrebné nastaviť zámku obrazovky"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Pridržaním aktivovať Asistenta"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Spustiť Asistenta pridržaním vypínača"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Ponuka vypínača a stavu tiesne:\nNaraz stlačte vypínač a tlačidlo zvýšenia hlasitosti."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Nezvoniť:\nskratka v ponuke hlasitosti."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Ponuka vypínača:\nstlačte naraz vypínač a tlačidlo zvýšenia hlasitosti"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Vypnutie zvonenia:\nskratku zobrazíte stlačením tlačidla hlasitosti"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Trvanie pridržania"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Upravte citlivosť tak, že vyberiete, ako dlho treba pridržať vypínač"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Krátke"</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 9bfa8ce..1ac239e 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Ko otrok uporablja Pixel Imprint, se model prstnega odtisa posodablja s slikami iz teh interakcij. Slike, iz katerih je ustvarjen model otrokovega prstnega odtisa, se nikoli ne shranijo, model prstnega odtisa pa se varno shrani v telefon in ga nikoli ne zapusti. Celotna obdelava je izvedena varno v telefonu."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"V nastavitvah lahko kadar koli izbrišete slike in model prstnega odtisa ali izklopite odklepanje s prstnim odtisom. Slike in modeli prstnih odtisov so shranjeni v telefonu, dokler jih ne izbrišete."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Vi in otrok lahko v nastavitvah kadar koli izbrišete slike in model prstnega odtisa ali izklopite odklepanje s prstnim odtisom. Slike in modeli prstnega odtisa so shranjeni v telefonu, dokler niso izbrisani."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefon lahko odklenete tudi nenamerno, na primer če ga nekdo podrži pred vašim prstom."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefon lahko odklenete tudi nenamerno, na primer če ga nekdo podrži pred vašim prstom."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tablični računalnik je mogoče odkleniti tudi nenamerno, na primer če ga nekdo podrži pred vašim prstom."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Napravo je mogoče odkleniti tudi nenamerno, na primer če jo nekdo podrži pred vašim prstom."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Otrokov telefon je mogoče odkleniti tudi nenamerno, na primer če ga nekdo podrži pred njegovim prstom."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Za najboljše rezultate uporabljajte zaščito zaslona, ki ima potrdilo »Narejeno za Google«. Če uporabljate druge zaščite zaslona, prstni odtis morda ne bo deloval."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Za najboljše rezultate uporabljajte zaščito zaslona, ki ima potrdilo »Narejeno za Google«. Če uporabljate druge zaščite zaslona, otrokov prstni odtis morda ne bo deloval."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustracija z napravo in lokacijo tipala prstnih odtisov"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Ime"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"V redu"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Poskusite znova"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Izbriši"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Dotaknite se tipala"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Prst položite na tipalo in ga dvignite, ko začutite vibriranje."</string>
@@ -601,8 +604,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Končano"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Ups, to ni tipalo"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"S kazalcem se dotaknite tipala na hrbtni strani telefona."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registracija ni bila dokončana"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Dosežena je časovna omejitev za registracijo prstnega odtisa. Poskusite znova."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Čas za nastavitev prstnega odtisa je potekel."</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Poskusite znova zdaj ali nastavite prstni odtis pozneje v nastavitvah."</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Registracija prstnega odtisa ni uspela. Poskusite znova ali uporabite drug prst."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Dodaj še enega"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Naprej"</string>
@@ -1490,17 +1493,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Prilagajanje telefona"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Preizkusite različne sloge, ozadja in drugo"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Ohranjevalnik zaslona"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ohranjevalnik zaslona"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Uporabi ohranjevalnik zaslona"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Med polnjenjem ali v stojalu"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Eno ali drugo"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Med polnjenjem"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Ko je v stojalu"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Nikoli"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Izklopljeno"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Če želite nadzirati, kaj se dogaja, ko je telefon na nosilcu in/ali v stanju pripravljenosti, vklopite ohranjevalnik zaslona."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kdaj naj se zažene"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Trenutni ohranjevalnik zaslona"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Nastavitve"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Samodejna svetlost"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Preklop iz stanja pripravlj. z dviganjem"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Prikaz na podlagi okolja"</string>
@@ -1992,6 +1993,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Nastavite kodo PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Nastavitev kode PIN za službo"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Nastavite vzorec"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Za večjo varnost nastavite vzorec za odklepanje naprave."</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Nastavitev vzorca za službo"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Nastavite geslo za prstni odtis"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Nastavite vzorec za prstni odtis"</string>
@@ -2149,7 +2151,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikacija v sili"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Ponastavitev nastavitev aplikacij"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Želite ponastaviti nastavitve aplikacij?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"S tem bodo ponastavljene vse nastavitve za:\n\n"<li>" onemogočene aplikacije,"</li>\n<li>" obvestila za onemogočene aplikacije,"</li>\n<li>" privzete aplikacije za dejanja,"</li>\n<li>" omejitve prenosa podatkov v ozadju za aplikacije,"</li>\n<li>" omejitve dovoljenj."</li>\n\n" Podatkov aplikacij ne boste izgubili."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"S tem bodo ponastavljene vse nastavitve za:\n\n"<li>"onemogočene aplikacije,"</li>\n<li>"onemogočena obvestila aplikacij,"</li>\n<li>"privzete aplikacije za dejanja,"</li>\n<li>"omejitev prenosa podatkov v ozadju za aplikacije,"</li>\n<li>"omejitve dovoljenj,"</li>\n<li>"porabo energije baterije."</li>\n\n"Podatkov iz aplikacij ne boste izgubili."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Ponastavi aplikacije"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Upravljaj prostor"</string>
     <string name="filter" msgid="9039576690686251462">"Filtriraj"</string>
@@ -2404,7 +2406,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Ponastavi nastavitve"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Nastavitve besedila in velikosti prikaza so bile ponastavljene."</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Želite ponastaviti velikost prikaza in besedilo?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Nastavitve velikosti prikaza in besedila bodo ponastavljene na prvotne nastavitve telefona."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Nastavitve velikosti prikaza in besedila bodo ponastavljene na prvotne nastavitve telefona."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Nastavitve besedila in velikosti prikaza bodo ponastavljene na prvotne nastavitve tabličnega računalnika."</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Ponastavi"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Imaš kakšne načrte za konec tedna?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Odpravljam se na Obalo. Greš zraven?"</string>
@@ -3012,6 +3015,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Ni bilo uporabe od zadnje polne napolnjenosti."</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Ni bilo uporabe v zadnjih 24 urah."</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Drugi uporabniki"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Ocena preostalega časa delovanja na baterijsko napajanje temelji na načinu uporabe naprave."</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Približni preostali čas"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Do napolnjenosti"</string>
@@ -3101,6 +3105,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Polna uporaba sprožilnih besed in govora"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Pretvorba preprostega govora v besedilo"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Storitev glasovnega vnosa bo lahko izvajala stalno vklopljeno nadziranje glasu in v vašem imenu upravljala aplikacije, ki omogočajo glasovno upravljanje. Storitev izvira iz aplikacije <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Želite omogočiti njeno uporabo?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Nastavitve prepoznavanja v napravi"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Prepoznavanje v napravi"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Prepoznavanje govora v napravi"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Prednostni mehanizem"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Nastavitve mehanizma"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Hitrost in višina tona govora"</string>
@@ -3501,6 +3508,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Izbriši"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Vse aplikacije in podatki v tej seji bodo izbrisani."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Odstrani"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gost (vi)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Uporabniki"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Drugi uporabniki"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Izbriši dejavnost gosta"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Brisanje vseh aplikacij in podatkov gosta ob zaprtju načina za goste"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Želite izbrisati dejavnost gosta?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Aplikacije in podatki v tej seji gosta bodo zdaj izbrisani, prihodnja dejavnost gosta pa bo izbrisana vsakič, ko zaprete način za goste."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Vklopi telefonske klice"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Vklop telefonskih klicev in sporočil SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Brisanje uporabnika"</string>
@@ -4097,17 +4111,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Vsa obvestila aplikacije »<xliff:g id="APP_NAME">%1$s</xliff:g>«"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Vsa obvestila aplikacije <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Prilagodljiva obvestila"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~ <xliff:g id="NUMBER_1">%,d</xliff:g> obvestilo na dan</item>
-      <item quantity="two">~ <xliff:g id="NUMBER_1">%,d</xliff:g> obvestili na dan</item>
-      <item quantity="few">~ <xliff:g id="NUMBER_1">%,d</xliff:g> obvestila na dan</item>
-      <item quantity="other">~ <xliff:g id="NUMBER_1">%,d</xliff:g> obvestil na dan</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obvestilo na dan</item>
+      <item quantity="two">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obvestili na dan</item>
+      <item quantity="few">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obvestila na dan</item>
+      <item quantity="other">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obvestil na dan</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~ <xliff:g id="NUMBER_1">%,d</xliff:g> obvestilo na teden</item>
-      <item quantity="two">~ <xliff:g id="NUMBER_1">%,d</xliff:g> obvestili na teden</item>
-      <item quantity="few">~ <xliff:g id="NUMBER_1">%,d</xliff:g> obvestila na teden</item>
-      <item quantity="other">~ <xliff:g id="NUMBER_1">%,d</xliff:g> obvestil na teden</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obvestilo na teden</item>
+      <item quantity="two">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obvestili na teden</item>
+      <item quantity="few">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obvestila na teden</item>
+      <item quantity="other">Približno <xliff:g id="NUMBER_1">%,d</xliff:g> obvestil na teden</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Nikoli"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Obvestila naprave in aplikacij"</string>
@@ -5425,7 +5439,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ne naredi ničesar"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibriranje"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Izklop zvoka"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Če želite omogočiti, najprej spremenite »Pridržanje gumba za vklop« na meni za vklop/izklop."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Če želite omogočiti, najprej spremenite »Pridržanje gumba za vklop« na meni za vklop/izklop."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Podatki o omrežju"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Ime naprave je vidno aplikacijam v telefonu. Ko vzpostavite povezavo z napravami Bluetooth ali omrežjem Wi-Fi ali nastavite dostopno točko Wi-Fi, ga bodo morda videle tudi druge osebe."</string>
     <string name="devices_title" msgid="649715719278562515">"Naprave"</string>
@@ -5718,15 +5732,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"kontrolniki naprave"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartice in vstopnice"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartice in vstopnice"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Pridržanje gumba za vklop"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Pritisnite in pridržite za Pomočnika."</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Pridržanje za meni za vklop/izklop"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Pridržanje je onemogočeno."</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Pridržanje gumba za vklop"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Pridržanje gumba za vklop omogoči dostop do:"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Meni za vklop/izklop"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digitalni pomočnik"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Dostop do digitalnega pomočnika"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Dostop do menija za vklop/izklop"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Za uporabo najprej nastavite zaklepanje zaslona."</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Pridržanje za Pomočnika"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Sprožite Pomočnika tako, da pridržite gumb za vklop."</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Meni za vklop/izklop in nujne primere:\nSočasno pritisnite gumba za vklop in povečanje glasnosti."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Preprečevanje zvonjenja:\nBližnjica je na voljo v meniju za glasnost."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Meni za vklop/izklop:\nHkrati pritisnite gumb za vklop in gumb za povečanje glasnosti ter ju pridržite."</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Preprečevanje zvonjenja:\nZa bližnjico pritisnite gumb za glasnost."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Dolžina pridržanja"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Prilagodite občutljivost z izbiro dolžine pridržanja gumba za vklop."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kratko"</string>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index 53ee141..433a186 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Kur të përdorë Pixel Imprint, imazhet përdoren për të përditësuar modelin e tij të gjurmës së gishtit. Imazhet e përdorura për të krijuar modelin e gjurmës së gishtit të fëmijës tënd nuk ruhen asnjëherë, por modeli i gjurmës së gishtit ruhet në mënyrë të sigurt në telefon dhe nuk largohet kurrë nga telefoni. I gjithë përpunimi ndodh në mënyrë të sigurt në telefon."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Mund t\'i fshish imazhet dhe modelin e gjurmës sate të gishtit ose çaktivizoje \"Shkyçjen me gjurmën e gishtit\" në çdo kohë te \"Cilësimet\". Imazhet dhe modelet e gjurmës së gishtit ruhen në telefon deri kur t\'i fshish."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Ti dhe fëmija yt mund t\'i fshini imazhet dhe modelin e gjurmës së tij të gishtit ose ta çaktivizoni \"Shkyçjen me gjurmën e gishtit\" në çfarëdo kohe te \"Cilësimet\". Imazhet dhe modelet e gjurmës së gishtit ruhen në telefon derisa të fshihen."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefoni yt mund të shkyçet edhe nëse nuk ke për qëllim një gjë të tillë, p.sh. nëse dikush ta mban te gishti."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefoni yt mund të shkyçet edhe nëse nuk ke për qëllim një gjë të tillë, p.sh. nëse dikush ta mban te gishti."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tableti yt mund të shkyçet edhe nëse nuk ke për qëllim një gjë të tillë, p.sh. nëse dikush ta mban te gishti."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Pajisja jote mund të shkyçet edhe nëse nuk ke për qëllim një gjë të tillë, p.sh. nëse dikush ta mban te gishti."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefoni i fëmijës tënd mund të shkyçet pa dashje, si p.sh. nëse dikush ia mban te gishti."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Për rezultate më të mira, përdor një mbrojtës ekrani që është i certifikuar nga \"Prodhuar për Google\". Me mbrojtës të tjerë ekrani, gjurma jote e gishtit mund të mos funksionojë."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Për rezultate më të mira, përdor një mbrojtës ekrani që është i certifikuar nga \"Prodhuar për Google\". Me mbrojtës të tjerë ekrani, gjurma e gishtit e fëmijës tënd mund të mos funksionojë."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ilustrim me pajisjen dhe vendndodhjen e sensorit të gjurmës së gjishtit"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Emri"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Në rregull"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Provo sërish"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Fshi"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Prek sensorin"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Vendose gishtin mbi sensor dhe ngrije pasi të ndjesh një dridhje"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"U krye"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Jo, sensori nuk është ai"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Prek sensorin në pjesën e pasme të telefonit. Përdor gishtin tregues."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Regjistrimi nuk përfundoi"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"U arrit kufiri kohor për regjistrimin e gjurmës së gishtit. Provo përsëri."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Konfigurimi i gjurmës së gishtit skadoi"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Provo sërish tani ose konfiguro gjurmën e gishtit më vonë te \"Cilësimet\""</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Regjistrimi i gjurmës së gishtit nuk funksionoi. Provo përsëri ose përdor një gisht tjetër."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Shto një tjetër"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Para"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Personalizo telefonin"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Provo stile, imazhe sfondi të ndryshme etj."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Mbrojtësi i ekranit"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"mbrojtësi i ekranit"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Përdor mbrojtësin e ekranit"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Gjatë karikimit ose lidhjes me stacionin"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Në të dyja rastet"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Gjatë karikimit"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Kur vendoset në stacion"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Asnjëherë"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Çaktivizuar"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Për të kontrolluar se çfarë ndodh kur telefonin e vendos te stacioni dhe/ose në gjumë, aktivizo mbrojtësin e ekranit."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kur të fillojë"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Mbrojtësi aktual i ekranit"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Cilësimet"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Ndriçimi automatik"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Ngrije për ta zgjuar"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Shfaqja e ambientit"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Cakto një kod PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Cakto një kod PIN për punën"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Cakto një motiv"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Për më shumë siguri, cakto një motiv për shkyçjen e pajisjes"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Cakto një motiv për punën"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Për të përdorur gjurmën e gishtit, vendos fjalëkalimin"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Për të përdorur gjurmën e gishtit, vendos motivin"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Aplikacioni i emergjencave"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Rivendos preferencat e apl."</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Të rivendosen preferencat e aplikacionit?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Kjo do t\'i rivendosë të gjitha preferencat për:\n\n"<li>" Aplikacionet e çaktivizuara"</li>\n<li>" Njoftimet e aplikacioneve të çaktivizuara"</li>\n<li>" Aplikacionet e parazgjedhura për veprimet"</li>\n<li>" Kufizimet e të dhënave në sfond për aplikacionet"</li>\n<li>" Çdo kufizim të autorizimeve"</li>\n\n" Nuk do të humbësh asnjë të dhënë aplikacioni."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Kjo do t\'i rivendosë të gjitha preferencat për:\n\n"<li>"Aplikacionet e çaktivizuara"</li>\n<li>"Njoftimet e aplikacioneve të çaktivizuara"</li>\n<li>"Aplikacionet e parazgjedhura për veprimet"</li>\n<li>"Kufizimet e të dhënave në sfond për aplikacionet"</li>\n<li>"Kufizimet e lejeve"</li>\n<li>"Cilësimet e përdorimit të baterisë"</li>\n\n"Nuk do të humbasësh asnjë të dhënë të aplikacionit."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Rivendos aplikacionet"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Menaxho hapësirën"</string>
     <string name="filter" msgid="9039576690686251462">"Filtro"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Rivendos cilësimet"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Cilësimet e madhësisë së ekranit dhe tekstit janë rivendosur"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Të rivendosen madhësia e ekranit dhe teksti?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Preferencat e tua për madhësinë e ekranit dhe tekstin do të rivendosen në cilësimet origjinale të telefonit"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Preferencat e tua për madhësinë e ekranit dhe tekstin do të rivendosen në cilësimet origjinale të telefonit"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Preferencat e tua për madhësinë e ekranit dhe tekstin do të rivendosen në cilësimet origjinale të tabletit"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Rivendos"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Ke plane për fundjavën?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Mendoj të shkoj në plazh. Dëshiron të më bashkohesh?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Pa përdorim nga karikimi i fundit i plotë"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Nuk është përdorur për 24 orët e fundit"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Përdorues të tjerë"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Përllogaritja për baterinë e mbetur bazohet në përdorimin e pajisjes tënde"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Koha e vlerësuar e mbetur"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Deri në ngarkimin e plotë"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Ndërveprimi dhe fjalëkyçi i aktivizimit (hotword), i plotë"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Shërbim i thjeshtë \"ligjërim-në-tekst\""</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ky shërbim i hyrjes së zërit do të kryejë gjithmonë monitorim të zërit si dhe do të kontrollojë në emrin tënd, të gjitha aplikacionet që mundësohen me zë. Ai ofrohet nga aplikacioni <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Të aktivizohet përdorimi e këtij shërbimi?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Cilësimet e njohjes në pajisje"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Njohja në pajisje"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Njohja e ligjërimit në pajisje"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Motori i preferuar"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Cilësimet e motorit"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Shpejtësia e të folurës dhe intonacioni"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Fshi"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Të gjitha aplikacionet dhe të dhënat në këtë sesion do të fshihen."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Hiq!"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Vizitor (ti)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Përdoruesit"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Përdorues të tjerë"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Fshi aktivitetin e vizitorit"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Fshi të gjitha aplikacionet dhe të dhënat e vizitorit kur del nga modaliteti \"vizitor\""</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Të fshihet aktiviteti i vizitorit?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Tani aplikacionet dhe të dhënat nga ky sesion për vizitorë do të fshihen dhe të gjitha aktivitetet e ardhshme të vizitorit do të fshihen sa herë që të dalësh nga modaliteti \"vizitor\""</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Aktivizo telefonatat"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Aktivizo telefonatat dhe SMS-të"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Fshi përdoruesin"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Të gjitha njoftimet e \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Të gjitha njoftimet e <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Njoftimet me përshtatje"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> njoftime në ditë</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> njoftim në ditë</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Rreth <xliff:g id="NUMBER_1">%,d</xliff:g> njoftime në ditë</item>
+      <item quantity="one">Rreth <xliff:g id="NUMBER_0">%d</xliff:g> njoftim në ditë</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> njoftime në javë</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> njoftim në javë</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Rreth <xliff:g id="NUMBER_1">%,d</xliff:g> njoftime në javë</item>
+      <item quantity="one">Rreth <xliff:g id="NUMBER_0">%d</xliff:g> njoftim në javë</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Asnjëherë"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Njoftimet e pajisjes dhe aplikacioneve"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Mos bëj asgjë"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Lësho dridhje"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Hiqi zërin"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Për ta aktivizuar, në fillim ndrysho \"Shtyp dhe mbaj shtypur butonin e energjisë\" te menyja e energjisë."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Për ta aktivizuar, në fillim ndrysho \"Shtyp dhe mbaj shtypur butonin e energjisë\" te menyja e energjisë."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Detajet e rrjetit"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Emri i pajisjes sate është i dukshëm për aplikacionet në telefonin tënd. Ai mund të shikohet po ashtu nga persona të tjerë kur lidhesh me pajisje me Bluetooth, kur lidhesh me një rrjet Wi-Fi ose kur konfiguron një zonë të qasjes për internet me Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Pajisjet"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"kontrollet e pajisjes"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartat dhe lejet e kalimit"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartat dhe lejet e kalimit"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Shtyp dhe mbaj shtypur butonin e energjisë"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Shtyp dhe mbaj shtypur për \"Asistetin\""</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Shtyp dhe mbaj shtypur për menynë e energjisë"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Shtypja dhe mbajta shtypur është e çaktivizuar"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Shtyp dhe mbaj shtypur butonin e energjisë"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Shtyp dhe mbaj shtypur butonin e energjisë për qasje"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menyja e energjisë"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Asistenti dixhital"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Qasje tek asistenti dixhital"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Qasje te menyja e energjisë"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Për ta përdorur, në fillim cakto një kyçje ekrani"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Mbaje shtypur për \"Asistentin\""</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Aktivizo \"Asistentin\" duke mbajtur shtypur butonin e energjisë"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menyja \"Energjia dhe urgjenca\":\nShtyp njëherësh \"Energjinë\" dhe \"Volumin lart\"."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Parandalo rënien e ziles:\nKa shkurtore në menynë e volumit."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menyja e energjisë:\nShtyp butonin e energjisë dhe butonin e volumit lart njëkohësisht"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Parandalo rënien e ziles:\nShtyp një buton volumi për shkurtoren"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Kohëzgjatja e mbajtjes shtypur"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Rregullo ndjeshmërinë duke zgjedhur kohëzgjatjen e mbajtjes shtypur të butonit të energjisë"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"E shkurtër"</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 73b03a0..e5e9e12 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -468,7 +468,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Када користи Pixel Imprint, слике се користе за ажурирање модела отиска прста. Слике које се користе за прављење дететовог модела отиска прста никада се не чувају, али се модел отиска прста безбедно чува на телефону и остаје само на њему. Цео процес обраде се безбедно одвија на телефону."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Можете да избришете слике и модел отиска прста или да искључите Откључавање отискoм прста у било ком тренутку у Подешавањима. Слике и модели отисака прстију се чувају на телефону док их не избришете."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Ви и дете можете да избришете слике и модел отиска прста или да искључите откључавање отискoм прста у било ком тренутку у подешавањима. Слике и модели отисака прстију се чувају на телефону док их не избришете."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Телефон може да се откључа када то не намеравате. На пример, ако га неко приближи вашем прсту."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Телефон може да се откључа када то не намеравате. На пример, ако га неко приближи вашем прсту."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Таблет може да се откључа када то не намеравате. На пример, ако га неко приближи вашем прсту."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Уређај може да се откључа када то не намеравате. На пример, ако га неко приближи вашем прсту."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Телефон детета може да се откључа када дете то не намерава. На пример, ако неко приближи телефон дететовом прсту."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Да бисте имали најбоље резултате, користите заштиту за екран са сертификатом Направљено за Google. Отисак прста можда неће радити са другим заштитама за екран."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Да бисте имали најбоље резултате, користите заштиту за екран са сертификатом Направљено за Google. Отисак прста детета можда неће радити са другим заштитама за екран."</string>
@@ -518,6 +520,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Илустрација са уређајем и локацијом сензора за отисак прста"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Назив"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Потврди"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Пробај поново"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Избриши"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Додирните сензор"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Ставите прст на сензор и подигните га када осетите вибрацију"</string>
@@ -595,8 +598,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Готово"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Упс, то није сензор"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Додирните сензор на задњој страни телефона. Користите кажипрст."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Регистрација није завршена"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Временско ограничење за регистрацију отиска прста је истекло. Пробајте поново."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Време за подешавање отиска прста је истекло"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Пробајте поново одмах или подесите отисак прста касније у Подешавањима"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Регистрација отиска прста није успела. Пробајте поново или користите други прст."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Додајте још један"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Даље"</string>
@@ -1468,17 +1471,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Прилагодите телефон"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Пробајте другачије стилове, позадине и још тога"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Чувар екрана"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"чувар екрана"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Користи чувар екрана"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Током пуњења или на базној станици"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Било које од ова два"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Током пуњења"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Док је на базној станици"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Никада"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Искључено"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Да бисте контролисали шта се дешава када је телефон на базној станици и/или у стању спавања, укључите чувар екрана."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Када да почне"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Тренутни чувар екрана"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Подешавања"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Аутоматски ниво осветљености"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Подигни за активацију"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Амбијентални екран"</string>
@@ -1968,6 +1969,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Подесите PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Подесите PIN за пословни профил"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Подесите шаблон"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Ради веће безбедности подесите шаблон за откључавање уређаја"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Подесите шаблон за пословни профил"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Подесите лозинку да бисте користили отисак"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Да бисте користили отисак прста, подесите шаблон"</string>
@@ -2123,7 +2125,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Апликација за хитне случајеве"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Ресетуј подешавања апликација"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Желите да ресетујете подешавања апликације?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Овим ћете ресетовати сва подешавања за:\n\n"<li>"Онемогућене апликације"</li>\n<li>"Обавештења о онемогућеним апликацијама"</li>\n<li>"Подразумеване апликације за радње"</li>\n<li>"Ограничења за позадинске податке за апликације"</li>\n<li>"Сва ограничења за дозволе"</li>\n\n"Нећете изгубити никакве податке апликације."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Овим ћете ресетовати сва подешавања за:\n\n"<li>"Онемогућене апликације"</li>\n<li>"Обавештења о онемогућеним апликацијама"</li>\n<li>"Подразумеване апликације за радње"</li>\n<li>"Ограничења за позадинске податке за апликације"</li>\n<li>"Сва ограничења за дозволе"</li>\n<li>"Подешавања потрошње батерије"</li>\n\n"Нећете изгубити никакве податке апликације."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Ресетуј апликације"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Управљај простором"</string>
     <string name="filter" msgid="9039576690686251462">"Филтрирај"</string>
@@ -2378,7 +2380,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Ресетуј подешавања"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Подешавања величине екрана и текста су ресетована"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Желите да ресетујете величину приказа и текст?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Величина приказа и подешавања текста ће се ресетовати на првобитна подешавања телефона"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Величина приказа и подешавања текста ће се ресетовати на првобитна подешавања телефона"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Величина приказа и подешавања текста ће се ресетовати на првобитна подешавања таблета"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Ресетуј"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Имаш ли планове за викенд?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Идем на плажу. Хоћеш са мном?"</string>
@@ -2972,6 +2975,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Нема коришћења од последњег потпуног пуњења"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Нема коришћења у последња 24 сата"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Остали корисници"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Процена преосталог нивоа напуњености батерије је заснована на коришћењу уређаја"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Процењено преостало време"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"До потпуног пуњења"</string>
@@ -3061,6 +3065,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Цела актуелна реч и интеракција"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Једноставан говор у текст"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ова услуга гласовног уноса ће моћи уместо вас да обавља константно гласовно праћење и контролише апликације у којима је омогућен глас. Она је део апликације <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Желите ли да омогућите коришћење ове услуге?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Подешавања препознавања на уређају"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Препознавање на уређају"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Препознавање говора на уређају"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Жељени механизам"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Подешавања механизма"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Брзина и јачина говора"</string>
@@ -3457,6 +3464,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Избриши"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Све апликације и подаци у овој сесији ће бити избрисани."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Уклони"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Гост (ви)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Корисници"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Остали корисници"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Избриши активности госта"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Избришите све апликације и податке госта при излазу из режима госта"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Избрисаћете активности госта?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Апликације и подаци из ове сесије госта биће одмах избрисане, а све будуће активности госта биће избрисане сваки пут када изађете из режима госта"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Укључи телефонске позиве"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Укључи телефонске позиве и SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Избришите корисника"</string>
@@ -4051,15 +4065,15 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Сва обавештења апликације <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Сва обавештења апликације <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Прилагодљива обавештења"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> обавештење дневно</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> обавештења дневно</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> обавештења дневно</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Отприлике <xliff:g id="NUMBER_1">%,d</xliff:g> обавештење дневно</item>
+      <item quantity="few">Отприлике <xliff:g id="NUMBER_1">%,d</xliff:g> обавештења дневно</item>
+      <item quantity="other">Отприлике <xliff:g id="NUMBER_1">%,d</xliff:g> обавештења дневно</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> обавештење недељно</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> обавештења недељно</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> обавештења недељно</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Отприлике <xliff:g id="NUMBER_1">%,d</xliff:g> обавештење недељно</item>
+      <item quantity="few">Отприлике <xliff:g id="NUMBER_1">%,d</xliff:g> обавештења недељно</item>
+      <item quantity="other">Отприлике <xliff:g id="NUMBER_1">%,d</xliff:g> обавештења недељно</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Никад"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Обавештења на уређајима и у апликацијама"</string>
@@ -5339,7 +5353,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Не ради ништа"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Вибрирај"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Искључи звук"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Да бисте омогућили ово, прво промените опцију Притисните и задржите дугме за укључивање у мени дугмета за укључивање."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Да бисте омогућили ово, прво промените опцију Притисните и задржите дугме за укључивање у мени дугмета за укључивање."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Детаљи о мрежи"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Апликације на телефону могу да виде назив уређаја. И други људи могу да виде назив уређаја могу када се повежете са Bluetooth уређајима или WiFi мрежом или подесите WiFi хотспот."</string>
     <string name="devices_title" msgid="649715719278562515">"Уређаји"</string>
@@ -5629,15 +5643,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"контроле уређаја"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Карте и картице"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"карте и картице"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Притисните и задржите дугме за укључивање"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Притисните и задржите за Помоћника"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Притисните и задржите мени дугмета за укључивање"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Онемогућено је притискање и задржавање"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Притисните и задржите дугме за укључивање"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Притисните и задржите дугме за укључивање ради приступа"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Мени дугмета за укључивање"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Дигитални помоћник"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Приступајте дигиталном помоћнику"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Приступајте менију дугмета за укључивање"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Да бисте ово користили, прво подесите закључавање екрана"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Задржите за Помоћник"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Покрените Помоћник тако што ћете задржати дугме за укључивање"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Мени дугмета за укључивање и за хитне случајеве:\nИстовремено притисните дугме за укључивање и дугме за појачавање звука."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Спречи звоњење:\nПречица је доступна у менију дугмета за јачину звука."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Мени дугмета за укључивање:\nПритисните дугме за укључивање и дугме за појачавање звука у исто време"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Спречите звоно:\nПритисните дугме за јачину звука ако желите пречицу"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Колико дуго да притиснете и задржите"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Прилагодите осетљивост тако што ћете одабрати колико дуго треба да се притиснете и задржите дугме за укључивање"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Кратко"</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index b2b5cae..61b44c3 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"När barnet använder Pixel Imprint uppdateras fingeravtrycksmodellen med hjälp av bilder. De bilder som används för att skapa fingeravtrycksmodellen lagras aldrig, men fingeravtrycksmodellen lagras säkert på telefonen och lämnar den aldrig. All behandling görs säkert på telefonen."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Du kan radera fingeravtrycksbilderna och fingeravtrycksmodellen eller inaktivera fingeravtryckslås när du vill i inställningarna. Fingeravtrycksbilderna och fingeravtrycksmodellerna lagras på telefonen tills du raderar dem."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Du och ditt barn kan radera fingeravtrycksbilderna och fingeravtrycksmodellen eller inaktivera fingeravtryckslås när som helst i inställningarna. Fingeravtrycksbilderna och fingeravtrycksmodellerna lagras på telefonen tills du raderar dem."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefonen kan låsas upp oavsiktligt, t.ex. om någon håller den mot ditt finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefonen kan låsas upp oavsiktligt, t.ex. om någon håller den mot ditt finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Surfplattan kan låsas upp oavsiktligt, t.ex. om någon håller den mot ditt finger."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Enheten kan låsas upp oavsiktligt, t.ex. om någon håller den mot ditt finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Ditt barns telefon kan låsas upp oavsiktligt, till exempel om någon håller den mot ditt barnets finger."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Använd ett skärmskydd märkt Made for Google för bästa resultat. Fingeravtrycket kanske inte registreras med andra skärmskydd."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Använd ett skärmskydd märkt Made for Google för bästa resultat. Ditt barns fingeravtryck kanske inte registreras med andra skärmskydd."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Illustration med enheten och fingeravtryckssensorns plats"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Namn"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Försök igen"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Radera"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Tryck på sensorn"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Lägg fingret på sensorn och ta bort det när du känner en vibration"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Klar"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Hoppsan! Det där är inte sensorn"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Tryck på sensorn på mobilens baksida. Använd pekfingret."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Registreringen slutfördes inte"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Tidsgränsen för registreringen av fingeravtryck har uppnåtts. Försök igen."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Fingeravtryckskonfigurering nådde tidsgränsen"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Försök igen direkt eller konfigurera fingeravtryck senare i inställningarna"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Det gick inte att registrera fingeravtrycket. Försök igen eller använd ett annat finger."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Lägg till ännu ett"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Nästa"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Anpassa telefonen"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Testa olika format, bakgrunder med mera"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Skärmsläckare"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"skärmsläckare"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Använd skärmsläckare"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Vid laddning eller dockning"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Båda"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Vid laddning"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Vid dockning"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Aldrig"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Av"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Om du vill styra vad som händer när mobilen är dockad eller i viloläge aktiverar du skärmsläckaren."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Startas"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Aktuell skärmsläckare"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Inställningar"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Automatisk ljusstyrka"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Gå ur viloläget vid lyft"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Aktiv låsskärm"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Ange en pinkod"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Ange en pinkod för jobbet"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Ange ett mönster"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Stärk säkerheten genom att ställa in ett mönster för att låsa upp enheten"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Ställ in ett mönster för jobbet"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Lösenord krävs för fingeravtryck"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Rita mönster för fingeravtryck"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"App för nödsituationer"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Återställ appinställningarna"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Vill du återställa?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Detta återställer alla inställningar för:\n\n"<li>"Inaktiverade appar"</li>\n<li>"Inaktiverade appmeddelanden"</li>\n<li>"Standardappar för åtgärder"</li>\n<li>"Begränsningar av bakgrundsdata för appar"</li>\n<li>"Alla begränsningar av behörigheter"</li>\n\n"Ingen appdata försvinner."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Detta återställer alla inställningar för följande:\n\n"<li>"inaktiverade appar"</li>\n<li>"inaktiverade appaviseringar"</li>\n<li>"standardappar för åtgärder"</li>\n<li>"begränsningar i bakgrundsdata för appar"</li>\n<li>"begränsningar för alla behörigheter"</li>\n<li>"inställningar för batteriförbrukning."</li>\n\n"Ingen appdata försvinner."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Återställ appar"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Hantera utrymme"</string>
     <string name="filter" msgid="9039576690686251462">"Filtrera"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Återställ inställningar"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Inställningarna för skärmstorlek och text har återställts"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Vill du återställa skärmstorlek och text?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Inställningarna för skärmstorlek och text återställs till telefonens standardinställningar"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Inställningarna för skärmstorlek och text återställs till telefonens standardinställningar"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Inställningarna för skärmstorlek och text återställs till surfplattans standardinställningar"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Återställ"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Några planer för helgen?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"På väg till stranden. Hänger du med?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Har inte använts sedan batteriet senast var fulladdat"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Har inte använts under de senaste 24 timmarna"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Andra användare"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Uppskattad återstående batteritid baseras på enhetsanvändningen"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Beräknad återstående tid"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Tills fulladdad"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Alla kommandoord och fullständig interaktion"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Enkelt tal till text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Den här röstinmatningstjänsten kan ha röstövervakning aktiverad hela tiden och styra röstaktiverade appar åt dig. Den kommer från <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Vill du aktivera tjänsten?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Inställningar för igenkänning på enheten"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Igenkänning på enheten"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Taligenkänning på enheten"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Prioriterad motor"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Inställningar för motor"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Talhastighet och tonhöjd"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Ta bort"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Alla appar och data i denna session kommer att raderas."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Ta bort"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Gäst (du)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Användare"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Andra användare"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Radera gästaktivitet"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Radera alla appar och all data för gästen när gästläget avslutas"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Vill du radera gästaktivitet?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Appar och data från den här gästsessionen raderas nu och i fortsättningen raderas all gästaktivitet när du avslutar gästläget"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Aktivera telefonsamtal"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Aktivera telefonsamtal och sms"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Radera användare"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Alla aviseringar från <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Alla aviseringar från <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Anpassade aviseringar"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">ca <xliff:g id="NUMBER_1">%,d</xliff:g> aviseringar om dagen</item>
-      <item quantity="one">ca <xliff:g id="NUMBER_0">%d</xliff:g> avisering om dagen</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Cirka <xliff:g id="NUMBER_1">%,d</xliff:g> aviseringar per dag</item>
+      <item quantity="one">Cirka <xliff:g id="NUMBER_0">%d</xliff:g> avisering per dag</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">Ca <xliff:g id="NUMBER_1">%,d</xliff:g> aviseringar i veckan</item>
-      <item quantity="one">Ca <xliff:g id="NUMBER_0">%d</xliff:g> avisering i veckan</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Cirka <xliff:g id="NUMBER_1">%,d</xliff:g> aviseringar per vecka</item>
+      <item quantity="one">Cirka <xliff:g id="NUMBER_0">%d</xliff:g> avisering per vecka</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Aldrig"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Enhets- och appaviseringar"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Gör ingenting"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Vibration"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Ljud av"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"För att aktivera ska du först ändra alternativet ”Håll strömbrytaren nedtryckt” till startmenyn."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"För att aktivera ändrar du först alternativet ”Håll strömbrytaren nedtryckt” till startmenyn."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Nätverksinformation"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Enhetens namn är synligt för appar i mobilen. Det kan också vara synligt för andra personer när du ansluter till Bluetooth-enheter eller ett wifi-nätverk, eller om du skapar en wifi-surfzon."</string>
     <string name="devices_title" msgid="649715719278562515">"Enheter"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"enhetsstyrning"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kort och värdekort"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kort och värdekort"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Håll strömbrytaren nedtryckt"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Håll nedtryckt för att öppna assistenten"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Håll nedtryckt för att öppna startmenyn"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Funktionen håll nedtryckt har inaktiverats"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Håll strömbrytaren nedtryckt"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Håll strömbrytaren nere för att öppna"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Startmeny"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digital assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Öppna digital assistent"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Öppna startmenyn"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Ställ först in ett skärmlås"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Håll ned för att öppna assistenten"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Öppna assistenten genom att hålla ned strömbrytaren"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Startmenyn och menyn för nödsituationer:\nTryck på strömbrytaren + höj volymen samtidigt"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Inaktivera ringsignal:\nEn genväg finns i volymmenyn."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Startmeny:\nTryck på strömbrytaren och knappen för att höja volymen samtidigt"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Inaktivera ringsignal:\nTryck på en volymknapp för att använda genvägen"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Längd på tryck"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Justera känsligheten genom att välja hur länge strömbrytaren ska hållas nedtryckt"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kort"</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index d4d09f7..4605cfe 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Anapotumia Pixel Imprint, picha zinatumiwa ili kusasisha muundo wa alama ya kidole chake. Picha zinazotumiwa kuunda muundo wa alama ya kidole cha mtoto wako hazihifadhiwi, ila muundo wa alama ya kidole unahifadhiwa kwa njia salama na kusalia kwenye simu. Mchakato wote hufanyika kwenye simu kwa njia salama."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Unaweza kufuta muundo na picha za alama ya kidole chako, au uzime kipengele cha Kufungua kwa Alama ya Kidole wakati wowote katika Mipangilio. Miundo na picha za alama ya kidole zinahifadhiwa kwenye simu hadi utakapozifuta."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Wewe na mtoto wako mnaweza kufuta muundo na picha za alama ya kidole chake, au kuzima kipengele cha Kufungua kwa Alama ya Kidole wakati wowote katika Mipangilio. Miundo na picha za alama ya kidole zinahifadhiwa kwenye simu hadi utakapozifuta."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Simu yako inaweza kufunguliwa wakati hujakusudia, kama vile mtu mwingine akiishikilia kwenye kidole chako."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Simu yako inaweza kufunguliwa wakati hujakusudia, kama vile mtu mwingine akiishikilia kwenye kidole chako."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Kompyuta kibao yako inaweza kufunguliwa wakati hujakusudia, kama vile ikiwa mtu mwingine akiishikilia kwenye kidole chako."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Kifaa chako kinaweza kufunguliwa wakati hujakusudia, kama vile ikiwa mtu mwingine akikishikilia kwenye kidole chako."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Simu ya mtoto wako inaweza kufunguliwa wakati hajakusudia, kama vile mtu mwingine akiishikilia kwenye kidole chake."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Kwa matokeo bora, tumia ulinzi wa skrini ambao umethibitishwa na Made for Google. Ukitumia ulinzi mwingine wa skrini, alama yako ya kidole huenda isifanye kazi."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Kwa matokeo bora, tumia ulinzi wa skrini ambao umethibitishwa na Made for Google. Ukitumia ulinzi mwingine wa skrini, alama ya kidole ya mtoto wako huenda isifanye kazi."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Mchoro unaooyesha mahali kitambua alama ya kidole kilipo kwenye kifaa"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Jina"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"SAWA"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Jaribu tena"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Futa"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Gusa kitambua alama ya kidole"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Weka kidole chako juu ya kitambua alama kisha ukiinue baada ya kuhisi mtetemo"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Nimemaliza"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Lo, hicho si kitambuzi"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Gusa kitambua alama ya kidole kilicho nyuma ya simu yako. Tumia kidole chako cha shahada."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Usajili wako haujakamilika"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Muda wa kuweka alama ya kidole umekwisha. Jaribu tena."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Muda wa kuweka alama ya kidole umeisha"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Jaribu tena sasa au uweke mipangilio ya alama ya kidole chako baadaye katika Mipangilio"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Alama ya kidole haijawekwa. Jaribu tena au utumie kidole tofauti."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Ongeza kingine"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Endelea"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Weka mapendeleo kwenye simu yako"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Jaribu miundo, mandhari tofauti na zaidi"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Taswira ya skrini"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"taswira ya skrini"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Tumia taswira ya skrini"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Wakati imeunganishwa na kifaa kingine au inapochaji"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Yoyote kati ya hizi mbili"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Inapochaji"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Wakati imeunganishwa na kifaa kingine"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Isiwahi"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Imezimwa"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Ili udhibiti kinachotendeka wakati simu imeambatishwa na/au iko katika hali tuli, washa taswira ya skrini."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Ianze lini?"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Taswira ya skrini ya sasa"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Mipangilio"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Mwangaza wa kiotomatiki"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Inua ili uondoe kifaa katika hali tuli"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Onyesho tulivu"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Weka PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Weka PIN ya wasifu wa kazini"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Weka mchoro"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Ili kuimarisha usalama, weka mchoro wa kufungua kifaa"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Weka mchoro wa wasifu wa kazini"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Weka nenosiri ili utumie alama ya kidole"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Weka mchoro ili utumie alama ya kidole"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Programu ya dharura"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Badilisha mapendeleo ya programu"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Ungependa kubadilisha mapendeleo ya programu?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Hatua hii itaweka upya mapendeleo yote ya:\n\n"<li>"Programu zilizozimwa"</li>\n<li>"Arifa za programu zilizozimwa"</li>\n<li>"Programu chaguomsingi za vitendo"</li>\n<li>"Udhibiti wa data ya chinichini katika programu"</li>\n<li>"Udhibiti wowote wa ruhusa"</li>\n\n"Hutapoteza data yoyote ya programu."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Hatua hii itaweka upya mapendeleo yote ya:\n\n"<li>"Programu zilizozimwa"</li>\n<li>"Arifa za programu zilizozimwa"</li>\n<li>"Programu chaguomsingi za vitendo"</li>\n<li>"Udhibiti wa data ya chinichini katika programu"</li>\n<li>"Udhibiti wowote wa ruhusa"</li>\n<li>"Mipangilio ya Matumizi ya betri"</li>\n\n"Hutapoteza data yoyote ya programu."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Weka upya"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Dhibiti nafasi"</string>
     <string name="filter" msgid="9039576690686251462">"Kichujio"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Badilisha mipangilio"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Mipangilio ya ukubwa wa skrini na maandishi imebadilishwa"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Ungependa kubadilisha ukubwa wa skrini na maandishi?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Mapendeleo ya maandishi na ukubwa wa skrini yako yatarejeshwa kwenye mipangilio halisi ya simu"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Mapendeleo ya maandishi na ukubwa wa skrini yako yatarejeshwa kwenye mipangilio halisi ya simu"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Mapendeleo yako ya maandishi na ukubwa wa skrini yatarejeshwa katika mipangilio halisi ya kompyuta kibao"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Badilisha"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Una mipango yoyote ya wikendi?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Ninaelekea ufukweni. Ungependa kuja?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Haijatumika tangu ilipojazwa chaji mara ya mwisho"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Haijatumika katika saa 24 zilizopita"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Watumiaji wengine"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Kadirio la chaji ya betri iliyosalia linategemea matumizi ya kifaa chako"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Kadirio la muda uliosalia"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Hadi chaji ijae"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Neno tekelezi na mwingiliano kamilifu"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Huduma rahisi ya kunakili yanayotamkwa"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Huduma hii ya kuweka data kwa kutamka itakuwa na uwezo wa kutekeleza ufuatiliaji wa hali ya kuwashwa muda wote na kudhibiti programu zinazowashwa kwa sauti kwa niaba yako. Inatoka katika programu ya <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Ungependa kuwasha huduma hii kwa matumizi?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Mipangilio ya utambuzi kwenye kifaa"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Utambuzi kwenye kifaa"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Utambuzi wa matamshi kwenye kifaa"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Mtambo unaopendelewa"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Mipangilio ya Injini"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Kasi na kiwango cha matamshi"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Futa"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Data na programu zote katika kipindi hiki zitafutwa."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Ondoa"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Mgeni (Wewe)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Watumiaji"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Watumiaji wengine"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Futa shughuli za mgeni"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Futa programu na data yote ya mgeni pale unapofunga matumizi ya wageni"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Ungependa kufuta shughuli za mgeni?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Programu na data kutoka kwenye kipindi hiki cha mgeni itafutwa sasa na kila shughuli ya mgeni ya baadaye itafutwa kila mara unapofunga matumizi ya wageni"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Ruhusu upigaji simu"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Washa kipengele cha SMS na kupiga simu"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Futa mtumiaji"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Arifa zote za \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Arifa zote za <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Arifa Zinazojirekebisha"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">Takriban arifa <xliff:g id="NUMBER_1">%,d</xliff:g> kwa siku</item>
-      <item quantity="one">Takriban arifa <xliff:g id="NUMBER_0">%d</xliff:g> kwa siku</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Kuhusu arifa <xliff:g id="NUMBER_1">%,d</xliff:g> kwa siku</item>
+      <item quantity="one">Kuhusu arifa <xliff:g id="NUMBER_0">%d</xliff:g> kwa siku</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">Takriban arifa <xliff:g id="NUMBER_1">%,d</xliff:g> kwa wiki</item>
-      <item quantity="one">Takriban arifa <xliff:g id="NUMBER_0">%d</xliff:g> kwa wiki</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Kuhusu arifa <xliff:g id="NUMBER_1">%,d</xliff:g> kwa wiki</item>
+      <item quantity="one">Kuhusu arifa <xliff:g id="NUMBER_0">%d</xliff:g> kwa wiki</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Kamwe"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Arifa za programu na vifaa"</string>
@@ -5256,7 +5270,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Isifanye chochote"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Tetema"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Zima sauti"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Ili uwashe, kwanza badilisha \"Kitufe cha kuwasha/kuzima cha kubonyeza na kushikilia\" kiwe menyu ya kuzima/kuwasha."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Ili uwashe, kwanza badilisha \"Kitufe cha kuwasha/kuzima cha kubonyeza na kushikilia\" kiwe menyu ya kuzima/kuwasha."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Maelezo ya mtandao"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Jina la kifaa chako litaonekana kwa programu zilizo kwenye simu yako. Pia, watu wengine wanaweza kuliona unapounganisha kwenye vifaa vya Bluetooth, unapounganisha kwenye mtandao wa Wi-Fi au kuweka mipangilio ya mtandao pepe wa Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Vifaa"</string>
@@ -5543,15 +5557,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"vidhibiti vya vifaa"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kadi na pasi"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kadi na pasi"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Bonyeza na ushikilie kitufe cha kuwasha/kuzima"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Bonyeza na ushikilie kitufe ili upate programu ya Mratibu"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Bonyeza na ushikilie ili upate menyu ya kuwasha/kuzima"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Kitufe cha kubonyeza na kushikilia kimezimwa"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Bonyeza na ushikilie kitufe cha kuwasha/kuzima"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Bonyeza na ushikilie kitufe cha kuwasha au kuzima ili ufikie"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Menyu ya kuzima au kuwasha"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Mratibu dijitali"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Fikia mratibu dijitali"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Fikia menyu ya kuzima/kuwasha"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Ili utumie, weka mbinu ya kufunga skrini kwanza"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Shikilia ili ufungue programu ya Mratibu"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Anzisha programu ya Mratibu kwa kushikilia kitufe cha kuwasha/kuzima"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menyu ya Dharura na ya Kuzima/Kuwasha:\nBonyeza Kuongeza Sauti na Kuzima/Kuwasha kwa wakati mmoja."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Zuia mlio:\nNjia ya mkato inapatikana katika menyu ya sauti."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Menyu ya kuzima/kuwasha:\nBonyeza kitufe cha kuwasha/kuzima na kitufe cha kuongeza sauti kwa wakati mmoja"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Zuia mlio: \n Bonyeza kitufe cha sauti ili utumie njia ya mkato"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Muda wa kubonyeza na kushikilia"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Rekebisha kiwango cha hisi kwa kuchagua muda wa kubonyeza na kushikilia kitufe cha kuwasha/kuzima"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Mfupi"</string>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index f43243a..b50e23b 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Pixel Imprint அம்சத்தைப் பயன்படுத்தும்போது அவரின் கைரேகைப் பதிவைப் புதுப்பிக்க படங்கள் பயன்படுத்தப்படும். உங்கள் பிள்ளையின் கைரேகைப் பதிவை உருவாக்கப் பயன்படுத்தப்படும் படங்கள் ஒருபோதும் சேமிக்கப்படாது. ஆனால் கைரேகைப் பதிவு மொபைலில் பாதுகாப்பாகச் சேமிக்கப்படும், அது யாருடனும் பகிரப்படாது. அனைத்துச் செயலாக்கங்களும் மொபைலில் பாதுகாப்பாக நடைபெறும்."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"அமைப்புகளில் எப்போது வேண்டுமானாலும் கைரேகைப் படங்களையும் பதிவையும் நீக்கலாம், ‘கைரேகை அன்லாக்’ அம்சத்தை முடக்கலாம். கைரேகைப் படங்களையும் பதிவுகளையும் நீங்கள் நீக்கும்வரை உங்கள் மொபைலில் அவை பாதுகாப்பாகச் சேமிக்கப்படும்."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"அமைப்புகளில் எப்போது வேண்டுமானாலும் நீங்களும் உங்கள் பிள்ளையும் அவரின் கைரேகைப் படங்களையும் பதிவுகளையும் நீக்கலாம், கைரேகை அன்லாக் அம்சத்தை முடக்கலாம். நீக்கப்படும் வரை கைரேகைப் படங்களும் பதிவுகளும் மொபைலிலேயே சேமிக்கப்பட்டிருக்கும்."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"மொபைலை அன்லாக் செய்யும் எண்ணம் உங்களுக்கு இல்லாதபோதும் அது திறக்கக்கூடும். உதாரணமாக, வேறொருவர் உங்கள் விரலில் மொபைல் சென்சாரை வைத்துத் திறக்கலாம்."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"மொபைலை அன்லாக் செய்யும் எண்ணம் உங்களுக்கு இல்லாதபோதும் அது திறக்கக்கூடும். உதாரணமாக, வேறொருவர் உங்கள் விரலில் மொபைல் சென்சாரை வைத்துத் திறக்கலாம்."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"டேப்லெட்டை அன்லாக் செய்யும் எண்ணம் உங்களுக்கு இல்லாதபோதும் அது அன்லாக் செய்யப்படலாம் (வேறொருவர் உங்கள் விரலுக்கு அருகில் டேப்லெட்டைப் பிடித்திருப்பது போன்ற சமயங்களில்)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"சாதனத்தை அன்லாக் செய்யும் எண்ணம் உங்களுக்கு இல்லாதபோதும் அது அன்லாக் செய்யப்படலாம் (வேறொருவர் உங்கள் விரலுக்கு அருகில் மொபைலைப் பிடித்திருப்பது போன்ற சமயங்களில்)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"மொபைலை அன்லாக் செய்யும் எண்ணம் உங்கள் பிள்ளைக்கு இல்லாதபோதும் அது அன்லாக் ஆகக்கூடும். உதாரணமாக, வேறொருவர் உங்கள் பிள்ளையின் விரலுக்கு நேரே மொபைலைக் காட்டி அதை அன்லாக் செய்யலாம்."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"சிறந்த முடிவுகளுக்கு, Made for Google சான்றளிக்கப்பட்ட ஸ்கிரீன் கார்டைப் பயன்படுத்துங்கள். உங்கள் கைரேகை மற்ற ஸ்கிரீன் கார்டுகளுடன் பொருந்தாமல் போகக்கூடும்."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"சிறந்த முடிவுகளுக்கு, Made for Google சான்றளிக்கப்பட்ட ஸ்கிரீன் கார்டைப் பயன்படுத்துங்கள். உங்கள் பிள்ளையின் கைரேகை மற்ற ஸ்கிரீன் கார்டுகளுடன் பொருந்தாமல் போகக்கூடும்."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"சாதனத்தில் கைரேகை சென்சார் அமைந்துள்ள இடத்தின் விளக்கப்படம்"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"பெயர்"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"சரி"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"மீண்டும் முயல்க"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"நீக்கு"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"சென்சாரைத் தொடவும்"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"விரலை சென்சாரில் வைத்து, அதிர்வை உணர்ந்த பின்னர் விரலை எடுக்கவும்"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"முடிந்தது"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"அச்சச்சோ, அது சென்சார் இல்லை"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"ஆள்காட்டி விரலால் சென்சாரைத் தொடவும்."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"பதிவுசெய்ய முடியவில்லை"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"கைரேகையைப் பதிவுசெய்வதற்கான நேரம் முடிந்தது. மீண்டும் முயற்சிக்கவும்."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"கைரேகை அமைவுக்கான நேரம் முடிந்துவிட்டது"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"இப்போதே மீண்டும் முயற்சி செய்யவும் அல்லது அமைப்புகளில் உங்கள் கைரேகையைப் பின்னர் அமைக்கவும்"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"கைரேகையைப் பதிவுசெய்ய முடியவில்லை. மீண்டும் முயற்சிக்கவும் அல்லது வேறு விரலைப் பயன்படுத்தவும்."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"மற்றொன்றைச் சேர்"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"அடுத்து"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"மொபைலைப் பிரத்தியேகமாக்கல்"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"மாறுபட்ட ஸ்டைல்கள், வால்பேப்பர்கள் மற்றும் பலவற்றை முயல்க"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"ஸ்கிரீன் சேவர்"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ஸ்கிரீன் சேவர்"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"ஸ்கிரீன் சேவரை உபயோகித்தல்"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"இரண்டின் போதும்"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"இவற்றில் ஒன்று"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"சார்ஜ் செய்யப்படும்போது"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"சாதனத்தில் இணைந்திருக்கும்போது"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ஒருபோதும் வேண்டாம்"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ஆஃப்"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"மொபைல் உறக்கநிலையில் அல்லது சார்ஜாகும்போது, நிகழ்வுகளைக் கட்டுப்படுத்த பகல்கனாவை இயக்கு."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"தொடங்க வேண்டிய நேரம்"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"தற்போதைய ஸ்கிரீன் சேவர்"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"அமைப்பு"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"தானாக ஒளிர்வைச் சரிசெய்தல்"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"விரலை எடுக்கும் போது இயங்கு"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"சூழல்சார் திரை"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"பின்னை அமையுங்கள்"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"பணிக்கான பின்னை அமையுங்கள்"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"பேட்டர்னை அமையுங்கள்"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"கூடுதல் பாதுகாப்பிற்கு, சாதனத்தை அன்லாக் செய்வதற்கான பேட்டர்னை அமைக்கவும்"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"பணிக்கான பேட்டர்னை அமையுங்கள்"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"கடவுச்சொல்லை அமைக்கவும்"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"வடிவத்தை அமைக்கவும்"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"அவசரப் ஆப்ஸ்"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ஆப்ஸ் அமைப்பை மீட்டமை"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"அமைப்பை மீட்டமைக்கவா?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"பின்வரும் விருப்பத்தேர்வுகளை இது மீட்டமைக்கும்:\n\n"<li>"முடக்கப்பட்டுள்ள ஆப்ஸ்"</li>\n<li>"முடக்கப்பட்டுள்ள ஆப்ஸ் அறிவிப்புகள்"</li>\n<li>"செயல்பாடுகளுக்கான இயல்புநிலை ஆப்ஸ்"</li>\n<li>"ஆப்ஸிற்கான பின்புலத் தரவுக் கட்டுப்பாடுகள்"</li>\n<li>"ஏதேனும் அனுமதிக் கட்டுப்பாடுகள்"</li>\n\n"இதன் காரணமாக எந்த ஆப்ஸ் தரவையும் இழக்கமாட்டீர்கள்."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"இது பின்வருபவற்றின் விருப்பத்தேர்வுகள் அனைத்தையும் மீட்டமைக்கும்:\n\n"<li>"முடக்கப்பட்ட ஆப்ஸ்"</li>\n<li>"முடக்கப்பட்ட ஆப்ஸின் அறிவிப்புகள்"</li>\n<li>"செயல்பாடுகளுக்கான இயல்புநிலை ஆப்ஸ்"</li>\n<li>"ஆப்ஸுக்கான பின்புலத் தரவுக் கட்டுப்பாடுகள்"</li>\n<li>"அனைத்து அனுமதிக் கட்டுப்பாடுகளும்"</li>\n<li>"பேட்டரி உபயோக அமைப்புகள்"</li>\n\n"எந்த ஆப்ஸ் தரவையும் இழக்கமாட்டீர்கள்."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ஆப்ஸை மீட்டமை"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"காலி இடத்தை நிர்வகி"</string>
     <string name="filter" msgid="9039576690686251462">"வடிகட்டு"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"அமைப்புகளை ரீசெட் செய்தல்"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"காட்சி அளவும் வார்த்தை அமைப்புகளும் ரீசெட் செய்யப்பட்டன"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"காட்சியின் அளவையும் வார்த்தைகளுக்கான விருப்பத்தேர்வுகளையும் ரீசெட் செய்யவா?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"உங்கள் காட்சியின் அளவும் வார்த்தைகளுக்கான விருப்பத்தேர்வுகளும் மொபைலின் அசல் அமைப்புகளுக்கு ரீசெட் செய்யப்படும்"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"உங்கள் காட்சியின் அளவும் வார்த்தைகளுக்கான விருப்பத்தேர்வுகளும் மொபைலின் அசல் அமைப்புகளுக்கு ரீசெட் செய்யப்படும்"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"உங்கள் காட்சியளவும் வார்த்தைகளுக்கான விருப்பத்தேர்வுகளும் டேப்லெட்டின் அசல் அமைப்புகளுக்கு ரீசெட் செய்யப்படும்"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ரீசெட் செய்"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"வாரயிறுதி நாட்களில் ஏதேனும் திட்டங்கள் உள்ளதா?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"கடற்கரைக்குச் செல்கிறோம். நீங்களும் வருகிறீர்களா?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"கடந்த முறை முழு சார்ஜ் ஆனதிலிருந்து எந்த உபயோகமும் இல்லை"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"கடந்த 24 மணிநேரத்தில் எந்த உபயோகமும் இல்லை"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"பிற பயனர்கள்"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"சாதனத்தை உபயோகிப்பதன் அடிப்படையில், மீதமுள்ள பேட்டரியின் தோராய அளவு கணக்கிடப்படுகிறது"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"கணக்கிடப்பட்ட மீதமுள்ள நேரம்"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"முழு சார்ஜ் ஆக"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"முழுக் குறிப்பிட்ட சொல்லும் ஊடாடுதலும்"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"எளிய பேச்சிலிருந்து உரை"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"குரல் உள்ளீட்டு சேவையால் தொடர்ச்சியாக குரலைக் கண்காணிக்க முடியும், உங்கள் சார்பாக குரல் வசதி இயக்கப்பட்ட ஆப்ஸ்களை உங்கள் சார்பாக கட்டுப்படுத்தவும் முடியும். <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ஆப்ஸ் வழங்குகிறது. இந்தச் சேவையை இயக்கி, பயன்படுத்தவா?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"சாதனத்தில் கண்டறிதல் அமைப்புகள்"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"சாதனத்தில் கண்டறிதல்"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"சாதனத்தில் பேச்சு அறிதல்"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"விருப்பத்தேர்வு"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"இன்ஜின் அமைப்புகள்"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"பேச்சு வீதமும் குரல் அழுத்தமும்"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"நீக்கு"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"இந்த அமர்வின் எல்லா பயன்பாடுகளும், தரவும் நீக்கப்படும்."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"அகற்று"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"கெஸ்ட் (நீங்கள்)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"பயனர்கள்"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"பிற பயனர்கள்"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"கெஸ்ட் செயல்பாடுகளை நீக்குதல்"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"கெஸ்ட் பயன்முறையிலிருந்து வெளியேறும்போது கெஸ்ட் அமர்வின் ஆப்ஸ் மற்றும் தரவு அனைத்தும் நீக்கப்படும்"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"கெஸ்ட் செயல்பாடுகளை நீக்கவா?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"இந்த கெஸ்ட் அமர்வின் ஆப்ஸும் தரவும் இப்போது நீக்கப்படும். இனி கெஸ்ட் பயன்முறையிலிருந்து வெளியேறும் ஒவ்வொரு முறையும் கெஸ்ட் செயல்பாடுகள் நீக்கப்படும்"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ஃபோன் அழைப்புகளை இயக்கு"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ஃபோன் அழைப்புகள் &amp; SMSஐ இயக்கு"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"பயனரை நீக்குதல்"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"அனைத்து \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" அறிவிப்புகளும்"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"அனைத்து <xliff:g id="APP_NAME">%1$s</xliff:g> அறிவிப்புகளும்"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"சூழலுக்கேற்ற அறிவிப்புகள்"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> அறிவிப்புகள் / நாள்</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> அறிவிப்பு / நாள்</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">ஒரு நாளுக்குச் சுமார் <xliff:g id="NUMBER_1">%,d</xliff:g> அறிவிப்புகள்</item>
+      <item quantity="one">ஒரு நாளுக்குச் சுமார் <xliff:g id="NUMBER_0">%d</xliff:g> அறிவிப்பு</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> அறிவிப்புகள் / வாரம்</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> அறிவிப்பு / வாரம்</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">ஒரு வாரத்திற்குச் சுமார் <xliff:g id="NUMBER_1">%,d</xliff:g> அறிவிப்புகள்</item>
+      <item quantity="one">ஒரு வாரத்திற்குச் சுமார் <xliff:g id="NUMBER_0">%d</xliff:g> அறிவிப்பு</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ஒருபோதும் அனுப்பியதில்லை"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"சாதனம் &amp; ஆப்ஸ் அறிவிப்புகள்"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"எதுவும் செய்ய வேண்டாம்"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"அதிர்வு"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"ஒலியடக்கு"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"இயக்க, \"பவர் பட்டனை அழுத்திப் பிடித்திருக்கவும்\" என்பதைப் பவர் மெனுவில் மாற்றுங்கள்."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"இயக்க, \"பவர் பட்டனை அழுத்திப் பிடித்திருக்கவும்\" என்பதைப் பவர் மெனுவில் மாற்றுங்கள்."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"நெட்வொர்க் விவரங்கள்"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"உங்கள் மொபைலில் உள்ள ஆப்ஸால் உங்கள் சாதனத்தின் பெயரைப் பார்க்க முடியும். புளூடூத் சாதனங்கள், வைஃபை நெட்வொர்க் ஆகியவற்றுடன் இணைக்கும்போதோ வைஃபை ஹாட்ஸ்பாட்டை அமைக்கும்போதோ அப்பெயர் பிறருக்கும் காட்டப்படக்கூடும்."</string>
     <string name="devices_title" msgid="649715719278562515">"சாதனங்கள்"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"சாதனக் கட்டுப்பாடுகள்"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"கார்டுகளும் பாஸ்களும்"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"கார்டுகளும் பாஸ்களும்"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"பவர் பட்டனை அழுத்திப் பிடித்தல்"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistantடை இயக்க அழுத்திப் பிடித்திருக்கவும்"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"பவர் மெனு தோன்றுவதற்கு அழுத்திப் பிடித்திருக்கவும்"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Assistantடை முடக்க அழுத்திப் பிடித்திருக்கவும்"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"பவர் பட்டனை அழுத்திப் பிடித்திருக்கவும்"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"அணுக, பவர் பட்டனை அழுத்திப் பிடியுங்கள்"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"பவர் மெனு"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"டிஜிட்டல் அசிஸ்டண்ட்"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"டிஜிட்டல் அசிஸ்டண்ட்டை அணுகுங்கள்"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"பவர் மெனுவை அணுகுங்கள்"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"பயன்படுத்த முதலில் திரைப்பூட்டை அமைக்கவும்"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistantடிற்காக அழுத்திப் பிடித்தல்"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"பவர் பட்டனை அழுத்திப் பிடித்து Assistantடைத் தொடங்கலாம்"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"பவர் மற்றும் அவசரகால மெனு:\nபவர் பட்டனையும் ஒலியளவை அதிகரிக்கும் பட்டனையும் ஒன்றாக அழுத்தவும்."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"ஒலிப்பதைத் தடுத்தல்:\nஇதற்கான ஷார்ட்கட் ஒலியளவு மெனுவில் உள்ளது."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"பவர் மெனு:\nபவர் பட்டனையும் ஒலியளவை அதிகரிக்கும் பட்டனையும் ஒன்றாக அழுத்தவும்"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"ஒலிப்பதைத் தடுத்தல்:\nஷார்ட்கட்டிற்கு ஒலியளவு பட்டனை அழுத்தவும்"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"அழுத்திப் பிடிப்பதற்கான கால அளவு"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"எவ்வளவு நேரம் பவர் பட்டனை அழுத்திப் பிடிக்க வேண்டும் என்பதைத் தேர்ந்தெடுப்பதன் மூலம் உணர்திறனைச் சரிசெய்யலாம்"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"குறைந்தபட்சம்"</string>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 9338fdf..5ea3c56 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"వారు Pixel Imprintను ఉపయోగించినప్పుడు, వారి వేలిముద్ర మోడల్‌ను అప్‌డేట్ చేయడానికి ఇమేజ్‌లు ఉపయోగించబడతాయి. మీ చిన్నారి వేలిముద్ర మోడల్‌ను క్రియేట్ చేయడానికి ఉపయోగించే ఇమేజ్‌లు ఎప్పుడూ స్టోర్ చేయబడవు, కానీ వేలిముద్ర మోడల్ ఫోన్‌లో సురక్షితంగా స్టోర్ చేయబడుతుంది, ఫోన్ నుండి బయటకు పంపబడదు. మొత్తం ప్రాసెస్ విధానం ఫోన్‌లో సురక్షితంగా జరుగుతుంది."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"మీరు సెట్టింగ్‌లలో ఎప్పుడైనా మీ వేలిముద్ర ఇమేజ్‌లను, మోడల్‌ను తొలగించవచ్చు లేదా \'వేలిముద్ర అన్‌లాక్\'ను ఆఫ్ చేయవచ్చు. వేలిముద్ర ఇమేజ్‌లు, మోడల్‌లు మీరు వాటిని తొలగించే వరకు ఫోన్‌లో స్టోర్ చేయబడతాయి."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"మీరు మరియు మీ చిన్నారి వారి వేలిముద్ర ఇమేజ్‌లను, మోడల్‌ను తొలగించవచ్చు లేదా సెట్టింగ్‌లలో ఎప్పుడైనా వేలిముద్ర అన్‌లాక్‌ను ఆఫ్ చేయవచ్చు. వేలిముద్ర ఇమేజ్‌లు అలాగే మోడల్‌లు తొలగించబడే వరకు ఫోన్‌లో స్టోర్ చేయబడతాయి."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"మీరు అనుకోని సందర్భాలలో కూడా, మీ వేలి వద్దకు స్క్రీన్‌ను తీసుకురావడం ద్వారా ఇతరులు కూడా అన్‌లాక్ చేయగలుగుతారు."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"మీరు అనుకోని సందర్భాలలో కూడా, మీ వేలి వద్దకు స్క్రీన్‌ను తీసుకురావడం ద్వారా ఇతరులు కూడా అన్‌లాక్ చేయగలుగుతారు."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"మీ టాబ్లెట్‌ను మీరు అన్‌లాక్ చేయకూడదనుకున్నప్పుడు కూడా ఎవరైనా దానిని మీ వేలి వద్దకు స్క్రీన్‌ను తీసుకురావడం ద్వారా అన్‌లాక్ చేయవచ్చు."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"మీ పరికరాన్ని మీరు అన్‌లాక్ చేయకూడదనుకున్నప్పుడు కూడా ఎవరైనా దానిని మీ వేలి వద్దకు స్క్రీన్‌ను తీసుకురావడం ద్వారా అన్‌లాక్ చేయవచ్చు."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"కొంతమంది వారి వేలిని పట్టుకొని దాని దగ్గరకు తీసుకొచ్చినట్లు, మీ చిన్నారి ఫోన్‌ను ఉద్దేశం లేకపోయినప్పటికీ అన్‌లాక్ చేసే అవకాశం ఉండవచ్చు."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ఉత్తమ ఫలితాల కోసం, Google చేత సర్టిఫైడ్ చేయబడి తయారు చేయబడిన స్క్రీన్ ప్రొటెక్టర్‌ను ఉపయోగించండి. ఇతర స్క్రీన్ ప్రొటెక్టర్‌లతో, మీ వేలిముద్ర పని చేయకపోవచ్చు."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ఉత్తమ ఫలితాల కోసం, Google చేత సర్టిఫైడ్ చేయబడి తయారు చేయబడిన స్క్రీన్ ప్రొటెక్టర్‌ను ఉపయోగించండి. ఇతర స్క్రీన్ ప్రొటెక్టర్‌లతో, మీ పిల్లల వేలిముద్ర పని చేయకపోవచ్చు."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"పరికరం మరియు వేలిముద్ర సెన్సార్ లొకేషన్‌తో చిత్రపటం"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"పేరు"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"సరే"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"మళ్లీ ట్రై చేయండి"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"తొలగించండి"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"సెన్సార్‌ని తాకండి"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"మీ వేలిని సెన్సార్‌పై ఉంచి, మీకు వైబ్రేషన్ అనుభూతి కలిగిన తర్వాత దాన్ని తీసివేయండి"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"పూర్తయింది"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"అయ్యో, అది సెన్సార్ కాదు"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"మీ ఫోన్ వెనుక ఉన్న సెన్సార్‌ని తాకండి. మీ చూపుడు వేలిని వాడండి."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"ఎన్‌రోల్‌మెంట్ పూర్తి కాలేదు"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"వేలిముద్ర నమోదు సమయ పరిమితి చేరుకుంది. మళ్లీ ప్రయత్నించండి."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"వేలిముద్ర సెటప్ సమయం ముగిసింది"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ఇప్పుడు మళ్లీ ట్రై చేయండి లేదా సెట్టింగ్‌లలో మీ వేలిముద్రను తర్వాత సెటప్ చేయండి"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"వేలిముద్ర నమోదు పని చేయలేదు. మళ్లీ ప్రయత్నించండి లేదా మరొక వేలిని ఉపయోగించండి."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"మరొకటి జోడించు"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"తర్వాత"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"మీ ఫోన్‌ను అనుకూలంగా మార్చండి"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"వివిధ శైలులు, వాల్‌పేపర్‌లు, మరిన్నింటిని ప్రయత్నించండి"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"స్క్రీన్ సేవర్"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"స్క్రీన్ సేవర్"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"స్క్రీన్ సేవర్‌ను ఉపయోగించండి"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ఛార్జ్ చేసేటప్పుడు లేదా డాక్ చేసినప్పుడు"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"పై రెండు సందర్భాల్లోనూ"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ఛార్జింగ్‌లో ఉన్నప్పుడు"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"డాక్ చేయబడినప్పుడు"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ఎప్పటికీ వద్దు"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ఆఫ్‌లో ఉంది"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"ఫోన్ డాక్ చేయబడినప్పుడు మరియు/లేదా నిద్రావస్థలో ఉన్నప్పుడు ఏమి జరగాలో నియంత్రించడానికి, స్క్రీన్ సేవర్‌ను ఆన్ చేయండి."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"ఎప్పుడు ప్రారంభించాలి"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"ప్రస్తుత స్క్రీన్ సేవర్"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"సెట్టింగ్‌లు"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ఆటోమేటిక్‌ ప్రకాశం"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"సక్రియం చేయడానికి వేళ్లను తీసివేయండి"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"యాంబియంట్ డిస్‌ప్లే"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PINను సెట్ చేయండి"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"వర్క్ PINను సెట్ చేయండి"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ఆకృతిని సెట్ చేయండి"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"అదనపు సెక్యూరిటీ కోసం, పరికరాన్ని అన్‌లాక్ చేయడానికి ఆకృతిని సెట్ చేయండి"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"వర్క్ ఆకృతిని సెట్ చేయండి"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"వేలిముద్ర కోసం పాస్‌వర్డ్ సెట్ చేయండి"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"వేలిముద్రకు ఆకృతి సెట్ చేయండి"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"అత్యవసర యాప్"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"యాప్ ప్రాధాన్యతలను రీసెట్ చేయి"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"యాప్ ప్రాధాన్యతలను రీసెట్ చేయాలా?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"ఇది వీటి కోసం అన్ని ప్రాధాన్యతలను రీసెట్ చేస్తుంది:\n\n"<li>"డిజేబుల్ చేయ‌బ‌డిన‌ యాప్‌లు"</li>\n<li>"డిజేబుల్ చేయ‌బ‌డిన‌ యాప్‌ నోటిఫికేషన్‌లు"</li>\n<li>"చర్యల కోసం ఆటోమేటిక్‌ యాప్‌లు"</li>\n<li>"యాప్‌ల కోసం బ్యాక్‌గ్రౌండ్‌ డేటా పరిమితులు"</li>\n<li>"ఏవైనా అనుమతి పరిమితులు"</li>\n\n"మీరు ఏ యాప్‌ డేటానూ కోల్పోరు."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"ఇది వీటి కోసం అన్ని ప్రాధాన్యతలను రీసెట్ చేస్తుంది:\n\n"<li>"డిజేబుల్‌ చేయబడిన యాప్‌లు"</li>\n<li>"డిజేబుల్‌ చేయబడిన యాప్ నోటిఫికేషన్‌లు"</li>\n<li>"చర్యల కోసం ఆటోమేటిక్ యాప్‌లు"</li>\n<li>"యాప్‌ల కోసం బ్యాక్‌గ్రౌండ్‌ డేటా పరిమితులు"</li>\n<li>"ఏవైనా అనుమతి పరిమితులు"</li>\n<li>"బ్యాటరీ వినియోగం సెట్టింగ్‌లు"</li>\n\n"మీరు ఏ యాప్‌ డేటాను కోల్పోరు."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"యాప్‌లను రీసెట్ చేయి"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"స్పేస్‌ను మేనేజ్ చేయండి"</string>
     <string name="filter" msgid="9039576690686251462">"ఫిల్టర్ చేయి"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"సెట్టింగ్స్ రీసెట్ చేయండి"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"డిస్‌ప్లే సైజ్, టెక్స్ట్ సెట్టింగ్‌లు రీసెట్ చేయబడ్డాయి"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"డిస్‌ప్లే సైజు, టెక్స్ట్‌ను రీసెట్ చేయాలా?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"మీ డిస్‌ప్లే సైజు, టెక్స్ట్ ప్రాధాన్యతలు ఫోన్ అసలు సెట్టింగ్‌లకు రీసెట్ చేయబడతాయి"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"మీ డిస్‌ప్లే సైజు, టెక్స్ట్ ప్రాధాన్యతలు ఫోన్ అసలు సెట్టింగ్‌లకు రీసెట్ చేయబడతాయి"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"మీ డిస్‌ప్లే సైజ్, టెక్స్ట్ ప్రాధాన్యతలు, టాబ్లెట్ ఒరిజినల్ సెట్టింగ్‌లకు రీసెట్ చేయబడతాయి"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"రీసెట్ చేయండి"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"వారాంతపు ప్లాన్‌లు ఏమైనా ఉన్నాయా?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"బీచ్ వైపు వెళ్తున్నాను. నాతో పాటు వస్తారా?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"చివరిగా పూర్తి ఛార్జింగ్ చేసినప్పటి నుండి ఎలాంటి వినియోగం లేదు"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"గత 24 గంటల నుండి ఎలాంటి వినియోగం లేదు"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"ఇతర యూజర్‌లు"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"పరికరం వినియోగాన్ని బ‌ట్టి మిగిలి ఉన్న బ్యాటరీ అంచనా వేయ‌బడుతుంది"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"అంచనా వేసిన సమయం మిగిలి ఉంది"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"పూర్తిగా ఛార్జ్ కావడానికి పట్టే సమయం"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"పూర్తి హాట్‌వర్డ్ మరియు పరస్పర చర్య"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"సరళ ప్రసంగ-వచన రూపం"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"ఈ వాయిస్ ఇన్‌పుట్ సర్వీస్ ఎల్లప్పుడూ ఆన్‌లో ఉండే వాయిస్ పర్యవేక్షణని అమలు చేయగలదు అలాగే మీ తరపున వాయిస్ ప్రారంభిత యాప్‌లను కంట్రోల్ చేయగలదు. ఇది <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> యాప్ నుండి అందించబడుతుంది. ఈ సర్వీస్ వినియోగాన్ని ప్రారంభించాలా?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"పరికరంలో స్పీచ్ రికగ్నిషన్ సెట్టింగ్‌లు"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"పరికరంలో రికగ్నిషన్"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"పరికరంలో స్పీచ్ రికగ్నిషన్"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"ప్రాధాన్య ఇంజిన్"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"ఇంజిన్ సెట్టింగ్‌లు"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"ప్రసంగం రేట్ &amp; స్థాయి"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"తొలగించండి"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"ఈ సెషన్‌లోని అన్ని యాప్‌లు మరియు డేటా తొలగించబడతాయి."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"తీసివేయండి"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"గెస్ట్ (మీరు)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"యూజర్‌లు"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"ఇతర యూజర్‌లు"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"గెస్ట్ యాక్టివిటీని తొలగించండి"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"గెస్ట్ మోడ్ నుండి నిష్క్రమించినప్పుడు అన్ని గెస్ట్ యాప్‌లు, డేటాను తొలగించండి"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"గెస్ట్ యాక్టివిటీని తొలగించాలా?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ఈ గెస్ట్ సెషన్‌లోని యాప్‌లు, డేటా ఇప్పుడు తొలగించబడతాయి, మీరు గెస్ట్ మోడ్ నుండి నిష్క్రమించిన ప్రతిసారీ భవిష్యత్ గెస్ట్ యాక్టివిటీ మొత్తం తొలగించబడుతుంది"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"ఫోన్ కాల్స్‌ను ఆన్ చేయి"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"ఫోన్ కాల్స్‌ &amp; SMS ఆన్ చేయి"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"వినియోగదారుని తొలగించు"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"\"<xliff:g id="APP_NAME">%1$s</xliff:g>\" నోటిఫికేషన్‌లన్నీ"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"అన్ని <xliff:g id="APP_NAME">%1$s</xliff:g> నోటిఫికేషన్‌లు"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"అనుకూల నోటిఫికేషన్‌లు"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">రోజుకు~<xliff:g id="NUMBER_1">%,d</xliff:g> నోటిఫికేషన్‌లు</item>
-      <item quantity="one">రోజుకు ~<xliff:g id="NUMBER_0">%d</xliff:g> నోటిఫికేషన్</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">ఒక రోజుకు సుమారుగా <xliff:g id="NUMBER_1">%,d</xliff:g> నోటిఫికేషన్‌లు</item>
+      <item quantity="one">ఒక రోజుకు సుమారుగా <xliff:g id="NUMBER_0">%d</xliff:g> నోటిఫికేషన్</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">వారానికి ~<xliff:g id="NUMBER_1">%,d</xliff:g>నోటిఫికేషన్‌లు</item>
-      <item quantity="one">వారానికి ~<xliff:g id="NUMBER_0">%d</xliff:g> నోటిఫికేషన్</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">వారానికి సుమారుగా <xliff:g id="NUMBER_1">%,d</xliff:g> నోటిఫికేషన్‌లు</item>
+      <item quantity="one">వారానికి సుమారుగా <xliff:g id="NUMBER_0">%d</xliff:g> నోటిఫికేషన్</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"ఎప్పటికీ వ‌ద్దు"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"పరికరం &amp; యాప్ నోటిఫికేషన్‌లు"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"ఏమీ చేయవద్దు"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"వైబ్రేట్"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"మ్యూట్ చేసినవి"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"ఎనేబుల్ చేయడానికి, మొదట \"నొక్కి, పట్టుకోండి పవర్ బటన్\"ను పవర్ మెనూకు మార్చండి."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"ఎనేబుల్ చేయడానికి, మొదట \"పవర్ బటన్‌ను నొక్కి &amp; పట్టుకోండి\" తర్వాత పవర్ మెనూకు మార్చండి."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"నెట్‌వర్క్ వివరాలు"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"మీ పరికరంలోని పేరు మీ ఫోన్‌లోని యాప్‌లకు కనిపిస్తుంది. మీరు బ్లూటూత్ పరికరాలకు కనెక్ట్ చేసినప్పుడు, Wi-Fi నెట్‌వర్క్‌కు కనెక్ట్ చేసినప్పుడు లేదా Wi-Fi హాట్‌స్పాట్‌ను సెటప్ చేసినప్పుడు ఇతర వ్యక్తులకు కూడా ఇది కనిపించవచ్చు."</string>
     <string name="devices_title" msgid="649715719278562515">"పరికరాలు"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"డివైజ్ కంట్రోల్స్"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"కార్డ్‌లు &amp; పాస్‌లు"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"కార్డ్‌లు &amp; పాస్‌లు"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"పవర్ బటన్‌ను నొక్కి, పట్టుకోండి"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Assistant కోసం నొక్కి, పట్టుకోండి"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"పవర్ మెనూ కోసం నొక్కి, పట్టుకోండి"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"నొక్కి, పట్టుకోండి బటన్ డిజేబుల్ చేయబడింది"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"పవర్ బటన్‌ను నొక్కి &amp; పట్టుకోండి"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"యాక్సెస్ చేయడానికి పవర్ బటన్‌ను నొక్కి &amp; పట్టుకోండి"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"పవర్ మెనూ"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"డిజిటల్ అసిస్టెంట్"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"డిజిటల్ అసిస్టెంట్‌ను యాక్సెస్ చేయండి"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"పవర్ మెనూను యాక్సెస్ చేయండి"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"ఉపయోగించడానికి, ముందుగా స్క్రీన్ లాక్‌ను సెట్ చేయండి"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Assistant కోసం హోల్డ్ చేయండి"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"పవర్ బటన్‌ను హోల్డ్ చేయడం ద్వారా Assistantను ట్రిగ్గర్ చేయండి"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"పవర్ &amp; ఎమర్జెన్సీ మెనూ:\nపవర్ బటన్‌ను, అలాగే వాల్యూమ్ పెంపు బటన్‌ను ఒకే సమయంలో నొక్కండి."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"రింగ్ అవ్వడాన్ని నిరోధించండి:\nవాల్యూమ్ మెనూలో షార్ట్‌కట్ అందుబాటులో ఉంది."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"పవర్ మెనూ:\nపవర్ బటన్, వాల్యూమ్ పెంపు బటన్‌ను ఒకేసారి నొక్కండి"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"రింగ్ చేయడాన్ని నివారించండి:\n షార్ట్‌కట్ కోసం వాల్యూమ్ బటన్‌ను నొక్కండి"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"నొక్కి ఉంచాల్సిన సమయం"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"పవర్ బటన్‌ను ఎంతసేపు నొక్కి ఉంచాలో ఎంచుకోవడం ద్వారా సెన్సిటివిటీని సర్దుబాటు చేయండి"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"తక్కువ నిడివి"</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index a36d071..5e14110 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"เมื่อใช้ Pixel Imprint ระบบจะใช้รูปภาพเพื่ออัปเดตรูปแบบลายนิ้วมือ ระบบจะไม่เก็บรูปภาพที่ใช้สร้างรูปแบบลายนิ้วมือของบุตรหลาน แต่จะเก็บรูปแบบลายนิ้วมือไว้อย่างปลอดภัยในโทรศัพท์และจะไม่มีการส่งออกไปไหน การประมวลผลข้อมูลทั้งหมดเกิดขึ้นอย่างปลอดภัยในโทรศัพท์"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"คุณลบรูปภาพและรูปแบบลายนิ้วมือหรือปิดการปลดล็อกด้วยลายนิ้วมือได้ทุกเมื่อในการตั้งค่า ระบบจะจัดเก็บรูปภาพและรูปแบบลายนิ้วมือไว้ในโทรศัพท์จนกว่าคุณจะลบออก"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"คุณและบุตรหลานลบรูปภาพและรูปแบบลายนิ้วมือ หรือปิดการปลดล็อกด้วยลายนิ้วมือได้ทุกเมื่อในการตั้งค่า ระบบจะเก็บรูปภาพและรูปแบบลายนิ้วมือไว้ในโทรศัพท์จนกว่าจะมีการลบออก"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"โทรศัพท์อาจปลดล็อกโดยที่คุณไม่ได้ตั้งใจ เช่น มีใครบางคนจ่อโทรศัพท์ที่นิ้วของคุณ"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"โทรศัพท์อาจปลดล็อกโดยที่คุณไม่ได้ตั้งใจ เช่น มีใครบางคนจ่อโทรศัพท์ที่นิ้วของคุณ"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"แท็บเล็ตอาจปลดล็อกโดยที่คุณไม่ได้ตั้งใจ เช่น หากมีใครบางคนจ่อแท็บเล็ตที่นิ้วของคุณ"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"อุปกรณ์อาจปลดล็อกโดยที่คุณไม่ได้ตั้งใจ เช่น หากมีใครบางคนจ่ออุปกรณ์ที่นิ้วของคุณ"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"โทรศัพท์ของบุตรหลานอาจปลดล็อกโดยที่ไม่ได้ตั้งใจ เช่น มีใครบางคนเอาโทรศัพท์ไปแตะที่นิ้วของบุตรหลาน"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"ใช้แผ่นปกป้องหน้าจอที่มีป้ายรับรอง Made For Google เพื่อให้ได้ผลลัพธ์ที่ดีที่สุด หากใช้แผ่นปกป้องหน้าจออื่นๆ อาจใช้ลายนิ้วมือของคุณไม่ได้"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"ใช้แผ่นปกป้องหน้าจอที่มีป้ายรับรอง Made For Google เพื่อให้ได้ผลลัพธ์ที่ดีที่สุด หากใช้แผ่นปกป้องหน้าจออื่นๆ อาจใช้ลายนิ้วมือของบุตรหลานไม่ได้"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"ภาพประกอบที่มีตำแหน่งของอุปกรณ์และเซ็นเซอร์ลายนิ้วมือ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"ชื่อ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ตกลง"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"ลองอีกครั้ง"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"ลบ"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"แตะเซ็นเซอร์"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"วางนิ้วบนเซ็นเซอร์และยกขึ้นหลังจากรู้สึกถึงการสั่น"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"เสร็จสิ้น"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"อ๊ะ นั่นไม่ใช่เซ็นเซอร์"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"แตะเซ็นเซอร์ที่ด้านหลังโทรศัพท์โดยใช้นิ้วชี้"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"การลงทะเบียนยังไม่เสร็จสมบูรณ์"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"หมดเวลาลงทะเบียนลายนิ้วมือ โปรดลองอีกครั้ง"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"การตั้งค่าลายนิ้วมือหมดเวลา"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ลองอีกครั้งตอนนี้หรือตั้งค่าลายนิ้วมือภายหลังในการตั้งค่า"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"การลงทะเบียนลายนิ้วมือไม่ทำงาน โปรดลองอีกครั้งหรือใช้นิ้วอื่น"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"เพิ่มอีก"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"ถัดไป"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"ปรับแต่งโทรศัพท์"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"ลองใช้รูปแบบ วอลเปเปอร์ และอื่นๆ ที่มีหลากหลาย"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"โปรแกรมรักษาหน้าจอ"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"โปรแกรมรักษาหน้าจอ"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"ใช้โปรแกรมรักษาหน้าจอ"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ขณะชาร์จหรือวางอยู่บนแท่นชาร์จ"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"แบบใดก็ได้"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"ขณะที่ชาร์จ"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ขณะวางอยู่บนแท่นชาร์จ"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"ไม่เลย"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"ปิด"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"หากต้องการควบคุมสิ่งที่เกิดขึ้นขณะที่โทรศัพท์อยู่บนแท่นชาร์จและ/หรืออยู่ในโหมดสลีป ให้เปิดโปรแกรมรักษาหน้าจอ"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"เริ่มเมื่อใด"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"โปรแกรมรักษาหน้าจอในปัจจุบัน"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"การตั้งค่า"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"ปรับความสว่างอัตโนมัติ"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"ยกขึ้นเพื่อเวก"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"หน้าจอแอมเบียนท์"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"ตั้ง PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"ตั้ง PIN โปรไฟล์งาน"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"ตั้งรูปแบบ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"ตั้งค่ารูปแบบสำหรับปลดล็อกอุปกรณ์เพื่อให้ปลอดภัยยิ่งขึ้น"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"ตั้งรูปแบบโปรไฟล์งาน"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"ตั้งรหัสผ่านเพื่อใช้ลายนิ้วมือ"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"ตั้งรูปแบบเพื่อใช้ลายนิ้วมือ"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"แอปฉุกเฉิน"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"รีเซ็ตค่ากำหนดแอป"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"รีเซ็ตค่ากำหนดแอปไหม"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"คำสั่งนี้จะรีเซ็ตค่ากำหนดทั้งหมดของรายการต่อไปนี้\n\n"<li>"แอปที่ปิดใช้"</li>\n<li>"การแจ้งเตือนของแอปที่ปิดใช้"</li>\n<li>"แอปพลิเคชันเริ่มต้นสำหรับการทำงานต่างๆ"</li>\n<li>"การจำกัดอินเทอร์เน็ตที่ใช้งานอยู่เบื้องหลังของแอป"</li>\n<li>"การจำกัดสิทธิ์ใดๆ"</li>\n\n"ทั้งนี้ข้อมูลแอปจะไม่หายไป"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"การดำเนินการนี้จะรีเซ็ตค่ากำหนดทั้งหมดสำหรับ\n\n"<li>"แอปที่ปิดใช้"</li>\n<li>"การแจ้งเตือนแอปที่ปิดใช้"</li>\n<li>"แอปพลิเคชันเริ่มต้นสำหรับการทำงานต่างๆ"</li>\n<li>"ข้อจำกัดอินเทอร์เน็ตที่ใช้งานอยู่เบื้องหลังสำหรับแอป"</li>\n<li>"ข้อจำกัดสิทธิ์ใดๆ"</li>\n<li>"การตั้งค่าการใช้งานแบตเตอรี่"</li>\n\n"ข้อมูลแอปทั้งหมดของคุณจะยังคงอยู่เหมือนเดิม"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"รีเซ็ตแอป"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"จัดการพื้นที่"</string>
     <string name="filter" msgid="9039576690686251462">"ตัวกรอง"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"รีเซ็ตการตั้งค่า"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"รีเซ็ตการตั้งค่าขนาดที่แสดงและข้อความแล้ว"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"รีเซ็ตขนาดการแสดงผลและข้อความหรือไม่"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"ค่ากำหนดของขนาดการแสดงผลและข้อความของคุณจะเปลี่ยนกลับไปเป็นการตั้งค่าเดิมของโทรศัพท์"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"ค่ากำหนดของขนาดการแสดงผลและข้อความของคุณจะเปลี่ยนกลับไปเป็นการตั้งค่าเดิมของโทรศัพท์"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"ค่ากำหนดของขนาดการแสดงผลและข้อความจะเปลี่ยนกลับไปเป็นการตั้งค่าเดิมของแท็บเล็ต"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"รีเซ็ต"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"เสาร์อาทิตย์นี้มีแผนจะทำอะไรมั้ย"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ไปทะเล อยากไปด้วยมั้ย"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"ไม่มีการใช้งานตั้งแต่ชาร์จเต็มครั้งล่าสุด"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"ไม่มีการใช้งานในช่วง 24 ชม. ที่ผ่านมา"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"ผู้ใช้รายอื่นๆ"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"ค่าประมาณแบตเตอรี่ที่เหลืออิงตามการใช้งานอุปกรณ์ของคุณ"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"เวลาที่เหลือโดยประมาณ"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"จนกว่าจะชาร์จเต็ม"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"คำที่นิยมและการโต้ตอบเต็มรูปแบบ"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"เขียนตามคำบอกแบบง่ายๆ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"บริการป้อนข้อมูลด้วยเสียงนี้สามารถคอยตรวจสอบเสียงอยู่ตลอดเวลาและควบคุมแอปพลิเคชันที่สามารถใช้เสียงในนามของคุณได้ บริการนี้มาจากแอปพลิเคชัน <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> เปิดใช้การทำงานของบริการนี้ไหม"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"การตั้งค่าการจดจำในอุปกรณ์"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"การจดจำในอุปกรณ์"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"การจดจำคำพูดในอุปกรณ์"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"เครื่องมือที่ต้องการ"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"การตั้งค่าเครื่องมือ"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"ความเร็วและระดับเสียงสูงต่ำของเสียงพูด"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"ลบ"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"ระบบจะลบแอปและข้อมูลทั้งหมดในเซสชันนี้"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"นำออก"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"ผู้ใช้ชั่วคราว (คุณ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"ผู้ใช้"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"ผู้ใช้รายอื่นๆ"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"ลบกิจกรรมของผู้ใช้ชั่วคราว"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"ลบแอปและข้อมูลทั้งหมดของผู้ใช้ชั่วคราวเมื่อออกจากโหมดผู้ใช้ชั่วคราว"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"ลบกิจกรรมของผู้ใช้ชั่วคราวไหม"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"ระบบจะลบแอปและข้อมูลจากเซสชันผู้ใช้ชั่วคราวนี้ตอนนี้เลย และต่อไปนี้จะลบกิจกรรมทั้งหมดของผู้ใช้ชั่วคราวทุกครั้งที่คุณออกจากโหมดผู้ใช้ชั่วคราว"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"เปิดการโทร"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"เปิดการโทรและ SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"ลบผู้ใช้"</string>
@@ -4007,11 +4021,11 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"การแจ้งเตือนทั้งหมดของ \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"การแจ้งเตือนทั้งหมดของ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"การแจ้งเตือนแบบปรับอัตโนมัติ"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
       <item quantity="other">การแจ้งเตือนประมาณ <xliff:g id="NUMBER_1">%,d</xliff:g> ครั้งต่อวัน</item>
       <item quantity="one">การแจ้งเตือนประมาณ <xliff:g id="NUMBER_0">%d</xliff:g> ครั้งต่อวัน</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
       <item quantity="other">การแจ้งเตือนประมาณ <xliff:g id="NUMBER_1">%,d</xliff:g> ครั้งต่อสัปดาห์</item>
       <item quantity="one">การแจ้งเตือนประมาณ <xliff:g id="NUMBER_0">%d</xliff:g> ครั้งต่อสัปดาห์</item>
     </plurals>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"ไม่ต้องทำอะไร"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"สั่น"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"ปิดเสียง"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"หากต้องการเปิดใช้งาน ก่อนอื่นให้เปลี่ยน \"กดปุ่มเปิด/ปิดค้างไว้\" เป็นเมนูเปิด/ปิด"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"หากต้องการเปิดใช้ ก่อนอื่นให้เปลี่ยน \"กดปุ่มเปิด/ปิดค้างไว้\" เป็นเมนูเปิด/ปิด"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"รายละเอียดเครือข่าย"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"แอปในโทรศัพท์จะเห็นชื่อของอุปกรณ์ และคนอื่นก็อาจเห็นเช่นกันหากคุณเชื่อมต่อกับอุปกรณ์บลูทูธหรือเครือข่าย Wi-Fi หรือตั้งค่าฮอตสปอต Wi-Fi"</string>
     <string name="devices_title" msgid="649715719278562515">"อุปกรณ์"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"ระบบควบคุมอุปกรณ์"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"บัตรและบัตรผ่าน"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"บัตรและบัตรผ่าน"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"กดปุ่มเปิด/ปิดค้างไว้"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"กดค้างเพื่อเปิดใช้ Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"กดค้างเพื่อแสดงเมนูเปิด/ปิด"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"การกดค้างปิดใช้อยู่"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"กดปุ่มเปิด/ปิดค้างไว้"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"กดปุ่มเปิด/ปิดค้างไว้เพื่อเข้าถึง"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"เมนูเปิด/ปิด"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ผู้ช่วยดิจิทัล"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"เข้าถึงผู้ช่วยดิจิทัล"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"เข้าถึงเมนูเปิด/ปิด"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"หากต้องการใช้ ให้ตั้งค่าการล็อกหน้าจอก่อน"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"กดค้างไว้เพื่อเปิดใช้งาน Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"เรียกให้ Assistant ทำงานโดยกดปุ่มเปิด/ปิดค้างไว้"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"เมนูเปิด/ปิดและกรณีฉุกเฉิน\nกดปุ่มเปิด/ปิดและปุ่มเพิ่มระดับเสียงพร้อมกัน"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"ป้องกันการส่งเสียง\nมีทางลัดให้ใช้ในเมนูระดับเสียง"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"เมนูเปิด/ปิด\nกดปุ่มเปิด/ปิดและปุ่มเพิ่มระดับเสียงพร้อมกัน"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"ป้องกันการส่งเสียง\nกดปุ่มปรับระดับเสียงเพื่อใช้ทางลัด"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"ระยะเวลาการกดค้าง"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"ปรับความไวโดยเลือกระยะเวลาการกดปุ่มเปิด/ปิดค้างไว้"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"ไม่นาน"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 2afc885..1962d57 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Kapag ginamit niya ang Pixel Imprint, gagamitin ang mga larawan para i-update ang modelo ng kanyang fingerprint. Hindi kailanman sino-store ang mga larawang ginamit para gawin ang modelo ng fingerprint ng iyong anak, pero secure na naka-store ang modelo ng fingerprint sa telepono at hindi ito kailanman lalabas sa telepono. Sa telepono secure na nangyayari ang lahat ng pagpoproseso."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Puwede mong i-delete ang mga larawan at modelo ng iyong fingerprint, o i-off ang Pag-unlock Gamit ang Fingerprint anumang oras sa Mga Setting. Naka-store sa telepono ang mga larawan at modelo ng fingerprint hanggang sa i-delete mo ang mga ito."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Magagawa mo at ng iyong anak na i-delete ang mga larawan at modelo ng kanyang fingerprint, o i-off ang Pag-unlock Gamit ang Fingerprint anumang oras sa Mga Setting. Naka-store ang mga larawan at modelo ng fingerprint sa telepono hanggang sa i-delete ang mga ito."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Puwedeng ma-unlock ang iyong telepono nang hindi sinasadya, gaya kung may magtapat nito sa daliri mo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Puwedeng ma-unlock ang iyong telepono nang hindi sinasadya, gaya kung may magtapat nito sa daliri mo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Puwedeng ma-unlock ang iyong tablet nang hindi sinasadya, gaya kung may magdikit nito sa daliri mo."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Puwedeng ma-unlock ang iyong device nang hindi sinasadya, gaya kung may magdikit nito sa daliri mo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Puwedeng ma-unlock ang telepono ng iyong anak nang hindi niya sinasadya, gaya ng kapag may taong naglapat nito sa kanyang daliri."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Para sa pinakamahuhusay na resulta, gumamit ng screen protector na certified ng Made for Google. Posibleng hindi gumana ang iyong fingerprint gamit ang iba pang screen protector."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Para sa pinakamahuhusay na resulta, gumamit ng screen protector na certified ng Made for Google. Posibleng hindi gumana ang fingerprint ng iyong anak gamit ang iba pang screen protector."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Larawan kung saan ipinapakita ang lokasyon ng device at fingerprint sensor"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Pangalan"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Subukan ulit"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"I-delete"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Pindutin ang sensor"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Ilagay ang iyong daliri sa sensor at iangat ito pagkatapos mong makaramdam ng pag-vibrate"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Tapos na"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Naku, hindi iyan ang sensor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Pindutin ang sensor sa likod ng iyong telepono. Gamitin ang hintuturo mo."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Hindi nakumpleto ang pag-enroll"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Naabot na ang limitasyon sa oras ng pag-enroll ng fingerprint. Subukan ulit."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Nag-time out ang pag-set up ng fingerprint"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Subukan na ulit o i-set up ang fingerprint mo sa ibang pagkakataon sa Mga Setting"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Hindi gumana ang pagpapatala ng fingerprint. Subukang muli o gumamit ng ibang daliri."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Magdagdag ng isa pa"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Susunod"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"I-customize ang iyong telepono"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Sumubok ng iba\'t ibang istilo, wallpaper, at higit pa"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Screen saver"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"screensaver"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Gumamit ng screen saver"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Habang nagcha-charge o naka-dock"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Alinman"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Habang nagcha-charge"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Habang naka-dock"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Hindi kailanman"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Naka-off"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Upang makontrol kung ano ang mangyayari kapag naka-dock o naka-sleep ang telepono, i-on ang screen saver."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Kailan magsisimula"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Kasalukuyang screen saver"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Mga Setting"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Awtomatikong pagliwanag"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Angatin upang paganahin"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ambient na display"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Magtakda ng PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Magtakda ng PIN sa trabaho"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Magtakda ng pattern"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Para sa karagdagang seguridad, magtakda ng pattern para sa pag-unlock ng device"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Magtakda ng pattern sa trabaho"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Para magamit ang fingerprint, i-set ang pw"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Para magamit ang fingerprint, i-set ang pattern"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Emergency app"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"I-reset ang kagustuhan sa app"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"I-reset ang gusto sa app?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Ire-reset nito ang lahat ng kagustuhan para sa:\n\n"<li>"Mga naka-disable na app"</li>\n<li>"Mga naka-disable na notification ng app"</li>\n<li>"Mga default na application para sa mga pagkilos"</li>\n<li>"Mga paghihigpit sa data ng background para sa mga app"</li>\n<li>"Anumang paghihigpit sa pahintulot"</li>\n\n"Hindi ka mawawalan ng anumang data ng app."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Ire-reset nito ang lahat ng kagustuhan para sa:\n\n"<li>"Mga naka-disable na app"</li>\n<li>"Mga naka-disable na notification ng app"</li>\n<li>"Mga default na application para sa mga pagkilos"</li>\n<li>"Mga paghihigpit sa data sa background para sa mga app"</li>\n<li>"Anumang paghihigpit sa pahintulot"</li>\n<li>"Mga setting ng paggamit ng baterya"</li>\n\n"Hindi mawawala sa iyo ang anumang data ng app."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"I-reset ang apps"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Pamahalaan ang espasyo"</string>
     <string name="filter" msgid="9039576690686251462">"I-filter"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"I-reset ang mga setting"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Na-reset ang laki ng display at mga setting ng text"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"I-reset ang laki ng display at text?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Mare-reset sa mga orihinal na setting ng telepono ang laki ng iyong display at mga kagustuhan sa text."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Mare-reset sa mga orihinal na setting ng telepono ang laki ng iyong display at mga kagustuhan sa text."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Mare-reset sa mga orihinal na setting ng tablet ang laki ng iyong display at mga kagustuhan sa text."</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"I-reset"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Mayroon ka bang anumang plano sa weekend?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Pupunta sa beach. Gusto mo bang sumama?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Walang paggamit mula noong huling na-full charge"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Walang paggamit sa nakalipas na 24 na oras"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Iba pang user"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Nakabatay ang pagtatantya ng natitirang baterya sa paggamit ng iyong device"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Tinatayang natitirang oras"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Hanggang mapuno ang baterya"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Ganap na hotword at pakikipag-ugnay"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Simpleng speech to text"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Magagawa ng serbisyo ng input na boses na ito na magsagawa ng palaging naka-on na pagsubaybay sa boses at kontrolin ang mga application na ine-enable ng boses para sa iyo. Mula ito sa application na <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Ie-enable ba ang paggamit ng serbisyong ito?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Mga setting ng on-device na pagkilala"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"On-device na pagkilala"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"On-device na pagkilala sa speech"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Gustong engine"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Mga setting ng engine"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Rate at pitch ng pananalita"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"I-delete"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Ide-delete ang lahat ng app at data sa session na ito."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Alisin"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Bisita (Ikaw)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Mga User"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Iba pang user"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"I-delete ang aktibidad ng bisita"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"I-delete ang lahat ng app at data ng bisita kapag umaalis sa guest mode"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"I-delete ang aktibidad ng bisita?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Made-delete na ngayon ang mga app at data mula sa session na ito ng bisita, at made-delete ang lahat ng aktibidad ng bisita sa hinaharap sa tuwing aalis ka ng guest mode"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"I-on ang mga pagtawag sa telepono"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"I-on ang mga pagtawag sa telepono at SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"I-delete ang user"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Lahat ng notification ng \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Lahat ng notification ng <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Mga Adaptive na Notification"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> notification bawat araw</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> na notification bawat araw</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Humigit-kumulang <xliff:g id="NUMBER_1">%,d</xliff:g> notification kada araw</item>
+      <item quantity="other">Humigit-kumulang <xliff:g id="NUMBER_1">%,d</xliff:g> na notification kada araw</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> notification bawat linggo</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> na notification bawat linggo</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Humigit-kumulang <xliff:g id="NUMBER_1">%,d</xliff:g> notification kada linggo</item>
+      <item quantity="other">Humigit-kumulang <xliff:g id="NUMBER_1">%,d</xliff:g> na notification kada linggo</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Huwag Kailanman"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Mga notification sa device at app"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Walang gawin"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"I-vibrate"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"I-mute"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Para i-enable, palitan muna ang \"Pindutin nang matagal ang power button\" sa power menu."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Para i-enable, palitan muna ang \"Pindutin nang matagal ang power button\" sa power menu."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Mga detalye ng network"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Nakikita ng mga app sa iyong telepono ang pangalan ng device mo. Puwede rin itong makita ng ibang tao kapag ikaw ay kumonekta sa mga Bluetooth device, kumonekta sa Wi-Fi network, o nag-set up ng Wi-Fi hotspot."</string>
     <string name="devices_title" msgid="649715719278562515">"Mga Device"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"mga kontrol ng device"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Mga card at pass"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"mga card at pass"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Pindutin nang matagal ang power button"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Pindutin nang matagal para sa Assistant"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Pindutin nang matagal para sa power menu"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Naka-disable ang pagpindot nang matagal"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Pindutin nang matagal ang power button"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Pindutin nang matagal ang power button para i-access"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Power menu"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Digital na assistant"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"I-access ang digital na assistant"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"I-access ang power menu"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Para magamit, magtakda muna ng lock ng screen"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Pindutin nang Matagal para sa Assistant"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"I-trigger ang Assistant sa pamamagitan ng pagpindot nang matagal sa power button"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Menu ng Power at Emergency:\nPindutin nang magkasabay ang Power at Pataas na volume."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Pigilan ang pag-ring:\nNasa menu ng volume ang shortcut."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Power menu:\nMagkasabay na pindutin ang power button at button na pataas na volume"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Pigilan ang pag-ring:\nPumindot ng button ng volume para sa shortcut"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Tagal ng pagpindot"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Isaayos ang pagkasensitibo sa pamamagitan ng pagpili kung gaano katagal pipindutin ang power button"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Mabilis"</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 43c0f6c..26403ef 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Çocuğunuz Pixel Imprint\'i kullandığında resimler, parmak izi modelini güncellemek için kullanılır. Çocuğunuzun parmak izi modelini oluşturmak için kullanılan resimler hiçbir zaman saklanmaz ancak parmak izi modeli, telefonda güvenli bir şekilde saklanıp hiçbir zaman telefondan dışarı çıkmaz. Tüm işlemler, güvenli bir şekilde telefonda gerçekleşir."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"İstediğiniz zaman parmak izi resimlerinizi ve modelinizi silebilir veya Ayarlar\'da Parmak İzi Kilidi\'ni kapatabilirsiniz. Siz silene kadar, parmak izi resimleri ve modelleri telefonda saklanır."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Siz ve çocuğunuz, istediğiniz zaman Ayarlar\'dan Parmak İzi Kilidi\'ni devre dışı bırakabilir veya çocuğunuzun parmak izi resimlerini ve modelini silebilirsiniz. Parmak izi resimleri ve modelleri, silinene kadar telefonda saklanır."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefonunuzun kilidi, istemediğiniz zamanlarda da açılabilir. Örneğin, telefonunuz başka birisi tarafından parmağınıza tutulduğunda kilidi açılabilir."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefonunuzun kilidi, istemediğiniz zamanlarda da açılabilir. Örneğin, telefonunuz başka birisi tarafından parmağınıza tutulduğunda kilidi açılabilir."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Tabletinizin kilidi, istemediğiniz zamanlarda da açılabilir. Örneğin, tabletiniz başka birisi tarafından parmağınıza tutulduğunda kilidi açılabilir."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Cihazınızın kilidi, istemediğiniz zamanlarda da açılabilir. Örneğin, cihazınız başka birisi tarafından parmağınıza tutulduğunda kilidi açılabilir."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Çocuğunuz istemeden de telefonunun kilidi açılabilir. Örneğin, telefonu başka birisi tarafından parmağına tutulduğunda kilidi açılabilir."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"En iyi sonuçlar için Made for Google sertifikalı bir ekran koruyucu kullanın. Parmak iziniz diğer ekran koruyucularla çalışmayabilir."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"En iyi sonuçlar için Made for Google sertifikalı bir ekran koruyucu kullanın. Çocuğunuzun parmak izi diğer ekran koruyucularla çalışmayabilir."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Cihaz ve parmak izi sensörünün yerini gösteren çizim"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Ad"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"Tamam"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Tekrar dene"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Sil"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Sensöre dokunun"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Parmağınızı sensörün üzerine koyun ve bir titreşim hissettiğinizde kaldırın"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Bitti"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Yanlış oldu, bu sensör değil"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"İşaret parmağınızla telefonunun arkasındaki sensöre dokunun."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Kayıt işlemi tamamlanmadı"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Parmak izi kayıt işlemi için süre sınırı aşıldı. Tekrar deneyin."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Parmak izi kurulumu zaman aşımına uğradı"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Şimdi tekrar deneyin veya parmak izini daha sonra Ayarlar\'da kurun"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Parmak izi kaydı çalışmadı. Tekrar deneyin veya farklı bir parmak kullanın."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Başka ekle"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"İleri"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Telefonunuzu özelleştirme"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Farklı stiller, duvar kağıtları ve daha fazlasını deneyin"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Ekran koruyucu"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ekran koruyucu"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Ekran koruyucu kullan"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Şarj olurken veya yuvadayken"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Her iki durumda da"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Şarj olurken"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Yuvadayken"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Hiçbir zaman"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Kapalı"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Telefon yuvaya yerleştirildiğinde ve/veya uyku durumundayken ne olacağını kontrol etmek için ekran koruyucuyu etkinleştirin."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Başlama zamanı"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Geçerli ekran koruyucu"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Ayarlar"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Otomatik parlaklık"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Kaldırarak uyandır"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Ortam ekranı"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN ayarlayın"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"İş PIN\'i ayarlayın"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Desen oluşturun"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Cihazın kilidini açmak için bir desen belirleyip daha fazla güvenlik sağlayın."</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"İş deseni oluşturun"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Parmak izi için şifre ayarlayın"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Parmak izi için desen ayarlayın"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Acil durum uygulaması"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Uygulama tercihlerini sıfırla"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Uygulama tercihleri sıfırlansın mı?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Bu işlem, şunlarla ilgili tüm tercihleri sıfırlayacaktır:\n\n"<li>"Devre dışı bırakılan uygulamalar"</li>\n<li>"Devre dışı bırakılan uygulama bildirimleri"</li>\n<li>"İşlemler için varsayılan uygulamalar"</li>\n<li>"Uygulamalar için arka plan verileri kısıtlamaları"</li>\n<li>"Tüm izin kısıtlamaları"</li>\n\n"Uygulama verileriniz kaybolmayacak."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Bu işlem, şunlarla ilgili tüm tercihleri sıfırlayacaktır:\n\n"<li>"Devre dışı bırakılan uygulamalar"</li>\n<li>"Devre dışı bırakılan uygulama bildirimleri"</li>\n<li>"İşlemler için varsayılan uygulamalar"</li>\n<li>"Uygulamalar için arka plan verileri kısıtlamaları"</li>\n<li>"Tüm izin kısıtlamaları"</li>\n<li>"Pil kullanımı ayarları"</li>\n\n"Uygulama verileriniz kaybolmayacak."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Uygulamaları sıfırla"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Alanı yönet"</string>
     <string name="filter" msgid="9039576690686251462">"Filtre"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Ayarları sıfırla"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Ekran boyutu ve metin ayarları sıfırlandı"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Görüntü boyutu ve metin tercihleriniz sıfırlansın mı?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Görüntü boyutu ve metin tercihleriniz telefonun orijinal ayarlarına sıfırlanacak."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Görüntü boyutu ve metin tercihleriniz telefonun orijinal ayarlarına sıfırlanacak."</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Görüntü boyutu ve metin tercihleriniz tabletin orijinal ayarlarına sıfırlanacak."</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Sıfırla"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Hafta sonuna planın var mı?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Sahile gideceğim. Gelmek ister misin?"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Son kez tamamen şarj olduktan sonra kullanılmadı"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Son 24 saatte kullanılmadı"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Diğer kullanıcılar"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Kalan pil gücü tahmini, cihazınızın kullanımına göre yapılır"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Kalan tahmini süre"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"sonra tam olarak şarj olacak"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Tam özel kelime ve etkileşim"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Basit konuşma-metin"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Bu ses girişi hizmeti, her zaman açık olacak şekilde ses izleme işlemi gerçekleştirebilecek ve ses kullanan uygulamaları sizin adınıza kontrol edebilecektir. Bu hizmet <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> uygulamasına aittir. Hizmetin kullanımı etkinleştirilsin mi?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Cihaz üzerinde tanıma ayarları"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Cihaz üzerinde tanıma"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Cihaz üzerinde konuşma tanıma"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Tercih edilen motor"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Motor ayarları"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Konuşma hızı ve ses tonu"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Sil"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Bu oturumdaki tüm uygulamalar ve veriler silinecek."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Kaldır"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Misafir (Siz)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Kullanıcılar"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Diğer kullanıcılar"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Misafir etkinliğini silme"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Misafir modundan çıkarken tüm misafir uygulamalarını ve verilerini silin"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Misafir etkinliği silinsin mi?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Bu misafir oturumundaki uygulamalar ve veriler şimdi silinecektir. Bundan sonraki tüm misafir etkinlikleri ise misafir modundan her çıktığınızda silinir."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Telefon aramalarını aç"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Telefon aramalarını ve mesajları aç"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Kullanıcıyı sil"</string>
@@ -4007,11 +4021,11 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Tüm \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" bildirimleri"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Tüm <xliff:g id="APP_NAME">%1$s</xliff:g> bildirimleri"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Uyarlanabilir Bildirimler"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
       <item quantity="other">Günde yaklaşık <xliff:g id="NUMBER_1">%,d</xliff:g> bildirim</item>
       <item quantity="one">Günde yaklaşık <xliff:g id="NUMBER_0">%d</xliff:g> bildirim</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
       <item quantity="other">Haftada yaklaşık <xliff:g id="NUMBER_1">%,d</xliff:g> bildirim</item>
       <item quantity="one">Haftada yaklaşık <xliff:g id="NUMBER_0">%d</xliff:g> bildirim</item>
     </plurals>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Hiçbir şey yapma"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Titreşim"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Sesi kapat"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Etkinleştirmek için önce \"Güç düğmesini basılı tutun\" işlemini güç menüsünden değiştirin."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Etkinleştirmek için önce \"Güç düğmesini basılı tutun\" işlemini güç menüsünden değiştirin."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Ağ ayrıntıları"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Telefonunuzdaki uygulamalar, cihazınızın adını görebilecek. Cihazınızın adı ayrıca Blueetoth cihazlara bağlandığınızda, kablosuz ağa bağlandığınızda veya kablosuz hotspot oluşturduğunuzda diğer kişiler tarafından görülecektir."</string>
     <string name="devices_title" msgid="649715719278562515">"Cihazlar"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"cihaz denetimleri"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartlar ve pasolar"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartlar ve pasolar"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Güç düğmesini basılı tut"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Asistan için basılı tutun"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Güç menüsü için basılı tutun"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Basılı tutma işlevi devre dışı bırakıldı"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Güç düğmesini basılı tutun"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Erişmek için güç düğmesini basılı tutun."</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Güç menüsü"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Dijital asistan"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Dijital asistana erişim"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Güç menüsüne erişim"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Kullanmak için önce bir ekran kilidi ayarlayın"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Asistan için uzun basın"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Asistan\'ı güç düğmesine uzun basarak açın"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Güç ve Acil Durum Menüsü:\nGüç ve sesi artırma tuşlarına aynı anda basın."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Zili çaldırmayı engelle:\nKısayol, ses düzeyi menüsünde mevcut."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Güç menüsü:\nGüç ve sesi artırma düğmelerine aynı anda basın."</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Zilin çalmasını engelleme:\nKısayolu kullanmak için ses düğmelerinden birine basın."</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Basılı tutma süresi"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Güç düğmesini ne kadar basılı tutacağınızı belirleyerek hassasiyeti ayarlayın"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Kısa"</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index e2fbe09..ca18eba 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -472,7 +472,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Коли дитина користується Pixel Imprint, отримані зображення використовуються для оновлення моделі відбитка пальця. Ці зображення ніколи не залишаються на телефоні, але сама модель надійно зберігається та нікуди не передається. Усі процедури обробки безпечно відбуваються на телефоні."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Ви будь-коли можете видалити зображення й модель свого відбитка пальця або вимкнути цю функцію розблокування в налаштуваннях. Зображення й модель відбитка пальця зберігаються на телефоні, поки ви їх не видалите."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Ви та дитина будь-коли можете видалити зображення й модель відбитка пальця або вимкнути цю функцію в налаштуваннях. Зображення й моделі відбитків пальців зберігаються на телефоні, доки ви їх не видалите."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Ваш телефон можна розблокувати навіть тоді, коли ви цього не плануєте. Наприклад, якщо хтось піднесе його до вашого пальця."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Ваш телефон можна розблокувати навіть тоді, коли ви цього не плануєте. Наприклад, якщо хтось піднесе його до вашого пальця."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Ваш планшет можна розблокувати навіть без вашої волі (наприклад, якщо хтось піднесе його до вашого пальця)."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Ваш пристрій можна розблокувати навіть без вашої волі (наприклад, якщо хтось піднесе його до вашого пальця)."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Телефон дитини можна розблокувати випадково, наприклад якщо хтось прикладе пристрій до її пальця."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Рекомендуємо використовувати захисну плівку чи скло, що мають позначку \"Створено для Google\". Якщо вони не матимуть такої позначки, відбиток пальця може не розпізнаватися."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Рекомендуємо використовувати захисну плівку чи скло, що мають позначку \"Створено для Google\". Якщо вони не матимуть такої позначки, відбиток пальця дитини може не розпізнаватися."</string>
@@ -522,6 +524,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Розташування сканера відбитків пальців на пристрої"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Назва"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ОК"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Повторити спробу"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Видалити"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Торкніться сканера"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Покладіть палець на датчик і заберіть його, коли відчуєте вібрацію"</string>
@@ -599,8 +602,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Готово"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Це не датчик"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Торкніться сканера на задній панелі телефона. Прикладіть вказівний палець."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Відбиток не зареєстровано"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Час для реєстрації відбитка пальця минув. Повторіть спробу."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Час очікування для відбитка пальця минув"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Повторіть спробу зараз або налаштуйте відбиток пальця пізніше в налаштуваннях"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Відбиток не зареєстровано. Повторіть спробу або прикладіть інший палець."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Додати ще"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Далі"</string>
@@ -1488,17 +1491,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Налаштувати телефон"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Спробуйте інші стилі, фонові малюнки тощо"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Заставка"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"заставка"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Використовувати заставку"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Під час заряджання чи в док-станції"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Завжди"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Під час заряджання"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Коли в док-станції"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Ніколи"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Вимк."</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Щоб контролювати поведінку телефона, коли він у док-станції та/або в режимі сну, увімкніть заставку."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Коли почати"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Поточна заставка"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Налаштування"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Автоматична яскравість"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Підняти, щоб активувати"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Активація екрана"</string>
@@ -1990,6 +1991,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Створіть PIN-код"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Створіть PIN-код для робочого профілю"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Створіть ключ"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Для додаткового захисту встановіть ключ, щоб розблоковувати пристрій"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Створіть ключ для робочого профілю"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Щоб користуватися відбитком пальця, налаштуйте пароль"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Щоб користуватися відбитком пальця, налаштуйте ключ"</string>
@@ -2147,7 +2149,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Додаток для екстрених викликів"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Скинути налаштування додатків"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Скинути налаштування додатків?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Буде скинуто всі налаштування для:\n\n"<li>"вимкнених додатків"</li>\n<li>"вимкнених сповіщень із додатків"</li>\n<li>"додатків за умовчанням"</li>\n<li>"обмежень щодо передавання даних у фоновому режимі"</li>\n<li>"усіх обмежень щодо дозволів"</li>\n\n"Дані додатків видалено не буде."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Буде скинуто всі налаштування для:\n\n"<li>"вимкнених додатків;"</li>\n<li>"вимкнених сповіщень із додатків;"</li>\n<li>"додатків за умовчанням;"</li>\n<li>"обмежень щодо передавання даних у фоновому режимі для додатків;"</li>\n<li>"усіх обмежень щодо дозволів;"</li>\n<li>"використання акумулятора."</li>\n\n"Дані додатків видалено не буде."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Скинути"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Кер. простором"</string>
     <string name="filter" msgid="9039576690686251462">"Фільтрув."</string>
@@ -2402,7 +2404,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Скинути налаштування"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Налаштування масштабу елементів і оформлення тексту скинуто"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Скинути налаштування масштабу й тексту?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Параметри масштабу й тексту буде скинуто до початкових налаштувань телефона"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Параметри масштабу й тексту буде скинуто до початкових налаштувань телефона"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Параметри масштабу й тексту буде скинуто до початкових налаштувань планшета"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Скинути"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Маєте плани на вихідні?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Їдемо на пляж. Хочете з нами?"</string>
@@ -3010,6 +3013,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Відсутнє споживання з часу останнього повного заряджання"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Відсутнє споживання за останні 24 години"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Інші користувачі"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Залишок заряду акумулятора визначається на основі використання пристрою"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Залишилося приблизно"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"До повного заряду"</string>
@@ -3099,6 +3103,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Підтримка команд швидкого запуску та взаємодії"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Просте перетворення мовлення на текст"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ця служба голосового вводу зможе постійно відстежувати голос і контролювати додатки, у яких увімкнено голосовий ввід, від вашого імені. Вона походить із додатка <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Увімкнути цю службу?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Налаштування розпізнавання на пристрої"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Розпізнавання на пристрої"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Розпізнавання мовлення на пристрої"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Система за умовчанням"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Налаштування системи"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Темп і тон мовлення"</string>
@@ -3499,6 +3506,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Видалити"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Усі додатки й дані з цього сеансу буде видалено."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Вийти"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Гість (ви)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Користувачі"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Інші користувачі"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Видаляти дії в режимі гостя"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Видалити всі додатки й дані гостя під час виходу з режиму гостя"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Видалити дії в режимі гостя?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Додатки й дані з цього сеансу в режимі гостя буде видалено зараз, а всі майбутні дії гостя видалятимуться під час кожного виходу з цього режиму"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Увімкнути телефонні дзвінки"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Увімкнути телефонні дзвінки й SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Видалити користувача"</string>
@@ -4095,17 +4109,17 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"<xliff:g id="APP_NAME">%1$s</xliff:g>: усі сповіщення"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Усі сповіщення з додатка <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Адаптивні сповіщення"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на день</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на день</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> сповіщень на день</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на день</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Близько <xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на день</item>
+      <item quantity="few">Близько <xliff:g id="NUMBER_1">%,d</xliff:g> сповіщень на день</item>
+      <item quantity="many">Близько <xliff:g id="NUMBER_1">%,d</xliff:g> сповіщень на день</item>
+      <item quantity="other">Близько <xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на день</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на тиждень</item>
-      <item quantity="few">~<xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на тиждень</item>
-      <item quantity="many">~<xliff:g id="NUMBER_1">%,d</xliff:g> сповіщень на тиждень</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на тиждень</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Близько <xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на тиждень</item>
+      <item quantity="few">Близько <xliff:g id="NUMBER_1">%,d</xliff:g> сповіщень на тиждень</item>
+      <item quantity="many">Близько <xliff:g id="NUMBER_1">%,d</xliff:g> сповіщень на тиждень</item>
+      <item quantity="other">Близько <xliff:g id="NUMBER_1">%,d</xliff:g> сповіщення на тиждень</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Ніколи"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Сповіщення додатків і пристроїв"</string>
@@ -5423,7 +5437,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Нічого не робити"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Вібрація"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Вимкнути звук"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Щоб увімкнути, спершу вкажіть, щоб дія \"Утримувати кнопку живлення\" відкривала меню кнопки живлення."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Щоб увімкнути цю функцію, спершу змініть налаштування \"Утримувати кнопку живлення\" так, щоб при цьому відкривалось меню кнопки живлення."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Дані мережі"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Назва пристрою відображається в додатках на телефоні. Її також можуть бачити інші люди, коли ви підключаєтеся до пристроїв Bluetooth або налаштовуєте точку доступу Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Пристрої"</string>
@@ -5716,15 +5730,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"керування пристроями"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Картки та квитки"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"картки та квитки"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Утримувати кнопку живлення"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Утримуйте кнопку живлення, щоб активувати Асистента"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Утримуйте кнопку живлення, щоб відкрити відповідне меню"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Функція втримання кнопки живлення вимкнена"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Утримувати кнопку живлення"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Утримувати кнопку живлення, щоб відкрити"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"меню кнопки живлення"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"цифровий помічник"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Відкрити цифровий помічник"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Відкрити меню кнопки живлення"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Щоб користуватися, налаштуйте блокування екрана"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Утримувати, щоб активувати Асистента"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Асистент активується, коли ви утримуєте кнопку живлення"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Меню кнопки живлення й екстрених викликів:\nНатисніть одночасно кнопки живлення й збільшення гучності."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Вимкнути звук дзвінка:\nШвидкий запуск функції доступний у меню налаштування гучності."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Меню кнопки живлення:\nодночасно натисніть кнопки живлення та збільшення гучності"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Вимкнути звук дзвінка:\nдля швидкого запуску функції натисніть кнопку гучності"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Тривалість утримання"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Скоригуйте чутливість, указавши, скільки часу потрібно втримувати кнопку живлення"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Коротко"</string>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index bee1f776..d7dd6d1 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"‏جب وہ Pixel Imprint کا استعمال کرتا ہے تو تصاویر اس کے فنگر پرنٹ ماڈل کو اپ ڈیٹ کرنے کے لیے استعمال کی جاتی ہیں۔ آپ کے بچے کے فنگر پرنٹ کا ماڈل تخلیق کرنے کے لیے استعمال کی جانے والی تصاویر کو کبھی بھی اسٹور نہیں کیا جاتا ہے لیکن فنگر پرنٹ ماڈل کو فون پر محفوظ طریقے سے اسٹور کیا جاتا ہے اور یہ کبھی بھی فون سے باہر نہیں جاتا ہے۔ فون پر سبھی کارروائیاں محفوظ طریقے سے ہوتی ہیں۔"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"آپ اپنے فنگر پرنٹ کی تصاویر اور ماڈل کو حذف کر سکتے ہیں یا ترتیبات میں کسی بھی وقت فنگر پرنٹ اَن لاک کی خصوصیت کو آف کر سکتے ہیں۔ فون پر فنگر پرنٹ کی تصاویر اور ماڈلز تب تک اسٹور ہوتے ہیں جب تک آپ انہیں حذف نہیں کرتے ہیں۔"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"آپ اور آپ کا بچہ اپنے فنگر پرنٹ کی تصاویر اور ماڈل کو حذف کر سکتے ہیں یا ترتیبات میں کسی بھی وقت فنگر پرنٹ اَن لاک کو آف کر سکتے ہیں۔ فون پر فنگر پرنٹ کی تصاویر اور ماڈلز تب تک اسٹور ہوتے ہیں جب تک انہیں حذف نہیں کیا جاتا ہے۔"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"جب آپ کا ارادہ نہ بھی ہو تب بھی آپ کا فون غیر مقفل ہو سکتا ہے مثال کے طور پر کوئی اور شخص فون کو آپ کی انگلی پر رکھ دے۔"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"جب آپ کا ارادہ نہ بھی ہو تب بھی آپ کا فون غیر مقفل ہو سکتا ہے مثال کے طور پر کوئی اور شخص فون کو آپ کی انگلی پر رکھ دے۔"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"جب آپ کا ارادہ نہ بھی ہو تب بھی آپ کا ٹیبلیٹ غیر مقفل ہو سکتا ہے مثال کے طور پر کوئی اور شخص ٹیبلیٹ کو آپ کی انگلی پر رکھ دے۔"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"جب آپ کا ارادہ نہ بھی ہو تب بھی آپ کا آلہ غیر مقفل ہو سکتا ہے مثال کے طور پر کوئی اور شخص آلے کو آپ کی انگلی پر رکھ دے۔"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"جب آپ کے بچے کا ارادہ نہ ہو تب بھی اس کا فون غیر مقفل ہو سکتا ہے جیسے کوئی اور شخص فون کو اس کی انگلی پر رکھ دے۔"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"‏بہترین نتائج کے لیے، ایک ایسے اسکرین پروٹیکٹر کا استعمال کریں جو Google کے لیے تیار کردہ سے سند یافتہ ہو۔ ممکن ہے کہ دوسرے اسکرین پروٹیکٹرز کے ساتھ آپ کا فنگر پرنٹ کام نہ کرے۔"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"‏بہترین نتائج کے لیے، ایک ایسے اسکرین پروٹیکٹر کا استعمال کریں جو Google کے لیے تیار کردہ سے سند یافتہ ہو۔ ممکن ہے کہ دوسرے اسکرین پروٹیکٹرز کے ساتھ آپ کے بچے کا فنگر پرنٹ کام نہ کرے۔"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"آلہ اور فنگر پرنٹ سینسر کے مقام کا خاکہ"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"نام"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"ٹھیک ہے"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"پھر کوشش کریں"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"حذف کریں"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"سینسر کو ٹچ کریں"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"اپنی انگلی سینسر پر رکھیں اور ارتعاش محسوس ہونے کے بعد اٹھا لیں"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"ہوگیا"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"افوہ، یہ سینسر نہیں ہے"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"اپنے فون کے پشت پر سینسر کو ٹچ کریں۔ اپنی انڈیکس فنگر کا استعمال کریں۔"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"اندراج مکمل نہیں ہوا"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"فنگر پرنٹ اندراج کی وقت کی حد پوری ہو گئی۔ دوبارہ کوشش کریں۔"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"فنگر پرنٹ کے سیٹ اپ کا وقت ختم ہو گیا"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"ابھی دوبارہ کوشش کریں یا بعد میں ترتیبات میں اپنا فنگر پرنٹ سیٹ اپ کریں"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"فنگر پرنٹ اندراج نہیں ہوا۔ دوبارہ کوشش کریں یا مختلف انگلی استعمال کریں۔"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"کوئی دوسرا شامل کریں"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"آگے جائیں"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"اپنے فون کو حسب ضرورت بنائیں"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"مختلف اسٹائل، وال پیپرز، اور مزید بہت کچھ آزمائیں"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"اسکرین سیور"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"اسکرین سیور"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"اسکرین سیور کا استعمال کریں"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"ڈاک سے منسلک یا چارج ہونے کے دوران"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"دونوں صورتوں میں"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"چارج ہوتے وقت"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"ڈاک کیے ہونے پر"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"کبھی نہیں"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"آف"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"فون ڈاک کیے ہونے اور/یا سوئے ہوئے ہونے کے دوران کیا ہو اسے کنٹرول کرنے کیلئے، اسکرین سیور آن کریں۔"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"وقت آغاز"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"موجودہ اسکرین سیور"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"ترتیبات"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"خود کار چمک"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"جگانے کیلئے اٹھائیں"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"ايمبيئنٹ ڈسپلے"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"‏PIN سیٹ کریں"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"‏دفتری پروفائل کا PIN سیٹ کریں"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"پیٹرن سیٹ کریں"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"اضافی سیکیورٹی کی خاطر، آلے کو غیر مقفل کرنے کے لیے ایک پیٹرن سیٹ کریں"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"دفتری پروفائل کا پیٹرن سیٹ کریں"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"فنگر پرنٹ کے استعمال کے لیے پاس ورڈ سیٹ کریں"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"فنگر پرنٹ کے استعمال کے لیے پیٹرن سیٹ کریں"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"ہنگامی ایپ"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"ایپ کی ترجیحات کو ری سیٹ کریں"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"ایپ کی ترجیحات کو ری سیٹ کریں؟"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"اس سے مندرجہ ذیل کیلئے تمام ترجیحات ری سیٹ ہو جائیں گی:\n\n"<li>"غیر فعال کردہ ایپس"</li>\n<li>"غیر فعال کردہ ایپس کی اطلاعات"</li>\n<li>"کارروائیوں کے لیے ڈیفالٹ ایپلیکیشنز"</li>\n<li>"ایپس کے لیے پس منظر کے ڈیٹا کی پابندیاں"</li>\n<li>"کوئی اجازتی پابندیاں"</li>\n\n"آپ کسی بھی ایپ کے ڈیٹا سے محروم نہیں ہوں گے۔"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"اس سے مندرجہ ذیل کیلئے تمام ترجیحات ری سیٹ ہو جائیں گی:\n\n"<li>"غیر فعال ایپس"</li>\n<li>"غیر فعال ایپ کی اطلاعات"</li>\n<li>"کارروائیوں کیلئے ڈیفالٹ ایپلیکیشنز"</li>\n<li>"ایپس کیلئے پس منظر کے ڈیٹا کی پابندیاں"</li>\n<li>"اجازت سے متعلق کوئی بھی پابندیاں"</li>\n<li>"بیٹری کے استعمال کی ترتیبات"</li>\n\n" آپ ایپ کے کسی بھی ڈیٹا سے محروم نہیں ہوں گے۔"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"ایپس کو ری سیٹ کریں"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"خالی جگہ کا نظم کریں"</string>
     <string name="filter" msgid="9039576690686251462">"فلٹر"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"ترتیبات کو ری سیٹ کریں"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"ڈسپلے کا سائز اور ٹیکسٹ کی ترتیبات کو ری سیٹ کر دیا گیا ہے"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"ڈسپلے کا سائز اور ٹیکسٹ کو ری سیٹ کریں؟"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"آپ کے ڈسپلے کا سائز اور ٹیکسٹ کی ترجیحات فون کی اصل ترتیبات پر ری سیٹ ہو جائیں گی"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"آپ کے ڈسپلے کا سائز اور ٹیکسٹ کی ترجیحات فون کی اصل ترتیبات پر ری سیٹ ہو جائیں گی"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"آپ کے ڈسپلے کا سائز اور ٹیکسٹ کی ترجیحات ٹیبلیٹ کی اصل ترتیبات پر ری سیٹ ہو جائیں گی"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"ری سیٹ کریں"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"ویک اینڈ پر کوئی پلان ہے؟"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"ساحل کی طرف جانے کا پلان ہے۔ آپ بھی شامل ہونا چاہتے ہیں؟"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"پچھلے مکمل چارج کے بعد سے بیٹری کا کوئی استعمال نہیں"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"گزشتہ 24 گھنٹے میں بیٹری کا کوئی استعمال نہیں"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"دیگر صارفین"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"بچی ہوئی بیٹری کا اندازہ آپ کے آلے کے استعمال پر مبنی ہے"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"باقی تخمینی وقت"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"پوری طرح چارج ہونے تک"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"مکمل ہاٹ ورڈ اور تعامل"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"آسان اسپیچ ٹو ٹیکسٹ"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"یہ صوتی ان پٹ سروس ہمیشہ آن رہنے والی صوتی مانیٹرنگ کو انجام دے سکے گی اور آپ کی جانب سے آواز فعال کردہ ایپلیکیشنز کو کنٹرول کر سکے گی۔ یہ <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ایپلیکیشن سے آتی ہے۔ اس سروس کا استعمال فعال کریں؟"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"آلہ پر شناخت کی ترتیبات"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"آلہ پر شناخت"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"آلہ پر اسپیچ شناخت"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"ترجیحی انجن"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"انجن کی ترتیبات"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"اسپیچ کی شرح اور پچ"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"حذف کریں"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"اس سیشن میں موجود سبھی ایپس اور ڈیٹا کو حذف کر دیا جائے گا۔"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"ہٹائیں"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"مہمان (آپ)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"صارفین"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"دیگر صارفین"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"مہمان کی سرگرمی کو حذف کریں"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"مہمان وضع سے باہر نکلتے وقت تمام مہمان ایپس اور ڈیٹا کو حذف کریں"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"مہمان کی سرگرمی کو حذف کریں؟"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"اس مہمان سیشن سے ایپس اور ڈیٹا کو اب حذف کر دیا جائے گا، اور ہر دفعہ آپ کے مہمان وضع سے باہر نکلنے پر مہمان کی مستقبل کی تمام سرگرمی حذف کر دی جائے گی"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"فون کالز آن کریں"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"‏فون کالز اور SMS آن کریں"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"صارف کو حذف کریں"</string>
@@ -4007,13 +4021,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"سبھی \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" کی اطلاعات"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> کی سبھی اطلاعات"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"تغیر پذیر اطلاعات"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> اطلاعات فی دن</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> اطلاع فی دن</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">فی دن <xliff:g id="NUMBER_1">%,d</xliff:g> اطلاعات</item>
+      <item quantity="one">فی دن <xliff:g id="NUMBER_0">%d</xliff:g> اطلاع</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> اطلاعات فی ہفتہ</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> اطلاع فی ہفتہ</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">فی ہفتہ <xliff:g id="NUMBER_1">%,d</xliff:g> اطلاعات</item>
+      <item quantity="one">فی ہفتہ <xliff:g id="NUMBER_0">%d</xliff:g> اطلاع</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"کبھی نہیں"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"آلے اور ایپ کی اطلاعات"</string>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"کچھ نہ کریں"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"وائبریٹ"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"خاموش کریں"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"فعال کرنے کے لیے، پہلے \"پاور بٹن کو چھوئیں اور دبائے رکھیں\" کو پاور مینو میں تبدیل کریں۔"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"فعال کرنے کے لیے، پہلے \"پاور بٹن کو چھوئیں اور دبائے رکھیں\" کو پاور مینو میں تبدیل کریں۔"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"نیٹ ورک کی تفصیلات"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"‏آپ کے آلے کا نام آپ کے فون پر موجود ایپس میں دکھائی دیتا ہے۔ آپ کے بلوٹوتھ آلات سے منسلک ہونے، Wi-Fi نیٹ ورک سے منسلک ہونے یا Wi-Fi ہاٹ اسپاٹ کو سیٹ اپ کرنے پر دوسرے لوگ بھی اسے دیکھ سکتے ہیں۔"</string>
     <string name="devices_title" msgid="649715719278562515">"آلات"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"آلہ کے کنٹرولز"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"کارڈز اور پاسز"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"کارڈز اور پاسز"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"پاور بٹن کو چھوئیں اور دبائے رکھیں"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"اسسٹنٹ کے لیے چھوئیں اور دبائے رکھیں"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"پاور مینو کے لیے چھوئیں اور دبائے رکھیں"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"چھوئیں اور دبائے رکھیں غیر فعال ہے"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"پاور بٹن کو چھوئیں اور دبائے رکھیں"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"رسائی حاصل کرنے کے لیے پاور بٹن کو چھوئیں اور دبائے رکھیں"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"پاور مینو"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"ڈیجیٹل اسسٹنٹ"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"ڈیجیٹل اسسٹنٹ تک رسائی حاصل کریں"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"پاور مینو تک رسائی حاصل کریں"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"استعمال کرنے کے لیے پہلے ایک اسکرین لاک سیٹ کریں"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"اسسٹنٹ کے لیے ہولڈ کریں"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"پاور بٹن کو دبائے رکھ کر اسسٹنٹ کو متحرک کریں"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"پاور اور ایمرجنسی مینو:\nایک ہی وقت میں پاور اور والیوم بڑھانے کا بٹن دبائیں۔"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"گھنٹی بجنے کو روکیں:\nوالیوم مینو میں شارٹ کٹ دستیاب ہے۔"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"پاور مینو:\nبیک وقت پاور بٹن اور والیوم بڑھانے کے بٹن کو دبائیں"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"گھنٹی بجنے کو روکیں:\nشارٹ کٹ کے لیے والیوم بٹن کو دبائیں"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"دبانے اور ہولڈ رکھنے کا دورانیہ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"پاور بٹن کو کتنی دیر تک دبائے رکھنا ہے اس کا انتخاب کر کے حساسیت کو ایڈجسٹ کریں"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"مختصر ویڈیو"</string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 2bfc4c2..13317d7 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Pixel Imprint ishlatilganda barmoq izi modeli rasmlar yordamida yaratiladi. Farzandingiz barmoq izi modelini yaratishda ishlatiladigan rasmlar hech qachon saqlanmaydi, lekin barmoq izi modeli telefonda xavfsiz saqlanadi va hech qachon tashqariga yuklanmaydi. Barcha ishlar telefonda xavfsiz amalga oshiriladi."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Istalgan vaqt Sozlamalar orqali barmoq izi rasmlari va modelini oʻchirib tashlashingiz yoki barmoq izi bilan ochishni faolsizlantirishingiz mumkin. Barmoq izi rasmlari va modellari telefonda oʻchirilmaguncha saqlanadi."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Siz va farzandingiz istalgan vaqt Sozlamalar orqali barmoq izi modelini oʻchirib tashlashingiz yoki barmoq izi bilan ochishni faolsizlantirishingiz mumkin. Barmoq izi rasmlari va modellari telefonda oʻchirilmaguncha saqlanadi."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Telefonni sizning ixtiyoringizsiz kimdir uni barmogʻingizga tutgan holda qulfdan chiqarib olishi mumkin."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Telefonni sizning ixtiyoringizsiz kimdir uni barmogʻingizga tutgan holda qulfdan chiqarib olishi mumkin."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Planshetni sizning ixtiyoringizsiz kimdir uni barmogʻingizga tutgan holda qulfdan chiqarib olishi mumkin."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Qurilmani sizning ixtiyoringizsiz kimdir uni barmogʻingizga tutgan holda qulfdan chiqarib olishi mumkin."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Telefonni farzandingiz ixtiyorisiz kimdir uning barmogʻiga tutgan holda qulfdan chiqarib olishi mumkin."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Eng yaxshi natijalarga erishish uchun Made for Google sertifikatiga ega ekran himoyasidan foydalaning. Boshqa ekran himoyasida barmoq izi ishlamasligi mumkin."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Eng yaxshi natijalarga erishish uchun Made for Google sertifikatiga ega ekran himoyasidan foydalaning. Boshqa ekran himoyasida farzandingizning barmoq izi ishlamasligi mumkin."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ushbu rasmda barmoq izi skaneri qayerda joylashgani ko‘rsatilgan"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Nomi"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Qayta urinish"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"O‘chirish"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Sensorga tegining"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Barmoqni skanerga tekkizib, tebranishni his qilguncha bosib turing"</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Tayyor"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Obbo, bu sensor emas."</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Telefonning orqasida joylashgan sensorga tegining. Ko‘rsatkich barmog‘ingizdan foydalaning."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Barmoq izi qayd qilinmadi"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Barmoq izini kiritish vaqti tugab qoldi. Qayta urinib ko‘ring."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Barmoq izini sozlash vaqti tugadi"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Hozir qaytadan urining yoki keyinroq Sozlamalar orqali barmoq izini sozlashingiz mumkin"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Barmoq izini kiritish amalga oshmadi. Qayta urinib ko‘ring yoki boshqa barmoqdan foydalaning."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Yana qo‘shish"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Keyingisi"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Telefoningizni moslashtiring"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Boshqa uslub va fon rasmlaridan foydalaning."</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Ekran lavhasi"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"ekran lavhasi"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Ekran lavhasidan foydalanish"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Quvvat yoki dok-stansiya"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Har doim"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Quvvat olayotganda"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Dok-stansiyaga ulanganda"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Hech qachon"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Yoqilmagan"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Telefon dok-stansiyaga ulanganda yoki uyqu rejimiga o‘tganida uning ekranida nima ko‘rinishini sozlash uchun ekran lavhasini yoqing."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Qachon boshlansin"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Joriy ekran lavhasi"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Sozlamalar"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Avtomatik yorqinlik"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Tik holatda faollashtirish"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Sezgir ekran"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"PIN kodni sozlang"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Ish profili uchun PIN kod tanlang"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Grafik kalitni sozlang"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Qoʻshimcha xavfsizlik oshirishni istasangiz, qurilmani ochish uchun grafik kalit oʻrnating"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Ishchi profil grafik kalitini sozlang"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Barmoq izidan foydalanish uchun parol o‘rnating"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Avval grafik kalit yarating"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Favqulodda bildirishnomalar ilovasi"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Standart sozlamalarni tiklash"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Standart sozlamalar tiklansinmi?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Quyidagi sozlamalar asliga qaytariladi:\n\n "<li>"Faolsizlantirilgan ilovalar"</li>\n" "<li>"Faolsizlantirilgan ilovalarning bildirishnomalari"</li>\n" "<li>"Muayyan amallar uchun birlamchi ilovalar"</li>\n" "<li>"Fonda internetdan foydalanishga nisbatan cheklovlar"</li>\n" "<li>"Ruxsatlar uchun barcha cheklovlar"</li>\n\n"Ilovalarga tegishli axborotlar saqlanib qoladi."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Quyidagi sozlamalar asliga qaytariladi:\n\n "<li>"Faolsizlantirilgan ilovalar"</li>\n" "<li>"Faolsizlantirilgan ilovalarning bildirishnomalari"</li>\n" "<li>"Muayyan amallar uchun birlamchi ilovalar"</li>\n" "<li>"Fonda internetdan foydalanishga nisbatan cheklovlar"</li>\n" "<li>"Ruxsatlar uchun barcha cheklovlar"</li>\n<li>"Batareya sarfi sozlamalari"</li>\n\n"Ilovalarga tegishli axborotlar saqlanib qoladi."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"OK"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Xotiradagi bo‘sh joy boshqaruvi"</string>
     <string name="filter" msgid="9039576690686251462">"Saralash"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Sozlamalarni tiklash"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Ekran hajmi va matn sozlamalari tiklandi."</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Ekran hajmi va matn sozlamalari tiklansinmi?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Ekran hajmi va matn parametrlari telefondagi asl sozlamalarga qaytariladi"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Ekran hajmi va matn parametrlari telefondagi asl sozlamalarga qaytariladi"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Ekran hajmi va matn parametrlari planshetdagi asl sozlamalarga qaytariladi"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Tiklash"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Dam olish kunlari rejalar bormi?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Sohilga boramiz. Birga borasizmi?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Toʻliq quvvat olgandan keyin ishlatilmagan"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"24 soat ichida orqa fon rejimi ishlatilmagan"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Boshqa foydalanuvchilar"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Batareyaning qolgan vaqti qurilmadan qanday foydalanishingiz asosida taxminiy hisoblangan"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Taxminiy qolgan vaqt"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Quvvati to‘lishigacha qolgan vaqt"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Takomillashgan rejim: ovozli buyruqlar yordamida boshqarish"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Oddiy rejim: nutqni aniqlash"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Ushbu ovoz bilan yozish xizmati sizning nomingizdan ovozli buyruqlarni muntazam kuzatishi va ovozli buyruqlarni ishlatiladigan ilovalarni nazorat qilishi mumkin. Bu amallar <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> ilovasi orqali bajariladi. Mazkur xizmatdan foydalanmoqchimisiz?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Qurilmada tanish sozlamalari"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Qurilmada tanish"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Qurilmada nutqni aniqlash"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Asosiy vosita"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Sintezator sozlamalari"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Nutq tezligi va ohang"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"O‘chirib tashlash"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Ushbu seansdagi barcha ilovalar va ma’lumotlar o‘chirib tashlanadi."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Olib tashlash"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Mehmon (Siz)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Foydalanuvchilar"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Boshqa foydalanuvchilar"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Mehmon faoliyatini tozalash"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Mehmon rejimidan chiqishda barcha mehmon ilovalari va maʼlumotlarini oʻchirish"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Mehmon faoliyati tozalansinmi?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Joriy mehmon seansidagi ilova va maʼlumotlar hozir tozalanadi va har safar mehmon rejimidan chiqish vaqtida barcha keyingi mehmon faolliklari tozalanadi"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Telefon chaqiruvlari"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Telefon chaqiruvlari va SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Foydalanuvchini olib tashlash"</string>
@@ -4009,13 +4023,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Barcha <xliff:g id="APP_NAME">%1$s</xliff:g> bildirishnomalari"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Barcha <xliff:g id="APP_NAME">%1$s</xliff:g> bildirishnomalari"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Moslashuvchan bildirishnomalar"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ta bildirishnoma (kuniga)</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> ta bildirishnoma (kuniga)</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Har kuni taxminan <xliff:g id="NUMBER_1">%,d</xliff:g> ta bildirishnoma</item>
+      <item quantity="one">Har kuni taxminan <xliff:g id="NUMBER_0">%d</xliff:g> ta bildirishnoma</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> ta bildirishnoma (haftasiga)</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> ta bildirishnoma (haftasiga)</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Har hafta taxminan <xliff:g id="NUMBER_1">%,d</xliff:g> ta bildirishnoma</item>
+      <item quantity="one">Har hafta taxminan <xliff:g id="NUMBER_0">%d</xliff:g> ta bildirishnoma</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Hech qachon"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Qurilma va ilova bildirishnomalari"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Hech narsa qilinmasin"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Tebranish"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Sukut"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Yoqish uchun quvvat menyusida “Quvvat tugmasini bosib turing” sozlamasini oʻzgartiring."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Yoqish uchun quvvat menyusida “Quvvat tugmasini bosib turing” sozlamasini oʻzgartiring."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Tarmoq tafsilotlari"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Telefoningizdagi barcha ilovalarga qurilma nomi koʻrinadi. Qurilmalarga Bluetooth yoki Wi-Fi tarmoq orqali ulanganingizda, Wi-Fi hotspot sozlaganingizda boshqa foydalanuvchilarni ularni koʻrishi mumkin."</string>
     <string name="devices_title" msgid="649715719278562515">"Qurilmalar"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"qurilmalarni boshqarish"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Kartalar va talonlar"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"kartalar va talonlar"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Quvvat tugmasini bosib turish"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Bosib tursa, Assistent ishga tushadi"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Bosib turgandan keyin Quvvat tugmasi menyusini chiqadi"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Bosib turish faolsizlantirilgan"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Quvvat tugmasini bosib turing"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Ochish uchun quvvat tugmasini bosib turing"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Quvvat menyusi"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Raqamli assistent"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Raqamli assistentni ochish"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Quvvat menyusini ochish"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Avval ekran qulfini sozlang"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Bosib turganda Assistentni ochish"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Assistentni ochish uchun quvvat tugmasini bosib turing"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Quvvat va favqulodda chaqiruvlar tugmasi menyusi:\nBir vaqtda quvvat va tovushni balandlatish tugmalarini bosib turing."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Chaqiruv ovozini oʻchirish:\nTovush menyusida tezkor ishga tushirish funksiyasi mavjud."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Quvva menyusi:\nQuvvat va tovushni balandlatish tugmalarini birga bosing"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Jiringlamasin:\nYorliq uchun tovush tugmasini bosing"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Bosib turish davomiyligi"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Quvvat tugmasi qanchalik uzoq bosib turilishini tanlash orqali sezuvchanlikni sozlang"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Qisqa"</string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index b32679b..29571a0 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Khi con bạn dùng Pixel Imprint, các hình ảnh sẽ được dùng để cập nhật mẫu vân tay của con. Các hình ảnh dùng để tạo mẫu vân tay không bao giờ được lưu trữ. Tuy nhiên, mẫu vân tay sẽ được lưu trữ an toàn trên điện thoại và chỉ lưu trên điện thoại của con bạn mà thôi. Toàn bộ quá trình xử lý sẽ diễn ra một cách an toàn trên điện thoại."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Bạn có thể xóa các hình ảnh và mẫu vân tay của mình hoặc tắt tính năng Mở khóa bằng vân tay bất cứ lúc nào trong phần Cài đặt. Các hình ảnh và mẫu vân tay được lưu trữ trên điện thoại cho đến khi bạn xóa đi."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Bạn và con bạn có thể xóa hình ảnh và mẫu vân tay của con hoặc tắt tính năng Mở khóa bằng vân tay bất cứ lúc nào trong phần Cài đặt. Các hình ảnh và mẫu vân tay sẽ được lưu trữ trên điện thoại này cho đến khi bạn hoặc con bạn xóa đi."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Điện thoại của bạn có thể mở khóa ngay cả khi bạn không định làm vậy, chẳng hạn như khi có người cầm điện thoại đưa lên ngón tay bạn."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Điện thoại của bạn có thể mở khóa ngay cả khi bạn không định làm vậy, chẳng hạn như khi có người cầm điện thoại đưa lên ngón tay bạn."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Máy tính bảng của bạn có thể mở khóa ngay cả khi bạn không định làm vậy, chẳng hạn như khi có người cầm điện thoại đưa lên ngón tay bạn."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Thiết bị của bạn có thể mở khóa ngay cả khi bạn không định làm vậy, chẳng hạn như khi có người cầm điện thoại đưa lên ngón tay bạn."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Điện thoại của con bạn có thể mở khóa ngay cả khi con không định làm vậy, chẳng hạn như khi có người cầm điện thoại đưa lên ngón tay của con."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Để đạt kết quả tốt nhất, hãy sử dụng miếng bảo vệ màn hình có chứng nhận Made for Google. Với các miếng bảo vệ màn hình khác, thiết bị có thể không nhận dạng được dấu vân tay của bạn."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Để đạt kết quả tốt nhất, hãy sử dụng miếng bảo vệ màn hình có chứng nhận Made for Google. Với các miếng bảo vệ màn hình khác, thiết bị có thể không nhận dạng được dấu vân tay của con bạn."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Hình minh họa với vị trí cảm biến vân tay và thiết bị"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Tên"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"OK"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Thử lại"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Xóa"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Chạm vào cảm biến"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Đặt ngón tay lên cảm biến và nhấc lên sau khi cảm thấy rung"</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Xong"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Rất tiếc, đó không phải là cảm biến"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Chạm vào cảm biến ở mặt sau điện thoại. Dùng ngón tay trỏ."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Chưa đăng ký được"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Thời gian đăng ký vân tay đã hết hạn. Hãy thử lại."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Hết thời gian thiết lập vân tay"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Hãy thử lại ngay bây giờ hoặc thiết lập vân tay của bạn sau trong Cài đặt"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Đăng ký dấu vân tay không hoạt động. Hãy thử lại hoặc sử dụng ngón tay khác."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Thêm vân tay khác"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Tiếp theo"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Tùy chỉnh điện thoại"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Thử nhiều kiểu, hình nền và các tùy chọn khác"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Trình bảo vệ màn hình"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"trình bảo vệ màn hình"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Sử dụng trình bảo vệ màn hình"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Khi sạc hoặc gắn vào đế sạc"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Khi gắn đế và sạc"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Trong khi sạc"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Khi gắn vào đế sạc"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Không bao giờ"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Tắt"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Để kiểm soát những gì diễn ra khi điện thoại được gắn đế và/hoặc ở chế độ ngủ, hãy bật trình bảo vệ màn hình."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Thời điểm khởi động"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Trình bảo vệ màn hình hiện tại"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Cài đặt"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Độ sáng tự động"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Nhấc lên để đánh thức"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Màn hình sáng"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Đặt mã PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Đặt mã PIN cho hồ sơ công việc"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Đặt hình mở khóa"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Để tăng cường bảo mật, hãy đặt hình mở khóa để mở khóa thiết bị"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Đặt hình mở khóa cho hồ sơ công việc"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Đặt mật khẩu để dùng vân tay"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Đặt hình mở khóa để dùng vân tay"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Ứng dụng khẩn cấp"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Đặt lại các lựa chọn ưu tiên về ứng dụng"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Đặt lại các lựa chọn ưu tiên về ứng dụng?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Thao tác này sẽ đặt lại tất cả các lựa chọn ưu tiên cho:\n\n"<li>"Ứng dụng bị tắt"</li>\n<li>"Thông báo ứng dụng bị tắt"</li>\n<li>"Ứng dụng mặc định cho các thao tác"</li>\n<li>"Giới hạn dữ liệu nền cho ứng dụng"</li>\n<li>"Bất kỳ giới hạn về quyền nào"</li>\n\n"Bạn sẽ không mất bất kỳ dữ liệu ứng dụng nào."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Thao tác này sẽ đặt lại tất cả các lựa chọn ưu tiên cho:\n\n"<li>"Ứng dụng bị tắt"</li>\n<li>"Thông báo ứng dụng bị tắt"</li>\n<li>"Ứng dụng mặc định cho các thao tác"</li>\n<li>"Giới hạn dữ liệu nền cho ứng dụng"</li>\n<li>"Mọi giới hạn về quyền"</li>\n<li>"Chế độ cài đặt mức sử dụng pin"</li>\n\n"Bạn sẽ không mất bất kỳ dữ liệu ứng dụng nào."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Đặt lại ứng dụng"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Quản lý dung lượng"</string>
     <string name="filter" msgid="9039576690686251462">"Bộ lọc"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Đặt lại chế độ cài đặt"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Cài đặt kích thước hiển thị và văn bản đã được đặt lại"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Đặt lại văn bản và kích thước hiển thị?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Các lựa chọn ưu tiên của bạn về văn bản và kích thước hiển thị sẽ đặt lại về chế độ cài đặt ban đầu của điện thoại"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Các lựa chọn ưu tiên của bạn về văn bản và kích thước hiển thị sẽ đặt lại về chế độ cài đặt ban đầu của điện thoại"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Các lựa chọn ưu tiên của bạn về văn bản và kích thước hiển thị sẽ thiết lập máy tính bảng trở lại chế độ cài đặt ban đầu"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Đặt lại"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Cuối tuần này có kế hoạch gì chưa?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Tớ đi biển, cậu có muốn đi cùng không?"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Không sử dụng pin kể từ lần sạc đầy gần đây nhất"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Không sử dụng pin trong 24 giờ qua"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Người dùng khác"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Thời lượng pin còn lại ước tính là dựa trên mức sử dụng thiết bị"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Thời gian còn lại ước tính"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Cho tới khi được sạc đầy"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"Tương tác và từ nóng đầy đủ"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Lời nói thành văn bản đơn giản"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Dịch vụ nhập bằng giọng nói này có thể thực hiện theo dõi bằng giọng nói luôn bật và kiểm soát các ứng dụng hỗ trợ giọng nói thay mặt cho bạn. Dịch vụ này đến từ <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Cho phép sử dụng dịch vụ này?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Cài đặt nhận dạng trên thiết bị"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Nhận dạng trên thiết bị"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Nhận dạng giọng nói trên thiết bị"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Công cụ ưu tiên"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Cài đặt công cụ"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Tốc độ lời nói và cao độ"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Xóa"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Tất cả ứng dụng và dữ liệu trong phiên này sẽ bị xóa."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Xóa"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Khách (Bạn)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Người dùng"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Người dùng khác"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Xoá hoạt động ở chế độ khách"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Xoá mọi ứng dụng và dữ liệu ở chế độ khách khi thoát khỏi chế độ khách"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Xoá hoạt động ở chế độ khách?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Các ứng dụng và dữ liệu trong phiên khách này sẽ bị xoá ngay bây giờ, và tất cả hoạt động sau này ở chế độ khách sẽ bị xoá mỗi khi bạn thoát khỏi chế độ khách"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Bật cuộc gọi điện thoại"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Bật cuộc gọi điện thoại và SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Xóa người dùng"</string>
@@ -4009,13 +4023,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Tất cả các thông báo của ứng dụng \"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Tất cả thông báo của <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Thông báo thích ứng"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> thông báo mỗi ngày</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> thông báo mỗi ngày</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">Khoảng <xliff:g id="NUMBER_1">%,d</xliff:g> thông báo mỗi ngày</item>
+      <item quantity="one">Khoảng <xliff:g id="NUMBER_0">%d</xliff:g> thông báo mỗi ngày</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> thông báo mỗi tuần</item>
-      <item quantity="one">~<xliff:g id="NUMBER_0">%d</xliff:g> thông báo mỗi tuần</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">Khoảng <xliff:g id="NUMBER_1">%,d</xliff:g> thông báo mỗi tuần</item>
+      <item quantity="one">Khoảng <xliff:g id="NUMBER_0">%d</xliff:g> thông báo mỗi tuần</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Không bao giờ"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Thông báo của thiết bị và ứng dụng"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Không làm gì"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Rung"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Tắt tiếng"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Để bật, trước tiên, hãy thay đổi tùy chọn \"Nhấn và giữ nút nguồn\" thành trình đơn nguồn."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Để bật, trước tiên, hãy thay đổi tuỳ chọn \"Nhấn và giữ nút nguồn\" thành trình đơn nguồn."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Chi tiết mạng"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Tên thiết bị của bạn sẽ hiển thị với các ứng dụng trên điện thoại. Những người khác cũng có thể thấy tên thiết bị này khi bạn kết nối với thiết bị Bluetooth, mạng Wi-Fi hoặc thiết lập một điểm phát sóng Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Thiết bị"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"tùy chọn điều khiển thiết bị"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Thẻ và vé"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"thẻ và vé"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Nhấn và giữ nút nguồn"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Nhấn và giữ để bật Trợ lý"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Nhấn và giữ để mở trình đơn nguồn"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Nhấn và giữ để tắt"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Nhấn và giữ nút nguồn"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Nhấn và giữ nút nguồn để truy cập"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Trình đơn nguồn"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Trợ lý kỹ thuật số"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Truy cập trợ lý kỹ thuật số"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Truy cập trình đơn nguồn"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Để sử dụng, trước tiên, hãy đặt phương thức khóa màn hình"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Giữ để mở Trợ lý"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Giữ nút nguồn để kích hoạt Trợ lý"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Trình đơn nguồn và Trình đơn khẩn cấp:\nNhấn đồng thời Nút nguồn và Nút tăng âm lượng."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Ngăn đổ chuông:\nPhím tắt có sẵn trong trình đơn âm lượng."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Trình đơn nguồn:\nNhấn đồng thời nút nguồn và nút tăng âm lượng"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Ngăn đổ chuông:\n Nhấn nút âm lượng để truy cập lối tắt"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Khoảng thời gian nhấn và giữ"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Điều chỉnh độ nhạy bằng cách chọn khoảng thời gian nhấn và giữ nút nguồn"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Ngắn"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 288cf96..da402c6 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"在您的孩子使用 Pixel Imprint 时，系统会使用图像来更新其指纹模型。系统绝不会存储孩子用来创建指纹模型的图像，只会将指纹模型安全地存储在手机上，并且绝不会外泄。整个处理过程都是在手机上安全进行。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"您可以随时在“设置”部分删除您的指纹图片和模型或关闭指纹解锁功能。指纹图片和模型会存储在手机上，直到您将其删除为止。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"您和您的孩子可以随时在“设置”部分删除其指纹图片和模型或关闭指纹解锁功能。指纹图片和模型会存储在手机上，直到被删除为止。"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"您的手机有可能会意外解锁，例如有人让手机触碰到您的手指时。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"您的手机有可能会意外解锁，例如有人让手机触碰到您的手指时。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"您的平板电脑有可能会意外解锁，例如有人让平板电脑触碰到您的手指时。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"您的设备有可能会意外解锁，例如有人让设备触碰到您的手指时。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"您孩子的手机有可能会意外解锁，例如有人让您孩子的手机触碰到您孩子的手指时。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"为获得最佳效果，请使用获得 Made For Google 认证的屏幕保护膜。如果使用其他屏幕保护膜，系统可能无法识别您的指纹。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"为获得最佳效果，请使用获得 Made For Google 认证的屏幕保护膜。如果使用其他屏幕保护膜，系统可能无法识别您孩子的指纹。"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"关于设备和指纹传感器位置的图示说明"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"名称"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"确定"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"重试"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"删除"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"触摸传感器"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"将您的手指放在指纹传感器上，感觉到振动后移开手指"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"完成"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"糟糕，这不是传感器"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"请用您的食指触摸位于手机背面的传感器。"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"未完成注册"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"指纹注册操作超时，请重试。"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"指纹设置已超时"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"您可以立即重试，或之后在“设置”部分进行指纹设置"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"无法注册指纹。请重试或使用其他手指。"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"再添加一个"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"下一步"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"自定义您的手机"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"尝试不同的样式、壁纸等"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"屏保"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"屏保"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"使用屏保"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"充电或插入基座时"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"以上任一情况"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"充电时"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"插入基座时"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"一律不"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"已关闭"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"要控制手机在插入基座时和/或休眠状态下的行为，请开启屏保功能。"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"启用时机"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"当前的屏保"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"设置"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"自动调整亮度"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"拿起设备时唤醒"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"主动显示"</string>
@@ -1946,6 +1947,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"设置 PIN 码"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"设置工作资料 PIN 码"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"设置图案"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"为了提高安全性，请为该设备设置解锁图案"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"设置工作资料图案"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"要使用指纹，请设置密码"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"要使用指纹，请设置解锁图案"</string>
@@ -2099,7 +2101,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"紧急警报应用"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"重置应用偏好设置"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"要重置应用偏好设置吗？"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"此操作将会重置以下所有偏好设置：\n\n"<li>"已停用的应用"</li>\n<li>"已停用的应用通知"</li>\n<li>"执行操作的默认应用"</li>\n<li>"应用的后台流量限制"</li>\n<li>"任何权限限制"</li>\n\n"您将不会丢失任何应用数据。"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"此操作将会重置以下所有偏好设置：\n\n"<li>"已停用的应用"</li>\n<li>"已停用的应用通知"</li>\n<li>"执行操作的默认应用"</li>\n<li>"应用的后台流量限制"</li>\n<li>"任何权限限制"</li>\n<li>"电池用量设置"</li>\n\n"您将不会丢失任何应用数据。"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"重置应用"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"管理空间"</string>
     <string name="filter" msgid="9039576690686251462">"过滤"</string>
@@ -2354,7 +2356,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"重置设置"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"已重置显示大小和文字设置"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"是否重置显示大小和文字？"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"您的显示大小和文字偏好设置将重置为手机的原始设置"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"您的显示大小和文字偏好设置将重置为手机的原始设置"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"您的显示大小和文字偏好设置将重置为平板电脑的原始设置"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"重置"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"周末有安排了吗？"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"打算去海滩游玩。要一起来吗？"</string>
@@ -2934,6 +2937,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"自电池上次充满电后未使用过"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"过去 24 小时内未使用过"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"其他用户"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"系统会根据设备使用情况估算电池的剩余续航时间"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"预计剩余时间"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"剩余充电时间"</string>
@@ -3023,6 +3027,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"全语音启动指令和互动"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"简单的语音转文字"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"此语音输入服务能够始终进行语音监测，并能替您控制所有支持语音功能的应用。该服务由“<xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>”提供。要启用此服务吗？"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"设备端识别服务设置"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"设备端识别"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"设备端语音识别"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"首选引擎"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"引擎设置"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"语速和音调"</string>
@@ -3415,6 +3422,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"删除"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"此会话中的所有应用和数据都将被删除。"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"移除"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"访客（您）"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"用户"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"其他用户"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"删除访客活动记录"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"退出访客模式时删除所有访客应用和数据"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"要删除访客活动记录吗？"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"此访客会话中的应用和数据将会立即删除；日后您每次退出访客模式时，系统都会删除访客活动记录"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"开启通话功能"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"开启通话和短信功能"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"删除用户"</string>
@@ -4007,11 +4021,11 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"所有“<xliff:g id="APP_NAME">%1$s</xliff:g>”通知"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"所有<xliff:g id="APP_NAME">%1$s</xliff:g>通知"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"自适应通知功能"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
       <item quantity="other">每天大约 <xliff:g id="NUMBER_1">%,d</xliff:g> 条通知</item>
       <item quantity="one">每天大约 <xliff:g id="NUMBER_0">%d</xliff:g> 条通知</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
       <item quantity="other">每周大约 <xliff:g id="NUMBER_1">%,d</xliff:g> 条通知</item>
       <item quantity="one">每周大约 <xliff:g id="NUMBER_0">%d</xliff:g> 条通知</item>
     </plurals>
@@ -5255,7 +5269,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"不发出任何铃声"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"振动"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"静音"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"如需启用，请先从“按住电源按钮”改为电源菜单。"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"如需启用，请先从“按住电源按钮”改为电源菜单。"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"网络详情"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"您的设备名称会显示在手机上的应用中。此外，当您连接到蓝牙设备、连接到 WLAN 网络或设置 WLAN 热点时，其他人可能也会看到您的设备名称。"</string>
     <string name="devices_title" msgid="649715719278562515">"设备"</string>
@@ -5542,15 +5556,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"设备控制器"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"银行卡和卡券"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"银行卡和卡券"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"按住电源按钮"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"按住电源按钮将启动 Google 助理"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"按住电源按钮将调出电源菜单"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"通过按住电源按钮启动 Google 助理的功能已停用"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"按住电源按钮"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"按住电源按钮即可访问"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"电源菜单"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"数字助理"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"访问数字助理"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"访问电源菜单"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"需先设置屏幕锁定方式才能使用"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"长按电源按钮启动 Google 助理"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"长按电源按钮即可启动 Google 助理"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"“电源和急救信息”菜单：\n同时按电源按钮和音量调高按钮。"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"阻止响铃：\n音量菜单中提供了快捷方式。"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"电源菜单：\n同时按下电源按钮和音量调高按钮"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"阻止响铃：\n按下音量按钮即可显示快捷键"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"按住电源按钮的持续时间"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"通过选择按住电源按钮的持续时间来调节灵敏度"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"短"</string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 4f032ad..f2bf163 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"使用 Pixel Imprint 時，系統會使用圖片來更新其指紋模型。系統不會儲存子女用來建立指紋模型的圖片，只會將指紋模型安全地存放在手機上，但絕不會傳送到手機以外的地方。整個處理過程都會安全地在手機上進行。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"您隨時可以前往「設定」刪除指紋圖像和模型，或停用指紋解鎖功能。指紋圖像和模型會儲存在手機上，直到您刪除為止。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"您和子女可隨時前往「設定」刪除指紋圖片和模型或停用「指紋解鎖」功能。指紋圖片和模型會儲存在手機上，直至其刪除為止。"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"您的手機有可能會意外解鎖，例如有人讓您的手指觸碰到手機。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"您的手機有可能會意外解鎖，例如有人讓您的手指觸碰到手機。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"您的平板電腦有可能會意外解鎖，例如有人讓您的手指觸碰到平板電腦。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"您的裝置有可能會意外解鎖，例如有人讓您的手指觸碰到裝置。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"您子女的手機有可能會意外解鎖，例如有人讓其手指觸碰到手機。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"為獲得最佳效果，請使用已通過 Made for Google 認證的螢幕保護貼。如果使用其他螢幕保護貼，系統可能無法辨識您的指紋。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"為獲得最佳效果，請使用已通過 Made for Google 認證的螢幕保護貼。如果使用其他螢幕保護貼，系統可能無法辨識子女的指紋。"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"裝置和指紋感應器位置圖示"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"名稱"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"確定"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"再試一次"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"刪除"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"輕觸感應器"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"請將手指放在感應器上，並在感到震動時移開"</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"完成"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"糟糕，這不是感應器"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"請使用食指輕觸位於手機背面的感應器。"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"尚未完成註冊"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"註冊指紋過程逾時，請重新嘗試。"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"指紋設定逾時"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"您可以立即重試，亦可以稍後再前往「設定」設定指紋"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"無法註冊指紋，請重試或使用另一隻手指。"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"新增其他"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"下一步"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"自訂您的手機"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"嘗試其他樣式和桌布等"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"螢幕保護程式"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"螢幕保護程式"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"使用螢幕保護程式"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"充電或放上插座時"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"任何一個狀態"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"充電時"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"放上插座時"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"永不"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"關閉"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"如要控制手機在插座上和/或休眠時的操作，請開啟螢幕保護程式。"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"啟用時間"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"目前的螢幕保護程式"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"設定"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"自動調整亮度"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"拿起即可喚醒"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"微光螢幕"</string>
@@ -1949,6 +1950,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"設定 PIN"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"設定工作設定檔 PIN"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"設定解鎖圖案"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"為提升安全性，建議您設定解鎖裝置的圖案"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"設定工作設定檔解鎖圖案"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"如要使用指紋，請設定密碼"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"如要使用指紋，請設定上鎖圖案"</string>
@@ -2102,7 +2104,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"緊急應用程式"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"重設應用程式偏好設定"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"重設應用程式偏好設定？"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"此操作會重設以下所有偏好設定：\n\n"<li>"已停用的應用程式"</li>\n<li>"已停用的應用程式通知"</li>\n<li>"執行操作的預設應用程式"</li>\n<li>"應用程式的背景數據限制"</li>\n<li>"任何權限限制"</li>\n\n"您不會失去任何應用程式資料。"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"此操作會重設以下所有偏好設定：\n\n"<li>"已停用的應用程式"</li>\n<li>"已停用的應用程式通知"</li>\n<li>"執行操作的預設應用程式"</li>\n<li>"應用程式的背景資料限制"</li>\n<li>"任何權限限制"</li>\n<li>"電池用量設定"</li>\n\n"您不會失去任何應用程式資料。"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"重設應用程式"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"管理空間"</string>
     <string name="filter" msgid="9039576690686251462">"篩選"</string>
@@ -2357,7 +2359,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"重設設定"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"已重設顯示大小和文字設定"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"要重設顯示大小和文字嗎？"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"顯示大小和文字偏好設定將重設為手機原始設定"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"顯示大小和文字偏好設定將重設為手機原始設定"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"顯示大小和文字偏好設定將重設為平板電腦原始設定"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"重設"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"你禮拜六日會做咩？"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"會去沙灘。一齊去？"</string>
@@ -2937,6 +2940,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"上次充滿電後未使用電池"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"過去 24 小時未使用電池"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"其他使用者"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"根據裝置的使用情況估計剩餘電量"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"估計剩餘時間"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"剩餘充電時間"</string>
@@ -3026,6 +3030,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"完全啟動字詞與互動"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"簡易語音轉文字"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"這項語音輸入服務由 <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> 提供，可隨時監控語言輸入，並代您控制具備語音操控功能的應用程式。您要啟用這項服務嗎？"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"裝置上識別設定"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"裝置上識別"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"裝置上語音識別"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"首選引擎"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"引擎設定"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"語音速率和音調"</string>
@@ -3418,6 +3425,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"刪除"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"這個工作階段中的所有應用程式和資料都會被刪除。"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"移除"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"訪客 (您)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"使用者"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"其他使用者"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"刪除訪客活動"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"結束訪客模式時刪除所有訪客應用程式和資料"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"要刪除訪客活動嗎？"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"系統現在會刪除此訪客工作階段中的應用程式和資料；日後每次結束訪客模式時，系統都會刪除所有未來的訪客活動"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"開啟通話功能"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"開啟通話和短訊功能"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"刪除使用者"</string>
@@ -4010,13 +4024,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"所有「<xliff:g id="APP_NAME">%1$s</xliff:g>」通知"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"所有「<xliff:g id="APP_NAME">%1$s</xliff:g>」通知"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"自動調節通知"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">~每天 <xliff:g id="NUMBER_1">%,d</xliff:g> 個通知</item>
-      <item quantity="one">~每天 <xliff:g id="NUMBER_0">%d</xliff:g> 個通知</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">每日約 <xliff:g id="NUMBER_1">%,d</xliff:g> 個通知</item>
+      <item quantity="one">每日約 <xliff:g id="NUMBER_0">%d</xliff:g> 個通知</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">~每星期 <xliff:g id="NUMBER_1">%,d</xliff:g> 個通知</item>
-      <item quantity="one">~每星期 <xliff:g id="NUMBER_0">%d</xliff:g> 個通知</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">每星期約 <xliff:g id="NUMBER_1">%,d</xliff:g> 個通知</item>
+      <item quantity="one">每星期約 <xliff:g id="NUMBER_0">%d</xliff:g> 個通知</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"永不"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"裝置和應用程式通知"</string>
@@ -5258,7 +5272,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"不執行任何操作"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"震動"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"靜音"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"如要啟用，請先將「按住開關按鈕」變更為電源選單。"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"如要啟用，請先將「按住開關按鈕」變更為電源選單。"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"網絡詳細資料"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"您在手機上的應用程式可以取得您的裝置名稱。當您連接藍牙裝置或 Wi-Fi 網絡，或設定 Wi-Fi 熱點時，其他人亦可能會看到您的裝置名稱。"</string>
     <string name="devices_title" msgid="649715719278562515">"裝置"</string>
@@ -5545,15 +5559,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"裝置控制"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"付款卡和票卡"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"付款卡和票卡"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"按住開關按鈕"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"按住以啟用「Google 助理」"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"按住以使用電源選單"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"已停用按住功能"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"按住開關按鈕"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"按住開關按鈕即可存取"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"電源選單"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"數碼助理"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"存取數碼助理"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"存取電源選單"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"需要先設定上鎖畫面才能使用"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"按住即可啟動「Google 助理」"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"按住開關按鈕即可啟動「Google 助理」"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"電源和緊急選單：\n同時按下「電源」和「調高音量」。"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"暫停響鈴：\n音量選單提供快速鍵。"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"電源選單：\n同時按下開關按鈕和調高音量按鈕"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"暫停響鈴：\n按下音量按鈕即可顯示捷徑"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"按住開關按鈕的時間長度"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"選擇按住開關按鈕的時間長度即可調整靈敏度"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"短"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 9b38437..c830058 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"孩子使用 Pixel Imprint 時產生的圖像會做為系統更新指紋模型的依據。系統不會儲存建立指紋模型時使用的圖像，但會將指紋模型安全存放在手機上，而且絕對不會外洩。整個處理過程都是在手機上進行，安全有保障。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"你隨時可以前往「設定」刪除指紋圖像和模型，或是停用指紋解鎖功能。指紋圖像和模型會儲存在手機上，直到你刪除為止。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"你和孩子隨時可以前往「設定」刪除指紋圖像和模型，或停用指紋解鎖功能。指紋圖像和模型會儲存在手機上，直到你或孩子刪除為止。"</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"你的手機有可能會意外解鎖，例如有人讓你的手指觸碰到手機。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"你的手機有可能會意外解鎖，例如有人讓你的手指觸碰到手機。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"您的平板電腦有可能會意外解鎖，例如有人讓您的手指觸碰到平板電腦。"</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"您的裝置有可能會意外解鎖，例如有人讓您的手指觸碰到裝置。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"孩子的手機有可能會意外解鎖，例如有人讓他們的手指觸碰到手機。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"為獲得最佳效果，請使用 Made For Google 認證的螢幕保護貼。如果使用其他螢幕保護貼，系統可能無法辨識你的指紋。"</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"為獲得最佳效果，請使用 Made For Google 認證的螢幕保護貼。如果使用其他螢幕保護貼，系統可能無法辨識孩子的指紋。"</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"裝置指紋感應器位置插圖"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"名稱"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"確定"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"重試"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"刪除"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"輕觸感應器"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"將你的手指放在感應器上，感到震動即可移開"</string>
@@ -593,8 +596,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"完成"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"糟糕，這不是感應器"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"使用食指輕觸手機背面的感應器。"</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"未完成註冊"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"指紋註冊操作逾時，請再試一次。"</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"指紋設定已逾時"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"您可以立即重試，也可以稍後再前往「設定」進行指紋設定"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"無法註冊指紋。請再試一次或使用不同的手指。"</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"新增另一個"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"下一步"</string>
@@ -1450,17 +1453,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"自訂你的手機"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"試試不同的樣式、桌布和其他項目"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"螢幕保護程式"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"螢幕保護程式"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"使用螢幕保護程式"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"充電或安置於座架上時"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"以上任一情況"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"充電時"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"安置於座架上時"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"永遠不要"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"關閉"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"如要控制手機安置於座架上和/或休眠時的設定，請開啟螢幕保護程式。"</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"啟用時機"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"目前的螢幕保護程式"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"設定"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"自動調整亮度"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"舉起即可喚醒"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"微光螢幕"</string>
@@ -1948,6 +1949,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"設定 PIN 碼"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"設定工作資料夾 PIN 碼"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"設定解鎖圖案"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"為提升安全性，建議你設定裝置的解鎖圖案"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"設定工作資料夾解鎖圖案"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"如要使用指紋，請設定密碼"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"如要使用指紋，請設定解鎖圖案"</string>
@@ -2101,7 +2103,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"緊急應用程式"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"重設應用程式偏好設定"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"重設應用程式偏好設定？"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"這麼做會重設下列項目的所有偏好設定：\n\n"<li>"已停用的應用程式"</li>\n<li>"已停用的應用程式通知"</li>\n<li>"執行動作的預設應用程式"</li>\n<li>"應用程式背景資料限制"</li>\n<li>"任何權限限制"</li>\n\n"你不會遺失任何應用程式資料。"</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"這麼做會重設下列項目的所有偏好設定：\n\n"<li>"已停用的應用程式"</li>\n<li>"已停用的應用程式通知"</li>\n<li>"執行動作的預設應用程式"</li>\n<li>"應用程式背景資料限制"</li>\n<li>"任何權限限制"</li>\n<li>"電池用量設定"</li>\n\n"你不會遺失任何應用程式資料。"</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"重設應用程式"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"管理空間"</string>
     <string name="filter" msgid="9039576690686251462">"篩選"</string>
@@ -2356,7 +2358,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"重設設定"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"已重設顯示大小和文字設定"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"要重設顯示大小和文字嗎？"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"顯示大小和文字偏好設定將重設為手機原始設定"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"顯示大小和文字偏好設定將重設為手機原始設定"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"您的顯示大小和文字偏好設定將重設回平板電腦原始設定"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"重設"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"週末有什麼計畫嗎？"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"我要去海邊玩，要一起去嗎？"</string>
@@ -2936,6 +2939,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"從上次充飽電後未曾使用"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"過去 24 小時未曾使用"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"其他使用者"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"系統會依據裝置的使用情形估算剩餘電量"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"預估剩餘時間"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"充飽所需時間"</string>
@@ -3025,6 +3029,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"全語音啟動字詞與互動服務"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"簡易語音轉文字"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"這項語音輸入服務由 <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g> 應用程式提供，可隨時監控語音輸入，而且會替你管理所有支援語音功能的應用程式。要啟用這項服務嗎？"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"裝置端辨識設定"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"裝置端辨識"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"裝置端語音辨識"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"偏好的引擎"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"引擎設定"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"語音速率和音調"</string>
@@ -3417,6 +3424,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"刪除"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"這個工作階段中的所有應用程式和資料都會遭到刪除。"</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"移除"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"訪客 (你)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"使用者"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"其他使用者"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"刪除訪客活動"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"離開訪客模式時刪除所有訪客應用程式和資料"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"要刪除訪客活動嗎？"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"系統將立即刪除這個訪客工作階段中的應用程式和資料，日後只要你離開訪客模式，系統都會將該次訪客活動全部刪除"</string>
     <string name="user_enable_calling" msgid="264875360626905535">"開啟通話功能"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"開啟通話和簡訊功能"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"刪除使用者"</string>
@@ -4009,13 +4023,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」的所有通知"</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」的所有通知"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"自動調整通知"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="other">每天大約 <xliff:g id="NUMBER_1">%,d</xliff:g> 則通知</item>
-      <item quantity="one">每天大約 <xliff:g id="NUMBER_0">%d</xliff:g> 則通知</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="other">每天約 <xliff:g id="NUMBER_1">%,d</xliff:g> 則通知</item>
+      <item quantity="one">每天約 <xliff:g id="NUMBER_0">%d</xliff:g> 則通知</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="other">每週大約 <xliff:g id="NUMBER_1">%,d</xliff:g> 則通知</item>
-      <item quantity="one">每週大約 <xliff:g id="NUMBER_0">%d</xliff:g> 則通知</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="other">每週約 <xliff:g id="NUMBER_1">%,d</xliff:g> 則通知</item>
+      <item quantity="one">每週約 <xliff:g id="NUMBER_0">%d</xliff:g> 則通知</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"永遠不要"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"裝置和應用程式通知"</string>
@@ -5257,7 +5271,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"不執行任何動作"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"震動"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"靜音"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"如要啟用，請先將設定從「按住電源鍵」變更為電源按鈕選單。"</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"如要啟用，請先將設定從「按住電源鍵」變更為電源按鈕選單。"</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"網路詳細資料"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"你在手機上的應用程式會取得手機的裝置名稱。此外，當你連上藍牙裝置、Wi-Fi 網路或者設定 Wi-Fi 無線基地台時，其他人可能也會看到這個裝置名稱。"</string>
     <string name="devices_title" msgid="649715719278562515">"裝置"</string>
@@ -5544,15 +5558,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"裝置控制"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"卡片和票證"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"卡片和票證"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"按住電源鍵"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"按住即可使用 Google 助理"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"按住即可使用電源按鈕選單"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"無法以按住電源鍵的方式停用 Google 助理"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"按住電源鍵"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"按住電源鍵即可存取"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"電源按鈕選單"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"數位助理"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"存取數位助理"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"存取電源按鈕選單"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"必須先設定螢幕鎖定才能使用"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"長按即可啟動 Google 助理"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"按住電源按鈕一段時間即可啟動 Google 助理"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"電源按鈕和緊急功能選單：\n同時按下電源鍵和調高音量鍵。"</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"暫停響鈴：\n音量按鈕選單裡有這項功能的捷徑。"</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"電源按鈕選單：\n同時按下電源鍵和調高音量按鈕"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"暫停響鈴：\n按下音量按鈕即可顯示捷徑"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"按住電源鍵的時間長度"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"選擇按住電源鍵的時間長度即可調整靈敏度"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"短"</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 68b10ea..27bc4f1 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -464,7 +464,9 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_3" msgid="5908959250804145997">"Uma usebenzisa i-Pixel Imprint, izithombe zisetshenziselwa ukubuyekeza imodeli yayo yesigxivizo seminwe. Izithombe ezisetshenziselwe ukudala imodeli yesigxivizo seminwe yengane yakho azilokothi zigcinwe, kodwa imodeli yesigxivizo seminwe igcinwa ngokuphephile kwifoni futhi ayilokothi ishiye ifoni. Konke ukucubungula kwenzeka ngokuphepha kwifoni."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_4" msgid="3948305045484131665">"Ungasula izithombe zezigxivizo zeminwe nemodeli, noma uvale Ukuvula Izigxivizo zeminwe noma nini Kumasethingi. Izithombe zezigxivizo zeminwe namamodeli kugcinwa kwifoni kuze kube yilapho uzisula."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4" msgid="4983770600405797515">"Wena nengane yakho ningasula izithombe zeminwe yayo nemodeli, noma uvale Ukuvula ngesigxivizo somunwe noma kunini Kumasethingi. Izithombe namamodeli esigxivizo seminwe agcinwa efonini aze asulwe."</string>
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" msgid="2018885671994058605">"Ifoni yakho ingavulwa lapho ungahlosile, njengalapho uma othile eyibambela ngasomunweni wakho."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default" msgid="2018885671994058605">"Ifoni yakho ingavulwa lapho ungahlosile, njengalapho uma othile eyibambela ngasomunweni wakho."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet" msgid="7390208617531513381">"Ithebulethi yakho ingavulwa lapho ungahlosile, njengalapho uma othile eyibambela ngasomunweni wakho."</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device" msgid="1662571028234764290">"Idivayisi yakho ingavulwa lapho ungahlosile, njengalapho uma othile eyibambela ngasomunweni wakho."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" msgid="8356551505082794682">"Ifoni yengane yakho ingavulwa lapho ingahlosile, njengokuthi uma umuntu eyibamba ayibeke emunweni wayo."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_6" msgid="5314031490467481499">"Ukuze uthole imiphumela engcono, sebenzisa isivikeli sesikrini Esenzelwe I-Google esigunyaziwe. Kwezinye izivikeli zesikrini, isigxivizo sakho somunwe singase singasebenzi."</string>
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6" msgid="3563942520716110478">"Ukuze uthole imiphumela engcono, sebenzisa isivikeli sesikrini Esenzelwe I-Google esigunyaziwe. Kwezinye izivikeli zesikrini, isigxivizo somunwe wengane yakho ungase ungasebenzi."</string>
@@ -514,6 +516,7 @@
     <string name="security_settings_fingerprint_enroll_find_sensor_content_description" msgid="3065850549419750523">"Ukuvezwa ngedivayisi ngendawo yenzwa yezigxivizo zeminwe"</string>
     <string name="security_settings_fingerprint_enroll_dialog_name_label" msgid="7298812463228440333">"Igama"</string>
     <string name="security_settings_fingerprint_enroll_dialog_ok" msgid="4074335979239208021">"KULUNGILE"</string>
+    <string name="security_settings_fingerprint_enroll_dialog_try_again" msgid="8117874972945407006">"Zama futhi"</string>
     <string name="security_settings_fingerprint_enroll_dialog_delete" msgid="6027141901007342389">"Susa"</string>
     <string name="security_settings_fingerprint_enroll_start_title" msgid="7391368057800077604">"Thinta inzwa"</string>
     <string name="security_settings_fingerprint_enroll_start_message" msgid="5010227772754175346">"Beka umunwe wakho kunzwa uphinde uphakamise ngemuva kokuthi uzwe ukudlidliza"</string>
@@ -591,8 +594,8 @@
     <string name="security_settings_fingerprint_enroll_done" msgid="9198775984215057337">"Kwenziwe"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_title" msgid="5742429501012827526">"Hhayi bo, akuyona inzwa leyo"</string>
     <string name="security_settings_fingerprint_enroll_touch_dialog_message" msgid="7172969336386036998">"Thinta inzwa emuva kwefoni yakho. Sebenzisa umunwe wakho wokukhomba."</string>
-    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="132085362209418770">"Ukubhaliswa akuzange kuqedwe"</string>
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="5479647886550695766">"Isikhathi sokubhaliswa kwezigxivizo zeminwe sifinyelelwe. Zama futhi."</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title" msgid="8582267776559099046">"Ukusethwa kwesigxivizo somunwe kuphelelwe yisikhathi"</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message" msgid="467965101751652156">"Zama futhi manje noma usethe isigxivizo somunwe wakho ngokuhamba kwesikhathi Kumasethingi"</string>
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message" msgid="6068935528640241271">"Ukubhaliswa kwezigxivizo zeminwe akuzange kusebenze. Zama futhi noma sebenzisa umunwe ohlukile."</string>
     <string name="fingerprint_enroll_button_add" msgid="6652490687672815760">"Engeza enye"</string>
     <string name="fingerprint_enroll_button_next" msgid="1034110123277869532">"Okulandelayo"</string>
@@ -1448,17 +1451,15 @@
     <string name="style_suggestion_title" msgid="1213747484782364775">"Enza ngendlela oyifisayo ifoni yakho"</string>
     <string name="style_suggestion_summary" msgid="4271131877800968159">"Zama izitayela ezihlukile, izithombe zangemuva, nokuningi"</string>
     <string name="screensaver_settings_title" msgid="3588535639672365395">"Isigcini sihenqo"</string>
+    <string name="keywords_screensaver" msgid="7249337959432229172">"isigcini sesikrini"</string>
     <string name="screensaver_settings_toggle_title" msgid="6194634226897244374">"Sebenzisa isilondolozi sesikrini"</string>
     <string name="screensaver_settings_summary_either_long" msgid="371949139331896271">"Ngenkathi ishaja noma idokhiwe"</string>
-    <string name="screensaver_settings_summary_either_short" msgid="2126139984738506920">"Noma"</string>
     <string name="screensaver_settings_summary_sleep" msgid="6555922932643037432">"Ngenkathi ishaja"</string>
     <string name="screensaver_settings_summary_dock" msgid="6997766385189369733">"Ngenkathi idokhiwe"</string>
     <string name="screensaver_settings_summary_never" msgid="4988141393040918450">"Akusoze"</string>
     <string name="screensaver_settings_summary_off" msgid="8720357504939106923">"Valiwe"</string>
-    <string name="screensaver_settings_disabled_prompt" msgid="1166343194760238835">"Ukuze ulawule ukuthi kwenzakale ini uma ifoni idokhiwe kanye/noma ilele, vula isilondolozi sikrini."</string>
     <string name="screensaver_settings_when_to_dream" msgid="8145025742428940520">"Iqala nini"</string>
     <string name="screensaver_settings_current" msgid="390472865895976891">"Isithombe-skrini samanje"</string>
-    <string name="screensaver_settings_button" msgid="6159236558934930238">"Izilungiselelo"</string>
     <string name="automatic_brightness" msgid="4599827881929079513">"Ukukhanya okuzenzakalelayo"</string>
     <string name="lift_to_wake_title" msgid="8994218158737714046">"Ilifti yokuvuka"</string>
     <string name="ambient_display_screen_title" msgid="8615947016991429325">"Isibonisi esi-Ambient"</string>
@@ -1947,6 +1948,7 @@
     <string name="lockpassword_choose_your_pin_header" msgid="7754265746504679473">"Setha Iphinikhodi"</string>
     <string name="lockpassword_choose_your_profile_pin_header" msgid="4581749963670819048">"Setha Iphinikhodi yomsebenzi"</string>
     <string name="lockpassword_choose_your_pattern_header" msgid="5674909390779586252">"Setha iphethini"</string>
+    <string name="lockpassword_choose_your_pattern_description" msgid="6808109256008481046">"Ngokuphepha okungeziwe, setha iphethini ukuze uvule idivayisi"</string>
     <string name="lockpassword_choose_your_profile_pattern_header" msgid="3101811498330756641">"Setha iphethini yomsebenzi"</string>
     <string name="lockpassword_choose_your_password_header_for_fingerprint" msgid="3167261267229254090">"Ukuze usebenzise izigxivizo zeminwe, setha iphasiwedi"</string>
     <string name="lockpassword_choose_your_pattern_header_for_fingerprint" msgid="4707788269512303400">"Ukuze usebenzise izigxivizo zeminwe, setha iphethini"</string>
@@ -2100,7 +2102,7 @@
     <string name="default_emergency_app" msgid="1929974800666613803">"Uhlelo lokusebenza lwesimo esiphuthumayo"</string>
     <string name="reset_app_preferences" msgid="8861758340732716573">"Setha kabusha izintandokazi zezinhlelo zokusebenza"</string>
     <string name="reset_app_preferences_title" msgid="8935136792316050759">"Setha kabusha izintandokazi zohlelo lokusebenza?"</string>
-    <string name="reset_app_preferences_desc" msgid="6509978724602405805">"Lokhu kuzosetha kabusha konke okuncamelayo kwe-:\n\n"<li>"Izinhlelo zokusebenza ezikhutshaziwe"</li>\n<li>"Izaziso zezinhlelo zokusebenza ezikhutshaziwe"</li>\n<li>"Izinhlelo zokusebenza ezizenzakalelayo zezenzo"</li>\n<li>"Imikhawulo yedatha yangemuva yezinhlelo zokusebenza"</li>\n<li>"Noma yimiphi imikhawulo yemvume"</li>\n\n"Ngeke uze ulahlekelwe noma iyiphi idatha yohlelo lokusebenza."</string>
+    <string name="reset_app_preferences_desc" msgid="8550782670650158299">"Lokhu kuzosetha kabusha konke okuncanyelwayo kwe-:\n\n"<li>"Ama-app akhutshaziwe"</li>\n<li>"Izaziso zez-app ezikhutshaziwe"</li>\n<li>"Ama-app okuzenzakalelayo wezenzo"</li>\n<li>"Imikhawulo yedatha yangemuva yama-app"</li>\n<li>"Noma yimiphi imikhawulo yemvume"</li>\n<li>"Isethingi yokusetshenziswa kwebhethri"</li>\n\n"Ngeke uze ulahlekelwe yinoma iyiphi idatha ye-app."</string>
     <string name="reset_app_preferences_button" msgid="2591318711372850058">"Setha kabusha izinhlelo zokusebenza"</string>
     <string name="manage_space_text" msgid="9013414693633572277">"Lawula isikhala"</string>
     <string name="filter" msgid="9039576690686251462">"Hlunga"</string>
@@ -2355,7 +2357,8 @@
     <string name="accessibility_text_reading_reset_button_title" msgid="5960753279788187669">"Setha kabusha amasethingi"</string>
     <string name="accessibility_text_reading_reset_message" msgid="824644303661026712">"Usayizi wesibonisi namasethingi ombhalo asethwe kabusha"</string>
     <string name="accessibility_text_reading_confirm_dialog_title" msgid="2865331351355690389">"Setha kabusha usayizi wokubonisa nombhalo?"</string>
-    <string name="accessibility_text_reading_confirm_dialog_message" msgid="517090197003540264">"Okuncanyelwayo kwakho kosayizi wokubonisa nombhalo kuzosethwa kabusha kube amasethingi angokoqobo wefoni yakho"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default" msgid="517090197003540264">"Okuncanyelwayo kwakho kosayizi wokubonisa nombhalo kuzosethwa kabusha kube amasethingi angokoqobo wefoni yakho"</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet" msgid="1291629915534156671">"Usayizi wakho wokubonisa nokuncamelayo kombhalo kuzosethwa kabusha kumasethingi ethebulethi oqobo"</string>
     <string name="accessibility_text_reading_confirm_dialog_reset_button" msgid="8215800137850243736">"Setha kabusha"</string>
     <string name="accessibility_text_reading_conversation_message_1" msgid="7883952203831957831">"Unezinhlelo zempelasonto?"</string>
     <string name="accessibility_text_reading_conversation_message_2" msgid="8112160435318635856">"Ngiya olwandle. Ufuna ukuhamba nami?"</string>
@@ -2935,6 +2938,7 @@
     <string name="battery_not_usage" msgid="1472275761547230196">"Akusetshenziswanga kusuka ekushajweni kokugcina okugcwele"</string>
     <string name="battery_not_usage_24hr" msgid="8397519536160741248">"Akusetshenziswanga emahoreni angama-24 adlule"</string>
     <string name="battery_usage_without_time" msgid="1346894834339420538"></string>
+    <string name="battery_usage_other_users" msgid="9002643295562500693">"Abanye abasebenzisi"</string>
     <string name="advanced_battery_graph_subtext" msgid="6816737986172678550">"Ukulinganiselwa kwebhethri okusele kususelwa ekusetshenzisweni kwedivayisi yakho"</string>
     <string name="estimated_time_left" msgid="948717045180211777">"Isikhathi esilinganiselwe esisele"</string>
     <string name="estimated_charging_time_left" msgid="2287135413363961246">"Kuze kushaje ngokuphelele"</string>
@@ -3024,6 +3028,9 @@
     <string name="voice_interactor_preference_summary" msgid="3942881638813452880">"I-hotword ephelele nokusebenzisana"</string>
     <string name="voice_recognizer_preference_summary" msgid="9195427725367463336">"Inkulumo elula eya embhalweni"</string>
     <string name="voice_interaction_security_warning" msgid="7962884055885987671">"Le sevisi yokufaka yezwi izokwazi ukwenza ukwengamela okuhlala kuvuliwe kwezwi nokulawula izinhlelo zokusebenza ezinikwe amandla ukulawula izwi engxenyeni yakho. Ivela kuhlelo lokusebenza le <xliff:g id="VOICE_INPUT_SERVICE_APP_NAME">%s</xliff:g>. Nika amandla ukusetshenziswa kwale sevisi?"</string>
+    <string name="on_device_recognition_settings" msgid="6503160369314598069">"Amasethingi okubonwa kudivayisi"</string>
+    <string name="on_device_recognition_settings_title" msgid="7137599722039096545">"Ukubonwa kudivayisi"</string>
+    <string name="on_device_recognition_settings_summary" msgid="3292736423223499348">"Ukubonwa kwengxoxo kudivayisi"</string>
     <string name="tts_engine_preference_title" msgid="7808775764174571132">"Injini encanyelwayo"</string>
     <string name="tts_engine_settings_title" msgid="1298093555056321577">"Izilungiselelo zenjini"</string>
     <string name="tts_sliders_title" msgid="6901146958648426181">"Ukulinganisela kwenkulumo nokuzwakala"</string>
@@ -3416,6 +3423,13 @@
     <string name="user_delete_button" msgid="3833498650182594653">"Susa"</string>
     <string name="user_exit_guest_confirm_message" msgid="8995296853928816554">"Zonke izinhlelo zokusebenza nedatha kulesi sikhathi zizosuswa."</string>
     <string name="user_exit_guest_dialog_remove" msgid="7067727314172605181">"Susa"</string>
+    <string name="guest_category_title" msgid="5562663588315329152">"Isihambeli (Wena)"</string>
+    <string name="user_category_title" msgid="4368580529662699083">"Abasebenzisi"</string>
+    <string name="other_user_category_title" msgid="7089976887307643217">"Abanye abasebenzisi"</string>
+    <string name="remove_guest_on_exit" msgid="8202972371459611066">"Sula umsebenzi wesihambeli"</string>
+    <string name="remove_guest_on_exit_summary" msgid="3969962695703280353">"Sula wonke ama-app wesihambeli nedatha lapho uphuma kwimodi yesivakashi"</string>
+    <string name="remove_guest_on_exit_dialog_title" msgid="2310442892536079416">"Sula umsebenzi wesihambeli?"</string>
+    <string name="remove_guest_on_exit_dialog_message" msgid="8112409834021851883">"Ama-app nedatha okusuka kulesi sikhathi sesihambeli kuzosulwa manje, wonke umsebenzi wesihambeli wesikhathi esizayo uzosulwa njalo lapho uphuma kwimodi yesivakashi."</string>
     <string name="user_enable_calling" msgid="264875360626905535">"Vula amakholi wamafoni"</string>
     <string name="user_enable_calling_sms" msgid="8546430559552381324">"Vula amakholi wefoni ne-SMS"</string>
     <string name="user_remove_user" msgid="8468203789739693845">"Susa umsebenzisi"</string>
@@ -4008,13 +4022,13 @@
     <string name="notification_switch_label" msgid="8029371325967501557">"Zonke izaziso ze-\"<xliff:g id="APP_NAME">%1$s</xliff:g>\""</string>
     <string name="notification_app_switch_label" msgid="4422902423925084193">"Zonke izaziso ze-<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="default_notification_assistant" msgid="243718059890346442">"Izaziso eziguqukayo"</string>
-    <plurals name="notifications_sent_daily" formatted="false" msgid="1479283620504341566">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> izaziso ngosuku</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> izaziso ngosuku</item>
+    <plurals name="notifications_sent_daily" formatted="false" msgid="1319135950258375284">
+      <item quantity="one">Cishe izaziso ezingu-<xliff:g id="NUMBER_1">%,d</xliff:g> ngosuku</item>
+      <item quantity="other">Cishe izaziso ezingu-<xliff:g id="NUMBER_1">%,d</xliff:g> ngosuku</item>
     </plurals>
-    <plurals name="notifications_sent_weekly" formatted="false" msgid="4913443431857170519">
-      <item quantity="one">~<xliff:g id="NUMBER_1">%,d</xliff:g> izaziso zanjalo ngeviki</item>
-      <item quantity="other">~<xliff:g id="NUMBER_1">%,d</xliff:g> izaziso zanjalo ngeviki</item>
+    <plurals name="notifications_sent_weekly" formatted="false" msgid="7604454969366376305">
+      <item quantity="one">Cishe izaziso ezingu-<xliff:g id="NUMBER_1">%,d</xliff:g> ngeviki</item>
+      <item quantity="other">Cishe izaziso ezingu-<xliff:g id="NUMBER_1">%,d</xliff:g> ngeviki</item>
     </plurals>
     <string name="notifications_sent_never" msgid="9081278709126812062">"Soze"</string>
     <string name="manage_notification_access_title" msgid="6481256069087219982">"Idivayisi nezaziso ze-app"</string>
@@ -5256,7 +5270,7 @@
     <string name="prevent_ringing_option_none" msgid="7776676007180834163">"Ungenzi lutho"</string>
     <string name="prevent_ringing_option_vibrate_summary" msgid="3435299885425754304">"Dlidlizela"</string>
     <string name="prevent_ringing_option_mute_summary" msgid="3939350522269337013">"Thulisa"</string>
-    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="3193459102328015340">"Ukuze unike amandla, shintsha okuthi \"Cindezela futhi ubambe inkinobho yamandla\" kube imenyu yamandla."</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary" msgid="8070356204398144241">"Ukuze unike amandla, qala ngokushintsha okuthi \"Cindezela futhi ubambe inkinobho yamandla\" kube yimenyu yamandla."</string>
     <string name="pref_title_network_details" msgid="7329759534269363308">"Imininingwane yenethiwekhi"</string>
     <string name="about_phone_device_name_warning" msgid="1938930553285875166">"Igama ledivayisi yakho libonakala kwizinhlelo zokusebenza kufoni yakho. Lingase futhi libonwe abanye abantu lapho uxhuma kumadivayisi we-Bluetooth, uxhuma kunethiwekhi ye-Wi-Fi noma usetha i-hotspot ye-Wi-Fi."</string>
     <string name="devices_title" msgid="649715719278562515">"Amadivayisi"</string>
@@ -5543,15 +5557,15 @@
     <string name="quick_controls_lower" msgid="6675573610027367819">"izilawuli zensiza"</string>
     <string name="cards_passes_sentence" msgid="1866311782387946944">"Amakhadi nokudlula"</string>
     <string name="cards_passes_lower" msgid="2429722007109957877">"amakhadi nokudlula"</string>
-    <string name="power_menu_setting_name" msgid="7291642927216934159">"Cindezela futhi ubambe inkinobho yamandla"</string>
-    <string name="power_menu_summary_long_press_for_assist_enabled" msgid="5322150755041458952">"Cindezela futhi ubambele Umsizi"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu" msgid="5165714995895517816">"Cindezela futhi ubambele imenyu yamandla"</string>
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action" msgid="2831598484771657432">"Ukucindezela futhi ubambe kukhutshaziwe"</string>
+    <string name="power_menu_setting_name" msgid="2394440932633137229">"Cindezela futhi ubambe inkinobho yamandla"</string>
+    <string name="power_menu_long_press_category_title" msgid="1051146091093775002">"Cindezela futhi ubambe inkinobho yamandla ukuze ufinyelele"</string>
+    <string name="power_menu_long_press_for_power_menu_title" msgid="477584639843663599">"Imenyu yamandla"</string>
+    <string name="power_menu_long_press_for_assistant_title" msgid="6557738348262616455">"Umsizi odijithali"</string>
+    <string name="power_menu_summary_long_press_for_assistant" msgid="32706459458422952">"Finyelela umsizi odijithali"</string>
+    <string name="power_menu_summary_long_press_for_power_menu" msgid="7617247135239683710">"Finyelela imenyu yamandla"</string>
     <string name="lockscreen_privacy_not_secure" msgid="3251276389681975912">"Ukuze usebenzise, qala ngokusetha ukukhiya kwesikrini"</string>
-    <string name="power_menu_long_press_for_assist" msgid="2016813721240777737">"Bambela Umsizi"</string>
-    <string name="power_menu_long_press_for_assist_summary" msgid="8251928804984560312">"Cupha Umsizi ngokubamba inkinobho yamandla"</string>
-    <string name="power_menu_power_volume_up_hint" msgid="1733051433583045623">"Imenyu Yamandla Nesimo Esiphuthumayo:\nCindezela Amandla Nevolumu Phezulu ngesikhathi esifanayo."</string>
-    <string name="power_menu_power_prevent_ringing_hint" msgid="5786494894009727654">"Nqabela ukukhalisa:\nIsifushaniso sitholakala kwimenyu yevulumu."</string>
+    <string name="power_menu_power_volume_up_hint" msgid="5619917593676125759">"Imenyu yamandla:\nCindezela inkinobho yamandla kanye nenkinobho yokunyusa ivolumu ngesikhathi esifanayo"</string>
+    <string name="power_menu_power_prevent_ringing_hint" msgid="1169955014711158873">"Vimba ukukhalisa:\nCindezela inkinobho yevolumu ukuze uthole isinqamuleli"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_title" msgid="1626808509158422185">"Isikhathi sokucindezela futhi ubambe"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_summary" msgid="7550610071666801935">"Lungisa ukuzwela ngokukhetha ukuthi uyicindezela futhi ubambe isikhathi esingakanani inkinobho yamandla"</string>
     <string name="power_menu_long_press_for_assist_sensitivity_low_label" msgid="3430099983480845635">"Okufushane"</string>
diff --git a/res/values/bools.xml b/res/values/bools.xml
new file mode 100644
index 0000000..25c3e0d
--- /dev/null
+++ b/res/values/bools.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+**
+** Copyright 2022, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources>
+  <!-- Referenced outside of Settings to confirm bug fixed - bug involved multiple
+  pending intents with difference only in intent extras, which doesn't work. -->
+  <bool name="config_isSafetyCenterLockScreenPendingIntentFixed">true</bool>
+</resources>
diff --git a/res/values/config.xml b/res/values/config.xml
index 2f70315..4180154 100755
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -622,6 +622,12 @@
     <!-- Whether to put the apps with system UID into system component bucket or not -->
     <bool name="config_battery_combine_system_components">false</bool>
 
+    <!-- The extra value for battery tip -->
+    <integer name="config_battery_extra_tip_value">12</integer>
+
+    <!-- Whether to enable the advanced vpn feature. The default is not to. -->
+    <bool name="config_advanced_vpn_enabled">false</bool>
+
     <!-- An array of uid name for which packages exempt from Wi-Fi permission check. -->
     <string-array name="config_exempt_wifi_permission_uid_name" translatable="false">
         <item>@string/config_settingsintelligence_package_name</item>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index c9557c1..c035320 100755
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -141,6 +141,7 @@
     <dimen name="avatar_margin_top">56dp</dimen>
     <dimen name="avatar_margin_end">24dp</dimen>
     <dimen name="multiple_users_avatar_size">20dp</dimen>
+    <dimen name="multiple_users_user_icon_size">40dp</dimen>
 
     <!-- Homepage -->
     <dimen name="homepage_title_margin_bottom">8dp</dimen>
@@ -493,8 +494,18 @@
     <dimen name="sims_select_margin_bottom">24dp</dimen>
     <dimen name="sims_select_margin_top">8dp</dimen>
 
+    <!-- Biometrics UDFPS enroll default dimensions-->
+    <dimen name="enroll_padding_start">0dp</dimen>
+    <dimen name="enroll_padding_end">0dp</dimen>
+    <dimen name="enroll_margin_end">0dp</dimen>
+    <dimen name="rotation_90_enroll_padding_start">0dp</dimen>
+    <dimen name="rotation_90_enroll_padding_end">0dp</dimen>
+    <dimen name="rotation_90_enroll_margin_end">0dp</dimen>
+
     <!-- QR code picture size -->
     <dimen name="qrcode_preview_margin">40dp</dimen>
     <dimen name="qrcode_preview_radius">30dp</dimen>
     <dimen name="qrcode_icon_size">27dp</dimen>
+    <!-- Margin for SD card setup completion Image -->
+    <dimen name="setup_completion_margin_top">88dp</dimen>
 </resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 9cdbad7..083064f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -184,6 +184,11 @@
     <!-- Keywords for bluetooth pairing item [CHAR LIMIT=30] -->
     <string name="keywords_add_bt_device">bluetooth</string>
 
+
+    <!-- Button to help user to pair right ear of the hearing aid device. It will show when only one of the hearing aid device set is connected. [CHAR LIMIT=20] -->
+    <string name="bluetooth_pair_right_ear_button">Pair right ear</string>
+    <!-- Button to help user to pair left ear of the hearing aid device. It will show when only one of the hearing aid device set is connected. [CHAR LIMIT=20] -->
+    <string name="bluetooth_pair_left_ear_button">Pair left ear</string>
     <!-- Connected devices settings. Title of the dialog to hint user to pair other ear of the hearing aid device. Shows when only one of the hearing aid device set is connected. [CHAR LIMIT=25] -->
     <string name="bluetooth_pair_other_ear_dialog_title">Pair your other ear</string>
     <!-- Connected devices settings. Message of the dialog to hint user to pair right ear of the hearing aid device. Shows when only left side of hearing aid device set is connected. [CHAR LIMIT=NONE] -->
@@ -1034,7 +1039,11 @@
     <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard when asking for parental consent. [CHAR LIMIT=NONE] -->
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_4">You and your child can delete their fingerprint images and model, or turn off Fingerprint Unlock at any time in Settings. Fingerprint images and models are stored on the phone until they\u2019re deleted.</string>
     <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
-    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5">Your phone can be unlocked when you don\u2019t intend to, like if someone holds it up to your finger.</string>
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="default">Your phone can be unlocked when you don\u2019t intend to, like if someone holds it up to your finger.</string>
+    <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="tablet">Your tablet can be unlocked when you don\u2019t intend to, like if someone holds it up to your finger.</string>
+    <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_5" product="device">Your device can be unlocked when you don\u2019t intend to, like if someone holds it up to your finger.</string>
     <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard when asking for parental consent. [CHAR LIMIT=NONE] -->
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5">Your child\u2019s phone can be unlocked when they don\u2019t intend to, like if someone holds it up to their finger.</string>
     <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
@@ -1138,6 +1147,8 @@
     <string name="security_settings_fingerprint_enroll_dialog_name_label">Name</string>
     <!-- Button text shown in fingerprint dialog that allows the user to rename a fingerprint template [CHAR LIMIT=22] -->
     <string name="security_settings_fingerprint_enroll_dialog_ok">OK</string>
+    <!-- Button text shown in fingerprint dialog that allows the user to try and enroll again[CHAR LIMIT=22] -->
+    <string name="security_settings_fingerprint_enroll_dialog_try_again">Try again</string>
     <!-- Button text shown in fingerprint dialog that allows the user to delete the fingerprint template [CHAR LIMIT=22] -->
     <string name="security_settings_fingerprint_enroll_dialog_delete">Delete</string>
     <!-- Title shown in fingerprint enrollment dialog to begin enrollment [CHAR LIMIT=29]-->
@@ -1294,9 +1305,9 @@
     <!-- Dialog message for dialog which shows when user touches the icon on the screen, instead of the sensor at the back [CHAR LIMIT=NONE] -->
     <string name="security_settings_fingerprint_enroll_touch_dialog_message">Touch the sensor on the back of your phone. Use your index finger.</string>
     <!-- Dialog message for dialog which shows when finger cannot be enrolled. [CHAR LIMIT=45] -->
-    <string name="security_settings_fingerprint_enroll_error_dialog_title">Enrollment was not completed</string>
+    <string name="security_settings_fingerprint_enroll_error_dialog_title">Fingerprint setup timed out</string>
     <!-- Dialog message for dialog which shows when finger cannot be enrolled due to being idle too long. -->
-    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message">Fingerprint enrollment time limit reached. Try again.</string>
+    <string name="security_settings_fingerprint_enroll_error_timeout_dialog_message">Try again now or set up your fingerprint later in Settings</string>
     <!-- Dialog message for dialog which shows when finger cannot be enrolled due to an internal error or fingerprint can't be read. -->
     <string name="security_settings_fingerprint_enroll_error_generic_dialog_message">Fingerprint enrollment didn\'t work. Try again or use a different finger.</string>
     <!-- Button text shown at the end of enrollment that allows the user to add another fingerprint -->
@@ -3228,30 +3239,26 @@
     <string name="style_suggestion_title">Customize your phone</string>
     <!-- Styles and Wallpapers summary [CHAR_LIMIT=70] -->
     <string name="style_suggestion_summary">Try different styles, wallpapers, and more</string>
-    <!-- Display settings screen, trigger for screen saver options -->
+    <!-- Display settings screen, trigger for screen saver options [CHAR LIMIT=30] -->
     <string name="screensaver_settings_title">Screen saver</string>
+    <!-- List of synonyms used in the settings search bar to find the “Screen saver”. [CHAR LIMIT=NONE] -->
+    <string name="keywords_screensaver">screensaver</string>
     <!-- The title for the toggle which disables/enables screen savers [CHAR_LIMIT=30] -->
     <string name="screensaver_settings_toggle_title">Use screen saver</string>
-    <!-- Display settings screen, summary fragment for screen saver options, activated when docked or asleep and charging -->
+    <!-- Display settings screen, summary fragment for screen saver options, activated when docked or asleep and charging [CHAR LIMIT=35] -->
     <string name="screensaver_settings_summary_either_long">While charging or docked</string>
-    <!-- Dream settings screen, dialog option, activated when docked or asleep and charging -->
-    <string name="screensaver_settings_summary_either_short">Either</string>
-    <!-- Display settings screen, summary fragment for screen saver options, activated when asleep and charging -->
+    <!-- Display settings screen, summary fragment for screen saver options, activated when asleep and charging [CHAR LIMIT=35] -->
     <string name="screensaver_settings_summary_sleep">While charging</string>
-    <!-- Display settings screen, summary fragment for screen saver options, activated when docked  -->
+    <!-- Display settings screen, summary fragment for screen saver options, activated when docked [CHAR LIMIT=35] -->
     <string name="screensaver_settings_summary_dock">While docked</string>
-    <!-- Display settings screen, summary fragment for screen saver options, activated never  -->
+    <!-- Display settings screen, summary fragment for screen saver options, activated never [CHAR LIMIT=35] -->
     <string name="screensaver_settings_summary_never">Never</string>
-    <!-- Display settings screen, summary for screen saver options, screen saver is turned off -->
+    <!-- Display settings screen, summary for screen saver options, screen saver is turned off [CHAR LIMIT=20] -->
     <string name="screensaver_settings_summary_off">Off</string>
-    <!-- Dream settings screen, caption for when dreams are disabled -->
-    <string name="screensaver_settings_disabled_prompt">To control what happens when the phone is docked and/or sleeping, turn screen saver on.</string>
-    <!-- Dream settings screen, action label, when to dream -->
+    <!-- Dream settings screen, action label, when to dream [CHAR LIMIT=20] -->
     <string name="screensaver_settings_when_to_dream">When to start</string>
-    <!-- Dream settings screen, action label, current selected screen saver -->
+    <!-- Dream settings screen, action label, current selected screen saver [CHAR LIMIT=35] -->
     <string name="screensaver_settings_current">Current screen saver</string>
-    <!-- Dream settings screen, button label for settings for a specific screensaver -->
-    <string name="screensaver_settings_button">Settings</string>
     <!-- Sound & display settings screen, setting option name to change whether the screen adjusts automatically based on lighting conditions -->
     <string name="automatic_brightness">Automatic brightness</string>
     <!-- [CHAR LIMIT=40] Display settings screen, setting option name to change whether the device wakes up when a lift gesture is detected. -->
@@ -3596,12 +3603,14 @@
     <string name="storage_menu_mount">Mount</string>
     <!-- Storage setting.  Menu option for unmounting a storage device [CHAR LIMIT=30]-->
     <string name="storage_menu_unmount">Eject</string>
-    <!-- Storage setting.  Menu option for erasing and formatting a storage device [CHAR LIMIT=30]-->
-    <string name="storage_menu_format">Format</string>
+    <!-- Storage setting.  Menu option for erasing and formatting a storage device [CHAR LIMIT=50]-->
+    <string name="storage_menu_format">Format SD card for portable storage</string>
+    <!-- Storage setting.  Button option for erasing and formatting a storage device [CHAR LIMIT=30]-->
+    <string name="storage_menu_format_button">Format card</string>
     <!-- Storage setting.  Menu option for erasing and formatting a storage device [CHAR LIMIT=30]-->
     <string name="storage_menu_format_public">Format as portable</string>
-    <!-- Storage setting.  Menu option for erasing and formatting a storage device [CHAR LIMIT=30]-->
-    <string name="storage_menu_format_private">Format as internal</string>
+    <!-- Storage setting.  Menu option for erasing and formatting a storage device [CHAR LIMIT=20]-->
+    <string name="storage_menu_format_option">Format</string>
     <!-- Storage setting.  Menu option for migrating data to a storage device [CHAR LIMIT=30]-->
     <string name="storage_menu_migrate">Migrate data</string>
     <!-- Storage setting.  Menu option for forgetting a storage device [CHAR LIMIT=30]-->
@@ -3674,8 +3683,10 @@
 \n\nTo use this <xliff:g id="name" example="SD card">^1</xliff:g>, you have to set it up first.</string>
 
     <!-- Body of dialog informing user about consequences of formatting an internal storage device [CHAR LIMIT=NONE]-->
-    <string name="storage_internal_format_details">After formatting, you can use this <xliff:g id="name" example="SD card">^1</xliff:g> in other devices.
-\n\nAll data on this <xliff:g id="name" example="SD card">^1</xliff:g> will be erased. Consider backing up first.
+    <string name="storage_internal_format_details">You can format this SD card to store photos, videos, music,
+        and more and access them on other devices.
+        \n\n<b>All data on this SD card will be erased.</b>
+        \n\n<b>Before formatting</b>
 \n\n<b>Back up photos &amp; other media</b>
 \nMove your media files to alternative storage on this device, or transfer them to a computer using a USB cable.
 \n\n<b>Back up apps</b>
@@ -3699,16 +3710,19 @@
     <!-- Body of dialog informing user about the storage used by the Android System [CHAR LIMIT=NONE]-->
     <string name="storage_detail_dialog_system">System includes files used to run Android version <xliff:g id="version" example="8.0">%s</xliff:g></string>
 
-    <!-- Title of wizard step prompting user to setup a storage device [CHAR LIMIT=32] -->
+  <!-- Message to notify guest users as to why they can't set up the storage device [CHAR LIMIT=50]-->
+  <string name="storage_wizard_guest">Guest mode users cannot format SD cards</string>
+
+  <!-- Title of wizard step prompting user to setup a storage device [CHAR LIMIT=32] -->
     <string name="storage_wizard_init_title">Set up your <xliff:g id="name" example="SD card">^1</xliff:g></string>
     <!-- Title of wizard choice to use storage device as external storage [CHAR LIMIT=64] -->
-    <string name="storage_wizard_init_external_title">Use as portable storage</string>
+    <string name="storage_wizard_init_external_title">Format SD card for portable storage</string>
     <!-- Summary of wizard choice to use storage device as external storage [CHAR LIMIT=NONE] -->
-    <string name="storage_wizard_init_external_summary">For moving photos and other media between devices.</string>
+    <string name="storage_wizard_init_external_summary">Save photos, videos, music, and more and access them from other devices</string>
     <!-- Title of wizard choice to use storage device as internal storage [CHAR LIMIT=64] -->
-    <string name="storage_wizard_init_internal_title">Use as internal storage</string>
+    <string name="storage_wizard_init_internal_title">Format SD card for internal storage</string>
     <!-- Summary of wizard choice to use storage device as internal storage [CHAR LIMIT=NONE] -->
-    <string name="storage_wizard_init_internal_summary">For storing anything on this device only, including apps and photos. Requires formatting that prevents it from working with other devices.</string>
+    <string name="storage_wizard_init_internal_summary">Save apps \u0026 media to use on this phone only</string>
 
     <!-- Title of wizard step prompting user to format a storage device [CHAR LIMIT=32] -->
     <string name="storage_wizard_format_confirm_title">Format as internal storage</string>
@@ -3763,13 +3777,11 @@
     </string>
 
     <!-- Title of a full-screen message. This string lets the user know that their storage device is ready to use. They can tap a button at the bottom of the screen to complete the setup process. The placeholder is for the specific device (e.g. SD card, USB drive, etc.). [CHAR LIMIT=32] -->
-    <string name="storage_wizard_ready_title">Your <xliff:g id="name" example="SD card">^1</xliff:g> is ready to use</string>
+    <string name="storage_wizard_ready_title"><xliff:g id="name" example="SD card">^1</xliff:g> formatted</string>
     <!-- Body of wizard step indicating that external storage is ready [CHAR LIMIT=NONE] -->
-    <string name="storage_wizard_ready_external_body">Your <xliff:g id="name" example="SD card">^1</xliff:g> is all set to use with photos and other media.</string>
+    <string name="storage_wizard_ready_external_body">You can start using your <xliff:g id="name" example="SD card">^1</xliff:g></string>
     <!-- Body of wizard step indicating that internal storage is ready [CHAR LIMIT=NONE] -->
-    <string name="storage_wizard_ready_internal_body">Your new <xliff:g id="name" example="SD card">^1</xliff:g> is working.
-\n\nTo move photos, files, and app data to this device, go to Settings > Storage.
-    </string>
+    <string name="storage_wizard_ready_internal_body">You can start using your <xliff:g id="name" example="SD card">^1</xliff:g></string>
 
     <!-- Title of wizard step prompting user to move an app [CHAR LIMIT=32] -->
     <string name="storage_wizard_move_confirm_title">Move <xliff:g id="app" example="Calculator">^1</xliff:g></string>
@@ -3799,26 +3811,26 @@
     <!-- This is the title of a full-screen message. After this question, the user will get to choose how they want to use the storage device that they have in their phone. The placeholder is for the specific device (e.g. SD card, USB drive, etc.). [CHAR LIMIT=32] -->
     <string name="storage_wizard_init_v2_title">How will you use this <xliff:g id="name" example="SD card">^1</xliff:g>?</string>
 
-    <!-- Title of a line item. Below this title, a user can tap a button to select this option if they want to use their SD card as extra device storage. [CHAR LIMIT=32] -->
-    <string name="storage_wizard_init_v2_internal_title" product="tablet">Use for extra tablet storage</string>
-    <!-- Subtext for a line item. Below this subtext, a user can tap a button to select this option if they want to use their SD card as extra device storage. [CHAR LIMIT=64] -->
-    <string name="storage_wizard_init_v2_internal_summary" product="tablet">For apps, files, and media on this tablet only</string>
+    <!-- Title of a line item. Below this title, a user can tap a button to select this option if they want to use their SD card as extra device storage. [CHAR LIMIT=50] -->
+    <string name="storage_wizard_init_v2_internal_title" product="tablet">Format SD card for internal storage</string>
+    <!-- Subtext for a line item. Below this subtext, a user can tap a button to select this option if they want to use their SD card as extra device storage. [CHAR LIMIT=NONE] -->
+    <string name="storage_wizard_init_v2_internal_summary" product="tablet">Store apps \u0026 media to use on this tablet only. &lt;a href="https://support.google.com/android/answer/12153449"&gt;Learn more about setting up an SD card&lt;/a&gt;</string>
     <!-- Button text. A user can tap this button if they want to use their SD card as extra device storage. [CHAR LIMIT=32] -->
-    <string name="storage_wizard_init_v2_internal_action" product="tablet">Tablet storage</string>
-    <!-- Title of a line item. Below this title, a user can tap a button to select this option if they want to use their SD card as extra device storage. [CHAR LIMIT=32] -->
-    <string name="storage_wizard_init_v2_internal_title" product="default">Use for extra phone storage</string>
-    <!-- Subtext for a line item. Below this subtext, a user can tap a button to select this option if they want to use their SD card as extra device storage. [CHAR LIMIT=64] -->
-    <string name="storage_wizard_init_v2_internal_summary" product="default">For apps, files, and media on this phone only</string>
+    <string name="storage_wizard_init_v2_internal_action" product="tablet">Format</string>
+    <!-- Title of a line item. Below this title, a user can tap a button to select this option if they want to use their SD card as extra device storage. [CHAR LIMIT=50] -->
+    <string name="storage_wizard_init_v2_internal_title" product="default">Format SD card for internal storage</string>
+    <!-- Subtext for a line item. Below this subtext, a user can tap a button to select this option if they want to use their SD card as extra device storage. [CHAR LIMIT=NONE] -->
+    <string name="storage_wizard_init_v2_internal_summary" product="default">Store apps \u0026 media to use on this phone only. &lt;a href="https://support.google.com/android/answer/12153449"&gt;Learn more about setting up an SD card&lt;/a&gt;</string>
     <!-- Button text. A user can tap this button if they want to use their SD card as extra device storage. [CHAR LIMIT=32] -->
-    <string name="storage_wizard_init_v2_internal_action" product="default">Phone storage</string>
+    <string name="storage_wizard_init_v2_internal_action" product="default">Format</string>
     <!-- This text separates two options in a full-screen message. It's used to indicate a user can choose one option or the other. [CHAR LIMIT=16] -->
     <string name="storage_wizard_init_v2_or">Or</string>
-    <!-- Title of a line item. Below this title, a user can tap a button to select this option if they want to use their SD card as portable device storage. [CHAR LIMIT=32] -->
-    <string name="storage_wizard_init_v2_external_title">Use for portable storage</string>
-    <!-- Subtext for a line item. Below this subtext, a user can tap a button to select this option if they want to use their SD card as portable device storage. [CHAR LIMIT=64] -->
-    <string name="storage_wizard_init_v2_external_summary">For transferring files and media between devices</string>
+    <!-- Title of a line item. Below this title, a user can tap a button to select this option if they want to use their SD card as portable device storage. [CHAR LIMIT=50] -->
+    <string name="storage_wizard_init_v2_external_title">Format SD card for portable storage</string>
+    <!-- Subtext for a line item. Below this subtext, a user can tap a button to select this option if they want to use their SD card as portable device storage. [CHAR LIMIT=NONE] -->
+    <string name="storage_wizard_init_v2_external_summary">Store photos, videos, music, and more and access them from other devices. &lt;a href="https://support.google.com/android/answer/12153449"&gt;Learn more about setting up an SD card&lt;/a&gt;</string>
     <!-- Button text. A user can tap this button if they want to use their SD card as portable device storage. [CHAR LIMIT=32] -->
-    <string name="storage_wizard_init_v2_external_action">Portable storage</string>
+    <string name="storage_wizard_init_v2_external_action">Format</string>
     <!-- Button text. A user can tap this button if they want to delay setting up their SD card until a later time. [CHAR LIMIT=32] -->
     <string name="storage_wizard_init_v2_later">Set up later</string>
 
@@ -3827,6 +3839,9 @@
     <!-- Body of a dialog. This text is confirming that the user wants to use their SD card as extra phone storage, but the formatting process will erase existing content on the card. The first placeholder is for the name of the device (e.g. a brand name of the SD card or USB drive). The second and third placeholders are for the general references (e.g. SD card, USB drive). [CHAR LIMIT=NONE] -->
     <string name="storage_wizard_format_confirm_v2_body">This <xliff:g id="name" example="SanDisk SD card">^1</xliff:g> needs to be formatted to store apps, files, and media.
 \n\nFormatting will erase existing content on the <xliff:g id="name" example="SD card">^2</xliff:g>. To avoid losing content, back it up to another <xliff:g id="name" example="SD card">^3</xliff:g> or device.</string>
+  <!-- Body of a dialog. This text is confirming that the user wants to use their SD card as portable storage, but the formatting process will erase existing content on the card. The first placeholder is for the name of the device (e.g. a brand name of the SD card or USB drive). The second and third placeholders are for the general references (e.g. SD card, USB drive). [CHAR LIMIT=NONE] -->
+    <string name="storage_wizard_format_confirm_v2_body_external">This <xliff:g id="name" example="SanDisk SD card">^1</xliff:g> needs to be formatted to store photos, videos, music, and more.
+        \n\nFormatting will erase existing content on the <xliff:g id="name" example="SD card">^2</xliff:g>. To avoid losing content, back it up to another <xliff:g id="name" example="SD card">^3</xliff:g> or device.</string>
     <!-- Button text. If a user taps this button, their SD card or USB device will be formatted and used as extra phone storage. The placeholder is for the specific device (e.g. SD card, USB drive, etc.). [CHAR LIMIT=16] -->
     <string name="storage_wizard_format_confirm_v2_action">Format <xliff:g id="name" example="SD card">^1</xliff:g></string>
 
@@ -3870,12 +3885,11 @@
     <string name="storage_wizard_slow_v2_continue">Continue</string>
 
     <!-- Title of a full-screen message. This text lets the user know how to manage the storage device moving forward. The placeholder is for the name of the device (e.g. brand name of the SD card). [CHAR LIMIT=NONE] -->
-    <string name="storage_wizard_ready_v2_external_body">You can move content to <xliff:g id="name" example="SanDisk SD card">^1</xliff:g></string>
+    <string name="storage_wizard_ready_v2_external_body">You can start using your <xliff:g id="name" example="SD card">^1</xliff:g></string>
     <!-- Title of a full-screen message. This text lets the user know that their content was moved to their storage device and how to manage the storage device moving forward. The placeholder is for the name of the device (e.g. brand name of the SD card). [CHAR LIMIT=NONE] -->
-    <string name="storage_wizard_ready_v2_internal_body">To move content to <xliff:g id="name" example="SanDisk SD card">^1</xliff:g>, go to <b>Settings > Storage</b></string>
+    <string name="storage_wizard_ready_v2_internal_body">You can start using your <xliff:g id="name" example="SD card">^1</xliff:g></string>
     <!-- Title of a full-screen message. This text lets the user know that their content was moved to their storage device and how to manage the storage device moving forward. The placeholder is for the name of the device (e.g. brand name of the SD card). [CHAR LIMIT=NONE] -->
-    <string name="storage_wizard_ready_v2_internal_moved_body">Your content was moved to <xliff:g id="name" example="SanDisk SD card">^1</xliff:g>.
-\n\nTo manage this <xliff:g id="name" example="SD card">^2</xliff:g>, go to <b>Settings > Storage</b>.</string>
+    <string name="storage_wizard_ready_v2_internal_moved_body">You can start using your <xliff:g id="name" example="SD card">^1</xliff:g></string>
 
     <!-- Phone info screen, section titles: -->
     <string name="battery_status_title">Battery status</string>
@@ -4407,6 +4421,8 @@
     <string name="lockpassword_choose_your_profile_pin_header">Set a work PIN</string>
     <!-- Header on first screen of choose device pattern flow [CHAR LIMIT=40] -->
     <string name="lockpassword_choose_your_pattern_header">Set a pattern</string>
+    <!-- Description on first screen of choose device pattern flow [CHAR LIMIT=NONE] -->
+    <string name="lockpassword_choose_your_pattern_description">For added security, set a pattern to unlock the device</string>
     <!-- Header on first screen of choose work profile pattern flow [CHAR LIMIT=40] -->
     <string name="lockpassword_choose_your_profile_pattern_header">Set a work pattern</string>
 
@@ -4773,7 +4789,7 @@
     <!-- [CHAR LIMIT=NONE] Manage applications screen, menu item.  Title of dialog to confirm resetting user's app preferences. -->
     <string name="reset_app_preferences_title">Reset app preferences?</string>
     <!-- [CHAR LIMIT=NONE] Manage applications screen, menu item.  Body of dialog to confirm resetting user's app preferences. -->
-    <string name="reset_app_preferences_desc">This will reset all preferences for:\n\n<li>Disabled apps</li>\n<li>Disabled app notifications</li>\n<li>Default applications for actions</li>\n<li>Background data restrictions for apps</li>\n<li>Any permission restrictions</li>\n\nYou will not lose any app data.</string>
+    <string name="reset_app_preferences_desc">This will reset all preferences for:\n\n<li>Disabled apps</li>\n<li>Disabled app notifications</li>\n<li>Default applications for actions</li>\n<li>Background data restrictions for apps</li>\n<li>Any permission restrictions</li>\n<li>Battery usage settings</li>\n\nYou will not lose any app data.</string>
     <!-- [CHAR LIMIT=25] Manage applications screen, menu item.  Confirmation button of dialog to confirm resetting user's app preferences. -->
     <string name="reset_app_preferences_button">Reset apps</string>
     <!-- Manage applications screen, individual app screen, button label when the user wants to manage the space taken up by an app. -->
@@ -5348,7 +5364,9 @@
     <!-- Title for the confirm dialog of reset settings. [CHAR LIMIT=NONE] -->
     <string name="accessibility_text_reading_confirm_dialog_title">Reset display size and text?</string>
     <!-- Message for the confirm dialog of reset settings. [CHAR LIMIT=NONE] -->
-    <string name="accessibility_text_reading_confirm_dialog_message">Your display size and text preferences will reset to the phone\u2019s original settings</string>
+    <string name="accessibility_text_reading_confirm_dialog_message" product="default">Your display size and text preferences will reset to the phone\u2019s original settings</string>
+    <!-- Message for the confirm dialog of reset settings. [CHAR LIMIT=NONE] -->
+    <string name="accessibility_text_reading_confirm_dialog_message" product="tablet">Your display size and text preferences will reset to the tablet\u2019s original settings</string>
     <!-- Title for the reset button of the confirm dialog of reset settings. [CHAR LIMIT=25] -->
     <string name="accessibility_text_reading_confirm_dialog_reset_button">Reset</string>
     <!-- Conversation message for the messaging app preview screen. [CHAR LIMIT=NONE] -->
@@ -6267,9 +6285,11 @@
     <!-- Summary for the battery high usage tip, which presents apps with highest usage [CHAR LIMIT=NONE] -->
     <string name="battery_tip_high_usage_summary">See apps with highest usage</string>
     <!-- Title for the battery limited temporarily tip [CHAR LIMIT=NONE] -->
-    <string name="battery_tip_limited_temporarily_title">Charging temporarily limited</string>
+    <string name="battery_tip_limited_temporarily_title">Charging is paused</string>
     <!-- Summary for the battery limited temporarily tip [CHAR LIMIT=NONE] -->
-    <string name="battery_tip_limited_temporarily_summary">To preserve your battery. Learn more.</string>
+    <string name="battery_tip_limited_temporarily_summary">Protecting battery to extend battery lifespan\nTap to learn more</string>
+    <!-- Summary for the battery limited temporarily extra tip [CHAR LIMIT=NONE] -->
+    <string name="battery_tip_limited_temporarily_extra_summary"><xliff:g id="percent" example="10%">%1$s</xliff:g></string>
     <!-- Text of battery limited temporarily tip resume charge button. [CHAR LIMIT=NONE] -->
     <string name="battery_tip_limited_temporarily_dialog_resume_charge">Resume charging</string>
     <!-- Message of battery limited temporarily tip. [CHAR LIMIT=NONE] -->
@@ -6326,6 +6346,8 @@
     <string name="battery_tip_unrestrict_app_dialog_ok">Remove</string>
     <!-- CANCEL button for dialog to remove restriction for app [CHAR LIMIT=NONE] -->
     <string name="battery_tip_unrestrict_app_dialog_cancel">Cancel</string>
+    <!-- Charge to full button for battery defender tips [CHAR LIMIT=NONE] -->
+    <string name="battery_tip_charge_to_full_button">Charge to full</string>
 
     <!-- Message for battery tip dialog to show the battery summary -->
     <string name="battery_tip_dialog_summary_message" product="default">Your apps are using a normal amount of battery. If apps use too much battery, your phone will suggest actions you can take.\n\nYou can always turn on Battery Saver if you\u2019re running low on battery.</string>
@@ -6642,6 +6664,8 @@
     <string name="battery_not_usage_24hr">No usage for past 24 hr</string>
     <!-- Description for no usage time but have battery usage [CHAR LIMIT=120] -->
     <string name="battery_usage_without_time"></string>
+    <!-- Description for other users aggregated battery usage data [CHAR LIMIT=120] -->
+    <string name="battery_usage_other_users">Other users</string>
 
     <!-- Graph subtext displayed to user when enhanced battery estimate is being used [CHAR LIMIT=120] -->
     <string name="advanced_battery_graph_subtext">Battery left estimate is based on your device usage</string>
@@ -6736,10 +6760,16 @@
     <!-- [CHAR_LIMIT=NONE] Battery percentage: Description for preference -->
     <string name="battery_percentage_description">Show battery percentage in status bar</string>
 
+    <!-- [CHAR_LIMIT=NONE] Battery usage main screen chart graph hint since last full charge -->
+    <string name="battery_usage_chart_graph_hint_last_full_charge">Battery level since last full charge</string>
     <!-- [CHAR_LIMIT=NONE] Battery usage main screen chart graph hint -->
     <string name="battery_usage_chart_graph_hint">Battery level for past 24 hr</string>
+    <!-- [CHAR_LIMIT=NONE] Battery app usage section header since last full charge -->
+    <string name="battery_app_usage">App usage since last full charge</string>
     <!-- [CHAR_LIMIT=NONE] Battery app usage section header for past 24 hour -->
     <string name="battery_app_usage_for_past_24">App usage for past 24 hr</string>
+    <!-- [CHAR_LIMIT=NONE] Battery system usage section header since last full charge -->
+    <string name="battery_system_usage">System usage since last full charge</string>
     <!-- [CHAR_LIMIT=NONE] Battery system usage section header for past 24 hour -->
     <string name="battery_system_usage_for_past_24">System usage for past 24 hr</string>
     <!-- [CHAR_LIMIT=NONE] Battery system usage section header -->
@@ -6872,6 +6902,14 @@
         behalf.  It comes from the <xliff:g id="voice_input_service_app_name">%s</xliff:g>
         application.  Enable the use of this service?</string>
 
+    <!-- On-device recognition settings --><skip />
+    <!-- [CHAR_LIMIT=NONE] Name of the settings item to open the on-device recognition settings. -->
+    <string name="on_device_recognition_settings">On-device recognition settings</string>
+    <!-- [CHAR_LIMIT=NONE] Title of the on-device recognition settings -->
+    <string name="on_device_recognition_settings_title">On-device recognition</string>
+    <!-- [CHAR_LIMIT=NONE] Summary of the on-device recognition settings -->
+    <string name="on_device_recognition_settings_summary">On-device speech recognition</string>
+
     <!-- [CHAR LIMIT=50] The text for the settings section that is used to set a preferred text to speech engine -->
     <string name="tts_engine_preference_title">Preferred engine</string>
     <!-- [CHAR LIMIT=50] The text for a settings screen of the currently set text to speech engine -->
@@ -7747,6 +7785,22 @@
     <string name="user_exit_guest_confirm_message">All apps and data in this session will be deleted.</string>
     <!-- Label for button in confirmation dialog when exiting guest session [CHAR LIMIT=35] -->
     <string name="user_exit_guest_dialog_remove">Remove</string>
+    <!-- Title for guest category in guest mode [CHAR LIMIT=35] -->
+    <string name="guest_category_title">Guest (You)</string>
+    <!-- Title for users preference [CHAR LIMIT=35] -->
+    <string name="user_category_title">Users</string>
+    <!-- Title for users preference when in guest mode [CHAR LIMIT=35] -->
+    <string name="other_user_category_title">Other users</string>
+    <!-- Title of preference to remove guest on exit option[CHAR LIMIT=35] -->
+    <string name="remove_guest_on_exit">Delete guest activity</string>
+    <!-- Summary of preference to remove guest on exit option[CHAR LIMIT=NONE] -->
+    <string name="remove_guest_on_exit_summary">Delete all guest apps and data
+        when exiting guest mode</string>
+    <!-- Title of dialog shown when remove_guest_on_exit toggle is ON [CHAR LIMIT=35] -->
+    <string name="remove_guest_on_exit_dialog_title">Delete guest activity?</string>
+    <!-- Message of dialog shown when remove_guest_on_exit toggle is ON [CHAR LIMIT=NONE] -->
+    <string name="remove_guest_on_exit_dialog_message">Apps and data from this guest session will be
+        deleted now, and all future guest activity will be deleted each time you exit guest mode</string>
 
     <!-- Title of preference to enable calling[CHAR LIMIT=40] -->
     <string name="user_enable_calling">Turn on phone calls</string>
@@ -8173,6 +8227,10 @@
     <string name="wizard_back">Back</string>
     <!-- Wizard next button label [CHAR LIMIT=25] -->
     <string name="wizard_next">Next</string>
+    <!-- Wizard next button label for portable [CHAR LIMIT=25] -->
+    <string name="wizard_back_portable">Switch to portable</string>
+    <!-- Wizard next button label for adoptable [CHAR LIMIT=25] -->
+    <string name="wizard_back_adoptable">Format another way</string>
     <!-- Wizard finish button label [CHAR LIMIT=25] -->
     <string name="wizard_finish">Finish</string>
 
@@ -9443,12 +9501,12 @@
 
     <!-- app summary of notification app list screen [CHAR LIMIT=100] -->
     <plurals name="notifications_sent_daily">
-        <item quantity="one">~<xliff:g id="number">%d</xliff:g> notification per day</item>
-        <item quantity="other">~<xliff:g id="number">%,d</xliff:g> notifications per day</item>
+        <item quantity="one">About <xliff:g id="number">%d</xliff:g> notification per day</item>
+        <item quantity="other">About <xliff:g id="number">%,d</xliff:g> notifications per day</item>
     </plurals>
     <plurals name="notifications_sent_weekly">
-        <item quantity="one">~<xliff:g id="number">%d</xliff:g> notification per week</item>
-        <item quantity="other">~<xliff:g id="number">%,d</xliff:g> notifications per week</item>
+        <item quantity="one">About <xliff:g id="number">%d</xliff:g> notification per week</item>
+        <item quantity="other">About <xliff:g id="number">%,d</xliff:g> notifications per week</item>
     </plurals>
     <!-- app summary of notification app list screen [CHAR LIMIT=100] -->
     <string name="notifications_sent_never">Never</string>
@@ -12711,7 +12769,7 @@
     <!-- Summary for prevent ringing setting -->
     <string name="prevent_ringing_option_mute_summary">Mute</string>
     <!-- Summary for prevent ringing setting when the option itself is unavailable. [CHAR LIMIT=NONE] -->
-    <string name="prevent_ringing_option_unavailable_lpp_summary">To enable, first change \"Press and hold power button\" to the power menu.</string>
+    <string name="prevent_ringing_option_unavailable_lpp_summary">To enable, first change \"Press &amp; hold power button\" to the power menu.</string>
 
     <!-- Title for detail page of wifi network [CHAR LIMIT=30] -->
     <string name="pref_title_network_details">Network details</string>
@@ -13470,29 +13528,28 @@
     <!-- Cards and passes name lower case [CHAR LIMIT=40] -->
     <string name="cards_passes_lower">cards &amp; passes</string>
 
-    <!-- Power menu setting name [CHAR LIMIT=NONE] -->
-    <string name="power_menu_setting_name">Press and hold power button</string>
+    <!-- Power menu setting name [CHAR LIMIT=60] -->
+    <string name="power_menu_setting_name">Press &amp; hold power button</string>
 
-    <!-- Power menu setting summary to describe press and hold power button for Assistant is enabled. [CHAR LIMIT=NONE] -->
-    <string name="power_menu_summary_long_press_for_assist_enabled">Press and hold for the Assistant</string>
-    <!-- Power menu setting summary to describe press and hold power button for Assistant is disabled and power menu will appear. [CHAR LIMIT=NONE] -->
-    <string name="power_menu_summary_long_press_for_assist_disabled_with_power_menu">Press and hold for the power menu</string>
-    <!-- Power menu setting summary to describe press and hold power button for Assistant is disabled and nothing will happen. [CHAR LIMIT=NONE] -->
-    <string name="power_menu_summary_long_press_for_assist_disabled_no_action">Press and hold disabled</string>
+    <!-- Power menu setting section title for selecting the press and hold power button behavior. [CHAR LIMIT=60] -->
+    <string name="power_menu_long_press_category_title">Press &amp; hold power button to access</string>
+    <!-- Power menu setting option to make press and hold power button to open Power Menu. [CHAR LIMIT=60] -->
+    <string name="power_menu_long_press_for_power_menu_title">Power menu</string>
+    <!-- Power menu setting option to make press and hold power button to open Assistant. [CHAR LIMIT=60] -->
+    <string name="power_menu_long_press_for_assistant_title">Digital assistant</string>
+
+    <!-- Power menu setting summary to describe press and hold power button will open Assistant. [CHAR LIMIT=NONE] -->
+    <string name="power_menu_summary_long_press_for_assistant">Access digital assistant</string>
+    <!-- Power menu setting summary to describe press and hold power button will open Power Menu. [CHAR LIMIT=NONE] -->
+    <string name="power_menu_summary_long_press_for_power_menu">Access power menu</string>
 
     <!-- Power menu setting privacy no secure screen lock set [CHAR_LIMIT=NONE] -->
     <string name="lockscreen_privacy_not_secure">To use, first set a screen lock</string>
 
-    <!-- Power menu setting use long press power to invoke assistant. [CHAR LIMIT=NONE] -->
-    <string name="power_menu_long_press_for_assist">Hold for Assistant</string>
-
-    <!-- Power menu setting use log press power to invoke assistant summary. [CHAR LIMIT=NONE] -->
-    <string name="power_menu_long_press_for_assist_summary">Trigger the Assistant by holding the power button</string>
-
-    <!-- Power menu explanation to press power and volume up to show power and emergency menu. [CHAR LIMIT=NONE] -->
-    <string name="power_menu_power_volume_up_hint">Power &amp; Emergency Menu:\nPress Power and Volume up at the same time.</string>
+    <!-- Power menu explanation to press power and volume up to show power menu. [CHAR LIMIT=NONE] -->
+    <string name="power_menu_power_volume_up_hint">Power menu:\nPress the power button and the volume up button at the same time</string>
     <!-- Power menu explanation where to find prevent ringing option. [CHAR LIMIT=NONE] -->
-    <string name="power_menu_power_prevent_ringing_hint">Prevent ringing:\nShortcut available in the volume menu.</string>
+    <string name="power_menu_power_prevent_ringing_hint">Prevent ringing:\nPress a volume button for the shortcut</string>
 
     <!-- Power menu title of the seekbar setting controlling duration of how long the power button must be held to invoke assistant. [CHAR LIMIT=NONE]-->
     <string name="power_menu_long_press_for_assist_sensitivity_title">Press &amp; hold duration</string>
@@ -13577,6 +13634,10 @@
     <string name="media_controls_resume_title">Pin media player</string>
     <!-- Description of toggle to enable or disable the media resumption feature in quick settings [CHAR LIMIT=NONE]-->
     <string name="media_controls_resume_description">To quickly resume playback, media player stays open in Quick Settings</string>
+    <!-- Title of toggle to enable or disable the media resumption on lockscreen [CHAR LIMIT=NONE]-->
+    <string name="media_controls_lockscreen_title">Show media on lock screen</string>
+    <!-- Description of toggle to enable or disable the media resumption on lockscreen [CHAR LIMIT=NONE]-->
+    <string name="media_controls_lockscreen_description">To quickly resume playback, media player stays open on lock screen</string>
     <!-- Title of toggle to enable or disable media recommendations in quick settings [CHAR LIMIT=NONE] -->
     <string name="media_controls_recommendations_title">Show media recommendations</string>
     <!-- Description of toggle to enable or disable media recommendations based on user's activity [CHAR LIMIT=NONE] -->
diff --git a/res/values/styles.xml b/res/values/styles.xml
index f147ce9..8dee082 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -969,4 +969,19 @@
         <item name="android:textColor">?android:attr/textColorPrimary</item>
         <item name="android:textDirection">locale</item>
     </style>
+
+    <style name="CardPreferencePrimaryButton" parent="@style/ActionPrimaryButton">
+        <item name="android:fontFamily">google-sans-medium</item>
+        <item name="android:textSize">14sp</item>
+        <item name="android:textAllCaps">false</item>
+        <item name="android:singleLine">true</item>
+    </style>
+
+    <style name="CardPreferenceBorderlessButton"
+        parent="@style/Widget.AppCompat.Button.Borderless.Colored">
+        <item name="android:fontFamily">google-sans-medium</item>
+        <item name="android:textSize">14sp</item>
+        <item name="android:textAllCaps">false</item>
+        <item name="android:singleLine">true</item>
+    </style>
 </resources>
diff --git a/res/xml/bluetooth_device_details_fragment.xml b/res/xml/bluetooth_device_details_fragment.xml
index f330b19..efb2bf7 100644
--- a/res/xml/bluetooth_device_details_fragment.xml
+++ b/res/xml/bluetooth_device_details_fragment.xml
@@ -42,6 +42,12 @@
         settings:searchable="false"
         settings:controller="com.android.settings.bluetooth.LeAudioBluetoothDetailsHeaderController"/>
 
+    <com.android.settingslib.widget.ButtonPreference
+        android:key="hearing_aid_pair_other_button"
+        android:gravity="center" />
+    <com.android.settings.applications.SpacePreference
+        android:layout_height="8dp" />
+
     <com.android.settingslib.widget.ActionButtonsPreference
         android:key="action_buttons"
         settings:allowDividerBelow="true"/>
diff --git a/res/xml/display_settings.xml b/res/xml/display_settings.xml
index 2336c15..1b5e6c0 100644
--- a/res/xml/display_settings.xml
+++ b/res/xml/display_settings.xml
@@ -145,7 +145,8 @@
         <Preference
             android:key="screensaver"
             android:title="@string/screensaver_settings_title"
-            android:fragment="com.android.settings.dream.DreamSettings"/>
+            android:fragment="com.android.settings.dream.DreamSettings"
+            settings:keywords="@string/keywords_screensaver"/>
 
         <SwitchPreference
             android:key="camera_gesture"
diff --git a/res/xml/dream_fragment_overview.xml b/res/xml/dream_fragment_overview.xml
index 9a401a3..db8f4fd 100644
--- a/res/xml/dream_fragment_overview.xml
+++ b/res/xml/dream_fragment_overview.xml
@@ -17,7 +17,9 @@
 <PreferenceScreen
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:settings="http://schemas.android.com/apk/res-auto"
-    android:title="@string/screensaver_settings_title">
+    android:key="screensaver_settings_screen"
+    android:title="@string/screensaver_settings_title"
+    settings:keywords="@string/keywords_screensaver">
 
     <com.android.settingslib.widget.MainSwitchPreference
         android:key="dream_main_settings_switch"
@@ -25,6 +27,11 @@
         settings:controller="com.android.settings.dream.DreamMainSwitchPreferenceController"
         settings:searchable="false"/>
 
+    <Preference
+        android:key="when_to_start"
+        android:title="@string/screensaver_settings_when_to_dream"
+        android:fragment="com.android.settings.dream.WhenToDreamPicker"/>
+
     <PreferenceCategory
         android:title="@string/dream_picker_category">
         <com.android.settingslib.widget.LayoutPreference
@@ -34,17 +41,13 @@
             settings:controller="com.android.settings.dream.DreamPickerController"/>
     </PreferenceCategory>
 
-    <PreferenceCategory
-        android:title="@string/dream_more_settings_category">
-        <SwitchPreference
-            android:key="dream_complications_toggle"
-            android:title="@string/dream_complications_toggle_title"
-            android:summary="@string/dream_complications_toggle_summary"
-            settings:controller="com.android.settings.dream.DreamComplicationPreferenceController"/>
-        <Preference
-            android:key="when_to_start"
-            android:title="@string/screensaver_settings_when_to_dream"
-            android:fragment="com.android.settings.dream.WhenToDreamPicker"/>
-    </PreferenceCategory>
+    <SwitchPreference
+        android:key="dream_complications_toggle"
+        android:title="@string/dream_complications_toggle_title"
+        android:summary="@string/dream_complications_toggle_summary"
+        settings:controller="com.android.settings.dream.DreamComplicationPreferenceController"/>
+
+    <com.android.settings.applications.SpacePreference
+        android:layout_height="16dp" />
 
 </PreferenceScreen>
diff --git a/res/xml/language_and_input.xml b/res/xml/language_and_input.xml
index 770a862..64b5003 100644
--- a/res/xml/language_and_input.xml
+++ b/res/xml/language_and_input.xml
@@ -64,6 +64,13 @@
             android:fragment="com.android.settings.language.DefaultVoiceInputPicker" />
 
         <Preference
+            android:key="on_device_recognition_settings"
+            android:title="@string/on_device_recognition_settings_title"
+            android:summary="@string/on_device_recognition_settings_summary"
+            settings:controller=
+                "com.android.settings.language.OnDeviceRecognitionPreferenceController" />
+
+        <Preference
             android:key="tts_settings_summary"
             android:title="@string/tts_settings_title"
             android:fragment="com.android.settings.tts.TextToSpeechSettings"
diff --git a/res/xml/media_controls_settings.xml b/res/xml/media_controls_settings.xml
index 0318097..822639a 100644
--- a/res/xml/media_controls_settings.xml
+++ b/res/xml/media_controls_settings.xml
@@ -28,6 +28,12 @@
         app:controller="com.android.settings.sound.MediaControlsPreferenceController" />
 
     <SwitchPreference
+        android:key="media_controls_lockscreen"
+        android:title="@string/media_controls_lockscreen_title"
+        android:summary="@string/media_controls_lockscreen_description"
+        app:controller="com.android.settings.sound.MediaControlsLockScreenPreferenceController" />
+
+    <SwitchPreference
         android:key="media_controls_recommendations"
         android:title="@string/media_controls_recommendations_title"
         android:summary="@string/media_controls_recommendations_description"
diff --git a/res/xml/power_menu_settings.xml b/res/xml/power_menu_settings.xml
index e5e2daa..48cc40c 100644
--- a/res/xml/power_menu_settings.xml
+++ b/res/xml/power_menu_settings.xml
@@ -23,19 +23,28 @@
         android:key="gesture_power_menu_video"
         settings:searchable="false"
         settings:lottie_imageAssetsFolder="power_menu"
-        settings:lottie_rawRes="@raw/lottie_power_menu"/>
+        settings:lottie_rawRes="@raw/lottie_long_press_power_for_power_menu"
+        settings:controller="com.android.settings.gestures.LongPressPowerIllustrationPreferenceController"/>
 
-    <SwitchPreference
-        android:key="gesture_power_menu_long_press_for_assist"
-        android:title="@string/power_menu_long_press_for_assist"
-        android:summary="@string/power_menu_long_press_for_assist_summary"
-        settings:controller="com.android.settings.gestures.LongPressPowerButtonPreferenceController"
-    />
+    <PreferenceCategory
+        android:key="gesture_power_menu_long_press_category"
+        android:title="@string/power_menu_long_press_category_title">
+        <com.android.settingslib.widget.SelectorWithWidgetPreference
+            android:key="gesture_power_menu_long_press_for_power_menu"
+            android:title="@string/power_menu_long_press_for_power_menu_title"
+            settings:controller="com.android.settings.gestures.LongPressPowerForPowerMenuPreferenceController"/>
+
+        <com.android.settingslib.widget.SelectorWithWidgetPreference
+            android:key="gesture_power_menu_long_press_for_assistant"
+            android:title="@string/power_menu_long_press_for_assistant_title"
+            settings:controller="com.android.settings.gestures.LongPressPowerForAssistantPreferenceController"/>
+    </PreferenceCategory>
 
     <com.android.settings.widget.LabeledSeekBarPreference
         android:key="gesture_power_menu_long_press_for_assist_sensitivity"
         android:title="@string/power_menu_long_press_for_assist_sensitivity_title"
         android:summary="@string/power_menu_long_press_for_assist_sensitivity_summary"
+        settings:allowDividerAbove="true"
         settings:textStart="@string/power_menu_long_press_for_assist_sensitivity_low_label"
         settings:textEnd="@string/power_menu_long_press_for_assist_sensitivity_high_label"
         settings:controller="com.android.settings.gestures.LongPressPowerSensitivityPreferenceController"
@@ -45,5 +54,6 @@
         android:key="power_menu_power_volume_up_hint"
         android:title="@string/power_menu_power_volume_up_hint"
         android:selectable="false"
-        settings:searchable="false"/>
+        settings:searchable="false"
+        settings:controller="com.android.settings.gestures.LongPressPowerFooterPreferenceController"/>
 </PreferenceScreen>
diff --git a/res/xml/power_usage_advanced.xml b/res/xml/power_usage_advanced.xml
index 7a9c44b..e9274ce 100644
--- a/res/xml/power_usage_advanced.xml
+++ b/res/xml/power_usage_advanced.xml
@@ -21,7 +21,7 @@
     android:title="@string/advanced_battery_title"
     settings:keywords="@string/keywords_battery_usage">
 
-    <com.android.settings.fuelgauge.BatteryHistoryPreference
+    <com.android.settings.fuelgauge.batteryusage.BatteryHistoryPreference
         android:key="battery_graph"/>
 
     <PreferenceCategory
diff --git a/res/xml/power_usage_summary.xml b/res/xml/power_usage_summary.xml
index 58327c0..9e86bf5 100644
--- a/res/xml/power_usage_summary.xml
+++ b/res/xml/power_usage_summary.xml
@@ -39,7 +39,7 @@
         settings:controller="com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController" />
 
     <Preference
-        android:fragment="com.android.settings.fuelgauge.PowerUsageAdvanced"
+        android:fragment="com.android.settings.fuelgauge.batteryusage.PowerUsageAdvanced"
         android:key="battery_usage_summary"
         android:title="@string/advanced_battery_preference_title"
         settings:keywords="@string/keywords_battery_usage" />
diff --git a/res/xml/privacy_advanced_settings.xml b/res/xml/privacy_advanced_settings.xml
index 9f465d4..b028008 100644
--- a/res/xml/privacy_advanced_settings.xml
+++ b/res/xml/privacy_advanced_settings.xml
@@ -51,6 +51,14 @@
         android:summary="@string/summary_placeholder"
         settings:searchable="false"/>
 
+    <!-- Show media on lock screen -->
+    <SwitchPreference
+        android:key="privacy_media_controls_lockscreen"
+        android:title="@string/media_controls_lockscreen_title"
+        android:summary="@string/media_controls_lockscreen_description"
+        settings:controller=
+            "com.android.settings.sound.MediaControlsLockScreenPreferenceController" />
+
     <!-- Privacy Service -->
     <PreferenceCategory
         android:key="privacy_services"
diff --git a/res/xml/privacy_controls_settings.xml b/res/xml/privacy_controls_settings.xml
index a477dc2..cc88e0c 100644
--- a/res/xml/privacy_controls_settings.xml
+++ b/res/xml/privacy_controls_settings.xml
@@ -34,12 +34,6 @@
         android:summary="@string/mic_toggle_description"
         settings:controller="com.android.settings.privacy.MicToggleController"/>
 
-    <!-- Location toggle -->
-    <com.android.settingslib.RestrictedSwitchPreference
-        android:key="privacy_location_toggle"
-        android:title="@string/location_toggle_title"
-        android:summary="@string/perm_toggle_description"/>
-
     <!-- Clipboard access notifications -->
     <SwitchPreference
         android:key="show_clip_access_notification"
diff --git a/res/xml/privacy_dashboard_settings.xml b/res/xml/privacy_dashboard_settings.xml
index 0a7cab5..f8f916e 100644
--- a/res/xml/privacy_dashboard_settings.xml
+++ b/res/xml/privacy_dashboard_settings.xml
@@ -89,6 +89,14 @@
         android:summary="@string/summary_placeholder"
         settings:searchable="false"/>
 
+    <!-- Show media on lock screen -->
+    <SwitchPreference
+        android:key="privacy_media_controls_lockscreen"
+        android:title="@string/media_controls_lockscreen_title"
+        android:summary="@string/media_controls_lockscreen_description"
+        settings:controller=
+            "com.android.settings.sound.MediaControlsLockScreenPreferenceController" />
+
     <!-- Privacy Service -->
     <PreferenceCategory
         android:key="privacy_services"
diff --git a/res/xml/top_level_settings.xml b/res/xml/top_level_settings.xml
index c9e6017..5fbc735 100644
--- a/res/xml/top_level_settings.xml
+++ b/res/xml/top_level_settings.xml
@@ -59,7 +59,7 @@
         settings:highlightableMenuKey="@string/menu_key_notifications"/>
 
     <com.android.settings.widget.HomepagePreference
-        android:fragment="com.android.settings.fuelgauge.PowerUsageSummary"
+        android:fragment="com.android.settings.fuelgauge.batteryusage.PowerUsageSummary"
         android:icon="@drawable/ic_settings_battery_white"
         android:key="top_level_battery"
         android:order="-110"
diff --git a/res/xml/user_settings.xml b/res/xml/user_settings.xml
index ab54989..5cbfe43 100644
--- a/res/xml/user_settings.xml
+++ b/res/xml/user_settings.xml
@@ -26,27 +26,58 @@
         settings:controller="com.android.settings.users.MultiUserTopIntroPreferenceController"/>
 
     <PreferenceCategory
-        android:key="user_list"
-        android:title="@string/user_list_title"
-        android:order="10"
-        settings:searchable="false">
-    </PreferenceCategory>
+        android:key="guest_category"
+        android:title="@string/guest_category_title"
+        android:order="2"
+        settings:searchable="false"/>
 
-    <com.android.settingslib.RestrictedPreference
-        android:key="guest_add"
-        android:title="@string/guest_new_guest"
-        android:order="15"/>
+    <Preference
+        android:key="guest_exit"
+        android:title="@string/guest_exit_button"
+        android:icon="@drawable/ic_guest_exit"
+        android:order="3"/>
+
+    <Preference
+        android:key="guest_reset"
+        android:title="@string/guest_reset_button"
+        android:icon="@drawable/ic_guest_reset"
+        android:order="4"/>
+
+    <PreferenceCategory
+        android:key="user_list"
+        android:title="@string/user_category_title"
+        android:order="10"
+        settings:searchable="false"/>
 
     <com.android.settingslib.RestrictedPreference
         android:key="user_add"
         android:title="@string/user_add_user_or_profile_menu"
+        android:icon="@drawable/ic_add_40dp"
         android:order="20"/>
 
     <com.android.settingslib.RestrictedPreference
         android:key="supervised_user_add"
         android:title="@*android:string/supervised_user_creation_label"
+        android:icon="@drawable/ic_add_40dp"
         android:order="25"/>
 
+    <PreferenceCategory
+        android:key="guest_user_category"
+        android:title="@*android:string/guest_name"
+        android:order="50"/>
+
+    <com.android.settingslib.RestrictedPreference
+        android:key="guest_add"
+        android:title="@string/guest_new_guest"
+        android:icon="@drawable/ic_add_40dp"
+        android:order="55"/>
+
+    <com.android.settingslib.RestrictedSwitchPreference
+            android:key="remove_guest_on_exit"
+            android:title="@string/remove_guest_on_exit"
+            android:summary="@string/remove_guest_on_exit_summary"
+            android:order="60"/>
+
     <com.android.settingslib.RestrictedSwitchPreference
         android:key="user_settings_add_users_when_locked"
         android:title="@string/user_add_on_lockscreen_menu"
diff --git a/res/xml/vpn_settings2.xml b/res/xml/vpn_settings2.xml
index 08075a6..0d374c7 100644
--- a/res/xml/vpn_settings2.xml
+++ b/res/xml/vpn_settings2.xml
@@ -16,4 +16,9 @@
 
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
         android:title="@string/vpn_title">
+    <PreferenceCategory
+        android:key="advanced_vpn_group"/>
+
+    <PreferenceCategory
+        android:key="vpn_group"/>
 </PreferenceScreen>
diff --git a/src/com/android/settings/ChangeIds.java b/src/com/android/settings/ChangeIds.java
new file mode 100644
index 0000000..1f77201
--- /dev/null
+++ b/src/com/android/settings/ChangeIds.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings;
+
+import android.compat.annotation.ChangeId;
+import android.compat.annotation.LoggingOnly;
+
+/**
+ * All the {@link ChangeId} used for Settings App.
+ */
+public class ChangeIds {
+    /**
+     * Intents with action {@code android.settings.MANAGE_APP_OVERLAY_PERMISSION}
+     * and data URI scheme {@code package} don't go to the app-specific screen for managing the
+     * permission anymore. Instead, they redirect to this screen for managing all the apps that have
+     * requested such permission.
+     */
+    @ChangeId
+    @LoggingOnly
+    public static final long CHANGE_RESTRICT_SAW_INTENT = 135920175L;
+}
diff --git a/src/com/android/settings/accessibility/ToggleScreenReaderPreferenceFragmentForSetupWizard.java b/src/com/android/settings/accessibility/ToggleScreenReaderPreferenceFragmentForSetupWizard.java
index 0af8aa1..f9a1113 100644
--- a/src/com/android/settings/accessibility/ToggleScreenReaderPreferenceFragmentForSetupWizard.java
+++ b/src/com/android/settings/accessibility/ToggleScreenReaderPreferenceFragmentForSetupWizard.java
@@ -49,8 +49,6 @@
         if (mTopIntroPreference != null) {
             mTopIntroPreference.setVisible(false);
         }
-
-        mToggleServiceSwitchPreference.applyPartnerCustomizationPaddingStyle();
     }
 
     @Override
diff --git a/src/com/android/settings/accounts/AccountDashboardFragment.java b/src/com/android/settings/accounts/AccountDashboardFragment.java
index a2b6182..5456f0a 100644
--- a/src/com/android/settings/accounts/AccountDashboardFragment.java
+++ b/src/com/android/settings/accounts/AccountDashboardFragment.java
@@ -26,7 +26,6 @@
 import android.os.UserManager;
 
 import com.android.settings.R;
-import com.android.settings.SettingsPreferenceFragment;
 import com.android.settings.applications.autofill.PasswordsPreferenceController;
 import com.android.settings.applications.defaultapps.DefaultAutofillPreferenceController;
 import com.android.settings.applications.defaultapps.DefaultWorkAutofillPreferenceController;
@@ -96,7 +95,7 @@
     }
 
     private static void buildAccountPreferenceControllers(
-            Context context, SettingsPreferenceFragment parent, String[] authorities,
+            Context context, DashboardFragment parent, String[] authorities,
             List<AbstractPreferenceController> controllers) {
         final AccountPreferenceController accountPrefController =
                 new AccountPreferenceController(context, parent, authorities,
diff --git a/src/com/android/settings/accounts/AccountPersonalDashboardFragment.java b/src/com/android/settings/accounts/AccountPersonalDashboardFragment.java
index 9ad1206..4661c64 100644
--- a/src/com/android/settings/accounts/AccountPersonalDashboardFragment.java
+++ b/src/com/android/settings/accounts/AccountPersonalDashboardFragment.java
@@ -24,7 +24,6 @@
 import android.content.Context;
 
 import com.android.settings.R;
-import com.android.settings.SettingsPreferenceFragment;
 import com.android.settings.applications.autofill.PasswordsPreferenceController;
 import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.dashboard.profileselector.ProfileSelectFragment;
@@ -78,7 +77,7 @@
     }
 
     private static void buildAccountPreferenceControllers(
-            Context context, SettingsPreferenceFragment parent, String[] authorities,
+            Context context, DashboardFragment parent, String[] authorities,
             List<AbstractPreferenceController> controllers) {
         final AccountPreferenceController accountPrefController =
                 new AccountPreferenceController(context, parent, authorities,
diff --git a/src/com/android/settings/accounts/AccountPreferenceController.java b/src/com/android/settings/accounts/AccountPreferenceController.java
index 1458988..8c717f0 100644
--- a/src/com/android/settings/accounts/AccountPreferenceController.java
+++ b/src/com/android/settings/accounts/AccountPreferenceController.java
@@ -58,10 +58,10 @@
 
 import com.android.settings.AccessiblePreferenceCategory;
 import com.android.settings.R;
-import com.android.settings.SettingsPreferenceFragment;
 import com.android.settings.Utils;
 import com.android.settings.core.PreferenceControllerMixin;
 import com.android.settings.core.SubSettingLauncher;
+import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.dashboard.profileselector.ProfileSelectFragment;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.RestrictedPreference;
@@ -101,7 +101,7 @@
     private Preference mProfileNotAvailablePreference;
     private String[] mAuthorities;
     private int mAuthoritiesCount = 0;
-    private SettingsPreferenceFragment mFragment;
+    private DashboardFragment mFragment;
     private int mAccountProfileOrder = ORDER_ACCOUNT_PROFILES;
     private AccountRestrictionHelper mHelper;
     private MetricsFeatureProvider mMetricsFeatureProvider;
@@ -145,13 +145,13 @@
         public ArrayMap<String, AccountTypePreference> accountPreferences = new ArrayMap<>();
     }
 
-    public AccountPreferenceController(Context context, SettingsPreferenceFragment parent,
+    public AccountPreferenceController(Context context, DashboardFragment parent,
             String[] authorities, @ProfileSelectFragment.ProfileType int type) {
         this(context, parent, authorities, new AccountRestrictionHelper(context), type);
     }
 
     @VisibleForTesting
-    AccountPreferenceController(Context context, SettingsPreferenceFragment parent,
+    AccountPreferenceController(Context context, DashboardFragment parent,
             String[] authorities, AccountRestrictionHelper helper,
             @ProfileSelectFragment.ProfileType int type) {
         super(context);
@@ -314,6 +314,9 @@
         for (int i = 0; i < profilesCount; i++) {
             updateAccountTypes(mProfiles.valueAt(i));
         }
+
+        // Refresh for the auto-sync preferences
+        mFragment.forceUpdatePreferences();
     }
 
     private void updateProfileUi(final UserInfo userInfo) {
@@ -409,7 +412,6 @@
         return preference;
     }
 
-
     private Preference newManagedProfileSettings() {
         Preference preference = new Preference(mFragment.getPreferenceManager().getContext());
         preference.setKey(PREF_KEY_WORK_PROFILE_SETTING);
diff --git a/src/com/android/settings/accounts/AccountWorkProfileDashboardFragment.java b/src/com/android/settings/accounts/AccountWorkProfileDashboardFragment.java
index 1fdd3f6..f64e041 100644
--- a/src/com/android/settings/accounts/AccountWorkProfileDashboardFragment.java
+++ b/src/com/android/settings/accounts/AccountWorkProfileDashboardFragment.java
@@ -24,7 +24,6 @@
 import android.content.Context;
 
 import com.android.settings.R;
-import com.android.settings.SettingsPreferenceFragment;
 import com.android.settings.applications.autofill.PasswordsPreferenceController;
 import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.dashboard.profileselector.ProfileSelectFragment;
@@ -78,7 +77,7 @@
     }
 
     private static void buildAccountPreferenceControllers(
-            Context context, SettingsPreferenceFragment parent, String[] authorities,
+            Context context, DashboardFragment parent, String[] authorities,
             List<AbstractPreferenceController> controllers) {
         final AccountPreferenceController accountPrefController =
                 new AccountPreferenceController(context, parent, authorities,
diff --git a/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java b/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
index d69c2c8..732163b 100644
--- a/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
@@ -38,12 +38,12 @@
 import com.android.settings.Utils;
 import com.android.settings.core.BasePreferenceController;
 import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
-import com.android.settings.fuelgauge.BatteryChartPreferenceController;
-import com.android.settings.fuelgauge.BatteryDiffEntry;
-import com.android.settings.fuelgauge.BatteryEntry;
-import com.android.settings.fuelgauge.BatteryUsageStatsLoader;
 import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
+import com.android.settings.fuelgauge.batteryusage.BatteryChartPreferenceController;
+import com.android.settings.fuelgauge.batteryusage.BatteryDiffEntry;
+import com.android.settings.fuelgauge.batteryusage.BatteryEntry;
+import com.android.settings.fuelgauge.batteryusage.BatteryUsageStatsLoader;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.applications.AppUtils;
 import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -179,7 +179,7 @@
                     return null;
                 }
                 final BatteryDiffEntry entry =
-                        BatteryChartPreferenceController.getBatteryLast24HrUsageData(
+                        BatteryChartPreferenceController.getAppBatteryUsageData(
                                 mContext, mPackageName, mUserId);
                 Log.d(TAG, "loadBatteryDiffEntries():\n" + entry);
                 return entry;
@@ -200,10 +200,10 @@
                 mBatteryPercent = Utils.formatPercentage(
                         mBatteryDiffEntry.getPercentOfTotal(), /* round */ true);
                 mPreference.setSummary(mContext.getString(
-                        R.string.battery_summary_24hr, mBatteryPercent));
+                        R.string.battery_summary, mBatteryPercent));
             } else {
                 mPreference.setSummary(
-                        mContext.getString(R.string.no_battery_summary_24hr));
+                        mContext.getString(R.string.no_battery_summary));
             }
         }
 
diff --git a/src/com/android/settings/applications/manageapplications/ManageApplications.java b/src/com/android/settings/applications/manageapplications/ManageApplications.java
index ead9840..30d4a71 100644
--- a/src/com/android/settings/applications/manageapplications/ManageApplications.java
+++ b/src/com/android/settings/applications/manageapplications/ManageApplications.java
@@ -18,6 +18,7 @@
 
 import static androidx.recyclerview.widget.RecyclerView.SCROLL_STATE_IDLE;
 
+import static com.android.settings.ChangeIds.CHANGE_RESTRICT_SAW_INTENT;
 import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_ALL;
 import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_BLOCKED;
 import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_DISABLED;
@@ -37,8 +38,6 @@
 import android.app.ActivityManager;
 import android.app.settings.SettingsEnums;
 import android.app.usage.IUsageStatsManager;
-import android.compat.annotation.ChangeId;
-import android.compat.annotation.LoggingOnly;
 import android.content.Context;
 import android.content.Intent;
 import android.content.pm.ApplicationInfo;
@@ -127,6 +126,8 @@
 import com.android.settings.widget.LoadingViewController;
 import com.android.settings.wifi.AppStateChangeWifiStateBridge;
 import com.android.settings.wifi.ChangeWifiStateDetails;
+import com.android.settingslib.RestrictedLockUtils;
+import com.android.settingslib.RestrictedLockUtilsInternal;
 import com.android.settingslib.applications.AppIconCacheManager;
 import com.android.settingslib.applications.AppUtils;
 import com.android.settingslib.applications.ApplicationsState;
@@ -190,16 +191,6 @@
     public static final int STORAGE_TYPE_DEFAULT = 0; // Show all apps that are not categorized.
     public static final int STORAGE_TYPE_LEGACY = 1;  // Show apps even if they can be categorized.
 
-    /**
-     * Intents with action {@code android.settings.MANAGE_APP_OVERLAY_PERMISSION}
-     * and data URI scheme {@code package} don't go to the app-specific screen for managing the
-     * permission anymore. Instead, they redirect to this screen for managing all the apps that have
-     * requested such permission.
-     */
-    @ChangeId
-    @LoggingOnly
-    private static final long CHANGE_RESTRICT_SAW_INTENT = 135920175L;
-
     // sort order
     @VisibleForTesting
     int mSortOrder = R.id.sort_order_alpha;
@@ -787,7 +778,18 @@
             mShowSystem = !mShowSystem;
             mApplications.rebuild();
         } else if (i == R.id.reset_app_preferences) {
-            mResetAppsHelper.buildResetDialog();
+            final boolean appsControlDisallowedBySystem =
+                    RestrictedLockUtilsInternal.hasBaseUserRestriction(getActivity(),
+                            UserManager.DISALLOW_APPS_CONTROL, UserHandle.myUserId());
+            final RestrictedLockUtils.EnforcedAdmin appsControlDisallowedAdmin =
+                    RestrictedLockUtilsInternal.checkIfRestrictionEnforced(getActivity(),
+                            UserManager.DISALLOW_APPS_CONTROL, UserHandle.myUserId());
+            if (appsControlDisallowedAdmin != null && !appsControlDisallowedBySystem) {
+                RestrictedLockUtils.sendShowAdminSupportDetailsIntent(
+                        getActivity(), appsControlDisallowedAdmin);
+            } else {
+                mResetAppsHelper.buildResetDialog();
+            }
             return true;
         } else if (i == R.id.advanced) {
             if (mListType == LIST_TYPE_NOTIFICATION) {
diff --git a/src/com/android/settings/applications/manageapplications/ResetAppsHelper.java b/src/com/android/settings/applications/manageapplications/ResetAppsHelper.java
index 9cb5a3f..708f8b7 100644
--- a/src/com/android/settings/applications/manageapplications/ResetAppsHelper.java
+++ b/src/com/android/settings/applications/manageapplications/ResetAppsHelper.java
@@ -38,6 +38,7 @@
 import androidx.appcompat.app.AlertDialog;
 
 import com.android.settings.R;
+import com.android.settings.fuelgauge.BatteryOptimizeUtils;
 
 import java.util.Arrays;
 import java.util.List;
@@ -152,6 +153,7 @@
                 } catch (RemoteException e) {
                 }
                 mAom.resetAllModes();
+                BatteryOptimizeUtils.resetAppOptimizationMode(mContext, mIPm, mAom);
                 final int[] restrictedUids = mNpm.getUidsWithPolicy(
                         POLICY_REJECT_METERED_BACKGROUND);
                 final int currentUserId = ActivityManager.getCurrentUser();
diff --git a/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsLinkPreferenceController.java b/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsLinkPreferenceController.java
index 1c787ba..6a641b3 100644
--- a/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsLinkPreferenceController.java
+++ b/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsLinkPreferenceController.java
@@ -18,10 +18,11 @@
 import android.os.Build;
 import android.service.notification.NotificationListenerFilter;
 
+import androidx.preference.Preference;
+
 import com.android.settings.core.BasePreferenceController;
 import com.android.settings.notification.NotificationBackend;
 
-
 public class BridgedAppsLinkPreferenceController extends BasePreferenceController {
 
     private ComponentName mCn;
@@ -61,7 +62,6 @@
             if (mTargetSdk > Build.VERSION_CODES.S) {
                 return AVAILABLE;
             }
-
             mNlf = mNm.getListenerFilter(mCn, mUserId);
             if (!mNlf.areAllTypesAllowed() || !mNlf.getDisallowedPackages().isEmpty()) {
                 return AVAILABLE;
@@ -69,4 +69,10 @@
         }
         return DISABLED_DEPENDENT_SETTING;
     }
+
+    @Override
+    public void updateState(Preference pref) {
+        pref.setEnabled(getAvailabilityStatus() == AVAILABLE);
+        super.updateState(pref);
+    }
 }
diff --git a/src/com/android/settings/applications/specialaccess/notificationaccess/NotificationAccessDetails.java b/src/com/android/settings/applications/specialaccess/notificationaccess/NotificationAccessDetails.java
index da25f17..e6feebb 100644
--- a/src/com/android/settings/applications/specialaccess/notificationaccess/NotificationAccessDetails.java
+++ b/src/com/android/settings/applications/specialaccess/notificationaccess/NotificationAccessDetails.java
@@ -233,11 +233,7 @@
         apc.updateState(screen.findPreference(apc.getPreferenceKey()));
         getPreferenceControllers().forEach(controllers -> {
             controllers.forEach(controller -> {
-                if (controller instanceof TypeFilterPreferenceController) {
-                    TypeFilterPreferenceController tfpc =
-                            (TypeFilterPreferenceController) controller;
-                    tfpc.updateState(screen.findPreference(tfpc.getPreferenceKey()));
-                }
+                controller.updateState(screen.findPreference(controller.getPreferenceKey()));
             });
         });
     }
@@ -249,11 +245,7 @@
         apc.updateState(screen.findPreference(apc.getPreferenceKey()));
         getPreferenceControllers().forEach(controllers -> {
             controllers.forEach(controller -> {
-                if (controller instanceof TypeFilterPreferenceController) {
-                    TypeFilterPreferenceController tfpc =
-                            (TypeFilterPreferenceController) controller;
-                    tfpc.updateState(screen.findPreference(tfpc.getPreferenceKey()));
-                }
+                controller.updateState(screen.findPreference(controller.getPreferenceKey()));
             });
         });
     }
diff --git a/src/com/android/settings/biometrics/BiometricEnrollActivity.java b/src/com/android/settings/biometrics/BiometricEnrollActivity.java
index e682934..6b830c9 100644
--- a/src/com/android/settings/biometrics/BiometricEnrollActivity.java
+++ b/src/com/android/settings/biometrics/BiometricEnrollActivity.java
@@ -93,6 +93,10 @@
     public static final String EXTRA_PARENTAL_CONSENT_STATUS = "consent_status";
 
     private static final String SAVED_STATE_CONFIRMING_CREDENTIALS = "confirming_credentials";
+    private static final String SAVED_STATE_FINGERPRINT_ONLY_ENROLLING =
+            "fingerprint_only_enrolling";
+    private static final String SAVED_STATE_PASS_THROUGH_EXTRAS_FROM_CHOSEN_LOCK_IN_SUW =
+            "pass_through_extras_from_chosen_lock_in_suw";
     private static final String SAVED_STATE_ENROLL_ACTION_LOGGED = "enroll_action_logged";
     private static final String SAVED_STATE_PARENTAL_OPTIONS = "enroll_preferences";
     private static final String SAVED_STATE_GK_PW_HANDLE = "gk_pw_handle";
@@ -101,6 +105,8 @@
 
     private int mUserId = UserHandle.myUserId();
     private boolean mConfirmingCredentials;
+    private boolean mFingerprintOnlyEnrolling;
+    private Bundle mPassThroughExtrasFromChosenLockInSuw = null;
     private boolean mIsEnrollActionLogged;
     private boolean mHasFeatureFace = false;
     private boolean mHasFeatureFingerprint = false;
@@ -129,6 +135,10 @@
         if (savedInstanceState != null) {
             mConfirmingCredentials = savedInstanceState.getBoolean(
                     SAVED_STATE_CONFIRMING_CREDENTIALS, false);
+            mFingerprintOnlyEnrolling = savedInstanceState.getBoolean(
+                    SAVED_STATE_FINGERPRINT_ONLY_ENROLLING, false);
+            mPassThroughExtrasFromChosenLockInSuw = savedInstanceState.getBundle(
+                    SAVED_STATE_PASS_THROUGH_EXTRAS_FROM_CHOSEN_LOCK_IN_SUW);
             mIsEnrollActionLogged = savedInstanceState.getBoolean(
                     SAVED_STATE_ENROLL_ACTION_LOGGED, false);
             mParentalOptions = savedInstanceState.getBundle(SAVED_STATE_PARENTAL_OPTIONS);
@@ -302,7 +312,11 @@
                 setOrConfirmCredentialsNow();
             }
         } else if (canUseFingerprint) {
-            launchFingerprintOnlyEnroll();
+            if (mGkPwHandle != null) {
+                launchFingerprintOnlyEnroll();
+            } else {
+                setOrConfirmCredentialsNow();
+            }
         } else if (canUseFace) {
             launchFaceOnlyEnroll();
         } else { // no modalities available
@@ -320,6 +334,9 @@
     protected void onSaveInstanceState(@NonNull Bundle outState) {
         super.onSaveInstanceState(outState);
         outState.putBoolean(SAVED_STATE_CONFIRMING_CREDENTIALS, mConfirmingCredentials);
+        outState.putBoolean(SAVED_STATE_FINGERPRINT_ONLY_ENROLLING, mFingerprintOnlyEnrolling);
+        outState.putBundle(SAVED_STATE_PASS_THROUGH_EXTRAS_FROM_CHOSEN_LOCK_IN_SUW,
+                mPassThroughExtrasFromChosenLockInSuw);
         outState.putBoolean(SAVED_STATE_ENROLL_ACTION_LOGGED, mIsEnrollActionLogged);
         if (mParentalOptions != null) {
             outState.putBundle(SAVED_STATE_PARENTAL_OPTIONS, mParentalOptions);
@@ -333,6 +350,12 @@
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
 
+        if (isSuccessfulChooseCredential(requestCode, resultCode)
+                && data != null && data.getExtras() != null && data.getExtras().size() > 0
+                && WizardManagerHelper.isAnySetupWizard(getIntent())) {
+            mPassThroughExtrasFromChosenLockInSuw = data.getExtras();
+        }
+
         Log.d(TAG,
                 "onActivityResult(requestCode=" + requestCode + ", resultCode=" + resultCode + ")");
         // single enrollment is handled entirely by the launched activity
@@ -406,7 +429,7 @@
                     }
                 } else {
                     Log.d(TAG, "Unknown or cancelled parental consent");
-                    setResult(RESULT_CANCELED);
+                    setResult(RESULT_CANCELED, newResultIntent());
                     finish();
                 }
                 break;
@@ -432,18 +455,22 @@
                     mConfirmingCredentials = false;
                     final boolean isOk =
                             isSuccessfulConfirmOrChooseCredential(requestCode, resultCode);
-                    // single modality enrollment requests confirmation directly
+                    // single face enrollment requests confirmation directly
                     // via BiometricEnrollBase#onCreate and should never get here
                     if (isOk && mHasFeatureFace && mHasFeatureFingerprint) {
                         updateGatekeeperPasswordHandle(data);
                         launchFaceAndFingerprintEnroll();
+                    } else if (isOk && mHasFeatureFingerprint) {
+                        updateGatekeeperPasswordHandle(data);
+                        launchFingerprintOnlyEnroll();
                     } else {
                         Log.d(TAG, "Unknown result for set/choose lock: " + resultCode);
-                        setResult(resultCode);
+                        setResult(resultCode, newResultIntent());
                         finish();
                     }
                     break;
                 case REQUEST_SINGLE_ENROLL:
+                    mFingerprintOnlyEnrolling = false;
                     finishOrLaunchHandToParent(resultCode);
                     break;
                 default:
@@ -466,25 +493,37 @@
                 finish();
             }
         } else {
-            setResult(resultCode);
+            setResult(resultCode, newResultIntent());
             finish();
         }
     }
 
+    @NonNull
     private Intent newResultIntent() {
         final Intent intent = new Intent();
-        final Bundle consentStatus = mParentalOptions.deepCopy();
-        intent.putExtra(EXTRA_PARENTAL_CONSENT_STATUS, consentStatus);
-        Log.v(TAG, "Result consent status: " + consentStatus);
+        if (mParentalOptionsRequired && mParentalOptions != null) {
+            final Bundle consentStatus = mParentalOptions.deepCopy();
+            intent.putExtra(EXTRA_PARENTAL_CONSENT_STATUS, consentStatus);
+            Log.v(TAG, "Result consent status: " + consentStatus);
+        }
+        if (mPassThroughExtrasFromChosenLockInSuw != null) {
+            intent.putExtras(mPassThroughExtrasFromChosenLockInSuw);
+        }
         return intent;
     }
 
     private static boolean isSuccessfulConfirmOrChooseCredential(int requestCode, int resultCode) {
-        final boolean okChoose = requestCode == REQUEST_CHOOSE_LOCK
+        return isSuccessfulChooseCredential(requestCode, resultCode)
+                || isSuccessfulConfirmCredential(requestCode, resultCode);
+    }
+
+    private static boolean isSuccessfulChooseCredential(int requestCode, int resultCode) {
+        return requestCode == REQUEST_CHOOSE_LOCK
                 && resultCode == ChooseLockPattern.RESULT_FINISHED;
-        final boolean okConfirm = requestCode == REQUEST_CONFIRM_LOCK
-                && resultCode == RESULT_OK;
-        return okChoose || okConfirm;
+    }
+
+    private static boolean isSuccessfulConfirmCredential(int requestCode, int resultCode) {
+        return requestCode == REQUEST_CONFIRM_LOCK && resultCode == RESULT_OK;
     }
 
     @Override
@@ -572,15 +611,18 @@
     }
 
     private void launchFingerprintOnlyEnroll() {
-        final Intent intent;
-        // ChooseLockGeneric can request to start fingerprint enroll bypassing the intro screen.
-        if (getIntent().getBooleanExtra(EXTRA_SKIP_INTRO, false)
-                && this instanceof InternalActivity) {
-            intent = BiometricUtils.getFingerprintFindSensorIntent(this, getIntent());
-        } else {
-            intent = BiometricUtils.getFingerprintIntroIntent(this, getIntent());
+        if (!mFingerprintOnlyEnrolling) {
+            mFingerprintOnlyEnrolling = true;
+            final Intent intent;
+            // ChooseLockGeneric can request to start fingerprint enroll bypassing the intro screen.
+            if (getIntent().getBooleanExtra(EXTRA_SKIP_INTRO, false)
+                    && this instanceof InternalActivity) {
+                intent = BiometricUtils.getFingerprintFindSensorIntent(this, getIntent());
+            } else {
+                intent = BiometricUtils.getFingerprintIntroIntent(this, getIntent());
+            }
+            launchSingleSensorEnrollActivity(intent, REQUEST_SINGLE_ENROLL);
         }
-        launchSingleSensorEnrollActivity(intent, REQUEST_SINGLE_ENROLL);
     }
 
     private void launchFaceOnlyEnroll() {
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
index 98210b3..5f9a74f 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
@@ -47,6 +47,7 @@
 import android.view.accessibility.AccessibilityManager;
 import android.view.animation.AnimationUtils;
 import android.view.animation.Interpolator;
+import android.widget.LinearLayout;
 import android.widget.ProgressBar;
 import android.widget.TextView;
 
@@ -64,10 +65,12 @@
 import com.google.android.setupcompat.template.FooterBarMixin;
 import com.google.android.setupcompat.template.FooterButton;
 import com.google.android.setupcompat.util.WizardManagerHelper;
+import com.google.android.setupdesign.GlifLayout;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.util.List;
+import java.util.Locale;
 
 /**
  * Activity which handles the actual enrolling for fingerprint.
@@ -76,6 +79,7 @@
 
     private static final String TAG = "FingerprintEnrollEnrolling";
     static final String TAG_SIDECAR = "sidecar";
+    static final String KEY_STATE_CANCELED = "is_canceled";
 
     private static final int PROGRESS_BAR_MAX = 10000;
 
@@ -115,6 +119,7 @@
 
     private FingerprintManager mFingerprintManager;
     private boolean mCanAssumeUdfps;
+    private boolean mCanAssumeSidefps;
     @Nullable private ProgressBar mProgressBar;
     private ObjectAnimator mProgressAnim;
     private TextView mDescriptionText;
@@ -129,6 +134,7 @@
     private boolean mRestoring;
     private Vibrator mVibrator;
     private boolean mIsSetupWizard;
+    private boolean mIsCanceled;
     private AccessibilityManager mAccessibilityManager;
     private boolean mIsAccessibilityEnabled;
     private LottieAnimationView mIllustrationLottie;
@@ -153,21 +159,49 @@
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
 
+        if (savedInstanceState != null) {
+            restoreSavedState(savedInstanceState);
+        }
         mFingerprintManager = getSystemService(FingerprintManager.class);
         final List<FingerprintSensorPropertiesInternal> props =
                 mFingerprintManager.getSensorPropertiesInternal();
-        mCanAssumeUdfps = props.size() == 1 && props.get(0).isAnyUdfpsType();
+        mCanAssumeUdfps = props != null && props.size() == 1 && props.get(0).isAnyUdfpsType();
+        mCanAssumeSidefps = props != null && props.size() == 1 && props.get(0).isAnySidefpsType();
 
         mAccessibilityManager = getSystemService(AccessibilityManager.class);
         mIsAccessibilityEnabled = mAccessibilityManager.isEnabled();
 
+        final boolean isLayoutRtl = (TextUtils.getLayoutDirectionFromLocale(
+                Locale.getDefault()) == View.LAYOUT_DIRECTION_RTL);
         listenOrientationEvent();
 
         if (mCanAssumeUdfps) {
-            if (BiometricUtils.isReverseLandscape(getApplicationContext())) {
-                setContentView(R.layout.udfps_enroll_enrolling_land);
-            } else {
-                setContentView(R.layout.udfps_enroll_enrolling);
+            switch(getApplicationContext().getDisplay().getRotation()) {
+                case Surface.ROTATION_90:
+                    final GlifLayout layout = (GlifLayout) getLayoutInflater().inflate(
+                            R.layout.udfps_enroll_enrolling, null, false);
+                    final LinearLayout layoutContainer = layout.findViewById(
+                            R.id.layout_container);
+                    final LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
+                            LinearLayout.LayoutParams.MATCH_PARENT,
+                            LinearLayout.LayoutParams.MATCH_PARENT);
+
+                    lp.setMarginEnd((int) getResources().getDimension(
+                            R.dimen.rotation_90_enroll_margin_end));
+                    layoutContainer.setPaddingRelative((int) getResources().getDimension(
+                            R.dimen.rotation_90_enroll_padding_start), 0, isLayoutRtl
+                            ? 0 : (int) getResources().getDimension(
+                                    R.dimen.rotation_90_enroll_padding_end), 0);
+                    layoutContainer.setLayoutParams(lp);
+                    setContentView(layout, lp);
+                    break;
+
+                case Surface.ROTATION_0:
+                case Surface.ROTATION_180:
+                case Surface.ROTATION_270:
+                default:
+                    setContentView(R.layout.udfps_enroll_enrolling);
+                    break;
             }
             setDescriptionText(R.string.security_settings_udfps_enroll_start_message);
         } else {
@@ -238,7 +272,6 @@
                 return true;
             });
         }
-        mRestoring = savedInstanceState != null;
     }
 
     @Override
@@ -253,12 +286,23 @@
         if (mCanAssumeUdfps) {
             // Continue enrollment if restoring (e.g. configuration changed). Otherwise, wait
             // for the entry animation to complete before starting.
-            return mRestoring;
+            return mRestoring && !mIsCanceled;
         }
         return true;
     }
 
     @Override
+    protected void onSaveInstanceState(Bundle outState) {
+        super.onSaveInstanceState(outState);
+        outState.putBoolean(KEY_STATE_CANCELED, mIsCanceled);
+    }
+
+    private void restoreSavedState(Bundle savedInstanceState) {
+        mRestoring = true;
+        mIsCanceled = savedInstanceState.getBoolean(KEY_STATE_CANCELED, false);
+    }
+
+    @Override
     protected void onStart() {
         super.onStart();
         updateProgress(false /* animate */);
@@ -498,7 +542,10 @@
     @Override
     public void onEnrollmentError(int errMsgId, CharSequence errString) {
         FingerprintErrorDialog.showErrorDialog(this, errMsgId);
+        mIsCanceled = true;
+        cancelEnrollment();
         stopIconAnimation();
+        stopListenOrientationEvent();
         if (!mCanAssumeUdfps) {
             mErrorText.removeCallbacks(mTouchAgainRunnable);
         }
@@ -508,7 +555,6 @@
     public void onEnrollmentProgressChange(int steps, int remaining) {
         updateProgress(true /* animate */);
         updateTitleAndDescription();
-        clearError();
         animateFlash();
         if (!mCanAssumeUdfps) {
             mErrorText.removeCallbacks(mTouchAgainRunnable);
@@ -537,6 +583,11 @@
 
         int progress = getProgress(
                 mSidecar.getEnrollmentSteps(), mSidecar.getEnrollmentRemaining());
+        // Only clear the error when progress has been made.
+        // TODO (b/234772728) Add tests.
+        if (mProgressBar != null && mProgressBar.getProgress() < progress) {
+            clearError();
+        }
         if (animate) {
             animateProgress(progress);
         } else {
@@ -563,7 +614,7 @@
     }
 
     private void showError(CharSequence error) {
-        if (mCanAssumeUdfps) {
+        if (mCanAssumeUdfps || mCanAssumeSidefps) {
             setHeaderText(error);
             // Show nothing for subtitle when getting an error message.
             setDescriptionText("");
@@ -635,13 +686,17 @@
             new Animator.AnimatorListener() {
 
                 @Override
-                public void onAnimationStart(Animator animation) { }
+                public void onAnimationStart(Animator animation) {
+                    startIconAnimation();
+                }
 
                 @Override
                 public void onAnimationRepeat(Animator animation) { }
 
                 @Override
                 public void onAnimationEnd(Animator animation) {
+                    stopIconAnimation();
+
                     if (mProgressBar.getProgress() >= PROGRESS_BAR_MAX) {
                         mProgressBar.postDelayed(mDelayedFinishRunnable, getFinishDelay());
                     }
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
index b9e9dcc..71d0c8e 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
@@ -61,6 +61,7 @@
     @Nullable private FooterButton mSecondaryFooterButton;
 
     private DevicePolicyManager mDevicePolicyManager;
+    private boolean mCanAssumeUdfps;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -72,6 +73,10 @@
         }
 
         super.onCreate(savedInstanceState);
+        final FingerprintManager fingerprintManager = getSystemService(FingerprintManager.class);
+        final List<FingerprintSensorPropertiesInternal> props =
+                fingerprintManager.getSensorPropertiesInternal();
+        mCanAssumeUdfps = props != null && props.size() == 1 && props.get(0).isAnyUdfpsType();
 
         mDevicePolicyManager = getSystemService(DevicePolicyManager.class);
 
@@ -79,11 +84,13 @@
         final ImageView iconDeviceLocked = findViewById(R.id.icon_device_locked);
         final ImageView iconTrashCan = findViewById(R.id.icon_trash_can);
         final ImageView iconInfo = findViewById(R.id.icon_info);
+        final ImageView iconShield = findViewById(R.id.icon_shield);
         final ImageView iconLink = findViewById(R.id.icon_link);
         iconFingerprint.getDrawable().setColorFilter(getIconColorFilter());
         iconDeviceLocked.getDrawable().setColorFilter(getIconColorFilter());
         iconTrashCan.getDrawable().setColorFilter(getIconColorFilter());
         iconInfo.getDrawable().setColorFilter(getIconColorFilter());
+        iconShield.getDrawable().setColorFilter(getIconColorFilter());
         iconLink.getDrawable().setColorFilter(getIconColorFilter());
 
         final TextView footerMessage2 = findViewById(R.id.footer_message_2);
@@ -97,6 +104,14 @@
         footerMessage5.setText(getFooterMessage5());
         footerMessage6.setText(getFooterMessage6());
 
+        if (mCanAssumeUdfps) {
+            footerMessage6.setVisibility(View.VISIBLE);
+            iconShield.setVisibility(View.VISIBLE);
+        } else {
+            footerMessage6.setVisibility(View.GONE);
+            iconShield.setVisibility(View.GONE);
+        }
+
         final TextView footerTitle1 = findViewById(R.id.footer_title_1);
         final TextView footerTitle2 = findViewById(R.id.footer_title_2);
         footerTitle1.setText(getFooterTitle1());
@@ -226,6 +241,8 @@
         final boolean isSetupWizard = WizardManagerHelper.isAnySetupWizard(getIntent());
         final boolean isDeferredSetupWizard =
                 WizardManagerHelper.isDeferredSetupWizard(getIntent());
+        final boolean isPortalSetupWizard =
+                WizardManagerHelper.isPortalSetupWizard(getIntent());
         if (mFingerprintManager != null) {
             final List<FingerprintSensorPropertiesInternal> props =
                     mFingerprintManager.getSensorPropertiesInternal();
@@ -237,7 +254,7 @@
                     getApplicationContext()
                             .getResources()
                             .getInteger(R.integer.suw_max_fingerprints_enrollable);
-            if (isSetupWizard && !isDeferredSetupWizard) {
+            if (isSetupWizard && !isDeferredSetupWizard && !isPortalSetupWizard) {
                 if (numEnrolledFingerprints >= maxFingerprintsEnrollableIfSUW) {
                     return R.string.fingerprint_intro_error_max;
                 } else {
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintErrorDialog.java b/src/com/android/settings/biometrics/fingerprint/FingerprintErrorDialog.java
index a238119..9f9efdc 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintErrorDialog.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintErrorDialog.java
@@ -16,20 +16,84 @@
 
 package com.android.settings.biometrics.fingerprint;
 
+import static com.android.settings.biometrics.BiometricEnrollBase.RESULT_FINISHED;
+import static com.android.settings.biometrics.BiometricEnrollBase.RESULT_TIMEOUT;
+import static com.android.settings.biometrics.fingerprint.FingerprintEnrollEnrolling.KEY_STATE_CANCELED;
+
+import android.app.Activity;
+import android.app.Dialog;
 import android.app.settings.SettingsEnums;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.hardware.biometrics.BiometricConstants;
 import android.hardware.fingerprint.FingerprintManager;
 import android.os.Bundle;
 
+import androidx.appcompat.app.AlertDialog;
 import androidx.fragment.app.FragmentManager;
 
 import com.android.settings.R;
 import com.android.settings.biometrics.BiometricEnrollBase;
-import com.android.settings.biometrics.BiometricErrorDialog;
+import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
 
-/**
- * Fingerprint error dialog, will be shown when an error occurs during fingerprint enrollment.
- */
-public class FingerprintErrorDialog extends BiometricErrorDialog {
+/** Fingerprint error dialog, will be shown when an error occurs during fingerprint enrollment. */
+public class FingerprintErrorDialog extends InstrumentedDialogFragment {
+
+    public static final String KEY_ERROR_MSG = "error_msg";
+    public static final String KEY_ERROR_ID = "error_id";
+
+    @Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        CharSequence errorString = getArguments().getCharSequence(KEY_ERROR_MSG);
+        final int errMsgId = getArguments().getInt(KEY_ERROR_ID);
+        boolean wasTimeout = errMsgId == BiometricConstants.BIOMETRIC_ERROR_TIMEOUT;
+
+        builder.setTitle(R.string.security_settings_fingerprint_enroll_error_dialog_title)
+                .setMessage(errorString)
+                .setCancelable(false)
+                .setPositiveButton(
+                        R.string.security_settings_fingerprint_enroll_dialog_ok,
+                        new DialogInterface.OnClickListener() {
+                            @Override
+                            public void onClick(DialogInterface dialog, int which) {
+                                dialog.dismiss();
+                                Activity activity = getActivity();
+                                activity.setResult(RESULT_FINISHED);
+                                activity.finish();
+                            }
+                        });
+        if (wasTimeout) {
+            builder.setPositiveButton(
+                            R.string.security_settings_fingerprint_enroll_dialog_try_again,
+                            new DialogInterface.OnClickListener() {
+                                @Override
+                                public void onClick(DialogInterface dialog, int which) {
+                                    dialog.dismiss();
+                                    Activity activity = getActivity();
+                                    Intent intent = activity.getIntent();
+                                    intent.putExtra(KEY_STATE_CANCELED, false);
+                                    activity.startActivity(intent);
+                                    activity.finish();
+                                }
+                            })
+                    .setNegativeButton(
+                            R.string.security_settings_fingerprint_enroll_dialog_ok,
+                            new DialogInterface.OnClickListener() {
+                                @Override
+                                public void onClick(DialogInterface dialog, int which) {
+                                    dialog.dismiss();
+                                    Activity activity = getActivity();
+                                    activity.setResult(RESULT_TIMEOUT);
+                                    activity.finish();
+                                }
+                            });
+        }
+        AlertDialog dialog = builder.create();
+        dialog.setCanceledOnTouchOutside(false);
+        return dialog;
+    }
+
     public static void showErrorDialog(BiometricEnrollBase host, int errMsgId) {
         if (host.isFinishing()) {
             return;
@@ -48,8 +112,8 @@
     private static int getErrorMessage(int errMsgId) {
         switch (errMsgId) {
             case FingerprintManager.FINGERPRINT_ERROR_TIMEOUT:
-                // This message happens when the underlying crypto layer decides to revoke the
-                // enrollment auth token.
+                // This message happens when the underlying crypto layer decides to revoke
+                // the enrollment auth token.
                 return R.string.security_settings_fingerprint_enroll_error_timeout_dialog_message;
             case FingerprintManager.FINGERPRINT_ERROR_BAD_CALIBRATION:
                 return R.string.security_settings_fingerprint_bad_calibration;
@@ -69,16 +133,6 @@
     }
 
     @Override
-    public int getTitleResId() {
-        return R.string.security_settings_fingerprint_enroll_error_dialog_title;
-    }
-
-    @Override
-    public int getOkButtonTextResId() {
-        return R.string.security_settings_fingerprint_enroll_dialog_ok;
-    }
-
-    @Override
     public int getMetricsCategory() {
         return SettingsEnums.DIALOG_FINGERPINT_ERROR;
     }
diff --git a/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroduction.java b/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroduction.java
index af25ecd..b313961 100644
--- a/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroduction.java
@@ -16,21 +16,16 @@
 
 package com.android.settings.biometrics.fingerprint;
 
-import android.app.Activity;
 import android.app.KeyguardManager;
 import android.app.settings.SettingsEnums;
 import android.content.Intent;
 import android.hardware.fingerprint.FingerprintManager;
-import android.os.Bundle;
-import android.os.UserHandle;
 import android.view.View;
 
-import com.android.internal.widget.LockPatternUtils;
 import com.android.settings.SetupWizardUtils;
 import com.android.settings.Utils;
 import com.android.settings.biometrics.BiometricUtils;
 import com.android.settings.password.ChooseLockSettingsHelper;
-import com.android.settings.password.SetupChooseLockGeneric;
 import com.android.settings.password.SetupSkipDialog;
 
 public class SetupFingerprintEnrollIntroduction extends FingerprintEnrollIntroduction {
@@ -40,24 +35,6 @@
     private static final String EXTRA_FINGERPRINT_ENROLLED_COUNT = "fingerprint_enrolled_count";
 
     private static final String KEY_LOCK_SCREEN_PRESENT = "wasLockScreenPresent";
-    private boolean mAlreadyHadLockScreenSetup = false;
-
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        if (savedInstanceState == null) {
-            mAlreadyHadLockScreenSetup = isKeyguardSecure();
-        } else {
-            mAlreadyHadLockScreenSetup = savedInstanceState.getBoolean(
-                    KEY_LOCK_SCREEN_PRESENT, false);
-        }
-    }
-
-    @Override
-    protected void onSaveInstanceState(Bundle outState) {
-        super.onSaveInstanceState(outState);
-        outState.putBoolean(KEY_LOCK_SCREEN_PRESENT, mAlreadyHadLockScreenSetup);
-    }
 
     @Override
     protected Intent getEnrollingIntent() {
@@ -85,12 +62,6 @@
             }
         }
         if (requestCode == BIOMETRIC_FIND_SENSOR_REQUEST && isKeyguardSecure()) {
-            // if lock was already present, do not return intent data since it must have been
-            // reported in previous attempts
-            if (!mAlreadyHadLockScreenSetup) {
-                data = getMetricIntent(data);
-            }
-
             // Report fingerprint count if user adding a new fingerprint
             if (resultCode == RESULT_FINISHED) {
                 data = setFingerprintCount(data);
@@ -127,18 +98,6 @@
         super.onActivityResult(requestCode, resultCode, data);
     }
 
-    private Intent getMetricIntent(Intent data) {
-        if (data == null) {
-            data = new Intent();
-        }
-        LockPatternUtils lockPatternUtils = new LockPatternUtils(this);
-        data.putExtra(SetupChooseLockGeneric.
-                SetupChooseLockGenericFragment.EXTRA_PASSWORD_QUALITY,
-                lockPatternUtils.getKeyguardStoredPasswordQuality(UserHandle.myUserId()));
-
-        return data;
-    }
-
     private Intent setFingerprintCount(Intent data) {
         if (data == null) {
             data = new Intent();
@@ -161,8 +120,7 @@
             if (!BiometricUtils.tryStartingNextBiometricEnroll(
                     this, ENROLL_NEXT_BIOMETRIC_REQUEST, "cancel")) {
                 resultCode = RESULT_SKIP;
-                data = mAlreadyHadLockScreenSetup ? null : getMetricIntent(null);
-                setResult(resultCode, data);
+                setResult(resultCode);
                 finish();
                 return;
             }
@@ -176,18 +134,6 @@
         // User has explicitly canceled enroll. Don't restart it automatically.
     }
 
-    /**
-     * Propagate lock screen metrics if the user goes back from the fingerprint setup screen
-     * after having added lock screen to his device.
-     */
-    @Override
-    public void onBackPressed() {
-        if (!mAlreadyHadLockScreenSetup && isKeyguardSecure()) {
-            setResult(Activity.RESULT_CANCELED, getMetricIntent(null));
-        }
-        super.onBackPressed();
-    }
-
     private boolean isKeyguardSecure() {
         return getSystemService(KeyguardManager.class).isKeyguardSecure();
     }
diff --git a/src/com/android/settings/bluetooth/BluetoothBroadcastDialog.java b/src/com/android/settings/bluetooth/BluetoothBroadcastDialog.java
index b2636a6..dd06b67 100644
--- a/src/com/android/settings/bluetooth/BluetoothBroadcastDialog.java
+++ b/src/com/android/settings/bluetooth/BluetoothBroadcastDialog.java
@@ -41,15 +41,18 @@
  * nearby broadcast sources.
  */
 public class BluetoothBroadcastDialog extends InstrumentedDialogFragment {
+
     public static final String KEY_APP_LABEL = "app_label";
     public static final String KEY_DEVICE_ADDRESS =
             BluetoothFindBroadcastsFragment.KEY_DEVICE_ADDRESS;
+    public static final String KEY_MEDIA_STREAMING = "media_streaming";
 
     private static final String TAG = "BTBroadcastsDialog";
     private static final CharSequence UNKNOWN_APP_LABEL = "unknown";
     private Context mContext;
     private CharSequence mCurrentAppLabel = UNKNOWN_APP_LABEL;
     private String mDeviceAddress;
+    private boolean mIsMediaStreaming;
     private LocalBluetoothManager mLocalBluetoothManager;
     private AlertDialog mAlertDialog;
 
@@ -59,6 +62,7 @@
         mContext = getActivity();
         mCurrentAppLabel = getActivity().getIntent().getCharSequenceExtra(KEY_APP_LABEL);
         mDeviceAddress = getActivity().getIntent().getStringExtra(KEY_DEVICE_ADDRESS);
+        mIsMediaStreaming = getActivity().getIntent().getBooleanExtra(KEY_MEDIA_STREAMING, false);
         mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
         setShowsDialog(true);
     }
@@ -75,16 +79,21 @@
                 mContext.getString(R.string.bluetooth_broadcast_dialog_broadcast_message));
 
         Button broadcastBtn = layout.findViewById(com.android.settingslib.R.id.positive_btn);
-        if (TextUtils.isEmpty(mCurrentAppLabel)) {
-            broadcastBtn.setText(mContext.getString(R.string.bluetooth_broadcast_dialog_title));
-        } else {
-            broadcastBtn.setText(mContext.getString(
+        if (isBroadcastSupported() && mIsMediaStreaming) {
+            broadcastBtn.setVisibility(View.VISIBLE);
+            if (TextUtils.isEmpty(mCurrentAppLabel)) {
+                broadcastBtn.setText(mContext.getString(R.string.bluetooth_broadcast_dialog_title));
+            } else {
+                broadcastBtn.setText(mContext.getString(
                     R.string.bluetooth_broadcast_dialog_broadcast_app,
                     String.valueOf(mCurrentAppLabel)));
+            }
+            broadcastBtn.setOnClickListener((view) -> {
+                launchMediaOutputBroadcastDialog();
+            });
+        } else {
+            broadcastBtn.setVisibility(View.GONE);
         }
-        broadcastBtn.setOnClickListener((view) -> {
-            launchMediaOutputBroadcastDialog();
-        });
 
         Button findBroadcastBtn = layout.findViewById(com.android.settingslib.R.id.negative_btn);
         findBroadcastBtn.setText(mContext.getString(R.string.bluetooth_find_broadcast));
@@ -169,4 +178,10 @@
                 .setPackage(MediaOutputConstants.SETTINGS_PACKAGE_NAME)
                 .setAction(MediaOutputConstants.ACTION_CLOSE_PANEL));
     }
+
+    boolean isBroadcastSupported() {
+        LocalBluetoothLeBroadcast broadcast =
+                mLocalBluetoothManager.getProfileManager().getLeAudioBroadcastProfile();
+        return broadcast != null;
+    }
 }
diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsPairOtherController.java b/src/com/android/settings/bluetooth/BluetoothDetailsPairOtherController.java
new file mode 100644
index 0000000..d14a9b1
--- /dev/null
+++ b/src/com/android/settings/bluetooth/BluetoothDetailsPairOtherController.java
@@ -0,0 +1,102 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.bluetooth;
+
+import android.content.Context;
+
+import androidx.preference.PreferenceFragmentCompat;
+import androidx.preference.PreferenceScreen;
+
+import com.android.settings.R;
+import com.android.settings.core.SubSettingLauncher;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.bluetooth.HearingAidProfile;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.widget.ButtonPreference;
+
+/**
+ * This class handles button preference logic to display for hearing aid device.
+ */
+public class BluetoothDetailsPairOtherController extends BluetoothDetailsController {
+    private static final String KEY_PAIR_OTHER = "hearing_aid_pair_other_button";
+
+    private ButtonPreference mPreference;
+
+    public BluetoothDetailsPairOtherController(Context context,
+            PreferenceFragmentCompat fragment,
+            CachedBluetoothDevice device,
+            Lifecycle lifecycle) {
+        super(context, fragment, device, lifecycle);
+        lifecycle.addObserver(this);
+    }
+
+    @Override
+    public boolean isAvailable() {
+        return getButtonPreferenceVisibility(mCachedDevice);
+    }
+
+    @Override
+    public String getPreferenceKey() {
+        return KEY_PAIR_OTHER;
+    }
+
+    @Override
+    protected void init(PreferenceScreen screen) {
+        final int side = mCachedDevice.getDeviceSide();
+        final int stringRes = (side == HearingAidProfile.DeviceSide.SIDE_LEFT)
+                ? R.string.bluetooth_pair_right_ear_button
+                : R.string.bluetooth_pair_left_ear_button;
+
+        mPreference = screen.findPreference(getPreferenceKey());
+        mPreference.setTitle(stringRes);
+        mPreference.setOnClickListener(v -> launchPairingDetail());
+    }
+
+    @Override
+    protected void refresh() {
+        mPreference.setVisible(getButtonPreferenceVisibility(mCachedDevice));
+    }
+
+    private boolean getButtonPreferenceVisibility(CachedBluetoothDevice cachedDevice) {
+        return isBinauralMode(cachedDevice) && isOnlyOneSideConnected(cachedDevice);
+    }
+
+    private void launchPairingDetail() {
+        new SubSettingLauncher(mContext)
+                .setDestination(BluetoothPairingDetail.class.getName())
+                .setSourceMetricsCategory(
+                        ((BluetoothDeviceDetailsFragment) mFragment).getMetricsCategory())
+                .launch();
+    }
+
+    private boolean isBinauralMode(CachedBluetoothDevice cachedDevice) {
+        return cachedDevice.getDeviceMode() == HearingAidProfile.DeviceMode.MODE_BINAURAL;
+    }
+
+    private boolean isOnlyOneSideConnected(CachedBluetoothDevice cachedDevice) {
+        if (!cachedDevice.isConnectedHearingAidDevice()) {
+            return false;
+        }
+
+        final CachedBluetoothDevice subDevice = cachedDevice.getSubDevice();
+        if (subDevice != null && subDevice.isConnectedHearingAidDevice()) {
+            return false;
+        }
+
+        return true;
+    }
+}
diff --git a/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java b/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java
index c118a43..999e34d 100644
--- a/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java
+++ b/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java
@@ -251,6 +251,8 @@
                     lifecycle));
             controllers.add(new BluetoothDetailsRelatedToolsController(context, this, mCachedDevice,
                     lifecycle));
+            controllers.add(new BluetoothDetailsPairOtherController(context, this, mCachedDevice,
+                    lifecycle));
         }
         return controllers;
     }
diff --git a/src/com/android/settings/bluetooth/QrCodeScanModeActivity.java b/src/com/android/settings/bluetooth/QrCodeScanModeActivity.java
index 5c5b61f..690c07e 100644
--- a/src/com/android/settings/bluetooth/QrCodeScanModeActivity.java
+++ b/src/com/android/settings/bluetooth/QrCodeScanModeActivity.java
@@ -30,7 +30,15 @@
 import com.android.settingslib.bluetooth.BluetoothBroadcastUtils;
 import com.android.settingslib.bluetooth.BluetoothUtils;
 
-//TODO (b/232365943): Add test case for tthe QrCode UI.
+/**
+ * Finding a broadcast through QR code.
+ *
+ * To use intent action {@link BluetoothBroadcastUtils#ACTION_BLUETOOTH_LE_AUDIO_QR_CODE_SCANNER},
+ * specify the bluetooth device sink of the broadcast to be provisioned in
+ * {@link BluetoothBroadcastUtils#EXTRA_BLUETOOTH_DEVICE_SINK} and check the operation for all
+ * coordinated set members throughout one session or not by
+ * {@link BluetoothBroadcastUtils#EXTRA_BLUETOOTH_SINK_IS_GROUP}.
+ */
 public class QrCodeScanModeActivity extends QrCodeScanModeBaseActivity {
     private static final boolean DEBUG = BluetoothUtils.D;
     private static final String TAG = "QrCodeScanModeActivity";
diff --git a/src/com/android/settings/bluetooth/QrCodeScanModeFragment.java b/src/com/android/settings/bluetooth/QrCodeScanModeFragment.java
index dcf89ca..0253aa6 100644
--- a/src/com/android/settings/bluetooth/QrCodeScanModeFragment.java
+++ b/src/com/android/settings/bluetooth/QrCodeScanModeFragment.java
@@ -36,16 +36,15 @@
 import android.view.accessibility.AccessibilityEvent;
 import android.widget.TextView;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.StringRes;
+
 import com.android.settings.core.InstrumentedFragment;
 import com.android.settingslib.R;
 import com.android.settingslib.bluetooth.BluetoothBroadcastUtils;
 import com.android.settingslib.bluetooth.BluetoothUtils;
-import com.android.settingslib.core.lifecycle.ObservableFragment;
 import com.android.settingslib.qrcode.QrCamera;
 
-import androidx.annotation.NonNull;
-import androidx.annotation.StringRes;
-
 public class QrCodeScanModeFragment extends InstrumentedFragment implements
         TextureView.SurfaceTextureListener,
         QrCamera.ScannerCallback {
@@ -232,8 +231,7 @@
     }
 
     private void updateSummary() {
-        mSummary.setText(getString(R.string.bt_le_audio_scan_qr_code_scanner,
-                null /* broadcast_name*/));;
+        mSummary.setText(getString(R.string.bt_le_audio_scan_qr_code_scanner));
     }
 
     @Override
diff --git a/src/com/android/settings/core/SettingsBaseActivity.java b/src/com/android/settings/core/SettingsBaseActivity.java
index 9c24a23..5f15093 100644
--- a/src/com/android/settings/core/SettingsBaseActivity.java
+++ b/src/com/android/settings/core/SettingsBaseActivity.java
@@ -23,6 +23,7 @@
 import android.content.Intent;
 import android.content.pm.PackageManager;
 import android.content.res.TypedArray;
+import android.graphics.text.LineBreakConfig;
 import android.os.Bundle;
 import android.text.TextUtils;
 import android.util.Log;
@@ -109,6 +110,12 @@
             if (mCollapsingToolbarLayout != null) {
                 mCollapsingToolbarLayout.setLineSpacingMultiplier(TOOLBAR_LINE_SPACING_MULTIPLIER);
                 mCollapsingToolbarLayout.setHyphenationFrequency(HYPHENATION_FREQUENCY_NORMAL_FAST);
+                mCollapsingToolbarLayout.setStaticLayoutBuilderConfigurer(builder ->
+                        builder.setLineBreakConfig(
+                                new LineBreakConfig.Builder()
+                                        .setLineBreakWordStyle(
+                                                LineBreakConfig.LINE_BREAK_WORD_STYLE_PHRASE)
+                                        .build()));
             }
             disableCollapsingToolbarLayoutScrollingBehavior();
         } else {
diff --git a/src/com/android/settings/core/gateway/SettingsGateway.java b/src/com/android/settings/core/gateway/SettingsGateway.java
index 11ceeaf..dc746ce 100644
--- a/src/com/android/settings/core/gateway/SettingsGateway.java
+++ b/src/com/android/settings/core/gateway/SettingsGateway.java
@@ -99,9 +99,9 @@
 import com.android.settings.dream.DreamSettings;
 import com.android.settings.enterprise.EnterprisePrivacySettings;
 import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
-import com.android.settings.fuelgauge.PowerUsageSummary;
 import com.android.settings.fuelgauge.batterysaver.BatterySaverScheduleSettings;
 import com.android.settings.fuelgauge.batterysaver.BatterySaverSettings;
+import com.android.settings.fuelgauge.batteryusage.PowerUsageSummary;
 import com.android.settings.gestures.AssistGestureSettings;
 import com.android.settings.gestures.ButtonNavigationSettingsFragment;
 import com.android.settings.gestures.DoubleTapPowerSettings;
diff --git a/src/com/android/settings/dashboard/DashboardFragment.java b/src/com/android/settings/dashboard/DashboardFragment.java
index fb0a09d..9d1ed7c 100644
--- a/src/com/android/settings/dashboard/DashboardFragment.java
+++ b/src/com/android/settings/dashboard/DashboardFragment.java
@@ -415,6 +415,30 @@
         updatePreferenceVisibility(mPreferenceControllers);
     }
 
+    /**
+     * Force update all the preferences in this fragment.
+     */
+    public void forceUpdatePreferences() {
+        final PreferenceScreen screen = getPreferenceScreen();
+        if (screen == null || mPreferenceControllers == null) {
+            return;
+        }
+        for (List<AbstractPreferenceController> controllerList : mPreferenceControllers.values()) {
+            for (AbstractPreferenceController controller : controllerList) {
+                final String key = controller.getPreferenceKey();
+                final Preference preference = findPreference(key);
+                if (preference == null) {
+                    continue;
+                }
+                final boolean available = controller.isAvailable();
+                if (available) {
+                    controller.updateState(preference);
+                }
+                preference.setVisible(available);
+            }
+        }
+    }
+
     @VisibleForTesting
     void updatePreferenceVisibility(
             Map<Class, List<AbstractPreferenceController>> preferenceControllers) {
diff --git a/src/com/android/settings/dashboard/DashboardFragmentRegistry.java b/src/com/android/settings/dashboard/DashboardFragmentRegistry.java
index eb04f3c..c2b5198 100644
--- a/src/com/android/settings/dashboard/DashboardFragmentRegistry.java
+++ b/src/com/android/settings/dashboard/DashboardFragmentRegistry.java
@@ -31,9 +31,9 @@
 import com.android.settings.display.NightDisplaySettings;
 import com.android.settings.emergency.EmergencyDashboardFragment;
 import com.android.settings.enterprise.EnterprisePrivacySettings;
-import com.android.settings.fuelgauge.PowerUsageSummary;
 import com.android.settings.fuelgauge.SmartBatterySettings;
 import com.android.settings.fuelgauge.batterysaver.BatterySaverSettings;
+import com.android.settings.fuelgauge.batteryusage.PowerUsageSummary;
 import com.android.settings.gestures.GestureSettings;
 import com.android.settings.homepage.TopLevelSettings;
 import com.android.settings.language.LanguageAndInputSettings;
diff --git a/src/com/android/settings/datetime/AutoTimeZonePreferenceController.java b/src/com/android/settings/datetime/AutoTimeZonePreferenceController.java
index 4426bde..98629b4 100644
--- a/src/com/android/settings/datetime/AutoTimeZonePreferenceController.java
+++ b/src/com/android/settings/datetime/AutoTimeZonePreferenceController.java
@@ -16,14 +16,22 @@
 
 package com.android.settings.datetime;
 
-import android.content.Context;
-import android.provider.Settings;
+import static android.app.time.Capabilities.CAPABILITY_NOT_ALLOWED;
+import static android.app.time.Capabilities.CAPABILITY_NOT_APPLICABLE;
+import static android.app.time.Capabilities.CAPABILITY_NOT_SUPPORTED;
+import static android.app.time.Capabilities.CAPABILITY_POSSESSED;
 
+import android.app.time.TimeManager;
+import android.app.time.TimeZoneCapabilities;
+import android.app.time.TimeZoneCapabilitiesAndConfig;
+import android.app.time.TimeZoneConfiguration;
+import android.content.Context;
+
+import androidx.annotation.VisibleForTesting;
 import androidx.preference.Preference;
 import androidx.preference.SwitchPreference;
 
 import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settingslib.Utils;
 import com.android.settingslib.core.AbstractPreferenceController;
 
 public class AutoTimeZonePreferenceController extends AbstractPreferenceController
@@ -33,17 +41,37 @@
 
     private final boolean mIsFromSUW;
     private final UpdateTimeAndDateCallback mCallback;
+    private final TimeManager mTimeManager;
 
     public AutoTimeZonePreferenceController(Context context, UpdateTimeAndDateCallback callback,
             boolean isFromSUW) {
         super(context);
+        mTimeManager = context.getSystemService(TimeManager.class);
         mCallback = callback;
         mIsFromSUW = isFromSUW;
     }
 
     @Override
     public boolean isAvailable() {
-        return !(Utils.isWifiOnly(mContext) || mIsFromSUW);
+        if (mIsFromSUW) {
+            return false;
+        }
+
+        TimeZoneCapabilities timeZoneCapabilities =
+                getTimeZoneCapabilitiesAndConfig().getCapabilities();
+        int capability = timeZoneCapabilities.getConfigureAutoDetectionEnabledCapability();
+
+        // The preference only has two states: present and not present. The preference is never
+        // present but disabled.
+        if (capability == CAPABILITY_NOT_SUPPORTED
+                || capability == CAPABILITY_NOT_ALLOWED
+                || capability == CAPABILITY_NOT_APPLICABLE) {
+            return false;
+        } else if (capability == CAPABILITY_POSSESSED) {
+            return true;
+        } else {
+            throw new IllegalStateException("Unknown capability=" + capability);
+        }
     }
 
     @Override
@@ -62,14 +90,22 @@
     @Override
     public boolean onPreferenceChange(Preference preference, Object newValue) {
         boolean autoZoneEnabled = (Boolean) newValue;
-        Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AUTO_TIME_ZONE,
-                autoZoneEnabled ? 1 : 0);
+        TimeZoneConfiguration configuration = new TimeZoneConfiguration.Builder()
+                .setAutoDetectionEnabled(autoZoneEnabled)
+                .build();
+        boolean result = mTimeManager.updateTimeZoneConfiguration(configuration);
+
         mCallback.updateTimeAndDateDisplay(mContext);
-        return true;
+        return result;
     }
 
-    public boolean isEnabled() {
-        return isAvailable() && Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.AUTO_TIME_ZONE, 0) > 0;
+    @VisibleForTesting
+    boolean isEnabled() {
+        TimeZoneConfiguration config = getTimeZoneCapabilitiesAndConfig().getConfiguration();
+        return config.isAutoDetectionEnabled();
+    }
+
+    private TimeZoneCapabilitiesAndConfig getTimeZoneCapabilitiesAndConfig() {
+        return mTimeManager.getTimeZoneCapabilitiesAndConfig();
     }
 }
diff --git a/src/com/android/settings/datetime/DateTimeSettings.java b/src/com/android/settings/datetime/DateTimeSettings.java
index d74847f..169455a 100644
--- a/src/com/android/settings/datetime/DateTimeSettings.java
+++ b/src/com/android/settings/datetime/DateTimeSettings.java
@@ -85,8 +85,7 @@
 
         controllers.add(new TimeFormatPreferenceController(
                 activity, this /* UpdateTimeAndDateCallback */, isFromSUW));
-        controllers.add(new TimeZonePreferenceController(
-                activity, autoTimeZonePreferenceController));
+        controllers.add(new TimeZonePreferenceController(activity));
         controllers.add(new TimePreferenceController(
                 activity, this /* UpdateTimeAndDateCallback */, autoTimePreferenceController));
         controllers.add(new DatePreferenceController(
diff --git a/src/com/android/settings/datetime/TimeZonePreferenceController.java b/src/com/android/settings/datetime/TimeZonePreferenceController.java
index a19f055..a26c7bf 100644
--- a/src/com/android/settings/datetime/TimeZonePreferenceController.java
+++ b/src/com/android/settings/datetime/TimeZonePreferenceController.java
@@ -16,6 +16,10 @@
 
 package com.android.settings.datetime;
 
+import static android.app.time.Capabilities.CAPABILITY_POSSESSED;
+
+import android.app.time.TimeManager;
+import android.app.time.TimeZoneCapabilities;
 import android.content.Context;
 
 import androidx.annotation.VisibleForTesting;
@@ -33,12 +37,11 @@
 
     private static final String KEY_TIMEZONE = "timezone";
 
-    private final AutoTimeZonePreferenceController mAutoTimeZonePreferenceController;
+    private final TimeManager mTimeManager;
 
-    public TimeZonePreferenceController(Context context,
-            AutoTimeZonePreferenceController autoTimeZonePreferenceController) {
+    public TimeZonePreferenceController(Context context) {
         super(context);
-        mAutoTimeZonePreferenceController = autoTimeZonePreferenceController;
+        mTimeManager = context.getSystemService(TimeManager.class);
     }
 
     @Override
@@ -47,8 +50,9 @@
             return;
         }
         preference.setSummary(getTimeZoneOffsetAndName());
-        if( !((RestrictedPreference) preference).isDisabledByAdmin()) {
-            preference.setEnabled(!mAutoTimeZonePreferenceController.isEnabled());
+        if (!((RestrictedPreference) preference).isDisabledByAdmin()) {
+            boolean enableManualTimeZoneSelection = shouldEnableManualTimeZoneSelection();
+            preference.setEnabled(enableManualTimeZoneSelection);
         }
     }
 
@@ -68,4 +72,12 @@
         return ZoneGetter.getTimeZoneOffsetAndName(mContext,
                 now.getTimeZone(), now.getTime());
     }
+
+    private boolean shouldEnableManualTimeZoneSelection() {
+        TimeZoneCapabilities timeZoneCapabilities =
+                mTimeManager.getTimeZoneCapabilitiesAndConfig().getCapabilities();
+        int suggestManualTimeZoneCapability =
+                timeZoneCapabilities.getSuggestManualTimeZoneCapability();
+        return suggestManualTimeZoneCapability == CAPABILITY_POSSESSED;
+    }
 }
diff --git a/src/com/android/settings/development/NotificationChannelWarningsPreferenceController.java b/src/com/android/settings/development/NotificationChannelWarningsPreferenceController.java
index 775b708..22b3f83 100644
--- a/src/com/android/settings/development/NotificationChannelWarningsPreferenceController.java
+++ b/src/com/android/settings/development/NotificationChannelWarningsPreferenceController.java
@@ -38,10 +38,6 @@
     final static int SETTING_VALUE_ON = 1;
     @VisibleForTesting
     final static int SETTING_VALUE_OFF = 0;
-    @VisibleForTesting
-    final static int DEBUGGING_ENABLED = 1;
-    @VisibleForTesting
-    final static int DEBUGGING_DISABLED = 0;
 
     public NotificationChannelWarningsPreferenceController(Context context) {
         super(context);
@@ -64,9 +60,8 @@
 
     @Override
     public void updateState(Preference preference) {
-        final int defaultWarningEnabled = isDebuggable() ? DEBUGGING_ENABLED : DEBUGGING_DISABLED;
         final int mode = Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.SHOW_NOTIFICATION_CHANNEL_WARNINGS, defaultWarningEnabled);
+                Settings.Global.SHOW_NOTIFICATION_CHANNEL_WARNINGS, 0);
         ((SwitchPreference) mPreference).setChecked(mode != SETTING_VALUE_OFF);
     }
 
diff --git a/src/com/android/settings/development/StayAwakePreferenceController.java b/src/com/android/settings/development/StayAwakePreferenceController.java
index 25a92b2..9ed0ef8 100644
--- a/src/com/android/settings/development/StayAwakePreferenceController.java
+++ b/src/com/android/settings/development/StayAwakePreferenceController.java
@@ -50,7 +50,7 @@
     @VisibleForTesting
     static final int SETTING_VALUE_ON =
             BatteryManager.BATTERY_PLUGGED_AC | BatteryManager.BATTERY_PLUGGED_USB
-                    | BatteryManager.BATTERY_PLUGGED_WIRELESS;
+                    | BatteryManager.BATTERY_PLUGGED_WIRELESS | BatteryManager.BATTERY_PLUGGED_DOCK;
     @VisibleForTesting
     SettingsObserver mSettingsObserver;
 
diff --git a/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java b/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
index 62bcffb..c9cc2b7 100644
--- a/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
@@ -40,7 +40,11 @@
 
     private static final String TAG = "AbstractBtDlgCtr";
 
-    protected static final int[] CODEC_TYPES = {BluetoothCodecConfig.SOURCE_CODEC_TYPE_LDAC,
+    private static final int SOURCE_CODEC_TYPE_OPUS = 6; // TODO(b/240635097): remove in U
+
+    protected static final int[] CODEC_TYPES = {SOURCE_CODEC_TYPE_OPUS,
+            BluetoothCodecConfig.SOURCE_CODEC_TYPE_LC3,
+            BluetoothCodecConfig.SOURCE_CODEC_TYPE_LDAC,
             BluetoothCodecConfig.SOURCE_CODEC_TYPE_APTX_HD,
             BluetoothCodecConfig.SOURCE_CODEC_TYPE_APTX,
             BluetoothCodecConfig.SOURCE_CODEC_TYPE_AAC,
diff --git a/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreference.java b/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreference.java
index 6a733f3..929a6d0 100644
--- a/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreference.java
+++ b/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreference.java
@@ -61,6 +61,8 @@
         mRadioButtonIds.add(R.id.bluetooth_audio_codec_aptx);
         mRadioButtonIds.add(R.id.bluetooth_audio_codec_aptx_hd);
         mRadioButtonIds.add(R.id.bluetooth_audio_codec_ldac);
+        mRadioButtonIds.add(R.id.bluetooth_audio_codec_lc3);
+        mRadioButtonIds.add(R.id.bluetooth_audio_codec_opus);
         String[] stringArray = context.getResources().getStringArray(
                 R.array.bluetooth_a2dp_codec_titles);
         for (int i = 0; i < stringArray.length; i++) {
diff --git a/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java b/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
index a65a1ba..87d5ff0 100644
--- a/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceController.java
@@ -40,6 +40,8 @@
     private static final String KEY = "bluetooth_audio_codec_settings";
     private static final String TAG = "BtCodecCtr";
 
+    private static final int SOURCE_CODEC_TYPE_OPUS = 6; // TODO remove in U
+
     private final Callback mCallback;
 
     public BluetoothCodecDialogPreferenceController(Context context, Lifecycle lifecycle,
@@ -118,6 +120,14 @@
                 codecTypeValue = BluetoothCodecConfig.SOURCE_CODEC_TYPE_LDAC;
                 codecPriorityValue = BluetoothCodecConfig.CODEC_PRIORITY_HIGHEST;
                 break;
+            case 6:
+                codecTypeValue = BluetoothCodecConfig.SOURCE_CODEC_TYPE_LC3;
+                codecPriorityValue = BluetoothCodecConfig.CODEC_PRIORITY_HIGHEST;
+                break;
+            case 7:
+                codecTypeValue = SOURCE_CODEC_TYPE_OPUS; // TODO update in U
+                codecPriorityValue = BluetoothCodecConfig.CODEC_PRIORITY_HIGHEST;
+                break;
             default:
                 break;
         }
@@ -180,6 +190,9 @@
             case BluetoothCodecConfig.SOURCE_CODEC_TYPE_LDAC:
                 index = 5;
                 break;
+            case SOURCE_CODEC_TYPE_OPUS: // TODO update in U
+                index = 7;
+                break;
             default:
                 Log.e(TAG, "Unsupported config:" + config);
                 break;
diff --git a/src/com/android/settings/development/qstile/DevelopmentTiles.java b/src/com/android/settings/development/qstile/DevelopmentTiles.java
index 0483aea..343ed24 100644
--- a/src/com/android/settings/development/qstile/DevelopmentTiles.java
+++ b/src/com/android/settings/development/qstile/DevelopmentTiles.java
@@ -476,4 +476,77 @@
                 Settings.System.SHOW_TOUCHES, isEnabled ? SETTING_VALUE_ON : SETTING_VALUE_OFF);
         }
     }
+
+    /**
+     * Tile to enable desktop mode
+     */
+    public static class DesktopMode extends DevelopmentTiles {
+
+        private static final int SETTING_VALUE_ON = 1;
+        private static final int SETTING_VALUE_OFF = 0;
+        private Context mContext;
+
+        @Override
+        public void onCreate() {
+            super.onCreate();
+            mContext = getApplicationContext();
+        }
+
+        @Override
+        protected boolean isEnabled() {
+            return Settings.System.getInt(mContext.getContentResolver(),
+                    Settings.System.DESKTOP_MODE, SETTING_VALUE_OFF) == SETTING_VALUE_ON;
+        }
+
+        private boolean isDesktopModeFlagEnabled() {
+            return SystemProperties.getBoolean("persist.wm.debug.desktop_mode", false);
+        }
+
+        private boolean isFreeformFlagEnabled() {
+            return Settings.Global.getInt(mContext.getContentResolver(),
+                    Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT, SETTING_VALUE_OFF)
+                    == SETTING_VALUE_ON;
+        }
+
+        private boolean isCaptionOnShellEnabled() {
+            return SystemProperties.getBoolean("persist.wm.debug.caption_on_shell", false);
+        }
+
+        @Override
+        protected void setIsEnabled(boolean isEnabled) {
+            if (isEnabled) {
+                // Check that all required features are enabled
+                if (!isDesktopModeFlagEnabled()) {
+                    closeShade();
+                    showMessage(
+                            "Enable 'Desktop Windowing Proto 1' from the Flag Flipper app");
+                    return;
+                }
+                if (!isCaptionOnShellEnabled()) {
+                    closeShade();
+                    showMessage("Enable 'Captions in Shell' from the Flag Flipper app");
+                    return;
+                }
+                if (!isFreeformFlagEnabled()) {
+                    closeShade();
+                    showMessage(
+                            "Enable freeform windows from developer settings");
+                    return;
+                }
+            }
+
+            Settings.System.putInt(mContext.getContentResolver(),
+                    Settings.System.DESKTOP_MODE,
+                    isEnabled ? SETTING_VALUE_ON : SETTING_VALUE_OFF);
+            closeShade();
+        }
+
+        private void closeShade() {
+            sendBroadcast(new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));
+        }
+
+        private void showMessage(String message) {
+            Toast.makeText(mContext, message, Toast.LENGTH_LONG).show();
+        }
+    }
 }
diff --git a/src/com/android/settings/deviceinfo/PublicVolumeSettings.java b/src/com/android/settings/deviceinfo/PublicVolumeSettings.java
index f7dd85a..d43b254 100644
--- a/src/com/android/settings/deviceinfo/PublicVolumeSettings.java
+++ b/src/com/android/settings/deviceinfo/PublicVolumeSettings.java
@@ -19,6 +19,7 @@
 import android.app.ActivityManager;
 import android.app.settings.SettingsEnums;
 import android.content.Context;
+import android.content.Intent;
 import android.net.Uri;
 import android.os.Bundle;
 import android.os.UserManager;
@@ -57,15 +58,34 @@
 
     private String mVolumeId;
     private VolumeInfo mVolume;
+    private final View.OnClickListener mUnmountListener = new View.OnClickListener() {
+        @Override
+        public void onClick(View v) {
+            new UnmountTask(getActivity(), mVolume).execute();
+        }
+    };
     private DiskInfo mDisk;
-
     private UsageProgressBarPreference mSummary;
-
     private Preference mMount;
     private Preference mFormatPublic;
-    private Preference mFormatPrivate;
     private Button mUnmount;
+    private final StorageEventListener mStorageListener = new StorageEventListener() {
+        @Override
+        public void onVolumeStateChanged(VolumeInfo vol, int oldState, int newState) {
+            if (Objects.equals(mVolume.getId(), vol.getId())) {
+                mVolume = vol;
+                update();
+            }
+        }
 
+        @Override
+        public void onVolumeRecordChanged(VolumeRecord rec) {
+            if (Objects.equals(mVolume.getFsUuid(), rec.getFsUuid())) {
+                mVolume = mStorageManager.findVolumeById(mVolumeId);
+                update();
+            }
+        }
+    };
     private boolean mIsPermittedToAdopt;
 
     private boolean isVolumeValid() {
@@ -120,10 +140,7 @@
         mUnmount = new Button(getActivity());
         mUnmount.setText(R.string.storage_menu_unmount);
         mUnmount.setOnClickListener(mUnmountListener);
-        mFormatPublic = buildAction(R.string.storage_menu_format);
-        if (mIsPermittedToAdopt) {
-            mFormatPrivate = buildAction(R.string.storage_menu_format_private);
-        }
+        mFormatPublic = buildAction(R.string.storage_menu_format_option);
     }
 
     @Override
@@ -176,9 +193,6 @@
             mUnmount.setVisibility(View.GONE);
         }
         addPreference(mFormatPublic);
-        if (mDisk.isAdoptable() && mIsPermittedToAdopt) {
-            addPreference(mFormatPrivate);
-        }
     }
 
     private void addPreference(Preference pref) {
@@ -215,39 +229,14 @@
 
     @Override
     public boolean onPreferenceTreeClick(Preference pref) {
+        final Intent intent = new Intent(getActivity(), StorageWizardInit.class);
+        intent.putExtra(VolumeInfo.EXTRA_VOLUME_ID, mVolume.getId());
         if (pref == mMount) {
             new MountTask(getActivity(), mVolume).execute();
         } else if (pref == mFormatPublic) {
-            StorageWizardFormatConfirm.showPublic(getActivity(), mDisk.getId());
-        } else if (pref == mFormatPrivate) {
-            StorageWizardFormatConfirm.showPrivate(getActivity(), mDisk.getId());
+            startActivity(intent);
         }
 
         return super.onPreferenceTreeClick(pref);
     }
-
-    private final View.OnClickListener mUnmountListener = new View.OnClickListener() {
-        @Override
-        public void onClick(View v) {
-            new UnmountTask(getActivity(), mVolume).execute();
-        }
-    };
-
-    private final StorageEventListener mStorageListener = new StorageEventListener() {
-        @Override
-        public void onVolumeStateChanged(VolumeInfo vol, int oldState, int newState) {
-            if (Objects.equals(mVolume.getId(), vol.getId())) {
-                mVolume = vol;
-                update();
-            }
-        }
-
-        @Override
-        public void onVolumeRecordChanged(VolumeRecord rec) {
-            if (Objects.equals(mVolume.getFsUuid(), rec.getFsUuid())) {
-                mVolume = mStorageManager.findVolumeById(mVolumeId);
-                update();
-            }
-        }
-    };
-}
+}
\ No newline at end of file
diff --git a/src/com/android/settings/deviceinfo/StorageWizardBase.java b/src/com/android/settings/deviceinfo/StorageWizardBase.java
index b1b956e..801baec 100644
--- a/src/com/android/settings/deviceinfo/StorageWizardBase.java
+++ b/src/com/android/settings/deviceinfo/StorageWizardBase.java
@@ -41,17 +41,19 @@
 import androidx.fragment.app.FragmentActivity;
 
 import com.android.settings.R;
-import com.android.settingslib.Utils;
+import com.android.settings.SetupWizardUtils;
 
 import com.google.android.setupcompat.template.FooterBarMixin;
 import com.google.android.setupcompat.template.FooterButton;
 import com.google.android.setupdesign.GlifLayout;
+import com.google.android.setupdesign.util.ThemeHelper;
 
 import java.text.NumberFormat;
 import java.util.List;
 import java.util.Objects;
 
 public abstract class StorageWizardBase extends FragmentActivity {
+
     private static final String TAG = "StorageWizardBase";
 
     protected static final String EXTRA_FORMAT_FORGET_UUID = "format_forget_uuid";
@@ -70,6 +72,8 @@
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
+        setTheme(SetupWizardUtils.getTheme(this, getIntent()));
+        ThemeHelper.trySetDynamicColor(this);
         super.onCreate(savedInstanceState);
 
         mStorage = getSystemService(StorageManager.class);
@@ -97,20 +101,20 @@
 
         mFooterBarMixin = getGlifLayout().getMixin(FooterBarMixin.class);
         mFooterBarMixin.setSecondaryButton(
-                new FooterButton.Builder(this)
-                        .setText(R.string.wizard_back)
-                        .setListener(this::onNavigateBack)
-                        .setButtonType(FooterButton.ButtonType.OTHER)
-                        .setTheme(R.style.SudGlifButton_Secondary)
-                        .build()
+            new FooterButton.Builder(this)
+                .setText(R.string.wizard_back)
+                .setListener(this::onNavigateBack)
+                .setButtonType(FooterButton.ButtonType.OTHER)
+                .setTheme(R.style.SudGlifButton_Secondary)
+                .build()
         );
         mFooterBarMixin.setPrimaryButton(
-                new FooterButton.Builder(this)
-                        .setText(R.string.wizard_next)
-                        .setListener(this::onNavigateNext)
-                        .setButtonType(FooterButton.ButtonType.NEXT)
-                        .setTheme(R.style.SudGlifButton_Primary)
-                        .build()
+            new FooterButton.Builder(this)
+                .setText(R.string.wizard_next)
+                .setListener(this::onNavigateNext)
+                .setButtonType(FooterButton.ButtonType.NEXT)
+                .setTheme(R.style.SudGlifButton_Primary)
+                .build()
         );
         mBack = mFooterBarMixin.getSecondaryButton();
         mNext = mFooterBarMixin.getPrimaryButton();
@@ -149,7 +153,7 @@
     protected void setCurrentProgress(int progress) {
         getProgressBar().setProgress(progress);
         ((TextView) requireViewById(R.id.storage_wizard_progress_summary)).setText(
-                NumberFormat.getPercentInstance().format((double) progress / 100));
+            NumberFormat.getPercentInstance().format((double) progress / 100));
     }
 
     protected void setHeaderText(int resId, CharSequence... args) {
@@ -167,14 +171,14 @@
     protected void setAuxChecklist() {
         final FrameLayout aux = requireViewById(R.id.storage_wizard_aux);
         aux.addView(LayoutInflater.from(aux.getContext())
-                .inflate(R.layout.storage_wizard_checklist, aux, false));
+            .inflate(R.layout.storage_wizard_checklist, aux, false));
         aux.setVisibility(View.VISIBLE);
 
         // Customize string based on disk
         ((TextView) aux.requireViewById(R.id.storage_wizard_migrate_v2_checklist_media))
-                .setText(TextUtils.expandTemplate(
-                        getText(R.string.storage_wizard_migrate_v2_checklist_media),
-                        getDiskShortDescription()));
+            .setText(TextUtils.expandTemplate(
+                getText(R.string.storage_wizard_migrate_v2_checklist_media),
+                getDiskShortDescription()));
     }
 
     protected void setBackButtonText(int resId, CharSequence... args) {
@@ -198,7 +202,6 @@
     protected void setIcon(int resId) {
         final GlifLayout layout = getGlifLayout();
         final Drawable icon = getDrawable(resId).mutate();
-        icon.setTintList(Utils.getColorAccent(layout.getContext()));
         layout.setIcon(icon);
     }
 
@@ -250,14 +253,14 @@
             final List<VolumeInfo> vols = mStorage.getVolumes();
             for (VolumeInfo vol : vols) {
                 if (Objects.equals(mDisk.getId(), vol.getDiskId()) && (vol.getType() == type)
-                        && (vol.getState() == VolumeInfo.STATE_MOUNTED)) {
+                    && (vol.getState() == VolumeInfo.STATE_MOUNTED)) {
                     return vol;
                 }
             }
 
             if (--attempts > 0) {
                 Log.w(TAG, "Missing mounted volume of type " + type + " hosted by disk "
-                        + mDisk.getId() + "; trying again");
+                    + mDisk.getId() + "; trying again");
                 SystemClock.sleep(250);
             } else {
                 return null;
@@ -265,7 +268,8 @@
         }
     }
 
-    protected @NonNull CharSequence getDiskDescription() {
+    protected @NonNull
+    CharSequence getDiskDescription() {
         if (mDisk != null) {
             return mDisk.getDescription();
         } else if (mVolume != null) {
@@ -275,7 +279,8 @@
         }
     }
 
-    protected @NonNull CharSequence getDiskShortDescription() {
+    protected @NonNull
+    CharSequence getDiskShortDescription() {
         if (mDisk != null) {
             return mDisk.getShortDescription();
         } else if (mVolume != null) {
@@ -294,4 +299,4 @@
             }
         }
     };
-}
+}
\ No newline at end of file
diff --git a/src/com/android/settings/deviceinfo/StorageWizardFormatConfirm.java b/src/com/android/settings/deviceinfo/StorageWizardFormatConfirm.java
index 9c18a0d..e2d8c7e 100644
--- a/src/com/android/settings/deviceinfo/StorageWizardFormatConfirm.java
+++ b/src/com/android/settings/deviceinfo/StorageWizardFormatConfirm.java
@@ -84,15 +84,23 @@
         builder.setTitle(TextUtils.expandTemplate(
                 getText(R.string.storage_wizard_format_confirm_v2_title),
                 disk.getShortDescription()));
-        builder.setMessage(TextUtils.expandTemplate(
-                getText(R.string.storage_wizard_format_confirm_v2_body),
+        if (formatPrivate) {
+            builder.setMessage(TextUtils.expandTemplate(
+                    getText(R.string.storage_wizard_format_confirm_v2_body),
+                    disk.getDescription(),
+                    disk.getShortDescription(),
+                    disk.getShortDescription()));
+        } else {
+            builder.setMessage(TextUtils.expandTemplate(
+                getText(R.string.storage_wizard_format_confirm_v2_body_external),
                 disk.getDescription(),
                 disk.getShortDescription(),
                 disk.getShortDescription()));
+        }
 
         builder.setNegativeButton(android.R.string.cancel, null);
         builder.setPositiveButton(
-                TextUtils.expandTemplate(getText(R.string.storage_wizard_format_confirm_v2_action),
+                TextUtils.expandTemplate(getText(R.string.storage_menu_format_option),
                         disk.getShortDescription()),
                 (dialog, which) -> {
                     final Intent intent = new Intent(context, StorageWizardFormatProgress.class);
@@ -104,4 +112,4 @@
 
         return builder.create();
     }
-}
+}
\ No newline at end of file
diff --git a/src/com/android/settings/deviceinfo/StorageWizardInit.java b/src/com/android/settings/deviceinfo/StorageWizardInit.java
index 426395c..3a0f7e6 100644
--- a/src/com/android/settings/deviceinfo/StorageWizardInit.java
+++ b/src/com/android/settings/deviceinfo/StorageWizardInit.java
@@ -18,21 +18,27 @@
 
 import android.app.ActivityManager;
 import android.app.settings.SettingsEnums;
-import android.content.Intent;
 import android.os.Bundle;
 import android.os.UserManager;
-import android.os.storage.DiskInfo;
-import android.os.storage.VolumeInfo;
+import android.text.Html;
+import android.text.Spannable;
+import android.text.method.LinkMovementMethod;
+import android.text.style.TypefaceSpan;
+import android.text.style.URLSpan;
 import android.view.View;
-import android.widget.Button;
+import android.widget.TextView;
+import android.widget.Toast;
+import android.widget.ViewFlipper;
 
 import com.android.settings.R;
 import com.android.settings.overlay.FeatureFactory;
 
 public class StorageWizardInit extends StorageWizardBase {
-    private Button mInternal;
 
     private boolean mIsPermittedToAdopt;
+    private boolean mPortable;
+
+    private ViewFlipper mFlipper;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -41,63 +47,119 @@
             finish();
             return;
         }
-        setContentView(R.layout.storage_wizard_init);
 
         mIsPermittedToAdopt = UserManager.get(this).isAdminUser()
-                && !ActivityManager.isUserAMonkey();
+            && !ActivityManager.isUserAMonkey();
 
-        setHeaderText(R.string.storage_wizard_init_v2_title, getDiskShortDescription());
+        if (!mIsPermittedToAdopt) {
+            //Notify guest users as to why formatting is disallowed
+            Toast.makeText(getApplicationContext(),
+                R.string.storage_wizard_guest, Toast.LENGTH_LONG).show();
+            finish();
+            return;
+        }
 
-        mInternal = requireViewById(R.id.storage_wizard_init_internal);
+        setContentView(R.layout.storage_wizard_init);
+        setupHyperlink();
+        mPortable = true;
 
-        setBackButtonText(R.string.storage_wizard_init_v2_later);
-        setNextButtonVisibility(View.INVISIBLE);
+        mFlipper = (ViewFlipper) findViewById(R.id.viewFlipper);
+        mFlipper.setDisplayedChild(0);
+        setHeaderText(R.string.storage_wizard_init_v2_external_title,
+            getDiskShortDescription());
+
+        setNextButtonText(R.string.storage_wizard_init_v2_external_action);
+        setBackButtonText(R.string.wizard_back_adoptable);
+        setNextButtonVisibility(View.VISIBLE);
         if (!mDisk.isAdoptable()) {
-            // If not adoptable, we only have one choice
-            mInternal.setEnabled(false);
-            onNavigateExternal(null);
-        } else if (!mIsPermittedToAdopt) {
-            // TODO: Show a message about why this is disabled for guest and
-            // that only an admin user can adopt an sd card.
-            mInternal.setEnabled(false);
+            setBackButtonVisibility(View.GONE);
         }
     }
 
     @Override
-    public void onNavigateBack(View view) {
-        finish();
+    public void onBackPressed() {
+        if (mPortable) {
+            super.onBackPressed();
+        } else {
+            mFlipper.showPrevious();
+            setBackButtonText(R.string.wizard_back_adoptable);
+            setHeaderText(R.string.storage_wizard_init_v2_external_title,
+                getDiskShortDescription());
+            setNextButtonText(R.string.storage_wizard_init_v2_external_action);
+            mPortable = true;
+        }
+    }
+
+    @Override
+    public void onNavigateBack(View v) {
+        if (mPortable == false) {
+            return;
+        }
+        if (!mIsPermittedToAdopt) {
+            // TODO: Show a message about why this is disabled for guest and
+            // that only an admin user can adopt an sd card.
+
+            v.setEnabled(false);
+        } else {
+            mFlipper.showNext();
+            setHeaderText(R.string.storage_wizard_init_v2_internal_title,
+                getDiskShortDescription());
+            setNextButtonText(R.string.storage_wizard_init_v2_internal_action);
+            setBackButtonVisibility(View.INVISIBLE);
+            mPortable = false;
+        }
+    }
+
+    @Override
+    public void onNavigateNext(View v) {
+        if (mPortable) {
+            onNavigateExternal(v);
+        } else {
+            onNavigateInternal(v);
+        }
     }
 
     public void onNavigateExternal(View view) {
         if (view != null) {
             // User made an explicit choice for external
             FeatureFactory.getFactory(this).getMetricsFeatureProvider().action(this,
-                    SettingsEnums.ACTION_STORAGE_INIT_EXTERNAL);
+                SettingsEnums.ACTION_STORAGE_INIT_EXTERNAL);
         }
-
-        if (mVolume != null && mVolume.getType() == VolumeInfo.TYPE_PUBLIC
-                && mVolume.getState() != VolumeInfo.STATE_UNMOUNTABLE) {
-            // Remember that user made decision
-            mStorage.setVolumeInited(mVolume.getFsUuid(), true);
-
-            final Intent intent = new Intent(this, StorageWizardReady.class);
-            intent.putExtra(DiskInfo.EXTRA_DISK_ID, mDisk.getId());
-            startActivity(intent);
-            finish();
-
-        } else {
-            // Gotta format to get there
-            StorageWizardFormatConfirm.showPublic(this, mDisk.getId());
-        }
+        StorageWizardFormatConfirm.showPublic(this, mDisk.getId());
     }
 
     public void onNavigateInternal(View view) {
         if (view != null) {
             // User made an explicit choice for internal
             FeatureFactory.getFactory(this).getMetricsFeatureProvider().action(this,
-                    SettingsEnums.ACTION_STORAGE_INIT_INTERNAL);
+                SettingsEnums.ACTION_STORAGE_INIT_INTERNAL);
         }
-
         StorageWizardFormatConfirm.showPrivate(this, mDisk.getId());
     }
+
+    private void setupHyperlink() {
+        TextView external_storage_textview = findViewById(R.id.storage_wizard_init_external_text);
+        TextView internal_storage_textview = findViewById(R.id.storage_wizard_init_internal_text);
+        String external_storage_text = getResources().getString(R.string.
+            storage_wizard_init_v2_external_summary);
+        String internal_storage_text = getResources().getString(R.string.
+            storage_wizard_init_v2_internal_summary);
+
+        Spannable external_storage_spannable = styleFont(external_storage_text);
+        Spannable internal_storage_spannable = styleFont(internal_storage_text);
+        external_storage_textview.setText(external_storage_spannable);
+        internal_storage_textview.setText(internal_storage_spannable);
+
+        external_storage_textview.setMovementMethod(LinkMovementMethod.getInstance());
+        internal_storage_textview.setMovementMethod(LinkMovementMethod.getInstance());
+    }
+
+    private Spannable styleFont(String text) {
+        Spannable s = (Spannable) Html.fromHtml(text);
+        for (URLSpan span : s.getSpans(0, s.length(), URLSpan.class)) {
+            TypefaceSpan typefaceSpan = new TypefaceSpan("sans-serif-medium");
+            s.setSpan(typefaceSpan, s.getSpanStart(span), s.getSpanEnd(span), 0);
+        }
+        return s;
+    }
 }
diff --git a/src/com/android/settings/deviceinfo/StorageWizardReady.java b/src/com/android/settings/deviceinfo/StorageWizardReady.java
index 813bcc6..8de9472 100644
--- a/src/com/android/settings/deviceinfo/StorageWizardReady.java
+++ b/src/com/android/settings/deviceinfo/StorageWizardReady.java
@@ -19,6 +19,7 @@
 import android.os.Bundle;
 import android.os.storage.VolumeInfo;
 import android.view.View;
+import android.widget.ImageView;
 
 import com.android.settings.R;
 
@@ -48,7 +49,9 @@
             setBodyText(R.string.storage_wizard_ready_v2_external_body,
                     getDiskDescription());
         }
-
+        ImageView img = (ImageView) findViewById(R.id.storage_wizard_body_image);
+        img.setImageResource(R.drawable.ic_storage_wizard_ready);
+        setIcon(R.drawable.ic_test_tick);
         setNextButtonText(R.string.done);
         setBackButtonVisibility(View.INVISIBLE);
     }
diff --git a/src/com/android/settings/deviceinfo/VolumeOptionMenuController.java b/src/com/android/settings/deviceinfo/VolumeOptionMenuController.java
index 4b87e42..289db52 100644
--- a/src/com/android/settings/deviceinfo/VolumeOptionMenuController.java
+++ b/src/com/android/settings/deviceinfo/VolumeOptionMenuController.java
@@ -30,6 +30,7 @@
 import android.view.Menu;
 import android.view.MenuInflater;
 import android.view.MenuItem;
+import android.widget.Toast;
 
 import androidx.annotation.VisibleForTesting;
 import androidx.fragment.app.Fragment;
@@ -55,7 +56,9 @@
         OnPrepareOptionsMenu, OnOptionsItemSelected {
 
     private static final String TAG = "VolumeOptionMenuController";
-
+    private final Context mContext;
+    private final Fragment mFragment;
+    private final PackageManager mPackageManager;
     @VisibleForTesting
     MenuItem mRename;
     @VisibleForTesting
@@ -74,18 +77,12 @@
     MenuItem mFree;
     @VisibleForTesting
     MenuItem mForget;
-
-    private final Context mContext;
-    private final Fragment mFragment;
-    private final PackageManager mPackageManager;
-    private final StorageManager mStorageManager;
     private StorageEntry mStorageEntry;
 
     public VolumeOptionMenuController(Context context, Fragment parent, StorageEntry storageEntry) {
         mContext = context;
         mFragment = parent;
         mPackageManager = context.getPackageManager();
-        mStorageManager = context.getSystemService(StorageManager.class);
         mStorageEntry = storageEntry;
     }
 
@@ -162,12 +159,7 @@
         if (mStorageEntry.isPublic()) {
             mRename.setVisible(true);
             mUnmount.setVisible(true);
-            mFormat.setVisible(true);
-            final DiskInfo diskInfo = mStorageManager.findDiskById(mStorageEntry.getDiskId());
-            mFormatAsInternal.setVisible(diskInfo != null
-                    && diskInfo.isAdoptable()
-                    && UserManager.get(mContext).isAdminUser()
-                    && !ActivityManager.isUserAMonkey());
+            mFormatAsInternal.setVisible(true);
             return;
         }
     }
@@ -225,6 +217,16 @@
         }
         if (menuId == R.id.storage_format_as_portable) {
             if (mStorageEntry.isPrivate()) {
+                boolean mIsPermittedToAdopt = UserManager.get(mContext).isAdminUser()
+                    && !ActivityManager.isUserAMonkey();
+
+                if(!mIsPermittedToAdopt){
+                    //Notify guest users as to why formatting is disallowed
+                    Toast.makeText(mFragment.getActivity(),
+                                 R.string.storage_wizard_guest,Toast.LENGTH_LONG).show();
+                    (mFragment.getActivity()).finish();
+                    return false;
+                }
                 final Bundle args = new Bundle();
                 args.putString(VolumeInfo.EXTRA_VOLUME_ID, mStorageEntry.getId());
                 new SubSettingLauncher(mContext)
@@ -239,8 +241,9 @@
         }
         if (menuId == R.id.storage_format_as_internal) {
             if (mStorageEntry.isPublic()) {
-                StorageWizardFormatConfirm.showPrivate(mFragment.getActivity(),
-                        mStorageEntry.getDiskId());
+                final Intent intent = new Intent(mFragment.getActivity(), StorageWizardInit.class);
+                intent.putExtra(VolumeInfo.EXTRA_VOLUME_ID, mStorageEntry.getId());
+                mContext.startActivity(intent);
                 return true;
             }
             return false;
@@ -269,4 +272,4 @@
 
         updateOptionsMenu();
     }
-}
+}
\ No newline at end of file
diff --git a/src/com/android/settings/display/ScreenSaverPreferenceController.java b/src/com/android/settings/display/ScreenSaverPreferenceController.java
index c1b0b4e..676a567 100644
--- a/src/com/android/settings/display/ScreenSaverPreferenceController.java
+++ b/src/com/android/settings/display/ScreenSaverPreferenceController.java
@@ -14,6 +14,7 @@
 package com.android.settings.display;
 
 import android.content.Context;
+import android.os.UserManager;
 
 import androidx.preference.Preference;
 
@@ -32,8 +33,11 @@
 
     @Override
     public boolean isAvailable() {
-        return mContext.getResources().getBoolean(
+        final boolean dreamsSupported = mContext.getResources().getBoolean(
                 com.android.internal.R.bool.config_dreamsSupported);
+        final boolean dreamsOnlyEnabledForSystemUser = mContext.getResources().getBoolean(
+                com.android.internal.R.bool.config_dreamsOnlyEnabledForSystemUser);
+        return dreamsSupported && (!dreamsOnlyEnabledForSystemUser || isSystemUser());
     }
 
     @Override
@@ -45,4 +49,9 @@
     public void updateState(Preference preference) {
         preference.setSummary(DreamSettings.getSummaryTextWithDreamName(mContext));
     }
+
+    private boolean isSystemUser() {
+        final UserManager userManager = mContext.getSystemService(UserManager.class);
+        return userManager.isSystemUser();
+    }
 }
diff --git a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
index 48825c8..db98a4c 100644
--- a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
+++ b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
@@ -45,6 +45,9 @@
 import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
 import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.fuelgauge.batteryusage.BatteryDiffEntry;
+import com.android.settings.fuelgauge.batteryusage.BatteryEntry;
+import com.android.settings.fuelgauge.batteryusage.BatteryHistEntry;
 import com.android.settings.widget.EntityHeaderController;
 import com.android.settingslib.HelpUtils;
 import com.android.settingslib.applications.AppUtils;
@@ -536,16 +539,13 @@
             return null;
         }
         if (totalTimeMs == 0) {
-            final int batteryWithoutUsageTime = consumedPower > 0
-                    ? R.string.battery_usage_without_time : R.string.battery_not_usage_24hr;
-            usageTimeSummary = getText(isChartGraphEnabled
-                    ? batteryWithoutUsageTime : R.string.battery_not_usage);
+            usageTimeSummary = getText(
+                    isChartGraphEnabled && consumedPower > 0 ? R.string.battery_usage_without_time
+                            : R.string.battery_not_usage);
         } else if (slotTime == null) {
-            // Shows summary text with past 24 hr or full charge if slot time is null.
-            usageTimeSummary = isChartGraphEnabled
-                    ? getAppPast24HrActiveSummary(foregroundTimeMs, backgroundTimeMs, totalTimeMs)
-                    : getAppFullChargeActiveSummary(
-                            foregroundTimeMs, backgroundTimeMs, totalTimeMs);
+            // Shows summary text with last full charge if slot time is null.
+            usageTimeSummary = getAppFullChargeActiveSummary(
+                    foregroundTimeMs, backgroundTimeMs, totalTimeMs);
         } else {
             // Shows summary text with slot time.
             usageTimeSummary = getAppActiveSummaryWithSlotTime(
diff --git a/src/com/android/settings/fuelgauge/BatteryBackupHelper.java b/src/com/android/settings/fuelgauge/BatteryBackupHelper.java
index f5e21dd..9860240 100644
--- a/src/com/android/settings/fuelgauge/BatteryBackupHelper.java
+++ b/src/com/android/settings/fuelgauge/BatteryBackupHelper.java
@@ -24,16 +24,13 @@
 import android.content.Context;
 import android.content.pm.ApplicationInfo;
 import android.content.pm.IPackageManager;
-import android.content.pm.PackageManager;
-import android.content.pm.ParceledListSlice;
-import android.content.pm.UserInfo;
 import android.os.Build;
 import android.os.IDeviceIdleController;
 import android.os.ParcelFileDescriptor;
 import android.os.RemoteException;
 import android.os.ServiceManager;
 import android.os.UserHandle;
-import android.os.UserManager;
+import android.util.ArraySet;
 import android.util.Log;
 
 import androidx.annotation.VisibleForTesting;
@@ -53,22 +50,13 @@
     private static final String DEVICE_IDLE_SERVICE = "deviceidle";
     private static final boolean DEBUG = Build.TYPE.equals("userdebug");
 
-    // Only the owner can see all apps.
-    private static final int RETRIEVE_FLAG_ADMIN =
-            PackageManager.MATCH_ANY_USER |
-            PackageManager.MATCH_DISABLED_COMPONENTS |
-            PackageManager.MATCH_DISABLED_UNTIL_USED_COMPONENTS;
-    private static final int RETRIEVE_FLAG =
-            PackageManager.MATCH_DISABLED_COMPONENTS |
-            PackageManager.MATCH_DISABLED_UNTIL_USED_COMPONENTS;
-
     static final String DELIMITER = ",";
     static final String DELIMITER_MODE = ":";
     static final String KEY_FULL_POWER_LIST = "full_power_list";
     static final String KEY_OPTIMIZATION_LIST = "optimization_mode_list";
 
     @VisibleForTesting
-    List<ApplicationInfo> mTestApplicationInfoList = null;
+    ArraySet<ApplicationInfo> mTestApplicationInfoList = null;
 
     @VisibleForTesting
     PowerAllowlistBackend mPowerAllowlistBackend;
@@ -146,7 +134,7 @@
     @VisibleForTesting
     void backupOptimizationMode(BackupDataOutput data, List<String> allowlistedApps) {
         final long timestamp = System.currentTimeMillis();
-        final List<ApplicationInfo> applications = getInstalledApplications();
+        final ArraySet<ApplicationInfo> applications = getInstalledApplications();
         if (applications == null || applications.isEmpty()) {
             Log.w(TAG, "no data found in the getInstalledApplications()");
             return;
@@ -269,36 +257,11 @@
                 || powerAllowlistBackend.isDefaultActiveApp(packageName);
     }
 
-    private List<ApplicationInfo> getInstalledApplications() {
+    private ArraySet<ApplicationInfo> getInstalledApplications() {
         if (mTestApplicationInfoList != null) {
             return mTestApplicationInfoList;
         }
-        final List<ApplicationInfo> applications = new ArrayList<>();
-        final UserManager um = mContext.getSystemService(UserManager.class);
-        for (UserInfo userInfo : um.getProfiles(UserHandle.myUserId())) {
-            try {
-                @SuppressWarnings("unchecked")
-                final ParceledListSlice<ApplicationInfo> infoList =
-                        getIPackageManager().getInstalledApplications(
-                                userInfo.isAdmin() ? RETRIEVE_FLAG_ADMIN : RETRIEVE_FLAG,
-                                userInfo.id);
-                if (infoList != null) {
-                    applications.addAll(infoList.getList());
-                }
-            } catch (Exception e) {
-                Log.e(TAG, "getInstalledApplications() is failed", e);
-                return null;
-            }
-        }
-        // Removes the application which is disabled by the system.
-        for (int index = applications.size() - 1; index >= 0; index--) {
-            final ApplicationInfo info = applications.get(index);
-            if (info.enabledSetting != PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER
-                    && !info.enabled) {
-                applications.remove(index);
-            }
-        }
-        return applications;
+        return BatteryOptimizeUtils.getInstalledApplications(mContext, getIPackageManager());
     }
 
     private void debugLog(String debugContent) {
diff --git a/src/com/android/settings/fuelgauge/BatteryChartPreferenceController.java b/src/com/android/settings/fuelgauge/BatteryChartPreferenceController.java
deleted file mode 100644
index 02248c9..0000000
--- a/src/com/android/settings/fuelgauge/BatteryChartPreferenceController.java
+++ /dev/null
@@ -1,726 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.android.settings.fuelgauge;
-
-import android.app.settings.SettingsEnums;
-import android.content.Context;
-import android.content.res.Configuration;
-import android.graphics.drawable.Drawable;
-import android.os.AsyncTask;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.Looper;
-import android.text.TextUtils;
-import android.text.format.DateFormat;
-import android.text.format.DateUtils;
-import android.util.Log;
-
-import androidx.annotation.VisibleForTesting;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceGroup;
-import androidx.preference.PreferenceScreen;
-
-import com.android.settings.R;
-import com.android.settings.SettingsActivity;
-import com.android.settings.core.InstrumentedPreferenceFragment;
-import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.core.AbstractPreferenceController;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-import com.android.settingslib.core.lifecycle.LifecycleObserver;
-import com.android.settingslib.core.lifecycle.events.OnCreate;
-import com.android.settingslib.core.lifecycle.events.OnDestroy;
-import com.android.settingslib.core.lifecycle.events.OnResume;
-import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState;
-import com.android.settingslib.utils.StringUtil;
-import com.android.settingslib.widget.FooterPreference;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/** Controls the update for chart graph and the list items. */
-public class BatteryChartPreferenceController extends AbstractPreferenceController
-        implements PreferenceControllerMixin, LifecycleObserver, OnCreate, OnDestroy,
-                OnSaveInstanceState, BatteryChartView.OnSelectListener, OnResume,
-                ExpandDividerPreference.OnExpandListener {
-    private static final String TAG = "BatteryChartPreferenceController";
-    private static final String KEY_FOOTER_PREF = "battery_graph_footer";
-    private static final String PACKAGE_NAME_NONE = "none";
-
-    /** Desired battery history size for timestamp slots. */
-    public static final int DESIRED_HISTORY_SIZE = 25;
-    private static final int CHART_LEVEL_ARRAY_SIZE = 13;
-    private static final int CHART_KEY_ARRAY_SIZE = DESIRED_HISTORY_SIZE;
-    private static final long VALID_USAGE_TIME_DURATION = DateUtils.HOUR_IN_MILLIS * 2;
-    private static final long VALID_DIFF_DURATION = DateUtils.MINUTE_IN_MILLIS * 3;
-
-    // Keys for bundle instance to restore configurations.
-    private static final String KEY_EXPAND_SYSTEM_INFO = "expand_system_info";
-    private static final String KEY_CURRENT_TIME_SLOT = "current_time_slot";
-
-    private static int sUiMode = Configuration.UI_MODE_NIGHT_UNDEFINED;
-
-    @VisibleForTesting
-    Map<Integer, List<BatteryDiffEntry>> mBatteryIndexedMap;
-
-    @VisibleForTesting Context mPrefContext;
-    @VisibleForTesting BatteryUtils mBatteryUtils;
-    @VisibleForTesting PreferenceGroup mAppListPrefGroup;
-    @VisibleForTesting BatteryChartView mBatteryChartView;
-    @VisibleForTesting ExpandDividerPreference mExpandDividerPreference;
-
-    @VisibleForTesting boolean mIsExpanded = false;
-    @VisibleForTesting int[] mBatteryHistoryLevels;
-    @VisibleForTesting long[] mBatteryHistoryKeys;
-    @VisibleForTesting int mTrapezoidIndex = BatteryChartView.SELECTED_INDEX_INVALID;
-
-    private boolean mIs24HourFormat = false;
-    private boolean mIsFooterPrefAdded = false;
-    private PreferenceScreen mPreferenceScreen;
-    private FooterPreference mFooterPreference;
-
-    private final String mPreferenceKey;
-    private final SettingsActivity mActivity;
-    private final InstrumentedPreferenceFragment mFragment;
-    private final CharSequence[] mNotAllowShowEntryPackages;
-    private final CharSequence[] mNotAllowShowSummaryPackages;
-    private final MetricsFeatureProvider mMetricsFeatureProvider;
-    private final Handler mHandler = new Handler(Looper.getMainLooper());
-
-    // Preference cache to avoid create new instance each time.
-    @VisibleForTesting
-    final Map<String, Preference> mPreferenceCache = new HashMap<>();
-    @VisibleForTesting
-    final List<BatteryDiffEntry> mSystemEntries = new ArrayList<>();
-
-    public BatteryChartPreferenceController(
-            Context context, String preferenceKey,
-            Lifecycle lifecycle, SettingsActivity activity,
-            InstrumentedPreferenceFragment fragment) {
-        super(context);
-        mActivity = activity;
-        mFragment = fragment;
-        mPreferenceKey = preferenceKey;
-        mIs24HourFormat = DateFormat.is24HourFormat(context);
-        mMetricsFeatureProvider =
-            FeatureFactory.getFactory(mContext).getMetricsFeatureProvider();
-        mNotAllowShowEntryPackages =
-            FeatureFactory.getFactory(context)
-                .getPowerUsageFeatureProvider(context)
-                .getHideApplicationEntries(context);
-        mNotAllowShowSummaryPackages =
-            FeatureFactory.getFactory(context)
-                .getPowerUsageFeatureProvider(context)
-                .getHideApplicationSummary(context);
-        if (lifecycle != null) {
-            lifecycle.addObserver(this);
-        }
-    }
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        if (savedInstanceState == null) {
-            return;
-        }
-        mTrapezoidIndex =
-            savedInstanceState.getInt(KEY_CURRENT_TIME_SLOT, mTrapezoidIndex);
-        mIsExpanded =
-            savedInstanceState.getBoolean(KEY_EXPAND_SYSTEM_INFO, mIsExpanded);
-        Log.d(TAG, String.format("onCreate() slotIndex=%d isExpanded=%b",
-            mTrapezoidIndex, mIsExpanded));
-    }
-
-    @Override
-    public void onResume() {
-        final int currentUiMode =
-            mContext.getResources().getConfiguration().uiMode
-                & Configuration.UI_MODE_NIGHT_MASK;
-        if (sUiMode != currentUiMode) {
-            sUiMode = currentUiMode;
-            BatteryDiffEntry.clearCache();
-            Log.d(TAG, "clear icon and label cache since uiMode is changed");
-        }
-        mIs24HourFormat = DateFormat.is24HourFormat(mContext);
-        mMetricsFeatureProvider.action(mPrefContext, SettingsEnums.OPEN_BATTERY_USAGE);
-    }
-
-    @Override
-    public void onSaveInstanceState(Bundle savedInstance) {
-        if (savedInstance == null) {
-            return;
-        }
-        savedInstance.putInt(KEY_CURRENT_TIME_SLOT, mTrapezoidIndex);
-        savedInstance.putBoolean(KEY_EXPAND_SYSTEM_INFO, mIsExpanded);
-        Log.d(TAG, String.format("onSaveInstanceState() slotIndex=%d isExpanded=%b",
-            mTrapezoidIndex, mIsExpanded));
-    }
-
-    @Override
-    public void onDestroy() {
-        if (mActivity.isChangingConfigurations()) {
-            BatteryDiffEntry.clearCache();
-        }
-        mHandler.removeCallbacksAndMessages(/*token=*/ null);
-        mPreferenceCache.clear();
-        if (mAppListPrefGroup != null) {
-            mAppListPrefGroup.removeAll();
-        }
-    }
-
-    @Override
-    public void displayPreference(PreferenceScreen screen) {
-        super.displayPreference(screen);
-        mPreferenceScreen = screen;
-        mPrefContext = screen.getContext();
-        mAppListPrefGroup = screen.findPreference(mPreferenceKey);
-        mAppListPrefGroup.setOrderingAsAdded(false);
-        mAppListPrefGroup.setTitle(
-            mPrefContext.getString(R.string.battery_app_usage_for_past_24));
-        mFooterPreference = screen.findPreference(KEY_FOOTER_PREF);
-        // Removes footer first until usage data is loaded to avoid flashing.
-        if (mFooterPreference != null) {
-            screen.removePreference(mFooterPreference);
-        }
-    }
-
-    @Override
-    public boolean isAvailable() {
-        return true;
-    }
-
-    @Override
-    public String getPreferenceKey() {
-        return mPreferenceKey;
-    }
-
-    @Override
-    public boolean handlePreferenceTreeClick(Preference preference) {
-        if (!(preference instanceof PowerGaugePreference)) {
-            return false;
-        }
-        final PowerGaugePreference powerPref = (PowerGaugePreference) preference;
-        final BatteryDiffEntry diffEntry = powerPref.getBatteryDiffEntry();
-        final BatteryHistEntry histEntry = diffEntry.mBatteryHistEntry;
-        final String packageName = histEntry.mPackageName;
-        final boolean isAppEntry = histEntry.isAppEntry();
-        mMetricsFeatureProvider.action(
-                /* attribution */ SettingsEnums.OPEN_BATTERY_USAGE,
-                /* action */ isAppEntry
-                        ? SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM
-                        : SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM,
-                /* pageId */ SettingsEnums.OPEN_BATTERY_USAGE,
-                TextUtils.isEmpty(packageName) ? PACKAGE_NAME_NONE : packageName,
-                (int) Math.round(diffEntry.getPercentOfTotal()));
-        Log.d(TAG, String.format("handleClick() label=%s key=%s package=%s",
-                diffEntry.getAppLabel(), histEntry.getKey(), histEntry.mPackageName));
-        AdvancedPowerUsageDetail.startBatteryDetailPage(
-                mActivity, mFragment, diffEntry, powerPref.getPercent(),
-                isValidToShowSummary(packageName), getSlotInformation());
-        return true;
-    }
-
-    @Override
-    public void onSelect(int trapezoidIndex) {
-        Log.d(TAG, "onChartSelect:" + trapezoidIndex);
-        refreshUi(trapezoidIndex, /*isForce=*/ false);
-        mMetricsFeatureProvider.action(
-            mPrefContext,
-            trapezoidIndex == BatteryChartView.SELECTED_INDEX_ALL
-                ? SettingsEnums.ACTION_BATTERY_USAGE_SHOW_ALL
-                : SettingsEnums.ACTION_BATTERY_USAGE_TIME_SLOT);
-    }
-
-    @Override
-    public void onExpand(boolean isExpanded) {
-        mIsExpanded = isExpanded;
-        mMetricsFeatureProvider.action(
-            mPrefContext,
-            SettingsEnums.ACTION_BATTERY_USAGE_EXPAND_ITEM,
-            isExpanded);
-        refreshExpandUi();
-    }
-
-    void setBatteryHistoryMap(
-            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
-        // Resets all battery history data relative variables.
-        if (batteryHistoryMap == null || batteryHistoryMap.isEmpty()) {
-            mBatteryIndexedMap = null;
-            mBatteryHistoryKeys = null;
-            mBatteryHistoryLevels = null;
-            addFooterPreferenceIfNeeded(false);
-            return;
-        }
-        mBatteryHistoryKeys = getBatteryHistoryKeys(batteryHistoryMap);
-        mBatteryHistoryLevels = new int[CHART_LEVEL_ARRAY_SIZE];
-        for (int index = 0; index < CHART_LEVEL_ARRAY_SIZE; index++) {
-            final long timestamp = mBatteryHistoryKeys[index * 2];
-            final Map<String, BatteryHistEntry> entryMap = batteryHistoryMap.get(timestamp);
-            if (entryMap == null || entryMap.isEmpty()) {
-                Log.e(TAG, "abnormal entry list in the timestamp:"
-                    + ConvertUtils.utcToLocalTime(mPrefContext, timestamp));
-                continue;
-            }
-            // Averages the battery level in each time slot to avoid corner conditions.
-            float batteryLevelCounter = 0;
-            for (BatteryHistEntry entry : entryMap.values()) {
-                batteryLevelCounter += entry.mBatteryLevel;
-            }
-            mBatteryHistoryLevels[index] =
-                Math.round(batteryLevelCounter / entryMap.size());
-        }
-        forceRefreshUi();
-        Log.d(TAG, String.format(
-            "setBatteryHistoryMap() size=%d key=%s\nlevels=%s",
-            batteryHistoryMap.size(),
-            ConvertUtils.utcToLocalTime(mPrefContext,
-                mBatteryHistoryKeys[mBatteryHistoryKeys.length - 1]),
-            Arrays.toString(mBatteryHistoryLevels)));
-
-        // Loads item icon and label in the background.
-        new LoadAllItemsInfoTask(batteryHistoryMap).execute();
-    }
-
-    void setBatteryChartView(final BatteryChartView batteryChartView) {
-        if (mBatteryChartView != batteryChartView) {
-            mHandler.post(() -> setBatteryChartViewInner(batteryChartView));
-        }
-    }
-
-    private void setBatteryChartViewInner(final BatteryChartView batteryChartView) {
-        mBatteryChartView = batteryChartView;
-        mBatteryChartView.setOnSelectListener(this);
-        forceRefreshUi();
-    }
-
-    private void forceRefreshUi() {
-        final int refreshIndex =
-            mTrapezoidIndex == BatteryChartView.SELECTED_INDEX_INVALID
-                ? BatteryChartView.SELECTED_INDEX_ALL
-                : mTrapezoidIndex;
-        if (mBatteryChartView != null) {
-            mBatteryChartView.setLevels(mBatteryHistoryLevels);
-            mBatteryChartView.setSelectedIndex(refreshIndex);
-            setTimestampLabel();
-        }
-        refreshUi(refreshIndex, /*isForce=*/ true);
-    }
-
-    @VisibleForTesting
-    boolean refreshUi(int trapezoidIndex, boolean isForce) {
-        // Invalid refresh condition.
-        if (mBatteryIndexedMap == null
-                || mBatteryChartView == null
-                || (mTrapezoidIndex == trapezoidIndex && !isForce)) {
-            return false;
-        }
-        Log.d(TAG, String.format("refreshUi: index=%d size=%d isForce:%b",
-            trapezoidIndex, mBatteryIndexedMap.size(), isForce));
-
-        mTrapezoidIndex = trapezoidIndex;
-        mHandler.post(() -> {
-            final long start = System.currentTimeMillis();
-            removeAndCacheAllPrefs();
-            addAllPreferences();
-            refreshCategoryTitle();
-            Log.d(TAG, String.format("refreshUi is finished in %d/ms",
-                    (System.currentTimeMillis() - start)));
-        });
-        return true;
-    }
-
-    private void addAllPreferences() {
-        final List<BatteryDiffEntry> entries =
-            mBatteryIndexedMap.get(Integer.valueOf(mTrapezoidIndex));
-        addFooterPreferenceIfNeeded(entries != null && !entries.isEmpty());
-        if (entries == null) {
-            Log.w(TAG, "cannot find BatteryDiffEntry for:" + mTrapezoidIndex);
-            return;
-        }
-        // Separates data into two groups and sort them individually.
-        final List<BatteryDiffEntry> appEntries = new ArrayList<>();
-        mSystemEntries.clear();
-        entries.forEach(entry -> {
-            final String packageName = entry.getPackageName();
-            if (!isValidToShowEntry(packageName)) {
-                Log.w(TAG, "ignore showing item:" + packageName);
-                return;
-            }
-            if (entry.isSystemEntry()) {
-                mSystemEntries.add(entry);
-            } else {
-                appEntries.add(entry);
-            }
-            // Validates the usage time if users click a specific slot.
-            if (mTrapezoidIndex >= 0) {
-                validateUsageTime(entry);
-            }
-        });
-        Collections.sort(appEntries, BatteryDiffEntry.COMPARATOR);
-        Collections.sort(mSystemEntries, BatteryDiffEntry.COMPARATOR);
-        Log.d(TAG, String.format("addAllPreferences() app=%d system=%d",
-            appEntries.size(), mSystemEntries.size()));
-
-        // Adds app entries to the list if it is not empty.
-        if (!appEntries.isEmpty()) {
-            addPreferenceToScreen(appEntries);
-        }
-        // Adds the expabable divider if we have system entries data.
-        if (!mSystemEntries.isEmpty()) {
-            if (mExpandDividerPreference == null) {
-                mExpandDividerPreference = new ExpandDividerPreference(mPrefContext);
-                mExpandDividerPreference.setOnExpandListener(this);
-                mExpandDividerPreference.setIsExpanded(mIsExpanded);
-            }
-            mExpandDividerPreference.setOrder(
-                mAppListPrefGroup.getPreferenceCount());
-            mAppListPrefGroup.addPreference(mExpandDividerPreference);
-        }
-        refreshExpandUi();
-    }
-
-    @VisibleForTesting
-    void addPreferenceToScreen(List<BatteryDiffEntry> entries) {
-        if (mAppListPrefGroup == null || entries.isEmpty()) {
-            return;
-        }
-        int prefIndex = mAppListPrefGroup.getPreferenceCount();
-        for (BatteryDiffEntry entry : entries) {
-            boolean isAdded = false;
-            final String appLabel = entry.getAppLabel();
-            final Drawable appIcon = entry.getAppIcon();
-            if (TextUtils.isEmpty(appLabel) || appIcon == null) {
-                Log.w(TAG, "cannot find app resource for:" + entry.getPackageName());
-                continue;
-            }
-            final String prefKey = entry.mBatteryHistEntry.getKey();
-            PowerGaugePreference pref = mAppListPrefGroup.findPreference(prefKey);
-            if (pref != null) {
-                isAdded = true;
-                Log.w(TAG, "preference should be removed for:" + entry.getPackageName());
-            } else {
-                pref = (PowerGaugePreference) mPreferenceCache.get(prefKey);
-            }
-            // Creates new innstance if cached preference is not found.
-            if (pref == null) {
-                pref = new PowerGaugePreference(mPrefContext);
-                pref.setKey(prefKey);
-                mPreferenceCache.put(prefKey, pref);
-            }
-            pref.setIcon(appIcon);
-            pref.setTitle(appLabel);
-            pref.setOrder(prefIndex);
-            pref.setPercent(entry.getPercentOfTotal());
-            pref.setSingleLineTitle(true);
-            // Sets the BatteryDiffEntry to preference for launching detailed page.
-            pref.setBatteryDiffEntry(entry);
-            pref.setEnabled(entry.validForRestriction());
-            setPreferenceSummary(pref, entry);
-            if (!isAdded) {
-                mAppListPrefGroup.addPreference(pref);
-            }
-            prefIndex++;
-        }
-    }
-
-    private void removeAndCacheAllPrefs() {
-        if (mAppListPrefGroup == null
-                || mAppListPrefGroup.getPreferenceCount() == 0) {
-            return;
-        }
-        final int prefsCount = mAppListPrefGroup.getPreferenceCount();
-        for (int index = 0; index < prefsCount; index++) {
-            final Preference pref = mAppListPrefGroup.getPreference(index);
-            if (TextUtils.isEmpty(pref.getKey())) {
-                continue;
-            }
-            mPreferenceCache.put(pref.getKey(), pref);
-        }
-        mAppListPrefGroup.removeAll();
-    }
-
-    private void refreshExpandUi() {
-        if (mIsExpanded) {
-            addPreferenceToScreen(mSystemEntries);
-        } else {
-            // Removes and recycles all system entries to hide all of them.
-            for (BatteryDiffEntry entry : mSystemEntries) {
-                final String prefKey = entry.mBatteryHistEntry.getKey();
-                final Preference pref = mAppListPrefGroup.findPreference(prefKey);
-                if (pref != null) {
-                    mAppListPrefGroup.removePreference(pref);
-                    mPreferenceCache.put(pref.getKey(), pref);
-                }
-            }
-        }
-    }
-
-    @VisibleForTesting
-    void refreshCategoryTitle() {
-        final String slotInformation = getSlotInformation();
-        Log.d(TAG, String.format("refreshCategoryTitle:%s", slotInformation));
-        if (mAppListPrefGroup != null) {
-            mAppListPrefGroup.setTitle(
-                getSlotInformation(/*isApp=*/ true, slotInformation));
-        }
-        if (mExpandDividerPreference != null) {
-            mExpandDividerPreference.setTitle(
-                getSlotInformation(/*isApp=*/ false, slotInformation));
-        }
-    }
-
-    private String getSlotInformation(boolean isApp, String slotInformation) {
-        // Null means we show all information without a specific time slot.
-        if (slotInformation == null) {
-            return isApp
-                ? mPrefContext.getString(R.string.battery_app_usage_for_past_24)
-                : mPrefContext.getString(R.string.battery_system_usage_for_past_24);
-        } else {
-            return isApp
-                ? mPrefContext.getString(R.string.battery_app_usage_for, slotInformation)
-                : mPrefContext.getString(R.string.battery_system_usage_for ,slotInformation);
-        }
-    }
-
-    private String getSlotInformation() {
-        if (mTrapezoidIndex < 0) {
-            return null;
-        }
-        final String fromHour = ConvertUtils.utcToLocalTimeHour(mPrefContext,
-            mBatteryHistoryKeys[mTrapezoidIndex * 2], mIs24HourFormat);
-        final String toHour = ConvertUtils.utcToLocalTimeHour(mPrefContext,
-            mBatteryHistoryKeys[(mTrapezoidIndex + 1) * 2], mIs24HourFormat);
-        return mIs24HourFormat
-            ? String.format("%s–%s", fromHour, toHour)
-            : String.format("%s – %s", fromHour, toHour);
-    }
-
-    @VisibleForTesting
-    void setPreferenceSummary(
-            PowerGaugePreference preference, BatteryDiffEntry entry) {
-        final long foregroundUsageTimeInMs = entry.mForegroundUsageTimeInMs;
-        final long backgroundUsageTimeInMs = entry.mBackgroundUsageTimeInMs;
-        final long totalUsageTimeInMs = foregroundUsageTimeInMs + backgroundUsageTimeInMs;
-        // Checks whether the package is allowed to show summary or not.
-        if (!isValidToShowSummary(entry.getPackageName())) {
-            preference.setSummary(null);
-            return;
-        }
-        String usageTimeSummary = null;
-        // Not shows summary for some system components without usage time.
-        if (totalUsageTimeInMs == 0) {
-            preference.setSummary(null);
-        // Shows background summary only if we don't have foreground usage time.
-        } else if (foregroundUsageTimeInMs == 0 && backgroundUsageTimeInMs != 0) {
-            usageTimeSummary = buildUsageTimeInfo(backgroundUsageTimeInMs, true);
-        // Shows total usage summary only if total usage time is small.
-        } else if (totalUsageTimeInMs < DateUtils.MINUTE_IN_MILLIS) {
-            usageTimeSummary = buildUsageTimeInfo(totalUsageTimeInMs, false);
-        } else {
-            usageTimeSummary = buildUsageTimeInfo(totalUsageTimeInMs, false);
-            // Shows background usage time if it is larger than a minute.
-            if (backgroundUsageTimeInMs > 0) {
-                usageTimeSummary +=
-                    "\n" + buildUsageTimeInfo(backgroundUsageTimeInMs, true);
-            }
-        }
-        preference.setSummary(usageTimeSummary);
-    }
-
-    private String buildUsageTimeInfo(long usageTimeInMs, boolean isBackground) {
-        if (usageTimeInMs < DateUtils.MINUTE_IN_MILLIS) {
-            return mPrefContext.getString(
-                isBackground
-                    ? R.string.battery_usage_background_less_than_one_minute
-                    : R.string.battery_usage_total_less_than_one_minute);
-        }
-        final CharSequence timeSequence =
-            StringUtil.formatElapsedTime(mPrefContext, usageTimeInMs,
-                /*withSeconds=*/ false, /*collapseTimeUnit=*/ false);
-        final int resourceId =
-            isBackground
-                ? R.string.battery_usage_for_background_time
-                : R.string.battery_usage_for_total_time;
-        return mPrefContext.getString(resourceId, timeSequence);
-    }
-
-    @VisibleForTesting
-    boolean isValidToShowSummary(String packageName) {
-        return !contains(packageName, mNotAllowShowSummaryPackages);
-    }
-
-    @VisibleForTesting
-    boolean isValidToShowEntry(String packageName) {
-        return !contains(packageName, mNotAllowShowEntryPackages);
-    }
-
-    @VisibleForTesting
-    void setTimestampLabel() {
-        if (mBatteryChartView == null || mBatteryHistoryKeys == null) {
-            return;
-        }
-        final long latestTimestamp =
-            mBatteryHistoryKeys[mBatteryHistoryKeys.length - 1];
-        mBatteryChartView.setLatestTimestamp(latestTimestamp);
-    }
-
-    private void addFooterPreferenceIfNeeded(boolean containAppItems) {
-        if (mIsFooterPrefAdded || mFooterPreference == null) {
-            return;
-        }
-        mIsFooterPrefAdded = true;
-        mFooterPreference.setTitle(mPrefContext.getString(
-            containAppItems
-                ? R.string.battery_usage_screen_footer
-                : R.string.battery_usage_screen_footer_empty));
-        mHandler.post(() -> mPreferenceScreen.addPreference(mFooterPreference));
-    }
-
-    private static boolean contains(String target, CharSequence[] packageNames) {
-        if (target != null && packageNames != null) {
-            for (CharSequence packageName : packageNames) {
-                if (TextUtils.equals(target, packageName)) {
-                    return true;
-                }
-            }
-        }
-        return false;
-    }
-
-    @VisibleForTesting
-    static boolean validateUsageTime(BatteryDiffEntry entry) {
-        final long foregroundUsageTimeInMs = entry.mForegroundUsageTimeInMs;
-        final long backgroundUsageTimeInMs = entry.mBackgroundUsageTimeInMs;
-        final long totalUsageTimeInMs = foregroundUsageTimeInMs + backgroundUsageTimeInMs;
-        if (foregroundUsageTimeInMs > VALID_USAGE_TIME_DURATION
-                || backgroundUsageTimeInMs > VALID_USAGE_TIME_DURATION
-                || totalUsageTimeInMs > VALID_USAGE_TIME_DURATION) {
-            Log.e(TAG, "validateUsageTime() fail for\n" + entry);
-            return false;
-        }
-        return true;
-    }
-
-    /** Used for {@link AppBatteryPreferenceController}. */
-    public static List<BatteryDiffEntry> getBatteryLast24HrUsageData(Context context) {
-        final long start = System.currentTimeMillis();
-        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
-            FeatureFactory.getFactory(context)
-                .getPowerUsageFeatureProvider(context)
-                .getBatteryHistory(context);
-        if (batteryHistoryMap == null || batteryHistoryMap.isEmpty()) {
-            return null;
-        }
-        Log.d(TAG, String.format("getBatteryLast24HrData() size=%d time=&d/ms",
-            batteryHistoryMap.size(), (System.currentTimeMillis() - start)));
-        final Map<Integer, List<BatteryDiffEntry>> batteryIndexedMap =
-            ConvertUtils.getIndexedUsageMap(
-                context,
-                /*timeSlotSize=*/ CHART_LEVEL_ARRAY_SIZE - 1,
-                getBatteryHistoryKeys(batteryHistoryMap),
-                batteryHistoryMap,
-                /*purgeLowPercentageAndFakeData=*/ true);
-        return batteryIndexedMap.get(BatteryChartView.SELECTED_INDEX_ALL);
-    }
-
-    /** Used for {@link AppBatteryPreferenceController}. */
-    public static BatteryDiffEntry getBatteryLast24HrUsageData(
-            Context context, String packageName, int userId) {
-        if (packageName == null) {
-            return null;
-        }
-        final List<BatteryDiffEntry> entries = getBatteryLast24HrUsageData(context);
-        if (entries == null) {
-            return null;
-        }
-        for (BatteryDiffEntry entry : entries) {
-            final BatteryHistEntry batteryHistEntry = entry.mBatteryHistEntry;
-            if (batteryHistEntry != null
-                    && batteryHistEntry.mConsumerType == ConvertUtils.CONSUMER_TYPE_UID_BATTERY
-                    && batteryHistEntry.mUserId == userId
-                    && packageName.equals(entry.getPackageName())) {
-                return entry;
-            }
-        }
-        return null;
-    }
-
-    private static long[] getBatteryHistoryKeys(
-            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
-        final List<Long> batteryHistoryKeyList =
-            new ArrayList<>(batteryHistoryMap.keySet());
-        Collections.sort(batteryHistoryKeyList);
-        final long[] batteryHistoryKeys = new long[CHART_KEY_ARRAY_SIZE];
-        for (int index = 0; index < CHART_KEY_ARRAY_SIZE; index++) {
-            batteryHistoryKeys[index] = batteryHistoryKeyList.get(index);
-        }
-        return batteryHistoryKeys;
-    }
-
-    // Loads all items icon and label in the background.
-    private final class LoadAllItemsInfoTask
-            extends AsyncTask<Void, Void, Map<Integer, List<BatteryDiffEntry>>> {
-
-        private long[] mBatteryHistoryKeysCache;
-        private Map<Long, Map<String, BatteryHistEntry>> mBatteryHistoryMap;
-
-        private LoadAllItemsInfoTask(
-                Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
-            this.mBatteryHistoryMap = batteryHistoryMap;
-            this.mBatteryHistoryKeysCache = mBatteryHistoryKeys;
-        }
-
-        @Override
-        protected Map<Integer, List<BatteryDiffEntry>> doInBackground(Void... voids) {
-            if (mPrefContext == null || mBatteryHistoryKeysCache == null) {
-                return null;
-            }
-            final long startTime = System.currentTimeMillis();
-            final Map<Integer, List<BatteryDiffEntry>> indexedUsageMap =
-                ConvertUtils.getIndexedUsageMap(
-                    mPrefContext, /*timeSlotSize=*/ CHART_LEVEL_ARRAY_SIZE - 1,
-                    mBatteryHistoryKeysCache, mBatteryHistoryMap,
-                    /*purgeLowPercentageAndFakeData=*/ true);
-            // Pre-loads each BatteryDiffEntry relative icon and label for all slots.
-            for (List<BatteryDiffEntry> entries : indexedUsageMap.values()) {
-                entries.forEach(entry -> entry.loadLabelAndIcon());
-            }
-            Log.d(TAG, String.format("execute LoadAllItemsInfoTask in %d/ms",
-                (System.currentTimeMillis() - startTime)));
-            return indexedUsageMap;
-        }
-
-        @Override
-        protected void onPostExecute(
-                Map<Integer, List<BatteryDiffEntry>> indexedUsageMap) {
-            mBatteryHistoryMap = null;
-            mBatteryHistoryKeysCache = null;
-            if (indexedUsageMap == null) {
-                return;
-            }
-            // Posts results back to main thread to refresh UI.
-            mHandler.post(() -> {
-                mBatteryIndexedMap = indexedUsageMap;
-                forceRefreshUi();
-            });
-        }
-    }
-}
diff --git a/src/com/android/settings/fuelgauge/BatteryChartView.java b/src/com/android/settings/fuelgauge/BatteryChartView.java
deleted file mode 100644
index ff61fce..0000000
--- a/src/com/android/settings/fuelgauge/BatteryChartView.java
+++ /dev/null
@@ -1,624 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the
- * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-package com.android.settings.fuelgauge;
-
-import static java.lang.Math.round;
-
-import static com.android.settings.Utils.formatPercentage;
-
-import android.accessibilityservice.AccessibilityServiceInfo;
-import android.content.Context;
-import android.content.res.Resources;
-import android.graphics.Canvas;
-import android.graphics.Color;
-import android.graphics.CornerPathEffect;
-import android.graphics.Paint;
-import android.graphics.Path;
-import android.graphics.Rect;
-import android.os.Handler;
-import android.text.format.DateFormat;
-import android.text.format.DateUtils;
-import android.util.AttributeSet;
-import android.util.Log;
-import android.view.HapticFeedbackConstants;
-import android.view.MotionEvent;
-import android.view.View;
-import android.view.accessibility.AccessibilityManager;
-import android.widget.TextView;
-
-import androidx.appcompat.widget.AppCompatImageView;
-import androidx.annotation.VisibleForTesting;
-
-import com.android.settings.R;
-import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.Utils;
-
-import java.time.Clock;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Locale;
-
-/** A widget component to draw chart graph. */
-public class BatteryChartView extends AppCompatImageView implements View.OnClickListener,
-        AccessibilityManager.AccessibilityStateChangeListener {
-    private static final String TAG = "BatteryChartView";
-    private static final List<String> ACCESSIBILITY_SERVICE_NAMES =
-        Arrays.asList("SwitchAccessService", "TalkBackService", "JustSpeakService");
-
-    private static final int DEFAULT_TRAPEZOID_COUNT = 12;
-    private static final int DEFAULT_TIMESTAMP_COUNT = 4;
-    private static final int TIMESTAMP_GAPS_COUNT = DEFAULT_TIMESTAMP_COUNT - 1;
-    private static final int DIVIDER_COLOR = Color.parseColor("#CDCCC5");
-    private static final long UPDATE_STATE_DELAYED_TIME = 500L;
-
-    /** Selects all trapezoid shapes. */
-    public static final int SELECTED_INDEX_ALL = -1;
-    public static final int SELECTED_INDEX_INVALID = -2;
-
-    /** A callback listener for selected group index is updated. */
-    public interface OnSelectListener {
-        void onSelect(int trapezoidIndex);
-    }
-
-    private int mDividerWidth;
-    private int mDividerHeight;
-    private int mTrapezoidCount;
-    private float mTrapezoidVOffset;
-    private float mTrapezoidHOffset;
-    private boolean mIsSlotsClickabled;
-    private String[] mPercentages = getPercentages();
-
-    @VisibleForTesting int mHoveredIndex = SELECTED_INDEX_INVALID;
-    @VisibleForTesting int mSelectedIndex = SELECTED_INDEX_INVALID;
-    @VisibleForTesting String[] mTimestamps;
-
-    // Colors for drawing the trapezoid shape and dividers.
-    private int mTrapezoidColor;
-    private int mTrapezoidSolidColor;
-    private int mTrapezoidHoverColor;
-    // For drawing the percentage information.
-    private int mTextPadding;
-    private final Rect mIndent = new Rect();
-    private final Rect[] mPercentageBounds =
-        new Rect[] {new Rect(), new Rect(), new Rect()};
-    // For drawing the timestamp information.
-    private final Rect[] mTimestampsBounds =
-        new Rect[] {new Rect(), new Rect(), new Rect(), new Rect()};
-
-    @VisibleForTesting
-    Handler mHandler = new Handler();
-    @VisibleForTesting
-    final Runnable mUpdateClickableStateRun = () -> updateClickableState();
-
-    private int[] mLevels;
-    private Paint mTextPaint;
-    private Paint mDividerPaint;
-    private Paint mTrapezoidPaint;
-
-    @VisibleForTesting
-    Paint mTrapezoidCurvePaint = null;
-    private TrapezoidSlot[] mTrapezoidSlots;
-    // Records the location to calculate selected index.
-    private float mTouchUpEventX = Float.MIN_VALUE;
-    private BatteryChartView.OnSelectListener mOnSelectListener;
-
-    public BatteryChartView(Context context) {
-        super(context, null);
-    }
-
-    public BatteryChartView(Context context, AttributeSet attrs) {
-        super(context, attrs);
-        initializeColors(context);
-        // Registers the click event listener.
-        setOnClickListener(this);
-        setSelectedIndex(SELECTED_INDEX_ALL);
-        setTrapezoidCount(DEFAULT_TRAPEZOID_COUNT);
-        setClickable(false);
-        setLatestTimestamp(0);
-    }
-
-    /** Sets the total trapezoid count for drawing. */
-    public void setTrapezoidCount(int trapezoidCount) {
-        Log.i(TAG, "trapezoidCount:" + trapezoidCount);
-        mTrapezoidCount = trapezoidCount;
-        mTrapezoidSlots = new TrapezoidSlot[trapezoidCount];
-        // Allocates the trapezoid slot array.
-        for (int index = 0; index < trapezoidCount; index++) {
-            mTrapezoidSlots[index] = new TrapezoidSlot();
-        }
-        invalidate();
-    }
-
-    /** Sets all levels value to draw the trapezoid shape */
-    public void setLevels(int[] levels) {
-        Log.d(TAG, "setLevels() " + (levels == null ? "null" : levels.length));
-        if (levels == null) {
-            mLevels = null;
-            return;
-        }
-        // We should provide trapezoid count + 1 data to draw all trapezoids.
-        mLevels = levels.length == mTrapezoidCount + 1 ? levels : null;
-        setClickable(false);
-        invalidate();
-        if (mLevels == null) {
-            return;
-        }
-        // Sets the chart is clickable if there is at least one valid item in it.
-        for (int index = 0; index < mLevels.length - 1; index++) {
-            if (mLevels[index] != 0 && mLevels[index + 1] != 0) {
-                setClickable(true);
-                break;
-            }
-        }
-    }
-
-    /** Sets the selected group index to draw highlight effect. */
-    public void setSelectedIndex(int index) {
-        if (mSelectedIndex != index) {
-            mSelectedIndex = index;
-            invalidate();
-            // Callbacks to the listener if we have.
-            if (mOnSelectListener != null) {
-                mOnSelectListener.onSelect(mSelectedIndex);
-            }
-        }
-    }
-
-    /** Sets the callback to monitor the selected group index. */
-    public void setOnSelectListener(BatteryChartView.OnSelectListener listener) {
-        mOnSelectListener = listener;
-    }
-
-    /** Sets the companion {@link TextView} for percentage information. */
-    public void setCompanionTextView(TextView textView) {
-        if (textView != null) {
-            // Pre-draws the view first to load style atttributions into paint.
-            textView.draw(new Canvas());
-            mTextPaint = textView.getPaint();
-        } else {
-            mTextPaint = null;
-        }
-        setVisibility(View.VISIBLE);
-        requestLayout();
-    }
-
-    /** Sets the latest timestamp for drawing into x-axis information. */
-    public void setLatestTimestamp(long latestTimestamp) {
-        if (latestTimestamp == 0) {
-            latestTimestamp = Clock.systemUTC().millis();
-        }
-        if (mTimestamps == null) {
-            mTimestamps = new String[DEFAULT_TIMESTAMP_COUNT];
-        }
-        final long timeSlotOffset =
-            DateUtils.HOUR_IN_MILLIS * (/*total 24 hours*/ 24 / TIMESTAMP_GAPS_COUNT);
-        final boolean is24HourFormat = DateFormat.is24HourFormat(getContext());
-        for (int index = 0; index < DEFAULT_TIMESTAMP_COUNT; index++) {
-            mTimestamps[index] =
-                ConvertUtils.utcToLocalTimeHour(
-                    getContext(),
-                    latestTimestamp - (TIMESTAMP_GAPS_COUNT - index) * timeSlotOffset,
-                    is24HourFormat);
-        }
-        requestLayout();
-    }
-
-    @Override
-    public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
-        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
-        // Measures text bounds and updates indent configuration.
-        if (mTextPaint != null) {
-            for (int index = 0; index < mPercentages.length; index++) {
-                mTextPaint.getTextBounds(
-                    mPercentages[index], 0, mPercentages[index].length(),
-                    mPercentageBounds[index]);
-            }
-            // Updates the indent configurations.
-            mIndent.top = mPercentageBounds[0].height();
-            mIndent.right = mPercentageBounds[0].width() + mTextPadding;
-
-            if (mTimestamps != null) {
-                int maxHeight = 0;
-                for (int index = 0; index < DEFAULT_TIMESTAMP_COUNT; index++) {
-                    mTextPaint.getTextBounds(
-                        mTimestamps[index], 0, mTimestamps[index].length(),
-                        mTimestampsBounds[index]);
-                    maxHeight = Math.max(maxHeight, mTimestampsBounds[index].height());
-                }
-                mIndent.bottom = maxHeight + round(mTextPadding * 1.5f);
-            }
-            Log.d(TAG, "setIndent:" + mPercentageBounds[0]);
-        } else {
-            mIndent.set(0, 0, 0, 0);
-        }
-    }
-
-    @Override
-    public void draw(Canvas canvas) {
-        super.draw(canvas);
-        drawHorizontalDividers(canvas);
-        drawVerticalDividers(canvas);
-        drawTrapezoids(canvas);
-    }
-
-    @Override
-    public boolean onTouchEvent(MotionEvent event) {
-        // Caches the location to calculate selected trapezoid index.
-        final int action = event.getAction();
-        switch (action) {
-            case MotionEvent.ACTION_UP:
-                mTouchUpEventX = event.getX();
-                break;
-            case MotionEvent.ACTION_CANCEL:
-                mTouchUpEventX = Float.MIN_VALUE; // reset
-                break;
-        }
-        return super.onTouchEvent(event);
-    }
-
-    @Override
-    public boolean onHoverEvent(MotionEvent event) {
-        final int action = event.getAction();
-        switch (action) {
-            case MotionEvent.ACTION_HOVER_ENTER:
-            case MotionEvent.ACTION_HOVER_MOVE:
-                final int trapezoidIndex = getTrapezoidIndex(event.getX());
-                if (mHoveredIndex != trapezoidIndex) {
-                    mHoveredIndex = trapezoidIndex;
-                    invalidate();
-                }
-                break;
-        }
-        return super.onHoverEvent(event);
-    }
-
-    @Override
-    public void onHoverChanged(boolean hovered) {
-        super.onHoverChanged(hovered);
-        if (!hovered) {
-            mHoveredIndex = SELECTED_INDEX_INVALID; // reset
-            invalidate();
-        }
-    }
-
-    @Override
-    public void onClick(View view) {
-        if (mTouchUpEventX == Float.MIN_VALUE) {
-            Log.w(TAG, "invalid motion event for onClick() callback");
-            return;
-        }
-        final int trapezoidIndex = getTrapezoidIndex(mTouchUpEventX);
-        // Ignores the click event if the level is zero.
-        if (trapezoidIndex == SELECTED_INDEX_INVALID
-                || !isValidToDraw(trapezoidIndex)) {
-            return;
-        }
-        // Selects all if users click the same trapezoid item two times.
-        if (trapezoidIndex == mSelectedIndex) {
-            setSelectedIndex(SELECTED_INDEX_ALL);
-        } else {
-            setSelectedIndex(trapezoidIndex);
-        }
-        view.performHapticFeedback(HapticFeedbackConstants.CONTEXT_CLICK);
-    }
-
-    @Override
-    public void onAttachedToWindow() {
-        super.onAttachedToWindow();
-        updateClickableState();
-        mContext.getSystemService(AccessibilityManager.class)
-            .addAccessibilityStateChangeListener(/*listener=*/ this);
-    }
-
-    @Override
-    public void onDetachedFromWindow() {
-        super.onDetachedFromWindow();
-        mContext.getSystemService(AccessibilityManager.class)
-            .removeAccessibilityStateChangeListener(/*listener=*/ this);
-        mHandler.removeCallbacks(mUpdateClickableStateRun);
-    }
-
-    @Override
-    public void onAccessibilityStateChanged(boolean enabled) {
-        Log.d(TAG, "onAccessibilityStateChanged:" + enabled);
-        mHandler.removeCallbacks(mUpdateClickableStateRun);
-        // We should delay it a while since accessibility manager will spend
-        // some times to bind with new enabled accessibility services.
-        mHandler.postDelayed(
-            mUpdateClickableStateRun, UPDATE_STATE_DELAYED_TIME);
-    }
-
-    private void updateClickableState() {
-        final Context context = mContext;
-        mIsSlotsClickabled =
-            FeatureFactory.getFactory(context)
-                    .getPowerUsageFeatureProvider(context)
-                    .isChartGraphSlotsEnabled(context)
-            && !isAccessibilityEnabled(context);
-        Log.d(TAG, "isChartGraphSlotsEnabled:" + mIsSlotsClickabled);
-        setClickable(isClickable());
-        // Initializes the trapezoid curve paint for non-clickable case.
-        if (!mIsSlotsClickabled && mTrapezoidCurvePaint == null) {
-            mTrapezoidCurvePaint = new Paint();
-            mTrapezoidCurvePaint.setAntiAlias(true);
-            mTrapezoidCurvePaint.setColor(mTrapezoidSolidColor);
-            mTrapezoidCurvePaint.setStyle(Paint.Style.STROKE);
-            mTrapezoidCurvePaint.setStrokeWidth(mDividerWidth * 2);
-        } else if (mIsSlotsClickabled) {
-            mTrapezoidCurvePaint = null;
-            // Sets levels again to force update the click state.
-            setLevels(mLevels);
-        }
-        invalidate();
-    }
-
-    @Override
-    public void setClickable(boolean clickable) {
-        super.setClickable(mIsSlotsClickabled && clickable);
-    }
-
-    @VisibleForTesting
-    void setClickableForce(boolean clickable) {
-        super.setClickable(clickable);
-    }
-
-    private void initializeColors(Context context) {
-        setBackgroundColor(Color.TRANSPARENT);
-        mTrapezoidSolidColor = Utils.getColorAccentDefaultColor(context);
-        mTrapezoidColor = Utils.getDisabled(context, mTrapezoidSolidColor);
-        mTrapezoidHoverColor = Utils.getColorAttrDefaultColor(context,
-            com.android.internal.R.attr.colorAccentSecondaryVariant);
-        // Initializes the divider line paint.
-        final Resources resources = getContext().getResources();
-        mDividerWidth = resources.getDimensionPixelSize(R.dimen.chartview_divider_width);
-        mDividerHeight = resources.getDimensionPixelSize(R.dimen.chartview_divider_height);
-        mDividerPaint = new Paint();
-        mDividerPaint.setAntiAlias(true);
-        mDividerPaint.setColor(DIVIDER_COLOR);
-        mDividerPaint.setStyle(Paint.Style.STROKE);
-        mDividerPaint.setStrokeWidth(mDividerWidth);
-        Log.i(TAG, "mDividerWidth:" + mDividerWidth);
-        Log.i(TAG, "mDividerHeight:" + mDividerHeight);
-        // Initializes the trapezoid paint.
-        mTrapezoidHOffset = resources.getDimension(R.dimen.chartview_trapezoid_margin_start);
-        mTrapezoidVOffset = resources.getDimension(R.dimen.chartview_trapezoid_margin_bottom);
-        mTrapezoidPaint = new Paint();
-        mTrapezoidPaint.setAntiAlias(true);
-        mTrapezoidPaint.setColor(mTrapezoidSolidColor);
-        mTrapezoidPaint.setStyle(Paint.Style.FILL);
-        mTrapezoidPaint.setPathEffect(
-            new CornerPathEffect(
-                resources.getDimensionPixelSize(R.dimen.chartview_trapezoid_radius)));
-        // Initializes for drawing text information.
-        mTextPadding = resources.getDimensionPixelSize(R.dimen.chartview_text_padding);
-    }
-
-    private void drawHorizontalDividers(Canvas canvas) {
-        final int width = getWidth() - mIndent.right;
-        final int height = getHeight() - mIndent.top - mIndent.bottom;
-        // Draws the top divider line for 100% curve.
-        float offsetY = mIndent.top + mDividerWidth * .5f;
-        canvas.drawLine(0, offsetY, width, offsetY, mDividerPaint);
-        drawPercentage(canvas, /*index=*/ 0, offsetY);
-
-        // Draws the center divider line for 50% curve.
-        final float availableSpace =
-            height - mDividerWidth * 2 - mTrapezoidVOffset - mDividerHeight;
-        offsetY = mIndent.top + mDividerWidth + availableSpace * .5f;
-        canvas.drawLine(0, offsetY, width, offsetY, mDividerPaint);
-        drawPercentage(canvas, /*index=*/ 1, offsetY);
-
-        // Draws the bottom divider line for 0% curve.
-        offsetY = mIndent.top + (height - mDividerHeight - mDividerWidth * .5f);
-        canvas.drawLine(0, offsetY, width, offsetY, mDividerPaint);
-        drawPercentage(canvas, /*index=*/ 2, offsetY);
-    }
-
-    private void drawPercentage(Canvas canvas, int index, float offsetY) {
-        if (mTextPaint != null) {
-            canvas.drawText(
-                mPercentages[index],
-                getWidth() - mPercentageBounds[index].width() - mPercentageBounds[index].left,
-                offsetY + mPercentageBounds[index].height() *.5f,
-                mTextPaint);
-        }
-    }
-
-    private void drawVerticalDividers(Canvas canvas) {
-        final int width = getWidth() - mIndent.right;
-        final int dividerCount = mTrapezoidCount + 1;
-        final float dividerSpace = dividerCount * mDividerWidth;
-        final float unitWidth = (width - dividerSpace) / (float) mTrapezoidCount;
-        final float bottomY = getHeight() - mIndent.bottom;
-        final float startY = bottomY - mDividerHeight;
-        final float trapezoidSlotOffset = mTrapezoidHOffset + mDividerWidth * .5f;
-        // Draws each vertical dividers.
-        float startX = mDividerWidth * .5f;
-        for (int index = 0; index < dividerCount; index++) {
-            canvas.drawLine(startX, startY, startX, bottomY, mDividerPaint);
-            final float nextX = startX + mDividerWidth + unitWidth;
-            // Updates the trapezoid slots for drawing.
-            if (index < mTrapezoidSlots.length) {
-                mTrapezoidSlots[index].mLeft = round(startX + trapezoidSlotOffset);
-                mTrapezoidSlots[index].mRight = round(nextX - trapezoidSlotOffset);
-            }
-            startX = nextX;
-        }
-        // Draws the timestamp slot information.
-        if (mTimestamps != null) {
-            final float[] xOffsets = new float[DEFAULT_TIMESTAMP_COUNT];
-            final float baselineX = mDividerWidth * .5f;
-            final float offsetX = mDividerWidth + unitWidth;
-            final int slotBarOffset = (/*total 12 bars*/ 12) / TIMESTAMP_GAPS_COUNT;
-            for (int index = 0; index < DEFAULT_TIMESTAMP_COUNT; index++) {
-                xOffsets[index] = baselineX + index * offsetX * slotBarOffset;
-            }
-            drawTimestamp(canvas, xOffsets);
-        }
-    }
-
-    private void drawTimestamp(Canvas canvas, float[] xOffsets) {
-        // Draws the 1st timestamp info.
-        canvas.drawText(
-            mTimestamps[0],
-            xOffsets[0] - mTimestampsBounds[0].left,
-            getTimestampY(0), mTextPaint);
-        final int latestIndex = DEFAULT_TIMESTAMP_COUNT - 1;
-        // Draws the last timestamp info.
-        canvas.drawText(
-            mTimestamps[latestIndex],
-            xOffsets[latestIndex] - mTimestampsBounds[latestIndex].width()
-                    - mTimestampsBounds[latestIndex].left,
-            getTimestampY(latestIndex), mTextPaint);
-        // Draws the rest of timestamp info since it is located in the center.
-        for (int index = 1; index <= DEFAULT_TIMESTAMP_COUNT - 2; index++) {
-            canvas.drawText(
-                mTimestamps[index],
-                xOffsets[index] -
-                    (mTimestampsBounds[index].width() - mTimestampsBounds[index].left) * .5f,
-                getTimestampY(index), mTextPaint);
-
-        }
-    }
-
-    private int getTimestampY(int index) {
-        return getHeight() - mTimestampsBounds[index].height()
-            + (mTimestampsBounds[index].height() + mTimestampsBounds[index].top)
-            + round(mTextPadding * 1.5f);
-    }
-
-    private void drawTrapezoids(Canvas canvas) {
-        // Ignores invalid trapezoid data.
-        if (mLevels == null) {
-            return;
-        }
-        final float trapezoidBottom =
-            getHeight() - mIndent.bottom - mDividerHeight - mDividerWidth
-                - mTrapezoidVOffset;
-        final float availableSpace = trapezoidBottom - mDividerWidth * .5f - mIndent.top;
-        final float unitHeight = availableSpace / 100f;
-        // Draws all trapezoid shapes into the canvas.
-        final Path trapezoidPath = new Path();
-        Path trapezoidCurvePath = null;
-        for (int index = 0; index < mTrapezoidCount; index++) {
-            // Not draws the trapezoid for corner or not initialization cases.
-            if (!isValidToDraw(index)) {
-                if (mTrapezoidCurvePaint != null && trapezoidCurvePath != null) {
-                    canvas.drawPath(trapezoidCurvePath, mTrapezoidCurvePaint);
-                    trapezoidCurvePath = null;
-                }
-                continue;
-            }
-            // Configures the trapezoid paint color.
-            final int trapezoidColor =
-                !mIsSlotsClickabled
-                    ? mTrapezoidColor
-                    : mSelectedIndex == index || mSelectedIndex == SELECTED_INDEX_ALL
-                        ? mTrapezoidSolidColor : mTrapezoidColor;
-            final boolean isHoverState =
-                mIsSlotsClickabled && mHoveredIndex == index && isValidToDraw(mHoveredIndex);
-            mTrapezoidPaint.setColor(isHoverState ? mTrapezoidHoverColor : trapezoidColor);
-
-            final float leftTop = round(trapezoidBottom - mLevels[index] * unitHeight);
-            final float rightTop = round(trapezoidBottom - mLevels[index + 1] * unitHeight);
-            trapezoidPath.reset();
-            trapezoidPath.moveTo(mTrapezoidSlots[index].mLeft, trapezoidBottom);
-            trapezoidPath.lineTo(mTrapezoidSlots[index].mLeft, leftTop);
-            trapezoidPath.lineTo(mTrapezoidSlots[index].mRight, rightTop);
-            trapezoidPath.lineTo(mTrapezoidSlots[index].mRight, trapezoidBottom);
-            // A tricky way to make the trapezoid shape drawing the rounded corner.
-            trapezoidPath.lineTo(mTrapezoidSlots[index].mLeft, trapezoidBottom);
-            trapezoidPath.lineTo(mTrapezoidSlots[index].mLeft, leftTop);
-            // Draws the trapezoid shape into canvas.
-            canvas.drawPath(trapezoidPath, mTrapezoidPaint);
-
-            // Generates path for non-clickable trapezoid curve.
-            if (mTrapezoidCurvePaint != null) {
-                if (trapezoidCurvePath == null) {
-                    trapezoidCurvePath= new Path();
-                    trapezoidCurvePath.moveTo(mTrapezoidSlots[index].mLeft, leftTop);
-                } else {
-                    trapezoidCurvePath.lineTo(mTrapezoidSlots[index].mLeft, leftTop);
-                }
-                trapezoidCurvePath.lineTo(mTrapezoidSlots[index].mRight, rightTop);
-            }
-        }
-        // Draws the trapezoid curve for non-clickable case.
-        if (mTrapezoidCurvePaint != null && trapezoidCurvePath != null) {
-            canvas.drawPath(trapezoidCurvePath, mTrapezoidCurvePaint);
-            trapezoidCurvePath = null;
-        }
-    }
-
-    // Searches the corresponding trapezoid index from x location.
-    private int getTrapezoidIndex(float x) {
-        for (int index = 0; index < mTrapezoidSlots.length; index++) {
-            final TrapezoidSlot slot = mTrapezoidSlots[index];
-            if (x >= slot.mLeft - mTrapezoidHOffset
-                    && x <= slot.mRight + mTrapezoidHOffset) {
-                return index;
-            }
-        }
-        return SELECTED_INDEX_INVALID;
-    }
-
-    private boolean isValidToDraw(int trapezoidIndex) {
-        return mLevels != null
-                && trapezoidIndex >= 0
-                && trapezoidIndex < mLevels.length - 1
-                && mLevels[trapezoidIndex] != 0
-                && mLevels[trapezoidIndex + 1] != 0;
-    }
-
-    private static String[] getPercentages() {
-        return new String[] {
-            formatPercentage(/*percentage=*/ 100, /*round=*/ true),
-            formatPercentage(/*percentage=*/ 50, /*round=*/ true),
-            formatPercentage(/*percentage=*/ 0, /*round=*/ true)};
-    }
-
-    @VisibleForTesting
-    static boolean isAccessibilityEnabled(Context context) {
-        final AccessibilityManager accessibilityManager =
-            context.getSystemService(AccessibilityManager.class);
-        if (!accessibilityManager.isEnabled()) {
-            return false;
-        }
-        final List<AccessibilityServiceInfo> serviceInfoList =
-            accessibilityManager.getEnabledAccessibilityServiceList(
-                AccessibilityServiceInfo.FEEDBACK_SPOKEN
-                    | AccessibilityServiceInfo.FEEDBACK_GENERIC);
-        for (AccessibilityServiceInfo info : serviceInfoList) {
-            for (String serviceName : ACCESSIBILITY_SERVICE_NAMES) {
-                final String serviceId = info.getId();
-                if (serviceId != null && serviceId.contains(serviceName)) {
-                    Log.d(TAG, "acccessibilityEnabled:" + serviceId);
-                    return true;
-                }
-            }
-        }
-        return false;
-    }
-
-    // A container class for each trapezoid left and right location.
-    private static final class TrapezoidSlot {
-        public float mLeft;
-        public float mRight;
-
-        @Override
-        public String toString() {
-            return String.format(Locale.US, "TrapezoidSlot[%f,%f]", mLeft, mRight);
-        }
-    }
-}
diff --git a/src/com/android/settings/fuelgauge/BatteryOptimizeUtils.java b/src/com/android/settings/fuelgauge/BatteryOptimizeUtils.java
index 9306a34..dbfacc6 100644
--- a/src/com/android/settings/fuelgauge/BatteryOptimizeUtils.java
+++ b/src/com/android/settings/fuelgauge/BatteryOptimizeUtils.java
@@ -19,7 +19,15 @@
 import android.annotation.IntDef;
 import android.app.AppOpsManager;
 import android.content.Context;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageManager;
+import android.content.pm.PackageManager;
+import android.content.pm.ParceledListSlice;
+import android.content.pm.UserInfo;
 import android.os.AsyncTask;
+import android.os.UserHandle;
+import android.os.UserManager;
+import android.util.ArraySet;
 import android.util.Log;
 
 import androidx.annotation.VisibleForTesting;
@@ -43,6 +51,15 @@
     private final String mPackageName;
     private final int mUid;
 
+    // If current user is admin, match apps from all users. Otherwise, only match the currect user.
+    private static final int RETRIEVE_FLAG_ADMIN =
+            PackageManager.MATCH_ANY_USER
+                | PackageManager.MATCH_DISABLED_COMPONENTS
+                | PackageManager.MATCH_DISABLED_UNTIL_USED_COMPONENTS;
+    private static final int RETRIEVE_FLAG =
+            PackageManager.MATCH_DISABLED_COMPONENTS
+                | PackageManager.MATCH_DISABLED_UNTIL_USED_COMPONENTS;
+
     // Optimization modes.
     static final int MODE_UNKNOWN = 0;
     static final int MODE_RESTRICTED = 1;
@@ -90,28 +107,20 @@
         return getAppOptimizationMode(mMode, mAllowListed);
     }
 
+    /** Resets optimization mode for all applications. */
+    public static void resetAppOptimizationMode(
+            Context context, IPackageManager ipm, AppOpsManager aom) {
+        resetAppOptimizationMode(context, ipm, aom,
+                PowerAllowlistBackend.getInstance(context), BatteryUtils.getInstance(context));
+    }
+
     /** Sets the {@link OptimizationMode} for associated app. */
     public void setAppUsageState(@OptimizationMode int mode) {
         if (getAppOptimizationMode(mMode, mAllowListed) == mode) {
             Log.w(TAG, "set the same optimization mode for: " + mPackageName);
             return;
         }
-
-        AsyncTask.execute(() -> {
-            switch (mode) {
-                case MODE_RESTRICTED:
-                    setAppOptimizationMode(AppOpsManager.MODE_IGNORED, /* allowListed */ false);
-                    break;
-                case MODE_UNRESTRICTED:
-                    setAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ true);
-                    break;
-                case MODE_OPTIMIZED:
-                    setAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ false);
-                    break;
-                default:
-                    Log.d(TAG, "set unknown app optimization mode.");
-            }
-        });
+        setAppUsageStateInternal(mode, mUid, mPackageName, mBatteryUtils, mPowerAllowListBackend);
     }
 
     /**
@@ -126,25 +135,111 @@
      */
     public boolean isSystemOrDefaultApp() {
         mPowerAllowListBackend.refreshList();
+        return isSystemOrDefaultApp(mPowerAllowListBackend, mPackageName);
+    }
 
-        return mPowerAllowListBackend.isSysAllowlisted(mPackageName)
-                || mPowerAllowListBackend.isDefaultActiveApp(mPackageName);
+    /**
+      * Gets the list of installed applications.
+      */
+    public static ArraySet<ApplicationInfo> getInstalledApplications(
+            Context context, IPackageManager ipm) {
+        final ArraySet<ApplicationInfo> applications = new ArraySet<>();
+        final UserManager um = context.getSystemService(UserManager.class);
+        for (UserInfo userInfo : um.getProfiles(UserHandle.myUserId())) {
+            try {
+                @SuppressWarnings("unchecked")
+                final ParceledListSlice<ApplicationInfo> infoList = ipm.getInstalledApplications(
+                        userInfo.isAdmin() ? RETRIEVE_FLAG_ADMIN : RETRIEVE_FLAG,
+                        userInfo.id);
+                if (infoList != null) {
+                    applications.addAll(infoList.getList());
+                }
+            } catch (Exception e) {
+                Log.e(TAG, "getInstalledApplications() is failed", e);
+                return null;
+            }
+        }
+        // Removes the application which is disabled by the system.
+        applications.removeIf(
+                info -> info.enabledSetting != PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER
+                    && !info.enabled);
+        return applications;
+    }
+
+    @VisibleForTesting
+    static void resetAppOptimizationMode(
+            Context context, IPackageManager ipm, AppOpsManager aom,
+            PowerAllowlistBackend allowlistBackend, BatteryUtils batteryUtils) {
+        final ArraySet<ApplicationInfo> applications = getInstalledApplications(context, ipm);
+        if (applications == null || applications.isEmpty()) {
+            Log.w(TAG, "no data found in the getInstalledApplications()");
+            return;
+        }
+
+        allowlistBackend.refreshList();
+        // Resets optimization mode for each application.
+        for (ApplicationInfo info : applications) {
+            final int mode = aom.checkOpNoThrow(
+                    AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, info.uid, info.packageName);
+            @OptimizationMode
+            final int optimizationMode = getAppOptimizationMode(
+                    mode, allowlistBackend.isAllowlisted(info.packageName));
+            // Ignores default optimized/unknown state or system/default apps.
+            if (optimizationMode == MODE_OPTIMIZED
+                    || optimizationMode == MODE_UNKNOWN
+                    || isSystemOrDefaultApp(allowlistBackend, info.packageName)) {
+                continue;
+            }
+
+            // Resets to the default mode: MODE_OPTIMIZED.
+            setAppUsageStateInternal(MODE_OPTIMIZED, info.uid, info.packageName, batteryUtils,
+                    allowlistBackend);
+        }
     }
 
     String getPackageName() {
         return mPackageName == null ? UNKNOWN_PACKAGE : mPackageName;
     }
 
-    private void setAppOptimizationMode(int appStandbyMode, boolean allowListed) {
+    private static boolean isSystemOrDefaultApp(
+            PowerAllowlistBackend powerAllowlistBackend, String packageName) {
+        return powerAllowlistBackend.isSysAllowlisted(packageName)
+                || powerAllowlistBackend.isDefaultActiveApp(packageName);
+    }
+
+    private static void setAppUsageStateInternal(
+            @OptimizationMode int mode, int uid, String packageName, BatteryUtils batteryUtils,
+            PowerAllowlistBackend powerAllowlistBackend) {
+        if (mode == MODE_UNKNOWN) {
+            Log.d(TAG, "set unknown app optimization mode.");
+            return;
+        }
+
+        // MODE_RESTRICTED = AppOpsManager.MODE_IGNORED + !allowListed
+        // MODE_UNRESTRICTED = AppOpsManager.MODE_ALLOWED + allowListed
+        // MODE_OPTIMIZED = AppOpsManager.MODE_ALLOWED + !allowListed
+        final int appOpsManagerMode =
+                mode == MODE_RESTRICTED ? AppOpsManager.MODE_IGNORED : AppOpsManager.MODE_ALLOWED;
+        final boolean allowListed = mode == MODE_UNRESTRICTED;
+
+        AsyncTask.execute(() -> {
+            setAppOptimizationModeInternal(appOpsManagerMode, allowListed, uid, packageName,
+                    batteryUtils, powerAllowlistBackend);
+        });
+    }
+
+    private static void setAppOptimizationModeInternal(
+            int appStandbyMode, boolean allowListed, int uid, String packageName,
+            BatteryUtils batteryUtils, PowerAllowlistBackend powerAllowlistBackend) {
         try {
-            mBatteryUtils.setForceAppStandby(mUid, mPackageName, appStandbyMode);
+            batteryUtils.setForceAppStandby(uid, packageName, appStandbyMode);
             if (allowListed) {
-                mPowerAllowListBackend.addApp(mPackageName);
+                powerAllowlistBackend.addApp(packageName);
             } else {
-                mPowerAllowListBackend.removeApp(mPackageName);
+                powerAllowlistBackend.removeApp(packageName);
             }
         } catch (Exception e) {
-            Log.e(TAG, "set OPTIMIZED failed for " + mPackageName, e);
+            Log.e(TAG, "set OPTIMIZATION MODE failed for " + packageName, e);
         }
     }
 
@@ -154,8 +249,6 @@
         mMode = mAppOpsManager
                 .checkOpNoThrow(AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, mUid, mPackageName);
         Log.d(TAG, String.format("refresh %s state, allowlisted = %s, mode = %d",
-                mPackageName,
-                mAllowListed,
-                mMode));
+                mPackageName, mAllowListed, mMode));
     }
 }
diff --git a/src/com/android/settings/fuelgauge/BatteryUtils.java b/src/com/android/settings/fuelgauge/BatteryUtils.java
index 29c2fc9..a6c48a4 100644
--- a/src/com/android/settings/fuelgauge/BatteryUtils.java
+++ b/src/com/android/settings/fuelgauge/BatteryUtils.java
@@ -69,6 +69,8 @@
     public static final int UID_REMOVED_APPS = -4;
     /** Special UID value for data usage by tethering. */
     public static final int UID_TETHERING = -5;
+    /** Special UID for aggregated other users. */
+    public static final long UID_OTHER_USERS = Long.MIN_VALUE;
 
     @Retention(RetentionPolicy.SOURCE)
     @IntDef({StatusType.SCREEN_USAGE,
@@ -190,7 +192,7 @@
      * Returns true if the specified battery consumer should be excluded from
      * battery consumption lists, either short or full.
      */
-    boolean shouldHideUidBatteryConsumerUnconditionally(UidBatteryConsumer consumer,
+    public boolean shouldHideUidBatteryConsumerUnconditionally(UidBatteryConsumer consumer,
             String[] packages) {
         final int uid = consumer.getUid();
         return uid == UID_TETHERING
diff --git a/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java b/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
index ef201e4..94a93b8 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@
 import android.net.Uri;
 import android.util.SparseIntArray;
 
+import com.android.settings.fuelgauge.batteryusage.BatteryHistEntry;
 import com.android.settingslib.fuelgauge.Estimate;
 
 import java.util.Map;
@@ -73,6 +74,7 @@
 
     /**
      * Returns an improved projection curve for future battery level.
+     *
      * @param zeroTime timestamps (array keys) are shifted by this amount
      */
     SparseIntArray getEnhancedBatteryPredictionCurve(Context context, long zeroTime);
@@ -84,21 +86,20 @@
 
     /**
      * Checks whether debugging should be enabled for battery estimates.
-     * @return
      */
     boolean isEstimateDebugEnabled();
 
     /**
      * Converts the provided string containing the remaining time into a debug string for enhanced
      * estimates.
-     * @param timeRemaining
+     *
      * @return A string containing the estimate and a label indicating it is an enhanced estimate
      */
     String getEnhancedEstimateDebugString(String timeRemaining);
 
     /**
      * Converts the provided string containing the remaining time into a debug string.
-     * @param timeRemaining
+     *
      * @return A string containing the estimate and a label indicating it is a normal estimate
      */
     String getOldEstimateDebugString(String timeRemaining);
@@ -114,7 +115,7 @@
      * to their next charging time.
      *
      * @param id Optional string used to identify the caller for metrics. Usually the class name of
-     * the caller
+     *           the caller
      */
     boolean getEarlyWarningSignal(Context context, String id);
 
@@ -139,6 +140,11 @@
     boolean isAdaptiveChargingSupported();
 
     /**
+     * Returns {@code true} if current defender mode is extra defend
+     */
+    boolean isExtraDefend();
+
+    /**
      * Gets a intent for one time bypass charge limited to resume charging.
      */
     Intent getResumeChargeIntent();
@@ -149,6 +155,11 @@
     Map<Long, Map<String, BatteryHistEntry>> getBatteryHistory(Context context);
 
     /**
+     * Returns battery history data since last full charge with corresponding timestamp key.
+     */
+    Map<Long, Map<String, BatteryHistEntry>> getBatteryHistorySinceLastFullCharge(Context context);
+
+    /**
      * Returns {@link Uri} to monitor battery history data is update.
      */
     Uri getBatteryHistoryUri();
diff --git a/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java b/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java
index bc25381..0adfc9d 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -26,11 +26,13 @@
 
 import com.android.internal.util.ArrayUtils;
 import com.android.settings.R;
+import com.android.settings.fuelgauge.batteryusage.BatteryHistEntry;
 import com.android.settingslib.fuelgauge.Estimate;
 
 import java.util.Map;
 import java.util.Set;
 
+/** Implementation of {@code PowerUsageFeatureProvider} */
 public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider {
 
     private static final String PACKAGE_CALENDAR_PROVIDER = "com.android.providers.calendar";
@@ -159,11 +161,22 @@
     }
 
     @Override
+    public boolean isExtraDefend() {
+        return false;
+    }
+
+    @Override
     public Map<Long, Map<String, BatteryHistEntry>> getBatteryHistory(Context context) {
         return null;
     }
 
     @Override
+    public Map<Long, Map<String, BatteryHistEntry>> getBatteryHistorySinceLastFullCharge(
+            Context context) {
+        return null;
+    }
+
+    @Override
     public Uri getBatteryHistoryUri() {
         return null;
     }
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
index 4b98587..ea493a3 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
@@ -31,6 +31,7 @@
 import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
 import com.android.settings.fuelgauge.batterytip.tips.LowBatteryTip;
 import com.android.settings.fuelgauge.batterytip.tips.SummaryTip;
+import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.fuelgauge.EstimateKt;
 import com.android.settingslib.utils.AsyncLoaderCompat;
 
@@ -66,13 +67,16 @@
         final BatteryTipPolicy policy = new BatteryTipPolicy(getContext());
         final BatteryInfo batteryInfo = mBatteryUtils.getBatteryInfo(TAG);
         final Context context = getContext();
+        final boolean extraDefend = FeatureFactory.getFactory(context)
+                .getPowerUsageFeatureProvider(context)
+                .isExtraDefend();
 
         tips.add(new LowBatteryDetector(context, policy, batteryInfo).detect());
         tips.add(new HighUsageDetector(context, policy, mBatteryUsageStats, batteryInfo).detect());
         tips.add(new SmartBatteryDetector(
                 context, policy, batteryInfo, context.getContentResolver()).detect());
         tips.add(new EarlyWarningDetector(policy, context).detect());
-        tips.add(new BatteryDefenderDetector(batteryInfo).detect());
+        tips.add(new BatteryDefenderDetector(batteryInfo, extraDefend).detect());
         Collections.sort(tips);
         return tips;
     }
diff --git a/src/com/android/settings/fuelgauge/batterytip/detectors/BatteryDefenderDetector.java b/src/com/android/settings/fuelgauge/batterytip/detectors/BatteryDefenderDetector.java
index 5befa33..367b2b1 100644
--- a/src/com/android/settings/fuelgauge/batterytip/detectors/BatteryDefenderDetector.java
+++ b/src/com/android/settings/fuelgauge/batterytip/detectors/BatteryDefenderDetector.java
@@ -24,10 +24,12 @@
  * Detect whether the battery is overheated
  */
 public class BatteryDefenderDetector implements BatteryTipDetector {
-    private BatteryInfo mBatteryInfo;
+    private final BatteryInfo mBatteryInfo;
+    private final boolean mExtraDefend;
 
-    public BatteryDefenderDetector(BatteryInfo batteryInfo) {
+    public BatteryDefenderDetector(BatteryInfo batteryInfo, boolean extraDefend) {
         mBatteryInfo = batteryInfo;
+        mExtraDefend = extraDefend;
     }
 
     @Override
@@ -36,6 +38,6 @@
                 mBatteryInfo.isOverheated
                     ? BatteryTip.StateType.NEW
                     : BatteryTip.StateType.INVISIBLE;
-        return new BatteryDefenderTip(state);
+        return new BatteryDefenderTip(state, mExtraDefend);
     }
 }
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTip.java
index a2890ad..0a133bb 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTip.java
@@ -18,18 +18,36 @@
 
 import android.app.settings.SettingsEnums;
 import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.os.BatteryManager;
 import android.os.Parcel;
+import android.util.Log;
+
+import androidx.preference.Preference;
 
 import com.android.settings.R;
+import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.widget.CardPreference;
 import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
 
+import java.text.NumberFormat;
+
 /**
  * Tip to show current battery is overheated
  */
 public class BatteryDefenderTip extends BatteryTip {
 
+    private static final String TAG = "BatteryDefenderTip";
+    private boolean mExtraDefend = false;
+
     public BatteryDefenderTip(@StateType int state) {
+        this(state, false);
+    }
+
+    public BatteryDefenderTip(@StateType int state, boolean extraDefend) {
         super(TipType.BATTERY_DEFENDER, state, true /* showDialog */);
+        mExtraDefend = extraDefend;
     }
 
     private BatteryDefenderTip(Parcel in) {
@@ -43,6 +61,14 @@
 
     @Override
     public CharSequence getSummary(Context context) {
+        if (mExtraDefend) {
+            final int extraValue = context.getResources()
+                    .getInteger(R.integer.config_battery_extra_tip_value);
+            final String extraPercentage = NumberFormat.getPercentInstance()
+                    .format(extraValue * 0.01f);
+            return context.getString(
+                    R.string.battery_tip_limited_temporarily_extra_summary, extraPercentage);
+        }
         return context.getString(R.string.battery_tip_limited_temporarily_summary);
     }
 
@@ -62,6 +88,55 @@
                 mState);
     }
 
+    @Override
+    public void updatePreference(Preference preference) {
+        super.updatePreference(preference);
+        final Context context = preference.getContext();
+
+        CardPreference cardPreference = castToCardPreferenceSafely(preference);
+        if (cardPreference == null) {
+            Log.e(TAG, "cast Preference to CardPreference failed");
+            return;
+        }
+
+        cardPreference.setPrimaryButtonText(
+                context.getString(R.string.battery_tip_charge_to_full_button));
+        cardPreference.setPrimaryButtonClickListener(
+                unused -> {
+                    resumeCharging(context);
+                    preference.setVisible(false);
+                });
+        cardPreference.setPrimaryButtonVisible(isPluggedIn(context));
+
+        cardPreference.setSecondaryButtonText(context.getString(R.string.see_more));
+        cardPreference.setSecondaryButtonClickListener(unused -> cardPreference.performClick());
+        cardPreference.setSecondaryButtonVisible(true);
+    }
+
+    private CardPreference castToCardPreferenceSafely(Preference preference) {
+        return preference instanceof CardPreference ? (CardPreference) preference : null;
+    }
+
+    private void resumeCharging(Context context) {
+        final Intent intent =
+                FeatureFactory.getFactory(context)
+                        .getPowerUsageFeatureProvider(context)
+                        .getResumeChargeIntent();
+        if (intent != null) {
+            context.sendBroadcast(intent);
+        }
+
+        Log.i(TAG, "send resume charging broadcast intent=" + intent);
+    }
+
+    private boolean isPluggedIn(Context context) {
+        final Intent batteryIntent =
+                context.registerReceiver(
+                        /* receiver= */ null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
+        return batteryIntent != null
+                && batteryIntent.getIntExtra(BatteryManager.EXTRA_PLUGGED, 0) != 0;
+    }
+
     public static final Creator CREATOR = new Creator() {
         public BatteryTip createFromParcel(Parcel in) {
             return new BatteryDefenderTip(in);
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTip.java
index a0e470f..3c560f8 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTip.java
@@ -21,12 +21,13 @@
 
 import androidx.annotation.VisibleForTesting;
 
+import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
 import com.android.settings.fuelgauge.batterytip.AppInfo;
 import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
 
 /**
  * Tip to suggest user to remove app restriction. This is the empty tip and it is only used in
- * {@link com.android.settings.fuelgauge.AdvancedPowerUsageDetail} to create dialog.
+ * {@link AdvancedPowerUsageDetail} to create dialog.
  */
 public class UnrestrictAppTip extends BatteryTip {
     private AppInfo mAppInfo;
diff --git a/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryAppListPreferenceController.java
similarity index 97%
rename from src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java
rename to src/com/android/settings/fuelgauge/batteryusage/BatteryAppListPreferenceController.java
index 9731ab7..f752dad 100644
--- a/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryAppListPreferenceController.java
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
+ *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
@@ -11,11 +12,9 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- *
- *
  */
 
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.app.Activity;
 import android.content.Context;
@@ -35,8 +34,8 @@
 import android.text.TextUtils;
 import android.text.format.DateUtils;
 import android.util.ArrayMap;
-import android.util.SparseArray;
 import android.util.Log;
+import android.util.SparseArray;
 
 import androidx.annotation.VisibleForTesting;
 import androidx.preference.Preference;
@@ -48,6 +47,8 @@
 import com.android.settings.SettingsActivity;
 import com.android.settings.core.InstrumentedPreferenceFragment;
 import com.android.settings.core.PreferenceControllerMixin;
+import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
+import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.core.AbstractPreferenceController;
 import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -72,6 +73,7 @@
     private static final int MAX_ITEMS_TO_LIST = USE_FAKE_DATA ? 30 : 20;
     private static final int MIN_AVERAGE_POWER_THRESHOLD_MILLI_AMP = 10;
     private static final String MEDIASERVER_PACKAGE_NAME = "mediaserver";
+    private static final String NOT_AVAILABLE = "not_available";
 
     @VisibleForTesting
     PreferenceGroup mAppListGroup;
@@ -230,7 +232,7 @@
         if (sConfig.shouldShowBatteryAttributionList(mContext)) {
             final int dischargePercentage = getDischargePercentage(batteryUsageStats);
             final List<BatteryEntry> usageList =
-                getCoalescedUsageList(showAllApps, /*loadDataInBackground=*/ true);
+                    getCoalescedUsageList(showAllApps, /*loadDataInBackground=*/ true);
             final double totalPower = batteryUsageStats.getConsumedPower();
             final int numSippers = usageList.size();
             for (int i = 0; i < numSippers; i++) {
@@ -292,7 +294,7 @@
         }
         final int dischargePercentage = getDischargePercentage(batteryUsageStats);
         final List<BatteryEntry> usageList =
-            getCoalescedUsageList(showAllApps, /*loadDataInBackground=*/ false);
+                getCoalescedUsageList(showAllApps, /*loadDataInBackground=*/ false);
         final double totalPower = batteryUsageStats.getConsumedPower();
         for (int i = 0; i < usageList.size(); i++) {
             final BatteryEntry entry = usageList.get(i);
@@ -458,8 +460,8 @@
 
     private void cacheRemoveAllPrefs(PreferenceGroup group) {
         mPreferenceCache = new ArrayMap<>();
-        final int N = group.getPreferenceCount();
-        for (int i = 0; i < N; i++) {
+        final int n = group.getPreferenceCount();
+        for (int i = 0; i < n; i++) {
             Preference p = group.getPreference(i);
             if (TextUtils.isEmpty(p.getKey())) {
                 continue;
@@ -563,7 +565,6 @@
     }
 
     private void addNotAvailableMessage() {
-        final String NOT_AVAILABLE = "not_available";
         Preference notAvailable = getCachedPreference(NOT_AVAILABLE);
         if (notAvailable == null) {
             notAvailable = new Preference(mPrefContext);
diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java
new file mode 100644
index 0000000..88bec0d
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java
@@ -0,0 +1,689 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage;
+
+import android.app.settings.SettingsEnums;
+import android.content.Context;
+import android.content.res.Configuration;
+import android.graphics.drawable.Drawable;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Looper;
+import android.text.TextUtils;
+import android.text.format.DateFormat;
+import android.text.format.DateUtils;
+import android.util.Log;
+import android.view.View;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceGroup;
+import androidx.preference.PreferenceScreen;
+
+import com.android.settings.R;
+import com.android.settings.SettingsActivity;
+import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.PreferenceControllerMixin;
+import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnCreate;
+import com.android.settingslib.core.lifecycle.events.OnDestroy;
+import com.android.settingslib.core.lifecycle.events.OnResume;
+import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState;
+import com.android.settingslib.utils.StringUtil;
+import com.android.settingslib.widget.FooterPreference;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/** Controls the update for chart graph and the list items. */
+public class BatteryChartPreferenceController extends AbstractPreferenceController
+        implements PreferenceControllerMixin, LifecycleObserver, OnCreate, OnDestroy,
+        OnSaveInstanceState, OnResume, ExpandDividerPreference.OnExpandListener {
+    private static final String TAG = "BatteryChartPreferenceController";
+    private static final String KEY_FOOTER_PREF = "battery_graph_footer";
+    private static final String PACKAGE_NAME_NONE = "none";
+
+    private static final long VALID_USAGE_TIME_DURATION = DateUtils.HOUR_IN_MILLIS * 2;
+    private static final long VALID_DIFF_DURATION = DateUtils.MINUTE_IN_MILLIS * 3;
+
+    // Keys for bundle instance to restore configurations.
+    private static final String KEY_EXPAND_SYSTEM_INFO = "expand_system_info";
+    private static final String KEY_DAILY_CHART_INDEX = "daily_chart_index";
+    private static final String KEY_HOURLY_CHART_INDEX = "hourly_chart_index";
+
+    private static int sUiMode = Configuration.UI_MODE_NIGHT_UNDEFINED;
+
+    @VisibleForTesting
+    Map<Integer, Map<Integer, BatteryDiffData>> mBatteryUsageMap;
+
+    @VisibleForTesting
+    Context mPrefContext;
+    @VisibleForTesting
+    BatteryUtils mBatteryUtils;
+    @VisibleForTesting
+    PreferenceGroup mAppListPrefGroup;
+    @VisibleForTesting
+    ExpandDividerPreference mExpandDividerPreference;
+    @VisibleForTesting
+    boolean mIsExpanded = false;
+
+    @VisibleForTesting
+    BatteryChartView mDailyChartView;
+    @VisibleForTesting
+    BatteryChartView mHourlyChartView;
+
+    @VisibleForTesting
+    int mDailyChartIndex = BatteryChartViewModel.SELECTED_INDEX_ALL;
+    @VisibleForTesting
+    int mHourlyChartIndex = BatteryChartViewModel.SELECTED_INDEX_ALL;
+
+    private boolean mIs24HourFormat;
+    private boolean mIsFooterPrefAdded = false;
+    private PreferenceScreen mPreferenceScreen;
+    private FooterPreference mFooterPreference;
+    // Daily view model only saves abbreviated day of week texts (e.g. MON). This field saves the
+    // full day of week texts (e.g. Monday), which is used in category title and battery detail
+    // page.
+    private List<String> mDailyTimestampFullTexts;
+    private BatteryChartViewModel mDailyViewModel;
+    private List<BatteryChartViewModel> mHourlyViewModels;
+
+    private final String mPreferenceKey;
+    private final SettingsActivity mActivity;
+    private final InstrumentedPreferenceFragment mFragment;
+    private final CharSequence[] mNotAllowShowSummaryPackages;
+    private final MetricsFeatureProvider mMetricsFeatureProvider;
+    private final Handler mHandler = new Handler(Looper.getMainLooper());
+
+    // Preference cache to avoid create new instance each time.
+    @VisibleForTesting
+    final Map<String, Preference> mPreferenceCache = new HashMap<>();
+
+    public BatteryChartPreferenceController(
+            Context context, String preferenceKey,
+            Lifecycle lifecycle, SettingsActivity activity,
+            InstrumentedPreferenceFragment fragment) {
+        super(context);
+        mActivity = activity;
+        mFragment = fragment;
+        mPreferenceKey = preferenceKey;
+        mIs24HourFormat = DateFormat.is24HourFormat(context);
+        mMetricsFeatureProvider =
+                FeatureFactory.getFactory(mContext).getMetricsFeatureProvider();
+        mNotAllowShowSummaryPackages =
+                FeatureFactory.getFactory(context)
+                        .getPowerUsageFeatureProvider(context)
+                        .getHideApplicationSummary(context);
+        if (lifecycle != null) {
+            lifecycle.addObserver(this);
+        }
+    }
+
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        if (savedInstanceState == null) {
+            return;
+        }
+        mDailyChartIndex =
+                savedInstanceState.getInt(KEY_DAILY_CHART_INDEX, mDailyChartIndex);
+        mHourlyChartIndex =
+                savedInstanceState.getInt(KEY_HOURLY_CHART_INDEX, mHourlyChartIndex);
+        mIsExpanded =
+                savedInstanceState.getBoolean(KEY_EXPAND_SYSTEM_INFO, mIsExpanded);
+        Log.d(TAG, String.format("onCreate() dailyIndex=%d hourlyIndex=%d isExpanded=%b",
+                mDailyChartIndex, mHourlyChartIndex, mIsExpanded));
+    }
+
+    @Override
+    public void onResume() {
+        final int currentUiMode =
+                mContext.getResources().getConfiguration().uiMode
+                        & Configuration.UI_MODE_NIGHT_MASK;
+        if (sUiMode != currentUiMode) {
+            sUiMode = currentUiMode;
+            BatteryDiffEntry.clearCache();
+            Log.d(TAG, "clear icon and label cache since uiMode is changed");
+        }
+        mIs24HourFormat = DateFormat.is24HourFormat(mContext);
+        mMetricsFeatureProvider.action(mPrefContext, SettingsEnums.OPEN_BATTERY_USAGE);
+    }
+
+    @Override
+    public void onSaveInstanceState(Bundle savedInstance) {
+        if (savedInstance == null) {
+            return;
+        }
+        savedInstance.putInt(KEY_DAILY_CHART_INDEX, mDailyChartIndex);
+        savedInstance.putInt(KEY_HOURLY_CHART_INDEX, mHourlyChartIndex);
+        savedInstance.putBoolean(KEY_EXPAND_SYSTEM_INFO, mIsExpanded);
+        Log.d(TAG, String.format("onSaveInstanceState() dailyIndex=%d hourlyIndex=%d isExpanded=%b",
+                mDailyChartIndex, mHourlyChartIndex, mIsExpanded));
+    }
+
+    @Override
+    public void onDestroy() {
+        if (mActivity.isChangingConfigurations()) {
+            BatteryDiffEntry.clearCache();
+        }
+        mHandler.removeCallbacksAndMessages(/*token=*/ null);
+        mPreferenceCache.clear();
+        if (mAppListPrefGroup != null) {
+            mAppListPrefGroup.removeAll();
+        }
+    }
+
+    @Override
+    public void displayPreference(PreferenceScreen screen) {
+        super.displayPreference(screen);
+        mPreferenceScreen = screen;
+        mPrefContext = screen.getContext();
+        mAppListPrefGroup = screen.findPreference(mPreferenceKey);
+        mAppListPrefGroup.setOrderingAsAdded(false);
+        mAppListPrefGroup.setTitle(mPrefContext.getString(R.string.battery_app_usage));
+        mFooterPreference = screen.findPreference(KEY_FOOTER_PREF);
+        // Removes footer first until usage data is loaded to avoid flashing.
+        if (mFooterPreference != null) {
+            screen.removePreference(mFooterPreference);
+        }
+    }
+
+    @Override
+    public boolean isAvailable() {
+        return true;
+    }
+
+    @Override
+    public String getPreferenceKey() {
+        return mPreferenceKey;
+    }
+
+    @Override
+    public boolean handlePreferenceTreeClick(Preference preference) {
+        if (!(preference instanceof PowerGaugePreference)) {
+            return false;
+        }
+        final PowerGaugePreference powerPref = (PowerGaugePreference) preference;
+        final BatteryDiffEntry diffEntry = powerPref.getBatteryDiffEntry();
+        final BatteryHistEntry histEntry = diffEntry.mBatteryHistEntry;
+        final String packageName = histEntry.mPackageName;
+        final boolean isAppEntry = histEntry.isAppEntry();
+        mMetricsFeatureProvider.action(
+                /* attribution */ SettingsEnums.OPEN_BATTERY_USAGE,
+                /* action */ isAppEntry
+                        ? SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM
+                        : SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM,
+                /* pageId */ SettingsEnums.OPEN_BATTERY_USAGE,
+                TextUtils.isEmpty(packageName) ? PACKAGE_NAME_NONE : packageName,
+                (int) Math.round(diffEntry.getPercentOfTotal()));
+        Log.d(TAG, String.format("handleClick() label=%s key=%s package=%s",
+                diffEntry.getAppLabel(), histEntry.getKey(), histEntry.mPackageName));
+        AdvancedPowerUsageDetail.startBatteryDetailPage(
+                mActivity, mFragment, diffEntry, powerPref.getPercent(),
+                isValidToShowSummary(packageName), getSlotInformation());
+        return true;
+    }
+
+    @Override
+    public void onExpand(boolean isExpanded) {
+        mIsExpanded = isExpanded;
+        mMetricsFeatureProvider.action(
+                mPrefContext,
+                SettingsEnums.ACTION_BATTERY_USAGE_EXPAND_ITEM,
+                isExpanded);
+        refreshExpandUi();
+    }
+
+    void setBatteryHistoryMap(
+            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
+        Log.d(TAG, "setBatteryHistoryMap() " + (batteryHistoryMap == null ? "null"
+                : ("size=" + batteryHistoryMap.size())));
+        final BatteryLevelData batteryLevelData =
+                DataProcessor.getBatteryLevelData(mContext, mHandler, batteryHistoryMap,
+                        batteryUsageMap -> {
+                            mBatteryUsageMap = batteryUsageMap;
+                            refreshUi();
+                        });
+        Log.d(TAG, "getBatteryLevelData: " + batteryLevelData);
+        if (batteryLevelData == null) {
+            mDailyTimestampFullTexts = null;
+            mDailyViewModel = null;
+            mHourlyViewModels = null;
+            refreshUi();
+            return;
+        }
+        mDailyTimestampFullTexts = generateTimestampDayOfWeekTexts(
+                mContext, batteryLevelData.getDailyBatteryLevels().getTimestamps(),
+                /* isAbbreviation= */ false);
+        mDailyViewModel = new BatteryChartViewModel(
+                batteryLevelData.getDailyBatteryLevels().getLevels(),
+                generateTimestampDayOfWeekTexts(
+                        mContext, batteryLevelData.getDailyBatteryLevels().getTimestamps(),
+                        /* isAbbreviation= */ true),
+                BatteryChartViewModel.AxisLabelPosition.CENTER_OF_TRAPEZOIDS);
+        mHourlyViewModels = new ArrayList<>();
+        for (BatteryLevelData.PeriodBatteryLevelData hourlyBatteryLevelsPerDay :
+                batteryLevelData.getHourlyBatteryLevelsPerDay()) {
+            mHourlyViewModels.add(new BatteryChartViewModel(
+                    hourlyBatteryLevelsPerDay.getLevels(),
+                    generateTimestampHourTexts(
+                            mContext, hourlyBatteryLevelsPerDay.getTimestamps()),
+                    BatteryChartViewModel.AxisLabelPosition.BETWEEN_TRAPEZOIDS));
+        }
+        refreshUi();
+    }
+
+    void setBatteryChartView(@NonNull final BatteryChartView dailyChartView,
+            @NonNull final BatteryChartView hourlyChartView) {
+        if (mDailyChartView != dailyChartView || mHourlyChartView != hourlyChartView) {
+            mHandler.post(() -> setBatteryChartViewInner(dailyChartView, hourlyChartView));
+        }
+    }
+
+    private void setBatteryChartViewInner(@NonNull final BatteryChartView dailyChartView,
+            @NonNull final BatteryChartView hourlyChartView) {
+        mDailyChartView = dailyChartView;
+        mDailyChartView.setOnSelectListener(trapezoidIndex -> {
+            if (mDailyChartIndex == trapezoidIndex) {
+                return;
+            }
+            Log.d(TAG, "onDailyChartSelect:" + trapezoidIndex);
+            mDailyChartIndex = trapezoidIndex;
+            mHourlyChartIndex = BatteryChartViewModel.SELECTED_INDEX_ALL;
+            refreshUi();
+            // TODO: Change to log daily data.
+        });
+        mHourlyChartView = hourlyChartView;
+        mHourlyChartView.setOnSelectListener(trapezoidIndex -> {
+            if (mHourlyChartIndex == trapezoidIndex) {
+                return;
+            }
+            Log.d(TAG, "onHourlyChartSelect:" + trapezoidIndex);
+            mHourlyChartIndex = trapezoidIndex;
+            refreshUi();
+            mMetricsFeatureProvider.action(
+                    mPrefContext,
+                    trapezoidIndex == BatteryChartViewModel.SELECTED_INDEX_ALL
+                            ? SettingsEnums.ACTION_BATTERY_USAGE_SHOW_ALL
+                            : SettingsEnums.ACTION_BATTERY_USAGE_TIME_SLOT);
+        });
+        refreshUi();
+    }
+
+    @VisibleForTesting
+    boolean refreshUi() {
+        if (mDailyChartView == null || mHourlyChartView == null) {
+            // Chart views are not initialized.
+            return false;
+        }
+        if (mDailyViewModel == null || mHourlyViewModels == null) {
+            // Fail to get battery level data, show an empty hourly chart view.
+            mDailyChartView.setVisibility(View.GONE);
+            mHourlyChartView.setVisibility(View.VISIBLE);
+            mHourlyChartView.setViewModel(null);
+            removeAndCacheAllPrefs();
+            addFooterPreferenceIfNeeded(false);
+            return false;
+        }
+        if (mBatteryUsageMap == null) {
+            // Battery usage data is not ready, wait for data ready to refresh UI.
+            return false;
+        }
+
+        if (isBatteryLevelDataInOneDay()) {
+            // Only 1 day data, hide the daily chart view.
+            mDailyChartView.setVisibility(View.GONE);
+            mDailyChartIndex = 0;
+        } else {
+            mDailyChartView.setVisibility(View.VISIBLE);
+            mDailyViewModel.setSelectedIndex(mDailyChartIndex);
+            mDailyChartView.setViewModel(mDailyViewModel);
+        }
+
+        if (mDailyChartIndex == BatteryChartViewModel.SELECTED_INDEX_ALL) {
+            // Multiple days are selected, hide the hourly chart view.
+            mHourlyChartView.setVisibility(View.GONE);
+        } else {
+            mHourlyChartView.setVisibility(View.VISIBLE);
+            final BatteryChartViewModel hourlyViewModel = mHourlyViewModels.get(mDailyChartIndex);
+            hourlyViewModel.setSelectedIndex(mHourlyChartIndex);
+            mHourlyChartView.setViewModel(hourlyViewModel);
+        }
+
+        mHandler.post(() -> {
+            final long start = System.currentTimeMillis();
+            removeAndCacheAllPrefs();
+            addAllPreferences();
+            refreshCategoryTitle();
+            Log.d(TAG, String.format("refreshUi is finished in %d/ms",
+                    (System.currentTimeMillis() - start)));
+        });
+        return true;
+    }
+
+    private void addAllPreferences() {
+        final BatteryDiffData batteryDiffData =
+                mBatteryUsageMap.get(mDailyChartIndex).get(mHourlyChartIndex);
+        addFooterPreferenceIfNeeded(batteryDiffData != null
+                && (!batteryDiffData.getAppDiffEntryList().isEmpty()
+                || !batteryDiffData.getSystemDiffEntryList().isEmpty()));
+        if (batteryDiffData == null) {
+            Log.w(TAG, "cannot find BatteryDiffEntry for daily_index: " + mDailyChartIndex
+                    + " hourly_index: " + mHourlyChartIndex);
+            return;
+        }
+        // Adds app entries to the list if it is not empty.
+        if (!batteryDiffData.getAppDiffEntryList().isEmpty()) {
+            addPreferenceToScreen(batteryDiffData.getAppDiffEntryList());
+        }
+        // Adds the expabable divider if we have system entries data.
+        if (!batteryDiffData.getSystemDiffEntryList().isEmpty()) {
+            if (mExpandDividerPreference == null) {
+                mExpandDividerPreference = new ExpandDividerPreference(mPrefContext);
+                mExpandDividerPreference.setOnExpandListener(this);
+                mExpandDividerPreference.setIsExpanded(mIsExpanded);
+            }
+            mExpandDividerPreference.setOrder(
+                    mAppListPrefGroup.getPreferenceCount());
+            mAppListPrefGroup.addPreference(mExpandDividerPreference);
+        }
+        refreshExpandUi();
+    }
+
+    @VisibleForTesting
+    void addPreferenceToScreen(List<BatteryDiffEntry> entries) {
+        if (mAppListPrefGroup == null || entries.isEmpty()) {
+            return;
+        }
+        int prefIndex = mAppListPrefGroup.getPreferenceCount();
+        for (BatteryDiffEntry entry : entries) {
+            boolean isAdded = false;
+            final String appLabel = entry.getAppLabel();
+            final Drawable appIcon = entry.getAppIcon();
+            if (TextUtils.isEmpty(appLabel) || appIcon == null) {
+                Log.w(TAG, "cannot find app resource for:" + entry.getPackageName());
+                continue;
+            }
+            final String prefKey = entry.mBatteryHistEntry.getKey();
+            PowerGaugePreference pref = mAppListPrefGroup.findPreference(prefKey);
+            if (pref != null) {
+                isAdded = true;
+                Log.w(TAG, "preference should be removed for:" + entry.getPackageName());
+            } else {
+                pref = (PowerGaugePreference) mPreferenceCache.get(prefKey);
+            }
+            // Creates new innstance if cached preference is not found.
+            if (pref == null) {
+                pref = new PowerGaugePreference(mPrefContext);
+                pref.setKey(prefKey);
+                mPreferenceCache.put(prefKey, pref);
+            }
+            pref.setIcon(appIcon);
+            pref.setTitle(appLabel);
+            pref.setOrder(prefIndex);
+            pref.setPercent(entry.getPercentOfTotal());
+            pref.setSingleLineTitle(true);
+            // Sets the BatteryDiffEntry to preference for launching detailed page.
+            pref.setBatteryDiffEntry(entry);
+            pref.setEnabled(entry.validForRestriction());
+            setPreferenceSummary(pref, entry);
+            if (!isAdded) {
+                mAppListPrefGroup.addPreference(pref);
+            }
+            prefIndex++;
+        }
+    }
+
+    private void removeAndCacheAllPrefs() {
+        if (mAppListPrefGroup == null
+                || mAppListPrefGroup.getPreferenceCount() == 0) {
+            return;
+        }
+        final int prefsCount = mAppListPrefGroup.getPreferenceCount();
+        for (int index = 0; index < prefsCount; index++) {
+            final Preference pref = mAppListPrefGroup.getPreference(index);
+            if (TextUtils.isEmpty(pref.getKey())) {
+                continue;
+            }
+            mPreferenceCache.put(pref.getKey(), pref);
+        }
+        mAppListPrefGroup.removeAll();
+    }
+
+    private void refreshExpandUi() {
+        final List<BatteryDiffEntry> systemEntries = mBatteryUsageMap.get(mDailyChartIndex).get(
+                mHourlyChartIndex).getSystemDiffEntryList();
+        if (mIsExpanded) {
+            addPreferenceToScreen(systemEntries);
+        } else {
+            // Removes and recycles all system entries to hide all of them.
+            for (BatteryDiffEntry entry : systemEntries) {
+                final String prefKey = entry.mBatteryHistEntry.getKey();
+                final Preference pref = mAppListPrefGroup.findPreference(prefKey);
+                if (pref != null) {
+                    mAppListPrefGroup.removePreference(pref);
+                    mPreferenceCache.put(pref.getKey(), pref);
+                }
+            }
+        }
+    }
+
+    @VisibleForTesting
+    void refreshCategoryTitle() {
+        final String slotInformation = getSlotInformation();
+        Log.d(TAG, String.format("refreshCategoryTitle:%s", slotInformation));
+        if (mAppListPrefGroup != null) {
+            mAppListPrefGroup.setTitle(
+                    getSlotInformation(/*isApp=*/ true, slotInformation));
+        }
+        if (mExpandDividerPreference != null) {
+            mExpandDividerPreference.setTitle(
+                    getSlotInformation(/*isApp=*/ false, slotInformation));
+        }
+    }
+
+    private String getSlotInformation(boolean isApp, String slotInformation) {
+        // TODO: Updates the right slot information from daily and hourly chart selection.
+        // Null means we show all information without a specific time slot.
+        if (slotInformation == null) {
+            return isApp
+                    ? mPrefContext.getString(R.string.battery_app_usage)
+                    : mPrefContext.getString(R.string.battery_system_usage);
+        } else {
+            return isApp
+                    ? mPrefContext.getString(R.string.battery_app_usage_for, slotInformation)
+                    : mPrefContext.getString(R.string.battery_system_usage_for, slotInformation);
+        }
+    }
+
+    @VisibleForTesting
+    String getSlotInformation() {
+        if (mDailyTimestampFullTexts == null || mDailyViewModel == null
+                || mHourlyViewModels == null) {
+            // No data
+            return null;
+        }
+        if (isAllSelected()) {
+            return null;
+        }
+
+        final String selectedDayText = mDailyTimestampFullTexts.get(mDailyChartIndex);
+        if (mHourlyChartIndex == BatteryChartViewModel.SELECTED_INDEX_ALL) {
+            return selectedDayText;
+        }
+
+        final String fromHourText = mHourlyViewModels.get(mDailyChartIndex).texts().get(
+                mHourlyChartIndex);
+        final String toHourText = mHourlyViewModels.get(mDailyChartIndex).texts().get(
+                mHourlyChartIndex + 1);
+        final String selectedHourText =
+                String.format("%s%s%s", fromHourText, mIs24HourFormat ? "-" : " - ", toHourText);
+        if (isBatteryLevelDataInOneDay()) {
+            return selectedHourText;
+        }
+
+        return String.format("%s %s", selectedDayText, selectedHourText);
+    }
+
+    @VisibleForTesting
+    void setPreferenceSummary(
+            PowerGaugePreference preference, BatteryDiffEntry entry) {
+        final long foregroundUsageTimeInMs = entry.mForegroundUsageTimeInMs;
+        final long backgroundUsageTimeInMs = entry.mBackgroundUsageTimeInMs;
+        final long totalUsageTimeInMs = foregroundUsageTimeInMs + backgroundUsageTimeInMs;
+        // Checks whether the package is allowed to show summary or not.
+        if (!isValidToShowSummary(entry.getPackageName())) {
+            preference.setSummary(null);
+            return;
+        }
+        String usageTimeSummary = null;
+        // Not shows summary for some system components without usage time.
+        if (totalUsageTimeInMs == 0) {
+            preference.setSummary(null);
+            // Shows background summary only if we don't have foreground usage time.
+        } else if (foregroundUsageTimeInMs == 0 && backgroundUsageTimeInMs != 0) {
+            usageTimeSummary = buildUsageTimeInfo(backgroundUsageTimeInMs, true);
+            // Shows total usage summary only if total usage time is small.
+        } else if (totalUsageTimeInMs < DateUtils.MINUTE_IN_MILLIS) {
+            usageTimeSummary = buildUsageTimeInfo(totalUsageTimeInMs, false);
+        } else {
+            usageTimeSummary = buildUsageTimeInfo(totalUsageTimeInMs, false);
+            // Shows background usage time if it is larger than a minute.
+            if (backgroundUsageTimeInMs > 0) {
+                usageTimeSummary +=
+                        "\n" + buildUsageTimeInfo(backgroundUsageTimeInMs, true);
+            }
+        }
+        preference.setSummary(usageTimeSummary);
+    }
+
+    private String buildUsageTimeInfo(long usageTimeInMs, boolean isBackground) {
+        if (usageTimeInMs < DateUtils.MINUTE_IN_MILLIS) {
+            return mPrefContext.getString(
+                    isBackground
+                            ? R.string.battery_usage_background_less_than_one_minute
+                            : R.string.battery_usage_total_less_than_one_minute);
+        }
+        final CharSequence timeSequence =
+                StringUtil.formatElapsedTime(mPrefContext, usageTimeInMs,
+                        /*withSeconds=*/ false, /*collapseTimeUnit=*/ false);
+        final int resourceId =
+                isBackground
+                        ? R.string.battery_usage_for_background_time
+                        : R.string.battery_usage_for_total_time;
+        return mPrefContext.getString(resourceId, timeSequence);
+    }
+
+    @VisibleForTesting
+    boolean isValidToShowSummary(String packageName) {
+        return !DataProcessor.contains(packageName, mNotAllowShowSummaryPackages);
+    }
+
+    private void addFooterPreferenceIfNeeded(boolean containAppItems) {
+        if (mIsFooterPrefAdded || mFooterPreference == null) {
+            return;
+        }
+        mIsFooterPrefAdded = true;
+        mFooterPreference.setTitle(mPrefContext.getString(
+                containAppItems
+                        ? R.string.battery_usage_screen_footer
+                        : R.string.battery_usage_screen_footer_empty));
+        mHandler.post(() -> mPreferenceScreen.addPreference(mFooterPreference));
+    }
+
+    private boolean isBatteryLevelDataInOneDay() {
+        return mHourlyViewModels != null && mHourlyViewModels.size() == 1;
+    }
+
+    private boolean isAllSelected() {
+        return (isBatteryLevelDataInOneDay()
+                || mDailyChartIndex == BatteryChartViewModel.SELECTED_INDEX_ALL)
+                && mHourlyChartIndex == BatteryChartViewModel.SELECTED_INDEX_ALL;
+    }
+
+    private static List<String> generateTimestampDayOfWeekTexts(@NonNull final Context context,
+            @NonNull final List<Long> timestamps, final boolean isAbbreviation) {
+        final ArrayList<String> texts = new ArrayList<>();
+        for (Long timestamp : timestamps) {
+            texts.add(ConvertUtils.utcToLocalTimeDayOfWeek(context, timestamp, isAbbreviation));
+        }
+        return texts;
+    }
+
+    private static List<String> generateTimestampHourTexts(
+            @NonNull final Context context, @NonNull final List<Long> timestamps) {
+        final boolean is24HourFormat = DateFormat.is24HourFormat(context);
+        final ArrayList<String> texts = new ArrayList<>();
+        for (Long timestamp : timestamps) {
+            texts.add(ConvertUtils.utcToLocalTimeHour(context, timestamp, is24HourFormat));
+        }
+        return texts;
+    }
+
+    /** Used for {@link AppBatteryPreferenceController}. */
+    public static List<BatteryDiffEntry> getAppBatteryUsageData(Context context) {
+        final long start = System.currentTimeMillis();
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
+                FeatureFactory.getFactory(context)
+                        .getPowerUsageFeatureProvider(context)
+                        .getBatteryHistorySinceLastFullCharge(context);
+        if (batteryHistoryMap == null || batteryHistoryMap.isEmpty()) {
+            return null;
+        }
+        Log.d(TAG, String.format("getBatterySinceLastFullChargeUsageData() size=%d time=%d/ms",
+                batteryHistoryMap.size(), (System.currentTimeMillis() - start)));
+
+        final Map<Integer, Map<Integer, BatteryDiffData>> batteryUsageData =
+                DataProcessor.getBatteryUsageData(context, batteryHistoryMap);
+        return batteryUsageData == null
+                ? null
+                : batteryUsageData
+                        .get(BatteryChartViewModel.SELECTED_INDEX_ALL)
+                        .get(BatteryChartViewModel.SELECTED_INDEX_ALL)
+                        .getAppDiffEntryList();
+    }
+
+    /** Used for {@link AppBatteryPreferenceController}. */
+    public static BatteryDiffEntry getAppBatteryUsageData(
+            Context context, String packageName, int userId) {
+        if (packageName == null) {
+            return null;
+        }
+        final List<BatteryDiffEntry> entries = getAppBatteryUsageData(context);
+        if (entries == null) {
+            return null;
+        }
+        for (BatteryDiffEntry entry : entries) {
+            final BatteryHistEntry batteryHistEntry = entry.mBatteryHistEntry;
+            if (batteryHistEntry != null
+                    && batteryHistEntry.mConsumerType == ConvertUtils.CONSUMER_TYPE_UID_BATTERY
+                    && batteryHistEntry.mUserId == userId
+                    && packageName.equals(entry.getPackageName())) {
+                return entry;
+            }
+        }
+        return null;
+    }
+}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryChartView.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartView.java
new file mode 100644
index 0000000..e668b37
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartView.java
@@ -0,0 +1,679 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.fuelgauge.batteryusage;
+
+import static com.android.settings.Utils.formatPercentage;
+
+import static java.lang.Math.round;
+import static java.util.Objects.requireNonNull;
+
+import android.accessibilityservice.AccessibilityServiceInfo;
+import android.content.Context;
+import android.content.res.Resources;
+import android.graphics.Canvas;
+import android.graphics.Color;
+import android.graphics.CornerPathEffect;
+import android.graphics.Paint;
+import android.graphics.Path;
+import android.graphics.Rect;
+import android.os.Handler;
+import android.util.AttributeSet;
+import android.util.Log;
+import android.view.HapticFeedbackConstants;
+import android.view.MotionEvent;
+import android.view.View;
+import android.view.accessibility.AccessibilityManager;
+import android.widget.TextView;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.appcompat.widget.AppCompatImageView;
+
+import com.android.settings.R;
+import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.Utils;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Locale;
+
+/** A widget component to draw chart graph. */
+public class BatteryChartView extends AppCompatImageView implements View.OnClickListener,
+        AccessibilityManager.AccessibilityStateChangeListener {
+    private static final String TAG = "BatteryChartView";
+    private static final List<String> ACCESSIBILITY_SERVICE_NAMES =
+            Arrays.asList("SwitchAccessService", "TalkBackService", "JustSpeakService");
+
+    private static final int DIVIDER_COLOR = Color.parseColor("#CDCCC5");
+    private static final long UPDATE_STATE_DELAYED_TIME = 500L;
+
+    /** A callback listener for selected group index is updated. */
+    public interface OnSelectListener {
+        /** The callback function for selected group index is updated. */
+        void onSelect(int trapezoidIndex);
+    }
+
+    private BatteryChartViewModel mViewModel;
+
+    private int mDividerWidth;
+    private int mDividerHeight;
+    private float mTrapezoidVOffset;
+    private float mTrapezoidHOffset;
+    private boolean mIsSlotsClickabled;
+    private String[] mPercentages = getPercentages();
+
+    @VisibleForTesting
+    int mHoveredIndex = BatteryChartViewModel.SELECTED_INDEX_INVALID;
+
+    // Colors for drawing the trapezoid shape and dividers.
+    private int mTrapezoidColor;
+    private int mTrapezoidSolidColor;
+    private int mTrapezoidHoverColor;
+    // For drawing the percentage information.
+    private int mTextPadding;
+    private final Rect mIndent = new Rect();
+    private final Rect[] mPercentageBounds =
+            new Rect[]{new Rect(), new Rect(), new Rect()};
+    // For drawing the axis label information.
+    private final List<Rect> mAxisLabelsBounds = new ArrayList<>();
+
+
+    @VisibleForTesting
+    Handler mHandler = new Handler();
+    @VisibleForTesting
+    final Runnable mUpdateClickableStateRun = () -> updateClickableState();
+
+    private Paint mTextPaint;
+    private Paint mDividerPaint;
+    private Paint mTrapezoidPaint;
+
+    @VisibleForTesting
+    Paint mTrapezoidCurvePaint = null;
+    @VisibleForTesting
+    TrapezoidSlot[] mTrapezoidSlots;
+    // Records the location to calculate selected index.
+    @VisibleForTesting
+    float mTouchUpEventX = Float.MIN_VALUE;
+    private BatteryChartView.OnSelectListener mOnSelectListener;
+
+    public BatteryChartView(Context context) {
+        super(context, null);
+    }
+
+    public BatteryChartView(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        initializeColors(context);
+        // Registers the click event listener.
+        setOnClickListener(this);
+        setClickable(false);
+        requestLayout();
+    }
+
+    /** Sets the data model of this view. */
+    public void setViewModel(BatteryChartViewModel viewModel) {
+        if (viewModel == null) {
+            mViewModel = null;
+            invalidate();
+            return;
+        }
+
+        Log.d(TAG, String.format("setViewModel(): size: %d, selectedIndex: %d.",
+                viewModel.size(), viewModel.selectedIndex()));
+        mViewModel = viewModel;
+        initializeAxisLabelsBounds();
+        initializeTrapezoidSlots(viewModel.size() - 1);
+        setClickable(hasAnyValidTrapezoid(viewModel));
+        requestLayout();
+    }
+
+    /** Sets the callback to monitor the selected group index. */
+    public void setOnSelectListener(BatteryChartView.OnSelectListener listener) {
+        mOnSelectListener = listener;
+    }
+
+    /** Sets the companion {@link TextView} for percentage information. */
+    public void setCompanionTextView(TextView textView) {
+        if (textView != null) {
+            // Pre-draws the view first to load style atttributions into paint.
+            textView.draw(new Canvas());
+            mTextPaint = textView.getPaint();
+        } else {
+            mTextPaint = null;
+        }
+        requestLayout();
+    }
+
+    @Override
+    public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
+        // Measures text bounds and updates indent configuration.
+        if (mTextPaint != null) {
+            mTextPaint.setTextAlign(Paint.Align.LEFT);
+            for (int index = 0; index < mPercentages.length; index++) {
+                mTextPaint.getTextBounds(
+                        mPercentages[index], 0, mPercentages[index].length(),
+                        mPercentageBounds[index]);
+            }
+            // Updates the indent configurations.
+            mIndent.top = mPercentageBounds[0].height();
+            mIndent.right = mPercentageBounds[0].width() + mTextPadding;
+
+            if (mViewModel != null) {
+                int maxTop = 0;
+                for (int index = 0; index < mViewModel.size(); index++) {
+                    final String text = mViewModel.texts().get(index);
+                    mTextPaint.getTextBounds(text, 0, text.length(), mAxisLabelsBounds.get(index));
+                    maxTop = Math.max(maxTop, -mAxisLabelsBounds.get(index).top);
+                }
+                mIndent.bottom = maxTop + round(mTextPadding * 2f);
+            }
+            Log.d(TAG, "setIndent:" + mPercentageBounds[0]);
+        } else {
+            mIndent.set(0, 0, 0, 0);
+        }
+    }
+
+    @Override
+    public void draw(Canvas canvas) {
+        super.draw(canvas);
+        // Before mLevels initialized, the count of trapezoids is unknown. Only draws the
+        // horizontal percentages and dividers.
+        drawHorizontalDividers(canvas);
+        if (mViewModel == null) {
+            return;
+        }
+        drawVerticalDividers(canvas);
+        drawTrapezoids(canvas);
+    }
+
+    @Override
+    public boolean onTouchEvent(MotionEvent event) {
+        // Caches the location to calculate selected trapezoid index.
+        final int action = event.getAction();
+        switch (action) {
+            case MotionEvent.ACTION_UP:
+                mTouchUpEventX = event.getX();
+                break;
+            case MotionEvent.ACTION_CANCEL:
+                mTouchUpEventX = Float.MIN_VALUE; // reset
+                break;
+        }
+        return super.onTouchEvent(event);
+    }
+
+    @Override
+    public boolean onHoverEvent(MotionEvent event) {
+        final int action = event.getAction();
+        switch (action) {
+            case MotionEvent.ACTION_HOVER_ENTER:
+            case MotionEvent.ACTION_HOVER_MOVE:
+                final int trapezoidIndex = getTrapezoidIndex(event.getX());
+                if (mHoveredIndex != trapezoidIndex) {
+                    mHoveredIndex = trapezoidIndex;
+                    invalidate();
+                }
+                break;
+        }
+        return super.onHoverEvent(event);
+    }
+
+    @Override
+    public void onHoverChanged(boolean hovered) {
+        super.onHoverChanged(hovered);
+        if (!hovered) {
+            mHoveredIndex = BatteryChartViewModel.SELECTED_INDEX_INVALID; // reset
+            invalidate();
+        }
+    }
+
+    @Override
+    public void onClick(View view) {
+        if (mTouchUpEventX == Float.MIN_VALUE) {
+            Log.w(TAG, "invalid motion event for onClick() callback");
+            return;
+        }
+        final int trapezoidIndex = getTrapezoidIndex(mTouchUpEventX);
+        // Ignores the click event if the level is zero.
+        if (trapezoidIndex == BatteryChartViewModel.SELECTED_INDEX_INVALID
+                || !isValidToDraw(mViewModel, trapezoidIndex)) {
+            return;
+        }
+        if (mOnSelectListener != null) {
+            // Selects all if users click the same trapezoid item two times.
+            mOnSelectListener.onSelect(
+                    trapezoidIndex == mViewModel.selectedIndex()
+                            ? BatteryChartViewModel.SELECTED_INDEX_ALL : trapezoidIndex);
+        }
+        view.performHapticFeedback(HapticFeedbackConstants.CONTEXT_CLICK);
+    }
+
+    @Override
+    public void onAttachedToWindow() {
+        super.onAttachedToWindow();
+        updateClickableState();
+        mContext.getSystemService(AccessibilityManager.class)
+                .addAccessibilityStateChangeListener(/*listener=*/ this);
+    }
+
+    @Override
+    public void onDetachedFromWindow() {
+        super.onDetachedFromWindow();
+        mContext.getSystemService(AccessibilityManager.class)
+                .removeAccessibilityStateChangeListener(/*listener=*/ this);
+        mHandler.removeCallbacks(mUpdateClickableStateRun);
+    }
+
+    @Override
+    public void onAccessibilityStateChanged(boolean enabled) {
+        Log.d(TAG, "onAccessibilityStateChanged:" + enabled);
+        mHandler.removeCallbacks(mUpdateClickableStateRun);
+        // We should delay it a while since accessibility manager will spend
+        // some times to bind with new enabled accessibility services.
+        mHandler.postDelayed(
+                mUpdateClickableStateRun, UPDATE_STATE_DELAYED_TIME);
+    }
+
+    private void updateClickableState() {
+        final Context context = mContext;
+        mIsSlotsClickabled =
+                FeatureFactory.getFactory(context)
+                        .getPowerUsageFeatureProvider(context)
+                        .isChartGraphSlotsEnabled(context)
+                        && !isAccessibilityEnabled(context);
+        Log.d(TAG, "isChartGraphSlotsEnabled:" + mIsSlotsClickabled);
+        setClickable(isClickable());
+        // Initializes the trapezoid curve paint for non-clickable case.
+        if (!mIsSlotsClickabled && mTrapezoidCurvePaint == null) {
+            mTrapezoidCurvePaint = new Paint();
+            mTrapezoidCurvePaint.setAntiAlias(true);
+            mTrapezoidCurvePaint.setColor(mTrapezoidSolidColor);
+            mTrapezoidCurvePaint.setStyle(Paint.Style.STROKE);
+            mTrapezoidCurvePaint.setStrokeWidth(mDividerWidth * 2);
+        } else if (mIsSlotsClickabled) {
+            mTrapezoidCurvePaint = null;
+            // Sets view model again to force update the click state.
+            setViewModel(mViewModel);
+        }
+        invalidate();
+    }
+
+    @Override
+    public void setClickable(boolean clickable) {
+        super.setClickable(mIsSlotsClickabled && clickable);
+    }
+
+    @VisibleForTesting
+    void setClickableForce(boolean clickable) {
+        super.setClickable(clickable);
+    }
+
+    private void initializeTrapezoidSlots(int count) {
+        mTrapezoidSlots = new TrapezoidSlot[count];
+        for (int index = 0; index < mTrapezoidSlots.length; index++) {
+            mTrapezoidSlots[index] = new TrapezoidSlot();
+        }
+    }
+
+    private void initializeColors(Context context) {
+        setBackgroundColor(Color.TRANSPARENT);
+        mTrapezoidSolidColor = Utils.getColorAccentDefaultColor(context);
+        mTrapezoidColor = Utils.getDisabled(context, mTrapezoidSolidColor);
+        mTrapezoidHoverColor = Utils.getColorAttrDefaultColor(context,
+                com.android.internal.R.attr.colorAccentSecondaryVariant);
+        // Initializes the divider line paint.
+        final Resources resources = getContext().getResources();
+        mDividerWidth = resources.getDimensionPixelSize(R.dimen.chartview_divider_width);
+        mDividerHeight = resources.getDimensionPixelSize(R.dimen.chartview_divider_height);
+        mDividerPaint = new Paint();
+        mDividerPaint.setAntiAlias(true);
+        mDividerPaint.setColor(DIVIDER_COLOR);
+        mDividerPaint.setStyle(Paint.Style.STROKE);
+        mDividerPaint.setStrokeWidth(mDividerWidth);
+        Log.i(TAG, "mDividerWidth:" + mDividerWidth);
+        Log.i(TAG, "mDividerHeight:" + mDividerHeight);
+        // Initializes the trapezoid paint.
+        mTrapezoidHOffset = resources.getDimension(R.dimen.chartview_trapezoid_margin_start);
+        mTrapezoidVOffset = resources.getDimension(R.dimen.chartview_trapezoid_margin_bottom);
+        mTrapezoidPaint = new Paint();
+        mTrapezoidPaint.setAntiAlias(true);
+        mTrapezoidPaint.setColor(mTrapezoidSolidColor);
+        mTrapezoidPaint.setStyle(Paint.Style.FILL);
+        mTrapezoidPaint.setPathEffect(
+                new CornerPathEffect(
+                        resources.getDimensionPixelSize(R.dimen.chartview_trapezoid_radius)));
+        // Initializes for drawing text information.
+        mTextPadding = resources.getDimensionPixelSize(R.dimen.chartview_text_padding);
+    }
+
+    private void drawHorizontalDividers(Canvas canvas) {
+        final int width = getWidth() - mIndent.right;
+        final int height = getHeight() - mIndent.top - mIndent.bottom;
+        // Draws the top divider line for 100% curve.
+        float offsetY = mIndent.top + mDividerWidth * .5f;
+        canvas.drawLine(0, offsetY, width, offsetY, mDividerPaint);
+        drawPercentage(canvas, /*index=*/ 0, offsetY);
+
+        // Draws the center divider line for 50% curve.
+        final float availableSpace =
+                height - mDividerWidth * 2 - mTrapezoidVOffset - mDividerHeight;
+        offsetY = mIndent.top + mDividerWidth + availableSpace * .5f;
+        canvas.drawLine(0, offsetY, width, offsetY, mDividerPaint);
+        drawPercentage(canvas, /*index=*/ 1, offsetY);
+
+        // Draws the bottom divider line for 0% curve.
+        offsetY = mIndent.top + (height - mDividerHeight - mDividerWidth * .5f);
+        canvas.drawLine(0, offsetY, width, offsetY, mDividerPaint);
+        drawPercentage(canvas, /*index=*/ 2, offsetY);
+    }
+
+    private void drawPercentage(Canvas canvas, int index, float offsetY) {
+        if (mTextPaint != null) {
+            mTextPaint.setTextAlign(Paint.Align.RIGHT);
+            canvas.drawText(
+                    mPercentages[index],
+                    getWidth(),
+                    offsetY + mPercentageBounds[index].height() * .5f,
+                    mTextPaint);
+        }
+    }
+
+    private void drawVerticalDividers(Canvas canvas) {
+        final int width = getWidth() - mIndent.right;
+        final int dividerCount = mTrapezoidSlots.length + 1;
+        final float dividerSpace = dividerCount * mDividerWidth;
+        final float unitWidth = (width - dividerSpace) / (float) mTrapezoidSlots.length;
+        final float bottomY = getHeight() - mIndent.bottom;
+        final float startY = bottomY - mDividerHeight;
+        final float trapezoidSlotOffset = mTrapezoidHOffset + mDividerWidth * .5f;
+        // Draws each vertical dividers.
+        float startX = mDividerWidth * .5f;
+        for (int index = 0; index < dividerCount; index++) {
+            canvas.drawLine(startX, startY, startX, bottomY, mDividerPaint);
+            final float nextX = startX + mDividerWidth + unitWidth;
+            // Updates the trapezoid slots for drawing.
+            if (index < mTrapezoidSlots.length) {
+                mTrapezoidSlots[index].mLeft = round(startX + trapezoidSlotOffset);
+                mTrapezoidSlots[index].mRight = round(nextX - trapezoidSlotOffset);
+            }
+            startX = nextX;
+        }
+        // Draws the axis label slot information.
+        if (mViewModel != null) {
+            final float baselineY = getHeight() - mTextPadding * 1.5f;
+            Rect[] axisLabelDisplayAreas;
+            switch (mViewModel.axisLabelPosition()) {
+                case CENTER_OF_TRAPEZOIDS:
+                    axisLabelDisplayAreas = getAxisLabelDisplayAreas(
+                            /* size= */ mViewModel.size() - 1,
+                            /* baselineX= */ mDividerWidth + unitWidth * .5f,
+                            /* offsetX= */ mDividerWidth + unitWidth,
+                            baselineY,
+                            /* shiftFirstAndLast= */ false);
+                    break;
+                case BETWEEN_TRAPEZOIDS:
+                default:
+                    axisLabelDisplayAreas = getAxisLabelDisplayAreas(
+                            /* size= */ mViewModel.size(),
+                            /* baselineX= */ mDividerWidth * .5f,
+                            /* offsetX= */ mDividerWidth + unitWidth,
+                            baselineY,
+                            /* shiftFirstAndLast= */ true);
+                    break;
+            }
+            drawAxisLabels(canvas, axisLabelDisplayAreas, baselineY);
+        }
+    }
+
+    /** Gets all the axis label texts displaying area positions if they are shown. */
+    private Rect[] getAxisLabelDisplayAreas(final int size, final float baselineX,
+            final float offsetX, final float baselineY, final boolean shiftFirstAndLast) {
+        final Rect[] result = new Rect[size];
+        for (int index = 0; index < result.length; index++) {
+            final float width = mAxisLabelsBounds.get(index).width();
+            float middle = baselineX + index * offsetX;
+            if (shiftFirstAndLast) {
+                if (index == 0) {
+                    middle += width * .5f;
+                }
+                if (index == size - 1) {
+                    middle -= width * .5f;
+                }
+            }
+            final float left = middle - width * .5f;
+            final float right = left + width;
+            final float top = baselineY + mAxisLabelsBounds.get(index).top;
+            final float bottom = top + mAxisLabelsBounds.get(index).height();
+            result[index] = new Rect(round(left), round(top), round(right), round(bottom));
+        }
+        return result;
+    }
+
+    private void drawAxisLabels(Canvas canvas, final Rect[] displayAreas, final float baselineY) {
+        final int lastIndex = displayAreas.length - 1;
+        // Suppose first and last labels are always able to draw.
+        drawAxisLabelText(canvas, 0, displayAreas[0], baselineY);
+        drawAxisLabelText(canvas, lastIndex, displayAreas[lastIndex], baselineY);
+        drawAxisLabelsBetweenStartIndexAndEndIndex(canvas, displayAreas, 0, lastIndex, baselineY);
+    }
+
+    /**
+     * Recursively draws axis labels between the start index and the end index. If the inner number
+     * can be exactly divided into 2 parts, check and draw the middle index label and then
+     * recursively draw the 2 parts. Otherwise, divide into 3 parts. Check and draw the middle two
+     * labels and then recursively draw the 3 parts. If there are any overlaps, skip drawing and go
+     * back to the uplevel of the recursion.
+     */
+    private void drawAxisLabelsBetweenStartIndexAndEndIndex(Canvas canvas,
+            final Rect[] displayAreas, final int startIndex, final int endIndex,
+            final float baselineY) {
+        if (endIndex - startIndex <= 1) {
+            return;
+        }
+        if ((endIndex - startIndex) % 2 == 0) {
+            int middleIndex = (startIndex + endIndex) / 2;
+            if (hasOverlap(displayAreas, startIndex, middleIndex)
+                    || hasOverlap(displayAreas, middleIndex, endIndex)) {
+                return;
+            }
+            drawAxisLabelText(canvas, middleIndex, displayAreas[middleIndex], baselineY);
+            drawAxisLabelsBetweenStartIndexAndEndIndex(
+                    canvas, displayAreas, startIndex, middleIndex, baselineY);
+            drawAxisLabelsBetweenStartIndexAndEndIndex(
+                    canvas, displayAreas, middleIndex, endIndex, baselineY);
+        } else {
+            int middleIndex1 = startIndex + round((endIndex - startIndex) / 3f);
+            int middleIndex2 = startIndex + round((endIndex - startIndex) * 2 / 3f);
+            if (hasOverlap(displayAreas, startIndex, middleIndex1)
+                    || hasOverlap(displayAreas, middleIndex1, middleIndex2)
+                    || hasOverlap(displayAreas, middleIndex2, endIndex)) {
+                return;
+            }
+            drawAxisLabelText(canvas, middleIndex1, displayAreas[middleIndex1], baselineY);
+            drawAxisLabelText(canvas, middleIndex2, displayAreas[middleIndex2], baselineY);
+            drawAxisLabelsBetweenStartIndexAndEndIndex(
+                    canvas, displayAreas, startIndex, middleIndex1, baselineY);
+            drawAxisLabelsBetweenStartIndexAndEndIndex(
+                    canvas, displayAreas, middleIndex1, middleIndex2, baselineY);
+            drawAxisLabelsBetweenStartIndexAndEndIndex(
+                    canvas, displayAreas, middleIndex2, endIndex, baselineY);
+        }
+    }
+
+    private boolean hasOverlap(
+            final Rect[] displayAreas, final int leftIndex, final int rightIndex) {
+        return displayAreas[leftIndex].right + mTextPadding * 2f > displayAreas[rightIndex].left;
+    }
+
+    private void drawAxisLabelText(
+            Canvas canvas, final int index, final Rect displayArea, final float baselineY) {
+        mTextPaint.setTextAlign(Paint.Align.CENTER);
+        canvas.drawText(
+                mViewModel.texts().get(index),
+                displayArea.centerX(),
+                baselineY,
+                mTextPaint);
+    }
+
+    private void drawTrapezoids(Canvas canvas) {
+        // Ignores invalid trapezoid data.
+        if (mViewModel == null) {
+            return;
+        }
+        final float trapezoidBottom =
+                getHeight() - mIndent.bottom - mDividerHeight - mDividerWidth
+                        - mTrapezoidVOffset;
+        final float availableSpace =
+                trapezoidBottom - mDividerWidth * .5f - mIndent.top - mTrapezoidVOffset;
+        final float unitHeight = availableSpace / 100f;
+        // Draws all trapezoid shapes into the canvas.
+        final Path trapezoidPath = new Path();
+        Path trapezoidCurvePath = null;
+        for (int index = 0; index < mTrapezoidSlots.length; index++) {
+            // Not draws the trapezoid for corner or not initialization cases.
+            if (!isValidToDraw(mViewModel, index)) {
+                if (mTrapezoidCurvePaint != null && trapezoidCurvePath != null) {
+                    canvas.drawPath(trapezoidCurvePath, mTrapezoidCurvePaint);
+                    trapezoidCurvePath = null;
+                }
+                continue;
+            }
+            // Configures the trapezoid paint color.
+            final int trapezoidColor = mIsSlotsClickabled && (mViewModel.selectedIndex() == index
+                    || mViewModel.selectedIndex() == BatteryChartViewModel.SELECTED_INDEX_ALL)
+                    ? mTrapezoidSolidColor : mTrapezoidColor;
+            final boolean isHoverState =
+                    mIsSlotsClickabled && mHoveredIndex == index
+                            && isValidToDraw(mViewModel, mHoveredIndex);
+            mTrapezoidPaint.setColor(isHoverState ? mTrapezoidHoverColor : trapezoidColor);
+
+            final float leftTop = round(
+                    trapezoidBottom - requireNonNull(mViewModel.levels().get(index)) * unitHeight);
+            final float rightTop = round(trapezoidBottom
+                    - requireNonNull(mViewModel.levels().get(index + 1)) * unitHeight);
+            trapezoidPath.reset();
+            trapezoidPath.moveTo(mTrapezoidSlots[index].mLeft, trapezoidBottom);
+            trapezoidPath.lineTo(mTrapezoidSlots[index].mLeft, leftTop);
+            trapezoidPath.lineTo(mTrapezoidSlots[index].mRight, rightTop);
+            trapezoidPath.lineTo(mTrapezoidSlots[index].mRight, trapezoidBottom);
+            // A tricky way to make the trapezoid shape drawing the rounded corner.
+            trapezoidPath.lineTo(mTrapezoidSlots[index].mLeft, trapezoidBottom);
+            trapezoidPath.lineTo(mTrapezoidSlots[index].mLeft, leftTop);
+            // Draws the trapezoid shape into canvas.
+            canvas.drawPath(trapezoidPath, mTrapezoidPaint);
+
+            // Generates path for non-clickable trapezoid curve.
+            if (mTrapezoidCurvePaint != null) {
+                if (trapezoidCurvePath == null) {
+                    trapezoidCurvePath = new Path();
+                    trapezoidCurvePath.moveTo(mTrapezoidSlots[index].mLeft, leftTop);
+                } else {
+                    trapezoidCurvePath.lineTo(mTrapezoidSlots[index].mLeft, leftTop);
+                }
+                trapezoidCurvePath.lineTo(mTrapezoidSlots[index].mRight, rightTop);
+            }
+        }
+        // Draws the trapezoid curve for non-clickable case.
+        if (mTrapezoidCurvePaint != null && trapezoidCurvePath != null) {
+            canvas.drawPath(trapezoidCurvePath, mTrapezoidCurvePaint);
+            trapezoidCurvePath = null;
+        }
+    }
+
+    // Searches the corresponding trapezoid index from x location.
+    private int getTrapezoidIndex(float x) {
+        for (int index = 0; index < mTrapezoidSlots.length; index++) {
+            final TrapezoidSlot slot = mTrapezoidSlots[index];
+            if (x >= slot.mLeft - mTrapezoidHOffset
+                    && x <= slot.mRight + mTrapezoidHOffset) {
+                return index;
+            }
+        }
+        return BatteryChartViewModel.SELECTED_INDEX_INVALID;
+    }
+
+    private void initializeAxisLabelsBounds() {
+        mAxisLabelsBounds.clear();
+        for (int i = 0; i < mViewModel.size(); i++) {
+            mAxisLabelsBounds.add(new Rect());
+        }
+    }
+
+    private static boolean isTrapezoidValid(
+            @NonNull BatteryChartViewModel viewModel, int trapezoidIndex) {
+        return viewModel.levels().get(trapezoidIndex) != null
+                && viewModel.levels().get(trapezoidIndex + 1) != null;
+    }
+
+    private static boolean isValidToDraw(BatteryChartViewModel viewModel, int trapezoidIndex) {
+        return viewModel != null
+                && trapezoidIndex >= 0
+                && trapezoidIndex < viewModel.size() - 1
+                && isTrapezoidValid(viewModel, trapezoidIndex);
+    }
+
+    private static boolean hasAnyValidTrapezoid(@NonNull BatteryChartViewModel viewModel) {
+        // Sets the chart is clickable if there is at least one valid item in it.
+        for (int trapezoidIndex = 0; trapezoidIndex < viewModel.size() - 1; trapezoidIndex++) {
+            if (isTrapezoidValid(viewModel, trapezoidIndex)) {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    private static String[] getPercentages() {
+        return new String[]{
+                formatPercentage(/*percentage=*/ 100, /*round=*/ true),
+                formatPercentage(/*percentage=*/ 50, /*round=*/ true),
+                formatPercentage(/*percentage=*/ 0, /*round=*/ true)};
+    }
+
+    @VisibleForTesting
+    static boolean isAccessibilityEnabled(Context context) {
+        final AccessibilityManager accessibilityManager =
+                context.getSystemService(AccessibilityManager.class);
+        if (!accessibilityManager.isEnabled()) {
+            return false;
+        }
+        final List<AccessibilityServiceInfo> serviceInfoList =
+                accessibilityManager.getEnabledAccessibilityServiceList(
+                        AccessibilityServiceInfo.FEEDBACK_SPOKEN
+                                | AccessibilityServiceInfo.FEEDBACK_GENERIC);
+        for (AccessibilityServiceInfo info : serviceInfoList) {
+            for (String serviceName : ACCESSIBILITY_SERVICE_NAMES) {
+                final String serviceId = info.getId();
+                if (serviceId != null && serviceId.contains(serviceName)) {
+                    Log.d(TAG, "acccessibilityEnabled:" + serviceId);
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    // A container class for each trapezoid left and right location.
+    @VisibleForTesting
+    static final class TrapezoidSlot {
+        public float mLeft;
+        public float mRight;
+
+        @Override
+        public String toString() {
+            return String.format(Locale.US, "TrapezoidSlot[%f,%f]", mLeft, mRight);
+        }
+    }
+}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryChartViewModel.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartViewModel.java
new file mode 100644
index 0000000..ac01bfd
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartViewModel.java
@@ -0,0 +1,109 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage;
+
+import androidx.annotation.NonNull;
+import androidx.core.util.Preconditions;
+
+import java.util.List;
+import java.util.Locale;
+import java.util.Objects;
+
+/** The view model of {@code BatteryChartView} */
+class BatteryChartViewModel {
+    private static final String TAG = "BatteryChartViewModel";
+
+    public static final int SELECTED_INDEX_ALL = -1;
+    public static final int SELECTED_INDEX_INVALID = -2;
+
+    // We need at least 2 levels to draw a trapezoid.
+    private static final int MIN_LEVELS_DATA_SIZE = 2;
+
+    enum AxisLabelPosition {
+        BETWEEN_TRAPEZOIDS,
+        CENTER_OF_TRAPEZOIDS,
+    }
+
+    private final List<Integer> mLevels;
+    private final List<String> mTexts;
+    private final AxisLabelPosition mAxisLabelPosition;
+    private int mSelectedIndex = SELECTED_INDEX_ALL;
+
+    BatteryChartViewModel(
+            @NonNull List<Integer> levels, @NonNull List<String> texts,
+            @NonNull AxisLabelPosition axisLabelPosition) {
+        Preconditions.checkArgument(
+                levels.size() == texts.size() && levels.size() >= MIN_LEVELS_DATA_SIZE,
+                String.format(Locale.ENGLISH,
+                        "Invalid BatteryChartViewModel levels.size: %d, texts.size: %d.",
+                        levels.size(), texts.size()));
+        mLevels = levels;
+        mTexts = texts;
+        mAxisLabelPosition = axisLabelPosition;
+    }
+
+    public int size() {
+        return mLevels.size();
+    }
+
+    public List<Integer> levels() {
+        return mLevels;
+    }
+
+    public List<String> texts() {
+        return mTexts;
+    }
+
+    public AxisLabelPosition axisLabelPosition() {
+        return mAxisLabelPosition;
+    }
+
+    public int selectedIndex() {
+        return mSelectedIndex;
+    }
+
+    public void setSelectedIndex(int index) {
+        mSelectedIndex = index;
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(mLevels, mTexts, mSelectedIndex, mAxisLabelPosition);
+    }
+
+    @Override
+    public boolean equals(Object other) {
+        if (this == other) {
+            return true;
+        } else if (!(other instanceof BatteryChartViewModel)) {
+            return false;
+        }
+        final BatteryChartViewModel batteryChartViewModel = (BatteryChartViewModel) other;
+        return Objects.equals(mLevels, batteryChartViewModel.mLevels)
+                && Objects.equals(mTexts, batteryChartViewModel.mTexts)
+                && mAxisLabelPosition == batteryChartViewModel.mAxisLabelPosition
+                && mSelectedIndex == batteryChartViewModel.mSelectedIndex;
+    }
+
+    @Override
+    public String toString() {
+        return String.format(Locale.ENGLISH,
+                "levels: %s,\ntexts: %s,\naxisLabelPosition: %s, selectedIndex: %d",
+                Objects.toString(mLevels), Objects.toString(mTexts), mAxisLabelPosition,
+                mSelectedIndex);
+    }
+}
diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryDiffData.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryDiffData.java
new file mode 100644
index 0000000..b5d4dde
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryDiffData.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage;
+
+import androidx.annotation.NonNull;
+
+import java.util.Collections;
+import java.util.List;
+
+/** Wraps the battery usage diff data for each entry used for battery usage app list. */
+public class BatteryDiffData {
+    private final List<BatteryDiffEntry> mAppEntries;
+    private final List<BatteryDiffEntry> mSystemEntries;
+
+    /** Constructor for the diff entries which already have totalConsumePower value. */
+    public BatteryDiffData(
+            @NonNull List<BatteryDiffEntry> appDiffEntries,
+            @NonNull List<BatteryDiffEntry> systemDiffEntries) {
+        mAppEntries = appDiffEntries;
+        mSystemEntries = systemDiffEntries;
+        sortEntries();
+    }
+
+    /** Constructor for the diff entries which have not set totalConsumePower value. */
+    public BatteryDiffData(
+            @NonNull List<BatteryDiffEntry> appDiffEntries,
+            @NonNull List<BatteryDiffEntry> systemDiffEntries,
+            final double totalConsumePower) {
+        mAppEntries = appDiffEntries;
+        mSystemEntries = systemDiffEntries;
+        setTotalConsumePowerForAllEntries(totalConsumePower);
+        sortEntries();
+    }
+
+    public List<BatteryDiffEntry> getAppDiffEntryList() {
+        return mAppEntries;
+    }
+
+    public List<BatteryDiffEntry> getSystemDiffEntryList() {
+        return mSystemEntries;
+    }
+
+    // Sets total consume power for each entry.
+    private void setTotalConsumePowerForAllEntries(final double totalConsumePower) {
+        mAppEntries.forEach(diffEntry -> diffEntry.setTotalConsumePower(totalConsumePower));
+        mSystemEntries.forEach(diffEntry -> diffEntry.setTotalConsumePower(totalConsumePower));
+    }
+
+    // Sorts entries based on consumed percentage.
+    private void sortEntries() {
+        Collections.sort(mAppEntries, BatteryDiffEntry.COMPARATOR);
+        Collections.sort(mSystemEntries, BatteryDiffEntry.COMPARATOR);
+    }
+}
diff --git a/src/com/android/settings/fuelgauge/BatteryDiffEntry.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryDiffEntry.java
similarity index 71%
rename from src/com/android/settings/fuelgauge/BatteryDiffEntry.java
rename to src/com/android/settings/fuelgauge/batteryusage/BatteryDiffEntry.java
index 403f79c..d4d7a00 100644
--- a/src/com/android/settings/fuelgauge/BatteryDiffEntry.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryDiffEntry.java
@@ -1,17 +1,19 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of the License at
+ * 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.
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.content.Context;
 import android.content.pm.ApplicationInfo;
@@ -26,6 +28,7 @@
 import androidx.annotation.VisibleForTesting;
 
 import com.android.settings.R;
+import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settingslib.utils.StringUtil;
 
 import java.util.Comparator;
@@ -61,11 +64,16 @@
     private UserManager mUserManager;
     private String mDefaultPackageName = null;
 
-    @VisibleForTesting int mAppIconId;
-    @VisibleForTesting String mAppLabel = null;
-    @VisibleForTesting Drawable mAppIcon = null;
-    @VisibleForTesting boolean mIsLoaded = false;
-    @VisibleForTesting boolean mValidForRestriction = true;
+    @VisibleForTesting
+    int mAppIconId;
+    @VisibleForTesting
+    String mAppLabel = null;
+    @VisibleForTesting
+    Drawable mAppIcon = null;
+    @VisibleForTesting
+    boolean mIsLoaded = false;
+    @VisibleForTesting
+    boolean mValidForRestriction = true;
 
     public BatteryDiffEntry(
             Context context,
@@ -85,7 +93,7 @@
     public void setTotalConsumePower(double totalConsumePower) {
         mTotalConsumePower = totalConsumePower;
         mPercentOfTotal = totalConsumePower == 0
-            ? 0 : (mConsumePower / mTotalConsumePower) * 100.0;
+                ? 0 : (mConsumePower / mTotalConsumePower) * 100.0;
     }
 
     /** Gets the percentage of total consumed power. */
@@ -96,24 +104,30 @@
     /** Clones a new instance. */
     public BatteryDiffEntry clone() {
         return new BatteryDiffEntry(
-            this.mContext,
-            this.mForegroundUsageTimeInMs,
-            this.mBackgroundUsageTimeInMs,
-            this.mConsumePower,
-            this.mBatteryHistEntry /*same instance*/);
+                this.mContext,
+                this.mForegroundUsageTimeInMs,
+                this.mBackgroundUsageTimeInMs,
+                this.mConsumePower,
+                this.mBatteryHistEntry /*same instance*/);
     }
 
     /** Gets the app label name for this entry. */
     public String getAppLabel() {
+        if (isOtherUsers()) {
+            return mContext.getString(R.string.battery_usage_other_users);
+        }
         loadLabelAndIcon();
         // Returns default applicationn label if we cannot find it.
         return mAppLabel == null || mAppLabel.length() == 0
-            ? mBatteryHistEntry.mAppLabel
-            : mAppLabel;
+                ? mBatteryHistEntry.mAppLabel
+                : mAppLabel;
     }
 
     /** Gets the app icon {@link Drawable} for this entry. */
     public Drawable getAppIcon() {
+        if (isOtherUsers()) {
+            return mContext.getDrawable(R.drawable.ic_power_system);
+        }
         loadLabelAndIcon();
         return mAppIcon != null && mAppIcon.getConstantState() != null
                 ? mAppIcon.getConstantState().newDrawable()
@@ -129,15 +143,15 @@
     /** Gets the searching package name for UID battery type. */
     public String getPackageName() {
         final String packageName = mDefaultPackageName != null
-            ? mDefaultPackageName : mBatteryHistEntry.mPackageName;
+                ? mDefaultPackageName : mBatteryHistEntry.mPackageName;
         if (packageName == null) {
             return packageName;
         }
         // Removes potential appended process name in the PackageName.
         // From "com.opera.browser:privileged_process0" to "com.opera.browser"
-        final String[] splittedPackageNames = packageName.split(":");
-        return splittedPackageNames != null && splittedPackageNames.length > 0
-            ? splittedPackageNames[0] : packageName;
+        final String[] splitPackageNames = packageName.split(":");
+        return splitPackageNames != null && splitPackageNames.length > 0
+                ? splitPackageNames[0] : packageName;
     }
 
     /** Whether this item is valid for users to launch restriction page? */
@@ -148,6 +162,9 @@
 
     /** Whether the current BatteryDiffEntry is system component or not. */
     public boolean isSystemEntry() {
+        if (isOtherUsers()) {
+            return true;
+        }
         switch (mBatteryHistEntry.mConsumerType) {
             case ConvertUtils.CONSUMER_TYPE_USER_BATTERY:
             case ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY:
@@ -167,6 +184,11 @@
         return false;
     }
 
+    private boolean isOtherUsers() {
+        return mBatteryHistEntry.mConsumerType == ConvertUtils.CONSUMER_TYPE_UID_BATTERY
+                && mBatteryHistEntry.mUid == BatteryUtils.UID_OTHER_USERS;
+    }
+
     void loadLabelAndIcon() {
         if (mIsLoaded) {
             return;
@@ -196,20 +218,20 @@
         switch (mBatteryHistEntry.mConsumerType) {
             case ConvertUtils.CONSUMER_TYPE_USER_BATTERY:
                 final BatteryEntry.NameAndIcon nameAndIconForUser =
-                    BatteryEntry.getNameAndIconFromUserId(
-                        mContext, (int) mBatteryHistEntry.mUserId);
+                        BatteryEntry.getNameAndIconFromUserId(
+                                mContext, (int) mBatteryHistEntry.mUserId);
                 if (nameAndIconForUser != null) {
                     mAppIcon = nameAndIconForUser.mIcon;
                     mAppLabel = nameAndIconForUser.mName;
                     sResourceCache.put(
-                        getKey(),
-                        new BatteryEntry.NameAndIcon(mAppLabel, mAppIcon, /*iconId=*/ 0));
+                            getKey(),
+                            new BatteryEntry.NameAndIcon(mAppLabel, mAppIcon, /*iconId=*/ 0));
                 }
                 break;
             case ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY:
                 final BatteryEntry.NameAndIcon nameAndIconForSystem =
-                    BatteryEntry.getNameAndIconFromPowerComponent(
-                        mContext, mBatteryHistEntry.mDrainType);
+                        BatteryEntry.getNameAndIconFromPowerComponent(
+                                mContext, mBatteryHistEntry.mDrainType);
                 if (nameAndIconForSystem != null) {
                     mAppLabel = nameAndIconForSystem.mName;
                     if (nameAndIconForSystem.mIconId != 0) {
@@ -217,8 +239,8 @@
                         mAppIcon = mContext.getDrawable(nameAndIconForSystem.mIconId);
                     }
                     sResourceCache.put(
-                        getKey(),
-                        new BatteryEntry.NameAndIcon(mAppLabel, mAppIcon, mAppIconId));
+                            getKey(),
+                            new BatteryEntry.NameAndIcon(mAppLabel, mAppIcon, mAppIconId));
                 }
                 break;
             case ConvertUtils.CONSUMER_TYPE_UID_BATTERY:
@@ -231,8 +253,8 @@
                 mAppIcon = getBadgeIconForUser(mAppIcon);
                 if (mAppLabel != null || mAppIcon != null) {
                     sResourceCache.put(
-                        getKey(),
-                        new BatteryEntry.NameAndIcon(mAppLabel, mAppIcon, /*iconId=*/ 0));
+                            getKey(),
+                            new BatteryEntry.NameAndIcon(mAppLabel, mAppIcon, /*iconId=*/ 0));
                 }
                 break;
         }
@@ -251,23 +273,23 @@
         }
         final boolean isValidPackage =
                 BatteryUtils.getInstance(mContext).getPackageUid(getPackageName())
-            != BatteryUtils.UID_NULL;
+                        != BatteryUtils.UID_NULL;
         if (!isValidPackage) {
             mValidForRestriction = false;
             return;
         }
         try {
             mValidForRestriction =
-                mContext.getPackageManager().getPackageInfo(
-                    getPackageName(),
-                    PackageManager.MATCH_DISABLED_COMPONENTS
-                        | PackageManager.MATCH_ANY_USER
-                        | PackageManager.GET_SIGNATURES
-                        | PackageManager.GET_PERMISSIONS)
-                != null;
+                    mContext.getPackageManager().getPackageInfo(
+                            getPackageName(),
+                            PackageManager.MATCH_DISABLED_COMPONENTS
+                                    | PackageManager.MATCH_ANY_USER
+                                    | PackageManager.GET_SIGNATURES
+                                    | PackageManager.GET_PERMISSIONS)
+                            != null;
         } catch (Exception e) {
             Log.e(TAG, String.format("getPackageInfo() error %s for package=%s",
-                e.getCause(), getPackageName()));
+                    e.getCause(), getPackageName()));
             mValidForRestriction = false;
         }
     }
@@ -276,7 +298,7 @@
         final Locale locale = Locale.getDefault();
         if (sCurrentLocale != locale) {
             Log.d(TAG, String.format("clearCache() locale is changed from %s to %s",
-                sCurrentLocale, locale));
+                    sCurrentLocale, locale));
             sCurrentLocale = locale;
             clearCache();
         }
@@ -290,7 +312,7 @@
         if (packageName != null && packageName.length() != 0) {
             try {
                 final ApplicationInfo appInfo =
-                    packageManager.getApplicationInfo(packageName, /*no flags*/ 0);
+                        packageManager.getApplicationInfo(packageName, /*no flags*/ 0);
                 if (appInfo != null) {
                     mAppLabel = packageManager.getApplicationLabel(appInfo).toString();
                     mAppIcon = packageManager.getApplicationIcon(appInfo);
@@ -310,15 +332,15 @@
         // Loads special defined application label and icon if available.
         if (packages == null || packages.length == 0) {
             final BatteryEntry.NameAndIcon nameAndIcon =
-                BatteryEntry.getNameAndIconFromUid(mContext, mAppLabel, uid);
+                    BatteryEntry.getNameAndIconFromUid(mContext, mAppLabel, uid);
             mAppLabel = nameAndIcon.mName;
             mAppIcon = nameAndIcon.mIcon;
         }
 
         final BatteryEntry.NameAndIcon nameAndIcon =
-            BatteryEntry.loadNameAndIcon(
-                mContext, uid, /*handler=*/ null, /*batteryEntry=*/ null,
-                packageName, mAppLabel, mAppIcon);
+                BatteryEntry.loadNameAndIcon(
+                        mContext, uid, /*handler=*/ null, /*batteryEntry=*/ null,
+                        packageName, mAppLabel, mAppIcon);
         // Clears BatteryEntry internal cache since we will have another one.
         BatteryEntry.clearUidCache();
         if (nameAndIcon != null) {
@@ -328,7 +350,7 @@
             if (mDefaultPackageName != null
                     && !mDefaultPackageName.equals(nameAndIcon.mPackageName)) {
                 Log.w(TAG, String.format("found different package: %s | %s",
-                    mDefaultPackageName, nameAndIcon.mPackageName));
+                        mDefaultPackageName, nameAndIcon.mPackageName));
             }
         }
     }
@@ -336,19 +358,19 @@
     @Override
     public String toString() {
         final StringBuilder builder = new StringBuilder()
-            .append("BatteryDiffEntry{")
-            .append(String.format("\n\tname=%s restrictable=%b",
-                  mAppLabel, mValidForRestriction))
-            .append(String.format("\n\tconsume=%.2f%% %f/%f",
-                  mPercentOfTotal, mConsumePower, mTotalConsumePower))
-            .append(String.format("\n\tforeground:%s background:%s",
-                  StringUtil.formatElapsedTime(mContext, mForegroundUsageTimeInMs,
-                      /*withSeconds=*/ true, /*collapseTimeUnit=*/ false),
-                  StringUtil.formatElapsedTime(mContext, mBackgroundUsageTimeInMs,
-                      /*withSeconds=*/ true, /*collapseTimeUnit=*/ false)))
-            .append(String.format("\n\tpackage:%s|%s uid:%d userId:%d",
-                  mBatteryHistEntry.mPackageName, getPackageName(),
-                  mBatteryHistEntry.mUid, mBatteryHistEntry.mUserId));
+                .append("BatteryDiffEntry{")
+                .append(String.format("\n\tname=%s restrictable=%b",
+                        mAppLabel, mValidForRestriction))
+                .append(String.format("\n\tconsume=%.2f%% %f/%f",
+                        mPercentOfTotal, mConsumePower, mTotalConsumePower))
+                .append(String.format("\n\tforeground:%s background:%s",
+                        StringUtil.formatElapsedTime(mContext, mForegroundUsageTimeInMs,
+                                /*withSeconds=*/ true, /*collapseTimeUnit=*/ false),
+                        StringUtil.formatElapsedTime(mContext, mBackgroundUsageTimeInMs,
+                                /*withSeconds=*/ true, /*collapseTimeUnit=*/ false)))
+                .append(String.format("\n\tpackage:%s|%s uid:%d userId:%d",
+                        mBatteryHistEntry.mPackageName, getPackageName(),
+                        mBatteryHistEntry.mUid, mBatteryHistEntry.mUserId));
         return builder.toString();
     }
 
@@ -361,7 +383,7 @@
     private Drawable getBadgeIconForUser(Drawable icon) {
         final int userId = UserHandle.getUserId((int) mBatteryHistEntry.mUid);
         return userId == UserHandle.USER_OWNER ? icon :
-            mUserManager.getBadgedIconForUser(icon, new UserHandle(userId));
+                mUserManager.getBadgedIconForUser(icon, new UserHandle(userId));
     }
 
     private static boolean isSystemUid(int uid) {
diff --git a/src/com/android/settings/fuelgauge/BatteryEntry.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryEntry.java
similarity index 92%
rename from src/com/android/settings/fuelgauge/BatteryEntry.java
rename to src/com/android/settings/fuelgauge/batteryusage/BatteryEntry.java
index 9dcbd05..24d6dad 100644
--- a/src/com/android/settings/fuelgauge/BatteryEntry.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryEntry.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2014 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.app.AppGlobals;
 import android.content.Context;
@@ -36,9 +36,8 @@
 import android.util.DebugUtils;
 import android.util.Log;
 
-import androidx.annotation.NonNull;
-
 import com.android.settings.R;
+import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settingslib.Utils;
 
 import java.util.ArrayList;
@@ -52,6 +51,7 @@
  */
 public class BatteryEntry {
 
+    /** The app name and icon in app list. */
     public static final class NameAndIcon {
         public final String mName;
         public final String mPackageName;
@@ -84,10 +84,10 @@
 
     static Locale sCurrentLocale = null;
 
-    static private class NameAndIconLoader extends Thread {
+    private static class NameAndIconLoader extends Thread {
         private boolean mAbort = false;
 
-        public NameAndIconLoader() {
+        NameAndIconLoader() {
             super("BatteryUsage Icon Loader");
         }
 
@@ -109,9 +109,9 @@
                     be = sRequestQueue.remove(0);
                 }
                 final NameAndIcon nameAndIcon =
-                    BatteryEntry.loadNameAndIcon(
-                        be.mContext, be.getUid(), sHandler, be,
-                        be.mDefaultPackageName, be.mName, be.mIcon);
+                        BatteryEntry.loadNameAndIcon(
+                                be.mContext, be.getUid(), sHandler, be,
+                                be.mDefaultPackageName, be.mName, be.mIcon);
                 if (nameAndIcon != null) {
                     be.mIcon = nameAndIcon.mIcon;
                     be.mName = nameAndIcon.mName;
@@ -121,35 +121,38 @@
         }
     }
 
-    private static NameAndIconLoader mRequestThread;
+    private static NameAndIconLoader sRequestThread;
 
+    /** Starts the request queue. */
     public static void startRequestQueue() {
         if (sHandler != null) {
             synchronized (sRequestQueue) {
                 if (!sRequestQueue.isEmpty()) {
-                    if (mRequestThread != null) {
-                        mRequestThread.abort();
+                    if (sRequestThread != null) {
+                        sRequestThread.abort();
                     }
-                    mRequestThread = new NameAndIconLoader();
-                    mRequestThread.setPriority(Thread.MIN_PRIORITY);
-                    mRequestThread.start();
+                    sRequestThread = new NameAndIconLoader();
+                    sRequestThread.setPriority(Thread.MIN_PRIORITY);
+                    sRequestThread.start();
                     sRequestQueue.notify();
                 }
             }
         }
     }
 
+    /** Stops the request queue. */
     public static void stopRequestQueue() {
         synchronized (sRequestQueue) {
-            if (mRequestThread != null) {
-                mRequestThread.abort();
-                mRequestThread = null;
+            if (sRequestThread != null) {
+                sRequestThread.abort();
+                sRequestThread = null;
                 sRequestQueue.clear();
                 sHandler = null;
             }
         }
     }
 
+    /** Clears the UID cache. */
     public static void clearUidCache() {
         sUidCache.clear();
     }
@@ -252,14 +255,14 @@
         mIsHidden = false;
         mPowerComponentId = powerComponentId;
         mConsumedPower =
-            powerComponentId == BatteryConsumer.POWER_COMPONENT_SCREEN
-                ? devicePowerMah
-                : devicePowerMah - appsPowerMah;
+                powerComponentId == BatteryConsumer.POWER_COMPONENT_SCREEN
+                        ? devicePowerMah
+                        : devicePowerMah - appsPowerMah;
         mUsageDurationMs = usageDurationMs;
         mConsumerType = ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY;
 
         final NameAndIcon nameAndIcon =
-            getNameAndIconFromPowerComponent(context, powerComponentId);
+                getNameAndIconFromPowerComponent(context, powerComponentId);
         mIconId = nameAndIcon.mIconId;
         mName = nameAndIcon.mName;
         if (mIconId != 0) {
@@ -280,9 +283,9 @@
         mIcon = context.getDrawable(mIconId);
         mName = powerComponentName;
         mConsumedPower =
-            powerComponentId == BatteryConsumer.POWER_COMPONENT_SCREEN
-                ? devicePowerMah
-                : devicePowerMah - appsPowerMah;
+                powerComponentId == BatteryConsumer.POWER_COMPONENT_SCREEN
+                        ? devicePowerMah
+                        : devicePowerMah - appsPowerMah;
         mConsumerType = ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY;
     }
 
@@ -354,7 +357,7 @@
 
         final PackageManager pm = context.getPackageManager();
         final String[] packages = isSystemUid(uid)
-                ? new String[] {PACKAGE_SYSTEM} : pm.getPackagesForUid(uid);
+                ? new String[]{PACKAGE_SYSTEM} : pm.getPackagesForUid(uid);
         if (packages != null) {
             final String[] packageLabels = new String[packages.length];
             System.arraycopy(packages, 0, packageLabels, 0, packages.length);
@@ -552,8 +555,8 @@
             name = context.getResources().getString(R.string.process_network_tethering);
         } else if ("mediaserver".equals(name)) {
             name = context.getResources().getString(R.string.process_mediaserver_label);
-        } else if ("dex2oat".equals(name) || "dex2oat32".equals(name) ||
-                "dex2oat64".equals(name)) {
+        } else if ("dex2oat".equals(name) || "dex2oat32".equals(name)
+                || "dex2oat64".equals(name)) {
             name = context.getResources().getString(R.string.process_dex2oat_label);
         }
         return new NameAndIcon(name, icon, 0 /* iconId */);
@@ -612,7 +615,8 @@
         return new NameAndIcon(name, null /* icon */, iconId);
     }
 
-    static boolean isSystemUid(int uid) {
+    /** Whether the uid is system uid. */
+    public static boolean isSystemUid(int uid) {
         return uid == Process.SYSTEM_UID;
     }
 }
diff --git a/src/com/android/settings/fuelgauge/BatteryHistEntry.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryHistEntry.java
similarity index 78%
rename from src/com/android/settings/fuelgauge/BatteryHistEntry.java
rename to src/com/android/settings/fuelgauge/batteryusage/BatteryHistEntry.java
index 45f9e9f..b88b2f6 100644
--- a/src/com/android/settings/fuelgauge/BatteryHistEntry.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryHistEntry.java
@@ -1,17 +1,19 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of the License at
+ * 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.
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.content.ContentValues;
 import android.database.Cursor;
@@ -117,14 +119,14 @@
     }
 
     private BatteryHistEntry(
-          BatteryHistEntry fromEntry,
-          long bootTimestamp,
-          long timestamp,
-          double totalPower,
-          double consumePower,
-          long foregroundUsageTimeInMs,
-          long backgroundUsageTimeInMs,
-          int batteryLevel) {
+            BatteryHistEntry fromEntry,
+            long bootTimestamp,
+            long timestamp,
+            double totalPower,
+            double consumePower,
+            long foregroundUsageTimeInMs,
+            long backgroundUsageTimeInMs,
+            int batteryLevel) {
         mUid = fromEntry.mUid;
         mUserId = fromEntry.mUserId;
         mAppLabel = fromEntry.mAppLabel;
@@ -186,28 +188,28 @@
     @Override
     public String toString() {
         final String recordAtDateTime =
-            ConvertUtils.utcToLocalTime(/*context=*/ null, mTimestamp);
+                ConvertUtils.utcToLocalTime(/*context=*/ null, mTimestamp);
         final StringBuilder builder = new StringBuilder()
-            .append("\nBatteryHistEntry{")
-            .append(String.format("\n\tpackage=%s|label=%s|uid=%d|userId=%d|isHidden=%b",
-                  mPackageName, mAppLabel, mUid, mUserId, mIsHidden))
-            .append(String.format("\n\ttimestamp=%s|zoneId=%s|bootTimestamp=%d",
-                  recordAtDateTime, mZoneId, Duration.ofMillis(mBootTimestamp).getSeconds()))
-            .append(String.format("\n\tusage=%f|total=%f|consume=%f|elapsedTime=%d|%d",
-                  mPercentOfTotal, mTotalPower, mConsumePower,
-                  Duration.ofMillis(mForegroundUsageTimeInMs).getSeconds(),
-                  Duration.ofMillis(mBackgroundUsageTimeInMs).getSeconds()))
-            .append(String.format("\n\tdrainType=%d|consumerType=%d",
-                  mDrainType, mConsumerType))
-            .append(String.format("\n\tbattery=%d|status=%d|health=%d\n}",
-                  mBatteryLevel, mBatteryStatus, mBatteryHealth));
+                .append("\nBatteryHistEntry{")
+                .append(String.format("\n\tpackage=%s|label=%s|uid=%d|userId=%d|isHidden=%b",
+                        mPackageName, mAppLabel, mUid, mUserId, mIsHidden))
+                .append(String.format("\n\ttimestamp=%s|zoneId=%s|bootTimestamp=%d",
+                        recordAtDateTime, mZoneId, Duration.ofMillis(mBootTimestamp).getSeconds()))
+                .append(String.format("\n\tusage=%f|total=%f|consume=%f|elapsedTime=%d|%d",
+                        mPercentOfTotal, mTotalPower, mConsumePower,
+                        Duration.ofMillis(mForegroundUsageTimeInMs).getSeconds(),
+                        Duration.ofMillis(mBackgroundUsageTimeInMs).getSeconds()))
+                .append(String.format("\n\tdrainType=%d|consumerType=%d",
+                        mDrainType, mConsumerType))
+                .append(String.format("\n\tbattery=%d|status=%d|health=%d\n}",
+                        mBatteryLevel, mBatteryStatus, mBatteryHealth));
         return builder.toString();
     }
 
     private int getInteger(ContentValues values, String key) {
         if (values != null && values.containsKey(key)) {
             return values.getAsInteger(key);
-        };
+        }
         mIsValidEntry = false;
         return 0;
     }
@@ -298,21 +300,21 @@
             BatteryHistEntry lowerHistEntry,
             BatteryHistEntry upperHistEntry) {
         final double totalPower = interpolate(
-            lowerHistEntry == null ? 0 : lowerHistEntry.mTotalPower,
-            upperHistEntry.mTotalPower,
-            ratio);
+                lowerHistEntry == null ? 0 : lowerHistEntry.mTotalPower,
+                upperHistEntry.mTotalPower,
+                ratio);
         final double consumePower = interpolate(
-            lowerHistEntry == null ? 0 : lowerHistEntry.mConsumePower,
-            upperHistEntry.mConsumePower,
-            ratio);
+                lowerHistEntry == null ? 0 : lowerHistEntry.mConsumePower,
+                upperHistEntry.mConsumePower,
+                ratio);
         final double foregroundUsageTimeInMs = interpolate(
-            lowerHistEntry == null ? 0 : lowerHistEntry.mForegroundUsageTimeInMs,
-            upperHistEntry.mForegroundUsageTimeInMs,
-            ratio);
+                lowerHistEntry == null ? 0 : lowerHistEntry.mForegroundUsageTimeInMs,
+                upperHistEntry.mForegroundUsageTimeInMs,
+                ratio);
         final double backgroundUsageTimeInMs = interpolate(
-            lowerHistEntry == null ? 0 : lowerHistEntry.mBackgroundUsageTimeInMs,
-            upperHistEntry.mBackgroundUsageTimeInMs,
-            ratio);
+                lowerHistEntry == null ? 0 : lowerHistEntry.mBackgroundUsageTimeInMs,
+                upperHistEntry.mBackgroundUsageTimeInMs,
+                ratio);
         // Checks whether there is any abnoaml cases!
         if (upperHistEntry.mConsumePower < consumePower
                 || upperHistEntry.mForegroundUsageTimeInMs < foregroundUsageTimeInMs
@@ -324,22 +326,22 @@
             }
         }
         final double batteryLevel =
-            lowerHistEntry == null
-                ? upperHistEntry.mBatteryLevel
-                : interpolate(
-                    lowerHistEntry.mBatteryLevel,
-                    upperHistEntry.mBatteryLevel,
-                    ratio);
+                lowerHistEntry == null
+                        ? upperHistEntry.mBatteryLevel
+                        : interpolate(
+                                lowerHistEntry.mBatteryLevel,
+                                upperHistEntry.mBatteryLevel,
+                                ratio);
         return new BatteryHistEntry(
-            upperHistEntry,
-            /*bootTimestamp=*/ upperHistEntry.mBootTimestamp
+                upperHistEntry,
+                /*bootTimestamp=*/ upperHistEntry.mBootTimestamp
                 - (upperTimestamp - slotTimestamp),
-            /*timestamp=*/ slotTimestamp,
-            totalPower,
-            consumePower,
-            Math.round(foregroundUsageTimeInMs),
-            Math.round(backgroundUsageTimeInMs),
-            (int) Math.round(batteryLevel));
+                /*timestamp=*/ slotTimestamp,
+                totalPower,
+                consumePower,
+                Math.round(foregroundUsageTimeInMs),
+                Math.round(backgroundUsageTimeInMs),
+                (int) Math.round(batteryLevel));
     }
 
     private static double interpolate(double v1, double v2, double ratio) {
diff --git a/src/com/android/settings/fuelgauge/BatteryHistoryLoader.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoader.java
similarity index 79%
rename from src/com/android/settings/fuelgauge/BatteryHistoryLoader.java
rename to src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoader.java
index ddf3bf4..83b2615 100644
--- a/src/com/android/settings/fuelgauge/BatteryHistoryLoader.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoader.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,10 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.content.Context;
 
+import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.utils.AsyncLoaderCompat;
 
@@ -41,7 +42,7 @@
     @Override
     public Map<Long, Map<String, BatteryHistEntry>> loadInBackground() {
         final PowerUsageFeatureProvider powerUsageFeatureProvider =
-            FeatureFactory.getFactory(mContext).getPowerUsageFeatureProvider(mContext);
-        return powerUsageFeatureProvider.getBatteryHistory(mContext);
+                FeatureFactory.getFactory(mContext).getPowerUsageFeatureProvider(mContext);
+        return powerUsageFeatureProvider.getBatteryHistorySinceLastFullCharge(mContext);
     }
 }
diff --git a/src/com/android/settings/fuelgauge/BatteryHistoryPreference.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryPreference.java
similarity index 72%
rename from src/com/android/settings/fuelgauge/BatteryHistoryPreference.java
rename to src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryPreference.java
index b2818bf..71fd26c 100644
--- a/src/com/android/settings/fuelgauge/BatteryHistoryPreference.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryPreference.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.content.Context;
 import android.os.BatteryUsageStats;
@@ -29,6 +29,8 @@
 import androidx.preference.PreferenceViewHolder;
 
 import com.android.settings.R;
+import com.android.settings.fuelgauge.BatteryInfo;
+import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.widget.UsageView;
 
@@ -38,29 +40,33 @@
 public class BatteryHistoryPreference extends Preference {
     private static final String TAG = "BatteryHistoryPreference";
 
-    @VisibleForTesting boolean mHideSummary;
-    @VisibleForTesting BatteryInfo mBatteryInfo;
+    @VisibleForTesting
+    boolean mHideSummary;
+    @VisibleForTesting
+    BatteryInfo mBatteryInfo;
 
     private boolean mIsChartGraphEnabled;
 
     private TextView mSummaryView;
     private CharSequence mSummaryContent;
-    private BatteryChartView mBatteryChartView;
+    private BatteryChartView mDailyChartView;
+    private BatteryChartView mHourlyChartView;
     private BatteryChartPreferenceController mChartPreferenceController;
 
     public BatteryHistoryPreference(Context context, AttributeSet attrs) {
         super(context, attrs);
         mIsChartGraphEnabled =
-            FeatureFactory.getFactory(context).getPowerUsageFeatureProvider(context)
-                   .isChartGraphEnabled(context);
+                FeatureFactory.getFactory(context).getPowerUsageFeatureProvider(context)
+                        .isChartGraphEnabled(context);
         Log.i(TAG, "isChartGraphEnabled: " + mIsChartGraphEnabled);
         setLayoutResource(
-            mIsChartGraphEnabled
-                ? R.layout.battery_chart_graph
-                : R.layout.battery_usage_graph);
+                mIsChartGraphEnabled
+                        ? R.layout.battery_chart_graph
+                        : R.layout.battery_usage_graph);
         setSelectable(false);
     }
 
+    /** Sets the text of bottom summary. */
     public void setBottomSummary(CharSequence text) {
         mSummaryContent = text;
         if (mSummaryView != null) {
@@ -70,6 +76,7 @@
         mHideSummary = false;
     }
 
+    /** Hides the bottom summary. */
     public void hideBottomSummary() {
         if (mSummaryView != null) {
             mSummaryView.setVisibility(View.GONE);
@@ -86,8 +93,8 @@
 
     void setChartPreferenceController(BatteryChartPreferenceController controller) {
         mChartPreferenceController = controller;
-        if (mBatteryChartView != null) {
-            mChartPreferenceController.setBatteryChartView(mBatteryChartView);
+        if (mDailyChartView != null && mHourlyChartView != null) {
+            mChartPreferenceController.setBatteryChartView(mDailyChartView, mHourlyChartView);
         }
     }
 
@@ -99,11 +106,14 @@
             return;
         }
         if (mIsChartGraphEnabled) {
-            mBatteryChartView = (BatteryChartView) view.findViewById(R.id.battery_chart);
-            mBatteryChartView.setCompanionTextView(
-                (TextView) view.findViewById(R.id.companion_text));
+            mDailyChartView = (BatteryChartView) view.findViewById(R.id.daily_battery_chart);
+            mDailyChartView.setCompanionTextView(
+                    (TextView) view.findViewById(R.id.companion_text));
+            mHourlyChartView = (BatteryChartView) view.findViewById(R.id.hourly_battery_chart);
+            mHourlyChartView.setCompanionTextView(
+                    (TextView) view.findViewById(R.id.companion_text));
             if (mChartPreferenceController != null) {
-                mChartPreferenceController.setBatteryChartView(mBatteryChartView);
+                mChartPreferenceController.setBatteryChartView(mDailyChartView, mHourlyChartView);
             }
         } else {
             final TextView chargeView = (TextView) view.findViewById(R.id.charge);
diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryLevelData.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryLevelData.java
new file mode 100644
index 0000000..4ff9eeb
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryLevelData.java
@@ -0,0 +1,98 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage;
+
+import androidx.annotation.NonNull;
+import androidx.core.util.Preconditions;
+
+import java.util.List;
+import java.util.Locale;
+import java.util.Objects;
+
+/** Wraps the battery timestamp and level data used for battery usage chart. */
+public final class BatteryLevelData {
+    /** A container for the battery timestamp and level data. */
+    public static final class PeriodBatteryLevelData {
+        // The length of mTimestamps and mLevels must be the same. mLevels[index] might be null when
+        // there is no level data for the corresponding timestamp.
+        private final List<Long> mTimestamps;
+        private final List<Integer> mLevels;
+
+        public PeriodBatteryLevelData(
+                @NonNull List<Long> timestamps, @NonNull List<Integer> levels) {
+            Preconditions.checkArgument(timestamps.size() == levels.size(),
+                    /* errorMessage= */ "Timestamp: " + timestamps.size() + ", Level: "
+                            + levels.size());
+            mTimestamps = timestamps;
+            mLevels = levels;
+        }
+
+        public List<Long> getTimestamps() {
+            return mTimestamps;
+        }
+
+        public List<Integer> getLevels() {
+            return mLevels;
+        }
+
+        @Override
+        public String toString() {
+            return String.format(Locale.ENGLISH, "timestamps: %s; levels: %s",
+                    Objects.toString(mTimestamps), Objects.toString(mLevels));
+        }
+    }
+
+    /**
+     * There could be 2 cases for the daily battery levels:
+     * 1) length is 2: The usage data is within 1 day. Only contains start and end data, such as
+     *    data of 2022-01-01 06:00 and 2022-01-01 16:00.
+     * 2) length > 2: The usage data is more than 1 days. The data should be the start, end and 0am
+     *    data of every day between the start and end, such as data of 2022-01-01 06:00,
+     *    2022-01-02 00:00, 2022-01-03 00:00 and 2022-01-03 08:00.
+     */
+    private final PeriodBatteryLevelData mDailyBatteryLevels;
+    // The size of hourly data must be the size of daily data - 1.
+    private final List<PeriodBatteryLevelData> mHourlyBatteryLevelsPerDay;
+
+    public BatteryLevelData(
+            @NonNull PeriodBatteryLevelData dailyBatteryLevels,
+            @NonNull List<PeriodBatteryLevelData> hourlyBatteryLevelsPerDay) {
+        final long dailySize = dailyBatteryLevels.getTimestamps().size();
+        final long hourlySize = hourlyBatteryLevelsPerDay.size();
+        Preconditions.checkArgument(hourlySize == dailySize - 1,
+                /* errorMessage= */ "DailySize: " + dailySize + ", HourlySize: " + hourlySize);
+        mDailyBatteryLevels = dailyBatteryLevels;
+        mHourlyBatteryLevelsPerDay = hourlyBatteryLevelsPerDay;
+    }
+
+    public PeriodBatteryLevelData getDailyBatteryLevels() {
+        return mDailyBatteryLevels;
+    }
+
+    public List<PeriodBatteryLevelData> getHourlyBatteryLevelsPerDay() {
+        return mHourlyBatteryLevelsPerDay;
+    }
+
+    @Override
+    public String toString() {
+        return String.format(Locale.ENGLISH,
+                "dailyBatteryLevels: %s; hourlyBatteryLevelsPerDay: %s",
+                Objects.toString(mDailyBatteryLevels),
+                Objects.toString(mHourlyBatteryLevelsPerDay));
+    }
+}
+
diff --git a/src/com/android/settings/fuelgauge/BatteryUsageStatsLoader.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageStatsLoader.java
similarity index 94%
rename from src/com/android/settings/fuelgauge/BatteryUsageStatsLoader.java
rename to src/com/android/settings/fuelgauge/batteryusage/BatteryUsageStatsLoader.java
index 65f2ddb..d61b276 100644
--- a/src/com/android/settings/fuelgauge/BatteryUsageStatsLoader.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageStatsLoader.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2020 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.content.Context;
 import android.os.BatteryStatsManager;
diff --git a/src/com/android/settings/fuelgauge/ConvertUtils.java b/src/com/android/settings/fuelgauge/batteryusage/ConvertUtils.java
similarity index 64%
rename from src/com/android/settings/fuelgauge/ConvertUtils.java
rename to src/com/android/settings/fuelgauge/batteryusage/ConvertUtils.java
index 696147b..f04658d 100644
--- a/src/com/android/settings/fuelgauge/ConvertUtils.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/ConvertUtils.java
@@ -1,17 +1,19 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of the License at
+ * 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.
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.annotation.IntDef;
 import android.content.ContentValues;
@@ -19,6 +21,7 @@
 import android.os.BatteryUsageStats;
 import android.os.LocaleList;
 import android.os.UserHandle;
+import android.os.UserManager;
 import android.text.format.DateFormat;
 import android.text.format.DateUtils;
 import android.util.ArraySet;
@@ -26,6 +29,8 @@
 
 import androidx.annotation.VisibleForTesting;
 
+import com.android.settings.Utils;
+import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settings.overlay.FeatureFactory;
 
 import java.lang.annotation.Retention;
@@ -46,7 +51,7 @@
     private static final String TAG = "ConvertUtils";
     private static final Map<String, BatteryHistEntry> EMPTY_BATTERY_MAP = new HashMap<>();
     private static final BatteryHistEntry EMPTY_BATTERY_HIST_ENTRY =
-        new BatteryHistEntry(new ContentValues());
+            new BatteryHistEntry(new ContentValues());
     // Maximum total time value for each slot cumulative data at most 2 hours.
     private static final float TOTAL_TIME_THRESHOLD = DateUtils.HOUR_IN_MILLIS * 2;
 
@@ -64,21 +69,24 @@
     public static final String FAKE_PACKAGE_NAME = "fake_package";
 
     @IntDef(prefix = {"CONSUMER_TYPE"}, value = {
-        CONSUMER_TYPE_UNKNOWN,
-        CONSUMER_TYPE_UID_BATTERY,
-        CONSUMER_TYPE_USER_BATTERY,
-        CONSUMER_TYPE_SYSTEM_BATTERY,
+            CONSUMER_TYPE_UNKNOWN,
+            CONSUMER_TYPE_UID_BATTERY,
+            CONSUMER_TYPE_USER_BATTERY,
+            CONSUMER_TYPE_SYSTEM_BATTERY,
     })
     @Retention(RetentionPolicy.SOURCE)
-    public static @interface ConsumerType {}
+    public static @interface ConsumerType {
+    }
 
     public static final int CONSUMER_TYPE_UNKNOWN = 0;
     public static final int CONSUMER_TYPE_UID_BATTERY = 1;
     public static final int CONSUMER_TYPE_USER_BATTERY = 2;
     public static final int CONSUMER_TYPE_SYSTEM_BATTERY = 3;
 
-    private ConvertUtils() {}
+    private ConvertUtils() {
+    }
 
+    /** Converts to content values */
     public static ContentValues convert(
             BatteryEntry entry,
             BatteryUsageStats batteryUsageStats,
@@ -91,25 +99,25 @@
         if (entry != null && batteryUsageStats != null) {
             values.put(BatteryHistEntry.KEY_UID, Long.valueOf(entry.getUid()));
             values.put(BatteryHistEntry.KEY_USER_ID,
-                Long.valueOf(UserHandle.getUserId(entry.getUid())));
+                    Long.valueOf(UserHandle.getUserId(entry.getUid())));
             values.put(BatteryHistEntry.KEY_APP_LABEL, entry.getLabel());
             values.put(BatteryHistEntry.KEY_PACKAGE_NAME,
-                entry.getDefaultPackageName());
+                    entry.getDefaultPackageName());
             values.put(BatteryHistEntry.KEY_IS_HIDDEN, Boolean.valueOf(entry.isHidden()));
             values.put(BatteryHistEntry.KEY_TOTAL_POWER,
-                Double.valueOf(batteryUsageStats.getConsumedPower()));
+                    Double.valueOf(batteryUsageStats.getConsumedPower()));
             values.put(BatteryHistEntry.KEY_CONSUME_POWER,
-                Double.valueOf(entry.getConsumedPower()));
+                    Double.valueOf(entry.getConsumedPower()));
             values.put(BatteryHistEntry.KEY_PERCENT_OF_TOTAL,
-                Double.valueOf(entry.mPercent));
+                    Double.valueOf(entry.mPercent));
             values.put(BatteryHistEntry.KEY_FOREGROUND_USAGE_TIME,
-                Long.valueOf(entry.getTimeInForegroundMs()));
+                    Long.valueOf(entry.getTimeInForegroundMs()));
             values.put(BatteryHistEntry.KEY_BACKGROUND_USAGE_TIME,
-                Long.valueOf(entry.getTimeInBackgroundMs()));
+                    Long.valueOf(entry.getTimeInBackgroundMs()));
             values.put(BatteryHistEntry.KEY_DRAIN_TYPE,
-                Integer.valueOf(entry.getPowerComponentId()));
+                    Integer.valueOf(entry.getPowerComponentId()));
             values.put(BatteryHistEntry.KEY_CONSUMER_TYPE,
-                Integer.valueOf(entry.getConsumerType()));
+                    Integer.valueOf(entry.getConsumerType()));
         } else {
             values.put(BatteryHistEntry.KEY_PACKAGE_NAME, FAKE_PACKAGE_NAME);
         }
@@ -126,13 +134,13 @@
     public static String utcToLocalTime(Context context, long timestamp) {
         final Locale locale = getLocale(context);
         final String pattern =
-            DateFormat.getBestDateTimePattern(locale, "MMM dd,yyyy HH:mm:ss");
+                DateFormat.getBestDateTimePattern(locale, "MMM dd,yyyy HH:mm:ss");
         return DateFormat.format(pattern, timestamp).toString();
     }
 
     /** Converts UTC timestamp to local time hour data. */
     public static String utcToLocalTimeHour(
-            Context context, long timestamp, boolean is24HourFormat) {
+            final Context context, final long timestamp, final boolean is24HourFormat) {
         final Locale locale = getLocale(context);
         // e.g. for 12-hour format: 9 pm
         // e.g. for 24-hour format: 09:00
@@ -141,6 +149,15 @@
         return DateFormat.format(pattern, timestamp).toString().toLowerCase(locale);
     }
 
+    /** Converts UTC timestamp to local time day of week data. */
+    public static String utcToLocalTimeDayOfWeek(
+            final Context context, final long timestamp, final boolean isAbbreviation) {
+        final Locale locale = getLocale(context);
+        final String pattern = DateFormat.getBestDateTimePattern(locale,
+                isAbbreviation ? "E" : "EEEE");
+        return DateFormat.format(pattern, timestamp).toString();
+    }
+
     /** Gets indexed battery usage data for each corresponding time slot. */
     public static Map<Integer, List<BatteryDiffEntry>> getIndexedUsageMap(
             final Context context,
@@ -159,18 +176,18 @@
         final int timestampStride = 2;
         for (int index = 0; index < timeSlotSize; index++) {
             final Long currentTimestamp =
-                Long.valueOf(batteryHistoryKeys[index * timestampStride]);
+                    Long.valueOf(batteryHistoryKeys[index * timestampStride]);
             final Long nextTimestamp =
-                Long.valueOf(batteryHistoryKeys[index * timestampStride + 1]);
+                    Long.valueOf(batteryHistoryKeys[index * timestampStride + 1]);
             final Long nextTwoTimestamp =
-                Long.valueOf(batteryHistoryKeys[index * timestampStride + 2]);
+                    Long.valueOf(batteryHistoryKeys[index * timestampStride + 2]);
             // Fetches BatteryHistEntry data from corresponding time slot.
             final Map<String, BatteryHistEntry> currentBatteryHistMap =
-                batteryHistoryMap.getOrDefault(currentTimestamp, EMPTY_BATTERY_MAP);
+                    batteryHistoryMap.getOrDefault(currentTimestamp, EMPTY_BATTERY_MAP);
             final Map<String, BatteryHistEntry> nextBatteryHistMap =
-                batteryHistoryMap.getOrDefault(nextTimestamp, EMPTY_BATTERY_MAP);
+                    batteryHistoryMap.getOrDefault(nextTimestamp, EMPTY_BATTERY_MAP);
             final Map<String, BatteryHistEntry> nextTwoBatteryHistMap =
-                batteryHistoryMap.getOrDefault(nextTwoTimestamp, EMPTY_BATTERY_MAP);
+                    batteryHistoryMap.getOrDefault(nextTwoTimestamp, EMPTY_BATTERY_MAP);
             // We should not get the empty list since we have at least one fake data to record
             // the battery level and status in each time slot, the empty list is used to
             // represent there is no enough data to apply interpolation arithmetic.
@@ -195,27 +212,27 @@
             // Calculates all packages diff usage data in a specific time slot.
             for (String key : allBatteryHistEntryKeys) {
                 final BatteryHistEntry currentEntry =
-                    currentBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
+                        currentBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
                 final BatteryHistEntry nextEntry =
-                    nextBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
+                        nextBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
                 final BatteryHistEntry nextTwoEntry =
-                    nextTwoBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
+                        nextTwoBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
                 // Cumulative values is a specific time slot for a specific app.
                 long foregroundUsageTimeInMs =
-                    getDiffValue(
-                        currentEntry.mForegroundUsageTimeInMs,
-                        nextEntry.mForegroundUsageTimeInMs,
-                        nextTwoEntry.mForegroundUsageTimeInMs);
+                        getDiffValue(
+                                currentEntry.mForegroundUsageTimeInMs,
+                                nextEntry.mForegroundUsageTimeInMs,
+                                nextTwoEntry.mForegroundUsageTimeInMs);
                 long backgroundUsageTimeInMs =
-                    getDiffValue(
-                        currentEntry.mBackgroundUsageTimeInMs,
-                        nextEntry.mBackgroundUsageTimeInMs,
-                        nextTwoEntry.mBackgroundUsageTimeInMs);
+                        getDiffValue(
+                                currentEntry.mBackgroundUsageTimeInMs,
+                                nextEntry.mBackgroundUsageTimeInMs,
+                                nextTwoEntry.mBackgroundUsageTimeInMs);
                 double consumePower =
-                    getDiffValue(
-                        currentEntry.mConsumePower,
-                        nextEntry.mConsumePower,
-                        nextTwoEntry.mConsumePower);
+                        getDiffValue(
+                                currentEntry.mConsumePower,
+                                nextEntry.mConsumePower,
+                                nextTwoEntry.mConsumePower);
                 // Excludes entry since we don't have enough data to calculate.
                 if (foregroundUsageTimeInMs == 0
                         && backgroundUsageTimeInMs == 0
@@ -223,14 +240,14 @@
                     continue;
                 }
                 final BatteryHistEntry selectedBatteryEntry =
-                    selectBatteryHistEntry(currentEntry, nextEntry, nextTwoEntry);
+                        selectBatteryHistEntry(currentEntry, nextEntry, nextTwoEntry);
                 if (selectedBatteryEntry == null) {
                     continue;
                 }
                 // Forces refine the cumulative value since it may introduce deviation
                 // error since we will apply the interpolation arithmetic.
                 final float totalUsageTimeInMs =
-                    foregroundUsageTimeInMs + backgroundUsageTimeInMs;
+                        foregroundUsageTimeInMs + backgroundUsageTimeInMs;
                 if (totalUsageTimeInMs > TOTAL_TIME_THRESHOLD) {
                     final float ratio = TOTAL_TIME_THRESHOLD / totalUsageTimeInMs;
                     if (DEBUG) {
@@ -240,37 +257,75 @@
                                 currentEntry));
                     }
                     foregroundUsageTimeInMs =
-                        Math.round(foregroundUsageTimeInMs * ratio);
+                            Math.round(foregroundUsageTimeInMs * ratio);
                     backgroundUsageTimeInMs =
-                        Math.round(backgroundUsageTimeInMs * ratio);
+                            Math.round(backgroundUsageTimeInMs * ratio);
                     consumePower = consumePower * ratio;
                 }
                 totalConsumePower += consumePower;
                 batteryDiffEntryList.add(
-                    new BatteryDiffEntry(
-                        context,
-                        foregroundUsageTimeInMs,
-                        backgroundUsageTimeInMs,
-                        consumePower,
-                        selectedBatteryEntry));
+                        new BatteryDiffEntry(
+                                context,
+                                foregroundUsageTimeInMs,
+                                backgroundUsageTimeInMs,
+                                consumePower,
+                                selectedBatteryEntry));
             }
             // Sets total consume power data into all BatteryDiffEntry in the same slot.
             for (BatteryDiffEntry diffEntry : batteryDiffEntryList) {
                 diffEntry.setTotalConsumePower(totalConsumePower);
             }
         }
-        insert24HoursData(BatteryChartView.SELECTED_INDEX_ALL, resultMap);
+        insert24HoursData(BatteryChartViewModel.SELECTED_INDEX_ALL, resultMap);
+        resolveMultiUsersData(context, resultMap);
         if (purgeLowPercentageAndFakeData) {
             purgeLowPercentageAndFakeData(context, resultMap);
         }
         return resultMap;
     }
 
+    @VisibleForTesting
+    static void resolveMultiUsersData(
+            final Context context,
+            final Map<Integer, List<BatteryDiffEntry>> indexedUsageMap) {
+        final int currentUserId = context.getUserId();
+        final UserHandle userHandle =
+                Utils.getManagedProfile(context.getSystemService(UserManager.class));
+        final int workProfileUserId =
+                userHandle != null ? userHandle.getIdentifier() : Integer.MIN_VALUE;
+        // Loops for all BatteryDiffEntry in the different slots.
+        for (List<BatteryDiffEntry> entryList : indexedUsageMap.values()) {
+            double consumePowerFromOtherUsers = 0f;
+            double consumePercentageFromOtherUsers = 0f;
+            final Iterator<BatteryDiffEntry> iterator = entryList.iterator();
+            while (iterator.hasNext()) {
+                final BatteryDiffEntry entry = iterator.next();
+                final BatteryHistEntry batteryHistEntry = entry.mBatteryHistEntry;
+                if (batteryHistEntry.mConsumerType != CONSUMER_TYPE_UID_BATTERY) {
+                    continue;
+                }
+                // Whether the BatteryHistEntry represents the current user data?
+                if (batteryHistEntry.mUserId == currentUserId
+                        || batteryHistEntry.mUserId == workProfileUserId) {
+                    continue;
+                }
+                // Removes and aggregates non-current users data from the list.
+                iterator.remove();
+                consumePowerFromOtherUsers += entry.mConsumePower;
+                consumePercentageFromOtherUsers += entry.getPercentOfTotal();
+            }
+            if (consumePercentageFromOtherUsers != 0) {
+                entryList.add(createOtherUsersEntry(context, consumePowerFromOtherUsers,
+                        consumePercentageFromOtherUsers));
+            }
+        }
+    }
+
     private static void insert24HoursData(
             final int desiredIndex,
             final Map<Integer, List<BatteryDiffEntry>> indexedUsageMap) {
         final Map<String, BatteryDiffEntry> resultMap = new HashMap<>();
-        double totalConsumePower = 0.0;
+        double totalConsumePower = 0f;
         // Loops for all BatteryDiffEntry and aggregate them together.
         for (List<BatteryDiffEntry> entryList : indexedUsageMap.values()) {
             for (BatteryDiffEntry entry : entryList) {
@@ -282,9 +337,9 @@
                 } else {
                     // Sums up some fields data into the existing one.
                     oldBatteryDiffEntry.mForegroundUsageTimeInMs +=
-                        entry.mForegroundUsageTimeInMs;
+                            entry.mForegroundUsageTimeInMs;
                     oldBatteryDiffEntry.mBackgroundUsageTimeInMs +=
-                        entry.mBackgroundUsageTimeInMs;
+                            entry.mBackgroundUsageTimeInMs;
                     oldBatteryDiffEntry.mConsumePower += entry.mConsumePower;
                 }
                 totalConsumePower += entry.mConsumePower;
@@ -318,7 +373,7 @@
                 if (packageName != null
                         && !backgroundUsageTimeHideList.isEmpty()
                         && backgroundUsageTimeHideList.contains(packageName)) {
-                  entry.mBackgroundUsageTimeInMs = 0;
+                    entry.mBackgroundUsageTimeInMs = 0;
                 }
             }
         }
@@ -342,7 +397,7 @@
             return entry2;
         } else {
             return entry3 != null && entry3 != EMPTY_BATTERY_HIST_ENTRY
-                ? entry3 : null;
+                    ? entry3 : null;
         }
     }
 
@@ -352,8 +407,26 @@
             return Locale.getDefault();
         }
         final LocaleList locales =
-            context.getResources().getConfiguration().getLocales();
+                context.getResources().getConfiguration().getLocales();
         return locales != null && !locales.isEmpty() ? locales.get(0)
-            : Locale.getDefault();
+                : Locale.getDefault();
+    }
+
+    private static BatteryDiffEntry createOtherUsersEntry(
+            Context context, double consumePower, double consumePercentage) {
+        final ContentValues values = new ContentValues();
+        values.put(BatteryHistEntry.KEY_UID, BatteryUtils.UID_OTHER_USERS);
+        values.put(BatteryHistEntry.KEY_USER_ID, BatteryUtils.UID_OTHER_USERS);
+        values.put(BatteryHistEntry.KEY_CONSUMER_TYPE, CONSUMER_TYPE_UID_BATTERY);
+        // We will show the percentage for the "other users" item only, the aggregated
+        // running time information is useless for users to identify individual apps.
+        final BatteryDiffEntry batteryDiffEntry = new BatteryDiffEntry(
+                context,
+                /*foregroundUsageTimeInMs=*/ 0,
+                /*backgroundUsageTimeInMs=*/ 0,
+                consumePower,
+                new BatteryHistEntry(values));
+        batteryDiffEntry.setTotalConsumePower(100 * consumePower / consumePercentage);
+        return batteryDiffEntry;
     }
 }
diff --git a/src/com/android/settings/fuelgauge/batteryusage/DataProcessor.java b/src/com/android/settings/fuelgauge/batteryusage/DataProcessor.java
new file mode 100644
index 0000000..125f879
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batteryusage/DataProcessor.java
@@ -0,0 +1,1058 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage;
+
+import static com.android.settings.fuelgauge.batteryusage.ConvertUtils.utcToLocalTime;
+
+import android.content.ContentValues;
+import android.content.Context;
+import android.os.AsyncTask;
+import android.os.Handler;
+import android.os.Looper;
+import android.os.UserHandle;
+import android.os.UserManager;
+import android.text.TextUtils;
+import android.text.format.DateUtils;
+import android.util.ArraySet;
+import android.util.Log;
+
+import androidx.annotation.Nullable;
+
+import com.android.internal.annotations.VisibleForTesting;
+import com.android.settings.Utils;
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.fuelgauge.BatteryStatus;
+
+import java.time.Duration;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * A utility class to process data loaded from database and make the data easy to use for battery
+ * usage UI.
+ */
+public final class DataProcessor {
+    private static final boolean DEBUG = false;
+    private static final String TAG = "DataProcessor";
+    private static final int MIN_DAILY_DATA_SIZE = 2;
+    private static final int MIN_TIMESTAMP_DATA_SIZE = 2;
+    private static final int MAX_DIFF_SECONDS_OF_UPPER_TIMESTAMP = 5;
+    // Maximum total time value for each hourly slot cumulative data at most 2 hours.
+    private static final float TOTAL_HOURLY_TIME_THRESHOLD = DateUtils.HOUR_IN_MILLIS * 2;
+    private static final Map<String, BatteryHistEntry> EMPTY_BATTERY_MAP = new HashMap<>();
+    private static final BatteryHistEntry EMPTY_BATTERY_HIST_ENTRY =
+            new BatteryHistEntry(new ContentValues());
+
+    @VisibleForTesting
+    static final double PERCENTAGE_OF_TOTAL_THRESHOLD = 1f;
+    @VisibleForTesting
+    static final int SELECTED_INDEX_ALL = BatteryChartViewModel.SELECTED_INDEX_ALL;
+
+    /** A fake package name to represent no BatteryEntry data. */
+    public static final String FAKE_PACKAGE_NAME = "fake_package";
+
+    /** A callback listener when battery usage loading async task is executed. */
+    public interface UsageMapAsyncResponse {
+        /** The callback function when batteryUsageMap is loaded. */
+        void onBatteryUsageMapLoaded(
+                Map<Integer, Map<Integer, BatteryDiffData>> batteryUsageMap);
+    }
+
+    private DataProcessor() {
+    }
+
+    /**
+     * @return Returns battery level data and start async task to compute battery diff usage data
+     * and load app labels + icons.
+     * Returns null if the input is invalid or not having at least 2 hours data.
+     */
+    @Nullable
+    public static BatteryLevelData getBatteryLevelData(
+            Context context,
+            @Nullable Handler handler,
+            @Nullable final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap,
+            final UsageMapAsyncResponse asyncResponseDelegate) {
+        if (batteryHistoryMap == null || batteryHistoryMap.isEmpty()) {
+            Log.d(TAG, "getBatteryLevelData() returns null");
+            return null;
+        }
+        handler = handler != null ? handler : new Handler(Looper.getMainLooper());
+        // Process raw history map data into hourly timestamps.
+        final Map<Long, Map<String, BatteryHistEntry>> processedBatteryHistoryMap =
+                getHistoryMapWithExpectedTimestamps(context, batteryHistoryMap);
+        // Wrap and processed history map into easy-to-use format for UI rendering.
+        final BatteryLevelData batteryLevelData =
+                getLevelDataThroughProcessedHistoryMap(context, processedBatteryHistoryMap);
+
+        // Start the async task to compute diff usage data and load labels and icons.
+        if (batteryLevelData != null) {
+            new ComputeUsageMapAndLoadItemsTask(
+                    context,
+                    handler,
+                    asyncResponseDelegate,
+                    batteryLevelData.getHourlyBatteryLevelsPerDay(),
+                    processedBatteryHistoryMap).execute();
+        }
+
+        return batteryLevelData;
+    }
+
+    /**
+     * @return Returns battery usage data of different entries.
+     * Returns null if the input is invalid or there is no enough data.
+     */
+    @Nullable
+    public static Map<Integer, Map<Integer, BatteryDiffData>> getBatteryUsageData(
+            Context context,
+            @Nullable final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
+        if (batteryHistoryMap == null || batteryHistoryMap.isEmpty()) {
+            Log.d(TAG, "getBatteryLevelData() returns null");
+            return null;
+        }
+        // Process raw history map data into hourly timestamps.
+        final Map<Long, Map<String, BatteryHistEntry>> processedBatteryHistoryMap =
+                getHistoryMapWithExpectedTimestamps(context, batteryHistoryMap);
+        // Wrap and processed history map into easy-to-use format for UI rendering.
+        final BatteryLevelData batteryLevelData =
+                getLevelDataThroughProcessedHistoryMap(context, processedBatteryHistoryMap);
+        return batteryLevelData == null
+                ? null
+                : getBatteryUsageMap(
+                        context,
+                        batteryLevelData.getHourlyBatteryLevelsPerDay(),
+                        processedBatteryHistoryMap);
+    }
+
+    /**
+     * @return Returns whether the target is in the CharSequence array.
+     */
+    public static boolean contains(String target, CharSequence[] packageNames) {
+        if (target != null && packageNames != null) {
+            for (CharSequence packageName : packageNames) {
+                if (TextUtils.equals(target, packageName)) {
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    /**
+     * @return Returns the processed history map which has interpolated to every hour data.
+     * The start and end timestamp must be the even hours.
+     * The keys of processed history map should contain every hour between the start and end
+     * timestamp. If there's no data in some key, the value will be the empty hashmap.
+     */
+    @VisibleForTesting
+    static Map<Long, Map<String, BatteryHistEntry>> getHistoryMapWithExpectedTimestamps(
+            Context context,
+            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
+        final long startTime = System.currentTimeMillis();
+        final List<Long> rawTimestampList = new ArrayList<>(batteryHistoryMap.keySet());
+        final Map<Long, Map<String, BatteryHistEntry>> resultMap = new HashMap();
+        if (rawTimestampList.isEmpty()) {
+            Log.d(TAG, "empty batteryHistoryMap in getHistoryMapWithExpectedTimestamps()");
+            return resultMap;
+        }
+        Collections.sort(rawTimestampList);
+        final List<Long> expectedTimestampList = getTimestampSlots(rawTimestampList);
+        final boolean isFromFullCharge =
+                isFromFullCharge(batteryHistoryMap.get(rawTimestampList.get(0)));
+        interpolateHistory(
+                context, rawTimestampList, expectedTimestampList, isFromFullCharge,
+                batteryHistoryMap, resultMap);
+        Log.d(TAG, String.format("getHistoryMapWithExpectedTimestamps() size=%d in %d/ms",
+                resultMap.size(), (System.currentTimeMillis() - startTime)));
+        return resultMap;
+    }
+
+    @VisibleForTesting
+    @Nullable
+    static BatteryLevelData getLevelDataThroughProcessedHistoryMap(
+            Context context,
+            final Map<Long, Map<String, BatteryHistEntry>> processedBatteryHistoryMap) {
+        final List<Long> timestampList = new ArrayList<>(processedBatteryHistoryMap.keySet());
+        Collections.sort(timestampList);
+        final List<Long> dailyTimestamps = getDailyTimestamps(timestampList);
+        // There should be at least the start and end timestamps. Otherwise, return null to not show
+        // data in usage chart.
+        if (dailyTimestamps.size() < MIN_DAILY_DATA_SIZE) {
+            return null;
+        }
+
+        final List<List<Long>> hourlyTimestamps = getHourlyTimestamps(dailyTimestamps);
+        final BatteryLevelData.PeriodBatteryLevelData dailyLevelData =
+                getPeriodBatteryLevelData(context, processedBatteryHistoryMap, dailyTimestamps);
+        final List<BatteryLevelData.PeriodBatteryLevelData> hourlyLevelData =
+                getHourlyPeriodBatteryLevelData(
+                        context, processedBatteryHistoryMap, hourlyTimestamps);
+        return new BatteryLevelData(dailyLevelData, hourlyLevelData);
+    }
+
+    /**
+     * Computes expected timestamp slots for last full charge, which will return hourly timestamps
+     * between start and end two even hour values.
+     */
+    @VisibleForTesting
+    static List<Long> getTimestampSlots(final List<Long> rawTimestampList) {
+        final List<Long> timestampSlots = new ArrayList<>();
+        final int rawTimestampListSize = rawTimestampList.size();
+        // If timestamp number is smaller than 2, the following computation is not necessary.
+        if (rawTimestampListSize < MIN_TIMESTAMP_DATA_SIZE) {
+            return timestampSlots;
+        }
+        final long rawStartTimestamp = rawTimestampList.get(0);
+        final long rawEndTimestamp = rawTimestampList.get(rawTimestampListSize - 1);
+        // No matter the start is from last full charge or 6 days ago, use the nearest even hour.
+        final long startTimestamp = getNearestEvenHourTimestamp(rawStartTimestamp);
+        // Use the even hour before the raw end timestamp as the end.
+        final long endTimestamp = getLastEvenHourBeforeTimestamp(rawEndTimestamp);
+        // If the start timestamp is later or equal the end one, return the empty list.
+        if (startTimestamp >= endTimestamp) {
+            return timestampSlots;
+        }
+        for (long timestamp = startTimestamp; timestamp <= endTimestamp;
+                timestamp += DateUtils.HOUR_IN_MILLIS) {
+            timestampSlots.add(timestamp);
+        }
+        return timestampSlots;
+    }
+
+    /**
+     * Computes expected daily timestamp slots.
+     *
+     * The valid result should be composed of 3 parts:
+     * 1) start timestamp
+     * 2) every 00:00 timestamp (default timezone) between the start and end
+     * 3) end timestamp
+     * Otherwise, returns an empty list.
+     */
+    @VisibleForTesting
+    static List<Long> getDailyTimestamps(final List<Long> timestampList) {
+        final List<Long> dailyTimestampList = new ArrayList<>();
+        // If timestamp number is smaller than 2, the following computation is not necessary.
+        if (timestampList.size() < MIN_TIMESTAMP_DATA_SIZE) {
+            return dailyTimestampList;
+        }
+        final long startTime = timestampList.get(0);
+        final long endTime = timestampList.get(timestampList.size() - 1);
+        long nextDay = getTimestampOfNextDay(startTime);
+        dailyTimestampList.add(startTime);
+        while (nextDay < endTime) {
+            dailyTimestampList.add(nextDay);
+            nextDay += DateUtils.DAY_IN_MILLIS;
+        }
+        dailyTimestampList.add(endTime);
+        return dailyTimestampList;
+    }
+
+    @VisibleForTesting
+    static boolean isFromFullCharge(@Nullable final Map<String, BatteryHistEntry> entryList) {
+        if (entryList == null) {
+            Log.d(TAG, "entryList is null in isFromFullCharge()");
+            return false;
+        }
+        final List<String> entryKeys = new ArrayList<>(entryList.keySet());
+        if (entryKeys.isEmpty()) {
+            Log.d(TAG, "empty entryList in isFromFullCharge()");
+            return false;
+        }
+        // The hist entries in the same timestamp should have same battery status and level.
+        // Checking the first one should be enough.
+        final BatteryHistEntry firstHistEntry = entryList.get(entryKeys.get(0));
+        return BatteryStatus.isCharged(firstHistEntry.mBatteryStatus, firstHistEntry.mBatteryLevel);
+    }
+
+    @VisibleForTesting
+    static long[] findNearestTimestamp(final List<Long> timestamps, final long target) {
+        final long[] results = new long[] {Long.MIN_VALUE, Long.MAX_VALUE};
+        // Searches the nearest lower and upper timestamp value.
+        timestamps.forEach(timestamp -> {
+            if (timestamp <= target && timestamp > results[0]) {
+                results[0] = timestamp;
+            }
+            if (timestamp >= target && timestamp < results[1]) {
+                results[1] = timestamp;
+            }
+        });
+        // Uses zero value to represent invalid searching result.
+        results[0] = results[0] == Long.MIN_VALUE ? 0 : results[0];
+        results[1] = results[1] == Long.MAX_VALUE ? 0 : results[1];
+        return results;
+    }
+
+    /**
+     * @return Returns the timestamp for 00:00 1 day after the given timestamp based on local
+     * timezone.
+     */
+    @VisibleForTesting
+    static long getTimestampOfNextDay(long timestamp) {
+        return getTimestampWithDayDiff(timestamp, /*dayDiff=*/ 1);
+    }
+
+    /**
+     *  Returns whether currentSlot will be used in daily chart.
+     */
+    @VisibleForTesting
+    static boolean isForDailyChart(final boolean isStartOrEnd, final long currentSlot) {
+        // The start and end timestamps will always be used in daily chart.
+        if (isStartOrEnd) {
+            return true;
+        }
+
+        // The timestamps for 00:00 will be used in daily chart.
+        final long startOfTheDay = getTimestampWithDayDiff(currentSlot, /*dayDiff=*/ 0);
+        return currentSlot == startOfTheDay;
+    }
+
+    /**
+     * @return Returns the indexed battery usage data for each corresponding time slot.
+     *
+     * There could be 2 cases of the returned value:
+     * 1) null: empty or invalid data.
+     * 2) non-null: must be a 2d map and composed by 3 parts:
+     *    1 - [SELECTED_INDEX_ALL][SELECTED_INDEX_ALL]
+     *    2 - [0][SELECTED_INDEX_ALL] ~ [maxDailyIndex][SELECTED_INDEX_ALL]
+     *    3 - [0][0] ~ [maxDailyIndex][maxHourlyIndex]
+     */
+    @VisibleForTesting
+    @Nullable
+    static Map<Integer, Map<Integer, BatteryDiffData>> getBatteryUsageMap(
+            final Context context,
+            final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay,
+            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
+        if (batteryHistoryMap.isEmpty()) {
+            return null;
+        }
+        final Map<Integer, Map<Integer, BatteryDiffData>> resultMap = new HashMap<>();
+        // Insert diff data from [0][0] to [maxDailyIndex][maxHourlyIndex].
+        insertHourlyUsageDiffData(
+                context, hourlyBatteryLevelsPerDay, batteryHistoryMap, resultMap);
+        // Insert diff data from [0][SELECTED_INDEX_ALL] to [maxDailyIndex][SELECTED_INDEX_ALL].
+        insertDailyUsageDiffData(hourlyBatteryLevelsPerDay, resultMap);
+        // Insert diff data [SELECTED_INDEX_ALL][SELECTED_INDEX_ALL].
+        insertAllUsageDiffData(resultMap);
+        purgeLowPercentageAndFakeData(context, resultMap);
+        if (!isUsageMapValid(resultMap, hourlyBatteryLevelsPerDay)) {
+            return null;
+        }
+        return resultMap;
+    }
+
+    /**
+     * Interpolates history map based on expected timestamp slots and processes the corner case when
+     * the expected start timestamp is earlier than what we have.
+     */
+    private static void interpolateHistory(
+            Context context,
+            final List<Long> rawTimestampList,
+            final List<Long> expectedTimestampSlots,
+            final boolean isFromFullCharge,
+            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap,
+            final Map<Long, Map<String, BatteryHistEntry>> resultMap) {
+        if (rawTimestampList.isEmpty() || expectedTimestampSlots.isEmpty()) {
+            return;
+        }
+        final long expectedStartTimestamp = expectedTimestampSlots.get(0);
+        final long rawStartTimestamp = rawTimestampList.get(0);
+        int startIndex = 0;
+        // If the expected start timestamp is full charge or earlier than what we have, use the
+        // first data of what we have directly. This should be OK because the expected start
+        // timestamp is the nearest even hour of the raw start timestamp, their time diff is no
+        // more than 1 hour.
+        if (isFromFullCharge || expectedStartTimestamp < rawStartTimestamp) {
+            startIndex = 1;
+            resultMap.put(expectedStartTimestamp, batteryHistoryMap.get(rawStartTimestamp));
+        }
+        final int expectedTimestampSlotsSize = expectedTimestampSlots.size();
+        for (int index = startIndex; index < expectedTimestampSlotsSize; index++) {
+            final long currentSlot = expectedTimestampSlots.get(index);
+            final boolean isStartOrEnd = index == 0 || index == expectedTimestampSlotsSize - 1;
+            interpolateHistoryForSlot(
+                    context, currentSlot, rawTimestampList, batteryHistoryMap, resultMap,
+                    isStartOrEnd);
+        }
+    }
+
+    private static void interpolateHistoryForSlot(
+            Context context,
+            final long currentSlot,
+            final List<Long> rawTimestampList,
+            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap,
+            final Map<Long, Map<String, BatteryHistEntry>> resultMap,
+            final boolean isStartOrEnd) {
+        final long[] nearestTimestamps = findNearestTimestamp(rawTimestampList, currentSlot);
+        final long lowerTimestamp = nearestTimestamps[0];
+        final long upperTimestamp = nearestTimestamps[1];
+        // Case 1: upper timestamp is zero since scheduler is delayed!
+        if (upperTimestamp == 0) {
+            log(context, "job scheduler is delayed", currentSlot, null);
+            resultMap.put(currentSlot, new HashMap<>());
+            return;
+        }
+        // Case 2: upper timestamp is closed to the current timestamp.
+        if ((upperTimestamp - currentSlot)
+                < MAX_DIFF_SECONDS_OF_UPPER_TIMESTAMP * DateUtils.SECOND_IN_MILLIS) {
+            log(context, "force align into the nearest slot", currentSlot, null);
+            resultMap.put(currentSlot, batteryHistoryMap.get(upperTimestamp));
+            return;
+        }
+        // Case 3: lower timestamp is zero before starting to collect data.
+        if (lowerTimestamp == 0) {
+            log(context, "no lower timestamp slot data", currentSlot, null);
+            resultMap.put(currentSlot, new HashMap<>());
+            return;
+        }
+        interpolateHistoryForSlot(context,
+                currentSlot, lowerTimestamp, upperTimestamp, batteryHistoryMap, resultMap,
+                isStartOrEnd);
+    }
+
+    private static void interpolateHistoryForSlot(
+            Context context,
+            final long currentSlot,
+            final long lowerTimestamp,
+            final long upperTimestamp,
+            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap,
+            final Map<Long, Map<String, BatteryHistEntry>> resultMap,
+            final boolean isStartOrEnd) {
+        final Map<String, BatteryHistEntry> lowerEntryDataMap =
+                batteryHistoryMap.get(lowerTimestamp);
+        final Map<String, BatteryHistEntry> upperEntryDataMap =
+                batteryHistoryMap.get(upperTimestamp);
+        // Verifies whether the lower data is valid to use or not by checking boot time.
+        final BatteryHistEntry upperEntryDataFirstEntry =
+                upperEntryDataMap.values().stream().findFirst().get();
+        final long upperEntryDataBootTimestamp =
+                upperEntryDataFirstEntry.mTimestamp - upperEntryDataFirstEntry.mBootTimestamp;
+        // Lower data is captured before upper data corresponding device is booting.
+        // Skips the booting-specific logics and always does interpolation for daily chart level
+        // data.
+        if (lowerTimestamp < upperEntryDataBootTimestamp
+                && !isForDailyChart(isStartOrEnd, currentSlot)) {
+            // Provides an opportunity to force align the slot directly.
+            if ((upperTimestamp - currentSlot) < 10 * DateUtils.MINUTE_IN_MILLIS) {
+                log(context, "force align into the nearest slot", currentSlot, null);
+                resultMap.put(currentSlot, upperEntryDataMap);
+            } else {
+                log(context, "in the different booting section", currentSlot, null);
+                resultMap.put(currentSlot, new HashMap<>());
+            }
+            return;
+        }
+        log(context, "apply interpolation arithmetic", currentSlot, null);
+        final Map<String, BatteryHistEntry> newHistEntryMap = new HashMap<>();
+        final double timestampLength = upperTimestamp - lowerTimestamp;
+        final double timestampDiff = currentSlot - lowerTimestamp;
+        // Applies interpolation arithmetic for each BatteryHistEntry.
+        for (String entryKey : upperEntryDataMap.keySet()) {
+            final BatteryHistEntry lowerEntry = lowerEntryDataMap.get(entryKey);
+            final BatteryHistEntry upperEntry = upperEntryDataMap.get(entryKey);
+            // Checks whether there is any abnormal battery reset conditions.
+            if (lowerEntry != null) {
+                final boolean invalidForegroundUsageTime =
+                        lowerEntry.mForegroundUsageTimeInMs > upperEntry.mForegroundUsageTimeInMs;
+                final boolean invalidBackgroundUsageTime =
+                        lowerEntry.mBackgroundUsageTimeInMs > upperEntry.mBackgroundUsageTimeInMs;
+                if (invalidForegroundUsageTime || invalidBackgroundUsageTime) {
+                    newHistEntryMap.put(entryKey, upperEntry);
+                    log(context, "abnormal reset condition is found", currentSlot, upperEntry);
+                    continue;
+                }
+            }
+            final BatteryHistEntry newEntry =
+                    BatteryHistEntry.interpolate(
+                            currentSlot,
+                            upperTimestamp,
+                            /*ratio=*/ timestampDiff / timestampLength,
+                            lowerEntry,
+                            upperEntry);
+            newHistEntryMap.put(entryKey, newEntry);
+            if (lowerEntry == null) {
+                log(context, "cannot find lower entry data", currentSlot, upperEntry);
+                continue;
+            }
+        }
+        resultMap.put(currentSlot, newHistEntryMap);
+    }
+
+    /**
+     * @return Returns the nearest even hour timestamp of the given timestamp.
+     */
+    private static long getNearestEvenHourTimestamp(long rawTimestamp) {
+        // If raw hour is even, the nearest even hour should be the even hour before raw
+        // start. The hour doesn't need to change and just set the minutes and seconds to 0.
+        // Otherwise, the nearest even hour should be raw hour + 1.
+        // For example, the nearest hour of 14:30:50 should be 14:00:00. While the nearest
+        // hour of 15:30:50 should be 16:00:00.
+        return getEvenHourTimestamp(rawTimestamp, /*addHourOfDay*/ 1);
+    }
+
+    /**
+     * @return Returns the last even hour timestamp before the given timestamp.
+     */
+    private static long getLastEvenHourBeforeTimestamp(long rawTimestamp) {
+        // If raw hour is even, the hour doesn't need to change as well.
+        // Otherwise, the even hour before raw end should be raw hour - 1.
+        // For example, the even hour before 14:30:50 should be 14:00:00. While the even
+        // hour before 15:30:50 should be 14:00:00.
+        return getEvenHourTimestamp(rawTimestamp, /*addHourOfDay*/ -1);
+    }
+
+    private static long getEvenHourTimestamp(long rawTimestamp, int addHourOfDay) {
+        final Calendar evenHourCalendar = Calendar.getInstance();
+        evenHourCalendar.setTimeInMillis(rawTimestamp);
+        // Before computing the evenHourCalendar, record raw hour based on local timezone.
+        final int rawHour = evenHourCalendar.get(Calendar.HOUR_OF_DAY);
+        if (rawHour % 2 != 0) {
+            evenHourCalendar.add(Calendar.HOUR_OF_DAY, addHourOfDay);
+        }
+        evenHourCalendar.set(Calendar.MINUTE, 0);
+        evenHourCalendar.set(Calendar.SECOND, 0);
+        evenHourCalendar.set(Calendar.MILLISECOND, 0);
+        return evenHourCalendar.getTimeInMillis();
+    }
+
+    private static List<List<Long>> getHourlyTimestamps(final List<Long> dailyTimestamps) {
+        final List<List<Long>> hourlyTimestamps = new ArrayList<>();
+        if (dailyTimestamps.size() < MIN_DAILY_DATA_SIZE) {
+            return hourlyTimestamps;
+        }
+
+        for (int dailyStartIndex = 0; dailyStartIndex < dailyTimestamps.size() - 1;
+                dailyStartIndex++) {
+            long currentTimestamp = dailyTimestamps.get(dailyStartIndex);
+            final long dailyEndTimestamp = dailyTimestamps.get(dailyStartIndex + 1);
+            final List<Long> hourlyTimestampsPerDay = new ArrayList<>();
+            while (currentTimestamp <= dailyEndTimestamp) {
+                hourlyTimestampsPerDay.add(currentTimestamp);
+                currentTimestamp += 2 * DateUtils.HOUR_IN_MILLIS;
+            }
+            hourlyTimestamps.add(hourlyTimestampsPerDay);
+        }
+        return hourlyTimestamps;
+    }
+
+    private static List<BatteryLevelData.PeriodBatteryLevelData> getHourlyPeriodBatteryLevelData(
+            Context context,
+            final Map<Long, Map<String, BatteryHistEntry>> processedBatteryHistoryMap,
+            final List<List<Long>> timestamps) {
+        final List<BatteryLevelData.PeriodBatteryLevelData> levelData = new ArrayList<>();
+        timestamps.forEach(
+                timestampList -> levelData.add(
+                        getPeriodBatteryLevelData(
+                                context, processedBatteryHistoryMap, timestampList)));
+        return levelData;
+    }
+
+    private static BatteryLevelData.PeriodBatteryLevelData getPeriodBatteryLevelData(
+            Context context,
+            final Map<Long, Map<String, BatteryHistEntry>> processedBatteryHistoryMap,
+            final List<Long> timestamps) {
+        final List<Integer> levels = new ArrayList<>();
+        timestamps.forEach(
+                timestamp -> levels.add(getLevel(context, processedBatteryHistoryMap, timestamp)));
+        return new BatteryLevelData.PeriodBatteryLevelData(timestamps, levels);
+    }
+
+    private static Integer getLevel(
+            Context context,
+            final Map<Long, Map<String, BatteryHistEntry>> processedBatteryHistoryMap,
+            final long timestamp) {
+        final Map<String, BatteryHistEntry> entryMap = processedBatteryHistoryMap.get(timestamp);
+        if (entryMap == null || entryMap.isEmpty()) {
+            Log.e(TAG, "abnormal entry list in the timestamp:"
+                    + utcToLocalTime(context, timestamp));
+            return null;
+        }
+        // Averages the battery level in each time slot to avoid corner conditions.
+        float batteryLevelCounter = 0;
+        for (BatteryHistEntry entry : entryMap.values()) {
+            batteryLevelCounter += entry.mBatteryLevel;
+        }
+        return Math.round(batteryLevelCounter / entryMap.size());
+    }
+
+    private static void insertHourlyUsageDiffData(
+            Context context,
+            final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay,
+            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap,
+            final Map<Integer, Map<Integer, BatteryDiffData>> resultMap) {
+        final int currentUserId = context.getUserId();
+        final UserHandle userHandle =
+                Utils.getManagedProfile(context.getSystemService(UserManager.class));
+        final int workProfileUserId =
+                userHandle != null ? userHandle.getIdentifier() : Integer.MIN_VALUE;
+        // Each time slot usage diff data =
+        //     Math.abs(timestamp[i+2] data - timestamp[i+1] data) +
+        //     Math.abs(timestamp[i+1] data - timestamp[i] data);
+        // since we want to aggregate every two hours data into a single time slot.
+        for (int dailyIndex = 0; dailyIndex < hourlyBatteryLevelsPerDay.size(); dailyIndex++) {
+            final Map<Integer, BatteryDiffData> dailyDiffMap = new HashMap<>();
+            resultMap.put(dailyIndex, dailyDiffMap);
+            if (hourlyBatteryLevelsPerDay.get(dailyIndex) == null) {
+                continue;
+            }
+            final List<Long> timestamps = hourlyBatteryLevelsPerDay.get(dailyIndex).getTimestamps();
+            for (int hourlyIndex = 0; hourlyIndex < timestamps.size() - 1; hourlyIndex++) {
+                final BatteryDiffData hourlyBatteryDiffData =
+                        insertHourlyUsageDiffDataPerSlot(
+                                context,
+                                currentUserId,
+                                workProfileUserId,
+                                hourlyIndex,
+                                timestamps,
+                                batteryHistoryMap);
+                dailyDiffMap.put(hourlyIndex, hourlyBatteryDiffData);
+            }
+        }
+    }
+
+    private static void insertDailyUsageDiffData(
+            final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay,
+            final Map<Integer, Map<Integer, BatteryDiffData>> resultMap) {
+        for (int index = 0; index < hourlyBatteryLevelsPerDay.size(); index++) {
+            Map<Integer, BatteryDiffData> dailyUsageMap = resultMap.get(index);
+            if (dailyUsageMap == null) {
+                dailyUsageMap = new HashMap<>();
+                resultMap.put(index, dailyUsageMap);
+            }
+            dailyUsageMap.put(
+                    SELECTED_INDEX_ALL,
+                    getAccumulatedUsageDiffData(dailyUsageMap.values()));
+        }
+    }
+
+    private static void insertAllUsageDiffData(
+            final Map<Integer, Map<Integer, BatteryDiffData>> resultMap) {
+        final List<BatteryDiffData> diffDataList = new ArrayList<>();
+        resultMap.keySet().forEach(
+                key -> diffDataList.add(resultMap.get(key).get(SELECTED_INDEX_ALL)));
+        final Map<Integer, BatteryDiffData> allUsageMap = new HashMap<>();
+        allUsageMap.put(SELECTED_INDEX_ALL, getAccumulatedUsageDiffData(diffDataList));
+        resultMap.put(SELECTED_INDEX_ALL, allUsageMap);
+    }
+
+    @Nullable
+    private static BatteryDiffData insertHourlyUsageDiffDataPerSlot(
+            Context context,
+            final int currentUserId,
+            final int workProfileUserId,
+            final int currentIndex,
+            final List<Long> timestamps,
+            final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
+        final List<BatteryDiffEntry> appEntries = new ArrayList<>();
+        final List<BatteryDiffEntry> systemEntries = new ArrayList<>();
+
+        final Long currentTimestamp = timestamps.get(currentIndex);
+        final Long nextTimestamp = currentTimestamp + DateUtils.HOUR_IN_MILLIS;
+        final Long nextTwoTimestamp = nextTimestamp + DateUtils.HOUR_IN_MILLIS;
+        // Fetches BatteryHistEntry data from corresponding time slot.
+        final Map<String, BatteryHistEntry> currentBatteryHistMap =
+                batteryHistoryMap.getOrDefault(currentTimestamp, EMPTY_BATTERY_MAP);
+        final Map<String, BatteryHistEntry> nextBatteryHistMap =
+                batteryHistoryMap.getOrDefault(nextTimestamp, EMPTY_BATTERY_MAP);
+        final Map<String, BatteryHistEntry> nextTwoBatteryHistMap =
+                batteryHistoryMap.getOrDefault(nextTwoTimestamp, EMPTY_BATTERY_MAP);
+        // We should not get the empty list since we have at least one fake data to record
+        // the battery level and status in each time slot, the empty list is used to
+        // represent there is no enough data to apply interpolation arithmetic.
+        if (currentBatteryHistMap.isEmpty()
+                || nextBatteryHistMap.isEmpty()
+                || nextTwoBatteryHistMap.isEmpty()) {
+            return null;
+        }
+
+        // Collects all keys in these three time slot records as all populations.
+        final Set<String> allBatteryHistEntryKeys = new ArraySet<>();
+        allBatteryHistEntryKeys.addAll(currentBatteryHistMap.keySet());
+        allBatteryHistEntryKeys.addAll(nextBatteryHistMap.keySet());
+        allBatteryHistEntryKeys.addAll(nextTwoBatteryHistMap.keySet());
+
+        double totalConsumePower = 0.0;
+        double consumePowerFromOtherUsers = 0f;
+        // Calculates all packages diff usage data in a specific time slot.
+        for (String key : allBatteryHistEntryKeys) {
+            final BatteryHistEntry currentEntry =
+                    currentBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
+            final BatteryHistEntry nextEntry =
+                    nextBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
+            final BatteryHistEntry nextTwoEntry =
+                    nextTwoBatteryHistMap.getOrDefault(key, EMPTY_BATTERY_HIST_ENTRY);
+            // Cumulative values is a specific time slot for a specific app.
+            long foregroundUsageTimeInMs =
+                    getDiffValue(
+                            currentEntry.mForegroundUsageTimeInMs,
+                            nextEntry.mForegroundUsageTimeInMs,
+                            nextTwoEntry.mForegroundUsageTimeInMs);
+            long backgroundUsageTimeInMs =
+                    getDiffValue(
+                            currentEntry.mBackgroundUsageTimeInMs,
+                            nextEntry.mBackgroundUsageTimeInMs,
+                            nextTwoEntry.mBackgroundUsageTimeInMs);
+            double consumePower =
+                    getDiffValue(
+                            currentEntry.mConsumePower,
+                            nextEntry.mConsumePower,
+                            nextTwoEntry.mConsumePower);
+            // Excludes entry since we don't have enough data to calculate.
+            if (foregroundUsageTimeInMs == 0
+                    && backgroundUsageTimeInMs == 0
+                    && consumePower == 0) {
+                continue;
+            }
+            final BatteryHistEntry selectedBatteryEntry =
+                    selectBatteryHistEntry(currentEntry, nextEntry, nextTwoEntry);
+            if (selectedBatteryEntry == null) {
+                continue;
+            }
+            // Forces refine the cumulative value since it may introduce deviation error since we
+            // will apply the interpolation arithmetic.
+            final float totalUsageTimeInMs =
+                    foregroundUsageTimeInMs + backgroundUsageTimeInMs;
+            if (totalUsageTimeInMs > TOTAL_HOURLY_TIME_THRESHOLD) {
+                final float ratio = TOTAL_HOURLY_TIME_THRESHOLD / totalUsageTimeInMs;
+                if (DEBUG) {
+                    Log.w(TAG, String.format("abnormal usage time %d|%d for:\n%s",
+                            Duration.ofMillis(foregroundUsageTimeInMs).getSeconds(),
+                            Duration.ofMillis(backgroundUsageTimeInMs).getSeconds(),
+                            currentEntry));
+                }
+                foregroundUsageTimeInMs =
+                        Math.round(foregroundUsageTimeInMs * ratio);
+                backgroundUsageTimeInMs =
+                        Math.round(backgroundUsageTimeInMs * ratio);
+                consumePower = consumePower * ratio;
+            }
+            totalConsumePower += consumePower;
+
+            final boolean isFromOtherUsers = isConsumedFromOtherUsers(
+                    currentUserId, workProfileUserId, selectedBatteryEntry);
+            if (isFromOtherUsers) {
+                consumePowerFromOtherUsers += consumePower;
+            } else {
+                final BatteryDiffEntry currentBatteryDiffEntry = new BatteryDiffEntry(
+                        context,
+                        foregroundUsageTimeInMs,
+                        backgroundUsageTimeInMs,
+                        consumePower,
+                        selectedBatteryEntry);
+                if (currentBatteryDiffEntry.isSystemEntry()) {
+                    systemEntries.add(currentBatteryDiffEntry);
+                } else {
+                    appEntries.add(currentBatteryDiffEntry);
+                }
+            }
+        }
+        if (consumePowerFromOtherUsers != 0) {
+            systemEntries.add(createOtherUsersEntry(context, consumePowerFromOtherUsers));
+        }
+
+        // If there is no data, return null instead of empty item.
+        if (appEntries.isEmpty() && systemEntries.isEmpty()) {
+            return null;
+        }
+
+        final BatteryDiffData resultDiffData =
+                new BatteryDiffData(appEntries, systemEntries, totalConsumePower);
+        return resultDiffData;
+    }
+
+    private static boolean isConsumedFromOtherUsers(
+            final int currentUserId,
+            final int workProfileUserId,
+            final BatteryHistEntry batteryHistEntry) {
+        return batteryHistEntry.mConsumerType == ConvertUtils.CONSUMER_TYPE_UID_BATTERY
+                && batteryHistEntry.mUserId != currentUserId
+                && batteryHistEntry.mUserId != workProfileUserId;
+    }
+
+    @Nullable
+    private static BatteryDiffData getAccumulatedUsageDiffData(
+            final Collection<BatteryDiffData> diffEntryListData) {
+        double totalConsumePower = 0f;
+        final Map<String, BatteryDiffEntry> diffEntryMap = new HashMap<>();
+        final List<BatteryDiffEntry> appEntries = new ArrayList<>();
+        final List<BatteryDiffEntry> systemEntries = new ArrayList<>();
+
+        for (BatteryDiffData diffEntryList : diffEntryListData) {
+            if (diffEntryList == null) {
+                continue;
+            }
+            for (BatteryDiffEntry entry : diffEntryList.getAppDiffEntryList()) {
+                computeUsageDiffDataPerEntry(entry, diffEntryMap);
+                totalConsumePower += entry.mConsumePower;
+            }
+            for (BatteryDiffEntry entry : diffEntryList.getSystemDiffEntryList()) {
+                computeUsageDiffDataPerEntry(entry, diffEntryMap);
+                totalConsumePower += entry.mConsumePower;
+            }
+        }
+
+        final Collection<BatteryDiffEntry> diffEntryList = diffEntryMap.values();
+        for (BatteryDiffEntry entry : diffEntryList) {
+            // Sets total daily consume power data into all BatteryDiffEntry.
+            entry.setTotalConsumePower(totalConsumePower);
+            if (entry.isSystemEntry()) {
+                systemEntries.add(entry);
+            } else {
+                appEntries.add(entry);
+            }
+        }
+
+        return diffEntryList.isEmpty() ? null : new BatteryDiffData(appEntries, systemEntries);
+    }
+
+    private static void computeUsageDiffDataPerEntry(
+            final BatteryDiffEntry entry,
+            final Map<String, BatteryDiffEntry> diffEntryMap) {
+        final String key = entry.mBatteryHistEntry.getKey();
+        final BatteryDiffEntry oldBatteryDiffEntry = diffEntryMap.get(key);
+        // Creates new BatteryDiffEntry if we don't have it.
+        if (oldBatteryDiffEntry == null) {
+            diffEntryMap.put(key, entry.clone());
+        } else {
+            // Sums up some field data into the existing one.
+            oldBatteryDiffEntry.mForegroundUsageTimeInMs +=
+                    entry.mForegroundUsageTimeInMs;
+            oldBatteryDiffEntry.mBackgroundUsageTimeInMs +=
+                    entry.mBackgroundUsageTimeInMs;
+            oldBatteryDiffEntry.mConsumePower += entry.mConsumePower;
+        }
+    }
+
+    // Removes low percentage data and fake usage data, which will be zero value.
+    private static void purgeLowPercentageAndFakeData(
+            final Context context,
+            final Map<Integer, Map<Integer, BatteryDiffData>> resultMap) {
+        final Set<CharSequence> backgroundUsageTimeHideList =
+                FeatureFactory.getFactory(context)
+                        .getPowerUsageFeatureProvider(context)
+                        .getHideBackgroundUsageTimeSet(context);
+        final CharSequence[] notAllowShowEntryPackages =
+                FeatureFactory.getFactory(context)
+                        .getPowerUsageFeatureProvider(context)
+                        .getHideApplicationEntries(context);
+        resultMap.keySet().forEach(dailyKey -> {
+            final Map<Integer, BatteryDiffData> dailyUsageMap = resultMap.get(dailyKey);
+            dailyUsageMap.values().forEach(diffEntryLists -> {
+                if (diffEntryLists == null) {
+                    return;
+                }
+                purgeLowPercentageAndFakeData(
+                        diffEntryLists.getAppDiffEntryList(), backgroundUsageTimeHideList,
+                        notAllowShowEntryPackages);
+                purgeLowPercentageAndFakeData(
+                        diffEntryLists.getSystemDiffEntryList(), backgroundUsageTimeHideList,
+                        notAllowShowEntryPackages);
+            });
+        });
+    }
+
+    private static void purgeLowPercentageAndFakeData(
+            final List<BatteryDiffEntry> entries,
+            final Set<CharSequence> backgroundUsageTimeHideList,
+            final CharSequence[] notAllowShowEntryPackages) {
+        final Iterator<BatteryDiffEntry> iterator = entries.iterator();
+        while (iterator.hasNext()) {
+            final BatteryDiffEntry entry = iterator.next();
+            final String packageName = entry.getPackageName();
+            if (entry.getPercentOfTotal() < PERCENTAGE_OF_TOTAL_THRESHOLD
+                    || FAKE_PACKAGE_NAME.equals(packageName)
+                    || contains(packageName, notAllowShowEntryPackages)) {
+                iterator.remove();
+            }
+            if (packageName != null
+                    && !backgroundUsageTimeHideList.isEmpty()
+                    && contains(packageName, backgroundUsageTimeHideList)) {
+                entry.mBackgroundUsageTimeInMs = 0;
+            }
+        }
+    }
+
+    private static boolean isUsageMapValid(
+            final Map<Integer, Map<Integer, BatteryDiffData>> batteryUsageMap,
+            final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay) {
+        if (batteryUsageMap.get(SELECTED_INDEX_ALL) == null
+                || !batteryUsageMap.get(SELECTED_INDEX_ALL).containsKey(SELECTED_INDEX_ALL)) {
+            Log.e(TAG, "no [SELECTED_INDEX_ALL][SELECTED_INDEX_ALL] in batteryUsageMap");
+            return false;
+        }
+        for (int dailyIndex = 0; dailyIndex < hourlyBatteryLevelsPerDay.size(); dailyIndex++) {
+            if (batteryUsageMap.get(dailyIndex) == null
+                    || !batteryUsageMap.get(dailyIndex).containsKey(SELECTED_INDEX_ALL)) {
+                Log.e(TAG, "no [" + dailyIndex + "][SELECTED_INDEX_ALL] in batteryUsageMap, "
+                        + "daily size is: " + hourlyBatteryLevelsPerDay.size());
+                return false;
+            }
+            if (hourlyBatteryLevelsPerDay.get(dailyIndex) == null) {
+                continue;
+            }
+            final List<Long> timestamps = hourlyBatteryLevelsPerDay.get(dailyIndex).getTimestamps();
+            // Length of hourly usage map should be the length of hourly level data - 1.
+            for (int hourlyIndex = 0; hourlyIndex < timestamps.size() - 1; hourlyIndex++) {
+                if (!batteryUsageMap.get(dailyIndex).containsKey(hourlyIndex)) {
+                    Log.e(TAG, "no [" + dailyIndex + "][" + hourlyIndex + "] in batteryUsageMap, "
+                            + "hourly size is: " + (timestamps.size() - 1));
+                    return false;
+                }
+            }
+        }
+        return true;
+    }
+
+    private static long getTimestampWithDayDiff(final long timestamp, final int dayDiff) {
+        final Calendar calendar = Calendar.getInstance();
+        calendar.setTimeInMillis(timestamp);
+        calendar.add(Calendar.DAY_OF_YEAR, dayDiff);
+        calendar.set(Calendar.HOUR_OF_DAY, 0);
+        calendar.set(Calendar.MINUTE, 0);
+        calendar.set(Calendar.SECOND, 0);
+        return calendar.getTimeInMillis();
+    }
+
+    private static boolean contains(String target, Set<CharSequence> packageNames) {
+        if (target != null && packageNames != null) {
+            for (CharSequence packageName : packageNames) {
+                if (TextUtils.equals(target, packageName)) {
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    private static long getDiffValue(long v1, long v2, long v3) {
+        return (v2 > v1 ? v2 - v1 : 0) + (v3 > v2 ? v3 - v2 : 0);
+    }
+
+    private static double getDiffValue(double v1, double v2, double v3) {
+        return (v2 > v1 ? v2 - v1 : 0) + (v3 > v2 ? v3 - v2 : 0);
+    }
+
+    @Nullable
+    private static BatteryHistEntry selectBatteryHistEntry(
+            final BatteryHistEntry... batteryHistEntries) {
+        for (BatteryHistEntry entry : batteryHistEntries) {
+            if (entry != null && entry != EMPTY_BATTERY_HIST_ENTRY) {
+                return entry;
+            }
+        }
+        return null;
+    }
+
+    private static BatteryDiffEntry createOtherUsersEntry(
+            Context context, final double consumePower) {
+        final ContentValues values = new ContentValues();
+        values.put(BatteryHistEntry.KEY_UID, BatteryUtils.UID_OTHER_USERS);
+        values.put(BatteryHistEntry.KEY_USER_ID, BatteryUtils.UID_OTHER_USERS);
+        values.put(BatteryHistEntry.KEY_CONSUMER_TYPE, ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+        // We will show the percentage for the "other users" item only, the aggregated
+        // running time information is useless for users to identify individual apps.
+        final BatteryDiffEntry batteryDiffEntry = new BatteryDiffEntry(
+                context,
+                /*foregroundUsageTimeInMs=*/ 0,
+                /*backgroundUsageTimeInMs=*/ 0,
+                consumePower,
+                new BatteryHistEntry(values));
+        return batteryDiffEntry;
+    }
+
+    private static void log(Context context, final String content, final long timestamp,
+            final BatteryHistEntry entry) {
+        if (DEBUG) {
+            Log.d(TAG, String.format(entry != null ? "%s %s:\n%s" : "%s %s:%s",
+                    utcToLocalTime(context, timestamp), content, entry));
+        }
+    }
+
+    // Compute diff map and loads all items (icon and label) in the background.
+    private static final class ComputeUsageMapAndLoadItemsTask
+            extends AsyncTask<Void, Void, Map<Integer, Map<Integer, BatteryDiffData>>> {
+
+        private Context mApplicationContext;
+        private Handler mHandler;
+        private UsageMapAsyncResponse mAsyncResponseDelegate;
+        private List<BatteryLevelData.PeriodBatteryLevelData> mHourlyBatteryLevelsPerDay;
+        private Map<Long, Map<String, BatteryHistEntry>> mBatteryHistoryMap;
+
+        private ComputeUsageMapAndLoadItemsTask(
+                Context context,
+                Handler handler,
+                final UsageMapAsyncResponse asyncResponseDelegate,
+                final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay,
+                final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap) {
+            mApplicationContext = context.getApplicationContext();
+            mHandler = handler;
+            mAsyncResponseDelegate = asyncResponseDelegate;
+            mHourlyBatteryLevelsPerDay = hourlyBatteryLevelsPerDay;
+            mBatteryHistoryMap = batteryHistoryMap;
+        }
+
+        @Override
+        protected Map<Integer, Map<Integer, BatteryDiffData>> doInBackground(Void... voids) {
+            if (mApplicationContext == null
+                    || mHandler == null
+                    || mAsyncResponseDelegate == null
+                    || mBatteryHistoryMap == null
+                    || mHourlyBatteryLevelsPerDay == null) {
+                Log.e(TAG, "invalid input for ComputeUsageMapAndLoadItemsTask()");
+                return null;
+            }
+            final long startTime = System.currentTimeMillis();
+            final Map<Integer, Map<Integer, BatteryDiffData>> batteryUsageMap =
+                    getBatteryUsageMap(
+                            mApplicationContext, mHourlyBatteryLevelsPerDay, mBatteryHistoryMap);
+            if (batteryUsageMap != null) {
+                // Pre-loads each BatteryDiffEntry relative icon and label for all slots.
+                final BatteryDiffData batteryUsageMapForAll =
+                        batteryUsageMap.get(SELECTED_INDEX_ALL).get(SELECTED_INDEX_ALL);
+                if (batteryUsageMapForAll != null) {
+                    batteryUsageMapForAll.getAppDiffEntryList().forEach(
+                            entry -> entry.loadLabelAndIcon());
+                    batteryUsageMapForAll.getSystemDiffEntryList().forEach(
+                            entry -> entry.loadLabelAndIcon());
+                }
+            }
+            Log.d(TAG, String.format("execute ComputeUsageMapAndLoadItemsTask in %d/ms",
+                    (System.currentTimeMillis() - startTime)));
+            return batteryUsageMap;
+        }
+
+        @Override
+        protected void onPostExecute(
+                final Map<Integer, Map<Integer, BatteryDiffData>> batteryUsageMap) {
+            mApplicationContext = null;
+            mHourlyBatteryLevelsPerDay = null;
+            mBatteryHistoryMap = null;
+            // Post results back to main thread to refresh UI.
+            if (mHandler != null && mAsyncResponseDelegate != null) {
+                mHandler.post(() -> {
+                    mAsyncResponseDelegate.onBatteryUsageMapLoaded(batteryUsageMap);
+                });
+            }
+        }
+    }
+}
diff --git a/src/com/android/settings/fuelgauge/ExpandDividerPreference.java b/src/com/android/settings/fuelgauge/batteryusage/ExpandDividerPreference.java
similarity index 91%
rename from src/com/android/settings/fuelgauge/ExpandDividerPreference.java
rename to src/com/android/settings/fuelgauge/batteryusage/ExpandDividerPreference.java
index 4517177..8af842b 100644
--- a/src/com/android/settings/fuelgauge/ExpandDividerPreference.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/ExpandDividerPreference.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,11 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.content.Context;
 import android.util.AttributeSet;
-import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
 
@@ -33,8 +32,10 @@
     @VisibleForTesting
     static final String PREFERENCE_KEY = "expandable_divider";
 
-    @VisibleForTesting TextView mTextView;
-    @VisibleForTesting ImageView mImageView;
+    @VisibleForTesting
+    TextView mTextView;
+    @VisibleForTesting
+    ImageView mImageView;
     private OnExpandListener mOnExpandListener;
 
     private boolean mIsExpanded = false;
@@ -42,6 +43,7 @@
 
     /** A callback listener for expand state is changed by users. */
     public interface OnExpandListener {
+        /** Callback function for expand state is changed by users. */
         void onExpand(boolean isExpanded);
     }
 
diff --git a/src/com/android/settings/fuelgauge/PowerGaugePreference.java b/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreference.java
similarity index 91%
rename from src/com/android/settings/fuelgauge/PowerGaugePreference.java
rename to src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreference.java
index ea79d11..5a4f672 100644
--- a/src/com/android/settings/fuelgauge/PowerGaugePreference.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreference.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import android.content.Context;
 import android.graphics.drawable.Drawable;
@@ -67,34 +67,41 @@
         mShowAnomalyIcon = false;
     }
 
+    /** Sets the content description. */
     public void setContentDescription(String name) {
         mContentDescription = name;
         notifyChanged();
     }
 
+    /** Sets the percent of total. */
     public void setPercent(double percentOfTotal) {
         mProgress = Utils.formatPercentage(percentOfTotal, true);
         notifyChanged();
     }
 
+    /** Gets the percent of total. */
     public String getPercent() {
         return mProgress.toString();
     }
 
+    /** Sets the subtitle. */
     public void setSubtitle(CharSequence subtitle) {
         mProgress = subtitle;
         notifyChanged();
     }
 
+    /** Gets the subtitle. */
     public CharSequence getSubtitle() {
         return mProgress;
     }
 
+    /** Sets whether to show anomaly icon */
     public void shouldShowAnomalyIcon(boolean showAnomalyIcon) {
         mShowAnomalyIcon = showAnomalyIcon;
         notifyChanged();
     }
 
+    /** Gets whether to show anomaly icon */
     public boolean showAnomalyIcon() {
         return mShowAnomalyIcon;
     }
diff --git a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java
similarity index 88%
rename from src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
rename to src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java
index afbb71f..b88d85d 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java
@@ -1,17 +1,19 @@
 /*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of the License at
+ * 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.
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.android.settings.fuelgauge.BatteryBroadcastReceiver.BatteryUpdateType;
 
@@ -35,6 +37,7 @@
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
 import com.android.settings.fuelgauge.BatteryBroadcastReceiver;
+import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settingslib.core.AbstractPreferenceController;
@@ -45,6 +48,7 @@
 import java.util.List;
 import java.util.Map;
 
+/** Advanced power usage. */
 @SearchIndexable(forTarget = SearchIndexable.ALL & ~SearchIndexable.ARC)
 public class PowerUsageAdvanced extends PowerUsageBase {
     private static final String TAG = "AdvancedBatteryUsage";
@@ -69,14 +73,14 @@
 
     private final ContentObserver mBatteryObserver =
             new ContentObserver(new Handler()) {
-            @Override
-            public void onChange(boolean selfChange) {
-                Log.d(TAG, "onBatteryContentChange: " + selfChange);
-                mIsChartDataLoaded = false;
-                restartBatteryStatsLoader(
-                        BatteryBroadcastReceiver.BatteryUpdateType.MANUAL);
-            }
-    };
+                @Override
+                public void onChange(boolean selfChange) {
+                    Log.d(TAG, "onBatteryContentChange: " + selfChange);
+                    mIsChartDataLoaded = false;
+                    restartBatteryStatsLoader(
+                            BatteryBroadcastReceiver.BatteryUpdateType.MANUAL);
+                }
+            };
 
     @Override
     public void onCreate(Bundle icicle) {
@@ -87,7 +91,7 @@
         if (mIsChartGraphEnabled) {
             setBatteryChartPreferenceController();
         } else {
-           updateHistPrefSummary(context);
+            updateHistPrefSummary(context);
         }
     }
 
@@ -143,13 +147,13 @@
         if (mIsChartGraphEnabled) {
             mBatteryChartPreferenceController =
                     new BatteryChartPreferenceController(context, KEY_APP_LIST,
-                        getSettingsLifecycle(), (SettingsActivity) getActivity(), this);
+                            getSettingsLifecycle(), (SettingsActivity) getActivity(), this);
             controllers.add(mBatteryChartPreferenceController);
             setBatteryChartPreferenceController();
         } else {
             mBatteryAppListPreferenceController =
                     new BatteryAppListPreferenceController(context, KEY_APP_LIST,
-                        getSettingsLifecycle(), (SettingsActivity) getActivity(), this);
+                            getSettingsLifecycle(), (SettingsActivity) getActivity(), this);
             controllers.add(mBatteryAppListPreferenceController);
         }
         return controllers;
@@ -185,7 +189,7 @@
         if (mIsChartGraphEnabled && !mIsChartDataLoaded) {
             mIsChartDataLoaded = true;
             getLoaderManager().restartLoader(LOADER_BATTERY_USAGE_STATS, bundle,
-                mBatteryHistoryLoaderCallbacks);
+                    mBatteryHistoryLoaderCallbacks);
         } else if (!mIsChartGraphEnabled) {
             super.restartBatteryStatsLoader(refreshType);
         }
diff --git a/src/com/android/settings/fuelgauge/PowerUsageBase.java b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageBase.java
similarity index 95%
rename from src/com/android/settings/fuelgauge/PowerUsageBase.java
rename to src/com/android/settings/fuelgauge/batteryusage/PowerUsageBase.java
index 6563155..ccefdf2 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageBase.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageBase.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.android.settings.fuelgauge.BatteryBroadcastReceiver.BatteryUpdateType;
 
@@ -23,7 +23,6 @@
 import android.os.Bundle;
 import android.os.UserManager;
 import android.util.Log;
-import android.view.Menu;
 
 import androidx.annotation.NonNull;
 import androidx.annotation.VisibleForTesting;
@@ -31,6 +30,8 @@
 import androidx.loader.content.Loader;
 
 import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.fuelgauge.BatteryBroadcastReceiver;
+import com.android.settings.fuelgauge.BatteryUtils;
 
 /**
  * Common base class for things that need to show the battery usage graph.
@@ -99,6 +100,7 @@
     }
 
     protected abstract void refreshUi(@BatteryUpdateType int refreshType);
+
     protected abstract boolean isBatteryHistoryNeeded();
 
     protected void updatePreference(BatteryHistoryPreference historyPref) {
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummary.java
similarity index 95%
rename from src/com/android/settings/fuelgauge/PowerUsageSummary.java
rename to src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummary.java
index 19a8011..bca32a7 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummary.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.android.settings.fuelgauge.BatteryBroadcastReceiver.BatteryUpdateType;
 
@@ -34,6 +34,11 @@
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
 import com.android.settings.Utils;
+import com.android.settings.fuelgauge.BatteryHeaderPreferenceController;
+import com.android.settings.fuelgauge.BatteryInfo;
+import com.android.settings.fuelgauge.BatteryInfoLoader;
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
 import com.android.settings.fuelgauge.batterytip.BatteryTipLoader;
 import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
 import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
@@ -254,10 +259,7 @@
     @VisibleForTesting
     void initPreference() {
         mBatteryUsagePreference = findPreference(KEY_BATTERY_USAGE);
-        mBatteryUsagePreference.setSummary(
-                mPowerFeatureProvider.isChartGraphEnabled(getContext()) ?
-                        getString(R.string.advanced_battery_preference_summary_with_hours) :
-                        getString(R.string.advanced_battery_preference_summary));
+        mBatteryUsagePreference.setSummary(getString(R.string.advanced_battery_preference_summary));
 
         mHelpPreference = findPreference(KEY_BATTERY_ERROR);
         mHelpPreference.setVisible(false);
diff --git a/src/com/android/settings/gestures/LongPressPowerButtonPreferenceController.java b/src/com/android/settings/gestures/LongPressPowerButtonPreferenceController.java
deleted file mode 100644
index 82766db..0000000
--- a/src/com/android/settings/gestures/LongPressPowerButtonPreferenceController.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
- * Copyright (C) 2021 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.gestures;
-
-import static com.android.settings.gestures.PowerMenuSettingsUtils.LONG_PRESS_POWER_ASSISTANT_VALUE;
-import static com.android.settings.gestures.PowerMenuSettingsUtils.LONG_PRESS_POWER_GLOBAL_ACTIONS;
-import static com.android.settings.gestures.PowerMenuSettingsUtils.POWER_BUTTON_LONG_PRESS_DEFAULT_VALUE_RESOURCE;
-import static com.android.settings.gestures.PowerMenuSettingsUtils.POWER_BUTTON_LONG_PRESS_SETTING;
-
-import android.content.Context;
-import android.provider.Settings;
-
-import androidx.preference.Preference;
-import androidx.preference.PreferenceScreen;
-
-import com.android.internal.annotations.VisibleForTesting;
-import com.android.settings.R;
-import com.android.settings.core.TogglePreferenceController;
-
-import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
-
-/**
- * Configures the behaviour of long press power button action.
- */
-public class LongPressPowerButtonPreferenceController extends TogglePreferenceController {
-
-    private static final String KEY_CHORD_POWER_VOLUME_UP_SETTING =
-            Settings.Global.KEY_CHORD_POWER_VOLUME_UP;
-
-    private static final String FOOTER_HINT_KEY = "power_menu_power_volume_up_hint";
-    private static final String ASSIST_SWITCH_KEY = "gesture_power_menu_long_press_for_assist";
-
-    /**
-     * Values used for volume key chord behaviour when Assist setting is enabled.
-     *
-     * Values based on config_keyChordPowerVolumeUp in
-     * frameworks/base/core/res/res/values/config.xml
-     */
-    @VisibleForTesting
-    static final int KEY_CHORD_POWER_VOLUME_UP_NO_ACTION = 0;
-    @VisibleForTesting
-    static final int KEY_CHORD_POWER_VOLUME_UP_MUTE_TOGGLE = 1;
-    @VisibleForTesting
-    static final int KEY_CHORD_POWER_VOLUME_UP_GLOBAL_ACTIONS = 2;
-
-    private static final int KEY_CHORD_POWER_VOLUME_UP_DEFAULT_VALUE_RESOURCE =
-            com.android.internal.R.integer.config_keyChordPowerVolumeUp;
-
-    @MonotonicNonNull
-    @VisibleForTesting
-    Preference mFooterHint;
-
-    @MonotonicNonNull
-    @VisibleForTesting
-    Preference mAssistSwitch;
-
-    public LongPressPowerButtonPreferenceController(Context context, String key) {
-        super(context, key);
-    }
-
-    @Override
-    public void displayPreference(PreferenceScreen screen) {
-        super.displayPreference(screen);
-        mFooterHint = screen.findPreference(FOOTER_HINT_KEY);
-        mAssistSwitch = screen.findPreference(ASSIST_SWITCH_KEY);
-        refreshStateDisplay();
-    }
-
-    @Override
-    public CharSequence getSummary() {
-        final int powerButtonValue = PowerMenuSettingsUtils.getPowerButtonSettingValue(mContext);
-        if (powerButtonValue == LONG_PRESS_POWER_ASSISTANT_VALUE) {
-            return mContext.getString(R.string.power_menu_summary_long_press_for_assist_enabled);
-        } else if (powerButtonValue == LONG_PRESS_POWER_GLOBAL_ACTIONS) {
-            return mContext.getString(
-                    R.string.power_menu_summary_long_press_for_assist_disabled_with_power_menu);
-        } else {
-            return mContext.getString(
-                    R.string.power_menu_summary_long_press_for_assist_disabled_no_action);
-        }
-    }
-
-    @Override
-    public int getAvailabilityStatus() {
-        final boolean enabled = mContext.getResources().getBoolean(
-                com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable);
-        return enabled ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
-    }
-
-    @Override
-    public boolean isChecked() {
-        return PowerMenuSettingsUtils.isLongPressPowerForAssistEnabled(mContext);
-    }
-
-    @Override
-    public boolean setChecked(boolean isChecked) {
-        if (setPowerLongPressValue(isChecked)) {
-            // The key chord value is dependant on the long press setting and it always
-            // toggled in tandem. POWER_BUTTON_LONG_PRESS_SETTING is always the source
-            // of truth for both.
-            setPowerVolumeChordValue(isChecked);
-            refreshStateDisplay();
-            return true;
-        }
-
-        return false;
-    }
-
-    @Override
-    public int getSliceHighlightMenuRes() {
-        return R.string.menu_key_system;
-    }
-
-    private void refreshStateDisplay() {
-        if (mAssistSwitch != null) {
-            mAssistSwitch.setSummary(getSummary());
-        }
-
-        if (mFooterHint != null) {
-            String footerHintText = mContext.getString(R.string.power_menu_power_volume_up_hint);
-            // If the device supports hush gesture, we need to notify the user where to find
-            // the setting.
-            if (mContext.getResources().getBoolean(
-                    com.android.internal.R.bool.config_volumeHushGestureEnabled)) {
-                footerHintText = footerHintText + "\n\n" + mContext.getString(
-                        R.string.power_menu_power_prevent_ringing_hint);
-            }
-
-            mFooterHint.setSummary(footerHintText);
-            mFooterHint.setVisible(isPowerMenuKeyChordEnabled(mContext));
-        }
-    }
-
-    private static boolean isPowerMenuKeyChordEnabled(Context context) {
-        return Settings.Global.getInt(context.getContentResolver(),
-                KEY_CHORD_POWER_VOLUME_UP_SETTING,
-                context.getResources().getInteger(
-                        com.android.internal.R.integer.config_keyChordPowerVolumeUp))
-                == KEY_CHORD_POWER_VOLUME_UP_GLOBAL_ACTIONS;
-    }
-
-    private boolean setPowerLongPressValue(boolean isChecked) {
-        if (isChecked) {
-            return Settings.Global.putInt(mContext.getContentResolver(),
-                    POWER_BUTTON_LONG_PRESS_SETTING, LONG_PRESS_POWER_ASSISTANT_VALUE);
-        }
-
-        // We need to determine the right disabled value based on the device default
-        // for long-press power.
-
-        // If the default is to start the assistant, then the fallback is GlobalActions.
-        final int defaultPowerButtonValue = mContext.getResources().getInteger(
-                POWER_BUTTON_LONG_PRESS_DEFAULT_VALUE_RESOURCE);
-        if (defaultPowerButtonValue == LONG_PRESS_POWER_ASSISTANT_VALUE) {
-            return Settings.Global.putInt(mContext.getContentResolver(),
-                    POWER_BUTTON_LONG_PRESS_SETTING, LONG_PRESS_POWER_GLOBAL_ACTIONS);
-        }
-
-        // If the default is something different than Assist, we use that default.
-        return Settings.Global.putInt(mContext.getContentResolver(),
-                POWER_BUTTON_LONG_PRESS_SETTING, defaultPowerButtonValue);
-    }
-
-    /**
-     * Updates {@link Settings.Global.KEY_CHORD_POWER_VOLUME_UP} based on the changed value of
-     * {@link #POWER_BUTTON_LONG_PRESS_SETTING}. If power button is used for Assist, key chord
-     * should show the power menu.
-     */
-    private boolean setPowerVolumeChordValue(boolean isPowerButtonLongPressChecked) {
-        if (isPowerButtonLongPressChecked) {
-            return Settings.Global.putInt(mContext.getContentResolver(),
-                    KEY_CHORD_POWER_VOLUME_UP_SETTING, KEY_CHORD_POWER_VOLUME_UP_GLOBAL_ACTIONS);
-        }
-
-        // We restore key chord to the default value.
-        int keyChordDefaultValue = mContext.getResources().getInteger(
-                KEY_CHORD_POWER_VOLUME_UP_DEFAULT_VALUE_RESOURCE);
-        return Settings.Global.putInt(mContext.getContentResolver(),
-                KEY_CHORD_POWER_VOLUME_UP_SETTING, keyChordDefaultValue);
-    }
-
-}
diff --git a/src/com/android/settings/gestures/LongPressPowerFooterPreferenceController.java b/src/com/android/settings/gestures/LongPressPowerFooterPreferenceController.java
new file mode 100644
index 0000000..b4f6def
--- /dev/null
+++ b/src/com/android/settings/gestures/LongPressPowerFooterPreferenceController.java
@@ -0,0 +1,92 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.gestures;
+
+import android.content.Context;
+import android.net.Uri;
+import android.text.TextUtils;
+
+import androidx.lifecycle.Lifecycle;
+import androidx.lifecycle.LifecycleObserver;
+import androidx.lifecycle.OnLifecycleEvent;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+
+import com.android.settings.R;
+import com.android.settings.core.BasePreferenceController;
+
+/** Configures the behaviour of long press power footer. */
+public class LongPressPowerFooterPreferenceController extends BasePreferenceController
+        implements PowerMenuSettingsUtils.SettingsStateCallback, LifecycleObserver {
+
+    private Preference mPreference;
+    private final PowerMenuSettingsUtils mUtils;
+
+    public LongPressPowerFooterPreferenceController(Context context, String key) {
+        super(context, key);
+        mUtils = new PowerMenuSettingsUtils(context);
+    }
+
+    @Override
+    public int getAvailabilityStatus() {
+        return AVAILABLE;
+    }
+
+    @Override
+    public void displayPreference(PreferenceScreen screen) {
+        super.displayPreference(screen);
+        mPreference = screen.findPreference(getPreferenceKey());
+    }
+
+    @Override
+    public void updateState(Preference preference) {
+        super.updateState(preference);
+
+        CharSequence footerHintText = mContext.getString(R.string.power_menu_power_volume_up_hint);
+        // If the device supports hush gesture, we need to tell the user where to find the setting.
+        if (mContext.getResources()
+                .getBoolean(com.android.internal.R.bool.config_volumeHushGestureEnabled)) {
+            footerHintText =
+                    TextUtils.concat(
+                            footerHintText,
+                            "\n\n",
+                            mContext.getString(R.string.power_menu_power_prevent_ringing_hint));
+        }
+
+        preference.setSummary(footerHintText);
+        preference.setVisible(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext));
+    }
+
+    @Override
+    public void onChange(Uri uri) {
+        if (mPreference != null) {
+            updateState(mPreference);
+        }
+    }
+
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_START) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_START)
+    public void onStart() {
+        mUtils.registerObserver(this);
+    }
+
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_STOP) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
+    public void onStop() {
+        mUtils.unregisterObserver();
+    }
+}
diff --git a/src/com/android/settings/gestures/LongPressPowerForAssistantPreferenceController.java b/src/com/android/settings/gestures/LongPressPowerForAssistantPreferenceController.java
new file mode 100644
index 0000000..4a0ad74
--- /dev/null
+++ b/src/com/android/settings/gestures/LongPressPowerForAssistantPreferenceController.java
@@ -0,0 +1,100 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.gestures;
+
+import android.content.Context;
+import android.net.Uri;
+
+import androidx.lifecycle.Lifecycle;
+import androidx.lifecycle.LifecycleObserver;
+import androidx.lifecycle.OnLifecycleEvent;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+
+import com.android.settings.R;
+import com.android.settings.core.BasePreferenceController;
+import com.android.settingslib.widget.SelectorWithWidgetPreference;
+
+/**
+ * Configures the behaviour of the radio selector to configure long press power button to Assistant.
+ */
+public class LongPressPowerForAssistantPreferenceController extends BasePreferenceController
+        implements PowerMenuSettingsUtils.SettingsStateCallback,
+                SelectorWithWidgetPreference.OnClickListener,
+                LifecycleObserver {
+
+    private SelectorWithWidgetPreference mPreference;
+    private final PowerMenuSettingsUtils mUtils;
+
+    public LongPressPowerForAssistantPreferenceController(Context context, String key) {
+        super(context, key);
+        mUtils = new PowerMenuSettingsUtils(context);
+    }
+
+    @Override
+    public int getAvailabilityStatus() {
+        return PowerMenuSettingsUtils.isLongPressPowerSettingAvailable(mContext)
+                ? AVAILABLE
+                : UNSUPPORTED_ON_DEVICE;
+    }
+
+    @Override
+    public void displayPreference(PreferenceScreen screen) {
+        super.displayPreference(screen);
+        mPreference = screen.findPreference(getPreferenceKey());
+        if (mPreference != null) {
+            mPreference.setOnClickListener(this);
+        }
+    }
+
+    @Override
+    public void updateState(Preference preference) {
+        super.updateState(preference);
+        if (preference instanceof SelectorWithWidgetPreference) {
+            ((SelectorWithWidgetPreference) preference)
+                    .setChecked(
+                            PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext));
+        }
+    }
+
+    @Override
+    public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+        if (mPreference != null) {
+            updateState(mPreference);
+        }
+    }
+
+    @Override
+    public void onChange(Uri uri) {
+        if (mPreference != null) {
+            updateState(mPreference);
+        }
+    }
+
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_START) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_START)
+    public void onStart() {
+        mUtils.registerObserver(this);
+    }
+
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_STOP) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
+    public void onStop() {
+        mUtils.unregisterObserver();
+    }
+}
diff --git a/src/com/android/settings/gestures/LongPressPowerForPowerMenuPreferenceController.java b/src/com/android/settings/gestures/LongPressPowerForPowerMenuPreferenceController.java
new file mode 100644
index 0000000..c11f0e4
--- /dev/null
+++ b/src/com/android/settings/gestures/LongPressPowerForPowerMenuPreferenceController.java
@@ -0,0 +1,101 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.gestures;
+
+import android.content.Context;
+import android.net.Uri;
+
+import androidx.lifecycle.Lifecycle;
+import androidx.lifecycle.LifecycleObserver;
+import androidx.lifecycle.OnLifecycleEvent;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+
+import com.android.settings.R;
+import com.android.settings.core.BasePreferenceController;
+import com.android.settingslib.widget.SelectorWithWidgetPreference;
+
+/**
+ * Configures the behaviour of the radio selector to configure long press power button to Power
+ * Menu.
+ */
+public class LongPressPowerForPowerMenuPreferenceController extends BasePreferenceController
+        implements PowerMenuSettingsUtils.SettingsStateCallback,
+                SelectorWithWidgetPreference.OnClickListener,
+                LifecycleObserver {
+
+    private SelectorWithWidgetPreference mPreference;
+    private final PowerMenuSettingsUtils mUtils;
+
+    public LongPressPowerForPowerMenuPreferenceController(Context context, String key) {
+        super(context, key);
+        mUtils = new PowerMenuSettingsUtils(context);
+    }
+
+    @Override
+    public int getAvailabilityStatus() {
+        return PowerMenuSettingsUtils.isLongPressPowerSettingAvailable(mContext)
+                ? AVAILABLE
+                : UNSUPPORTED_ON_DEVICE;
+    }
+
+    @Override
+    public void displayPreference(PreferenceScreen screen) {
+        super.displayPreference(screen);
+        mPreference = screen.findPreference(getPreferenceKey());
+        if (mPreference != null) {
+            mPreference.setOnClickListener(this);
+        }
+    }
+
+    @Override
+    public void updateState(Preference preference) {
+        super.updateState(preference);
+        if (preference instanceof SelectorWithWidgetPreference) {
+            ((SelectorWithWidgetPreference) preference)
+                    .setChecked(
+                            !PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext));
+        }
+    }
+
+    @Override
+    public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+        if (mPreference != null) {
+            updateState(mPreference);
+        }
+    }
+
+    @Override
+    public void onChange(Uri uri) {
+        if (mPreference != null) {
+            updateState(mPreference);
+        }
+    }
+
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_START) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_START)
+    public void onStart() {
+        mUtils.registerObserver(this);
+    }
+
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_STOP) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
+    public void onStop() {
+        mUtils.unregisterObserver();
+    }
+}
diff --git a/src/com/android/settings/gestures/LongPressPowerIllustrationPreferenceController.java b/src/com/android/settings/gestures/LongPressPowerIllustrationPreferenceController.java
new file mode 100644
index 0000000..b3db9e7
--- /dev/null
+++ b/src/com/android/settings/gestures/LongPressPowerIllustrationPreferenceController.java
@@ -0,0 +1,84 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.gestures;
+
+import android.content.Context;
+import android.net.Uri;
+
+import androidx.lifecycle.Lifecycle;
+import androidx.lifecycle.LifecycleObserver;
+import androidx.lifecycle.OnLifecycleEvent;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+
+import com.android.settings.R;
+import com.android.settings.core.BasePreferenceController;
+import com.android.settingslib.widget.IllustrationPreference;
+
+/** Configures the behaviour of long press power illustration. */
+public class LongPressPowerIllustrationPreferenceController extends BasePreferenceController
+        implements PowerMenuSettingsUtils.SettingsStateCallback, LifecycleObserver {
+
+    private IllustrationPreference mIllustrationPreference;
+    private final PowerMenuSettingsUtils mUtils;
+
+    public LongPressPowerIllustrationPreferenceController(Context context, String key) {
+        super(context, key);
+        mUtils = new PowerMenuSettingsUtils(context);
+    }
+
+    @Override
+    public int getAvailabilityStatus() {
+        return AVAILABLE;
+    }
+
+    @Override
+    public void displayPreference(PreferenceScreen screen) {
+        super.displayPreference(screen);
+        mIllustrationPreference = screen.findPreference(getPreferenceKey());
+    }
+
+    @Override
+    public void updateState(Preference preference) {
+        super.updateState(preference);
+
+        ((IllustrationPreference) preference)
+                .setLottieAnimationResId(
+                        PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)
+                                ? R.raw.lottie_long_press_power_for_assistant
+                                : R.raw.lottie_long_press_power_for_power_menu);
+    }
+
+    @Override
+    public void onChange(Uri uri) {
+        if (mIllustrationPreference != null) {
+            updateState(mIllustrationPreference);
+        }
+    }
+
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_START) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_START)
+    public void onStart() {
+        mUtils.registerObserver(this);
+    }
+
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_STOP) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
+    public void onStop() {
+        mUtils.unregisterObserver();
+    }
+}
diff --git a/src/com/android/settings/gestures/LongPressPowerSensitivityPreferenceController.java b/src/com/android/settings/gestures/LongPressPowerSensitivityPreferenceController.java
index a1d681c..6df4d72 100644
--- a/src/com/android/settings/gestures/LongPressPowerSensitivityPreferenceController.java
+++ b/src/com/android/settings/gestures/LongPressPowerSensitivityPreferenceController.java
@@ -17,37 +17,28 @@
 package com.android.settings.gestures;
 
 import android.content.Context;
-import android.database.ContentObserver;
-import android.os.Handler;
+import android.net.Uri;
 import android.provider.Settings;
 
 import androidx.annotation.Nullable;
+import androidx.lifecycle.Lifecycle;
+import androidx.lifecycle.LifecycleObserver;
+import androidx.lifecycle.OnLifecycleEvent;
 import androidx.preference.Preference;
 import androidx.preference.PreferenceScreen;
 
 import com.android.settings.core.SliderPreferenceController;
 import com.android.settings.widget.LabeledSeekBarPreference;
-import com.android.settingslib.core.lifecycle.LifecycleObserver;
-import com.android.settingslib.core.lifecycle.events.OnStart;
-import com.android.settingslib.core.lifecycle.events.OnStop;
 
 /** Handles changes to the long press power button sensitivity slider. */
-public class LongPressPowerSensitivityPreferenceController extends
-        SliderPreferenceController implements
-        LifecycleObserver, OnStart, OnStop {
-
-    private final ContentObserver mPowerButtonObserver = new ContentObserver(Handler.getMain()) {
-        @Override
-        public void onChange(boolean selfChange) {
-            if (mPreference != null) {
-                updateState(mPreference);
-            }
-        }
-    };
+public class LongPressPowerSensitivityPreferenceController extends SliderPreferenceController
+        implements PowerMenuSettingsUtils.SettingsStateCallback, LifecycleObserver {
 
     @Nullable
     private final int[] mSensitivityValues;
 
+    private final PowerMenuSettingsUtils mUtils;
+
     @Nullable
     private LabeledSeekBarPreference mPreference;
 
@@ -55,18 +46,19 @@
         super(context, preferenceKey);
         mSensitivityValues = context.getResources().getIntArray(
                 com.android.internal.R.array.config_longPressOnPowerDurationSettings);
+        mUtils = new PowerMenuSettingsUtils(context);
     }
 
-    @Override
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_START) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_START)
     public void onStart() {
-        mContext.getContentResolver().registerContentObserver(
-                Settings.Global.getUriFor(PowerMenuSettingsUtils.POWER_BUTTON_LONG_PRESS_SETTING),
-                false, mPowerButtonObserver);
+        mUtils.registerObserver(this);
     }
 
-    @Override
+    /** @OnLifecycleEvent(Lifecycle.Event.ON_STOP) */
+    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
     public void onStop() {
-        mContext.getContentResolver().unregisterContentObserver(mPowerButtonObserver);
+        mUtils.unregisterObserver();
     }
 
     @Override
@@ -86,21 +78,19 @@
     public void updateState(Preference preference) {
         super.updateState(preference);
         final LabeledSeekBarPreference pref = (LabeledSeekBarPreference) preference;
-        pref.setEnabled(
-                isAvailable() && PowerMenuSettingsUtils.isLongPressPowerForAssistEnabled(mContext));
+        pref.setVisible(
+                PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)
+                        && getAvailabilityStatus() == AVAILABLE);
         pref.setProgress(getSliderPosition());
     }
 
     @Override
     public int getAvailabilityStatus() {
-        if (mSensitivityValues == null || mSensitivityValues.length < 2) {
+        if (mSensitivityValues == null
+                || mSensitivityValues.length < 2
+                || !PowerMenuSettingsUtils.isLongPressPowerSettingAvailable(mContext)) {
             return UNSUPPORTED_ON_DEVICE;
         }
-
-        if (!PowerMenuSettingsUtils.isLongPressPowerForAssistEnabled(mContext)) {
-            return DISABLED_DEPENDENT_SETTING;
-        }
-
         return AVAILABLE;
     }
 
@@ -121,6 +111,13 @@
     }
 
     @Override
+    public void onChange(Uri uri) {
+        if (mPreference != null) {
+            updateState(mPreference);
+        }
+    }
+
+    @Override
     public int getMax() {
         if (mSensitivityValues == null || mSensitivityValues.length == 0) {
             return 0;
diff --git a/src/com/android/settings/gestures/PowerMenuPreferenceController.java b/src/com/android/settings/gestures/PowerMenuPreferenceController.java
index b4f97aa..599dd18 100644
--- a/src/com/android/settings/gestures/PowerMenuPreferenceController.java
+++ b/src/com/android/settings/gestures/PowerMenuPreferenceController.java
@@ -16,9 +16,6 @@
 
 package com.android.settings.gestures;
 
-import static com.android.settings.gestures.PowerMenuSettingsUtils.LONG_PRESS_POWER_ASSISTANT_VALUE;
-import static com.android.settings.gestures.PowerMenuSettingsUtils.LONG_PRESS_POWER_GLOBAL_ACTIONS;
-
 import android.content.Context;
 
 import com.android.settings.R;
@@ -32,25 +29,17 @@
 
     @Override
     public CharSequence getSummary() {
-        final int powerButtonValue = PowerMenuSettingsUtils.getPowerButtonSettingValue(mContext);
-        if (powerButtonValue == LONG_PRESS_POWER_ASSISTANT_VALUE) {
-            return mContext.getText(R.string.power_menu_summary_long_press_for_assist_enabled);
-        } else if (powerButtonValue == LONG_PRESS_POWER_GLOBAL_ACTIONS) {
-            return mContext.getText(
-                    R.string.power_menu_summary_long_press_for_assist_disabled_with_power_menu);
+        if (PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)) {
+            return mContext.getText(R.string.power_menu_summary_long_press_for_assistant);
         } else {
-            return mContext.getText(
-                    R.string.power_menu_summary_long_press_for_assist_disabled_no_action);
+            return mContext.getText(R.string.power_menu_summary_long_press_for_power_menu);
         }
     }
 
     @Override
     public int getAvailabilityStatus() {
-        return isAssistInvocationAvailable() ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
-    }
-
-    private boolean isAssistInvocationAvailable() {
-        return mContext.getResources().getBoolean(
-                com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable);
+        return PowerMenuSettingsUtils.isLongPressPowerSettingAvailable(mContext)
+                ? AVAILABLE
+                : UNSUPPORTED_ON_DEVICE;
     }
 }
diff --git a/src/com/android/settings/gestures/PowerMenuSettingsUtils.java b/src/com/android/settings/gestures/PowerMenuSettingsUtils.java
index 444b7c1..b110381 100644
--- a/src/com/android/settings/gestures/PowerMenuSettingsUtils.java
+++ b/src/com/android/settings/gestures/PowerMenuSettingsUtils.java
@@ -16,53 +16,163 @@
 
 package com.android.settings.gestures;
 
+import android.content.ContentResolver;
 import android.content.Context;
+import android.database.ContentObserver;
+import android.net.Uri;
+import android.os.Handler;
+import android.os.Looper;
 import android.provider.Settings;
 
 /** Common code for long press power settings shared between controllers. */
 final class PowerMenuSettingsUtils {
 
-    /**
-     * Setting storing the current behaviour of long press power.
-     */
-    public static final String POWER_BUTTON_LONG_PRESS_SETTING =
+    /** Setting storing the current behaviour of long press power. */
+    private static final String POWER_BUTTON_LONG_PRESS_SETTING =
             Settings.Global.POWER_BUTTON_LONG_PRESS;
 
+    /** Setting storing the current behaviour of key chord power + volume up. */
+    private static final String KEY_CHORD_POWER_VOLUME_UP_SETTING =
+            Settings.Global.KEY_CHORD_POWER_VOLUME_UP;
+
     /**
-     * Value used for long press power button behaviour when the Assist setting is disabled.
+     * Value used for long press power button behaviour when long press power for Assistant is
+     * disabled.
      *
-     * If this value matches Assist setting, then it falls back to Global Actions panel or
-     * power menu, depending on their respective settings.
+     * <p>If this value matches long press power for Assistant, then it falls back to Global Actions
+     * panel (i.e., the Power Menu), depending on their respective settings.
      */
-    public static final int POWER_BUTTON_LONG_PRESS_DEFAULT_VALUE_RESOURCE =
+    private static final int POWER_BUTTON_LONG_PRESS_DEFAULT_VALUE_RESOURCE =
             com.android.internal.R.integer.config_longPressOnPowerBehavior;
 
     /**
-     * Values used for long press power button behaviour when Assist setting is enabled.
-     *
-     * {@link com.android.server.policy.PhoneWindowManager#LONG_PRESS_POWER_GLOBAL_ACTIONS} for
-     * source of the value.
+     * Value used for key chord power + volume up behaviour when long press power for Assistant is
+     * disabled.
      */
-    static final int LONG_PRESS_POWER_NO_ACTION = 0;
-    static final int LONG_PRESS_POWER_GLOBAL_ACTIONS = 1;
-    static final int LONG_PRESS_POWER_ASSISTANT_VALUE = 5; // Settings.Secure.ASSISTANT
+    private static final int KEY_CHORD_POWER_VOLUME_UP_DEFAULT_VALUE_RESOURCE =
+            com.android.internal.R.integer.config_keyChordPowerVolumeUp;
+
+    private static final int LONG_PRESS_POWER_GLOBAL_ACTIONS = 1; // a.k.a., Power Menu
+    private static final int LONG_PRESS_POWER_ASSISTANT_VALUE = 5; // Settings.Secure.ASSISTANT
+
+    private static final int KEY_CHORD_POWER_VOLUME_UP_GLOBAL_ACTIONS = 2;
+
+    private static final Uri POWER_BUTTON_LONG_PRESS_URI =
+            Settings.Global.getUriFor(POWER_BUTTON_LONG_PRESS_SETTING);
 
     /**
-     * @return current value of power button behaviour.
+     * @return true if long press power for assistant is currently enabled.
      */
-    public static int getPowerButtonSettingValue(Context context) {
-        return Settings.Global.getInt(context.getContentResolver(),
+    public static boolean isLongPressPowerForAssistantEnabled(Context context) {
+        int longPressPowerSettingValue = Settings.Global.getInt(
+                context.getContentResolver(),
                 POWER_BUTTON_LONG_PRESS_SETTING,
                 context.getResources().getInteger(POWER_BUTTON_LONG_PRESS_DEFAULT_VALUE_RESOURCE));
+        return longPressPowerSettingValue == LONG_PRESS_POWER_ASSISTANT_VALUE;
     }
 
     /**
-     * @return true if long press power for assist is currently enabled.
+     * @return true if long press power for assistant setting is available on the device.
      */
-    public static boolean isLongPressPowerForAssistEnabled(Context context) {
-        return getPowerButtonSettingValue(context) == LONG_PRESS_POWER_ASSISTANT_VALUE;
+    public static boolean isLongPressPowerSettingAvailable(Context context) {
+        if (!context.getResources().getBoolean(
+                com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable)) {
+            return false;
+        }
+
+        int defaultLongPressPowerSettingValue =
+                context.getResources().getInteger(POWER_BUTTON_LONG_PRESS_DEFAULT_VALUE_RESOURCE);
+        switch (defaultLongPressPowerSettingValue) {
+            case LONG_PRESS_POWER_GLOBAL_ACTIONS:
+            case LONG_PRESS_POWER_ASSISTANT_VALUE:
+                // We support switching between Power Menu and Digital Assistant.
+                return true;
+            default:
+                // All other combinations are not supported.
+                return false;
+        }
     }
 
-    private PowerMenuSettingsUtils() {
+    public static boolean setLongPressPowerForAssistant(Context context) {
+        if (Settings.Global.putInt(
+                context.getContentResolver(),
+                POWER_BUTTON_LONG_PRESS_SETTING,
+                LONG_PRESS_POWER_ASSISTANT_VALUE)) {
+            // Make power + volume up buttons to open the power menu
+            Settings.Global.putInt(
+                    context.getContentResolver(),
+                    KEY_CHORD_POWER_VOLUME_UP_SETTING,
+                    KEY_CHORD_POWER_VOLUME_UP_GLOBAL_ACTIONS);
+            return true;
+        }
+        return false;
+    }
+
+    public static boolean setLongPressPowerForPowerMenu(Context context) {
+        if (Settings.Global.putInt(
+                context.getContentResolver(),
+                POWER_BUTTON_LONG_PRESS_SETTING,
+                LONG_PRESS_POWER_GLOBAL_ACTIONS)) {
+            // We restore power + volume up buttons to the default action.
+            int keyChordDefaultValue =
+                    context.getResources()
+                            .getInteger(KEY_CHORD_POWER_VOLUME_UP_DEFAULT_VALUE_RESOURCE);
+            Settings.Global.putInt(
+                    context.getContentResolver(),
+                    KEY_CHORD_POWER_VOLUME_UP_SETTING,
+                    keyChordDefaultValue);
+            return true;
+        }
+        return false;
+    }
+
+    private final Context mContext;
+    private final SettingsObserver mSettingsObserver;
+
+    PowerMenuSettingsUtils(Context context) {
+        mContext = context;
+        mSettingsObserver = new SettingsObserver(new Handler(Looper.getMainLooper()));
+    }
+
+    /**
+     * Registers callback for observing SettingsProvider state.
+     *
+     * @param callback for state changes
+     */
+    public void registerObserver(SettingsStateCallback callback) {
+        mSettingsObserver.setCallback(callback);
+        final ContentResolver resolver = mContext.getContentResolver();
+        resolver.registerContentObserver(POWER_BUTTON_LONG_PRESS_URI, true, mSettingsObserver);
+    }
+
+    /** Unregisters callback for observing SettingsProvider state. */
+    public void unregisterObserver() {
+        final ContentResolver resolver = mContext.getContentResolver();
+        resolver.unregisterContentObserver(mSettingsObserver);
+    }
+
+    /** An interface for when SettingsProvider key state changes. */
+    public interface SettingsStateCallback {
+        /** Callback method for SettingsProvider key state changes. */
+        void onChange(Uri uri);
+    }
+
+    private static final class SettingsObserver extends ContentObserver {
+        private SettingsStateCallback mCallback;
+
+        SettingsObserver(Handler handler) {
+            super(handler);
+        }
+
+        private void setCallback(SettingsStateCallback callback) {
+            mCallback = callback;
+        }
+
+        @Override
+        public void onChange(boolean selfChange, Uri uri) {
+            if (mCallback != null) {
+                mCallback.onChange(uri);
+            }
+        }
     }
 }
diff --git a/src/com/android/settings/homepage/contextualcards/slices/BatteryFixSlice.java b/src/com/android/settings/homepage/contextualcards/slices/BatteryFixSlice.java
index f10a2d7..33dcd4e 100644
--- a/src/com/android/settings/homepage/contextualcards/slices/BatteryFixSlice.java
+++ b/src/com/android/settings/homepage/contextualcards/slices/BatteryFixSlice.java
@@ -44,11 +44,11 @@
 import com.android.settings.R;
 import com.android.settings.SubSettings;
 import com.android.settings.Utils;
-import com.android.settings.fuelgauge.BatteryUsageStatsLoader;
-import com.android.settings.fuelgauge.PowerUsageSummary;
 import com.android.settings.fuelgauge.batterytip.BatteryTipLoader;
 import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
 import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
+import com.android.settings.fuelgauge.batteryusage.BatteryUsageStatsLoader;
+import com.android.settings.fuelgauge.batteryusage.PowerUsageSummary;
 import com.android.settings.slices.CustomSliceable;
 import com.android.settings.slices.SliceBackgroundWorker;
 import com.android.settings.slices.SliceBuilderUtils;
diff --git a/src/com/android/settings/language/LanguageAndInputSettings.java b/src/com/android/settings/language/LanguageAndInputSettings.java
index 71b48f9..2d80da5 100644
--- a/src/com/android/settings/language/LanguageAndInputSettings.java
+++ b/src/com/android/settings/language/LanguageAndInputSettings.java
@@ -50,6 +50,7 @@
 
     private static final String KEY_KEYBOARDS_CATEGORY = "keyboards_category";
     private static final String KEY_SPEECH_CATEGORY = "speech_category";
+    private static final String KEY_ON_DEVICE_RECOGNITION = "odsr_settings";
     private static final String KEY_TEXT_TO_SPEECH = "tts_settings_summary";
     private static final String KEY_POINTER_CATEGORY = "pointer_category";
 
@@ -123,11 +124,21 @@
                 new DefaultVoiceInputPreferenceController(context, lifecycle);
         final TtsPreferenceController ttsPreferenceController =
                 new TtsPreferenceController(context, KEY_TEXT_TO_SPEECH);
+        final OnDeviceRecognitionPreferenceController onDeviceRecognitionPreferenceController =
+                new OnDeviceRecognitionPreferenceController(context, KEY_ON_DEVICE_RECOGNITION);
+
         controllers.add(defaultVoiceInputPreferenceController);
         controllers.add(ttsPreferenceController);
-        controllers.add(new PreferenceCategoryController(context,
-                KEY_SPEECH_CATEGORY).setChildren(
-                Arrays.asList(defaultVoiceInputPreferenceController, ttsPreferenceController)));
+        List<AbstractPreferenceController> speechCategoryChildren = new ArrayList<>(
+                List.of(defaultVoiceInputPreferenceController, ttsPreferenceController));
+
+        if (onDeviceRecognitionPreferenceController.isAvailable()) {
+            controllers.add(onDeviceRecognitionPreferenceController);
+            speechCategoryChildren.add(onDeviceRecognitionPreferenceController);
+        }
+
+        controllers.add(new PreferenceCategoryController(context, KEY_SPEECH_CATEGORY)
+                .setChildren(speechCategoryChildren));
 
         // Pointer
         final PointerSpeedController pointerController = new PointerSpeedController(context);
diff --git a/src/com/android/settings/language/OnDeviceRecognitionPreferenceController.java b/src/com/android/settings/language/OnDeviceRecognitionPreferenceController.java
new file mode 100644
index 0000000..3186639
--- /dev/null
+++ b/src/com/android/settings/language/OnDeviceRecognitionPreferenceController.java
@@ -0,0 +1,133 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.language;
+
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.util.Log;
+
+import androidx.annotation.Nullable;
+import androidx.preference.Preference;
+
+import com.android.internal.R;
+import com.android.settings.core.BasePreferenceController;
+
+import java.util.ArrayList;
+import java.util.Optional;
+
+/** Controller of the On-device recognition preference. */
+public class OnDeviceRecognitionPreferenceController extends BasePreferenceController {
+
+    private static final String TAG = "OnDeviceRecognitionPreferenceController";
+
+    private Optional<Intent> mIntent;
+
+    public OnDeviceRecognitionPreferenceController(Context context, String preferenceKey) {
+        super(context, preferenceKey);
+    }
+
+    @Override
+    public int getAvailabilityStatus() {
+        if (mIntent == null) {
+            mIntent = Optional.ofNullable(onDeviceRecognitionIntent());
+        }
+        return mIntent.isPresent()
+                ? AVAILABLE
+                : CONDITIONALLY_UNAVAILABLE;
+    }
+
+    @Override
+    public void updateState(Preference preference) {
+        super.updateState(preference);
+        if (mIntent != null && mIntent.isPresent()) {
+            preference.setIntent(mIntent.get());
+        }
+    }
+
+    /**
+     * Create an {@link Intent} for the activity in the default on-device recognizer service if
+     * there is a properly defined speech recognition xml meta-data for that service.
+     *
+     * @return {@link Intent} if the proper activity is fount, {@code null} otherwise.
+     */
+    @Nullable
+    private Intent onDeviceRecognitionIntent() {
+        final String resString = mContext.getString(
+                R.string.config_defaultOnDeviceSpeechRecognitionService);
+
+        if (resString == null) {
+            Log.v(TAG, "No on-device recognizer, intent not created.");
+            return null;
+        }
+
+        final ComponentName defaultOnDeviceRecognizerComponentName =
+                ComponentName.unflattenFromString(resString);
+
+        if (defaultOnDeviceRecognizerComponentName == null) {
+            Log.v(TAG, "Invalid on-device recognizer string format, intent not created.");
+            return null;
+        }
+
+        final ArrayList<VoiceInputHelper.RecognizerInfo> validRecognitionServices =
+                VoiceInputHelper.validRecognitionServices(mContext);
+
+        if (validRecognitionServices.isEmpty()) {
+            Log.v(TAG, "No speech recognition services"
+                    + "with proper `recognition-service` meta-data found.");
+            return null;
+        }
+
+        // Filter the recognizer services which are in the same package as the default on-device
+        // speech recognizer and have a settings activity defined in the meta-data.
+        final ArrayList<VoiceInputHelper.RecognizerInfo> validOnDeviceRecognitionServices =
+                new ArrayList<>();
+        for (VoiceInputHelper.RecognizerInfo recognizerInfo: validRecognitionServices) {
+            if (!defaultOnDeviceRecognizerComponentName.getPackageName().equals(
+                    recognizerInfo.mService.packageName)) {
+                Log.v(TAG, String.format("Recognition service not in the same package as the "
+                        + "default on-device recognizer: %s.",
+                        recognizerInfo.mComponentName.flattenToString()));
+            } else if (recognizerInfo.mSettings == null) {
+                Log.v(TAG, String.format("Recognition service with no settings activity: %s.",
+                        recognizerInfo.mComponentName.flattenToString()));
+            } else {
+                validOnDeviceRecognitionServices.add(recognizerInfo);
+                Log.v(TAG, String.format("Recognition service in the same package as the default "
+                                + "on-device recognizer with settings activity: %s.",
+                        recognizerInfo.mSettings.flattenToString()));
+            }
+        }
+
+        if (validOnDeviceRecognitionServices.isEmpty()) {
+            Log.v(TAG, "No speech recognition services with proper `recognition-service` "
+                    + "meta-data found in the same package as the default on-device recognizer.");
+            return null;
+        }
+
+        // Not more than one proper recognition services should be found in the same
+        // package as the default on-device recognizer. If that happens,
+        // the first one which passed the filter will be selected.
+        if (validOnDeviceRecognitionServices.size() > 1) {
+            Log.w(TAG, "More than one recognition services with proper `recognition-service` "
+                    + "meta-data found in the same package as the default on-device recognizer.");
+        }
+        VoiceInputHelper.RecognizerInfo chosenRecognizer = validOnDeviceRecognitionServices.get(0);
+
+        return new Intent(Intent.ACTION_MAIN).setComponent(chosenRecognizer.mSettings);
+    }
+}
diff --git a/src/com/android/settings/language/VoiceInputHelper.java b/src/com/android/settings/language/VoiceInputHelper.java
index 7915ba4..289a2f9 100644
--- a/src/com/android/settings/language/VoiceInputHelper.java
+++ b/src/com/android/settings/language/VoiceInputHelper.java
@@ -29,6 +29,7 @@
 import android.speech.RecognitionService;
 import android.util.AttributeSet;
 import android.util.Log;
+import android.util.Pair;
 import android.util.Xml;
 
 import org.xmlpull.v1.XmlPullParser;
@@ -44,12 +45,11 @@
     static final String TAG = "VoiceInputHelper";
     final Context mContext;
 
-    final List<ResolveInfo> mAvailableRecognition;
-
     /**
      * Base info of the Voice Input provider.
      *
      * TODO: Remove this superclass as we only have 1 class now (RecognizerInfo).
+     * TODO: Group recognition service xml meta-data attributes in a single class.
      */
     public static class BaseInfo implements Comparable<BaseInfo> {
         public final ServiceInfo mService;
@@ -90,16 +90,12 @@
         }
     }
 
-    final ArrayList<RecognizerInfo> mAvailableRecognizerInfos = new ArrayList<>();
+    ArrayList<RecognizerInfo> mAvailableRecognizerInfos = new ArrayList<>();
 
     ComponentName mCurrentRecognizer;
 
     public VoiceInputHelper(Context context) {
         mContext = context;
-
-        mAvailableRecognition = mContext.getPackageManager().queryIntentServices(
-                new Intent(RecognitionService.SERVICE_INTERFACE),
-                PackageManager.GET_META_DATA);
     }
 
     /** Draws the UI of the Voice Input picker page. */
@@ -113,63 +109,120 @@
             mCurrentRecognizer = null;
         }
 
-        // Iterate through all the available recognizers and load up their info to show
-        // in the preference.
-        int size = mAvailableRecognition.size();
-        for (int i = 0; i < size; i++) {
-            ResolveInfo resolveInfo = mAvailableRecognition.get(i);
-            ComponentName comp = new ComponentName(resolveInfo.serviceInfo.packageName,
-                    resolveInfo.serviceInfo.name);
-            ServiceInfo si = resolveInfo.serviceInfo;
-            String settingsActivity = null;
-            // Always show in voice input settings unless specifically set to False.
-            boolean selectableAsDefault = true;
-            try (XmlResourceParser parser = si.loadXmlMetaData(mContext.getPackageManager(),
-                    RecognitionService.SERVICE_META_DATA)) {
-                if (parser == null) {
-                    throw new XmlPullParserException("No " + RecognitionService.SERVICE_META_DATA
-                            + " meta-data for " + si.packageName);
-                }
+        final ArrayList<RecognizerInfo> validRecognitionServices =
+                validRecognitionServices(mContext);
 
-                Resources res = mContext.getPackageManager().getResourcesForApplication(
-                        si.applicationInfo);
-
-                AttributeSet attrs = Xml.asAttributeSet(parser);
-
-                int type;
-                while ((type = parser.next()) != XmlPullParser.END_DOCUMENT
-                        && type != XmlPullParser.START_TAG) {
-                    // Intentionally do nothing.
-                }
-
-                String nodeName = parser.getName();
-                if (!"recognition-service".equals(nodeName)) {
-                    throw new XmlPullParserException(
-                            "Meta-data does not start with recognition-service tag");
-                }
-
-                TypedArray array = res.obtainAttributes(attrs,
-                        com.android.internal.R.styleable.RecognitionService);
-                settingsActivity = array.getString(
-                        com.android.internal.R.styleable.RecognitionService_settingsActivity);
-                selectableAsDefault = array.getBoolean(
-                        com.android.internal.R.styleable.RecognitionService_selectableAsDefault,
-                        true);
-                array.recycle();
-            } catch (XmlPullParserException e) {
-                Log.e(TAG, "error parsing recognition service meta-data", e);
-            } catch (IOException e) {
-                Log.e(TAG, "error parsing recognition service meta-data", e);
-            } catch (PackageManager.NameNotFoundException e) {
-                Log.e(TAG, "error parsing recognition service meta-data", e);
-            }
-            // The current recognizer must always be shown in the settings, whatever its
-            // selectableAsDefault value is.
-            if (selectableAsDefault || comp.equals(mCurrentRecognizer)) {
-                mAvailableRecognizerInfos.add(new RecognizerInfo(mContext.getPackageManager(),
-                        resolveInfo.serviceInfo, settingsActivity, selectableAsDefault));
+        // Filter all recognizers which can be selected as default or are the current recognizer.
+        mAvailableRecognizerInfos = new ArrayList<>();
+        for (RecognizerInfo recognizerInfo: validRecognitionServices) {
+            if (recognizerInfo.mSelectableAsDefault || new ComponentName(
+                    recognizerInfo.mService.packageName, recognizerInfo.mService.name)
+                    .equals(mCurrentRecognizer)) {
+                mAvailableRecognizerInfos.add(recognizerInfo);
             }
         }
+
         Collections.sort(mAvailableRecognizerInfos);
     }
+
+    /**
+     * Query all services with {@link RecognitionService#SERVICE_INTERFACE} intent. Filter only
+     * those which have proper xml meta-data which start with a `recognition-service` tag.
+     * Filtered services are sorted by their labels in the ascending order.
+     *
+     * @param context {@link Context} inside which the settings app is run.
+     *
+     * @return {@link ArrayList}&lt;{@link RecognizerInfo}&gt;
+     * containing info about the filtered speech recognition services.
+     */
+    static ArrayList<RecognizerInfo> validRecognitionServices(Context context) {
+        final List<ResolveInfo> resolvedRecognitionServices =
+                context.getPackageManager().queryIntentServices(
+                        new Intent(RecognitionService.SERVICE_INTERFACE),
+                        PackageManager.GET_META_DATA);
+
+        final ArrayList<RecognizerInfo> validRecognitionServices = new ArrayList<>();
+
+        for (ResolveInfo resolveInfo: resolvedRecognitionServices) {
+            final ServiceInfo serviceInfo = resolveInfo.serviceInfo;
+
+            final Pair<String, Boolean> recognitionServiceAttributes =
+                    parseRecognitionServiceXmlMetadata(context, serviceInfo);
+
+            if (recognitionServiceAttributes != null) {
+                validRecognitionServices.add(new RecognizerInfo(
+                        context.getPackageManager(),
+                        serviceInfo,
+                        recognitionServiceAttributes.first      /* settingsActivity */,
+                        recognitionServiceAttributes.second     /* selectableAsDefault */));
+            }
+        }
+
+        return validRecognitionServices;
+    }
+
+    /**
+     * Load recognition service's xml meta-data and parse it. Return the meta-data attributes,
+     * namely, `settingsActivity` {@link String} and `selectableAsDefault` {@link Boolean}.
+     *
+     * <p>Parsing fails if the meta-data for the given service is not found
+     * or the found meta-data does not start with a `recognition-service`.</p>
+     *
+     * @param context {@link Context} inside which the settings app is run.
+     * @param serviceInfo {@link ServiceInfo} containing info
+     * about the speech recognition service in question.
+     *
+     * @return {@link Pair}&lt;{@link String}, {@link Boolean}&gt;  containing `settingsActivity`
+     * and `selectableAsDefault` attributes if the parsing was successful, {@code null} otherwise.
+     */
+    private static Pair<String, Boolean> parseRecognitionServiceXmlMetadata(
+            Context context, ServiceInfo serviceInfo) {
+        // Default recognition service attribute values.
+        // Every recognizer can be selected unless specified otherwise.
+        String settingsActivity;
+        boolean selectableAsDefault = true;
+
+        // Parse xml meta-data.
+        try (XmlResourceParser parser = serviceInfo.loadXmlMetaData(
+                context.getPackageManager(), RecognitionService.SERVICE_META_DATA)) {
+            if (parser == null) {
+                throw new XmlPullParserException(String.format("No %s meta-data for %s package",
+                        RecognitionService.SERVICE_META_DATA, serviceInfo.packageName));
+            }
+
+            final Resources res = context.getPackageManager().getResourcesForApplication(
+                    serviceInfo.applicationInfo);
+            final AttributeSet attrs = Xml.asAttributeSet(parser);
+
+            // Xml meta-data must start with a `recognition-service tag`.
+            int type;
+            while ((type = parser.next()) != XmlPullParser.END_DOCUMENT
+                    && type != XmlPullParser.START_TAG) {
+                // Intentionally do nothing.
+            }
+
+            final String nodeName = parser.getName();
+            if (!"recognition-service".equals(nodeName)) {
+                throw new XmlPullParserException(String.format(
+                        "%s package meta-data does not start with a `recognition-service` tag",
+                        serviceInfo.packageName));
+            }
+
+            final TypedArray array = res.obtainAttributes(attrs,
+                    com.android.internal.R.styleable.RecognitionService);
+            settingsActivity = array.getString(
+                    com.android.internal.R.styleable.RecognitionService_settingsActivity);
+            selectableAsDefault = array.getBoolean(
+                    com.android.internal.R.styleable.RecognitionService_selectableAsDefault,
+                    selectableAsDefault);
+            array.recycle();
+        } catch (XmlPullParserException | IOException
+                | PackageManager.NameNotFoundException e) {
+            Log.e(TAG, String.format("Error parsing %s package recognition service meta-data",
+                    serviceInfo.packageName), e);
+            return null;
+        }
+
+        return Pair.create(settingsActivity, selectableAsDefault);
+    }
 }
diff --git a/src/com/android/settings/network/ProviderModelSlice.java b/src/com/android/settings/network/ProviderModelSlice.java
index 0aae349..86ba563 100644
--- a/src/com/android/settings/network/ProviderModelSlice.java
+++ b/src/com/android/settings/network/ProviderModelSlice.java
@@ -34,6 +34,7 @@
 import android.graphics.drawable.Drawable;
 import android.net.Uri;
 import android.telephony.SubscriptionManager;
+import android.util.EventLog;
 import android.util.Log;
 import android.view.WindowManager.LayoutParams;
 
@@ -103,6 +104,12 @@
         //  Fifth section: Add the Wi-Fi items which are not connected.
         //  Sixth section: Add the See All item.
         final ListBuilder listBuilder = mHelper.createListBuilder(getUri());
+        if (isGuestUser(mContext)) {
+            Log.e(TAG, "Guest user is not allowed to configure Internet!");
+            EventLog.writeEvent(0x534e4554, "227470877", -1 /* UID */, "User is a guest");
+            return listBuilder.build();
+        }
+
         int maxListSize = 0;
         final NetworkProviderWorker worker = getWorker();
         if (worker != null) {
@@ -297,6 +304,8 @@
 
     @Override
     public Class getBackgroundWorkerClass() {
+        if (isGuestUser(mContext)) return null;
+
         return NetworkProviderWorker.class;
     }
 
diff --git a/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroup.java b/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroup.java
index 14bdd41..688084f 100644
--- a/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroup.java
+++ b/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroup.java
@@ -74,6 +74,7 @@
     private Map<Integer, PhoneAccountHandle> mSimCallManagerList = new HashMap<>();
     private Map<Integer, Preference> mWifiCallingForSubPreferences;
     private List<SubscriptionInfo> mSubInfoListForWfc;
+    private SubscriptionsChangeListener mChangeListener;
 
     public NetworkProviderWifiCallingGroup(Context context, Lifecycle lifecycle,
             String preferenceGroupKey) {
@@ -87,26 +88,25 @@
             mTelephonyCallback = new PhoneCallStateTelephonyCallback();
         }
         lifecycle.addObserver(this);
+        mChangeListener = new SubscriptionsChangeListener(context, this);
     }
 
     private void setSubscriptionInfoList(Context context) {
         mSubInfoListForWfc = new ArrayList<>(
                 SubscriptionUtil.getActiveSubscriptions(mSubscriptionManager));
-        if (mSubInfoListForWfc != null) {
-            mSubInfoListForWfc.removeIf(info -> {
-                final int subId = info.getSubscriptionId();
-                setTelephonyManagerForSubscriptionId(context, subId);
-                setPhoneAccountHandleForSubscriptionId(context, subId);
-                boolean isExisted = mSubInfoListForWfc.contains(info);
-                boolean shouldShowWfcForSub = shouldShowWifiCallingForSub(subId);
-                if (!shouldShowWfcForSub && isExisted) {
-                    return true;
-                }
-                return false;
-            });
-        } else {
-            Log.d(TAG, "No active subscriptions");
-        }
+        mSubInfoListForWfc.removeIf(info -> {
+            final int subId = info.getSubscriptionId();
+            setTelephonyManagerForSubscriptionId(context, subId);
+            setPhoneAccountHandleForSubscriptionId(context, subId);
+            boolean isExisted = mSubInfoListForWfc.contains(info);
+            boolean shouldShowWfcForSub = shouldShowWifiCallingForSub(subId);
+            if (!shouldShowWfcForSub && isExisted) {
+                return true;
+            }
+            return false;
+        });
+        Log.d(TAG, "setSubscriptionInfoList: mSubInfoListForWfc size:"
+                + mSubInfoListForWfc.size());
     }
 
     private void setTelephonyManagerForSubscriptionId(Context context, int subId) {
@@ -137,12 +137,18 @@
 
     @OnLifecycleEvent(Event.ON_RESUME)
     public void onResume() {
+        if (mChangeListener != null) {
+            mChangeListener.start();
+        }
         updateListener();
         update();
     }
 
     @OnLifecycleEvent(Event.ON_PAUSE)
     public void onPause() {
+        if (mChangeListener != null) {
+            mChangeListener.stop();
+        }
         if ((mTelephonyCallback != null)) {
             mTelephonyCallback.unregister();
         }
@@ -176,6 +182,7 @@
 
     private void update() {
         if (mPreferenceGroup == null) {
+            Log.d(TAG, "mPreferenceGroup == null");
             return;
         }
 
@@ -255,7 +262,11 @@
 
     @Override
     public void onSubscriptionsChanged() {
+        Log.d(TAG, "onSubscriptionsChanged:");
         setSubscriptionInfoList(mContext);
+        if (mPreferenceGroup != null) {
+            mPreferenceGroup.setVisible(isAvailable());
+        }
         updateListener();
         update();
     }
@@ -322,6 +333,7 @@
                         CarrierConfigManager.KEY_CARRIER_WFC_IMS_AVAILABLE_BOOL);
             }
         }
+        Log.d(TAG, "isWifiCallingAvailableForCarrier:" + isWifiCallingAvailableForCarrier);
         return isWifiCallingAvailableForCarrier;
     }
 
diff --git a/src/com/android/settings/notification/AppBubbleListPreferenceController.java b/src/com/android/settings/notification/AppBubbleListPreferenceController.java
index bf7fcc0..6ebb376 100644
--- a/src/com/android/settings/notification/AppBubbleListPreferenceController.java
+++ b/src/com/android/settings/notification/AppBubbleListPreferenceController.java
@@ -51,7 +51,7 @@
     private static final String KEY = "bubble_conversations";
 
     public AppBubbleListPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
     }
 
     @Override
@@ -80,25 +80,25 @@
     }
 
     @Override
-    public boolean isAvailable() {
+    public int getAvailabilityStatus() {
         // copy rather than inherit super's isAvailable because apps can link to this page
         // as part of onboarding, before they send a valid conversation notification
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow.banned) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel != null) {
             if (mBackend.onlyHasDefaultChannel(mAppRow.pkg, mAppRow.uid)
                     || NotificationChannel.DEFAULT_CHANNEL_ID.equals(mChannel.getId())) {
-                return false;
+                return CONDITIONALLY_UNAVAILABLE;
             }
         }
         if (mAppRow.bubblePreference == BUBBLE_PREFERENCE_NONE) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return true;
+        return AVAILABLE;
     }
 
     @VisibleForTesting
diff --git a/src/com/android/settings/notification/ConfigureNotificationSettings.java b/src/com/android/settings/notification/ConfigureNotificationSettings.java
index f888ea7..1922261 100644
--- a/src/com/android/settings/notification/ConfigureNotificationSettings.java
+++ b/src/com/android/settings/notification/ConfigureNotificationSettings.java
@@ -107,7 +107,6 @@
         mNotificationAssistantPreferenceController =
                 use(NotificationAssistantPreferenceController.class);
         mNotificationAssistantPreferenceController.setFragment(this);
-        mNotificationAssistantPreferenceController.setBackend(new NotificationBackend());
     }
 
     private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/notification/MediaVolumePreferenceController.java b/src/com/android/settings/notification/MediaVolumePreferenceController.java
index 05c8e03..2466b77 100644
--- a/src/com/android/settings/notification/MediaVolumePreferenceController.java
+++ b/src/com/android/settings/notification/MediaVolumePreferenceController.java
@@ -29,6 +29,7 @@
 import androidx.slice.builders.ListBuilder;
 import androidx.slice.builders.SliceAction;
 
+import com.android.internal.annotations.VisibleForTesting;
 import com.android.settings.R;
 import com.android.settings.Utils;
 import com.android.settings.bluetooth.BluetoothBroadcastDialog;
@@ -90,13 +91,16 @@
         return R.drawable.ic_media_stream_off;
     }
 
-    private boolean isSupportEndItem() {
-        return getWorker() != null
-            && getWorker().getActiveLocalMediaController() != null
-            && isConnectedBLEDevice();
+    @VisibleForTesting
+    boolean isSupportEndItem() {
+        return isConnectedBLEDevice();
     }
 
     private boolean isConnectedBLEDevice() {
+        if (getWorker() == null) {
+            Log.d(TAG, "The Worker is null");
+            return false;
+        }
         mMediaDevice = getWorker().getCurrentConnectedMediaDevice();
         if (mMediaDevice != null) {
             return mMediaDevice.isBLEDevice();
@@ -133,6 +137,8 @@
                     Utils.getApplicationLabel(mContext, getWorker().getPackageName()));
             intent.putExtra(BluetoothBroadcastDialog.KEY_DEVICE_ADDRESS,
                     bluetoothDevice.getAddress());
+            intent.putExtra(BluetoothBroadcastDialog.KEY_MEDIA_STREAMING, getWorker() != null
+                    && getWorker().getActiveLocalMediaController() != null);
 
             pi = PendingIntent.getActivity(context, 0 /* requestCode */, intent,
                     PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE);
diff --git a/src/com/android/settings/notification/NotificationAssistantPreferenceController.java b/src/com/android/settings/notification/NotificationAssistantPreferenceController.java
index 91031c8..a6179e5 100644
--- a/src/com/android/settings/notification/NotificationAssistantPreferenceController.java
+++ b/src/com/android/settings/notification/NotificationAssistantPreferenceController.java
@@ -44,6 +44,7 @@
     public NotificationAssistantPreferenceController(Context context) {
         super(context, KEY_NAS);
         mUserManager = UserManager.get(context);
+        mNotificationBackend = new NotificationBackend();
     }
 
     @Override
@@ -101,4 +102,9 @@
     void setBackend(NotificationBackend backend) {
         mNotificationBackend = backend;
     }
-}
\ No newline at end of file
+
+    @Override
+    public boolean isSliceable() {
+        return (mFragment != null && mFragment instanceof ConfigureNotificationSettings);
+    }
+}
diff --git a/src/com/android/settings/notification/app/AddToHomeScreenPreferenceController.java b/src/com/android/settings/notification/app/AddToHomeScreenPreferenceController.java
index e5afd9d..12b8075 100644
--- a/src/com/android/settings/notification/app/AddToHomeScreenPreferenceController.java
+++ b/src/com/android/settings/notification/app/AddToHomeScreenPreferenceController.java
@@ -32,7 +32,7 @@
     private static final String KEY = "add_to_home";
 
     public AddToHomeScreenPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
     }
 
     @Override
@@ -41,11 +41,11 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return mConversationInfo != null;
+        return mConversationInfo != null ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/AllowSoundPreferenceController.java b/src/com/android/settings/notification/app/AllowSoundPreferenceController.java
index 0664c54..99d0873 100644
--- a/src/com/android/settings/notification/app/AllowSoundPreferenceController.java
+++ b/src/com/android/settings/notification/app/AllowSoundPreferenceController.java
@@ -40,7 +40,7 @@
     public AllowSoundPreferenceController(Context context,
             NotificationSettings.DependentFieldListener dependentFieldListener,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_IMPORTANCE);
         mDependentFieldListener = dependentFieldListener;
     }
 
@@ -50,11 +50,14 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return mChannel != null && NotificationChannel.DEFAULT_CHANNEL_ID.equals(mChannel.getId());
+        if (mChannel != null && NotificationChannel.DEFAULT_CHANNEL_ID.equals(mChannel.getId())) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
 
     }
 
diff --git a/src/com/android/settings/notification/app/AppChannelsBypassingDndPreferenceController.java b/src/com/android/settings/notification/app/AppChannelsBypassingDndPreferenceController.java
index 92cd911..6c2c0c3 100644
--- a/src/com/android/settings/notification/app/AppChannelsBypassingDndPreferenceController.java
+++ b/src/com/android/settings/notification/app/AppChannelsBypassingDndPreferenceController.java
@@ -64,7 +64,7 @@
     public AppChannelsBypassingDndPreferenceController(
             Context context,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
     }
 
     @Override
@@ -110,8 +110,8 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        return mAppRow != null;
+    public int getAvailabilityStatus() {
+        return mAppRow != null ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/AppConversationListPreferenceController.java b/src/com/android/settings/notification/app/AppConversationListPreferenceController.java
index dd44a13..e7b2378 100644
--- a/src/com/android/settings/notification/app/AppConversationListPreferenceController.java
+++ b/src/com/android/settings/notification/app/AppConversationListPreferenceController.java
@@ -49,7 +49,12 @@
     protected PreferenceCategory mPreference;
 
     public AppConversationListPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        this(context, backend, KEY);
+    }
+
+    public AppConversationListPreferenceController(Context context, NotificationBackend backend,
+            String key) {
+        super(context, backend, key);
     }
 
     @Override
@@ -58,21 +63,24 @@
     }
 
     @Override
-    public boolean isAvailable() {
+    public int getAvailabilityStatus() {
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow.banned) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel != null) {
             if (mBackend.onlyHasDefaultChannel(mAppRow.pkg, mAppRow.uid)
                     || NotificationChannel.DEFAULT_CHANNEL_ID.equals(mChannel.getId())) {
-                return false;
+                return CONDITIONALLY_UNAVAILABLE;
             }
         }
-        return mBackend.hasSentValidMsg(mAppRow.pkg, mAppRow.uid) || mBackend.isInInvalidMsgState(
-                mAppRow.pkg, mAppRow.uid);
+        if (mBackend.hasSentValidMsg(mAppRow.pkg, mAppRow.uid) || mBackend.isInInvalidMsgState(
+                mAppRow.pkg, mAppRow.uid)) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/AppLinkPreferenceController.java b/src/com/android/settings/notification/app/AppLinkPreferenceController.java
index 043ae69..ecf9670 100644
--- a/src/com/android/settings/notification/app/AppLinkPreferenceController.java
+++ b/src/com/android/settings/notification/app/AppLinkPreferenceController.java
@@ -32,7 +32,7 @@
     private static final String KEY_APP_LINK = "app_link";
 
     public AppLinkPreferenceController(Context context) {
-        super(context, null);
+        super(context, null, KEY_APP_LINK);
     }
 
     @Override
@@ -41,11 +41,11 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return mAppRow.settingsIntent != null;
+        return mAppRow.settingsIntent != null ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/BadgePreferenceController.java b/src/com/android/settings/notification/app/BadgePreferenceController.java
index 108fa1d..f94dfb5 100644
--- a/src/com/android/settings/notification/app/BadgePreferenceController.java
+++ b/src/com/android/settings/notification/app/BadgePreferenceController.java
@@ -38,7 +38,7 @@
 
     public BadgePreferenceController(Context context,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_BADGE);
     }
 
     @Override
@@ -47,25 +47,29 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow == null && mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (Settings.Secure.getInt(mContext.getContentResolver(),
                 NOTIFICATION_BADGING, SYSTEM_WIDE_ON) == SYSTEM_WIDE_OFF) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel != null) {
             if (isDefaultChannel()) {
-                return true;
+                return AVAILABLE;
             } else {
-                return mAppRow == null ? false : mAppRow.showBadge;
+                return mAppRow == null
+                        ? CONDITIONALLY_UNAVAILABLE
+                        : mAppRow.showBadge
+                                ? AVAILABLE
+                                : CONDITIONALLY_UNAVAILABLE;
             }
         }
-        return true;
+        return AVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/BlockPreferenceController.java b/src/com/android/settings/notification/app/BlockPreferenceController.java
index f4e2132..ea3eaeb 100644
--- a/src/com/android/settings/notification/app/BlockPreferenceController.java
+++ b/src/com/android/settings/notification/app/BlockPreferenceController.java
@@ -42,7 +42,7 @@
     public BlockPreferenceController(Context context,
             NotificationSettings.DependentFieldListener dependentFieldListener,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_BLOCK);
         mDependentFieldListener = dependentFieldListener;
     }
 
@@ -52,14 +52,14 @@
     }
 
     @Override
-    public boolean isAvailable() {
+    public int getAvailabilityStatus() {
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mPreferenceFilter != null && !isIncludedInFilter()) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return true;
+        return AVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/BubbleCategoryPreferenceController.java b/src/com/android/settings/notification/app/BubbleCategoryPreferenceController.java
index ad3a10c..da67afe 100644
--- a/src/com/android/settings/notification/app/BubbleCategoryPreferenceController.java
+++ b/src/com/android/settings/notification/app/BubbleCategoryPreferenceController.java
@@ -32,15 +32,15 @@
     static final int ON = 1;
 
     public BubbleCategoryPreferenceController(Context context) {
-        super(context, null);
+        super(context, null, KEY);
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return areBubblesEnabled();
+        return areBubblesEnabled() ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/BubbleLinkPreferenceController.java b/src/com/android/settings/notification/app/BubbleLinkPreferenceController.java
index 0b9529b..ed1c9b5 100644
--- a/src/com/android/settings/notification/app/BubbleLinkPreferenceController.java
+++ b/src/com/android/settings/notification/app/BubbleLinkPreferenceController.java
@@ -32,15 +32,15 @@
     static final int ON = 1;
 
     public BubbleLinkPreferenceController(Context context) {
-        super(context, null);
+        super(context, null, KEY);
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return areBubblesEnabled();
+        return areBubblesEnabled() ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/BubblePreferenceController.java b/src/com/android/settings/notification/app/BubblePreferenceController.java
index 351b463..516a45e 100644
--- a/src/com/android/settings/notification/app/BubblePreferenceController.java
+++ b/src/com/android/settings/notification/app/BubblePreferenceController.java
@@ -56,7 +56,7 @@
     public BubblePreferenceController(Context context, @Nullable FragmentManager fragmentManager,
             NotificationBackend backend, boolean isAppPage,
             @Nullable NotificationSettings.DependentFieldListener listener) {
-        super(context, backend);
+        super(context, backend, KEY);
         mFragmentManager = fragmentManager;
         mIsAppPage = isAppPage;
         mListener = listener;
@@ -68,21 +68,24 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (!mIsAppPage && !isEnabled()) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel != null) {
             if (isDefaultChannel()) {
-                return true;
+                return AVAILABLE;
             } else {
-                return mAppRow != null &&  mAppRow.bubblePreference != BUBBLE_PREFERENCE_NONE;
+                if (mAppRow != null &&  mAppRow.bubblePreference != BUBBLE_PREFERENCE_NONE) {
+                    return AVAILABLE;
+                }
+                return CONDITIONALLY_UNAVAILABLE;
             }
         }
-        return true;
+        return AVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/BubbleSummaryPreferenceController.java b/src/com/android/settings/notification/app/BubbleSummaryPreferenceController.java
index 51370b1..abbe89e 100644
--- a/src/com/android/settings/notification/app/BubbleSummaryPreferenceController.java
+++ b/src/com/android/settings/notification/app/BubbleSummaryPreferenceController.java
@@ -42,28 +42,31 @@
     static final int ON = 1;
 
     public BubbleSummaryPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel != null) {
             if (!isGloballyEnabled()) {
-                return false;
+                return CONDITIONALLY_UNAVAILABLE;
             }
             if (isDefaultChannel()) {
-                return true;
+                return AVAILABLE;
             } else {
-                return mAppRow != null;
+                return mAppRow != null ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
             }
         }
-        return isGloballyEnabled() && mBackend.hasSentValidBubble(mAppRow.pkg, mAppRow.uid);
+        if (isGloballyEnabled() && mBackend.hasSentValidBubble(mAppRow.pkg, mAppRow.uid)) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/ChannelListPreferenceController.java b/src/com/android/settings/notification/app/ChannelListPreferenceController.java
index 8db3b21..8d07911 100644
--- a/src/com/android/settings/notification/app/ChannelListPreferenceController.java
+++ b/src/com/android/settings/notification/app/ChannelListPreferenceController.java
@@ -28,6 +28,7 @@
 import android.os.Bundle;
 import android.provider.Settings;
 import android.text.TextUtils;
+import android.util.Slog;
 
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
@@ -39,16 +40,19 @@
 import com.android.settings.R;
 import com.android.settings.Utils;
 import com.android.settings.applications.AppInfoBase;
+import com.android.settings.core.BasePreferenceController;
 import com.android.settings.core.SubSettingLauncher;
 import com.android.settings.notification.NotificationBackend;
 import com.android.settingslib.PrimarySwitchPreference;
 import com.android.settingslib.RestrictedSwitchPreference;
+import com.android.settingslib.utils.ThreadUtils;
 
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
-public class ChannelListPreferenceController extends NotificationPreferenceController {
+public class ChannelListPreferenceController extends NotificationPreferenceController
+        implements BasePreferenceController.UiBlocker {
 
     private static final String KEY = "channels";
     private static final String KEY_GENERAL_CATEGORY = "categories";
@@ -59,7 +63,7 @@
     private PreferenceCategory mPreference;
 
     public ChannelListPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
     }
 
     @Override
@@ -68,20 +72,20 @@
     }
 
     @Override
-    public boolean isAvailable() {
+    public int getAvailabilityStatus() {
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow.banned) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel != null) {
             if (mBackend.onlyHasDefaultChannel(mAppRow.pkg, mAppRow.uid)
                     || NotificationChannel.DEFAULT_CHANNEL_ID.equals(mChannel.getId())) {
-                return false;
+                return CONDITIONALLY_UNAVAILABLE;
             }
         }
-        return true;
+        return AVAILABLE;
     }
 
     @Override
@@ -91,24 +95,17 @@
 
     @Override
     public void updateState(Preference preference) {
-        mPreference = (PreferenceCategory) preference;
-        // Load channel settings
-        new AsyncTask<Void, Void, Void>() {
-            @Override
-            protected Void doInBackground(Void... unused) {
+            mPreference = (PreferenceCategory) preference;
+            // Load channel settings
+            ThreadUtils.postOnBackgroundThread(() -> {
                 mChannelGroupList = mBackend.getGroups(mAppRow.pkg, mAppRow.uid).getList();
                 Collections.sort(mChannelGroupList, CHANNEL_GROUP_COMPARATOR);
-                return null;
-            }
-
-            @Override
-            protected void onPostExecute(Void unused) {
-                if (mContext == null) {
-                    return;
-                }
+                ThreadUtils.getUiThreadHandler().getLooper().prepare();
                 updateFullList(mPreference, mChannelGroupList);
-            }
-        }.execute();
+                ThreadUtils.postOnMainThread(() -> {
+                    showPreferences();
+                });
+            });
     }
 
     /**
@@ -144,6 +141,12 @@
         }
     }
 
+    private void showPreferences() {
+        if (mUiBlockListener != null) {
+           mUiBlockListener.onBlockerWorkFinished(this);
+        }
+    }
+
     /**
      * Looks for the category for the given group's key at the expected index, if that doesn't
      * match, it checks all groups, and if it can't find that group anywhere, it creates it.
diff --git a/src/com/android/settings/notification/app/ConversationDemotePreferenceController.java b/src/com/android/settings/notification/app/ConversationDemotePreferenceController.java
index 02f639c..ba7ca35 100644
--- a/src/com/android/settings/notification/app/ConversationDemotePreferenceController.java
+++ b/src/com/android/settings/notification/app/ConversationDemotePreferenceController.java
@@ -37,7 +37,7 @@
     public ConversationDemotePreferenceController(Context context,
             SettingsPreferenceFragment hostFragment,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
         mHostFragment = hostFragment;
     }
 
@@ -47,14 +47,17 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow == null || mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return !TextUtils.isEmpty(mChannel.getConversationId()) && !mChannel.isDemoted();
+        if (!TextUtils.isEmpty(mChannel.getConversationId()) && !mChannel.isDemoted()) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/ConversationHeaderPreferenceController.java b/src/com/android/settings/notification/app/ConversationHeaderPreferenceController.java
index f99a56a..56de88b 100644
--- a/src/com/android/settings/notification/app/ConversationHeaderPreferenceController.java
+++ b/src/com/android/settings/notification/app/ConversationHeaderPreferenceController.java
@@ -45,7 +45,7 @@
     private boolean mStarted = false;
 
     public ConversationHeaderPreferenceController(Context context, DashboardFragment fragment) {
-        super(context, null);
+        super(context, null, PREF_KEY_APP_HEADER);
         mFragment = fragment;
     }
 
@@ -55,8 +55,8 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        return mAppRow != null;
+    public int getAvailabilityStatus() {
+        return mAppRow != null ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/ConversationPriorityPreferenceController.java b/src/com/android/settings/notification/app/ConversationPriorityPreferenceController.java
index ae16928..46bc3c0 100644
--- a/src/com/android/settings/notification/app/ConversationPriorityPreferenceController.java
+++ b/src/com/android/settings/notification/app/ConversationPriorityPreferenceController.java
@@ -34,7 +34,7 @@
 
     public ConversationPriorityPreferenceController(Context context,
             NotificationBackend backend, NotificationSettings.DependentFieldListener listener) {
-        super(context, backend);
+        super(context, backend, KEY);
         mDependentFieldListener = listener;
     }
 
@@ -44,14 +44,14 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow == null || mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return true;
+        return AVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/ConversationPromotePreferenceController.java b/src/com/android/settings/notification/app/ConversationPromotePreferenceController.java
index 24c3d2f..a5ef569 100644
--- a/src/com/android/settings/notification/app/ConversationPromotePreferenceController.java
+++ b/src/com/android/settings/notification/app/ConversationPromotePreferenceController.java
@@ -37,7 +37,7 @@
     public ConversationPromotePreferenceController(Context context,
             SettingsPreferenceFragment hostFragment,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
         mHostFragment = hostFragment;
     }
 
@@ -47,14 +47,17 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow == null || mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return !TextUtils.isEmpty(mChannel.getConversationId()) && mChannel.isDemoted();
+        if (!TextUtils.isEmpty(mChannel.getConversationId()) && mChannel.isDemoted()) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/DeletedChannelsPreferenceController.java b/src/com/android/settings/notification/app/DeletedChannelsPreferenceController.java
index 77a692f..cd160df 100644
--- a/src/com/android/settings/notification/app/DeletedChannelsPreferenceController.java
+++ b/src/com/android/settings/notification/app/DeletedChannelsPreferenceController.java
@@ -30,7 +30,7 @@
     private static final String  KEY_DELETED = "deleted";
 
     public DeletedChannelsPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_DELETED);
     }
 
     @Override
@@ -39,16 +39,19 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         // only visible on app screen
         if (mChannel != null || hasValidGroup()) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
 
-        return mBackend.getDeletedChannelCount(mAppRow.pkg, mAppRow.uid) > 0;
+        if (mBackend.getDeletedChannelCount(mAppRow.pkg, mAppRow.uid) > 0) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/DescriptionPreferenceController.java b/src/com/android/settings/notification/app/DescriptionPreferenceController.java
index 0a5bb2f..413a876 100644
--- a/src/com/android/settings/notification/app/DescriptionPreferenceController.java
+++ b/src/com/android/settings/notification/app/DescriptionPreferenceController.java
@@ -29,7 +29,7 @@
     private static final String KEY_DESC = "desc";
 
     public DescriptionPreferenceController(Context context) {
-        super(context, null);
+        super(context, null, KEY_DESC);
     }
 
     @Override
@@ -38,20 +38,20 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel == null && !hasValidGroup()) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel != null && !TextUtils.isEmpty(mChannel.getDescription())) {
-            return true;
+            return AVAILABLE;
         }
         if (hasValidGroup() && !TextUtils.isEmpty(mChannelGroup.getDescription())) {
-            return true;
+            return AVAILABLE;
         }
-        return false;
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/DndPreferenceController.java b/src/com/android/settings/notification/app/DndPreferenceController.java
index b65928a..811eeb4 100644
--- a/src/com/android/settings/notification/app/DndPreferenceController.java
+++ b/src/com/android/settings/notification/app/DndPreferenceController.java
@@ -31,7 +31,7 @@
     private static final String KEY_BYPASS_DND = "bypass_dnd";
 
     public DndPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_BYPASS_DND);
     }
 
     @Override
@@ -40,11 +40,11 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable() || mChannel == null) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE || mChannel == null) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return true;
+        return AVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/HeaderPreferenceController.java b/src/com/android/settings/notification/app/HeaderPreferenceController.java
index 7379d55..c4b0e59 100644
--- a/src/com/android/settings/notification/app/HeaderPreferenceController.java
+++ b/src/com/android/settings/notification/app/HeaderPreferenceController.java
@@ -45,7 +45,7 @@
     private boolean mStarted = false;
 
     public HeaderPreferenceController(Context context, DashboardFragment fragment) {
-        super(context, null);
+        super(context, null, PREF_KEY_APP_HEADER);
         mFragment = fragment;
     }
 
@@ -55,8 +55,8 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        return mAppRow != null;
+    public int getAvailabilityStatus() {
+        return mAppRow != null ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/HighImportancePreferenceController.java b/src/com/android/settings/notification/app/HighImportancePreferenceController.java
index d60668b..98dc8a7 100644
--- a/src/com/android/settings/notification/app/HighImportancePreferenceController.java
+++ b/src/com/android/settings/notification/app/HighImportancePreferenceController.java
@@ -37,7 +37,7 @@
     public HighImportancePreferenceController(Context context,
             NotificationSettings.DependentFieldListener dependentFieldListener,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_IMPORTANCE);
         mDependentFieldListener = dependentFieldListener;
     }
 
@@ -47,17 +47,19 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (isDefaultChannel()) {
-           return false;
+           return CONDITIONALLY_UNAVAILABLE;
         }
-        return mChannel.getImportance() >= IMPORTANCE_DEFAULT;
+        return mChannel.getImportance() >= IMPORTANCE_DEFAULT
+                ? AVAILABLE
+                : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/ImportancePreferenceController.java b/src/com/android/settings/notification/app/ImportancePreferenceController.java
index 3c32ca4..31ddac3 100644
--- a/src/com/android/settings/notification/app/ImportancePreferenceController.java
+++ b/src/com/android/settings/notification/app/ImportancePreferenceController.java
@@ -38,7 +38,7 @@
     public ImportancePreferenceController(Context context,
             NotificationSettings.DependentFieldListener dependentFieldListener,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_IMPORTANCE);
         mDependentFieldListener = dependentFieldListener;
     }
 
@@ -48,14 +48,14 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return !isDefaultChannel();
+        return !isDefaultChannel() ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/InvalidConversationInfoPreferenceController.java b/src/com/android/settings/notification/app/InvalidConversationInfoPreferenceController.java
index b937e80..bb2c58b 100644
--- a/src/com/android/settings/notification/app/InvalidConversationInfoPreferenceController.java
+++ b/src/com/android/settings/notification/app/InvalidConversationInfoPreferenceController.java
@@ -31,7 +31,7 @@
 
     public InvalidConversationInfoPreferenceController(Context context,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
     }
 
     @Override
@@ -40,17 +40,19 @@
     }
 
     @Override
-    public boolean isAvailable() {
+    public int getAvailabilityStatus() {
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow.banned) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mPreferenceFilter != null && !isIncludedInFilter()) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return mBackend.isInInvalidMsgState(mAppRow.pkg, mAppRow.uid);
+        return mBackend.isInInvalidMsgState(mAppRow.pkg, mAppRow.uid)
+                ? AVAILABLE
+                : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/InvalidConversationPreferenceController.java b/src/com/android/settings/notification/app/InvalidConversationPreferenceController.java
index 5c502dc..219ccbc 100644
--- a/src/com/android/settings/notification/app/InvalidConversationPreferenceController.java
+++ b/src/com/android/settings/notification/app/InvalidConversationPreferenceController.java
@@ -31,7 +31,7 @@
     private static final String KEY = "invalid_conversation_switch";
 
     public InvalidConversationPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY);
     }
 
     @Override
@@ -40,17 +40,19 @@
     }
 
     @Override
-    public boolean isAvailable() {
+    public int getAvailabilityStatus() {
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow.banned) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mPreferenceFilter != null && !isIncludedInFilter()) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return mBackend.isInInvalidMsgState(mAppRow.pkg, mAppRow.uid);
+        return mBackend.isInInvalidMsgState(mAppRow.pkg, mAppRow.uid)
+                ? AVAILABLE
+                : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/LightsPreferenceController.java b/src/com/android/settings/notification/app/LightsPreferenceController.java
index d096922..f7f9244 100644
--- a/src/com/android/settings/notification/app/LightsPreferenceController.java
+++ b/src/com/android/settings/notification/app/LightsPreferenceController.java
@@ -33,7 +33,7 @@
     private static final String KEY_LIGHTS = "lights";
 
     public LightsPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_LIGHTS);
     }
 
     @Override
@@ -42,16 +42,18 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return checkCanBeVisible(NotificationManager.IMPORTANCE_DEFAULT)
-                && canPulseLight()
-                && !isDefaultChannel();
+        if (checkCanBeVisible(NotificationManager.IMPORTANCE_DEFAULT) && canPulseLight()
+                && !isDefaultChannel()) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/MinImportancePreferenceController.java b/src/com/android/settings/notification/app/MinImportancePreferenceController.java
index f825763..b2c0862 100644
--- a/src/com/android/settings/notification/app/MinImportancePreferenceController.java
+++ b/src/com/android/settings/notification/app/MinImportancePreferenceController.java
@@ -37,7 +37,7 @@
     public MinImportancePreferenceController(Context context,
             NotificationSettings.DependentFieldListener dependentFieldListener,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_IMPORTANCE);
         mDependentFieldListener = dependentFieldListener;
     }
 
@@ -47,17 +47,17 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (isDefaultChannel()) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return mChannel.getImportance() <= IMPORTANCE_LOW;
+        return mChannel.getImportance() <= IMPORTANCE_LOW ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/NotificationPreferenceController.java b/src/com/android/settings/notification/app/NotificationPreferenceController.java
index fb19d9d..271a83d 100644
--- a/src/com/android/settings/notification/app/NotificationPreferenceController.java
+++ b/src/com/android/settings/notification/app/NotificationPreferenceController.java
@@ -17,26 +17,24 @@
 package com.android.settings.notification.app;
 
 import static android.app.NotificationManager.IMPORTANCE_NONE;
-import static android.os.UserHandle.USER_SYSTEM;
 
 import android.annotation.Nullable;
 import android.app.NotificationChannel;
 import android.app.NotificationChannelGroup;
 import android.app.NotificationManager;
 import android.content.Context;
-import android.content.pm.ApplicationInfo;
 import android.content.pm.PackageManager;
 import android.content.pm.ShortcutInfo;
 import android.graphics.drawable.Drawable;
 import android.os.UserManager;
-import android.provider.Settings;
 import android.util.Log;
+import android.util.Slog;
 
 import androidx.preference.Preference;
 
+import com.android.settings.core.BasePreferenceController;
 import com.android.settings.notification.NotificationBackend;
 import com.android.settingslib.RestrictedLockUtils;
-import com.android.settingslib.core.AbstractPreferenceController;
 
 import java.util.Comparator;
 import java.util.List;
@@ -46,7 +44,7 @@
  * Parent class for preferences appearing on notification setting pages at the app,
  * notification channel group, or notification channel level.
  */
-public abstract class NotificationPreferenceController extends AbstractPreferenceController {
+public abstract class NotificationPreferenceController extends BasePreferenceController {
     private static final String TAG = "ChannelPrefContr";
     @Nullable
     protected NotificationChannel mChannel;
@@ -71,8 +69,11 @@
     boolean overrideCanBlockValue;
     boolean overrideCanConfigureValue;
 
-    public NotificationPreferenceController(Context context, NotificationBackend backend) {
-        super(context);
+    boolean mLoadedChannelState;
+
+    public NotificationPreferenceController(Context context, NotificationBackend backend,
+            String key) {
+        super(context, key);
         mContext = context;
         mNm = (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
         mBackend = backend;
@@ -81,28 +82,30 @@
     }
 
     /**
-     * Returns true if field's parent object is not blocked.
+     * Returns available if field's parent object is not blocked.
      */
     @Override
-    public boolean isAvailable() {
+    public int getAvailabilityStatus() {
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mAppRow.banned) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannelGroup != null) {
             if (mChannelGroup.isBlocked()) {
-                return false;
+                return CONDITIONALLY_UNAVAILABLE;
             }
         }
         if (mChannel != null) {
             if (mPreferenceFilter != null && !isIncludedInFilter()) {
-                return false;
+                return CONDITIONALLY_UNAVAILABLE;
             }
-            return mChannel.getImportance() != IMPORTANCE_NONE;
+            if(mChannel.getImportance() == IMPORTANCE_NONE) {
+                return CONDITIONALLY_UNAVAILABLE;
+            }
         }
-        return true;
+        return AVAILABLE;
     }
 
     protected void onResume(NotificationBackend.AppRow appRow,
diff --git a/src/com/android/settings/notification/app/NotificationSettings.java b/src/com/android/settings/notification/app/NotificationSettings.java
index 192a0ee..5750167 100644
--- a/src/com/android/settings/notification/app/NotificationSettings.java
+++ b/src/com/android/settings/notification/app/NotificationSettings.java
@@ -41,6 +41,7 @@
 import android.provider.Settings;
 import android.text.TextUtils;
 import android.util.Log;
+import android.util.Slog;
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.ViewTreeObserver;
@@ -129,15 +130,52 @@
             }
         }
 
+        mUserId = UserHandle.getUserId(mUid);
         mPkgInfo = findPackageInfo(mPkg, mUid);
+    }
 
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        if (mIntent == null && mArgs == null) {
+            toastAndFinish("no intent");
+            return;
+        }
+
+        if (mUid < 0 || TextUtils.isEmpty(mPkg) || mPkgInfo == null) {
+            toastAndFinish("Missing package or uid or packageinfo");
+            return;
+        }
+
+        startListeningToPackageRemove();
+    }
+
+    @Override
+    public void onDestroy() {
+        stopListeningToPackageRemove();
+        super.onDestroy();
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+        if (mUid < 0 || TextUtils.isEmpty(mPkg) || mPkgInfo == null) {
+            toastAndFinish("Missing package or uid or packageinfo");
+            return;
+        }
+        mPkgInfo = findPackageInfo(mPkg, mUid);
         if (mPkgInfo != null) {
-            mUserId = UserHandle.getUserId(mUid);
             mSuspendedAppsAdmin = RestrictedLockUtilsInternal.checkIfApplicationIsSuspended(
                     mContext, mPkg, mUserId);
 
-            loadChannel();
             loadAppRow();
+            if (mAppRow == null) {
+                toastAndFinish("Can't load package");
+                return;
+            }
+            loadChannel();
+            loadConversation();
             loadChannelGroup();
             loadPreferencesFilter();
             collectConfigActivities();
@@ -157,55 +195,6 @@
         }
     }
 
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-
-        if (mIntent == null && mArgs == null) {
-            Log.w(TAG, "No intent");
-            toastAndFinish();
-            return;
-        }
-
-        if (mUid < 0 || TextUtils.isEmpty(mPkg) || mPkgInfo == null) {
-            Log.w(TAG, "Missing package or uid or packageinfo");
-            toastAndFinish();
-            return;
-        }
-
-        startListeningToPackageRemove();
-    }
-
-    @Override
-    public void onDestroy() {
-        stopListeningToPackageRemove();
-        super.onDestroy();
-    }
-
-    @Override
-    public void onResume() {
-        super.onResume();
-        if (mUid < 0 || TextUtils.isEmpty(mPkg) || mPkgInfo == null || mAppRow == null) {
-            Log.w(TAG, "Missing package or uid or packageinfo");
-            finish();
-            return;
-        }
-        // Reload app, channel, etc onResume in case they've changed. A little wasteful if we've
-        // just done onAttach but better than making every preference controller reload all
-        // the data
-        loadAppRow();
-        if (mAppRow == null) {
-            Log.w(TAG, "Can't load package");
-            finish();
-            return;
-        }
-        loadChannel();
-        loadConversation();
-        loadChannelGroup();
-        loadPreferencesFilter();
-        collectConfigActivities();
-    }
-
     protected void animatePanel() {
         if (mPreferenceFilter != null) {
             mLayoutView = getActivity().findViewById(R.id.main_content);
@@ -307,7 +296,8 @@
         }
     }
 
-    protected void toastAndFinish() {
+    protected void toastAndFinish(String msg) {
+        Log.w(TAG, msg);
         Toast.makeText(mContext, R.string.app_not_found_dlg_text, Toast.LENGTH_SHORT).show();
         getActivity().finish();
     }
diff --git a/src/com/android/settings/notification/app/NotificationsOffPreferenceController.java b/src/com/android/settings/notification/app/NotificationsOffPreferenceController.java
index 0c7cd23..46625c3 100644
--- a/src/com/android/settings/notification/app/NotificationsOffPreferenceController.java
+++ b/src/com/android/settings/notification/app/NotificationsOffPreferenceController.java
@@ -30,7 +30,7 @@
     private static final String KEY_BLOCKED_DESC = "block_desc";
 
     public NotificationsOffPreferenceController(Context context) {
-        super(context, null);
+        super(context, null, KEY_BLOCKED_DESC);
     }
 
     @Override
@@ -39,16 +39,20 @@
     }
 
     @Override
-    public boolean isAvailable() {
+    public int getAvailabilityStatus() {
         if (mAppRow == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mPreferenceFilter != null && !isIncludedInFilter()) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
         // Available only when other controllers are unavailable - this UI replaces the UI that
         // would give more detailed notification controls.
-        return !super.isAvailable();
+        if (super.getAvailabilityStatus() == AVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
+        } else {
+            return AVAILABLE;
+        }
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/SoundPreferenceController.java b/src/com/android/settings/notification/app/SoundPreferenceController.java
index b23b4fc..335b442 100644
--- a/src/com/android/settings/notification/app/SoundPreferenceController.java
+++ b/src/com/android/settings/notification/app/SoundPreferenceController.java
@@ -47,7 +47,7 @@
     public SoundPreferenceController(Context context, SettingsPreferenceFragment hostFragment,
             NotificationSettings.DependentFieldListener dependentFieldListener,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_SOUND);
         mFragment = hostFragment;
         mListener = dependentFieldListener;
     }
@@ -58,14 +58,17 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel == null) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return checkCanBeVisible(NotificationManager.IMPORTANCE_DEFAULT) && !isDefaultChannel();
+        if (checkCanBeVisible(NotificationManager.IMPORTANCE_DEFAULT) && !isDefaultChannel()) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/VibrationPreferenceController.java b/src/com/android/settings/notification/app/VibrationPreferenceController.java
index 34d1a54..f91999f 100644
--- a/src/com/android/settings/notification/app/VibrationPreferenceController.java
+++ b/src/com/android/settings/notification/app/VibrationPreferenceController.java
@@ -34,7 +34,7 @@
     private final Vibrator mVibrator;
 
     public VibrationPreferenceController(Context context, NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_VIBRATE);
         mVibrator = context.getSystemService(Vibrator.class);
     }
 
@@ -44,14 +44,15 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable() || mChannel == null) {
-            return false;
-       }
-        return checkCanBeVisible(NotificationManager.IMPORTANCE_DEFAULT)
-                && !isDefaultChannel()
-                && mVibrator != null
-                && mVibrator.hasVibrator();
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE || mChannel == null) {
+            return CONDITIONALLY_UNAVAILABLE;
+        }
+        if (checkCanBeVisible(NotificationManager.IMPORTANCE_DEFAULT) && !isDefaultChannel()
+                && mVibrator != null && mVibrator.hasVibrator()) {
+            return AVAILABLE;
+        }
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/app/VisibilityPreferenceController.java b/src/com/android/settings/notification/app/VisibilityPreferenceController.java
index a2a1d76..3f33267 100644
--- a/src/com/android/settings/notification/app/VisibilityPreferenceController.java
+++ b/src/com/android/settings/notification/app/VisibilityPreferenceController.java
@@ -48,7 +48,7 @@
 
     public VisibilityPreferenceController(Context context, LockPatternUtils utils,
             NotificationBackend backend) {
-        super(context, backend);
+        super(context, backend, KEY_VISIBILITY_OVERRIDE);
         mLockPatternUtils = utils;
     }
 
@@ -58,14 +58,18 @@
     }
 
     @Override
-    public boolean isAvailable() {
-        if (!super.isAvailable()) {
-            return false;
+    public int getAvailabilityStatus() {
+        if (super.getAvailabilityStatus() == CONDITIONALLY_UNAVAILABLE) {
+            return CONDITIONALLY_UNAVAILABLE;
         }
         if (mChannel == null || mAppRow.banned) {
-            return false;
+            return CONDITIONALLY_UNAVAILABLE;
         }
-        return checkCanBeVisible(NotificationManager.IMPORTANCE_LOW) && isLockScreenSecure();
+        if (checkCanBeVisible(NotificationManager.IMPORTANCE_LOW) && isLockScreenSecure()) {
+            return AVAILABLE;
+        }
+
+        return CONDITIONALLY_UNAVAILABLE;
     }
 
     @Override
diff --git a/src/com/android/settings/notification/zen/ZenModeAutomationSettings.java b/src/com/android/settings/notification/zen/ZenModeAutomationSettings.java
index 31a4ba7..4f18e5d 100644
--- a/src/com/android/settings/notification/zen/ZenModeAutomationSettings.java
+++ b/src/com/android/settings/notification/zen/ZenModeAutomationSettings.java
@@ -51,16 +51,6 @@
     private boolean[] mDeleteDialogChecked;
 
     @Override
-    public void onAttach(Context context) {
-        super.onAttach(context);
-        Bundle bundle = getArguments();
-        if (bundle != null && bundle.containsKey(DELETE)) {
-            mBackend.removeZenRule(bundle.getString(DELETE));
-            bundle.remove(DELETE);
-        }
-    }
-
-    @Override
     protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
         ZenServiceListing serviceListing = new ZenServiceListing(getContext(), CONFIG);
         serviceListing.reloadApprovedServices();
diff --git a/src/com/android/settings/notification/zen/ZenRuleButtonsPreferenceController.java b/src/com/android/settings/notification/zen/ZenRuleButtonsPreferenceController.java
index 3b7cde0..023a770 100644
--- a/src/com/android/settings/notification/zen/ZenRuleButtonsPreferenceController.java
+++ b/src/com/android/settings/notification/zen/ZenRuleButtonsPreferenceController.java
@@ -103,8 +103,7 @@
                     new ZenDeleteRuleDialog.PositiveClickListener() {
                         @Override
                         public void onOk(String id) {
-                            Bundle bundle = new Bundle();
-                            bundle.putString(ZenModeAutomationSettings.DELETE, id);
+                            mBackend.removeZenRule(id);
                             mMetricsFeatureProvider.action(mContext,
                                     SettingsEnums.ACTION_ZEN_DELETE_RULE_OK);
                             new SubSettingLauncher(mContext)
@@ -112,7 +111,6 @@
                                     .setDestination(ZenModeAutomationSettings.class.getName())
                                     .setSourceMetricsCategory(MetricsProto.MetricsEvent
                                             .NOTIFICATION_ZEN_MODE_AUTOMATION)
-                                    .setArguments(bundle)
                                     .launch();
                         }
             });
diff --git a/src/com/android/settings/overlay/FeatureFactory.java b/src/com/android/settings/overlay/FeatureFactory.java
index aff7197..c59b385 100644
--- a/src/com/android/settings/overlay/FeatureFactory.java
+++ b/src/com/android/settings/overlay/FeatureFactory.java
@@ -45,6 +45,7 @@
 import com.android.settings.security.SecuritySettingsFeatureProvider;
 import com.android.settings.slices.SlicesFeatureProvider;
 import com.android.settings.users.UserFeatureProvider;
+import com.android.settings.vpn2.AdvancedVpnFeatureProvider;
 import com.android.settings.wifi.WifiTrackerLibProvider;
 import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
 
@@ -177,6 +178,11 @@
      */
     public abstract AccessibilityMetricsFeatureProvider getAccessibilityMetricsFeatureProvider();
 
+    /**
+     * Retrieves implementation for advanced vpn feature.
+     */
+    public abstract AdvancedVpnFeatureProvider getAdvancedVpnFeatureProvider();
+
     public static final class FactoryNotFoundException extends RuntimeException {
         public FactoryNotFoundException(Throwable throwable) {
             super("Unable to create factory. Did you misconfigure Proguard?", throwable);
diff --git a/src/com/android/settings/overlay/FeatureFactoryImpl.java b/src/com/android/settings/overlay/FeatureFactoryImpl.java
index 89f74de..593b866 100644
--- a/src/com/android/settings/overlay/FeatureFactoryImpl.java
+++ b/src/com/android/settings/overlay/FeatureFactoryImpl.java
@@ -71,6 +71,8 @@
 import com.android.settings.slices.SlicesFeatureProviderImpl;
 import com.android.settings.users.UserFeatureProvider;
 import com.android.settings.users.UserFeatureProviderImpl;
+import com.android.settings.vpn2.AdvancedVpnFeatureProvider;
+import com.android.settings.vpn2.AdvancedVpnFeatureProviderImpl;
 import com.android.settings.wifi.WifiTrackerLibProvider;
 import com.android.settings.wifi.WifiTrackerLibProviderImpl;
 import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
@@ -106,6 +108,7 @@
     private SecuritySettingsFeatureProvider mSecuritySettingsFeatureProvider;
     private AccessibilitySearchFeatureProvider mAccessibilitySearchFeatureProvider;
     private AccessibilityMetricsFeatureProvider mAccessibilityMetricsFeatureProvider;
+    private AdvancedVpnFeatureProvider mAdvancedVpnFeatureProvider;
 
     @Override
     public SupportFeatureProvider getSupportFeatureProvider(Context context) {
@@ -334,4 +337,12 @@
         }
         return mAccessibilityMetricsFeatureProvider;
     }
+
+    @Override
+    public AdvancedVpnFeatureProvider getAdvancedVpnFeatureProvider() {
+        if (mAdvancedVpnFeatureProvider == null) {
+            mAdvancedVpnFeatureProvider = new AdvancedVpnFeatureProviderImpl();
+        }
+        return mAdvancedVpnFeatureProvider;
+    }
 }
diff --git a/src/com/android/settings/password/ChooseLockPassword.java b/src/com/android/settings/password/ChooseLockPassword.java
index 199d584..c4a3159 100644
--- a/src/com/android/settings/password/ChooseLockPassword.java
+++ b/src/com/android/settings/password/ChooseLockPassword.java
@@ -69,6 +69,7 @@
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.view.WindowManager;
 import android.view.inputmethod.EditorInfo;
 import android.widget.ImeAwareEditText;
 import android.widget.TextView;
@@ -214,6 +215,7 @@
         ThemeHelper.trySetDynamicColor(this);
         super.onCreate(savedInstanceState);
         findViewById(R.id.content_parent).setFitsSystemWindows(false);
+        getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
     }
 
     public static class ChooseLockPasswordFragment extends InstrumentedFragment
diff --git a/src/com/android/settings/password/ChooseLockPattern.java b/src/com/android/settings/password/ChooseLockPattern.java
index 6558262..c39ef66 100644
--- a/src/com/android/settings/password/ChooseLockPattern.java
+++ b/src/com/android/settings/password/ChooseLockPattern.java
@@ -41,6 +41,7 @@
 import android.view.MotionEvent;
 import android.view.View;
 import android.view.ViewGroup;
+import android.view.WindowManager;
 import android.widget.TextView;
 
 import androidx.fragment.app.Fragment;
@@ -175,6 +176,7 @@
         ThemeHelper.trySetDynamicColor(this);
         super.onCreate(savedInstanceState);
         findViewById(R.id.content_parent).setFitsSystemWindows(false);
+        getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
     }
 
     @Override
diff --git a/src/com/android/settings/password/SetupChooseLockPattern.java b/src/com/android/settings/password/SetupChooseLockPattern.java
index 7151c6d..fd925ec 100644
--- a/src/com/android/settings/password/SetupChooseLockPattern.java
+++ b/src/com/android/settings/password/SetupChooseLockPattern.java
@@ -143,7 +143,8 @@
             }
 
             final GlifLayout layout = getActivity().findViewById(R.id.setup_wizard_layout);
-            layout.setDescriptionText("");
+            layout.setDescriptionText(
+                    getString(R.string.lockpassword_choose_your_pattern_description));
         }
 
         @Override
diff --git a/src/com/android/settings/privacy/PrivacyControlsFragment.java b/src/com/android/settings/privacy/PrivacyControlsFragment.java
index 7b33364..1d9a4712 100644
--- a/src/com/android/settings/privacy/PrivacyControlsFragment.java
+++ b/src/com/android/settings/privacy/PrivacyControlsFragment.java
@@ -33,15 +33,12 @@
     private static final String TAG = "PrivacyDashboardFrag";
     private static final String CAMERA_KEY = "privacy_camera_toggle";
     private static final String MIC_KEY = "privacy_mic_toggle";
-    private static final String LOCATION_KEY = "privacy_location_toggle";
 
     @Override
     protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
         final List<AbstractPreferenceController> controllers = new ArrayList<>();
         controllers.add(new CameraToggleController(context, CAMERA_KEY));
         controllers.add(new MicToggleController(context, MIC_KEY));
-        controllers.add(new LocationToggleController(context, LOCATION_KEY,
-                getSettingsLifecycle()));
         controllers.add(new ShowClipAccessNotificationPreferenceController(context));
         return controllers;
     }
diff --git a/src/com/android/settings/privacy/WorkPolicyInfoPreferenceController.java b/src/com/android/settings/privacy/WorkPolicyInfoPreferenceController.java
index 55ba064..2d1d9e1 100644
--- a/src/com/android/settings/privacy/WorkPolicyInfoPreferenceController.java
+++ b/src/com/android/settings/privacy/WorkPolicyInfoPreferenceController.java
@@ -24,6 +24,8 @@
 import com.android.settings.core.BasePreferenceController;
 import com.android.settings.enterprise.EnterprisePrivacyFeatureProvider;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.safetycenter.SafetyCenterManagerWrapper;
+
 
 public class WorkPolicyInfoPreferenceController extends BasePreferenceController {
 
@@ -37,7 +39,12 @@
 
     @Override
     public int getAvailabilityStatus() {
-        return mEnterpriseProvider.hasWorkPolicyInfo() ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
+        // Your Work policy info will be shown in the Safety Center.
+        // No need to show it in the privacy settings.
+        return !SafetyCenterManagerWrapper.get().isEnabled(mContext)
+                && mEnterpriseProvider.hasWorkPolicyInfo()
+                ? AVAILABLE
+                : UNSUPPORTED_ON_DEVICE;
     }
 
     @Override
diff --git a/src/com/android/settings/safetycenter/BiometricsSafetySource.java b/src/com/android/settings/safetycenter/BiometricsSafetySource.java
index 738268c..d3e3189 100644
--- a/src/com/android/settings/safetycenter/BiometricsSafetySource.java
+++ b/src/com/android/settings/safetycenter/BiometricsSafetySource.java
@@ -39,6 +39,9 @@
 public final class BiometricsSafetySource {
 
     public static final String SAFETY_SOURCE_ID = "AndroidBiometrics";
+    private static final int REQUEST_CODE_COMBINED_BIOMETRIC_SETTING = 10;
+    private static final int REQUEST_CODE_FACE_SETTING = 20;
+    private static final int REQUEST_CODE_FINGERPRINT_SETTING = 30;
 
     private BiometricsSafetySource() {
     }
@@ -62,9 +65,11 @@
             setBiometricSafetySourceData(context,
                     context.getString(R.string.security_settings_biometric_preference_title),
                     combinedBiometricStatusUtils.getSummary(),
-                    biometricNavigationUtils.getBiometricSettingsIntent(context,
-                            combinedBiometricStatusUtils.getSettingsClassName(), disablingAdmin,
-                            Bundle.EMPTY),
+                    createPendingIntent(context,
+                            biometricNavigationUtils.getBiometricSettingsIntent(context,
+                                    combinedBiometricStatusUtils.getSettingsClassName(),
+                                    disablingAdmin, Bundle.EMPTY),
+                            REQUEST_CODE_COMBINED_BIOMETRIC_SETTING),
                     disablingAdmin == null /* enabled */,
                     combinedBiometricStatusUtils.hasEnrolled(),
                     safetyEvent);
@@ -80,9 +85,11 @@
             setBiometricSafetySourceData(context,
                     context.getString(R.string.security_settings_face_preference_title),
                     faceStatusUtils.getSummary(),
-                    biometricNavigationUtils.getBiometricSettingsIntent(context,
-                            faceStatusUtils.getSettingsClassName(), disablingAdmin,
-                            Bundle.EMPTY),
+                    createPendingIntent(context,
+                            biometricNavigationUtils.getBiometricSettingsIntent(context,
+                                    faceStatusUtils.getSettingsClassName(), disablingAdmin,
+                                    Bundle.EMPTY),
+                            REQUEST_CODE_FACE_SETTING),
                     disablingAdmin == null /* enabled */,
                     faceStatusUtils.hasEnrolled(),
                     safetyEvent);
@@ -100,9 +107,11 @@
             setBiometricSafetySourceData(context,
                     context.getString(R.string.security_settings_fingerprint_preference_title),
                     fingerprintStatusUtils.getSummary(),
-                    biometricNavigationUtils.getBiometricSettingsIntent(context,
-                            fingerprintStatusUtils.getSettingsClassName(), disablingAdmin,
-                            Bundle.EMPTY),
+                    createPendingIntent(context,
+                            biometricNavigationUtils.getBiometricSettingsIntent(context,
+                                    fingerprintStatusUtils.getSettingsClassName(), disablingAdmin,
+                                    Bundle.EMPTY),
+                            REQUEST_CODE_FINGERPRINT_SETTING),
                     disablingAdmin == null /* enabled */,
                     fingerprintStatusUtils.hasEnrolled(),
                     safetyEvent);
@@ -118,8 +127,8 @@
     }
 
     private static void setBiometricSafetySourceData(Context context, String title, String summary,
-            Intent clickIntent, boolean enabled, boolean hasEnrolled, SafetyEvent safetyEvent) {
-        final PendingIntent pendingIntent = createPendingIntent(context, clickIntent);
+            PendingIntent pendingIntent, boolean enabled, boolean hasEnrolled,
+            SafetyEvent safetyEvent) {
         final int severityLevel =
                 enabled && hasEnrolled ? SafetySourceData.SEVERITY_LEVEL_INFORMATION
                         : SafetySourceData.SEVERITY_LEVEL_UNSPECIFIED;
@@ -133,11 +142,12 @@
                 context, SAFETY_SOURCE_ID, safetySourceData, safetyEvent);
     }
 
-    private static PendingIntent createPendingIntent(Context context, Intent intent) {
+    private static PendingIntent createPendingIntent(Context context, Intent intent,
+            int requestCode) {
         return PendingIntent
                 .getActivity(
                         context,
-                        0 /* requestCode */,
+                        requestCode,
                         intent,
                         PendingIntent.FLAG_IMMUTABLE);
     }
diff --git a/src/com/android/settings/safetycenter/LockScreenSafetySource.java b/src/com/android/settings/safetycenter/LockScreenSafetySource.java
index 6295268..bdc0a09 100644
--- a/src/com/android/settings/safetycenter/LockScreenSafetySource.java
+++ b/src/com/android/settings/safetycenter/LockScreenSafetySource.java
@@ -42,6 +42,9 @@
     public static final String NO_SCREEN_LOCK_ISSUE_TYPE_ID = "NoScreenLockIssueType";
     public static final String SET_SCREEN_LOCK_ACTION_ID = "SetScreenLockAction";
 
+    private static final int REQUEST_CODE_SCREEN_LOCK = 1;
+    private static final int REQUEST_CODE_SCREEN_LOCK_SETTINGS = 2;
+
     private LockScreenSafetySource() {
     }
 
@@ -62,7 +65,7 @@
                 .checkIfPasswordQualityIsSet(context, userId);
         final PendingIntent pendingIntent = createPendingIntent(context,
                 screenLockPreferenceDetailsUtils.getLaunchChooseLockGenericFragmentIntent(
-                        SettingsEnums.SAFETY_CENTER));
+                        SettingsEnums.SAFETY_CENTER), REQUEST_CODE_SCREEN_LOCK);
         final IconAction gearMenuIconAction = createGearMenuIconAction(context,
                 screenLockPreferenceDetailsUtils);
         final boolean enabled =
@@ -114,15 +117,17 @@
                 IconAction.ICON_TYPE_GEAR,
                 createPendingIntent(context,
                         screenLockPreferenceDetailsUtils.getLaunchScreenLockSettingsIntent(
-                                SettingsEnums.SAFETY_CENTER)))
+                                SettingsEnums.SAFETY_CENTER),
+                        REQUEST_CODE_SCREEN_LOCK_SETTINGS))
                 : null;
     }
 
-    private static PendingIntent createPendingIntent(Context context, Intent intent) {
+    private static PendingIntent createPendingIntent(Context context, Intent intent,
+            int requestCode) {
         return PendingIntent
                 .getActivity(
                         context,
-                        0 /* requestCode */,
+                        requestCode,
                         intent,
                         PendingIntent.FLAG_IMMUTABLE);
     }
diff --git a/src/com/android/settings/search/CustomSiteMapRegistry.java b/src/com/android/settings/search/CustomSiteMapRegistry.java
index ab33fa2..1777cb8 100644
--- a/src/com/android/settings/search/CustomSiteMapRegistry.java
+++ b/src/com/android/settings/search/CustomSiteMapRegistry.java
@@ -21,8 +21,8 @@
 import com.android.settings.backup.UserBackupSettingsActivity;
 import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
 import com.android.settings.connecteddevice.usb.UsbDetailsFragment;
-import com.android.settings.fuelgauge.PowerUsageAdvanced;
-import com.android.settings.fuelgauge.PowerUsageSummary;
+import com.android.settings.fuelgauge.batteryusage.PowerUsageAdvanced;
+import com.android.settings.fuelgauge.batteryusage.PowerUsageSummary;
 import com.android.settings.gestures.GestureNavigationSettingsFragment;
 import com.android.settings.gestures.SystemNavigationGestureSettings;
 import com.android.settings.location.LocationSettings;
diff --git a/src/com/android/settings/shortcut/CreateShortcutPreferenceController.java b/src/com/android/settings/shortcut/CreateShortcutPreferenceController.java
index c871e9f..89ee19b 100644
--- a/src/com/android/settings/shortcut/CreateShortcutPreferenceController.java
+++ b/src/com/android/settings/shortcut/CreateShortcutPreferenceController.java
@@ -46,6 +46,7 @@
 import com.android.settings.R;
 import com.android.settings.Settings;
 import com.android.settings.Settings.TetherSettingsActivity;
+import com.android.settings.activityembedding.ActivityEmbeddingUtils;
 import com.android.settings.core.BasePreferenceController;
 import com.android.settings.gestures.OneHandedSettingsUtils;
 import com.android.settings.overlay.FeatureFactory;
@@ -127,7 +128,7 @@
                     return false;
                 }
                 final Intent shortcutIntent = createResultIntent(
-                        buildShortcutIntent(info),
+                        buildShortcutIntent(uiContext, info),
                         info, clickTarget.getTitle());
                 mHost.setResult(Activity.RESULT_OK, shortcutIntent);
                 logCreateShortcut(info);
@@ -210,10 +211,14 @@
                 info.activityInfo.name);
     }
 
-    private static Intent buildShortcutIntent(ResolveInfo info) {
-        return new Intent(SHORTCUT_PROBE)
+    private static Intent buildShortcutIntent(Context context, ResolveInfo info) {
+        Intent intent = new Intent(SHORTCUT_PROBE)
                 .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP)
                 .setClassName(info.activityInfo.packageName, info.activityInfo.name);
+        if (ActivityEmbeddingUtils.isEmbeddingActivityEnabled(context)) {
+            intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
+        }
+        return intent;
     }
 
     private static ShortcutInfo createShortcutInfo(Context context, Intent shortcutIntent,
@@ -277,8 +282,8 @@
                 ResolveInfo ri = context.getPackageManager().resolveActivity(si.getIntent(), 0);
 
                 if (ri != null) {
-                    updatedShortcuts.add(createShortcutInfo(context, buildShortcutIntent(ri), ri,
-                            si.getShortLabel()));
+                    updatedShortcuts.add(createShortcutInfo(context,
+                            buildShortcutIntent(context, ri), ri, si.getShortLabel()));
                 }
             }
         }
diff --git a/src/com/android/settings/sound/MediaControlsLockScreenPreferenceController.java b/src/com/android/settings/sound/MediaControlsLockScreenPreferenceController.java
new file mode 100644
index 0000000..009ab2e
--- /dev/null
+++ b/src/com/android/settings/sound/MediaControlsLockScreenPreferenceController.java
@@ -0,0 +1,58 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.sound;
+
+import static android.provider.Settings.Secure.MEDIA_CONTROLS_LOCK_SCREEN;
+
+import android.content.Context;
+import android.provider.Settings;
+
+import com.android.settings.R;
+import com.android.settings.core.TogglePreferenceController;
+
+/**
+ * Toggle for media control resumption on lock screen.
+ */
+public class MediaControlsLockScreenPreferenceController extends TogglePreferenceController {
+    public MediaControlsLockScreenPreferenceController(Context context, String key) {
+        super(context, key);
+    }
+
+    @Override
+    public boolean isChecked() {
+        int val = Settings.Secure.getInt(mContext.getContentResolver(),
+                MEDIA_CONTROLS_LOCK_SCREEN, 1);
+        return val == 1;
+    }
+
+    @Override
+    public boolean setChecked(boolean isChecked) {
+        int val = isChecked ? 1 : 0;
+        return Settings.Secure.putInt(mContext.getContentResolver(),
+                MEDIA_CONTROLS_LOCK_SCREEN, val);
+    }
+
+    @Override
+    public int getAvailabilityStatus() {
+        return AVAILABLE;
+    }
+
+    @Override
+    public int getSliceHighlightMenuRes() {
+        return R.string.menu_key_sound;
+    }
+}
diff --git a/src/com/android/settings/users/AutoSyncWorkDataPreferenceController.java b/src/com/android/settings/users/AutoSyncWorkDataPreferenceController.java
index fb57173..9ac1b87 100644
--- a/src/com/android/settings/users/AutoSyncWorkDataPreferenceController.java
+++ b/src/com/android/settings/users/AutoSyncWorkDataPreferenceController.java
@@ -22,7 +22,8 @@
 
 import com.android.settings.Utils;
 
-public class AutoSyncWorkDataPreferenceController extends AutoSyncPersonalDataPreferenceController {
+/** An account sync data preference controller for work */
+public class AutoSyncWorkDataPreferenceController extends AutoSyncDataPreferenceController {
 
     private static final String KEY_AUTO_SYNC_WORK_ACCOUNT = "auto_sync_work_account_data";
 
@@ -38,6 +39,7 @@
 
     @Override
     public boolean isAvailable() {
+        mUserHandle = Utils.getManagedProfileWithDisabled(mUserManager);
         return mUserHandle != null && !mUserManager.isManagedProfile() && !mUserManager.isLinkedUser()
                 && mUserManager.getProfiles(UserHandle.myUserId()).size() > 1;
     }
diff --git a/src/com/android/settings/users/RemoveGuestOnExitPreferenceController.java b/src/com/android/settings/users/RemoveGuestOnExitPreferenceController.java
new file mode 100644
index 0000000..182494c
--- /dev/null
+++ b/src/com/android/settings/users/RemoveGuestOnExitPreferenceController.java
@@ -0,0 +1,246 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.users;
+
+import android.app.Dialog;
+import android.app.settings.SettingsEnums;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.pm.UserInfo;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.UserManager;
+import android.provider.Settings;
+import android.util.FeatureFlagUtils;
+import android.util.Log;
+
+import androidx.appcompat.app.AlertDialog;
+import androidx.fragment.app.Fragment;
+import androidx.preference.Preference;
+
+import com.android.settings.R;
+import com.android.settings.core.BasePreferenceController;
+import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+import com.android.settingslib.RestrictedSwitchPreference;
+
+/**
+ * Controller to control the preference toggle for "remove guest on exit"
+ *
+ * Note, class is not 'final' since we need to mock it for unit tests
+ */
+public class RemoveGuestOnExitPreferenceController extends BasePreferenceController
+                implements  Preference.OnPreferenceChangeListener {
+
+    private static final String TAG = RemoveGuestOnExitPreferenceController.class.getSimpleName();
+    private static final String TAG_CONFIRM_GUEST_REMOVE = "confirmGuestRemove";
+    private static final int REMOVE_GUEST_ON_EXIT_DEFAULT = 1;
+
+    private final UserCapabilities mUserCaps;
+    private final UserManager mUserManager;
+    private final Fragment mParentFragment;
+    private final Handler mHandler;
+
+    public RemoveGuestOnExitPreferenceController(Context context, String key,
+            Fragment parent, Handler handler) {
+        super(context, key);
+        mUserCaps = UserCapabilities.create(context);
+        mUserManager = context.getSystemService(UserManager.class);
+        mParentFragment = parent;
+        mHandler = handler;
+    }
+
+    @Override
+    public void updateState(Preference preference) {
+        mUserCaps.updateAddUserCapabilities(mContext);
+        final RestrictedSwitchPreference restrictedSwitchPreference =
+                (RestrictedSwitchPreference) preference;
+        restrictedSwitchPreference.setChecked(isChecked());
+        if (!isAvailable()) {
+            restrictedSwitchPreference.setVisible(false);
+        } else {
+            restrictedSwitchPreference.setDisabledByAdmin(
+                    mUserCaps.disallowAddUser() ? mUserCaps.getEnforcedAdmin() : null);
+            restrictedSwitchPreference.setVisible(mUserCaps.mUserSwitcherEnabled);
+        }
+    }
+
+    @Override
+    public int getAvailabilityStatus() {
+        // if guest is forced to be ephemeral via config_guestUserEphemeral
+        // then disable this controller
+        // also disable this controller for non-admin users
+        // also disable when config_guestUserAllowEphemeralStateChange is false
+        if (mUserManager.isGuestUserAlwaysEphemeral()
+                || !UserManager.isGuestUserAllowEphemeralStateChange()
+                || !mUserCaps.isAdmin()
+                || mUserCaps.disallowAddUser()
+                || mUserCaps.disallowAddUserSetByAdmin()
+                || !FeatureFlagUtils.isEnabled(mContext,
+                        FeatureFlagUtils.SETTINGS_GUEST_MODE_UX_CHANGES)) {
+            return DISABLED_FOR_USER;
+        } else {
+            return mUserCaps.mUserSwitcherEnabled ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
+        }
+    }
+
+    private boolean isChecked() {
+        return Settings.Global.getInt(mContext.getContentResolver(),
+                Settings.Global.REMOVE_GUEST_ON_EXIT, REMOVE_GUEST_ON_EXIT_DEFAULT) != 0;
+    }
+
+    private static boolean setChecked(Context context, boolean isChecked) {
+        Settings.Global.putInt(context.getContentResolver(),
+                Settings.Global.REMOVE_GUEST_ON_EXIT, isChecked ? 1 : 0);
+        return true;
+    }
+
+    @Override
+    public boolean onPreferenceChange(Preference preference, Object newValue) {
+        boolean enable = (boolean) newValue;
+        UserInfo guestInfo = mUserManager.findCurrentGuestUser();
+
+        // no guest do the setting and return
+        // guest ephemeral state will take effect on guest create
+        if (guestInfo == null) {
+            return setChecked(mContext, enable);
+        }
+        // if guest has never been initialized or started
+        // we can change guest ephemeral state
+        if (!guestInfo.isInitialized()) {
+            boolean isSuccess = mUserManager.setUserEphemeral(guestInfo.id, enable);
+            if (isSuccess) {
+                return setChecked(mContext, enable);
+            } else {
+                Log.w(TAG, "Unused guest, id=" + guestInfo.id
+                        + ". Mark ephemeral as " + enable + " failed !!!");
+                return false;
+            }
+        }
+        // if guest has been used before and is not ephemeral
+        // but now we are making reset guest on exit preference as enabled
+        // then show confirmation dialog box and remove this guest if confirmed by user
+        if (guestInfo.isInitialized() && !guestInfo.isEphemeral() && enable) {
+            ConfirmGuestRemoveFragment.show(mParentFragment,
+                    mHandler,
+                    enable,
+                    guestInfo.id,
+                    (RestrictedSwitchPreference) preference);
+            return false;
+        }
+        // all other cases, there should be none, don't change state
+        return false;
+    }
+
+
+    /**
+     * Dialog to confirm guest removal on toggle clicked set to true
+     *
+     * Fragment must be a public static class to be  properly recreated from instance state
+     * else we will get "AndroidRuntime: java.lang.IllegalStateException"
+     */
+    public static final class ConfirmGuestRemoveFragment extends InstrumentedDialogFragment
+            implements DialogInterface.OnClickListener {
+
+        private static final String TAG = ConfirmGuestRemoveFragment.class.getSimpleName();
+        private static final String SAVE_ENABLING = "enabling";
+        private static final String SAVE_GUEST_USER_ID = "guestUserId";
+
+        private boolean mEnabling;
+        private int mGuestUserId;
+        private RestrictedSwitchPreference mPreference;
+        private Handler mHandler;
+
+        private static void show(Fragment parent,
+                Handler handler,
+                boolean enabling, int guestUserId,
+                RestrictedSwitchPreference preference) {
+            if (!parent.isAdded()) return;
+
+            final ConfirmGuestRemoveFragment dialog = new ConfirmGuestRemoveFragment();
+            dialog.mHandler = handler;
+            dialog.mEnabling = enabling;
+            dialog.mGuestUserId = guestUserId;
+            dialog.setTargetFragment(parent, 0);
+            dialog.mPreference = preference;
+            dialog.show(parent.getFragmentManager(), TAG_CONFIRM_GUEST_REMOVE);
+        }
+
+        @Override
+        public Dialog onCreateDialog(Bundle savedInstanceState) {
+            final Context context = getActivity();
+            if (savedInstanceState != null) {
+                mEnabling = savedInstanceState.getBoolean(SAVE_ENABLING);
+                mGuestUserId = savedInstanceState.getInt(SAVE_GUEST_USER_ID);
+            }
+
+            final AlertDialog.Builder builder = new AlertDialog.Builder(context);
+            builder.setTitle(R.string.remove_guest_on_exit_dialog_title);
+            builder.setMessage(R.string.remove_guest_on_exit_dialog_message);
+            builder.setPositiveButton(
+                        com.android.settingslib.R.string.guest_exit_clear_data_button, this);
+            builder.setNegativeButton(android.R.string.cancel, null);
+
+            return builder.create();
+        }
+
+        @Override
+        public void onSaveInstanceState(Bundle outState) {
+            super.onSaveInstanceState(outState);
+            outState.putBoolean(SAVE_ENABLING, mEnabling);
+            outState.putInt(SAVE_GUEST_USER_ID, mGuestUserId);
+        }
+
+        @Override
+        public int getMetricsCategory() {
+            return SettingsEnums.DIALOG_USER_REMOVE;
+        }
+
+        @Override
+        public void onClick(DialogInterface dialog, int which) {
+            if (which != DialogInterface.BUTTON_POSITIVE) {
+                return;
+            }
+            UserManager userManager = getContext().getSystemService(UserManager.class);
+            if (userManager == null) {
+                Log.e(TAG, "Unable to get user manager service");
+                return;
+            }
+            UserInfo guestUserInfo = userManager.getUserInfo(mGuestUserId);
+            // only do action for guests and when enabling the preference
+            if (guestUserInfo == null || !guestUserInfo.isGuest() || !mEnabling) {
+                Log.w(TAG, "Removing guest user ... failed, id=" + mGuestUserId);
+                return;
+            }
+            if (mPreference != null) {
+                // Using markGuestForDeletion allows us to create a new guest before this one is
+                // fully removed.
+                boolean isSuccess = userManager.markGuestForDeletion(guestUserInfo.id);
+                if (!isSuccess) {
+                    Log.w(TAG, "Couldn't mark the guest for deletion for user "
+                            + guestUserInfo.id);
+                    return;
+                }
+                userManager.removeUser(guestUserInfo.id);
+                if (setChecked(getContext(), mEnabling)) {
+                    mPreference.setChecked(mEnabling);
+                    mHandler.sendEmptyMessage(
+                                UserSettings
+                                    .MESSAGE_REMOVE_GUEST_ON_EXIT_CONTROLLER_GUEST_REMOVED);
+                }
+            }
+        }
+    }
+}
diff --git a/src/com/android/settings/users/UserCapabilities.java b/src/com/android/settings/users/UserCapabilities.java
index 620738f..cf0e10b 100644
--- a/src/com/android/settings/users/UserCapabilities.java
+++ b/src/com/android/settings/users/UserCapabilities.java
@@ -34,6 +34,7 @@
     boolean mCanAddRestrictedProfile;
     boolean mIsAdmin;
     boolean mIsGuest;
+    boolean mIsEphemeral;
     boolean mUserSwitcherEnabled;
     boolean mCanAddGuest;
     boolean mDisallowAddUser;
@@ -56,6 +57,7 @@
         final UserInfo myUserInfo = userManager.getUserInfo(UserHandle.myUserId());
         caps.mIsGuest = myUserInfo.isGuest();
         caps.mIsAdmin = myUserInfo.isAdmin();
+        caps.mIsEphemeral = myUserInfo.isEphemeral();
         DevicePolicyManager dpm = (DevicePolicyManager) context.getSystemService(
                 Context.DEVICE_POLICY_SERVICE);
 
diff --git a/src/com/android/settings/users/UserDetailsSettings.java b/src/com/android/settings/users/UserDetailsSettings.java
index 9976040..3f51b83 100644
--- a/src/com/android/settings/users/UserDetailsSettings.java
+++ b/src/com/android/settings/users/UserDetailsSettings.java
@@ -73,6 +73,7 @@
     private static final int DIALOG_CONFIRM_ENABLE_CALLING_AND_SMS = 3;
     private static final int DIALOG_SETUP_USER = 4;
     private static final int DIALOG_CONFIRM_RESET_GUEST = 5;
+    private static final int DIALOG_CONFIRM_RESET_GUEST_AND_SWITCH_USER = 6;
 
     /** Whether to enable the app_copying fragment. */
     private static final boolean SHOW_APP_COPYING_PREF = false;
@@ -142,6 +143,11 @@
             if (canSwitchUserNow()) {
                 if (shouldShowSetupPromptDialog()) {
                     showDialog(DIALOG_SETUP_USER);
+                } else if (mUserCaps.mIsGuest && mUserCaps.mIsEphemeral) {
+                    // if we are switching away from a ephemeral guest then,
+                    // show a dialog that guest user will be reset and then switch
+                    // the user
+                    showDialog(DIALOG_CONFIRM_RESET_GUEST_AND_SWITCH_USER);
                 } else {
                     switchUser();
                 }
@@ -173,6 +179,7 @@
         switch (dialogId) {
             case DIALOG_CONFIRM_REMOVE:
             case DIALOG_CONFIRM_RESET_GUEST:
+            case DIALOG_CONFIRM_RESET_GUEST_AND_SWITCH_USER:
                 return SettingsEnums.DIALOG_USER_REMOVE;
             case DIALOG_CONFIRM_ENABLE_CALLING:
                 return SettingsEnums.DIALOG_USER_ENABLE_CALLING;
@@ -216,6 +223,14 @@
                     return UserDialogs.createRemoveGuestDialog(getActivity(),
                         (dialog, which) -> resetGuest());
                 }
+            case DIALOG_CONFIRM_RESET_GUEST_AND_SWITCH_USER:
+                if (mGuestUserAutoCreated) {
+                    return UserDialogs.createResetGuestDialog(getActivity(),
+                        (dialog, which) -> switchUser());
+                } else {
+                    return UserDialogs.createRemoveGuestDialog(getActivity(),
+                        (dialog, which) -> switchUser());
+                }
         }
         throw new IllegalArgumentException("Unsupported dialogId " + dialogId);
     }
@@ -361,6 +376,16 @@
             if (mUserInfo.isGuest()) {
                 mMetricsFeatureProvider.action(getActivity(), SettingsEnums.ACTION_SWITCH_TO_GUEST);
             }
+            if (mUserCaps.mIsGuest && mUserCaps.mIsEphemeral) {
+                int guestUserId = UserHandle.myUserId();
+                // Using markGuestForDeletion allows us to create a new guest before this one is
+                // fully removed.
+                boolean marked = mUserManager.markGuestForDeletion(guestUserId);
+                if (!marked) {
+                    Log.w(TAG, "Couldn't mark the guest for deletion for user " + guestUserId);
+                    return;
+                }
+            }
             ActivityManager.getService().switchUser(mUserInfo.id);
         } catch (RemoteException re) {
             Log.e(TAG, "Error while switching to other user.");
diff --git a/src/com/android/settings/users/UserDialogs.java b/src/com/android/settings/users/UserDialogs.java
index 8549ffe..faaff4c 100644
--- a/src/com/android/settings/users/UserDialogs.java
+++ b/src/com/android/settings/users/UserDialogs.java
@@ -189,7 +189,7 @@
             DialogInterface.OnClickListener onConfirmListener) {
         return new AlertDialog.Builder(context)
                 .setTitle(com.android.settingslib.R.string.guest_reset_guest_dialog_title)
-                .setMessage(R.string.user_exit_guest_confirm_message)
+                .setMessage(com.android.settingslib.R.string.guest_exit_dialog_message)
                 .setPositiveButton(
                         com.android.settingslib.R.string.guest_reset_guest_confirm_button,
                         onConfirmListener)
diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java
index 358b87b..ca03e3f 100644
--- a/src/com/android/settings/users/UserSettings.java
+++ b/src/com/android/settings/users/UserSettings.java
@@ -47,13 +47,16 @@
 import android.os.UserHandle;
 import android.os.UserManager;
 import android.provider.ContactsContract;
+import android.provider.Settings;
 import android.text.TextUtils;
+import android.util.FeatureFlagUtils;
 import android.util.Log;
 import android.util.SparseArray;
 import android.view.Gravity;
 import android.view.Menu;
 import android.view.MenuInflater;
 import android.view.MenuItem;
+import android.view.WindowManagerGlobal;
 import android.widget.SimpleAdapter;
 import android.widget.Toast;
 
@@ -95,6 +98,7 @@
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.stream.Collectors;
 
 /**
  * Screen that manages the list of users on the device.
@@ -123,6 +127,13 @@
     private static final String KEY_ADD_USER_WHEN_LOCKED = "user_settings_add_users_when_locked";
     private static final String KEY_MULTIUSER_TOP_INTRO = "multiuser_top_intro";
     private static final String KEY_TIMEOUT_TO_USER_ZERO = "timeout_to_user_zero_preference";
+    private static final String KEY_GUEST_CATEGORY = "guest_category";
+    private static final String KEY_GUEST_RESET = "guest_reset";
+    private static final String KEY_GUEST_EXIT = "guest_exit";
+    private static final String KEY_REMOVE_GUEST_ON_EXIT = "remove_guest_on_exit";
+    private static final String KEY_GUEST_USER_CATEGORY = "guest_user_category";
+
+    private static final String SETTING_GUEST_HAS_LOGGED_IN = "systemui.guest_has_logged_in";
 
     private static final int MENU_REMOVE_USER = Menu.FIRST;
 
@@ -134,14 +145,18 @@
     private static final int DIALOG_USER_CANNOT_MANAGE = 5;
     private static final int DIALOG_CHOOSE_USER_TYPE = 6;
     private static final int DIALOG_NEED_LOCKSCREEN = 7;
-    private static final int DIALOG_CONFIRM_EXIT_GUEST = 8;
+    private static final int DIALOG_CONFIRM_REMOVE_GUEST = 8;
     private static final int DIALOG_USER_PROFILE_EDITOR = 9;
     private static final int DIALOG_USER_PROFILE_EDITOR_ADD_USER = 10;
     private static final int DIALOG_USER_PROFILE_EDITOR_ADD_RESTRICTED_PROFILE = 11;
-    private static final int DIALOG_CONFIRM_RESET_GUEST = 12;
+    private static final int DIALOG_CONFIRM_REMOVE_GUEST_WITH_AUTO_CREATE = 12;
+    private static final int DIALOG_CONFIRM_RESET_AND_RESTART_GUEST = 13;
+    private static final int DIALOG_CONFIRM_EXIT_GUEST_EPHEMERAL = 14;
+    private static final int DIALOG_CONFIRM_EXIT_GUEST_NON_EPHEMERAL = 15;
 
     private static final int MESSAGE_UPDATE_LIST = 1;
     private static final int MESSAGE_USER_CREATED = 2;
+    static final int MESSAGE_REMOVE_GUEST_ON_EXIT_CONTROLLER_GUEST_REMOVED = 3;
 
     private static final int USER_TYPE_USER = 1;
     private static final int USER_TYPE_RESTRICTED_PROFILE = 2;
@@ -165,6 +180,14 @@
     @VisibleForTesting
     PreferenceGroup mUserListCategory;
     @VisibleForTesting
+    PreferenceGroup mGuestUserCategory;
+    @VisibleForTesting
+    PreferenceGroup mGuestCategory;
+    @VisibleForTesting
+    Preference mGuestResetPreference;
+    @VisibleForTesting
+    Preference mGuestExitPreference;
+    @VisibleForTesting
     UserPreference mMePreference;
     @VisibleForTesting
     RestrictedPreference mAddGuest;
@@ -189,6 +212,7 @@
     private EditUserInfoController mEditUserInfoController =
             new EditUserInfoController(Utils.FILE_PROVIDER_AUTHORITY);
     private AddUserWhenLockedPreferenceController mAddUserWhenLockedPreferenceController;
+    private RemoveGuestOnExitPreferenceController mRemoveGuestOnExitPreferenceController;
     private MultiUserTopIntroPreferenceController mMultiUserTopIntroPreferenceController;
     private TimeoutToUserZeroPreferenceController mTimeoutToUserZeroPreferenceController;
     private UserCreatingDialog mUserCreatingDialog;
@@ -213,6 +237,12 @@
                 case MESSAGE_USER_CREATED:
                     onUserCreated(msg.arg1);
                     break;
+                case MESSAGE_REMOVE_GUEST_ON_EXIT_CONTROLLER_GUEST_REMOVED:
+                    updateUserList();
+                    if (mGuestUserAutoCreated) {
+                        scheduleGuestCreation();
+                    }
+                    break;
             }
         }
     };
@@ -245,7 +275,11 @@
         final SettingsActivity activity = (SettingsActivity) getActivity();
         final SettingsMainSwitchBar switchBar = activity.getSwitchBar();
         switchBar.setTitle(getContext().getString(R.string.multiple_users_main_switch_title));
-        switchBar.show();
+        if (mUserCaps.mIsAdmin) {
+            switchBar.show();
+        } else {
+            switchBar.hide();
+        }
         mSwitchBarController = new MultiUserSwitchBarController(activity,
                 new MainSwitchBarController(switchBar), this /* listener */);
         getSettingsLifecycle().addObserver(mSwitchBarController);
@@ -267,6 +301,9 @@
         mAddUserWhenLockedPreferenceController = new AddUserWhenLockedPreferenceController(
                 activity, KEY_ADD_USER_WHEN_LOCKED);
 
+        mRemoveGuestOnExitPreferenceController = new RemoveGuestOnExitPreferenceController(
+                activity, KEY_REMOVE_GUEST_ON_EXIT, this, mHandler);
+
         mMultiUserTopIntroPreferenceController = new MultiUserTopIntroPreferenceController(activity,
                 KEY_MULTIUSER_TOP_INTRO);
 
@@ -275,12 +312,16 @@
 
         final PreferenceScreen screen = getPreferenceScreen();
         mAddUserWhenLockedPreferenceController.displayPreference(screen);
+        mRemoveGuestOnExitPreferenceController.displayPreference(screen);
         mMultiUserTopIntroPreferenceController.displayPreference(screen);
         mTimeoutToUserZeroPreferenceController.displayPreference(screen);
 
         screen.findPreference(mAddUserWhenLockedPreferenceController.getPreferenceKey())
                 .setOnPreferenceChangeListener(mAddUserWhenLockedPreferenceController);
 
+        screen.findPreference(mRemoveGuestOnExitPreferenceController.getPreferenceKey())
+                .setOnPreferenceChangeListener(mRemoveGuestOnExitPreferenceController);
+
         if (icicle != null) {
             if (icicle.containsKey(SAVE_REMOVING_USER)) {
                 mRemovingUserId = icicle.getInt(SAVE_REMOVING_USER);
@@ -304,6 +345,16 @@
             mMePreference.setSummary(R.string.user_admin);
         }
 
+        mGuestCategory = findPreference(KEY_GUEST_CATEGORY);
+
+        mGuestResetPreference = findPreference(KEY_GUEST_RESET);
+        mGuestResetPreference.setOnPreferenceClickListener(this);
+
+        mGuestExitPreference = findPreference(KEY_GUEST_EXIT);
+        mGuestExitPreference.setOnPreferenceClickListener(this);
+
+        mGuestUserCategory = findPreference(KEY_GUEST_USER_CATEGORY);
+
         mAddGuest = findPreference(KEY_ADD_GUEST);
         mAddGuest.setOnPreferenceClickListener(this);
 
@@ -339,7 +390,8 @@
                 mAddUserWhenLockedPreferenceController.getPreferenceKey()));
         mTimeoutToUserZeroPreferenceController.updateState(screen.findPreference(
                 mTimeoutToUserZeroPreferenceController.getPreferenceKey()));
-
+        mRemoveGuestOnExitPreferenceController.updateState(screen.findPreference(
+                mRemoveGuestOnExitPreferenceController.getPreferenceKey()));
         if (mShouldUpdateUserList) {
             updateUI();
         }
@@ -418,6 +470,11 @@
         updateUserList();
     }
 
+    private boolean isEnableGuestModeUxChanges() {
+        return FeatureFlagUtils.isEnabled(getContext(),
+                FeatureFlagUtils.SETTINGS_GUEST_MODE_UX_CHANGES);
+    }
+
     /**
      * Loads profile information for the current user.
      */
@@ -460,7 +517,7 @@
         int myUserId = UserHandle.myUserId();
         Bitmap b = mUserManager.getUserIcon(myUserId);
         if (b != null) {
-            mMePreference.setIcon(encircle(b));
+            mMePreference.setIcon(encircleUserIcon(b));
             mUserIcons.put(myUserId, b);
         }
     }
@@ -702,7 +759,7 @@
                         .create();
                 return dlg;
             }
-            case DIALOG_CONFIRM_EXIT_GUEST: {
+            case DIALOG_CONFIRM_REMOVE_GUEST: {
                 Dialog dlg = new AlertDialog.Builder(context)
                         .setTitle(com.android.settingslib.R.string.guest_remove_guest_dialog_title)
                         .setMessage(R.string.user_exit_guest_confirm_message)
@@ -710,13 +767,56 @@
                                 new DialogInterface.OnClickListener() {
                                     @Override
                                     public void onClick(DialogInterface dialog, int which) {
-                                        exitGuest();
+                                        clearAndExitGuest();
                                     }
                                 })
                         .setNegativeButton(android.R.string.cancel, null)
                         .create();
                 return dlg;
             }
+            case DIALOG_CONFIRM_EXIT_GUEST_EPHEMERAL: {
+                Dialog dlg = new AlertDialog.Builder(context)
+                        .setTitle(com.android.settingslib.R.string.guest_exit_dialog_title)
+                        .setMessage(com.android.settingslib.R.string.guest_exit_dialog_message)
+                        .setPositiveButton(
+                                com.android.settingslib.R.string.guest_exit_dialog_button,
+                                new DialogInterface.OnClickListener() {
+                                    @Override
+                                    public void onClick(DialogInterface dialog, int which) {
+                                        clearAndExitGuest();
+                                    }
+                                })
+                        .setNeutralButton(android.R.string.cancel, null)
+                        .create();
+                return dlg;
+            }
+            case DIALOG_CONFIRM_EXIT_GUEST_NON_EPHEMERAL: {
+                Dialog dlg = new AlertDialog.Builder(context)
+                        .setTitle(
+                            com.android.settingslib.R.string.guest_exit_dialog_title_non_ephemeral)
+                        .setMessage(
+                            com.android.settingslib
+                                .R.string.guest_exit_dialog_message_non_ephemeral)
+                        .setPositiveButton(
+                            com.android.settingslib.R.string.guest_exit_save_data_button,
+                                new DialogInterface.OnClickListener() {
+                                    @Override
+                                    public void onClick(DialogInterface dialog, int which) {
+                                        exitGuest();
+                                    }
+                                })
+                        .setNegativeButton(
+                            com.android.settingslib.R.string.guest_exit_clear_data_button,
+                                new DialogInterface.OnClickListener() {
+                                    @Override
+                                    public void onClick(DialogInterface dialog, int which) {
+                                        clearAndExitGuest();
+                                    }
+                                })
+                        .setNeutralButton(android.R.string.cancel, null)
+                        .create();
+                return dlg;
+            }
             case DIALOG_USER_PROFILE_EDITOR: {
                 return buildEditCurrentUserDialog();
             }
@@ -736,14 +836,27 @@
                 }
                 return buildAddUserDialog(USER_TYPE_RESTRICTED_PROFILE);
             }
-            case DIALOG_CONFIRM_RESET_GUEST: {
-                if (mGuestUserAutoCreated) {
-                    return UserDialogs.createResetGuestDialog(getActivity(),
-                        (dialog, which) -> resetGuest());
-                } else {
-                    return UserDialogs.createRemoveGuestDialog(getActivity(),
-                        (dialog, which) -> resetGuest());
-                }
+            case DIALOG_CONFIRM_REMOVE_GUEST_WITH_AUTO_CREATE: {
+                return UserDialogs.createResetGuestDialog(getActivity(),
+                        (dialog, which) -> clearAndExitGuest());
+            }
+            case DIALOG_CONFIRM_RESET_AND_RESTART_GUEST: {
+                Dialog dlg = new AlertDialog.Builder(context)
+                        .setTitle(
+                            com.android.settingslib.R.string.guest_reset_and_restart_dialog_title)
+                        .setMessage(
+                            com.android.settingslib.R.string.guest_reset_and_restart_dialog_message)
+                        .setPositiveButton(
+                            com.android.settingslib.R.string.guest_reset_guest_confirm_button,
+                                new DialogInterface.OnClickListener() {
+                                    @Override
+                                    public void onClick(DialogInterface dialog, int which) {
+                                        resetAndRestartGuest();
+                                    }
+                                })
+                        .setNeutralButton(android.R.string.cancel, null)
+                        .create();
+                return dlg;
             }
             default:
                 return null;
@@ -821,8 +934,11 @@
                 return SettingsEnums.DIALOG_USER_CHOOSE_TYPE;
             case DIALOG_NEED_LOCKSCREEN:
                 return SettingsEnums.DIALOG_USER_NEED_LOCKSCREEN;
-            case DIALOG_CONFIRM_EXIT_GUEST:
-            case DIALOG_CONFIRM_RESET_GUEST:
+            case DIALOG_CONFIRM_REMOVE_GUEST:
+            case DIALOG_CONFIRM_REMOVE_GUEST_WITH_AUTO_CREATE:
+            case DIALOG_CONFIRM_EXIT_GUEST_EPHEMERAL:
+            case DIALOG_CONFIRM_EXIT_GUEST_NON_EPHEMERAL:
+            case DIALOG_CONFIRM_RESET_AND_RESTART_GUEST:
                 return SettingsEnums.DIALOG_USER_CONFIRM_EXIT_GUEST;
             case DIALOG_USER_PROFILE_EDITOR:
             case DIALOG_USER_PROFILE_EDITOR_ADD_USER:
@@ -864,6 +980,18 @@
         }
     }
 
+    private void switchToUserId(int userId) {
+        if (!canSwitchUserNow()) {
+            Log.w(TAG, "Cannot switch current user when switching is disabled");
+            return;
+        }
+        try {
+            ActivityManager.getService().switchUser(userId);
+        } catch (RemoteException re) {
+            Log.e(TAG, "Unable to switch user");
+        }
+    }
+
     private void addUserNow(final int userType) {
         Trace.beginAsyncSection("UserSettings.addUserNow", 0);
         synchronized (mUserLock) {
@@ -945,36 +1073,91 @@
      * Erase the current user (guest) and switch to another user.
      */
     @VisibleForTesting
-    void exitGuest() {
+    void clearAndExitGuest() {
         // Just to be safe
         if (!isCurrentUserGuest()) {
             return;
         }
         mMetricsFeatureProvider.action(getActivity(),
                 SettingsEnums.ACTION_USER_GUEST_EXIT_CONFIRMED);
-        removeThisUser();
-    }
 
-    /**
-     * Erase the current user (assuming it is a guest user), and create a new one in the background
-     */
-    @VisibleForTesting
-    void resetGuest() {
-        // Just to be safe
-        if (!isCurrentUserGuest()) {
-            return;
-        }
         int guestUserId = UserHandle.myUserId();
         // Using markGuestForDeletion allows us to create a new guest before this one is
-        // fully removed. This could happen if someone calls scheduleGuestCreation()
-        // immediately after calling this method.
+        // fully removed.
         boolean marked = mUserManager.markGuestForDeletion(guestUserId);
         if (!marked) {
             Log.w(TAG, "Couldn't mark the guest for deletion for user " + guestUserId);
             return;
         }
-        exitGuest();
-        scheduleGuestCreation();
+
+        removeThisUser();
+        if (mGuestUserAutoCreated) {
+            scheduleGuestCreation();
+        }
+    }
+
+    /**
+     * Switch to another user.
+     */
+    private void exitGuest() {
+        // Just to be safe
+        if (!isCurrentUserGuest()) {
+            return;
+        }
+        mMetricsFeatureProvider.action(getActivity(),
+                SettingsEnums.ACTION_USER_GUEST_EXIT_CONFIRMED);
+        switchToUserId(UserHandle.USER_SYSTEM);
+    }
+
+    private int createGuest() {
+        UserInfo guest;
+        Context context = getPrefContext();
+        try {
+            guest = mUserManager.createGuest(context);
+        } catch (UserManager.UserOperationException e) {
+            Log.e(TAG, "Couldn't create guest user", e);
+            return UserHandle.USER_NULL;
+        }
+        if (guest == null) {
+            Log.e(TAG, "Couldn't create guest, most likely because there already exists one");
+            return UserHandle.USER_NULL;
+        }
+        return guest.id;
+    }
+
+    /**
+     * Remove current guest and start a new guest session
+     */
+    private void resetAndRestartGuest() {
+        // Just to be safe
+        if (!isCurrentUserGuest()) {
+            return;
+        }
+        int oldGuestUserId = UserHandle.myUserId();
+        // Using markGuestForDeletion allows us to create a new guest before this one is
+        // fully removed.
+        boolean marked = mUserManager.markGuestForDeletion(oldGuestUserId);
+        if (!marked) {
+            Log.w(TAG, "Couldn't mark the guest for deletion for user " + oldGuestUserId);
+            return;
+        }
+
+        try {
+            // Create a new guest in the foreground, and then immediately switch to it
+            int newGuestUserId = createGuest();
+            if (newGuestUserId == UserHandle.USER_NULL) {
+                Log.e(TAG, "Could not create new guest, switching back to system user");
+                switchToUserId(UserHandle.USER_SYSTEM);
+                mUserManager.removeUser(oldGuestUserId);
+                WindowManagerGlobal.getWindowManagerService().lockNow(/* options= */ null);
+                return;
+            }
+            switchToUserId(newGuestUserId);
+            mUserManager.removeUser(oldGuestUserId);
+        } catch (RemoteException e) {
+            Log.e(TAG, "Couldn't remove guest because ActivityManager or WindowManager is dead");
+            return;
+        }
     }
 
     /**
@@ -1009,18 +1192,28 @@
         if (context == null) {
             return;
         }
-        final List<UserInfo> users = mUserManager.getAliveUsers();
-
+        final List<UserInfo> users = mUserManager.getAliveUsers()
+                // Only users that can be switched to should show up here.
+                // e.g. Managed profiles appear under Accounts Settings instead
+                .stream().filter(UserInfo::supportsSwitchToByUser)
+                .collect(Collectors.toList());
         final ArrayList<Integer> missingIcons = new ArrayList<>();
         final ArrayList<UserPreference> userPreferences = new ArrayList<>();
-        userPreferences.add(mMePreference);
+
+        // mMePreference shows a icon for current user. However when current user is a guest, we
+        // don't show the guest user icon, instead we show two preferences for guest user to
+        // exit and reset itself. Hence we don't add mMePreference, i.e. guest user to the
+        // list of users visible in the UI.
+        if (!mUserCaps.mIsGuest) {
+            userPreferences.add(mMePreference);
+        }
 
         boolean canOpenUserDetails =
                 mUserCaps.mIsAdmin || (canSwitchUserNow() && !mUserCaps.mDisallowSwitchUser);
         for (UserInfo user : users) {
-            if (!user.supportsSwitchToByUser()) {
-                // Only users that can be switched to should show up here.
-                // e.g. Managed profiles appear under Accounts Settings instead
+            if (user.isGuest()) {
+                // Guest user is added to guest category via updateGuestCategory
+                // and not to user list so skip guest here
                 continue;
             }
             UserPreference pref;
@@ -1033,21 +1226,9 @@
                 pref.setOnPreferenceClickListener(this);
                 pref.setEnabled(canOpenUserDetails);
                 pref.setSelectable(true);
-
-                if (user.isGuest()) {
-                    pref.setIcon(getEncircledDefaultIcon());
-                    pref.setKey(KEY_USER_GUEST);
-                    if (mUserCaps.mDisallowSwitchUser) {
-                        pref.setDisabledByAdmin(
-                                RestrictedLockUtilsInternal.getDeviceOwner(context));
-                    } else {
-                        pref.setDisabledByAdmin(null);
-                    }
-                } else {
-                    pref.setKey("id=" + user.id);
-                    if (user.isAdmin()) {
-                        pref.setSummary(R.string.user_admin);
-                    }
+                pref.setKey("id=" + user.id);
+                if (user.isAdmin()) {
+                    pref.setSummary(R.string.user_admin);
                 }
             }
             if (pref == null) {
@@ -1102,12 +1283,13 @@
             loadIconsAsync(missingIcons);
         }
 
-        // If profiles are supported, mUserListCategory will have a special title
+        // If restricted profiles are supported, mUserListCategory will have a special title
         if (mUserCaps.mCanAddRestrictedProfile) {
             mUserListCategory.setTitle(R.string.user_list_title);
+        } else if (isCurrentUserGuest()) {
+            mUserListCategory.setTitle(R.string.other_user_category_title);
         } else {
-            mUserListCategory.setTitle(null);
-            mUserListCategory.setLayoutResource(R.layout.empty_view);
+            mUserListCategory.setTitle(R.string.user_category_title);
         }
 
         // Remove everything from mUserListCategory and add new users.
@@ -1122,8 +1304,8 @@
                 mMultiUserTopIntroPreferenceController.getPreferenceKey());
         mMultiUserTopIntroPreferenceController.updateState(multiUserTopIntroPrefence);
         mUserListCategory.setVisible(mUserCaps.mUserSwitcherEnabled);
-
-        updateAddGuest(context, users.stream().anyMatch(UserInfo::isGuest));
+        updateGuestPreferences();
+        updateGuestCategory(context, users);
         updateAddUser(context);
         updateAddSupervisedUser(context);
 
@@ -1152,14 +1334,130 @@
         return mUserManager.getUserSwitchability() == UserManager.SWITCHABILITY_STATUS_OK;
     }
 
-    private void updateAddGuest(Context context, boolean isGuestAlreadyCreated) {
+    private void updateGuestPreferences() {
+        // reset guest and exit guest preferences are shown only in guest mode.
+        // For all other users these are not visible.
+        mGuestCategory.setVisible(false);
+        mGuestResetPreference.setVisible(false);
+        mGuestExitPreference.setVisible(false);
+        if (!isCurrentUserGuest()) {
+            return;
+        }
+        mGuestCategory.setVisible(true);
+        mGuestExitPreference.setVisible(true);
+        if (isEnableGuestModeUxChanges()) {
+            mGuestResetPreference.setVisible(true);
+
+            boolean isGuestFirstLogin = Settings.Secure.getIntForUser(
+                                            getContext().getContentResolver(),
+                                            SETTING_GUEST_HAS_LOGGED_IN,
+                                            0,
+                                            UserHandle.myUserId()) <= 1;
+            String guestExitSummary;
+            if (mUserCaps.mIsEphemeral) {
+                guestExitSummary = getContext().getString(
+                                    R.string.guest_notification_ephemeral);
+            } else if (isGuestFirstLogin) {
+                guestExitSummary = getContext().getString(
+                                    R.string.guest_notification_non_ephemeral);
+            } else {
+                guestExitSummary = getContext().getString(
+                                    R.string.guest_notification_non_ephemeral_non_first_login);
+            }
+            mGuestExitPreference.setSummary(guestExitSummary);
+        } else {
+            mGuestExitPreference.setIcon(getEncircledDefaultIcon());
+            mGuestExitPreference.setTitle(
+                                    mGuestUserAutoCreated
+                                        ? com.android.settingslib.R.string.guest_reset_guest
+                                        : com.android.settingslib.R.string.guest_exit_guest);
+        }
+    }
+
+    private void updateGuestCategory(Context context, List<UserInfo> users) {
+        // show guest category title and related guest preferences
+        // - if guest is created, then show guest user preference
+        // - if guest is not created and its allowed to create guest,
+        //   then show "add guest" preference
+        // - if allowed, show "reset guest on exit" preference
+        // - if there is nothing to show, then make the guest category as not visible
+        // - guest category is not visible for guest user.
+        UserPreference pref = null;
+        boolean isGuestAlreadyCreated = false;
+        boolean canOpenUserDetails =
+                mUserCaps.mIsAdmin || (canSwitchUserNow() && !mUserCaps.mDisallowSwitchUser);
+
+        mGuestUserCategory.removeAll();
+        mGuestUserCategory.setVisible(false);
+        for (UserInfo user : users) {
+            if (!user.isGuest() || !user.isEnabled()) {
+                // Only look at enabled, guest users
+                continue;
+            }
+            final Context prefContext = getPrefContext();
+            pref = new UserPreference(prefContext, null, user.id);
+            pref.setTitle(user.name);
+            pref.setOnPreferenceClickListener(this);
+            pref.setEnabled(canOpenUserDetails);
+            pref.setSelectable(true);
+            if (isEnableGuestModeUxChanges()) {
+                Drawable icon = getContext().getDrawable(R.drawable.ic_account_circle_outline);
+                icon.setTint(
+                        getColorAttrDefaultColor(getContext(), android.R.attr.colorControlNormal));
+                pref.setIcon(encircleUserIcon(
+                        UserIcons.convertToBitmapAtUserIconSize(
+                                getContext().getResources(), icon)));
+            } else {
+                pref.setIcon(getEncircledDefaultIcon());
+            }
+            pref.setKey(KEY_USER_GUEST);
+            pref.setOrder(Preference.DEFAULT_ORDER);
+            if (mUserCaps.mDisallowSwitchUser) {
+                pref.setDisabledByAdmin(
+                        RestrictedLockUtilsInternal.getDeviceOwner(context));
+            } else {
+                pref.setDisabledByAdmin(null);
+            }
+            if (mUserCaps.mUserSwitcherEnabled) {
+                mGuestUserCategory.addPreference(pref);
+                // guest user preference is shown hence also make guest category visible
+                mGuestUserCategory.setVisible(true);
+            }
+            isGuestAlreadyCreated = true;
+        }
+        boolean isVisible = updateAddGuestPreference(context, isGuestAlreadyCreated);
+        if (isVisible) {
+            // "add guest" preference is shown hence also make guest category visible
+            mGuestUserCategory.setVisible(true);
+        }
+        final Preference removeGuestOnExit = getPreferenceScreen().findPreference(
+                mRemoveGuestOnExitPreferenceController.getPreferenceKey());
+        mRemoveGuestOnExitPreferenceController.updateState(removeGuestOnExit);
+        if (mRemoveGuestOnExitPreferenceController.isAvailable()) {
+            // "reset guest on exit" preference is shown hence also make guest category visible
+            mGuestUserCategory.setVisible(true);
+        }
+        if (mUserCaps.mIsGuest) {
+            // guest category is not visible for guest user.
+            mGuestUserCategory.setVisible(false);
+        }
+    }
+
+    private boolean updateAddGuestPreference(Context context, boolean isGuestAlreadyCreated) {
+        boolean isVisible = false;
         if (!isGuestAlreadyCreated && mUserCaps.mCanAddGuest
                 && mUserManager.canAddMoreUsers(UserManager.USER_TYPE_FULL_GUEST)
                 && WizardManagerHelper.isDeviceProvisioned(context)
                 && mUserCaps.mUserSwitcherEnabled) {
+            isVisible = true;
             mAddGuest.setVisible(true);
-            Drawable icon = context.getDrawable(R.drawable.ic_account_circle);
-            mAddGuest.setIcon(centerAndTint(icon));
+            // when isEnableGuestModeUxChanges() is true, the icon is set via the layout xml
+            // In com.android.settings.users.UserSettingsTest
+            // we disable the check for setIcon being called
+            if (!isEnableGuestModeUxChanges()) {
+                Drawable icon = context.getDrawable(R.drawable.ic_account_circle);
+                mAddGuest.setIcon(centerAndTint(icon));
+            }
             mAddGuest.setSelectable(true);
             if (mGuestUserAutoCreated && mGuestCreationScheduled.get()) {
                 mAddGuest.setTitle(com.android.internal.R.string.guest_name);
@@ -1172,19 +1470,26 @@
         } else {
             mAddGuest.setVisible(false);
         }
+        return isVisible;
     }
 
     private void updateAddUser(Context context) {
         updateAddUserCommon(context, mAddUser, mUserCaps.mCanAddRestrictedProfile);
-        Drawable icon = context.getDrawable(R.drawable.ic_account_circle_filled);
-        mAddUser.setIcon(centerAndTint(icon));
+        // when isEnableGuestModeUxChanges() is true, the icon is set via the layout xml
+        if (!isEnableGuestModeUxChanges()) {
+            Drawable icon = context.getDrawable(R.drawable.ic_account_circle_filled);
+            mAddUser.setIcon(centerAndTint(icon));
+        }
     }
 
     private void updateAddSupervisedUser(Context context) {
         if (!TextUtils.isEmpty(mConfigSupervisedUserCreationPackage)) {
             updateAddUserCommon(context, mAddSupervisedUser, false);
-            Drawable icon = context.getDrawable(R.drawable.ic_add_supervised_user);
-            mAddSupervisedUser.setIcon(centerAndTint(icon));
+            // when isEnableGuestModeUxChanges() is true, the icon is set via the layout xml
+            if (!isEnableGuestModeUxChanges()) {
+                Drawable icon = context.getDrawable(R.drawable.ic_add_supervised_user);
+                mAddSupervisedUser.setIcon(centerAndTint(icon));
+            }
         } else {
             mAddSupervisedUser.setVisible(false);
         }
@@ -1265,7 +1570,7 @@
 
     private Drawable getEncircledDefaultIcon() {
         if (mDefaultIconDrawable == null) {
-            mDefaultIconDrawable = encircle(
+            mDefaultIconDrawable = encircleUserIcon(
                     getDefaultUserIconAsBitmap(getContext().getResources(), UserHandle.USER_NULL));
         }
         return mDefaultIconDrawable;
@@ -1274,23 +1579,42 @@
     private void setPhotoId(Preference pref, UserInfo user) {
         Bitmap bitmap = mUserIcons.get(user.id);
         if (bitmap != null) {
-            pref.setIcon(encircle(bitmap));
+            pref.setIcon(encircleUserIcon(bitmap));
         }
     }
 
     @Override
     public boolean onPreferenceClick(Preference pref) {
-        if (pref == mMePreference) {
-            if (isCurrentUserGuest()) {
-                if (mGuestUserAutoCreated) {
-                    showDialog(DIALOG_CONFIRM_RESET_GUEST);
-                } else {
-                    showDialog(DIALOG_CONFIRM_EXIT_GUEST);
+        if (isCurrentUserGuest()) {
+            if (isEnableGuestModeUxChanges()) {
+                if (mGuestResetPreference != null && pref == mGuestResetPreference) {
+                    showDialog(DIALOG_CONFIRM_RESET_AND_RESTART_GUEST);
+                    return true;
+                }
+                if (mGuestExitPreference != null && pref == mGuestExitPreference) {
+                    if (mUserCaps.mIsEphemeral) {
+                        showDialog(DIALOG_CONFIRM_EXIT_GUEST_EPHEMERAL);
+                    } else {
+                        showDialog(DIALOG_CONFIRM_EXIT_GUEST_NON_EPHEMERAL);
+                    }
+                    return true;
                 }
             } else {
-                showDialog(DIALOG_USER_PROFILE_EDITOR);
+                if (mGuestExitPreference != null && pref == mGuestExitPreference) {
+                    if (mGuestUserAutoCreated) {
+                        showDialog(DIALOG_CONFIRM_REMOVE_GUEST_WITH_AUTO_CREATE);
+                    } else {
+                        showDialog(DIALOG_CONFIRM_REMOVE_GUEST);
+                    }
+                    return true;
+                }
             }
-            return true;
+        }
+        if (pref == mMePreference) {
+            if (!isCurrentUserGuest()) {
+                showDialog(DIALOG_USER_PROFILE_EDITOR);
+                return true;
+            }
         } else if (pref instanceof UserPreference) {
             UserInfo userInfo = mUserManager.getUserInfo(((UserPreference) pref).getUserId());
             openUserDetails(userInfo, false);
@@ -1318,9 +1642,11 @@
         return false;
     }
 
-    private Drawable encircle(Bitmap icon) {
-        Drawable circled = CircleFramedDrawable.getInstance(getActivity(), icon);
-        return circled;
+    private Drawable encircleUserIcon(Bitmap icon) {
+        return new CircleFramedDrawable(
+                icon,
+                getActivity().getResources().getDimensionPixelSize(
+                        R.dimen.multiple_users_user_icon_size));
     }
 
     @Override
diff --git a/src/com/android/settings/vpn2/AdvancedVpnFeatureProvider.java b/src/com/android/settings/vpn2/AdvancedVpnFeatureProvider.java
new file mode 100644
index 0000000..962b6c2
--- /dev/null
+++ b/src/com/android/settings/vpn2/AdvancedVpnFeatureProvider.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.vpn2;
+
+import android.content.Context;
+
+/**
+ * Feature Provider used in vpn usage
+ */
+public interface AdvancedVpnFeatureProvider {
+
+    /**
+     * Returns package name of advanced vpn.
+     */
+    String getAdvancedVpnPackageName();
+
+    /**
+     * Returns {@code true} advanced vpn is supported.
+     */
+    boolean isAdvancedVpnSupported(Context context);
+
+    /**
+     * Returns the title of advanced vpn preference group.
+     */
+    String getAdvancedVpnPreferenceGroupTitle(Context context);
+
+    /**
+     * Returns the title of vpn preference group.
+     */
+    String getVpnPreferenceGroupTitle(Context context);
+
+    /**
+     * Returns {@code true} advanced vpn is removable.
+     */
+    boolean isAdvancedVpnRemovable();
+
+    /**
+     * Returns {@code true} if the disconnect dialog is enabled when advanced vpn is connected.
+     */
+    boolean isDisconnectDialogEnabled();
+}
diff --git a/src/com/android/settings/vpn2/AdvancedVpnFeatureProviderImpl.java b/src/com/android/settings/vpn2/AdvancedVpnFeatureProviderImpl.java
new file mode 100644
index 0000000..b8f58a9
--- /dev/null
+++ b/src/com/android/settings/vpn2/AdvancedVpnFeatureProviderImpl.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.vpn2;
+
+import android.content.Context;
+
+/**
+ * Feature provider implementation for advanced vpn.
+ */
+public class AdvancedVpnFeatureProviderImpl implements AdvancedVpnFeatureProvider {
+    @Override
+    public String getAdvancedVpnPackageName() {
+        return null;
+    }
+
+    @Override
+    public boolean isAdvancedVpnSupported(Context context) {
+        return false;
+    }
+
+    @Override
+    public String getAdvancedVpnPreferenceGroupTitle(Context context) {
+        return null;
+    }
+
+    @Override
+    public String getVpnPreferenceGroupTitle(Context context) {
+        return null;
+    }
+
+    @Override
+    public boolean isAdvancedVpnRemovable() {
+        return true;
+    }
+
+    @Override
+    public boolean isDisconnectDialogEnabled() {
+        return true;
+    }
+}
diff --git a/src/com/android/settings/vpn2/AppManagementFragment.java b/src/com/android/settings/vpn2/AppManagementFragment.java
index d4ee5b9..d2fa5fc 100644
--- a/src/com/android/settings/vpn2/AppManagementFragment.java
+++ b/src/com/android/settings/vpn2/AppManagementFragment.java
@@ -48,6 +48,7 @@
 import com.android.settings.SettingsPreferenceFragment;
 import com.android.settings.core.SubSettingLauncher;
 import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.RestrictedLockUtils;
 import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
 import com.android.settingslib.RestrictedPreference;
@@ -71,6 +72,7 @@
     private PackageManager mPackageManager;
     private DevicePolicyManager mDevicePolicyManager;
     private VpnManager mVpnManager;
+    private AdvancedVpnFeatureProvider mFeatureProvider;
 
     // VPN app info
     private final int mUserId = UserHandle.myUserId();
@@ -122,6 +124,7 @@
         mPackageManager = getContext().getPackageManager();
         mDevicePolicyManager = getContext().getSystemService(DevicePolicyManager.class);
         mVpnManager = getContext().getSystemService(VpnManager.class);
+        mFeatureProvider = FeatureFactory.getFactory(getContext()).getAdvancedVpnFeatureProvider();
 
         mPreferenceAlwaysOn = (RestrictedSwitchPreference) findPreference(KEY_ALWAYS_ON_VPN);
         mPreferenceLockdown = (RestrictedSwitchPreference) findPreference(KEY_LOCKDOWN_VPN);
@@ -283,7 +286,16 @@
         }
     }
 
-    private void updateRestrictedViews() {
+    @VisibleForTesting
+    void updateRestrictedViews() {
+        if (mFeatureProvider.isAdvancedVpnSupported(getContext())
+                && !mFeatureProvider.isAdvancedVpnRemovable()
+                && TextUtils.equals(mPackageName, mFeatureProvider.getAdvancedVpnPackageName())) {
+            mPreferenceForget.setVisible(false);
+        } else {
+            mPreferenceForget.setVisible(true);
+        }
+
         if (isAdded()) {
             mPreferenceAlwaysOn.checkRestrictionAndSetDisabled(UserManager.DISALLOW_CONFIG_VPN,
                     mUserId);
@@ -314,6 +326,14 @@
         }
     }
 
+    @VisibleForTesting
+    void init(String packageName, AdvancedVpnFeatureProvider featureProvider,
+            RestrictedPreference preference) {
+        mPackageName = packageName;
+        mFeatureProvider = featureProvider;
+        mPreferenceForget = preference;
+    }
+
     private String getAlwaysOnVpnPackage() {
         return mVpnManager.getAlwaysOnVpnPackageForUser(mUserId);
     }
diff --git a/src/com/android/settings/vpn2/VpnSettings.java b/src/com/android/settings/vpn2/VpnSettings.java
index e89785f..a91bb6c 100644
--- a/src/com/android/settings/vpn2/VpnSettings.java
+++ b/src/com/android/settings/vpn2/VpnSettings.java
@@ -26,6 +26,7 @@
 import android.app.settings.SettingsEnums;
 import android.content.Context;
 import android.content.Intent;
+import android.content.pm.ApplicationInfo;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
 import android.net.ConnectivityManager;
@@ -42,6 +43,7 @@
 import android.os.UserManager;
 import android.security.Credentials;
 import android.security.LegacyVpnProfileStore;
+import android.text.TextUtils;
 import android.util.ArrayMap;
 import android.util.ArraySet;
 import android.util.Log;
@@ -52,6 +54,7 @@
 import androidx.annotation.VisibleForTesting;
 import androidx.preference.Preference;
 import androidx.preference.PreferenceGroup;
+import androidx.preference.PreferenceScreen;
 
 import com.android.internal.annotations.GuardedBy;
 import com.android.internal.net.LegacyVpnInfo;
@@ -59,6 +62,7 @@
 import com.android.internal.net.VpnProfile;
 import com.android.settings.R;
 import com.android.settings.RestrictedSettingsFragment;
+import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.widget.GearPreference;
 import com.android.settings.widget.GearPreference.OnGearClickListener;
 import com.android.settingslib.RestrictedLockUtilsInternal;
@@ -79,9 +83,12 @@
 public class VpnSettings extends RestrictedSettingsFragment implements
         Handler.Callback, Preference.OnPreferenceClickListener {
     private static final String LOG_TAG = "VpnSettings";
+    private static final boolean DEBUG = Log.isLoggable(LOG_TAG, Log.DEBUG);
 
     private static final int RESCAN_MESSAGE = 0;
     private static final int RESCAN_INTERVAL_MS = 1000;
+    private static final String ADVANCED_VPN_GROUP_KEY = "advanced_vpn_group";
+    private static final String VPN_GROUP_KEY = "vpn_group";
 
     private static final NetworkRequest VPN_REQUEST = new NetworkRequest.Builder()
             .removeCapability(NetworkCapabilities.NET_CAPABILITY_NOT_VPN)
@@ -102,6 +109,9 @@
     private LegacyVpnInfo mConnectedLegacyVpn;
 
     private boolean mUnavailable;
+    private AdvancedVpnFeatureProvider mFeatureProvider;
+    private PreferenceScreen mPreferenceScreen;
+    private boolean mIsAdvancedVpnSupported;
 
     public VpnSettings() {
         super(UserManager.DISALLOW_CONFIG_VPN);
@@ -119,11 +129,14 @@
         mUserManager = (UserManager) getSystemService(Context.USER_SERVICE);
         mConnectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
         mVpnManager = (VpnManager) getSystemService(Context.VPN_MANAGEMENT_SERVICE);
+        mFeatureProvider = FeatureFactory.getFactory(getContext()).getAdvancedVpnFeatureProvider();
+        mIsAdvancedVpnSupported = mFeatureProvider.isAdvancedVpnSupported(getContext());
 
         mUnavailable = isUiRestricted();
         setHasOptionsMenu(!mUnavailable);
 
         addPreferencesFromResource(R.xml.vpn_settings2);
+        mPreferenceScreen = getPreferenceScreen();
     }
 
     @Override
@@ -229,7 +242,8 @@
 
         // Run heavy RPCs before switching to UI thread
         final List<VpnProfile> vpnProfiles = loadVpnProfiles();
-        final List<AppVpnInfo> vpnApps = getVpnApps(context, /* includeProfiles */ true);
+        final List<AppVpnInfo> vpnApps = getVpnApps(context, /* includeProfiles */ true,
+                mFeatureProvider);
 
         final Map<String, LegacyVpnInfo> connectedLegacyVpns = getConnectedLegacyVpns();
         final Set<AppVpnInfo> connectedAppVpns = getConnectedAppVpns();
@@ -265,7 +279,7 @@
 
         private final VpnSettings mSettings;
 
-        public UpdatePreferences(VpnSettings settings) {
+        UpdatePreferences(VpnSettings settings) {
             mSettings = settings;
         }
 
@@ -332,7 +346,14 @@
             }
 
             // Trim out deleted VPN preferences
-            mSettings.setShownPreferences(updates);
+            if (DEBUG) {
+                Log.d(LOG_TAG, "isAdvancedVpnSupported() : " + mSettings.mIsAdvancedVpnSupported);
+            }
+            if (mSettings.mIsAdvancedVpnSupported) {
+                mSettings.setShownAdvancedPreferences(updates);
+            } else {
+                mSettings.setShownPreferences(updates);
+            }
         }
     }
 
@@ -343,12 +364,61 @@
 
     @VisibleForTesting @UiThread
     public void setShownPreferences(final Collection<Preference> updates) {
+        retainAllPreference(updates);
+
+        final PreferenceGroup vpnGroup = mPreferenceScreen;
+        updatePreferenceGroup(vpnGroup, updates);
+
+        // Show all new preferences on the screen
+        for (Preference pref : updates) {
+            vpnGroup.addPreference(pref);
+        }
+    }
+
+    @VisibleForTesting @UiThread
+    void setShownAdvancedPreferences(final Collection<Preference> updates) {
+        retainAllPreference(updates);
+
+        PreferenceGroup advancedVpnGroup = mPreferenceScreen.findPreference(ADVANCED_VPN_GROUP_KEY);
+        PreferenceGroup vpnGroup = mPreferenceScreen.findPreference(VPN_GROUP_KEY);
+        advancedVpnGroup.setTitle(
+                mFeatureProvider.getAdvancedVpnPreferenceGroupTitle(getContext()));
+        vpnGroup.setTitle(mFeatureProvider.getVpnPreferenceGroupTitle(getContext()));
+        updatePreferenceGroup(advancedVpnGroup, updates);
+        updatePreferenceGroup(vpnGroup, updates);
+
+        // Show all new preferences on the screen
+        for (Preference pref : updates) {
+            String packageName = "";
+            if (pref instanceof LegacyVpnPreference) {
+                LegacyVpnPreference legacyPref = (LegacyVpnPreference) pref;
+                packageName = legacyPref.getPackageName();
+            } else if (pref instanceof AppPreference) {
+                AppPreference appPref = (AppPreference) pref;
+                packageName = appPref.getPackageName();
+            }
+            if (DEBUG) {
+                Log.d(LOG_TAG, "setShownAdvancedPreferences() package name : " + packageName);
+            }
+            if (TextUtils.equals(packageName, mFeatureProvider.getAdvancedVpnPackageName())) {
+                advancedVpnGroup.addPreference(pref);
+            } else {
+                vpnGroup.addPreference(pref);
+            }
+        }
+
+        advancedVpnGroup.setVisible(advancedVpnGroup.getPreferenceCount() > 0);
+        vpnGroup.setVisible(vpnGroup.getPreferenceCount() > 0);
+    }
+
+    private void retainAllPreference(Collection<Preference> updates) {
         mLegacyVpnPreferences.values().retainAll(updates);
         mAppPreferences.values().retainAll(updates);
+    }
 
+    private void updatePreferenceGroup(PreferenceGroup vpnGroup, Collection<Preference> updates) {
         // Change {@param updates} in-place to only contain new preferences that were not already
         // added to the preference screen.
-        final PreferenceGroup vpnGroup = getPreferenceScreen();
         for (int i = vpnGroup.getPreferenceCount() - 1; i >= 0; i--) {
             Preference p = vpnGroup.getPreference(i);
             if (updates.contains(p)) {
@@ -357,11 +427,6 @@
                 vpnGroup.removePreference(p);
             }
         }
-
-        // Show any new preferences on the screen
-        for (Preference pref : updates) {
-            vpnGroup.addPreference(pref);
-        }
     }
 
     @Override
@@ -383,14 +448,16 @@
         } else if (preference instanceof AppPreference) {
             AppPreference pref = (AppPreference) preference;
             boolean connected = (pref.getState() == AppPreference.STATE_CONNECTED);
+            String vpnPackageName = pref.getPackageName();
 
-            if (!connected) {
+            if ((!connected) || (isAdvancedVpn(mFeatureProvider, vpnPackageName, getContext())
+                    && !mFeatureProvider.isDisconnectDialogEnabled())) {
                 try {
                     UserHandle user = UserHandle.of(pref.getUserId());
-                    Context userContext = getActivity().createPackageContextAsUser(
-                            getActivity().getPackageName(), 0 /* flags */, user);
+                    Context userContext = getContext().createPackageContextAsUser(
+                            getContext().getPackageName(), 0 /* flags */, user);
                     PackageManager pm = userContext.getPackageManager();
-                    Intent appIntent = pm.getLaunchIntentForPackage(pref.getPackageName());
+                    Intent appIntent = pm.getLaunchIntentForPackage(vpnPackageName);
                     if (appIntent != null) {
                         userContext.startActivityAsUser(appIntent, user);
                         return true;
@@ -470,9 +537,32 @@
             pref.setOnPreferenceClickListener(this);
             mAppPreferences.put(app, pref);
         }
+        enableAdvancedVpnGearIconIfNecessary(pref);
         return pref;
     }
 
+    private void enableAdvancedVpnGearIconIfNecessary(AppPreference pref) {
+        Context context = getContext();
+        if (!isAdvancedVpn(mFeatureProvider, pref.getPackageName(), context)) {
+            return;
+        }
+
+        boolean isEnabled = false;
+        AppOpsManager appOpsManager = getContext().getSystemService(AppOpsManager.class);
+        List<AppOpsManager.PackageOps> apps =
+                appOpsManager.getPackagesForOps(
+                        new int[] {OP_ACTIVATE_VPN, OP_ACTIVATE_PLATFORM_VPN});
+        if (apps != null) {
+            for (AppOpsManager.PackageOps pkg : apps) {
+                if (isAdvancedVpn(mFeatureProvider, pkg.getPackageName(), context)) {
+                    isEnabled = true;
+                    break;
+                }
+            }
+        }
+        pref.setOnGearClickListener(isEnabled ? mGearListener : null);
+    }
+
     @WorkerThread
     private Map<String, LegacyVpnInfo> getConnectedLegacyVpns() {
         mConnectedLegacyVpn = mVpnManager.getLegacyVpnInfo(UserHandle.myUserId());
@@ -508,7 +598,15 @@
         return result;
     }
 
-    static List<AppVpnInfo> getVpnApps(Context context, boolean includeProfiles) {
+    static List<AppVpnInfo> getVpnApps(Context context, boolean includeProfiles,
+            AdvancedVpnFeatureProvider featureProvider) {
+        return getVpnApps(context, includeProfiles, featureProvider,
+                context.getSystemService(AppOpsManager.class));
+    }
+
+    @VisibleForTesting
+    static List<AppVpnInfo> getVpnApps(Context context, boolean includeProfiles,
+            AdvancedVpnFeatureProvider featureProvider, AppOpsManager aom) {
         List<AppVpnInfo> result = Lists.newArrayList();
 
         final Set<Integer> profileIds;
@@ -521,8 +619,19 @@
             profileIds = Collections.singleton(UserHandle.myUserId());
         }
 
-        // Fetch VPN-enabled apps from AppOps.
-        AppOpsManager aom = (AppOpsManager) context.getSystemService(Context.APP_OPS_SERVICE);
+        if (featureProvider.isAdvancedVpnSupported(context)) {
+            PackageManager pm = context.getPackageManager();
+            try {
+                ApplicationInfo appInfo =
+                        pm.getApplicationInfo(
+                                featureProvider.getAdvancedVpnPackageName(), /* flags= */ 0);
+                int userId = UserHandle.getUserId(appInfo.uid);
+                result.add(new AppVpnInfo(userId, featureProvider.getAdvancedVpnPackageName()));
+            } catch (PackageManager.NameNotFoundException e) {
+                Log.e(LOG_TAG, "Advanced VPN package name not found.", e);
+            }
+        }
+
         List<AppOpsManager.PackageOps> apps =
                 aom.getPackagesForOps(new int[] {OP_ACTIVATE_VPN, OP_ACTIVATE_PLATFORM_VPN});
         if (apps != null) {
@@ -532,6 +641,9 @@
                     // Skip packages for users outside of our profile group.
                     continue;
                 }
+                if (isAdvancedVpn(featureProvider, pkg.getPackageName(), context)) {
+                    continue;
+                }
                 // Look for a MODE_ALLOWED permission to activate VPN.
                 boolean allowed = false;
                 for (AppOpsManager.OpEntry op : pkg.getOps()) {
@@ -550,6 +662,12 @@
         return result;
     }
 
+    private static boolean isAdvancedVpn(AdvancedVpnFeatureProvider featureProvider,
+            String packageName, Context context) {
+        return featureProvider.isAdvancedVpnSupported(context)
+                && TextUtils.equals(packageName, featureProvider.getAdvancedVpnPackageName());
+    }
+
     private static List<VpnProfile> loadVpnProfiles() {
         final ArrayList<VpnProfile> result = Lists.newArrayList();
 
@@ -562,4 +680,10 @@
         }
         return result;
     }
+
+    @VisibleForTesting
+    void init(PreferenceScreen preferenceScreen, AdvancedVpnFeatureProvider featureProvider) {
+        mPreferenceScreen = preferenceScreen;
+        mFeatureProvider = featureProvider;
+    }
 }
diff --git a/src/com/android/settings/widget/CardPreference.java b/src/com/android/settings/widget/CardPreference.java
index c041552..afccfac 100644
--- a/src/com/android/settings/widget/CardPreference.java
+++ b/src/com/android/settings/widget/CardPreference.java
@@ -18,18 +18,36 @@
 
 import android.content.Context;
 import android.util.AttributeSet;
+import android.view.View;
+import android.widget.Button;
 
 import androidx.preference.Preference;
+import androidx.preference.PreferenceViewHolder;
 
 import com.android.settings.R;
 
 import com.google.android.material.card.MaterialCardView;
 
+import java.util.Optional;
+
 /**
  * Preference that wrapped by {@link MaterialCardView}, only support to set icon, title and summary
  */
 public class CardPreference extends Preference {
 
+    private View.OnClickListener mPrimaryBtnClickListener = null;
+    private View.OnClickListener mSecondaryBtnClickListener = null;
+
+    private String mPrimaryButtonText = null;
+    private String mSecondaryButtonText = null;
+
+    private Optional<Button> mPrimaryButton = Optional.empty();
+    private Optional<Button> mSecondaryButton = Optional.empty();
+    private Optional<View> mButtonsGroup = Optional.empty();
+
+    private boolean mPrimaryButtonVisible = false;
+    private boolean mSecondaryButtonVisible = false;
+
     public CardPreference(Context context) {
         this(context, null /* attrs */);
     }
@@ -37,4 +55,94 @@
     public CardPreference(Context context, AttributeSet attrs) {
         super(context, attrs, R.attr.cardPreferenceStyle);
     }
+
+    @Override
+    public void onBindViewHolder(PreferenceViewHolder holder) {
+        super.onBindViewHolder(holder);
+
+        initButtonsAndLayout(holder);
+    }
+
+    private void initButtonsAndLayout(PreferenceViewHolder holder) {
+        mPrimaryButton = Optional.ofNullable((Button) holder.findViewById(android.R.id.button1));
+        mSecondaryButton = Optional.ofNullable((Button) holder.findViewById(android.R.id.button2));
+        mButtonsGroup = Optional.ofNullable(holder.findViewById(R.id.card_preference_buttons));
+
+        setPrimaryButtonText(mPrimaryButtonText);
+        setPrimaryButtonClickListener(mPrimaryBtnClickListener);
+        setPrimaryButtonVisible(mPrimaryButtonVisible);
+        setSecondaryButtonText(mSecondaryButtonText);
+        setSecondaryButtonClickListener(mSecondaryBtnClickListener);
+        setSecondaryButtonVisible(mSecondaryButtonVisible);
+    }
+
+    /**
+     * Register a callback to be invoked when the primary button is clicked.
+     *
+     * @param l the callback that will run
+     */
+    public void setPrimaryButtonClickListener(View.OnClickListener l) {
+        mPrimaryButton.ifPresent(button -> button.setOnClickListener(l));
+        mPrimaryBtnClickListener = l;
+    }
+
+    /**
+     * Register a callback to be invoked when the secondary button is clicked.
+     *
+     * @param l the callback that will run
+     */
+    public void setSecondaryButtonClickListener(View.OnClickListener l) {
+        mSecondaryButton.ifPresent(button -> button.setOnClickListener(l));
+        mSecondaryBtnClickListener = l;
+    }
+
+    /**
+     * Sets the text to be displayed on primary button.
+     *
+     * @param text text to be displayed
+     */
+    public void setPrimaryButtonText(String text) {
+        mPrimaryButton.ifPresent(button -> button.setText(text));
+        mPrimaryButtonText = text;
+    }
+
+    /**
+     * Sets the text to be displayed on secondary button.
+     *
+     * @param text text to be displayed
+     */
+    public void setSecondaryButtonText(String text) {
+        mSecondaryButton.ifPresent(button -> button.setText(text));
+        mSecondaryButtonText = text;
+    }
+
+    /**
+     * Set the visible on the primary button.
+     *
+     * @param visible {@code true} for visible
+     */
+    public void setPrimaryButtonVisible(boolean visible) {
+        mPrimaryButton.ifPresent(
+                button -> button.setVisibility(visible ? View.VISIBLE : View.GONE));
+        mPrimaryButtonVisible = visible;
+        updateButtonGroupsVisibility();
+    }
+
+    /**
+     * Set the visible on the secondary button.
+     *
+     * @param visible {@code true} for visible
+     */
+    public void setSecondaryButtonVisible(boolean visible) {
+        mSecondaryButton.ifPresent(
+                button -> button.setVisibility(visible ? View.VISIBLE : View.GONE));
+        mSecondaryButtonVisible = visible;
+        updateButtonGroupsVisibility();
+    }
+
+    private void updateButtonGroupsVisibility() {
+        int visibility =
+                (mPrimaryButtonVisible || mSecondaryButtonVisible) ? View.VISIBLE : View.GONE;
+        mButtonsGroup.ifPresent(group -> group.setVisibility(visibility));
+    }
 }
diff --git a/src/com/android/settings/widget/SettingsMainSwitchPreference.java b/src/com/android/settings/widget/SettingsMainSwitchPreference.java
index ce91c9e..9fd8d06 100644
--- a/src/com/android/settings/widget/SettingsMainSwitchPreference.java
+++ b/src/com/android/settings/widget/SettingsMainSwitchPreference.java
@@ -22,7 +22,6 @@
 import android.content.res.TypedArray;
 import android.text.TextUtils;
 import android.util.AttributeSet;
-import android.view.ViewGroup;
 import android.widget.Switch;
 
 import androidx.core.content.res.TypedArrayUtils;
@@ -35,8 +34,6 @@
 import com.android.settingslib.core.instrumentation.SettingsJankMonitor;
 import com.android.settingslib.widget.OnMainSwitchChangeListener;
 
-import com.google.android.setupdesign.util.LayoutStyler;
-
 import java.util.ArrayList;
 import java.util.List;
 
@@ -52,7 +49,6 @@
             new ArrayList<>();
     private final List<OnMainSwitchChangeListener> mSwitchChangeListeners = new ArrayList<>();
 
-    private boolean mApplyPartnerCustomizationPaddingStyle;
     private SettingsMainSwitchBar mMainSwitchBar;
     private CharSequence mTitle;
     private EnforcedAdmin mEnforcedAdmin;
@@ -100,12 +96,6 @@
         } else {
             mMainSwitchBar.hide();
         }
-
-        if (mApplyPartnerCustomizationPaddingStyle) {
-            // TODO(b/232494666): Replace all margins of the root view with the padding
-            final ViewGroup parentView = (ViewGroup) mMainSwitchBar.getParent();
-            LayoutStyler.applyPartnerCustomizationLayoutPaddingStyle(parentView);
-        }
     }
 
     private void init(Context context, AttributeSet attrs) {
@@ -253,14 +243,6 @@
         }
     }
 
-    /**
-     * Apples the padding style of the partner's customization. It's used in the SetupWizard.
-     */
-    public void applyPartnerCustomizationPaddingStyle() {
-        mApplyPartnerCustomizationPaddingStyle = true;
-        notifyChanged();
-    }
-
     private void initMainSwitchBar() {
         if (mMainSwitchBar != null) {
             mMainSwitchBar.setTitle(mTitle);
diff --git a/src/com/android/settings/wifi/ConfigureWifiSettings.java b/src/com/android/settings/wifi/ConfigureWifiSettings.java
index 6bb4389..33f2827 100644
--- a/src/com/android/settings/wifi/ConfigureWifiSettings.java
+++ b/src/com/android/settings/wifi/ConfigureWifiSettings.java
@@ -15,19 +15,21 @@
  */
 package com.android.settings.wifi;
 
-import static android.content.Context.WIFI_SERVICE;
-
+import android.annotation.Nullable;
 import android.app.settings.SettingsEnums;
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.Intent;
 import android.net.wifi.WifiManager;
 import android.os.Bundle;
-import android.util.FeatureFlagUtils;
+import android.os.UserManager;
+import android.util.EventLog;
 import android.util.Log;
+import android.view.View;
+import android.widget.TextView;
 
+import androidx.annotation.VisibleForTesting;
 import androidx.preference.Preference;
-import androidx.preference.PreferenceScreen;
 
 import com.android.settings.R;
 import com.android.settings.dashboard.DashboardFragment;
@@ -43,7 +45,8 @@
 public class ConfigureWifiSettings extends DashboardFragment {
 
     private static final String TAG = "ConfigureWifiSettings";
-    private static final String KEY_INSTALL_CREDENTIALS = "install_credentials";
+    @VisibleForTesting
+    static final String KEY_INSTALL_CREDENTIALS = "install_credentials";
     private static final String ACTION_INSTALL_CERTS = "android.credentials.INSTALL";
     private static final String PACKAGE_INSTALL_CERTS = "com.android.certinstaller";
     private static final String CLASS_INSTALL_CERTS = "com.android.certinstaller.CertInstallerMain";
@@ -53,16 +56,26 @@
     public static final int WIFI_WAKEUP_REQUEST_CODE = 600;
 
     private WifiWakeupPreferenceController mWifiWakeupPreferenceController;
-    private Preference mCertinstallerPreference;
+
+    @Override
+    public void onAttach(Context context) {
+        super.onAttach(context);
+        if (isGuestUser(context)) return;
+
+        mWifiWakeupPreferenceController = use(WifiWakeupPreferenceController.class);
+        mWifiWakeupPreferenceController.setFragment(this);
+    }
 
     @Override
     public void onCreate(Bundle icicle) {
         super.onCreate(icicle);
         getActivity().setTitle(R.string.network_and_internet_preferences_title);
 
-        mCertinstallerPreference = findPreference(KEY_INSTALL_CREDENTIALS);
-        if (mCertinstallerPreference != null) {
-            mCertinstallerPreference.setOnPreferenceClickListener(preference -> {
+        if (isGuestUser(getContext())) return;
+
+        final Preference installCredentialsPref = findPreference(KEY_INSTALL_CREDENTIALS);
+        if (installCredentialsPref != null) {
+            installCredentialsPref.setOnPreferenceClickListener(preference -> {
                 Intent intent = new Intent(ACTION_INSTALL_CERTS);
                 intent.setFlags(
                         Intent.FLAG_ACTIVITY_NEW_TASK);
@@ -78,6 +91,23 @@
     }
 
     @Override
+    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
+        super.onViewCreated(view, savedInstanceState);
+        if (!isGuestUser(getContext())) return;
+
+        Log.w(TAG, "Displays the restricted UI because the user is a guest.");
+        EventLog.writeEvent(0x534e4554, "231987122", -1 /* UID */, "User is a guest");
+
+        // Restricted UI
+        final TextView emptyView = getActivity().findViewById(android.R.id.empty);
+        if (emptyView != null) {
+            emptyView.setVisibility(View.VISIBLE);
+            emptyView.setText(R.string.wifi_empty_list_user_restricted);
+        }
+        getPreferenceScreen().removeAll();
+    }
+
+    @Override
     public int getMetricsCategory() {
         return SettingsEnums.CONFIGURE_WIFI;
     }
@@ -94,7 +124,9 @@
 
     @Override
     protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
-        final WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
+        if (isGuestUser(context)) return null;
+
+        final WifiManager wifiManager = getSystemService(WifiManager.class);
         final List<AbstractPreferenceController> controllers = new ArrayList<>();
         controllers.add(new WifiP2pPreferenceController(context, getSettingsLifecycle(),
                 wifiManager));
@@ -102,17 +134,8 @@
     }
 
     @Override
-    public void onAttach(Context context) {
-        super.onAttach(context);
-
-
-        mWifiWakeupPreferenceController = use(WifiWakeupPreferenceController.class);
-        mWifiWakeupPreferenceController.setFragment(this);
-    }
-
-    @Override
     public void onActivityResult(int requestCode, int resultCode, Intent data) {
-        if (requestCode == WIFI_WAKEUP_REQUEST_CODE) {
+        if (mWifiWakeupPreferenceController != null && requestCode == WIFI_WAKEUP_REQUEST_CODE) {
             mWifiWakeupPreferenceController.onActivityResult(requestCode, resultCode);
             return;
         }
@@ -122,8 +145,16 @@
     public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
             new BaseSearchIndexProvider(R.xml.wifi_configure_settings) {
                 protected boolean isPageSearchEnabled(Context context) {
+                    if (isGuestUser(context)) return false;
                     return context.getResources()
                             .getBoolean(R.bool.config_show_wifi_settings);
                 }
             };
+
+    private static boolean isGuestUser(Context context) {
+        if (context == null) return false;
+        final UserManager userManager = context.getSystemService(UserManager.class);
+        if (userManager == null) return false;
+        return userManager.isGuestUser();
+    }
 }
diff --git a/src/com/android/settings/wifi/WifiConfigController2.java b/src/com/android/settings/wifi/WifiConfigController2.java
index 9e96be9..e55ea16 100644
--- a/src/com/android/settings/wifi/WifiConfigController2.java
+++ b/src/com/android/settings/wifi/WifiConfigController2.java
@@ -42,6 +42,7 @@
 import android.text.SpannableString;
 import android.text.TextUtils;
 import android.text.TextWatcher;
+import android.util.ArrayMap;
 import android.util.Log;
 import android.view.KeyEvent;
 import android.view.View;
@@ -1495,13 +1496,20 @@
         }
 
         // Shows display name of each active subscription.
-        final ArrayList<CharSequence> displayNames = new ArrayList<>();
+        ArrayMap<Integer, CharSequence> displayNames = new ArrayMap<>();
+        int defaultDataSubscriptionId = SubscriptionManager.getDefaultDataSubscriptionId();
         for (SubscriptionInfo activeSubInfo : mActiveSubscriptionInfos) {
-            displayNames.add(
+            // If multiple SIMs have the same carrier id, only the first or default data SIM is
+            // displayed.
+            if (displayNames.containsKey(activeSubInfo.getCarrierId())
+                    && defaultDataSubscriptionId != activeSubInfo.getSubscriptionId()) {
+                continue;
+            }
+            displayNames.put(activeSubInfo.getCarrierId(),
                     SubscriptionUtil.getUniqueSubscriptionDisplayName(activeSubInfo, mContext));
         }
         mEapSimSpinner.setAdapter(
-                getSpinnerAdapter(displayNames.toArray(new String[displayNames.size()])));
+                getSpinnerAdapter(displayNames.values().toArray(new String[displayNames.size()])));
         mEapSimSpinner.setSelection(0 /* position */);
         if (displayNames.size() == 1) {
             mEapSimSpinner.setEnabled(false);
diff --git a/src/com/android/settings/wifi/WifiDialogActivity.java b/src/com/android/settings/wifi/WifiDialogActivity.java
index 67f291d..e3e77e8 100644
--- a/src/com/android/settings/wifi/WifiDialogActivity.java
+++ b/src/com/android/settings/wifi/WifiDialogActivity.java
@@ -17,7 +17,9 @@
 package com.android.settings.wifi;
 
 import static android.Manifest.permission.ACCESS_FINE_LOCATION;
+import static android.os.UserManager.DISALLOW_CONFIG_WIFI;
 
+import android.app.KeyguardManager;
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.content.pm.PackageManager;
@@ -31,6 +33,7 @@
 import android.os.Process;
 import android.os.SimpleClock;
 import android.os.SystemClock;
+import android.os.UserManager;
 import android.text.TextUtils;
 import android.util.EventLog;
 import android.util.Log;
@@ -49,6 +52,7 @@
 import com.google.android.setupcompat.util.WizardManagerHelper;
 import com.google.android.setupdesign.util.ThemeHelper;
 
+import java.lang.ref.WeakReference;
 import java.time.Clock;
 import java.time.ZoneOffset;
 
@@ -94,10 +98,12 @@
     // Interval between initiating NetworkDetailsTracker scans.
     private static final long SCAN_INTERVAL_MILLIS = 10_000;
 
-    private WifiDialog mDialog;
+    @VisibleForTesting
+    WifiDialog mDialog;
     private AccessPoint mAccessPoint;
 
-    private WifiDialog2 mDialog2;
+    @VisibleForTesting
+    WifiDialog2 mDialog2;
 
     // The received intent supports a key of WifiTrackerLib or SettingsLib.
     private boolean mIsWifiTrackerLib;
@@ -106,6 +112,7 @@
     private NetworkDetailsTracker mNetworkDetailsTracker;
     private HandlerThread mWorkerThread;
     private WifiManager mWifiManager;
+    private LockScreenMonitor mLockScreenMonitor;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -115,6 +122,10 @@
         }
 
         super.onCreate(savedInstanceState);
+        if (!isConfigWifiAllowed()) {
+            finish();
+            return;
+        }
 
         mIsWifiTrackerLib = !TextUtils.isEmpty(mIntent.getStringExtra(KEY_CHOSEN_WIFIENTRY_KEY));
 
@@ -178,6 +189,10 @@
                 mDialog.setOnDismissListener(this);
             }
         }
+
+        if (mDialog2 != null || mDialog != null) {
+            mLockScreenMonitor = new LockScreenMonitor(this);
+        }
     }
 
     @VisibleForTesting
@@ -215,6 +230,10 @@
             }
         }
 
+        if (mLockScreenMonitor != null) {
+            mLockScreenMonitor.release();
+            mLockScreenMonitor = null;
+        }
         super.onDestroy();
     }
 
@@ -361,6 +380,19 @@
         }
     }
 
+    @VisibleForTesting
+    boolean isConfigWifiAllowed() {
+        UserManager userManager = getSystemService(UserManager.class);
+        if (userManager == null) return true;
+        final boolean isConfigWifiAllowed = !userManager.hasUserRestriction(DISALLOW_CONFIG_WIFI);
+        if (!isConfigWifiAllowed) {
+            Log.e(TAG, "The user is not allowed to configure Wi-Fi.");
+            EventLog.writeEvent(0x534e4554, "226133034", getApplicationContext().getUserId(),
+                    "The user is not allowed to configure Wi-Fi.");
+        }
+        return isConfigWifiAllowed;
+    }
+
     private boolean hasWifiManager() {
         if (mWifiManager != null) return true;
         mWifiManager = getSystemService(WifiManager.class);
@@ -392,4 +424,45 @@
         }
         return false;
     }
+
+    void dismissDialog() {
+        if (mDialog != null) {
+            mDialog.dismiss();
+            mDialog = null;
+        }
+        if (mDialog2 != null) {
+            mDialog2.dismiss();
+            mDialog2 = null;
+        }
+    }
+
+    @VisibleForTesting
+    static final class LockScreenMonitor implements KeyguardManager.KeyguardLockedStateListener {
+        private final WeakReference<WifiDialogActivity> mWifiDialogActivity;
+        private KeyguardManager mKeyguardManager;
+
+        LockScreenMonitor(WifiDialogActivity activity) {
+            mWifiDialogActivity = new WeakReference<>(activity);
+            mKeyguardManager = activity.getSystemService(KeyguardManager.class);
+            mKeyguardManager.addKeyguardLockedStateListener(activity.getMainExecutor(), this);
+        }
+
+        void release() {
+            if (mKeyguardManager == null) return;
+            mKeyguardManager.removeKeyguardLockedStateListener(this);
+            mKeyguardManager = null;
+        }
+
+        @Override
+        public void onKeyguardLockedStateChanged(boolean isKeyguardLocked) {
+            if (!isKeyguardLocked) return;
+            WifiDialogActivity activity = mWifiDialogActivity.get();
+            if (activity == null) return;
+            activity.dismissDialog();
+
+            Log.e(TAG, "Dismiss Wi-Fi dialog to prevent leaking user data on lock screen!");
+            EventLog.writeEvent(0x534e4554, "231583603", -1 /* UID */,
+                    "Leak Wi-Fi dialog on lock screen");
+        }
+    }
 }
diff --git a/src/com/android/settings/wifi/WifiScanModeActivity.java b/src/com/android/settings/wifi/WifiScanModeActivity.java
index d372135..c10ee27 100644
--- a/src/com/android/settings/wifi/WifiScanModeActivity.java
+++ b/src/com/android/settings/wifi/WifiScanModeActivity.java
@@ -18,11 +18,15 @@
 
 import android.app.Dialog;
 import android.app.settings.SettingsEnums;
+import android.content.Context;
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.net.wifi.WifiManager;
 import android.os.Bundle;
+import android.os.UserManager;
 import android.text.TextUtils;
+import android.util.EventLog;
+import android.util.Log;
 import android.view.WindowManager;
 
 import androidx.annotation.VisibleForTesting;
@@ -39,6 +43,7 @@
  * This activity requests users permission to allow scanning even when Wi-Fi is turned off
  */
 public class WifiScanModeActivity extends FragmentActivity {
+    private static final String TAG = "WifiScanModeActivity";
     private DialogFragment mDialog;
     @VisibleForTesting
     String mApp;
@@ -78,7 +83,15 @@
         mApp = Utils.getApplicationLabel(getApplicationContext(), packageName).toString();
     }
 
-    private void createDialog() {
+    @VisibleForTesting
+    void createDialog() {
+        if (isGuestUser(getApplicationContext())) {
+            Log.e(TAG, "Guest user is not allowed to configure Wi-Fi Scan Mode!");
+            EventLog.writeEvent(0x534e4554, "235601169", -1 /* UID */, "User is a guest");
+            finish();
+            return;
+        }
+
         if (mDialog == null) {
             mDialog = AlertDialogFragment.newInstance(mApp);
             mDialog.show(getSupportFragmentManager(), "dialog");
@@ -169,4 +182,11 @@
             ((WifiScanModeActivity) getActivity()).doNegativeClick();
         }
     }
+
+    private static boolean isGuestUser(Context context) {
+        if (context == null) return false;
+        final UserManager userManager = context.getSystemService(UserManager.class);
+        if (userManager == null) return false;
+        return userManager.isGuestUser();
+    }
 }
diff --git a/src/com/android/settings/wifi/addappnetworks/AddAppNetworksActivity.java b/src/com/android/settings/wifi/addappnetworks/AddAppNetworksActivity.java
index 169bcb3..c52f75e 100644
--- a/src/com/android/settings/wifi/addappnetworks/AddAppNetworksActivity.java
+++ b/src/com/android/settings/wifi/addappnetworks/AddAppNetworksActivity.java
@@ -18,11 +18,14 @@
 
 import android.app.ActivityManager;
 import android.app.IActivityManager;
+import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
 import android.os.RemoteException;
+import android.os.UserManager;
 import android.provider.Settings;
 import android.text.TextUtils;
+import android.util.EventLog;
 import android.util.Log;
 import android.view.Gravity;
 import android.view.Window;
@@ -85,7 +88,13 @@
     }
 
     @VisibleForTesting
-    protected boolean showAddNetworksFragment() {
+    boolean showAddNetworksFragment() {
+        if (isGuestUser(getApplicationContext())) {
+            Log.e(TAG, "Guest user is not allowed to configure Wi-Fi!");
+            EventLog.writeEvent(0x534e4554, "224772678", -1 /* UID */, "User is a guest");
+            return false;
+        }
+
         if (!isAddWifiConfigAllow()) {
             Log.d(TAG, "Not allowed by Enterprise Restriction");
             return false;
@@ -130,4 +139,11 @@
     boolean isAddWifiConfigAllow() {
         return WifiEnterpriseRestrictionUtils.isAddWifiConfigAllowed(this);
     }
+
+    private static boolean isGuestUser(Context context) {
+        if (context == null) return false;
+        final UserManager userManager = context.getSystemService(UserManager.class);
+        if (userManager == null) return false;
+        return userManager.isGuestUser();
+    }
 }
diff --git a/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java b/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java
index 3f5ef48..62b477f 100644
--- a/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java
+++ b/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java
@@ -39,6 +39,7 @@
 import android.os.SystemClock;
 import android.provider.Settings;
 import android.text.TextUtils;
+import android.util.EventLog;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -518,7 +519,13 @@
 
         UiConfigurationItem(String displayedSsid, WifiNetworkSuggestion wifiNetworkSuggestion,
                 int index, int level) {
-            mDisplayedSsid = displayedSsid;
+            if (displayedSsid.contains("\n") || displayedSsid.contains("\r")) {
+                mDisplayedSsid = displayedSsid.replaceAll("\\r|\\n", "");
+                Log.e(TAG, "Ignore CRLF strings in display SSIDs to avoid display errors!");
+                EventLog.writeEvent(0x534e4554, "224545390", -1 /* UID */, "CRLF injection");
+            } else {
+                mDisplayedSsid = displayedSsid;
+            }
             mWifiNetworkSuggestion = wifiNetworkSuggestion;
             mIndex = index;
             mLevel = level;
diff --git a/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java b/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java
index ba7628e..f7fc07a 100644
--- a/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java
+++ b/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java
@@ -19,6 +19,7 @@
 import static android.net.NetworkCapabilities.NET_CAPABILITY_PARTIAL_CONNECTIVITY;
 import static android.net.NetworkCapabilities.NET_CAPABILITY_VALIDATED;
 import static android.net.NetworkCapabilities.TRANSPORT_WIFI;
+import static android.telephony.TelephonyManager.UNKNOWN_CARRIER_ID;
 
 import android.app.Activity;
 import android.app.AlertDialog;
@@ -49,7 +50,6 @@
 import android.provider.Telephony.CarrierId;
 import android.telephony.SubscriptionInfo;
 import android.telephony.SubscriptionManager;
-import android.telephony.TelephonyManager;
 import android.text.TextUtils;
 import android.util.FeatureFlagUtils;
 import android.util.Log;
@@ -711,27 +711,17 @@
         // Checks if the SIM subscription is active.
         final List<SubscriptionInfo> activeSubscriptionInfos = mContext
                 .getSystemService(SubscriptionManager.class).getActiveSubscriptionInfoList();
-        final int defaultDataSubscriptionId = SubscriptionManager.getDefaultDataSubscriptionId();
         if (activeSubscriptionInfos != null) {
-            for (SubscriptionInfo subscriptionInfo : activeSubscriptionInfos) {
-                final CharSequence displayName = SubscriptionUtil.getUniqueSubscriptionDisplayName(
-                        subscriptionInfo, mContext);
-                if (config.carrierId == subscriptionInfo.getCarrierId()) {
-                    mEapSimSubscriptionPref.setSummary(displayName);
-                    return;
-                }
-
-                // When it's UNKNOWN_CARRIER_ID, devices connects it with the SIM subscription of
-                // defaultDataSubscriptionId.
-                if (config.carrierId == TelephonyManager.UNKNOWN_CARRIER_ID
-                        && defaultDataSubscriptionId == subscriptionInfo.getSubscriptionId()) {
-                    mEapSimSubscriptionPref.setSummary(displayName);
-                    return;
-                }
+            SubscriptionInfo info = fineSubscriptionInfo(config.carrierId, activeSubscriptionInfos,
+                    SubscriptionManager.getDefaultDataSubscriptionId());
+            if (info != null) {
+                mEapSimSubscriptionPref.setSummary(
+                        SubscriptionUtil.getUniqueSubscriptionDisplayName(info, mContext));
+                return;
             }
         }
 
-        if (config.carrierId == TelephonyManager.UNKNOWN_CARRIER_ID) {
+        if (config.carrierId == UNKNOWN_CARRIER_ID) {
             mEapSimSubscriptionPref.setSummary(R.string.wifi_no_related_sim_card);
             return;
         }
@@ -750,6 +740,25 @@
                 null /* orderBy */);
     }
 
+    @VisibleForTesting
+    SubscriptionInfo fineSubscriptionInfo(int carrierId,
+            List<SubscriptionInfo> activeSubscriptionInfos, int defaultDataSubscriptionId) {
+        SubscriptionInfo firstMatchedInfo = null;
+        for (SubscriptionInfo info : activeSubscriptionInfos) {
+            // When it's UNKNOWN_CARRIER_ID or matched with configured CarrierId,
+            // devices connects it with the SIM subscription of defaultDataSubscriptionId.
+            if (defaultDataSubscriptionId == info.getSubscriptionId()
+                    && (carrierId == info.getCarrierId() || carrierId == UNKNOWN_CARRIER_ID)) {
+                return info;
+            }
+
+            if (firstMatchedInfo == null && carrierId == info.getCarrierId()) {
+                firstMatchedInfo = info;
+            }
+        }
+        return firstMatchedInfo;
+    }
+
     private void refreshMacAddress() {
         final String macAddress = mWifiEntry.getMacAddress();
         if (TextUtils.isEmpty(macAddress)) {
diff --git a/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivity.java b/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivity.java
index ecaf9ee..e6f0b31 100644
--- a/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivity.java
+++ b/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivity.java
@@ -17,13 +17,16 @@
 package com.android.settings.wifi.dpp;
 
 import android.app.settings.SettingsEnums;
+import android.content.Context;
 import android.content.Intent;
 import android.net.Uri;
 import android.net.wifi.WifiConfiguration;
 import android.net.wifi.WifiInfo;
 import android.net.wifi.WifiManager;
 import android.os.Bundle;
+import android.os.UserManager;
 import android.provider.Settings;
+import android.util.EventLog;
 import android.util.Log;
 
 import androidx.annotation.VisibleForTesting;
@@ -116,6 +119,13 @@
 
     @Override
     protected void handleIntent(Intent intent) {
+        if (isGuestUser(getApplicationContext())) {
+            Log.e(TAG, "Guest user is not allowed to configure Wi-Fi!");
+            EventLog.writeEvent(0x534e4554, "224772890", -1 /* UID */, "User is a guest");
+            finish();
+            return;
+        }
+
         String action = intent != null ? intent.getAction() : null;
         if (action == null) {
             finish();
@@ -185,7 +195,8 @@
         }
     }
 
-    private void showQrCodeScannerFragment() {
+    @VisibleForTesting
+    void showQrCodeScannerFragment() {
         WifiDppQrCodeScannerFragment fragment =
                 (WifiDppQrCodeScannerFragment) mFragmentManager.findFragmentByTag(
                         WifiDppUtils.TAG_FRAGMENT_QR_CODE_SCANNER);
@@ -384,4 +395,11 @@
 
         return null;
     }
+
+    private static boolean isGuestUser(Context context) {
+        if (context == null) return false;
+        final UserManager userManager = context.getSystemService(UserManager.class);
+        if (userManager == null) return false;
+        return userManager.isGuestUser();
+    }
 }
diff --git a/src/com/android/settings/wifi/slice/WifiSlice.java b/src/com/android/settings/wifi/slice/WifiSlice.java
index 8417d8b..c06e869 100644
--- a/src/com/android/settings/wifi/slice/WifiSlice.java
+++ b/src/com/android/settings/wifi/slice/WifiSlice.java
@@ -34,7 +34,9 @@
 import android.net.wifi.WifiManager;
 import android.os.Binder;
 import android.os.Bundle;
+import android.os.UserManager;
 import android.text.TextUtils;
+import android.util.EventLog;
 import android.util.Log;
 
 import androidx.annotation.Nullable;
@@ -96,10 +98,18 @@
 
     @Override
     public Slice getSlice() {
+        final boolean isWifiEnabled = isWifiEnabled();
+        // If user is a guest just return a slice without a toggle.
+        if (isGuestUser(mContext)) {
+            Log.e(TAG, "Guest user is not allowed to configure Wi-Fi!");
+            EventLog.writeEvent(0x534e4554, "232798363", -1 /* UID */, "User is a guest");
+            return getListBuilder(isWifiEnabled, null /* wifiSliceItem */,
+                    false /* isWiFiPermissionGranted */).build();
+        }
+
         // If external calling package doesn't have Wi-Fi permission.
         final boolean isPermissionGranted =
                 isCallerExemptUid(mContext) || isPermissionGranted(mContext);
-        final boolean isWifiEnabled = isWifiEnabled();
         ListBuilder listBuilder = getListBuilder(isWifiEnabled, null /* wifiSliceItem */,
                 isPermissionGranted);
         // If the caller doesn't have the permission granted, just return a slice without a toggle.
@@ -139,6 +149,13 @@
         return listBuilder.build();
     }
 
+    protected static boolean isGuestUser(Context context) {
+        if (context == null) return false;
+        final UserManager userManager = context.getSystemService(UserManager.class);
+        if (userManager == null) return false;
+        return userManager.isGuestUser();
+    }
+
     private boolean isCallerExemptUid(Context context) {
         final String[] allowedUidNames = context.getResources().getStringArray(
                 R.array.config_exempt_wifi_permission_uid_name);
diff --git a/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
index b22b156..89e00e1 100644
--- a/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
@@ -45,7 +45,7 @@
 
 import com.android.settings.AccessiblePreferenceCategory;
 import com.android.settings.R;
-import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.dashboard.profileselector.ProfileSelectFragment;
 import com.android.settings.testutils.shadow.ShadowAccountManager;
 import com.android.settings.testutils.shadow.ShadowContentResolver;
@@ -77,7 +77,7 @@
     @Mock(answer = RETURNS_DEEP_STUBS)
     private UserManager mUserManager;
     @Mock(answer = RETURNS_DEEP_STUBS)
-    private SettingsPreferenceFragment mFragment;
+    private DashboardFragment mFragment;
     @Mock(answer = RETURNS_DEEP_STUBS)
     private AccountManager mAccountManager;
     @Mock(answer = RETURNS_DEEP_STUBS)
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
index 03b3a47..c95a509 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
@@ -40,8 +40,8 @@
 import androidx.preference.PreferenceScreen;
 
 import com.android.settings.SettingsActivity;
-import com.android.settings.fuelgauge.BatteryDiffEntry;
 import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.batteryusage.BatteryDiffEntry;
 import com.android.settingslib.applications.ApplicationsState;
 
 import org.junit.Before;
@@ -162,7 +162,8 @@
 
         mController.updateBatteryWithDiffEntry();
 
-        assertThat(mBatteryPreference.getSummary()).isEqualTo("No battery use for past 24 hours");
+        assertThat(mBatteryPreference.getSummary().toString()).isEqualTo(
+                "No battery use since last full charge");
     }
 
     @Test
@@ -175,7 +176,8 @@
 
         mController.updateBatteryWithDiffEntry();
 
-        assertThat(mBatteryPreference.getSummary()).isEqualTo("60% use for past 24 hours");
+        assertThat(mBatteryPreference.getSummary().toString()).isEqualTo(
+                "60% use since last full charge");
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java
index d8852db..1096f40 100644
--- a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java
+++ b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java
@@ -173,4 +173,24 @@
 
         assertThat(result).isEqualTo(R.string.fingerprint_intro_error_max);
     }
+
+    @Test
+    public void intro_CheckCanEnrollDuringPortal() {
+        setupFingerprintEnrollIntroWith(
+                new Intent().putExtra(WizardManagerHelper.EXTRA_IS_PORTAL_SETUP, true));
+        setFingerprintManagerToHave(2 /* numEnrollments */);
+        int result = mFingerprintEnrollIntroduction.checkMaxEnrolled();
+
+        assertThat(result).isEqualTo(0);
+    }
+
+    @Test
+    public void intro_CheckMaxEnrolledDuringPortal() {
+        setupFingerprintEnrollIntroWith(
+                new Intent().putExtra(WizardManagerHelper.EXTRA_IS_PORTAL_SETUP, true));
+        setFingerprintManagerToHave(6 /* numEnrollments */);
+        int result = mFingerprintEnrollIntroduction.checkMaxEnrolled();
+
+        assertThat(result).isEqualTo(R.string.fingerprint_intro_error_max);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroductionTest.java b/tests/robotests/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroductionTest.java
index e3b23ac..2aeda71 100644
--- a/tests/robotests/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroductionTest.java
+++ b/tests/robotests/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollIntroductionTest.java
@@ -34,7 +34,6 @@
 import com.android.settings.R;
 import com.android.settings.biometrics.BiometricEnrollBase;
 import com.android.settings.biometrics.BiometricEnrollIntroduction;
-import com.android.settings.password.SetupChooseLockGeneric.SetupChooseLockGenericFragment;
 import com.android.settings.password.SetupSkipDialog;
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.shadow.ShadowFingerprintManager;
@@ -160,8 +159,6 @@
 
         ShadowActivity shadowActivity = Shadows.shadowOf(activity);
         assertThat(shadowActivity.getResultIntent()).isNotNull();
-        assertThat(shadowActivity.getResultIntent().hasExtra(
-            SetupChooseLockGenericFragment.EXTRA_PASSWORD_QUALITY)).isTrue();
     }
 
     @Test
@@ -191,8 +188,6 @@
 
         ShadowActivity shadowActivity = Shadows.shadowOf(activity);
         assertThat(shadowActivity.getResultIntent()).isNotNull();
-        assertThat(shadowActivity.getResultIntent().hasExtra(
-            SetupChooseLockGenericFragment.EXTRA_PASSWORD_QUALITY)).isTrue();
     }
 
     @Test
@@ -218,8 +213,6 @@
             BiometricEnrollBase.RESULT_FINISHED, null);
         ShadowActivity shadowActivity = Shadows.shadowOf(activity);
         assertThat(shadowActivity.getResultIntent()).isNotNull();
-        assertThat(shadowActivity.getResultIntent().hasExtra(
-                SetupChooseLockGenericFragment.EXTRA_PASSWORD_QUALITY)).isFalse();
     }
 
     @Test
@@ -260,8 +253,6 @@
         ShadowActivity shadowActivity = Shadows.shadowOf(activity);
         IntentForResult startedActivity = shadowActivity.getNextStartedActivityForResult();
         assertThat(startedActivity).isNotNull();
-        assertThat(startedActivity.intent.hasExtra(
-            SetupChooseLockGenericFragment.EXTRA_PASSWORD_QUALITY)).isFalse();
     }
 
     private ShadowKeyguardManager getShadowKeyguardManager() {
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsCompanionAppsControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsCompanionAppsControllerTest.java
index 3fa306f..86829b4 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsCompanionAppsControllerTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsCompanionAppsControllerTest.java
@@ -109,6 +109,7 @@
                 /* deviceProfile */ "",
                 /* selfManaged */ false,
                 /* notifyOnDeviceNearby */ true,
+                /* revoked */ false,
                 /* timeApprovedMs */ System.currentTimeMillis(),
                 /* lastTimeConnected */ Long.MAX_VALUE);
 
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsPairOtherControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsPairOtherControllerTest.java
new file mode 100644
index 0000000..cfa6d41
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsPairOtherControllerTest.java
@@ -0,0 +1,121 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.bluetooth;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.when;
+
+import com.android.settings.R;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.bluetooth.HearingAidProfile;
+import com.android.settingslib.widget.ButtonPreference;
+
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+
+/** Tests for {@link BluetoothDetailsPairOtherController}. */
+@RunWith(RobolectricTestRunner.class)
+public class BluetoothDetailsPairOtherControllerTest extends BluetoothDetailsControllerTestBase  {
+    @Rule
+    public final MockitoRule mockito = MockitoJUnit.rule();
+
+    @Mock
+    private CachedBluetoothDevice mSubCachedDevice;
+    private BluetoothDetailsPairOtherController mController;
+    private ButtonPreference mPreference;
+
+    @Override
+    public void setUp() {
+        super.setUp();
+
+        mController = new BluetoothDetailsPairOtherController(mContext, mFragment, mCachedDevice,
+                mLifecycle);
+        mPreference = new ButtonPreference(mContext);
+        mPreference.setKey(mController.getPreferenceKey());
+        mScreen.addPreference(mPreference);
+    }
+
+    @Test
+    public void init_leftSideDevice_expectedTitle() {
+        when(mCachedDevice.getDeviceSide()).thenReturn(HearingAidProfile.DeviceSide.SIDE_LEFT);
+
+        mController.init(mScreen);
+
+        assertThat(mPreference.getTitle().toString()).isEqualTo(
+                mContext.getString(R.string.bluetooth_pair_right_ear_button));
+    }
+
+    @Test
+    public void init_rightSideDevice_expectedTitle() {
+        when(mCachedDevice.getDeviceSide()).thenReturn(HearingAidProfile.DeviceSide.SIDE_RIGHT);
+
+        mController.init(mScreen);
+
+        assertThat(mPreference.getTitle().toString()).isEqualTo(
+                mContext.getString(R.string.bluetooth_pair_left_ear_button));
+    }
+
+    @Test
+    public void isAvailable_isConnectedHearingAidDevice_available() {
+        when(mCachedDevice.isConnectedHearingAidDevice()).thenReturn(false);
+
+        assertThat(mController.isAvailable()).isFalse();
+    }
+
+    @Test
+    public void isAvailable_notConnectedHearingAidDevice_notAvailable() {
+        when(mCachedDevice.isConnectedHearingAidDevice()).thenReturn(true);
+        when(mCachedDevice.getDeviceMode()).thenReturn(HearingAidProfile.DeviceMode.MODE_MONAURAL);
+
+        assertThat(mController.isAvailable()).isFalse();
+    }
+
+    @Test
+    public void isAvailable_subDeviceIsConnectedHearingAidDevice_notAvailable() {
+        when(mCachedDevice.isConnectedHearingAidDevice()).thenReturn(true);
+        when(mCachedDevice.getDeviceMode()).thenReturn(HearingAidProfile.DeviceMode.MODE_BINAURAL);
+        when(mSubCachedDevice.isConnectedHearingAidDevice()).thenReturn(true);
+        when(mCachedDevice.getSubDevice()).thenReturn(mSubCachedDevice);
+
+        assertThat(mController.isAvailable()).isFalse();
+    }
+
+    @Test
+    public void isAvailable_subDeviceNotConnectedHearingAidDevice_available() {
+        when(mCachedDevice.isConnectedHearingAidDevice()).thenReturn(true);
+        when(mCachedDevice.getDeviceMode()).thenReturn(HearingAidProfile.DeviceMode.MODE_BINAURAL);
+        when(mSubCachedDevice.isConnectedHearingAidDevice()).thenReturn(false);
+        when(mCachedDevice.getSubDevice()).thenReturn(mSubCachedDevice);
+
+        assertThat(mController.isAvailable()).isTrue();
+    }
+
+    @Test
+    public void isAvailable_subDeviceNotExist_available() {
+        when(mCachedDevice.isConnectedHearingAidDevice()).thenReturn(true);
+        when(mCachedDevice.getDeviceMode()).thenReturn(HearingAidProfile.DeviceMode.MODE_BINAURAL);
+        when(mCachedDevice.getSubDevice()).thenReturn(null);
+
+        assertThat(mController.isAvailable()).isTrue();
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardFragmentTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardFragmentTest.java
index 894a6c5..fd6689a 100644
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/DashboardFragmentTest.java
@@ -298,6 +298,14 @@
     }
 
     @Test
+    public void forceUpdatePreferences_prefKeyNull_shouldNotCrash() {
+        mTestFragment.addPreferenceController(new TestPreferenceController(mContext));
+
+        // Should not crash
+        mTestFragment.forceUpdatePreferences();
+    }
+
+    @Test
     public void checkUiBlocker_noUiBlocker_controllerIsNull() {
         mTestFragment.mBlockerController = null;
         mControllers.add(new TestPreferenceController(mContext));
diff --git a/tests/robotests/src/com/android/settings/datetime/AutoTimeZonePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/datetime/AutoTimeZonePreferenceControllerTest.java
index eb29b7c..f2ba580 100644
--- a/tests/robotests/src/com/android/settings/datetime/AutoTimeZonePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/datetime/AutoTimeZonePreferenceControllerTest.java
@@ -22,9 +22,13 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import android.app.time.Capabilities;
+import android.app.time.TimeManager;
+import android.app.time.TimeZoneCapabilities;
+import android.app.time.TimeZoneCapabilitiesAndConfig;
+import android.app.time.TimeZoneConfiguration;
 import android.content.Context;
-import android.provider.Settings;
-import android.telephony.TelephonyManager;
+import android.os.UserHandle;
 
 import androidx.preference.Preference;
 
@@ -32,6 +36,7 @@
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Mock;
+import org.mockito.Mockito;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
@@ -46,7 +51,7 @@
     private AutoTimeZonePreferenceController mController;
     private Preference mPreference;
     @Mock
-    private TelephonyManager mTelephonyManager;
+    private TimeManager mTimeManager;
 
     @Before
     public void setUp() {
@@ -55,12 +60,15 @@
 
         mPreference = new Preference(mContext);
 
-        when(mContext.getSystemService(TelephonyManager.class)).thenReturn(mTelephonyManager);
-        when(mTelephonyManager.isDataCapable()).thenReturn(true);
+        when(mContext.getSystemService(TimeManager.class)).thenReturn(mTimeManager);
     }
 
     @Test
     public void isFromSUW_notAvailable() {
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                /* autoSupported= */true, /* autoEnabled= */false);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
         mController = new AutoTimeZonePreferenceController(
                 mContext, null /* callback */, true /* isFromSUW */);
 
@@ -69,6 +77,10 @@
 
     @Test
     public void notFromSUW_isAvailable() {
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                /* autoSupported= */true, /* autoEnabled= */false);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
         mController = new AutoTimeZonePreferenceController(
                 mContext, null /* callback */, false /* isFromSUW */);
 
@@ -76,8 +88,11 @@
     }
 
     @Test
-    public void isWifiOnly_notAvailable() {
-        when(mTelephonyManager.isDataCapable()).thenReturn(false);
+    public void autoTimeZoneNotSupported_notAvailable() {
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                /* autoSupported= */false, /* autoEnabled= */false);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
         mController = new AutoTimeZonePreferenceController(
                 mContext, null /* callback */, false /* fromSUW */);
 
@@ -86,54 +101,134 @@
 
     @Test
     public void isFromSUW_notEnable() {
-        mController =
-            new AutoTimeZonePreferenceController(mContext, null /* callback */, true /* fromSUW */);
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                /* autoSupported= */false, /* autoEnabled= */false);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
+        mController = new AutoTimeZonePreferenceController(
+                mContext, null /* callback */, true /* fromSUW */);
 
         assertThat(mController.isEnabled()).isFalse();
     }
 
     @Test
-    public void isWifiOnly_notEnable() {
-        when(mTelephonyManager.isDataCapable()).thenReturn(false);
+    public void isFromSUW_isEnable() {
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                /* autoSupported= */false, /* autoEnabled= */true);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
         mController = new AutoTimeZonePreferenceController(
-                mContext, null /* callback */, false /* fromSUW */);
+                mContext, null /* callback */, true /* fromSUW */);
 
-        assertThat(mController.isEnabled()).isFalse();
-    }
-
-    @Test
-    public void testIsEnabled_shouldReadFromSettingsProvider() {
-        mController = new AutoTimeZonePreferenceController(
-                mContext, null /* callback */, false /* fromSUW */);
-
-        // Disabled
-        Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AUTO_TIME_ZONE, 0);
-        assertThat(mController.isEnabled()).isFalse();
-
-        // Enabled
-        Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AUTO_TIME_ZONE, 1);
         assertThat(mController.isEnabled()).isTrue();
     }
 
     @Test
+    public void autoTimeZoneNotSupported_notEnable() {
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                /* autoSupported= */false, /* autoEnabled= */false);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
+        mController = new AutoTimeZonePreferenceController(
+                mContext, null /* callback */, false /* fromSUW */);
+
+        assertThat(mController.isEnabled()).isFalse();
+    }
+
+    @Test
+    public void testIsEnabled_shouldReadFromTimeManagerConfig() {
+        mController = new AutoTimeZonePreferenceController(
+                mContext, null /* callback */, false /* fromSUW */);
+
+        {
+            // Disabled
+            TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                    /* autoSupported= */true, /* autoEnabled= */false);
+            when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
+            assertThat(mController.isEnabled()).isFalse();
+        }
+
+        {
+            // Enabled
+            TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                    /* autoSupported= */true, /* autoEnabled= */true);
+            when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
+            assertThat(mController.isEnabled()).isTrue();
+        }
+    }
+
+    @Test
     public void updatePreferenceChange_prefIsChecked_shouldUpdatePreferenceAndNotifyCallback() {
-        mController =
-            new AutoTimeZonePreferenceController(mContext, mCallback, false /* fromSUW */);
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                /* autoSupported= */true, /* autoEnabled= */false);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+        when(mTimeManager.updateTimeZoneConfiguration(Mockito.any())).thenReturn(true);
 
-        mController.onPreferenceChange(mPreference, true);
+        mController = new AutoTimeZonePreferenceController(
+                mContext, mCallback, false /* fromSUW */);
+
+        assertThat(mController.onPreferenceChange(mPreference, true)).isTrue();
+        verify(mCallback).updateTimeAndDateDisplay(mContext);
+
+        // Check the service was asked to change the configuration correctly.
+        TimeZoneConfiguration timeZoneConfiguration = new TimeZoneConfiguration.Builder()
+                .setAutoDetectionEnabled(true)
+                .build();
+        verify(mTimeManager).updateTimeZoneConfiguration(timeZoneConfiguration);
+
+        // Update the mTimeManager mock so that it now returns the expected updated config.
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfigAfterUpdate =
+                createCapabilitiesAndConfig(/* autoSupported= */true, /* autoEnabled= */true);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig())
+                .thenReturn(capabilitiesAndConfigAfterUpdate);
 
         assertThat(mController.isEnabled()).isTrue();
-        verify(mCallback).updateTimeAndDateDisplay(mContext);
     }
 
     @Test
     public void updatePreferenceChange_prefIsUnchecked_shouldUpdatePreferenceAndNotifyCallback() {
-        mController =
-            new AutoTimeZonePreferenceController(mContext, mCallback, false /* fromSUW */);
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+                /* autoSupported= */true, /* autoEnabled= */true);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+        when(mTimeManager.updateTimeZoneConfiguration(Mockito.any())).thenReturn(true);
 
-        mController.onPreferenceChange(mPreference, false);
+        mController = new AutoTimeZonePreferenceController(
+                mContext, mCallback, false /* fromSUW */);
+
+        assertThat(mController.onPreferenceChange(mPreference, false)).isTrue();
+        verify(mCallback).updateTimeAndDateDisplay(mContext);
+
+        // Check the service was asked to change the configuration correctly.
+        TimeZoneConfiguration timeZoneConfiguration = new TimeZoneConfiguration.Builder()
+                .setAutoDetectionEnabled(false)
+                .build();
+        verify(mTimeManager).updateTimeZoneConfiguration(timeZoneConfiguration);
+
+        // Update the mTimeManager mock so that it now returns the expected updated config.
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfigAfterUpdate =
+                createCapabilitiesAndConfig(/* autoSupported= */true, /* autoEnabled= */false);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig())
+                .thenReturn(capabilitiesAndConfigAfterUpdate);
 
         assertThat(mController.isEnabled()).isFalse();
-        verify(mCallback).updateTimeAndDateDisplay(mContext);
+    }
+
+    private static TimeZoneCapabilitiesAndConfig createCapabilitiesAndConfig(
+            boolean autoSupported, boolean autoEnabled) {
+        int configureAutoDetectionEnabledCapability =
+                autoSupported ? Capabilities.CAPABILITY_POSSESSED
+                        : Capabilities.CAPABILITY_NOT_SUPPORTED;
+        TimeZoneCapabilities capabilities = new TimeZoneCapabilities.Builder(UserHandle.SYSTEM)
+                .setConfigureAutoDetectionEnabledCapability(configureAutoDetectionEnabledCapability)
+                .setConfigureGeoDetectionEnabledCapability(Capabilities.CAPABILITY_NOT_SUPPORTED)
+                .setSuggestManualTimeZoneCapability(Capabilities.CAPABILITY_POSSESSED)
+                .build();
+        TimeZoneConfiguration config = new TimeZoneConfiguration.Builder()
+                .setAutoDetectionEnabled(autoEnabled)
+                .setGeoDetectionEnabled(false)
+                .build();
+        return new TimeZoneCapabilitiesAndConfig(capabilities, config);
     }
 }
diff --git a/tests/robotests/src/com/android/settings/datetime/TimeZonePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/datetime/TimeZonePreferenceControllerTest.java
index f94e8d1..6767b4e 100644
--- a/tests/robotests/src/com/android/settings/datetime/TimeZonePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/datetime/TimeZonePreferenceControllerTest.java
@@ -22,7 +22,13 @@
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.when;
 
+import android.app.time.Capabilities;
+import android.app.time.TimeManager;
+import android.app.time.TimeZoneCapabilities;
+import android.app.time.TimeZoneCapabilitiesAndConfig;
+import android.app.time.TimeZoneConfiguration;
 import android.content.Context;
+import android.os.UserHandle;
 
 import com.android.settingslib.RestrictedPreference;
 
@@ -38,8 +44,7 @@
 public class TimeZonePreferenceControllerTest {
 
     @Mock
-    private AutoTimeZonePreferenceController mAutoTimeZonePreferenceController;
-
+    private TimeManager mTimeManager;
     private Context mContext;
     private TimeZonePreferenceController mController;
     private RestrictedPreference mPreference;
@@ -47,10 +52,14 @@
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
-        mContext = RuntimeEnvironment.application;
+
+        mContext = spy(RuntimeEnvironment.application);
+        doReturn(mTimeManager).when(mContext).getSystemService(TimeManager.class);
+
         mPreference = new RestrictedPreference(mContext);
-        mController = spy(new TimeZonePreferenceController(mContext,
-                mAutoTimeZonePreferenceController));
+
+        mController = spy(new TimeZonePreferenceController(mContext));
+        doReturn("test timezone").when(mController).getTimeZoneOffsetAndName();
     }
 
     @Test
@@ -59,26 +68,46 @@
     }
 
     @Test
-    public void updateState_autoTimeZoneEnabled_shouldDisablePref() {
+    public void updateState_suggestManualNotAllowed_shouldDisablePref() {
         // Make sure not disabled by admin.
         mPreference.setDisabledByAdmin(null);
 
-        doReturn("test timezone").when(mController).getTimeZoneOffsetAndName();
-        when(mAutoTimeZonePreferenceController.isEnabled()).thenReturn(true);
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+            /* suggestManualAllowed= */false);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
         mController.updateState(mPreference);
 
         assertThat(mPreference.isEnabled()).isFalse();
     }
 
     @Test
-    public void updateState_autoTimeZoneDisabled_shouldEnablePref() {
+    public void updateState_suggestManualAllowed_shouldEnablePref() {
         // Make sure not disabled by admin.
         mPreference.setDisabledByAdmin(null);
 
-        doReturn("test timezone").when(mController).getTimeZoneOffsetAndName();
-        when(mAutoTimeZonePreferenceController.isEnabled()).thenReturn(false);
+        TimeZoneCapabilitiesAndConfig capabilitiesAndConfig = createCapabilitiesAndConfig(
+            /* suggestManualAllowed= */true);
+        when(mTimeManager.getTimeZoneCapabilitiesAndConfig()).thenReturn(capabilitiesAndConfig);
+
         mController.updateState(mPreference);
 
         assertThat(mPreference.isEnabled()).isTrue();
     }
+
+    private static TimeZoneCapabilitiesAndConfig createCapabilitiesAndConfig(
+            boolean suggestManualAllowed) {
+        int suggestManualCapability = suggestManualAllowed ? Capabilities.CAPABILITY_POSSESSED
+                : Capabilities.CAPABILITY_NOT_SUPPORTED;
+        TimeZoneCapabilities capabilities = new TimeZoneCapabilities.Builder(UserHandle.SYSTEM)
+                .setConfigureAutoDetectionEnabledCapability(Capabilities.CAPABILITY_POSSESSED)
+                .setConfigureGeoDetectionEnabledCapability(Capabilities.CAPABILITY_NOT_SUPPORTED)
+                .setSuggestManualTimeZoneCapability(suggestManualCapability)
+                .build();
+        TimeZoneConfiguration config = new TimeZoneConfiguration.Builder()
+                .setAutoDetectionEnabled(!suggestManualAllowed)
+                .setGeoDetectionEnabled(false)
+                .build();
+        return new TimeZoneCapabilitiesAndConfig(capabilities, config);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/development/NotificationChannelWarningsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/NotificationChannelWarningsPreferenceControllerTest.java
index 7d08c66..1887247 100644
--- a/tests/robotests/src/com/android/settings/development/NotificationChannelWarningsPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/NotificationChannelWarningsPreferenceControllerTest.java
@@ -102,7 +102,7 @@
     }
 
     @Test
-    public void updateState_settingUndefinedDebuggingEnabled_preferenceShouldBeChecked() {
+    public void updateState_settingUndefinedDebuggingEnabled_preferenceShouldNotBeChecked() {
         mController = spy(mController);
         doReturn(true).when(mController).isDebuggable();
         Settings.Global.putString(mContext.getContentResolver(),
@@ -110,18 +110,6 @@
 
         mController.updateState(mPreference);
 
-        verify(mPreference).setChecked(true);
-    }
-
-    @Test
-    public void updateState_settingUndefinedDebuggingDisabled_preferenceShouldNotBeChecked() {
-        mController = spy(mController);
-        doReturn(false).when(mController).isDebuggable();
-        Settings.Global.putString(mContext.getContentResolver(),
-                Settings.Global.SHOW_NOTIFICATION_CHANNEL_WARNINGS, "NotAnInteger");
-
-        mController.updateState(mPreference);
-
         verify(mPreference).setChecked(false);
     }
 
diff --git a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceControllerTest.java
index f04a80d..8da44cc 100644
--- a/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/bluetooth/BluetoothCodecDialogPreferenceControllerTest.java
@@ -52,6 +52,8 @@
 @RunWith(RobolectricTestRunner.class)
 public class BluetoothCodecDialogPreferenceControllerTest {
 
+    private static final int SOURCE_CODEC_TYPE_OPUS = 6; // TODO(b/240635097): remove in U
+
     private static final String DEVICE_ADDRESS = "00:11:22:33:44:55";
 
     @Mock
@@ -72,6 +74,7 @@
     private BluetoothCodecConfig mCodecConfigAPTX;
     private BluetoothCodecConfig mCodecConfigAPTXHD;
     private BluetoothCodecConfig mCodecConfigLDAC;
+    private BluetoothCodecConfig mCodecConfigOPUS;
     private BluetoothDevice mActiveDevice;
     private Context mContext;
     private LifecycleOwner mLifecycleOwner;
@@ -119,13 +122,17 @@
         mCodecConfigLDAC = new BluetoothCodecConfig.Builder()
                 .setCodecType(BluetoothCodecConfig.SOURCE_CODEC_TYPE_LDAC)
                 .build();
+        mCodecConfigOPUS = new BluetoothCodecConfig.Builder()
+                .setCodecType(SOURCE_CODEC_TYPE_OPUS)
+                .build();
         when(mBluetoothAdapter.getActiveDevices(eq(BluetoothProfile.A2DP)))
                 .thenReturn(Arrays.asList(mActiveDevice));
     }
 
     @Test
     public void writeConfigurationValues_selectDefault_setHighest() {
-        BluetoothCodecConfig[] mCodecConfigs = {mCodecConfigAAC, mCodecConfigSBC};
+        BluetoothCodecConfig[] mCodecConfigs = {mCodecConfigOPUS, mCodecConfigAAC,
+                                                mCodecConfigSBC};
         mCodecStatus = new BluetoothCodecStatus.Builder()
                 .setCodecConfig(mCodecConfigSBC)
                 .setCodecsSelectableCapabilities(Arrays.asList(mCodecConfigs))
@@ -136,13 +143,14 @@
         mController.onBluetoothServiceConnected(mBluetoothA2dp);
 
         mController.writeConfigurationValues(0);
-        verify(mBluetoothA2dpConfigStore).setCodecType(BluetoothCodecConfig.SOURCE_CODEC_TYPE_AAC);
+                                                // TODO(b/240635097): update in U
+        verify(mBluetoothA2dpConfigStore).setCodecType(SOURCE_CODEC_TYPE_OPUS);
     }
 
     @Test
     public void writeConfigurationValues_checkCodec() {
-        BluetoothCodecConfig[] mCodecConfigs = {mCodecConfigAAC, mCodecConfigSBC, mCodecConfigAPTX,
-                mCodecConfigAPTXHD, mCodecConfigLDAC, mCodecConfigAAC, mCodecConfigSBC};
+        BluetoothCodecConfig[] mCodecConfigs = {mCodecConfigOPUS, mCodecConfigAAC,
+                mCodecConfigSBC, mCodecConfigAPTX, mCodecConfigAPTXHD, mCodecConfigLDAC};
         mCodecStatus = new BluetoothCodecStatus.Builder()
                 .setCodecConfig(mCodecConfigSBC)
                 .setCodecsSelectableCapabilities(Arrays.asList(mCodecConfigs))
@@ -167,12 +175,15 @@
         mController.writeConfigurationValues(5);
         verify(mBluetoothA2dpConfigStore).setCodecType(BluetoothCodecConfig.SOURCE_CODEC_TYPE_LDAC);
 
+        mController.writeConfigurationValues(7);
+                                                // TODO(b/240635097): update in U
+        verify(mBluetoothA2dpConfigStore).setCodecType(SOURCE_CODEC_TYPE_OPUS);
     }
 
     @Test
     public void writeConfigurationValues_resetHighestConfig() {
         BluetoothCodecConfig[] mCodecConfigs = {mCodecConfigAAC, mCodecConfigSBC, mCodecConfigAPTX,
-                mCodecConfigAPTXHD, mCodecConfigLDAC, mCodecConfigAAC, mCodecConfigSBC};
+                mCodecConfigAPTXHD, mCodecConfigLDAC, mCodecConfigOPUS};
         mCodecStatus = new BluetoothCodecStatus.Builder()
                 .setCodecConfig(mCodecConfigAAC)
                 .setCodecsSelectableCapabilities(Arrays.asList(mCodecConfigs))
@@ -198,6 +209,14 @@
     }
 
     @Test
+    public void getCurrentIndexByConfig_verifyOpusIndex() {
+        assertThat(mController.getCurrentIndexByConfig(mCodecConfigOPUS)).isEqualTo(
+                mController.convertCfgToBtnIndex(SOURCE_CODEC_TYPE_OPUS));
+                                             // TODO(b/240635097): update in U
+    }
+
+
+    @Test
     public void onIndexUpdated_notifyPreference() {
         mController.onIndexUpdated(0);
 
@@ -205,8 +224,28 @@
     }
 
     @Test
+    public void onHDAudioEnabled_optionalCodecEnabled_setsCodecTypeAsOpus() {
+        List<BluetoothCodecConfig> mCodecConfigs = Arrays.asList(mCodecConfigOPUS,
+                                                   mCodecConfigAAC, mCodecConfigSBC);
+        mCodecStatus = new BluetoothCodecStatus.Builder()
+                .setCodecConfig(mCodecConfigOPUS)
+                .setCodecsSelectableCapabilities(mCodecConfigs)
+                .build();
+        when(mBluetoothA2dp.getCodecStatus(mActiveDevice)).thenReturn(mCodecStatus);
+        when(mBluetoothA2dp.isOptionalCodecsEnabled(mActiveDevice)).thenReturn(
+                BluetoothA2dp.OPTIONAL_CODECS_PREF_ENABLED);
+        mController.onBluetoothServiceConnected(mBluetoothA2dp);
+
+        mController.onHDAudioEnabled(/* enabled= */ true);
+
+        verify(mBluetoothA2dpConfigStore, atLeastOnce()).setCodecType(
+                eq(SOURCE_CODEC_TYPE_OPUS)); // TODO(b/240635097): update in U
+    }
+
+    @Test
     public void onHDAudioEnabled_optionalCodecEnabled_setsCodecTypeAsAAC() {
-        List<BluetoothCodecConfig> mCodecConfigs = Arrays.asList(mCodecConfigAAC, mCodecConfigSBC);
+        List<BluetoothCodecConfig> mCodecConfigs = Arrays.asList(mCodecConfigOPUS,
+                                                   mCodecConfigAAC, mCodecConfigSBC);
         mCodecStatus = new BluetoothCodecStatus.Builder()
                 .setCodecConfig(mCodecConfigAAC)
                 .setCodecsSelectableCapabilities(mCodecConfigs)
@@ -223,7 +262,8 @@
     }
     @Test
     public void onHDAudioEnabled_optionalCodecDisabled_setsCodecTypeAsSBC() {
-        List<BluetoothCodecConfig> mCodecConfigs = Arrays.asList(mCodecConfigAAC, mCodecConfigSBC);
+        List<BluetoothCodecConfig> mCodecConfigs = Arrays.asList(mCodecConfigOPUS,
+                                                   mCodecConfigAAC, mCodecConfigSBC);
         mCodecStatus = new BluetoothCodecStatus.Builder()
                 .setCodecConfig(mCodecConfigAAC)
                 .setCodecsSelectableCapabilities(mCodecConfigs)
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java b/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java
index 269c810..7c56ab3 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java
@@ -45,7 +45,6 @@
 import android.os.Bundle;
 import android.os.Process;
 import android.os.UserHandle;
-import android.util.Pair;
 
 import androidx.fragment.app.FragmentActivity;
 import androidx.loader.app.LoaderManager;
@@ -54,6 +53,7 @@
 
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
+import com.android.settings.fuelgauge.batteryusage.BatteryEntry;
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.shadow.ShadowActivityManager;
 import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
@@ -232,7 +232,7 @@
     }
 
     @Test
-    public void testGetPreferenceScreenResId_returnNewLayout() {
+    public void setPreferenceScreenResId_returnNewLayout() {
         assertThat(mFragment.getPreferenceScreenResId()).isEqualTo(R.xml.power_usage_detail);
     }
 
@@ -252,7 +252,7 @@
     }
 
     @Test
-    public void testInitHeader_HasAppEntry_BuildByAppEntry() {
+    public void initHeader_HasAppEntry_BuildByAppEntry() {
         ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
                 new InstantAppDataProvider() {
                     @Override
@@ -269,7 +269,7 @@
     }
 
     @Test
-    public void testInitHeader_HasAppEntry_InstantApp() {
+    public void initHeader_HasAppEntry_InstantApp() {
         ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
                 new InstantAppDataProvider() {
                     @Override
@@ -286,7 +286,7 @@
     }
 
     @Test
-    public void testInitHeader_noUsageTimeAndGraphDisabled_hasCorrectSummary() {
+    public void initHeader_noUsageTimeAndGraphDisabled_hasCorrectSummary() {
         when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mContext))
                 .thenReturn(false);
 
@@ -304,7 +304,7 @@
     }
 
     @Test
-    public void testInitHeader_bgTwoMinFgZeroAndGraphDisabled_hasCorrectSummary() {
+    public void initHeader_bgTwoMinFgZeroAndGraphDisabled_hasCorrectSummary() {
         when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mContext))
                 .thenReturn(false);
 
@@ -324,7 +324,7 @@
     }
 
     @Test
-    public void testInitHeader_bgLessThanAMinFgZeroAndGraphDisabled_hasCorrectSummary() {
+    public void initHeader_bgLessThanAMinFgZeroAndGraphDisabled_hasCorrectSummary() {
         when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mContext))
                 .thenReturn(false);
 
@@ -345,7 +345,7 @@
     }
 
     @Test
-    public void testInitHeader_totalUsageLessThanAMinAndGraphDisabled_hasCorrectSummary() {
+    public void initHeader_totalUsageLessThanAMinAndGraphDisabled_hasCorrectSummary() {
         when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mContext))
                 .thenReturn(false);
 
@@ -367,7 +367,7 @@
     }
 
     @Test
-    public void testInitHeader_TotalAMinutesBgLessThanAMinAndGraphDisabled_hasCorrectSummary() {
+    public void initHeader_TotalAMinutesBgLessThanAMinAndGraphDisabled_hasCorrectSummary() {
         when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mContext))
                 .thenReturn(false);
 
@@ -387,7 +387,7 @@
     }
 
     @Test
-    public void testInitHeader_TotalAMinBackgroundZeroAndGraphDisabled_hasCorrectSummary() {
+    public void initHeader_TotalAMinBackgroundZeroAndGraphDisabled_hasCorrectSummary() {
         when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mContext))
                 .thenReturn(false);
         final long backgroundTimeZero = 0;
@@ -406,7 +406,7 @@
     }
 
     @Test
-    public void testInitHeader_fgTwoMinBgFourMinAndGraphDisabled_hasCorrectSummary() {
+    public void initHeader_fgTwoMinBgFourMinAndGraphDisabled_hasCorrectSummary() {
         when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mContext))
                 .thenReturn(false);
         final long backgroundTimeFourMinute = 240000;
@@ -424,7 +424,7 @@
     }
 
     @Test
-    public void testInitHeader_noUsageTime_hasCorrectSummary() {
+    public void initHeader_noUsageTime_hasCorrectSummary() {
         Bundle bundle = new Bundle(2);
         bundle.putLong(AdvancedPowerUsageDetail.EXTRA_BACKGROUND_TIME, /* value */ 0);
         bundle.putLong(AdvancedPowerUsageDetail.EXTRA_FOREGROUND_TIME, /* value */ 0);
@@ -435,11 +435,11 @@
         ArgumentCaptor<CharSequence> captor = ArgumentCaptor.forClass(CharSequence.class);
         verify(mEntityHeaderController).setSummary(captor.capture());
         assertThat(captor.getValue().toString())
-                .isEqualTo("No usage for past 24 hr");
+                .isEqualTo("No usage from last full charge");
     }
 
     @Test
-    public void testInitHeader_noUsageTimeButConsumedPower_hasEmptySummary() {
+    public void initHeader_noUsageTimeButConsumedPower_hasEmptySummary() {
         Bundle bundle = new Bundle(3);
         bundle.putLong(AdvancedPowerUsageDetail.EXTRA_BACKGROUND_TIME, /* value */ 0);
         bundle.putLong(AdvancedPowerUsageDetail.EXTRA_FOREGROUND_TIME, /* value */ 0);
@@ -454,7 +454,7 @@
     }
 
     @Test
-    public void testInitHeader_backgroundTwoMinForegroundZero_hasCorrectSummary() {
+    public void initHeader_backgroundTwoMinForegroundZero_hasCorrectSummary() {
         final long backgroundTimeTwoMinutes = 120000;
         final long foregroundTimeZero = 0;
         Bundle bundle = new Bundle(2);
@@ -467,11 +467,11 @@
         ArgumentCaptor<CharSequence> captor = ArgumentCaptor.forClass(CharSequence.class);
         verify(mEntityHeaderController).setSummary(captor.capture());
         assertThat(captor.getValue().toString())
-                .isEqualTo("2 min background for past 24 hr");
+                .isEqualTo("2 min background from last full charge");
     }
 
     @Test
-    public void testInitHeader_backgroundLessThanAMinForegroundZero_hasCorrectSummary() {
+    public void initHeader_backgroundLessThanAMinForegroundZero_hasCorrectSummary() {
         final long backgroundTimeLessThanAMinute = 59999;
         final long foregroundTimeZero = 0;
         Bundle bundle = new Bundle(2);
@@ -485,11 +485,11 @@
         ArgumentCaptor<CharSequence> captor = ArgumentCaptor.forClass(CharSequence.class);
         verify(mEntityHeaderController).setSummary(captor.capture());
         assertThat(captor.getValue().toString())
-                .isEqualTo("Background less than a minute for past 24 hr");
+                .isEqualTo("Background less than a minute from last full charge");
     }
 
     @Test
-    public void testInitHeader_totalUsageLessThanAMin_hasCorrectSummary() {
+    public void initHeader_totalUsageLessThanAMin_hasCorrectSummary() {
         final long backgroundTimeLessThanHalfMinute = 20000;
         final long foregroundTimeLessThanHalfMinute = 20000;
         Bundle bundle = new Bundle(2);
@@ -504,11 +504,11 @@
         ArgumentCaptor<CharSequence> captor = ArgumentCaptor.forClass(CharSequence.class);
         verify(mEntityHeaderController).setSummary(captor.capture());
         assertThat(captor.getValue().toString())
-                .isEqualTo("Total less than a minute for past 24 hr");
+                .isEqualTo("Total less than a minute from last full charge");
     }
 
     @Test
-    public void testInitHeader_TotalAMinutesBackgroundLessThanAMin_hasCorrectSummary() {
+    public void initHeader_TotalAMinutesBackgroundLessThanAMin_hasCorrectSummary() {
         final long backgroundTimeZero = 59999;
         final long foregroundTimeTwoMinutes = 1;
         Bundle bundle = new Bundle(2);
@@ -521,11 +521,11 @@
         ArgumentCaptor<CharSequence> captor = ArgumentCaptor.forClass(CharSequence.class);
         verify(mEntityHeaderController).setSummary(captor.capture());
         assertThat(captor.getValue().toString())
-                .isEqualTo("1 min total • background less than a minute\nfor past 24 hr");
+                .isEqualTo("1 min total • background less than a minute\nfrom last full charge");
     }
 
     @Test
-    public void testInitHeader_TotalAMinBackgroundZero_hasCorrectSummary() {
+    public void initHeader_TotalAMinBackgroundZero_hasCorrectSummary() {
         final long backgroundTimeZero = 0;
         final long foregroundTimeAMinutes = 60000;
         Bundle bundle = new Bundle(2);
@@ -538,11 +538,11 @@
         ArgumentCaptor<CharSequence> captor = ArgumentCaptor.forClass(CharSequence.class);
         verify(mEntityHeaderController).setSummary(captor.capture());
         assertThat(captor.getValue().toString())
-                .isEqualTo("1 min total for past 24 hr");
+                .isEqualTo("1 min total from last full charge");
     }
 
     @Test
-    public void testInitHeader_foregroundTwoMinBackgroundFourMin_hasCorrectSummary() {
+    public void initHeader_foregroundTwoMinBackgroundFourMin_hasCorrectSummary() {
         final long backgroundTimeFourMinute = 240000;
         final long foregroundTimeTwoMinutes = 120000;
         Bundle bundle = new Bundle(2);
@@ -555,11 +555,11 @@
         ArgumentCaptor<CharSequence> captor = ArgumentCaptor.forClass(CharSequence.class);
         verify(mEntityHeaderController).setSummary(captor.capture());
         assertThat(captor.getValue().toString())
-                .isEqualTo("6 min total • 4 min background\nfor past 24 hr");
+                .isEqualTo("6 min total • 4 min background\nfrom last full charge");
     }
 
     @Test
-    public void testInitHeader_totalUsageLessThanAMinWithSlotTime_hasCorrectSummary() {
+    public void initHeader_totalUsageLessThanAMinWithSlotTime_hasCorrectSummary() {
         final long backgroundTimeLessThanHalfMinute = 20000;
         final long foregroundTimeLessThanHalfMinute = 20000;
         Bundle bundle = new Bundle(3);
@@ -579,7 +579,7 @@
     }
 
     @Test
-    public void testInitHeader_TotalAMinBackgroundLessThanAMinWithSlotTime_hasCorrectSummary() {
+    public void initHeader_TotalAMinBackgroundLessThanAMinWithSlotTime_hasCorrectSummary() {
         final long backgroundTimeZero = 59999;
         final long foregroundTimeTwoMinutes = 1;
         Bundle bundle = new Bundle(3);
@@ -597,7 +597,7 @@
     }
 
     @Test
-    public void testInitHeader_TotalAMinBackgroundZeroWithSlotTime_hasCorrectSummary() {
+    public void initHeader_TotalAMinBackgroundZeroWithSlotTime_hasCorrectSummary() {
         final long backgroundTimeZero = 0;
         final long foregroundTimeAMinutes = 60000;
         Bundle bundle = new Bundle(3);
@@ -615,7 +615,7 @@
     }
 
     @Test
-    public void testInitHeader_foregroundTwoMinBackgroundFourMinWithSlotTime_hasCorrectSummary() {
+    public void initHeader_foregroundTwoMinBackgroundFourMinWithSlotTime_hasCorrectSummary() {
         final long backgroundTimeFourMinute = 240000;
         final long foregroundTimeTwoMinutes = 120000;
         Bundle bundle = new Bundle(3);
@@ -633,7 +633,7 @@
     }
 
     @Test
-    public void testInitHeader_systemUidWithChartIsDisabled_nullSummary() {
+    public void initHeader_systemUidWithChartIsDisabled_nullSummary() {
         Bundle bundle = new Bundle(3);
         bundle.putLong(AdvancedPowerUsageDetail.EXTRA_BACKGROUND_TIME, 240000);
         bundle.putLong(AdvancedPowerUsageDetail.EXTRA_FOREGROUND_TIME, 120000);
@@ -650,7 +650,7 @@
     }
 
     @Test
-    public void testInitHeader_systemUidWithChartIsEnabled_notNullSummary() {
+    public void initHeader_systemUidWithChartIsEnabled_notNullSummary() {
         Bundle bundle = new Bundle(3);
         bundle.putLong(AdvancedPowerUsageDetail.EXTRA_BACKGROUND_TIME, 240000);
         bundle.putLong(AdvancedPowerUsageDetail.EXTRA_FOREGROUND_TIME, 120000);
@@ -665,21 +665,21 @@
     }
 
     @Test
-    public void testStartBatteryDetailPage_hasBasicData() {
+    public void startBatteryDetailPage_hasBasicData() {
         AdvancedPowerUsageDetail.startBatteryDetailPage(mActivity, mFragment,
                 mBatteryEntry, USAGE_PERCENT, /*isValidToShowSummary=*/ true);
 
         assertThat(mBundle.getInt(AdvancedPowerUsageDetail.EXTRA_UID)).isEqualTo(UID);
         assertThat(mBundle.getLong(AdvancedPowerUsageDetail.EXTRA_BACKGROUND_TIME))
-            .isEqualTo(BACKGROUND_TIME_MS);
+                .isEqualTo(BACKGROUND_TIME_MS);
         assertThat(mBundle.getLong(AdvancedPowerUsageDetail.EXTRA_FOREGROUND_TIME))
-            .isEqualTo(FOREGROUND_TIME_MS);
+                .isEqualTo(FOREGROUND_TIME_MS);
         assertThat(mBundle.getString(AdvancedPowerUsageDetail.EXTRA_POWER_USAGE_PERCENT))
-            .isEqualTo(USAGE_PERCENT);
+                .isEqualTo(USAGE_PERCENT);
     }
 
     @Test
-    public void testStartBatteryDetailPage_invalidToShowSummary_noFGBDData() {
+    public void startBatteryDetailPage_invalidToShowSummary_noFGBDData() {
         AdvancedPowerUsageDetail.startBatteryDetailPage(mActivity, mFragment,
                 mBatteryEntry, USAGE_PERCENT, /*isValidToShowSummary=*/ false);
 
@@ -693,7 +693,7 @@
     }
 
     @Test
-    public void testStartBatteryDetailPage_NormalApp() {
+    public void startBatteryDetailPage_NormalApp() {
         when(mBatteryEntry.getDefaultPackageName()).thenReturn(PACKAGE_NAME[0]);
 
         AdvancedPowerUsageDetail.startBatteryDetailPage(mActivity, mFragment,
@@ -704,7 +704,7 @@
     }
 
     @Test
-    public void testStartBatteryDetailPage_SystemApp() {
+    public void startBatteryDetailPage_SystemApp() {
         when(mBatteryEntry.getDefaultPackageName()).thenReturn(null);
 
         AdvancedPowerUsageDetail.startBatteryDetailPage(mActivity, mFragment,
@@ -716,7 +716,7 @@
     }
 
     @Test
-    public void testStartBatteryDetailPage_WorkApp() {
+    public void startBatteryDetailPage_WorkApp() {
         final int appUid = 1010019;
         doReturn(appUid).when(mBatteryEntry).getUid();
 
@@ -727,7 +727,7 @@
     }
 
     @Test
-    public void testStartBatteryDetailPage_typeUser_startByCurrentUser() {
+    public void startBatteryDetailPage_typeUser_startByCurrentUser() {
         when(mBatteryEntry.isUserEntry()).thenReturn(true);
 
         final int currentUser = 20;
@@ -739,7 +739,7 @@
     }
 
     @Test
-    public void testStartBatteryDetailPage_noBatteryUsage_hasBasicData() {
+    public void startBatteryDetailPage_noBatteryUsage_hasBasicData() {
         final ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
 
         AdvancedPowerUsageDetail.startBatteryDetailPage(mActivity, mFragment, PACKAGE_NAME[0]);
@@ -747,16 +747,16 @@
         verify(mActivity).startActivity(captor.capture());
 
         assertThat(captor.getValue().getBundleExtra(EXTRA_SHOW_FRAGMENT_ARGUMENTS)
-            .getString(AdvancedPowerUsageDetail.EXTRA_PACKAGE_NAME))
-            .isEqualTo(PACKAGE_NAME[0]);
+                .getString(AdvancedPowerUsageDetail.EXTRA_PACKAGE_NAME))
+                .isEqualTo(PACKAGE_NAME[0]);
 
         assertThat(captor.getValue().getBundleExtra(EXTRA_SHOW_FRAGMENT_ARGUMENTS)
-            .getString(AdvancedPowerUsageDetail.EXTRA_POWER_USAGE_PERCENT))
-            .isEqualTo("0%");
+                .getString(AdvancedPowerUsageDetail.EXTRA_POWER_USAGE_PERCENT))
+                .isEqualTo("0%");
     }
 
     @Test
-    public void testStartBatteryDetailPage_batteryEntryNotExisted_extractUidFromPackageName() throws
+    public void startBatteryDetailPage_batteryEntryNotExisted_extractUidFromPackageName() throws
             PackageManager.NameNotFoundException {
         doReturn(UID).when(mPackageManager).getPackageUid(PACKAGE_NAME[0], 0 /* no flag */);
 
@@ -796,7 +796,7 @@
     }
 
     @Test
-    public void testInitPreferenceForTriState_isSystemOrDefaultApp_hasCorrectString() {
+    public void initPreferenceForTriState_isSystemOrDefaultApp_hasCorrectString() {
         when(mBatteryOptimizeUtils.isValidPackageName()).thenReturn(true);
         when(mBatteryOptimizeUtils.isSystemOrDefaultApp()).thenReturn(true);
 
@@ -807,7 +807,7 @@
     }
 
     @Test
-    public void testInitPreferenceForTriState_hasCorrectString() {
+    public void initPreferenceForTriState_hasCorrectString() {
         when(mBatteryOptimizeUtils.isValidPackageName()).thenReturn(true);
         when(mBatteryOptimizeUtils.isSystemOrDefaultApp()).thenReturn(false);
 
@@ -818,7 +818,7 @@
     }
 
     @Test
-    public void testOnRadioButtonClicked_clickOptimizePref_optimizePreferenceChecked() {
+    public void onRadioButtonClicked_clickOptimizePref_optimizePreferenceChecked() {
         mOptimizePreference.setKey(KEY_PREF_OPTIMIZED);
         mRestrictedPreference.setKey(KEY_PREF_RESTRICTED);
         mUnrestrictedPreference.setKey(KEY_PREF_UNRESTRICTED);
@@ -830,7 +830,7 @@
     }
 
     @Test
-    public void testOnPause_optimizationModeChanged_logPreference() {
+    public void onPause_optimizationModeChanged_logPreference() {
         final int mode = BatteryOptimizeUtils.MODE_RESTRICTED;
         mFragment.mOptimizationMode = mode;
         when(mBatteryOptimizeUtils.getAppOptimizationMode()).thenReturn(mode);
@@ -849,7 +849,7 @@
     }
 
     @Test
-    public void testOnPause_optimizationModeIsNotChanged_notInvokeLogging() {
+    public void onPause_optimizationModeIsNotChanged_notInvokeLogging() {
         final int mode = BatteryOptimizeUtils.MODE_OPTIMIZED;
         mFragment.mOptimizationMode = mode;
         when(mBatteryOptimizeUtils.getAppOptimizationMode()).thenReturn(mode);
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryBackupHelperTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryBackupHelperTest.java
index ca1797a..283df7b 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryBackupHelperTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryBackupHelperTest.java
@@ -25,6 +25,7 @@
 
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.anyLong;
 import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.doReturn;
@@ -48,6 +49,7 @@
 import android.os.RemoteException;
 import android.os.UserHandle;
 import android.os.UserManager;
+import android.util.ArraySet;
 
 import com.android.settingslib.fuelgauge.PowerAllowlistBackend;
 
@@ -68,6 +70,7 @@
 
 import java.util.Arrays;
 import java.util.List;
+import java.util.Set;
 import java.util.concurrent.TimeUnit;
 
 @RunWith(RobolectricTestRunner.class)
@@ -193,7 +196,7 @@
         doReturn(Arrays.asList(userInfo)).when(mUserManager).getProfiles(anyInt());
         doThrow(new RuntimeException())
                 .when(mIPackageManager)
-                .getInstalledApplications(anyInt(), anyInt());
+                .getInstalledApplications(anyLong(), anyInt());
 
         mBatteryBackupHelper.backupOptimizationMode(mBackupDataOutput, null);
 
@@ -341,9 +344,17 @@
 
     private void verifyBackupData(String expectedResult) throws Exception {
         final byte[] expectedBytes = expectedResult.getBytes();
+        final ArgumentCaptor<byte[]> captor = ArgumentCaptor.forClass(byte[].class);
+        final Set<String> expectedResultSet =
+                Set.of(expectedResult.split(BatteryBackupHelper.DELIMITER));
+
         verify(mBackupDataOutput).writeEntityHeader(
                 BatteryBackupHelper.KEY_OPTIMIZATION_LIST, expectedBytes.length);
-        verify(mBackupDataOutput).writeEntityData(expectedBytes, expectedBytes.length);
+        verify(mBackupDataOutput).writeEntityData(captor.capture(), eq(expectedBytes.length));
+        final String actualResult = new String(captor.getValue());
+        final Set<String> actualResultSet =
+                Set.of(actualResult.split(BatteryBackupHelper.DELIMITER));
+        assertThat(actualResultSet).isEqualTo(expectedResultSet);
     }
 
     private void createTestingData(
@@ -369,7 +380,7 @@
         doReturn(new ParceledListSlice<ApplicationInfo>(
                 Arrays.asList(applicationInfo1, applicationInfo2, applicationInfo3)))
             .when(mIPackageManager)
-            .getInstalledApplications(anyInt(), anyInt());
+            .getInstalledApplications(anyLong(), anyInt());
         // Sets the AppOpsManager for checkOpNoThrow() method.
         doReturn(AppOpsManager.MODE_ALLOWED)
                 .when(mAppOpsManager)
@@ -384,7 +395,7 @@
                         applicationInfo2.uid,
                         applicationInfo2.packageName);
         mBatteryBackupHelper.mTestApplicationInfoList =
-                Arrays.asList(applicationInfo1, applicationInfo2, applicationInfo3);
+                new ArraySet<>(Arrays.asList(applicationInfo1, applicationInfo2, applicationInfo3));
     }
 
     @Implements(UserHandle.class)
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartPreferenceControllerTest.java
deleted file mode 100644
index 1d74491..0000000
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartPreferenceControllerTest.java
+++ /dev/null
@@ -1,702 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.fuelgauge;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.anyLong;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.app.settings.SettingsEnums;
-import android.content.Context;
-import android.content.ContentValues;
-import android.content.pm.PackageManager;
-import android.content.res.Configuration;
-import android.content.res.Resources;
-import android.graphics.drawable.Drawable;
-import android.os.Bundle;
-import android.os.LocaleList;
-import android.text.format.DateUtils;
-import android.util.Pair;
-
-import androidx.preference.Preference;
-import androidx.preference.PreferenceCategory;
-import androidx.preference.PreferenceGroup;
-
-import com.android.settings.R;
-import com.android.settings.SettingsActivity;
-import com.android.settings.core.InstrumentedPreferenceFragment;
-import com.android.settings.testutils.FakeFeatureFactory;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RobolectricTestRunner;
-import org.robolectric.RuntimeEnvironment;
-
-import java.util.Arrays;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Locale;
-import java.util.List;
-import java.util.Map;
-
-@RunWith(RobolectricTestRunner.class)
-public final class BatteryChartPreferenceControllerTest {
-    private static final String PREF_KEY = "pref_key";
-    private static final String PREF_SUMMARY = "fake preference summary";
-    private static final int DESIRED_HISTORY_SIZE =
-        BatteryChartPreferenceController.DESIRED_HISTORY_SIZE;
-
-    @Mock private InstrumentedPreferenceFragment mFragment;
-    @Mock private SettingsActivity mSettingsActivity;
-    @Mock private PreferenceGroup mAppListGroup;
-    @Mock private PackageManager mPackageManager;
-    @Mock private Drawable mDrawable;
-    @Mock private BatteryHistEntry mBatteryHistEntry;
-    @Mock private BatteryChartView mBatteryChartView;
-    @Mock private PowerGaugePreference mPowerGaugePreference;
-    @Mock private ExpandDividerPreference mExpandDividerPreference;
-    @Mock private BatteryUtils mBatteryUtils;
-    @Mock private Configuration mConfiguration;
-    @Mock private Resources mResources;
-
-    private Context mContext;
-    private FakeFeatureFactory mFeatureFactory;
-    private BatteryDiffEntry mBatteryDiffEntry;
-    private MetricsFeatureProvider mMetricsFeatureProvider;
-    private BatteryChartPreferenceController mBatteryChartPreferenceController;
-
-    @Before
-    public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        Locale.setDefault(new Locale("en_US"));
-        org.robolectric.shadows.ShadowSettings.set24HourTimeFormat(false);
-        mFeatureFactory = FakeFeatureFactory.setupForTest();
-        mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
-        mContext = spy(RuntimeEnvironment.application);
-        final Resources resources = spy(mContext.getResources());
-        resources.getConfiguration().setLocales(new LocaleList(new Locale("en_US")));
-        doReturn(resources).when(mContext).getResources();
-        doReturn(new String[] {"com.android.googlequicksearchbox"})
-            .when(mFeatureFactory.powerUsageFeatureProvider)
-            .getHideApplicationSummary(mContext);
-        doReturn(new String[] {"com.android.gms.persistent"})
-            .when(mFeatureFactory.powerUsageFeatureProvider)
-            .getHideApplicationEntries(mContext);
-        mBatteryChartPreferenceController = createController();
-        mBatteryChartPreferenceController.mPrefContext = mContext;
-        mBatteryChartPreferenceController.mAppListPrefGroup = mAppListGroup;
-        mBatteryChartPreferenceController.mBatteryChartView = mBatteryChartView;
-        mBatteryDiffEntry = new BatteryDiffEntry(
-            mContext,
-            /*foregroundUsageTimeInMs=*/ 1,
-            /*backgroundUsageTimeInMs=*/ 2,
-            /*consumePower=*/ 3,
-            mBatteryHistEntry);
-        mBatteryDiffEntry = spy(mBatteryDiffEntry);
-        // Adds fake testing data.
-        BatteryDiffEntry.sResourceCache.put(
-            "fakeBatteryDiffEntryKey",
-            new BatteryEntry.NameAndIcon("fakeName", /*icon=*/ null, /*iconId=*/ 1));
-        mBatteryChartPreferenceController.setBatteryHistoryMap(
-            createBatteryHistoryMap());
-    }
-
-    @Test
-    public void testOnDestroy_activityIsChanging_clearBatteryEntryCache() {
-        doReturn(true).when(mSettingsActivity).isChangingConfigurations();
-        // Ensures the testing environment is correct.
-        assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
-
-        mBatteryChartPreferenceController.onDestroy();
-        assertThat(BatteryDiffEntry.sResourceCache).isEmpty();
-    }
-
-    @Test
-    public void testOnDestroy_activityIsNotChanging_notClearBatteryEntryCache() {
-        doReturn(false).when(mSettingsActivity).isChangingConfigurations();
-        // Ensures the testing environment is correct.
-        assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
-
-        mBatteryChartPreferenceController.onDestroy();
-        assertThat(BatteryDiffEntry.sResourceCache).isNotEmpty();
-    }
-
-    @Test
-    public void testOnDestroy_clearPreferenceCache() {
-        // Ensures the testing environment is correct.
-        mBatteryChartPreferenceController.mPreferenceCache.put(
-            PREF_KEY, mPowerGaugePreference);
-        assertThat(mBatteryChartPreferenceController.mPreferenceCache).hasSize(1);
-
-        mBatteryChartPreferenceController.onDestroy();
-        // Verifies the result after onDestroy.
-        assertThat(mBatteryChartPreferenceController.mPreferenceCache).isEmpty();
-    }
-
-    @Test
-    public void testOnDestroy_removeAllPreferenceFromPreferenceGroup() {
-        mBatteryChartPreferenceController.onDestroy();
-        verify(mAppListGroup).removeAll();
-    }
-
-    @Test
-    public void testSetBatteryHistoryMap_createExpectedKeysAndLevels() {
-        mBatteryChartPreferenceController.setBatteryHistoryMap(
-            createBatteryHistoryMap());
-
-        // Verifies the created battery keys array.
-        for (int index = 0; index < DESIRED_HISTORY_SIZE; index++) {
-            assertThat(mBatteryChartPreferenceController.mBatteryHistoryKeys[index])
-                // These values is are calculated by hand from createBatteryHistoryMap().
-                .isEqualTo(index + 1);
-        }
-        // Verifies the created battery levels array.
-        for (int index = 0; index < 13; index++) {
-            assertThat(mBatteryChartPreferenceController.mBatteryHistoryLevels[index])
-                // These values is are calculated by hand from createBatteryHistoryMap().
-                .isEqualTo(100 - index * 2);
-        }
-        assertThat(mBatteryChartPreferenceController.mBatteryIndexedMap).hasSize(13);
-    }
-
-    @Test
-    public void testSetBatteryHistoryMap_largeSize_createExpectedKeysAndLevels() {
-        mBatteryChartPreferenceController.setBatteryHistoryMap(
-            createBatteryHistoryMap());
-
-        // Verifies the created battery keys array.
-        for (int index = 0; index < DESIRED_HISTORY_SIZE; index++) {
-          assertThat(mBatteryChartPreferenceController.mBatteryHistoryKeys[index])
-              // These values is are calculated by hand from createBatteryHistoryMap().
-              .isEqualTo(index + 1);
-        }
-        // Verifies the created battery levels array.
-        for (int index = 0; index < 13; index++) {
-          assertThat(mBatteryChartPreferenceController.mBatteryHistoryLevels[index])
-              // These values is are calculated by hand from createBatteryHistoryMap().
-              .isEqualTo(100 - index * 2);
-        }
-        assertThat(mBatteryChartPreferenceController.mBatteryIndexedMap).hasSize(13);
-    }
-
-    @Test
-    public void testRefreshUi_batteryIndexedMapIsNull_ignoreRefresh() {
-        mBatteryChartPreferenceController.setBatteryHistoryMap(null);
-        assertThat(mBatteryChartPreferenceController.refreshUi(
-            /*trapezoidIndex=*/ 1, /*isForce=*/ false)).isFalse();
-    }
-
-    @Test
-    public void testRefreshUi_batteryChartViewIsNull_ignoreRefresh() {
-        mBatteryChartPreferenceController.mBatteryChartView = null;
-        assertThat(mBatteryChartPreferenceController.refreshUi(
-            /*trapezoidIndex=*/ 1, /*isForce=*/ false)).isFalse();
-    }
-
-    @Test
-    public void testRefreshUi_trapezoidIndexIsNotChanged_ignoreRefresh() {
-        final int trapezoidIndex = 1;
-        mBatteryChartPreferenceController.mTrapezoidIndex = trapezoidIndex;
-        assertThat(mBatteryChartPreferenceController.refreshUi(
-            trapezoidIndex, /*isForce=*/ false)).isFalse();
-    }
-
-    @Test
-    public void testRefreshUi_forceUpdate_refreshUi() {
-        final int trapezoidIndex = 1;
-        mBatteryChartPreferenceController.mTrapezoidIndex = trapezoidIndex;
-        assertThat(mBatteryChartPreferenceController.refreshUi(
-            trapezoidIndex, /*isForce=*/ true)).isTrue();
-    }
-
-    @Test
-    public void testForceRefreshUi_updateTrapezoidIndexIntoSelectAll() {
-        mBatteryChartPreferenceController.mTrapezoidIndex =
-            BatteryChartView.SELECTED_INDEX_INVALID;
-        mBatteryChartPreferenceController.setBatteryHistoryMap(
-            createBatteryHistoryMap());
-
-        assertThat(mBatteryChartPreferenceController.mTrapezoidIndex)
-            .isEqualTo(BatteryChartView.SELECTED_INDEX_ALL);
-    }
-
-    @Test
-    public void testRemoveAndCacheAllPrefs_emptyContent_ignoreRemoveAll() {
-        final int trapezoidIndex = 1;
-        doReturn(0).when(mAppListGroup).getPreferenceCount();
-
-        mBatteryChartPreferenceController.refreshUi(
-            trapezoidIndex, /*isForce=*/ true);
-        verify(mAppListGroup, never()).removeAll();
-    }
-
-    @Test
-    public void testRemoveAndCacheAllPrefs_buildCacheAndRemoveAllPreference() {
-        final int trapezoidIndex = 1;
-        doReturn(1).when(mAppListGroup).getPreferenceCount();
-        doReturn(mPowerGaugePreference).when(mAppListGroup).getPreference(0);
-        doReturn(PREF_KEY).when(mPowerGaugePreference).getKey();
-        // Ensures the testing data is correct.
-        assertThat(mBatteryChartPreferenceController.mPreferenceCache).isEmpty();
-
-        mBatteryChartPreferenceController.refreshUi(
-            trapezoidIndex, /*isForce=*/ true);
-
-        assertThat(mBatteryChartPreferenceController.mPreferenceCache.get(PREF_KEY))
-            .isEqualTo(mPowerGaugePreference);
-        verify(mAppListGroup).removeAll();
-    }
-
-    @Test
-    public void testAddPreferenceToScreen_emptyContent_ignoreAddPreference() {
-        mBatteryChartPreferenceController.addPreferenceToScreen(
-            new ArrayList<BatteryDiffEntry>());
-        verify(mAppListGroup, never()).addPreference(any());
-    }
-
-    @Test
-    public void testAddPreferenceToScreen_addPreferenceIntoScreen() {
-        final String appLabel = "fake app label";
-        doReturn(1).when(mAppListGroup).getPreferenceCount();
-        doReturn(mDrawable).when(mBatteryDiffEntry).getAppIcon();
-        doReturn(appLabel).when(mBatteryDiffEntry).getAppLabel();
-        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
-        doReturn(null).when(mAppListGroup).findPreference(PREF_KEY);
-        doReturn(false).when(mBatteryDiffEntry).validForRestriction();
-
-        mBatteryChartPreferenceController.addPreferenceToScreen(
-            Arrays.asList(mBatteryDiffEntry));
-
-        // Verifies the preference cache.
-        final PowerGaugePreference pref =
-            (PowerGaugePreference) mBatteryChartPreferenceController.mPreferenceCache
-                .get(PREF_KEY);
-        assertThat(pref).isNotNull();
-        // Verifies the added preference configuration.
-        verify(mAppListGroup).addPreference(pref);
-        assertThat(pref.getKey()).isEqualTo(PREF_KEY);
-        assertThat(pref.getTitle()).isEqualTo(appLabel);
-        assertThat(pref.getIcon()).isEqualTo(mDrawable);
-        assertThat(pref.getOrder()).isEqualTo(1);
-        assertThat(pref.getBatteryDiffEntry()).isSameInstanceAs(mBatteryDiffEntry);
-        assertThat(pref.isSingleLineTitle()).isTrue();
-        assertThat(pref.isEnabled()).isFalse();
-    }
-
-    @Test
-    public void testAddPreferenceToScreen_alreadyInScreen_notAddPreferenceAgain() {
-        final String appLabel = "fake app label";
-        doReturn(1).when(mAppListGroup).getPreferenceCount();
-        doReturn(mDrawable).when(mBatteryDiffEntry).getAppIcon();
-        doReturn(appLabel).when(mBatteryDiffEntry).getAppLabel();
-        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
-        doReturn(mPowerGaugePreference).when(mAppListGroup).findPreference(PREF_KEY);
-
-        mBatteryChartPreferenceController.addPreferenceToScreen(
-            Arrays.asList(mBatteryDiffEntry));
-
-        verify(mAppListGroup, never()).addPreference(any());
-    }
-
-    @Test
-    public void testHandlePreferenceTreeiClick_notPowerGaugePreference_returnFalse() {
-        assertThat(mBatteryChartPreferenceController.handlePreferenceTreeClick(mAppListGroup))
-            .isFalse();
-
-        verify(mMetricsFeatureProvider, never())
-            .action(mContext, SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM);
-        verify(mMetricsFeatureProvider, never())
-            .action(mContext, SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM);
-    }
-
-    @Test
-    public void testHandlePreferenceTreeClick_forAppEntry_returnTrue() {
-        doReturn(false).when(mBatteryHistEntry).isAppEntry();
-        doReturn(mBatteryDiffEntry).when(mPowerGaugePreference).getBatteryDiffEntry();
-
-        assertThat(mBatteryChartPreferenceController.handlePreferenceTreeClick(
-            mPowerGaugePreference)).isTrue();
-        verify(mMetricsFeatureProvider)
-                .action(
-                        SettingsEnums.OPEN_BATTERY_USAGE,
-                        SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM,
-                        SettingsEnums.OPEN_BATTERY_USAGE,
-                        /* package name */ "none",
-                        /* percentage of total */ 0);
-    }
-
-    @Test
-    public void testHandlePreferenceTreeClick_forSystemEntry_returnTrue() {
-        mBatteryChartPreferenceController.mBatteryUtils = mBatteryUtils;
-        doReturn(true).when(mBatteryHistEntry).isAppEntry();
-        doReturn(mBatteryDiffEntry).when(mPowerGaugePreference).getBatteryDiffEntry();
-
-        assertThat(mBatteryChartPreferenceController.handlePreferenceTreeClick(
-            mPowerGaugePreference)).isTrue();
-        verify(mMetricsFeatureProvider)
-                .action(
-                        SettingsEnums.OPEN_BATTERY_USAGE,
-                        SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM,
-                        SettingsEnums.OPEN_BATTERY_USAGE,
-                        /* package name */ "none",
-                        /* percentage of total */ 0);
-    }
-
-    @Test
-    public void testSetPreferenceSummary_setNullContentIfTotalUsageTimeIsZero() {
-        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
-        pref.setSummary(PREF_SUMMARY);
-
-        mBatteryChartPreferenceController.setPreferenceSummary(
-            pref, createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ 0,
-                /*backgroundUsageTimeInMs=*/ 0));
-        assertThat(pref.getSummary()).isNull();
-    }
-
-    @Test
-    public void testSetPreferenceSummary_setBackgroundUsageTimeOnly() {
-        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
-        pref.setSummary(PREF_SUMMARY);
-
-        mBatteryChartPreferenceController.setPreferenceSummary(
-            pref, createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ 0,
-                /*backgroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS));
-        assertThat(pref.getSummary()).isEqualTo("Background: 1 min");
-    }
-
-    @Test
-    public void testSetPreferenceSummary_setTotalUsageTimeLessThanAMinute() {
-        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
-        pref.setSummary(PREF_SUMMARY);
-
-        mBatteryChartPreferenceController.setPreferenceSummary(
-            pref, createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ 100,
-                /*backgroundUsageTimeInMs=*/ 200));
-        assertThat(pref.getSummary()).isEqualTo("Total: less than a min");
-    }
-
-    @Test
-    public void testSetPreferenceSummary_setTotalTimeIfBackgroundTimeLessThanAMinute() {
-        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
-        pref.setSummary(PREF_SUMMARY);
-
-        mBatteryChartPreferenceController.setPreferenceSummary(
-            pref, createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS,
-                /*backgroundUsageTimeInMs=*/ 200));
-        assertThat(pref.getSummary())
-            .isEqualTo("Total: 1 min\nBackground: less than a min");
-    }
-
-    @Test
-    public void testSetPreferenceSummary_setTotalAndBackgroundUsageTime() {
-        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
-        pref.setSummary(PREF_SUMMARY);
-
-        mBatteryChartPreferenceController.setPreferenceSummary(
-            pref, createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS,
-                /*backgroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS));
-        assertThat(pref.getSummary()).isEqualTo("Total: 2 min\nBackground: 1 min");
-    }
-
-    @Test
-    public void testSetPreferenceSummary_notAllowShownPackage_setSummayAsNull() {
-        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
-        pref.setSummary(PREF_SUMMARY);
-        final BatteryDiffEntry batteryDiffEntry =
-            spy(createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS,
-                /*backgroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS));
-        doReturn("com.android.googlequicksearchbox").when(batteryDiffEntry)
-            .getPackageName();
-
-        mBatteryChartPreferenceController.setPreferenceSummary(pref, batteryDiffEntry);
-        assertThat(pref.getSummary()).isNull();
-    }
-
-    @Test
-    public void testValidateUsageTime_returnTrueIfBatteryDiffEntryIsValid() {
-        assertThat(BatteryChartPreferenceController.validateUsageTime(
-            createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS,
-                /*backgroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS)))
-            .isTrue();
-    }
-
-    @Test
-    public void testValidateUsageTime_foregroundTimeExceedThreshold_returnFalse() {
-        assertThat(BatteryChartPreferenceController.validateUsageTime(
-            createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ DateUtils.HOUR_IN_MILLIS * 3,
-                /*backgroundUsageTimeInMs=*/ 0)))
-            .isFalse();
-    }
-
-    @Test
-    public void testValidateUsageTime_backgroundTimeExceedThreshold_returnFalse() {
-        assertThat(BatteryChartPreferenceController.validateUsageTime(
-            createBatteryDiffEntry(
-                /*foregroundUsageTimeInMs=*/ 0,
-                /*backgroundUsageTimeInMs=*/ DateUtils.HOUR_IN_MILLIS * 3)))
-            .isFalse();
-    }
-
-    @Test
-    public void testOnExpand_expandedIsTrue_addSystemEntriesToPreferenceGroup() {
-        doReturn(1).when(mAppListGroup).getPreferenceCount();
-        mBatteryChartPreferenceController.mSystemEntries.add(mBatteryDiffEntry);
-        doReturn("label").when(mBatteryDiffEntry).getAppLabel();
-        doReturn(mDrawable).when(mBatteryDiffEntry).getAppIcon();
-        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
-
-        mBatteryChartPreferenceController.onExpand(/*isExpanded=*/ true);
-
-        final ArgumentCaptor<Preference> captor = ArgumentCaptor.forClass(Preference.class);
-        verify(mAppListGroup).addPreference(captor.capture());
-        // Verifies the added preference.
-        assertThat(captor.getValue().getKey()).isEqualTo(PREF_KEY);
-        verify(mMetricsFeatureProvider)
-            .action(
-                mContext,
-                SettingsEnums.ACTION_BATTERY_USAGE_EXPAND_ITEM,
-                true /*isExpanded*/);
-    }
-
-    @Test
-    public void testOnExpand_expandedIsFalse_removeSystemEntriesFromPreferenceGroup() {
-        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
-        doReturn(mPowerGaugePreference).when(mAppListGroup).findPreference(PREF_KEY);
-        mBatteryChartPreferenceController.mSystemEntries.add(mBatteryDiffEntry);
-        // Verifies the cache is empty first.
-        assertThat(mBatteryChartPreferenceController.mPreferenceCache).isEmpty();
-
-        mBatteryChartPreferenceController.onExpand(/*isExpanded=*/ false);
-
-        verify(mAppListGroup).findPreference(PREF_KEY);
-        verify(mAppListGroup).removePreference(mPowerGaugePreference);
-        assertThat(mBatteryChartPreferenceController.mPreferenceCache).hasSize(1);
-        verify(mMetricsFeatureProvider)
-            .action(
-                mContext,
-                SettingsEnums.ACTION_BATTERY_USAGE_EXPAND_ITEM,
-                false /*isExpanded*/);
-    }
-
-    @Test
-    public void testOnSelect_selectSpecificTimeSlot_logMetric() {
-        mBatteryChartPreferenceController.onSelect(1 /*slot index*/);
-
-        verify(mMetricsFeatureProvider)
-            .action(mContext, SettingsEnums.ACTION_BATTERY_USAGE_TIME_SLOT);
-    }
-
-    @Test
-    public void testOnSelect_selectAll_logMetric() {
-        mBatteryChartPreferenceController.onSelect(
-            BatteryChartView.SELECTED_INDEX_ALL /*slot index*/);
-
-        verify(mMetricsFeatureProvider)
-            .action(mContext, SettingsEnums.ACTION_BATTERY_USAGE_SHOW_ALL);
-    }
-
-    @Test
-    public void testRefreshCategoryTitle_setHourIntoBothTitleTextView() {
-        mBatteryChartPreferenceController = createController();
-        setUpBatteryHistoryKeys();
-        mBatteryChartPreferenceController.mAppListPrefGroup =
-            spy(new PreferenceCategory(mContext));
-        mBatteryChartPreferenceController.mExpandDividerPreference =
-            spy(new ExpandDividerPreference(mContext));
-        // Simulates select the first slot.
-        mBatteryChartPreferenceController.mTrapezoidIndex = 0;
-
-        mBatteryChartPreferenceController.refreshCategoryTitle();
-
-        ArgumentCaptor<String> captor = ArgumentCaptor.forClass(String.class);
-        // Verifies the title in the preference group.
-        verify(mBatteryChartPreferenceController.mAppListPrefGroup)
-            .setTitle(captor.capture());
-        assertThat(captor.getValue()).isNotEqualTo("App usage for past 24 hr");
-        // Verifies the title in the expandable divider.
-        captor = ArgumentCaptor.forClass(String.class);
-        verify(mBatteryChartPreferenceController.mExpandDividerPreference)
-            .setTitle(captor.capture());
-        assertThat(captor.getValue()).isNotEqualTo("System usage for past 24 hr");
-    }
-
-    @Test
-    public void testRefreshCategoryTitle_setLast24HrIntoBothTitleTextView() {
-        mBatteryChartPreferenceController = createController();
-        mBatteryChartPreferenceController.mAppListPrefGroup =
-            spy(new PreferenceCategory(mContext));
-        mBatteryChartPreferenceController.mExpandDividerPreference =
-            spy(new ExpandDividerPreference(mContext));
-        // Simulates select all condition.
-        mBatteryChartPreferenceController.mTrapezoidIndex =
-            BatteryChartView.SELECTED_INDEX_ALL;
-
-        mBatteryChartPreferenceController.refreshCategoryTitle();
-
-        ArgumentCaptor<String> captor = ArgumentCaptor.forClass(String.class);
-        // Verifies the title in the preference group.
-        verify(mBatteryChartPreferenceController.mAppListPrefGroup)
-            .setTitle(captor.capture());
-        assertThat(captor.getValue())
-            .isEqualTo("App usage for past 24 hr");
-        // Verifies the title in the expandable divider.
-        captor = ArgumentCaptor.forClass(String.class);
-        verify(mBatteryChartPreferenceController.mExpandDividerPreference)
-            .setTitle(captor.capture());
-        assertThat(captor.getValue())
-            .isEqualTo("System usage for past 24 hr");
-    }
-
-    @Test
-    public void testSetTimestampLabel_nullBatteryHistoryKeys_ignore() {
-        mBatteryChartPreferenceController = createController();
-        mBatteryChartPreferenceController.mBatteryHistoryKeys = null;
-        mBatteryChartPreferenceController.mBatteryChartView =
-            spy(new BatteryChartView(mContext));
-        mBatteryChartPreferenceController.setTimestampLabel();
-
-        verify(mBatteryChartPreferenceController.mBatteryChartView, never())
-            .setLatestTimestamp(anyLong());
-    }
-
-    @Test
-    public void testSetTimestampLabel_setExpectedTimestampData() {
-        mBatteryChartPreferenceController = createController();
-        mBatteryChartPreferenceController.mBatteryChartView =
-            spy(new BatteryChartView(mContext));
-        setUpBatteryHistoryKeys();
-
-        mBatteryChartPreferenceController.setTimestampLabel();
-
-        verify(mBatteryChartPreferenceController.mBatteryChartView)
-            .setLatestTimestamp(1619247636826L);
-    }
-
-    @Test
-    public void testSetTimestampLabel_withoutValidTimestamp_setExpectedTimestampData() {
-        mBatteryChartPreferenceController = createController();
-        mBatteryChartPreferenceController.mBatteryChartView =
-            spy(new BatteryChartView(mContext));
-        mBatteryChartPreferenceController.mBatteryHistoryKeys = new long[] {0L};
-
-        mBatteryChartPreferenceController.setTimestampLabel();
-
-        verify(mBatteryChartPreferenceController.mBatteryChartView)
-            .setLatestTimestamp(anyLong());
-    }
-
-    @Test
-    public void testOnSaveInstanceState_restoreSelectedIndexAndExpandState() {
-        final int expectedIndex = 1;
-        final boolean isExpanded = true;
-        final Bundle bundle = new Bundle();
-        mBatteryChartPreferenceController.mTrapezoidIndex = expectedIndex;
-        mBatteryChartPreferenceController.mIsExpanded = isExpanded;
-        mBatteryChartPreferenceController.onSaveInstanceState(bundle);
-        // Replaces the original controller with other values.
-        mBatteryChartPreferenceController.mTrapezoidIndex = -1;
-        mBatteryChartPreferenceController.mIsExpanded = false;
-
-        mBatteryChartPreferenceController.onCreate(bundle);
-        mBatteryChartPreferenceController.setBatteryHistoryMap(
-             createBatteryHistoryMap());
-
-        assertThat(mBatteryChartPreferenceController.mTrapezoidIndex)
-            .isEqualTo(expectedIndex);
-        assertThat(mBatteryChartPreferenceController.mIsExpanded).isTrue();
-    }
-
-    @Test
-    public void testIsValidToShowSummary_returnExpectedResult() {
-        assertThat(mBatteryChartPreferenceController
-                .isValidToShowSummary("com.google.android.apps.scone"))
-            .isTrue();
-
-        // Verifies the item which is defined in the array list.
-        assertThat(mBatteryChartPreferenceController
-                .isValidToShowSummary("com.android.googlequicksearchbox"))
-            .isFalse();
-    }
-
-    @Test
-    public void testIsValidToShowEntry_returnExpectedResult() {
-        assertThat(mBatteryChartPreferenceController
-                .isValidToShowEntry("com.google.android.apps.scone"))
-            .isTrue();
-
-        // Verifies the items which are defined in the array list.
-        assertThat(mBatteryChartPreferenceController
-                .isValidToShowEntry("com.android.gms.persistent"))
-            .isFalse();
-    }
-
-    private static Map<Long, Map<String, BatteryHistEntry>> createBatteryHistoryMap() {
-        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
-        for (int index = 0; index < DESIRED_HISTORY_SIZE; index++) {
-            final ContentValues values = new ContentValues();
-            values.put("batteryLevel", Integer.valueOf(100 - index));
-            final BatteryHistEntry entry = new BatteryHistEntry(values);
-            final Map<String, BatteryHistEntry> entryMap = new HashMap<>();
-            entryMap.put("fake_entry_key" + index, entry);
-            batteryHistoryMap.put(Long.valueOf(index + 1), entryMap);
-        }
-        return batteryHistoryMap;
-    }
-
-    private BatteryDiffEntry createBatteryDiffEntry(
-            long foregroundUsageTimeInMs, long backgroundUsageTimeInMs) {
-        return new BatteryDiffEntry(
-            mContext, foregroundUsageTimeInMs, backgroundUsageTimeInMs,
-            /*consumePower=*/ 0, mBatteryHistEntry);
-    }
-
-    private void setUpBatteryHistoryKeys() {
-        mBatteryChartPreferenceController.mBatteryHistoryKeys =
-            new long[] {1619196786769L, 0L, 1619247636826L};
-        ConvertUtils.utcToLocalTimeHour(
-            mContext, /*timestamp=*/ 0, /*is24HourFormat=*/ false);
-    }
-
-    private BatteryChartPreferenceController createController() {
-        final BatteryChartPreferenceController controller =
-            new BatteryChartPreferenceController(
-                mContext, "app_list", /*lifecycle=*/ null,
-                mSettingsActivity, mFragment);
-        controller.mPrefContext = mContext;
-        return controller;
-    }
-}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartViewTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartViewTest.java
deleted file mode 100644
index 0b75e79..0000000
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartViewTest.java
+++ /dev/null
@@ -1,234 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- *
- */
-package com.android.settings.fuelgauge;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyInt;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.accessibilityservice.AccessibilityServiceInfo;
-import android.content.Context;
-import android.os.LocaleList;
-import android.view.accessibility.AccessibilityManager;
-
-import com.android.settings.testutils.FakeFeatureFactory;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RobolectricTestRunner;
-import org.robolectric.RuntimeEnvironment;
-
-import java.util.Arrays;
-import java.util.ArrayList;
-import java.util.Locale;
-
-@RunWith(RobolectricTestRunner.class)
-public final class BatteryChartViewTest {
-
-    private Context mContext;
-    private BatteryChartView mBatteryChartView;
-    private FakeFeatureFactory mFeatureFactory;
-    private PowerUsageFeatureProvider mPowerUsageFeatureProvider;
-
-    @Mock private AccessibilityServiceInfo mockAccessibilityServiceInfo;
-    @Mock private AccessibilityManager mockAccessibilityManager;
-
-    @Before
-    public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        mFeatureFactory = FakeFeatureFactory.setupForTest();
-        mPowerUsageFeatureProvider = mFeatureFactory.powerUsageFeatureProvider;
-        mContext = spy(RuntimeEnvironment.application);
-        mContext.getResources().getConfiguration().setLocales(
-            new LocaleList(new Locale("en_US")));
-        mBatteryChartView = new BatteryChartView(mContext);
-        doReturn(mockAccessibilityManager).when(mContext)
-            .getSystemService(AccessibilityManager.class);
-        doReturn("TalkBackService").when(mockAccessibilityServiceInfo).getId();
-        doReturn(Arrays.asList(mockAccessibilityServiceInfo))
-            .when(mockAccessibilityManager)
-            .getEnabledAccessibilityServiceList(anyInt());
-    }
-
-    @Test
-    public void testIsAccessibilityEnabled_disable_returnFalse() {
-        doReturn(false).when(mockAccessibilityManager).isEnabled();
-        assertThat(BatteryChartView.isAccessibilityEnabled(mContext)).isFalse();
-    }
-
-    @Test
-    public void testIsAccessibilityEnabled_emptyInfo_returnFalse() {
-        doReturn(true).when(mockAccessibilityManager).isEnabled();
-        doReturn(new ArrayList<AccessibilityServiceInfo>())
-            .when(mockAccessibilityManager)
-            .getEnabledAccessibilityServiceList(anyInt());
-
-        assertThat(BatteryChartView.isAccessibilityEnabled(mContext)).isFalse();
-    }
-
-    @Test
-    public void testIsAccessibilityEnabled_validServiceId_returnTrue() {
-        doReturn(true).when(mockAccessibilityManager).isEnabled();
-        assertThat(BatteryChartView.isAccessibilityEnabled(mContext)).isTrue();
-    }
-
-    @Test
-    public void testSetSelectedIndex_invokesCallback() {
-        final int selectedIndex[] = new int[1];
-        final int expectedIndex = 2;
-        mBatteryChartView.mSelectedIndex = 1;
-        mBatteryChartView.setOnSelectListener(
-            trapezoidIndex -> {
-                selectedIndex[0] = trapezoidIndex;
-            });
-
-        mBatteryChartView.setSelectedIndex(expectedIndex);
-
-        assertThat(mBatteryChartView.mSelectedIndex)
-            .isEqualTo(expectedIndex);
-        assertThat(selectedIndex[0]).isEqualTo(expectedIndex);
-    }
-
-    @Test
-    public void testSetSelectedIndex_sameIndex_notInvokesCallback() {
-        final int selectedIndex[] = new int[1];
-        final int expectedIndex = 1;
-        mBatteryChartView.mSelectedIndex = expectedIndex;
-        mBatteryChartView.setOnSelectListener(
-            trapezoidIndex -> {
-                selectedIndex[0] = trapezoidIndex;
-            });
-
-        mBatteryChartView.setSelectedIndex(expectedIndex);
-
-        assertThat(selectedIndex[0]).isNotEqualTo(expectedIndex);
-    }
-
-    @Test
-    public void testClickable_isChartGraphSlotsEnabledIsFalse_notClickable() {
-        mBatteryChartView.setClickableForce(true);
-        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
-            .thenReturn(false);
-
-        mBatteryChartView.onAttachedToWindow();
-        assertThat(mBatteryChartView.isClickable()).isFalse();
-        assertThat(mBatteryChartView.mTrapezoidCurvePaint).isNotNull();
-    }
-
-    @Test
-    public void testClickable_accessibilityIsDisabled_clickable() {
-        mBatteryChartView.setClickableForce(true);
-        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
-            .thenReturn(true);
-        doReturn(false).when(mockAccessibilityManager).isEnabled();
-
-        mBatteryChartView.onAttachedToWindow();
-        assertThat(mBatteryChartView.isClickable()).isTrue();
-        assertThat(mBatteryChartView.mTrapezoidCurvePaint).isNull();
-    }
-
-    @Test
-    public void testClickable_accessibilityIsEnabledWithoutValidId_clickable() {
-        mBatteryChartView.setClickableForce(true);
-        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
-            .thenReturn(true);
-        doReturn(true).when(mockAccessibilityManager).isEnabled();
-        doReturn(new ArrayList<AccessibilityServiceInfo>())
-            .when(mockAccessibilityManager)
-            .getEnabledAccessibilityServiceList(anyInt());
-
-        mBatteryChartView.onAttachedToWindow();
-        assertThat(mBatteryChartView.isClickable()).isTrue();
-        assertThat(mBatteryChartView.mTrapezoidCurvePaint).isNull();
-    }
-
-    @Test
-    public void testClickable_accessibilityIsEnabledWithValidId_notClickable() {
-        mBatteryChartView.setClickableForce(true);
-        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
-            .thenReturn(true);
-        doReturn(true).when(mockAccessibilityManager).isEnabled();
-
-        mBatteryChartView.onAttachedToWindow();
-        assertThat(mBatteryChartView.isClickable()).isFalse();
-        assertThat(mBatteryChartView.mTrapezoidCurvePaint).isNotNull();
-    }
-
-    @Test
-    public void testClickable_restoreFromNonClickableState() {
-        final int[] levels = new int[13];
-        for (int index = 0; index < levels.length; index++) {
-            levels[index] = index + 1;
-        }
-        mBatteryChartView.setTrapezoidCount(12);
-        mBatteryChartView.setLevels(levels);
-        mBatteryChartView.setClickableForce(true);
-        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
-            .thenReturn(true);
-        doReturn(true).when(mockAccessibilityManager).isEnabled();
-        mBatteryChartView.onAttachedToWindow();
-        // Ensures the testing environment is correct.
-        assertThat(mBatteryChartView.isClickable()).isFalse();
-        // Turns off accessibility service.
-        doReturn(false).when(mockAccessibilityManager).isEnabled();
-
-        mBatteryChartView.onAttachedToWindow();
-
-        assertThat(mBatteryChartView.isClickable()).isTrue();
-    }
-
-    @Test
-    public void testOnAttachedToWindow_addAccessibilityStateChangeListener() {
-        mBatteryChartView.onAttachedToWindow();
-        verify(mockAccessibilityManager)
-            .addAccessibilityStateChangeListener(mBatteryChartView);
-    }
-
-    @Test
-    public void testOnDetachedFromWindow_removeAccessibilityStateChangeListener() {
-        mBatteryChartView.onAttachedToWindow();
-        mBatteryChartView.mHandler.postDelayed(
-            mBatteryChartView.mUpdateClickableStateRun, 1000);
-
-        mBatteryChartView.onDetachedFromWindow();
-
-        verify(mockAccessibilityManager)
-            .removeAccessibilityStateChangeListener(mBatteryChartView);
-        assertThat(mBatteryChartView.mHandler.hasCallbacks(
-                mBatteryChartView.mUpdateClickableStateRun))
-            .isFalse();
-    }
-
-    @Test
-    public void testOnAccessibilityStateChanged_postUpdateStateRunnable() {
-        mBatteryChartView.mHandler = spy(mBatteryChartView.mHandler);
-        mBatteryChartView.onAccessibilityStateChanged(/*enabled=*/ true);
-
-        verify(mBatteryChartView.mHandler)
-            .removeCallbacks(mBatteryChartView.mUpdateClickableStateRun);
-        verify(mBatteryChartView.mHandler)
-            .postDelayed(mBatteryChartView.mUpdateClickableStateRun, 500L);
-    }
-}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
index 591c4e6..c5c47d2 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
@@ -249,6 +249,8 @@
 
     @Test
     public void testGetBatteryInfo_chargingWithOverheated_updateChargeLabel() {
+        final String expectedString =
+                mContext.getString(R.string.battery_tip_limited_temporarily_title);
         doReturn(TEST_CHARGE_TIME_REMAINING)
                 .when(mBatteryUsageStats)
                 .getChargeTimeRemainingMs();
@@ -260,7 +262,7 @@
                 false /* shortString */);
 
         assertThat(info.isOverheated).isTrue();
-        assertThat(info.chargeLabel).isEqualTo("50% - Charging temporarily limited");
+        assertThat(info.chargeLabel.toString()).contains(expectedString);
     }
 
     // Make our battery stats return a sequence of battery events.
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryOptimizeUtilsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryOptimizeUtilsTest.java
index c154f42..b223d0b 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryOptimizeUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryOptimizeUtilsTest.java
@@ -22,26 +22,43 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
 import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.anyLong;
 import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.doThrow;
+import static org.mockito.Mockito.inOrder;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.verifyZeroInteractions;
 import static org.mockito.Mockito.when;
 
 import android.app.AppOpsManager;
 import android.content.Context;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageManager;
+import android.content.pm.PackageManager;
+import android.content.pm.ParceledListSlice;
+import android.content.pm.UserInfo;
+import android.os.UserManager;
+import android.util.ArraySet;
 
 import com.android.settingslib.fuelgauge.PowerAllowlistBackend;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.mockito.InOrder;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
 
+import java.util.Arrays;
 import java.util.concurrent.TimeUnit;
 
 @RunWith(RobolectricTestRunner.class)
@@ -50,9 +67,11 @@
     private static final int UID = 12345;
     private static final String PACKAGE_NAME = "com.android.app";
 
-    @Mock BatteryUtils mMockBatteryUtils;
-    @Mock AppOpsManager mMockAppOpsManager;
-    @Mock PowerAllowlistBackend mMockBackend;
+    @Mock private BatteryUtils mMockBatteryUtils;
+    @Mock private AppOpsManager mMockAppOpsManager;
+    @Mock private PowerAllowlistBackend mMockBackend;
+    @Mock private IPackageManager mMockIPackageManager;
+    @Mock private UserManager mMockUserManager;
 
     private Context mContext;
     private BatteryOptimizeUtils mBatteryOptimizeUtils;
@@ -68,6 +87,7 @@
         // Sets the default mode as MODE_RESTRICTED.
         mBatteryOptimizeUtils.mMode = AppOpsManager.MODE_IGNORED;
         mBatteryOptimizeUtils.mAllowListed = false;
+        doReturn(mMockUserManager).when(mContext).getSystemService(UserManager.class);
     }
 
     @Test
@@ -135,9 +155,7 @@
         mBatteryOptimizeUtils.setAppUsageState(MODE_RESTRICTED);
         TimeUnit.SECONDS.sleep(1);
 
-        verify(mMockBatteryUtils).setForceAppStandby(UID,
-                PACKAGE_NAME, AppOpsManager.MODE_IGNORED);
-        verify(mMockBackend).removeApp(PACKAGE_NAME);
+        verifySetAppOptimizationMode(AppOpsManager.MODE_IGNORED, /* allowListed */ false);
     }
 
     @Test
@@ -145,9 +163,7 @@
         mBatteryOptimizeUtils.setAppUsageState(MODE_UNRESTRICTED);
         TimeUnit.SECONDS.sleep(1);
 
-        verify(mMockBatteryUtils).setForceAppStandby(UID,
-                PACKAGE_NAME, AppOpsManager.MODE_ALLOWED);
-        verify(mMockBackend).addApp(PACKAGE_NAME);
+        verifySetAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ true);
     }
 
     @Test
@@ -155,9 +171,7 @@
         mBatteryOptimizeUtils.setAppUsageState(MODE_OPTIMIZED);
         TimeUnit.SECONDS.sleep(1);
 
-        verify(mMockBatteryUtils).setForceAppStandby(UID,
-                PACKAGE_NAME, AppOpsManager.MODE_ALLOWED);
-        verify(mMockBackend).removeApp(PACKAGE_NAME);
+        verifySetAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ false);
     }
 
     @Test
@@ -172,4 +186,148 @@
         verifyZeroInteractions(mMockBackend);
         verifyZeroInteractions(mMockBatteryUtils);
     }
+
+    @Test
+    public void testGetInstalledApplications_returnEmptyArray() {
+        assertTrue(BatteryOptimizeUtils.getInstalledApplications(mContext, mMockIPackageManager)
+                .isEmpty());
+    }
+
+    @Test
+    public void testGetInstalledApplications_returnNull() throws Exception {
+        final UserInfo userInfo =
+                new UserInfo(/*userId=*/ 0, /*userName=*/ "google", /*flag=*/ 0);
+        doReturn(Arrays.asList(userInfo)).when(mMockUserManager).getProfiles(anyInt());
+        doThrow(new RuntimeException())
+            .when(mMockIPackageManager)
+            .getInstalledApplications(anyLong(), anyInt());
+
+        assertNull(BatteryOptimizeUtils.getInstalledApplications(mContext, mMockIPackageManager));
+    }
+
+    @Test
+    public void testGetInstalledApplications_returnInstalledApps() throws Exception {
+        final UserInfo userInfo =
+                new UserInfo(/*userId=*/ 0, /*userName=*/ "google", /*flag=*/ 0);
+        doReturn(Arrays.asList(userInfo)).when(mMockUserManager).getProfiles(anyInt());
+
+        final ApplicationInfo applicationInfo1 = new ApplicationInfo();
+        applicationInfo1.enabled = true;
+        applicationInfo1.uid = 1;
+        final ApplicationInfo applicationInfo2 = new ApplicationInfo();
+        applicationInfo2.enabled = false;
+        applicationInfo2.uid = 2;
+        applicationInfo2.enabledSetting = PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER;
+        final ApplicationInfo applicationInfo3 = new ApplicationInfo();
+        applicationInfo3.enabled = false;
+        applicationInfo3.uid = 3;
+        applicationInfo3.enabledSetting = PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
+        final ApplicationInfo applicationInfo4 = new ApplicationInfo();
+        applicationInfo4.enabled = true;
+        applicationInfo4.uid = 4;
+        applicationInfo4.enabledSetting = PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER;
+        doReturn(new ParceledListSlice<ApplicationInfo>(
+            Arrays.asList(applicationInfo1, applicationInfo2, applicationInfo3, applicationInfo4)))
+            .when(mMockIPackageManager)
+            .getInstalledApplications(anyLong(), anyInt());
+
+        final ArraySet<ApplicationInfo> applications =
+                BatteryOptimizeUtils.getInstalledApplications(mContext, mMockIPackageManager);
+        assertThat(applications.size()).isEqualTo(3);
+        // applicationInfo3 should be filtered.
+        assertTrue(applications.contains(applicationInfo1));
+        assertTrue(applications.contains(applicationInfo2));
+        assertFalse(applications.contains(applicationInfo3));
+        assertTrue(applications.contains(applicationInfo4));
+    }
+
+    @Test
+    public void testResetAppOptimizationMode_Optimized_verifyAction() throws Exception {
+        runTestForResetWithMode(
+                AppOpsManager.MODE_ALLOWED, /* allowListed */ false,
+                /* isSystemOrDefaultApp */ false);
+
+        verifyZeroInteractions(mMockBatteryUtils);
+
+        final InOrder inOrder = inOrder(mMockBackend);
+        inOrder.verify(mMockBackend).refreshList();
+        inOrder.verify(mMockBackend).isAllowlisted(PACKAGE_NAME);
+        verifyNoMoreInteractions(mMockBackend);
+    }
+
+    @Test
+    public void testResetAppOptimizationMode_SystemOrDefault_verifyAction() throws Exception {
+        runTestForResetWithMode(
+                AppOpsManager.MODE_ALLOWED, /* allowListed */ true,
+                /* isSystemOrDefaultApp */ true);
+
+        verifyZeroInteractions(mMockBatteryUtils);
+
+        final InOrder inOrder = inOrder(mMockBackend);
+        inOrder.verify(mMockBackend).refreshList();
+        inOrder.verify(mMockBackend).isAllowlisted(PACKAGE_NAME);
+        inOrder.verify(mMockBackend).isSysAllowlisted(PACKAGE_NAME);
+        verifyNoMoreInteractions(mMockBackend);
+    }
+
+    @Test
+    public void testResetAppOptimizationMode_Restricted_verifyAction() throws Exception {
+        runTestForResetWithMode(
+                AppOpsManager.MODE_IGNORED, /* allowListed */ false,
+                /* isSystemOrDefaultApp */ false);
+
+        verifySetAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ false);
+    }
+
+    @Test
+    public void testResetAppOptimizationMode_Unrestricted_verifyAction() throws Exception {
+        runTestForResetWithMode(
+                AppOpsManager.MODE_ALLOWED, /* allowListed */ true,
+                /* isSystemOrDefaultApp */ false);
+
+        verifySetAppOptimizationMode(AppOpsManager.MODE_ALLOWED, /* allowListed */ false);
+    }
+
+    private void runTestForResetWithMode(
+            int appStandbyMode, boolean allowListed, boolean isSystemOrDefaultApp)
+            throws Exception {
+        final UserInfo userInfo =
+                new UserInfo(/*userId=*/ 0, /*userName=*/ "google", /*flag=*/ 0);
+        doReturn(Arrays.asList(userInfo)).when(mMockUserManager).getProfiles(anyInt());
+        final ApplicationInfo applicationInfo = new ApplicationInfo();
+        applicationInfo.uid = UID;
+        applicationInfo.packageName = PACKAGE_NAME;
+        applicationInfo.enabled = true;
+        doReturn(new ParceledListSlice<ApplicationInfo>(
+                Arrays.asList(applicationInfo)))
+                .when(mMockIPackageManager)
+                .getInstalledApplications(anyLong(), anyInt());
+
+        doReturn(appStandbyMode)
+                .when(mMockAppOpsManager)
+                .checkOpNoThrow(anyInt(), anyInt(), anyString());
+        doReturn(allowListed)
+                .when(mMockBackend)
+                .isAllowlisted(anyString());
+        doReturn(isSystemOrDefaultApp)
+                .when(mMockBackend)
+                .isSysAllowlisted(anyString());
+        doReturn(isSystemOrDefaultApp)
+                .when(mMockBackend)
+                .isDefaultActiveApp(anyString());
+
+        BatteryOptimizeUtils.resetAppOptimizationMode(
+                mContext, mMockIPackageManager, mMockAppOpsManager, mMockBackend,
+                mMockBatteryUtils);
+        TimeUnit.SECONDS.sleep(1);
+    }
+
+    private void verifySetAppOptimizationMode(int appStandbyMode, boolean allowListed) {
+        verify(mMockBatteryUtils).setForceAppStandby(UID, PACKAGE_NAME, appStandbyMode);
+        if (allowListed) {
+            verify(mMockBackend).addApp(PACKAGE_NAME);
+        } else {
+            verify(mMockBackend).removeApp(PACKAGE_NAME);
+        }
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java
index d4c4406..66a5e7f 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/BatteryDefenderDetectorTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/BatteryDefenderDetectorTest.java
index a1f9d1f..3309f59 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/BatteryDefenderDetectorTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/detectors/BatteryDefenderDetectorTest.java
@@ -41,7 +41,8 @@
 
         mBatteryInfo.discharging = false;
 
-        mBatteryDefenderDetector = new BatteryDefenderDetector(mBatteryInfo);
+        mBatteryDefenderDetector = new BatteryDefenderDetector(
+            mBatteryInfo, /* extraDefend= */ false);
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTipTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTipTest.java
index 8660c79..c1ec7c6 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTipTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTipTest.java
@@ -17,13 +17,25 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
 
 import android.app.settings.SettingsEnums;
 import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.os.BatteryManager;
+import android.util.Log;
+
+import androidx.preference.Preference;
 
 import com.android.settings.R;
 import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.widget.CardPreference;
 import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
 
 import org.junit.Before;
@@ -33,6 +45,7 @@
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
+import org.robolectric.shadows.ShadowLog;
 
 @RunWith(RobolectricTestRunner.class)
 public class BatteryDefenderTipTest {
@@ -43,6 +56,8 @@
     private MetricsFeatureProvider mMetricsFeatureProvider;
 
     @Mock private BatteryTip mBatteryTip;
+    @Mock private Preference mPreference;
+    @Mock private CardPreference mCardPreference;
 
     @Before
     public void setUp() {
@@ -52,6 +67,9 @@
         mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
         mContext = RuntimeEnvironment.application;
         mBatteryDefenderTip = new BatteryDefenderTip(BatteryTip.StateType.NEW);
+
+        when(mPreference.getContext()).thenReturn(mContext);
+        when(mCardPreference.getContext()).thenReturn(mContext);
     }
 
     @Test
@@ -61,12 +79,20 @@
     }
 
     @Test
-    public void getSummary_showSummary() {
+    public void getSummary_notExtraDefended_showNonExtraDefendedSummary() {
         assertThat(mBatteryDefenderTip.getSummary(mContext))
                 .isEqualTo(mContext.getString(R.string.battery_tip_limited_temporarily_summary));
     }
 
     @Test
+    public void getSummary_extraDefended_showExtraDefendedSummary() {
+        BatteryDefenderTip defenderTip = new BatteryDefenderTip(
+                BatteryTip.StateType.NEW, /* extraDefended= */ true);
+
+        assertThat(defenderTip.getSummary(mContext).toString()).isEqualTo("12%");
+    }
+
+    @Test
     public void getIcon_showIcon() {
         assertThat(mBatteryDefenderTip.getIconId())
                 .isEqualTo(R.drawable.ic_battery_status_good_24dp);
@@ -80,4 +106,94 @@
         verify(mMetricsFeatureProvider).action(mContext,
                 SettingsEnums.ACTION_BATTERY_DEFENDER_TIP, mBatteryTip.mState);
     }
+
+    @Test
+    public void updatePreference_castFail_logErrorMessage() {
+        mBatteryDefenderTip.updatePreference(mPreference);
+
+        assertThat(getLastErrorLog()).isEqualTo("cast Preference to CardPreference failed");
+    }
+
+    @Test
+    public void updatePreference_shouldSetPrimaryButtonText() {
+        String expectedText = mContext.getString(R.string.battery_tip_charge_to_full_button);
+
+        mBatteryDefenderTip.updatePreference(mCardPreference);
+
+        verify(mCardPreference).setPrimaryButtonText(expectedText);
+    }
+
+    @Test
+    public void updatePreference_shouldSetSecondaryButtonText() {
+        String expected = mContext.getString(R.string.see_more);
+
+        mBatteryDefenderTip.updatePreference(mCardPreference);
+
+        verify(mCardPreference).setSecondaryButtonText(expected);
+    }
+
+    @Test
+    public void updatePreference_shouldSetSecondaryButtonVisible() {
+        mBatteryDefenderTip.updatePreference(mCardPreference);
+
+        verify(mCardPreference).setSecondaryButtonVisible(true);
+    }
+
+    @Test
+    public void updatePreference_whenCharging_setPrimaryButtonVisibleToBeTrue() {
+        fakeDeviceIsCharging(true);
+
+        mBatteryDefenderTip.updatePreference(mCardPreference);
+
+        verify(mCardPreference).setPrimaryButtonVisible(true);
+    }
+
+    @Test
+    public void updatePreference_whenNotCharging_setPrimaryButtonVisibleToBeFalse() {
+        fakeDeviceIsCharging(false);
+
+        mBatteryDefenderTip.updatePreference(mCardPreference);
+
+        verify(mCardPreference).setPrimaryButtonVisible(false);
+    }
+
+    @Test
+    public void updatePreference_whenGetChargingStatusFailed_setPrimaryButtonVisibleToBeFalse() {
+        fakeGetChargingStatusFailed();
+
+        mBatteryDefenderTip.updatePreference(mCardPreference);
+
+        verify(mCardPreference).setPrimaryButtonVisible(false);
+    }
+
+    private void fakeDeviceIsCharging(boolean charging) {
+        int charged = charging ? 1 : 0; // 1 means charging, 0:not charging
+        Intent batteryChangedIntent = new Intent(Intent.ACTION_BATTERY_CHANGED);
+        batteryChangedIntent.putExtra(BatteryManager.EXTRA_PLUGGED, charged);
+
+        Context mockContext = mock(Context.class);
+        when(mockContext.getString(anyInt())).thenReturn("fake_string");
+        when(mCardPreference.getContext()).thenReturn(mockContext);
+        when(mockContext.registerReceiver(eq(null), any(IntentFilter.class)))
+                .thenReturn(batteryChangedIntent);
+    }
+
+    private void fakeGetChargingStatusFailed() {
+        Context mockContext = mock(Context.class);
+        when(mockContext.getString(anyInt())).thenReturn("fake_string");
+        when(mCardPreference.getContext()).thenReturn(mockContext);
+        when(mockContext.registerReceiver(eq(null), any(IntentFilter.class))).thenReturn(null);
+    }
+
+    private String getLastErrorLog() {
+        return ShadowLog.getLogsForTag(BatteryDefenderTip.class.getSimpleName()).stream()
+                .filter(log -> log.type == Log.ERROR)
+                .reduce((first, second) -> second)
+                .orElse(createErrorLog("No Error Log"))
+                .msg;
+    }
+
+    private ShadowLog.LogItem createErrorLog(String msg) {
+        return new ShadowLog.LogItem(Log.ERROR, "tag", msg, null);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryAppListPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryAppListPreferenceControllerTest.java
similarity index 95%
rename from tests/robotests/src/com/android/settings/fuelgauge/BatteryAppListPreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryAppListPreferenceControllerTest.java
index 46773c9..da397fd 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryAppListPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryAppListPreferenceControllerTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -35,6 +35,7 @@
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
 import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
@@ -81,9 +82,9 @@
         when(mContext.getPackageManager()).thenReturn(mPackageManager);
         when(mContext.getApplicationContext()).thenReturn(mContext);
         when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
-        when(mUserManager.getProfileIdsWithDisabled(anyInt())).thenReturn(new int[] {});
+        when(mUserManager.getProfileIdsWithDisabled(anyInt())).thenReturn(new int[]{});
         when(mFeatureFactory.powerUsageFeatureProvider.getHideApplicationSummary(mContext))
-                .thenReturn(new String[] {"com.android.googlequicksearchbox"});
+                .thenReturn(new String[]{"com.android.googlequicksearchbox"});
 
         mPreference = new PowerGaugePreference(mContext);
 
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceControllerTest.java
new file mode 100644
index 0000000..016287e
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceControllerTest.java
@@ -0,0 +1,684 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.atLeastOnce;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.reset;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+
+import android.app.settings.SettingsEnums;
+import android.content.ContentValues;
+import android.content.Context;
+import android.content.res.Resources;
+import android.graphics.drawable.Drawable;
+import android.os.Bundle;
+import android.os.LocaleList;
+import android.text.format.DateUtils;
+import android.view.View;
+import android.widget.LinearLayout;
+
+import androidx.preference.Preference;
+import androidx.preference.PreferenceCategory;
+import androidx.preference.PreferenceGroup;
+
+import com.android.settings.SettingsActivity;
+import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.RuntimeEnvironment;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.TimeZone;
+
+@RunWith(RobolectricTestRunner.class)
+public final class BatteryChartPreferenceControllerTest {
+    private static final String PREF_KEY = "pref_key";
+    private static final String PREF_SUMMARY = "fake preference summary";
+
+    @Mock
+    private InstrumentedPreferenceFragment mFragment;
+    @Mock
+    private SettingsActivity mSettingsActivity;
+    @Mock
+    private PreferenceGroup mAppListGroup;
+    @Mock
+    private Drawable mDrawable;
+    @Mock
+    private BatteryHistEntry mBatteryHistEntry;
+    @Mock
+    private BatteryChartView mDailyChartView;
+    @Mock
+    private BatteryChartView mHourlyChartView;
+    @Mock
+    private PowerGaugePreference mPowerGaugePreference;
+    @Mock
+    private BatteryUtils mBatteryUtils;
+    @Mock
+    private LinearLayout.LayoutParams mLayoutParams;
+
+    private Context mContext;
+    private FakeFeatureFactory mFeatureFactory;
+    private BatteryDiffEntry mBatteryDiffEntry;
+    private MetricsFeatureProvider mMetricsFeatureProvider;
+    private BatteryChartPreferenceController mBatteryChartPreferenceController;
+
+    @Before
+    public void setUp() {
+        MockitoAnnotations.initMocks(this);
+        Locale.setDefault(new Locale("en_US"));
+        org.robolectric.shadows.ShadowSettings.set24HourTimeFormat(false);
+        TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+        mFeatureFactory = FakeFeatureFactory.setupForTest();
+        mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
+        mContext = spy(RuntimeEnvironment.application);
+        final Resources resources = spy(mContext.getResources());
+        resources.getConfiguration().setLocales(new LocaleList(new Locale("en_US")));
+        doReturn(resources).when(mContext).getResources();
+        doReturn(new String[]{"com.android.googlequicksearchbox"})
+                .when(mFeatureFactory.powerUsageFeatureProvider)
+                .getHideApplicationSummary(mContext);
+        doReturn(new String[]{"com.android.gms.persistent"})
+                .when(mFeatureFactory.powerUsageFeatureProvider)
+                .getHideApplicationEntries(mContext);
+        doReturn(mLayoutParams).when(mDailyChartView).getLayoutParams();
+        mBatteryChartPreferenceController = createController();
+        mBatteryChartPreferenceController.mPrefContext = mContext;
+        mBatteryChartPreferenceController.mAppListPrefGroup = mAppListGroup;
+        mBatteryChartPreferenceController.mDailyChartView = mDailyChartView;
+        mBatteryChartPreferenceController.mHourlyChartView = mHourlyChartView;
+        mBatteryDiffEntry = new BatteryDiffEntry(
+                mContext,
+                /*foregroundUsageTimeInMs=*/ 1,
+                /*backgroundUsageTimeInMs=*/ 2,
+                /*consumePower=*/ 3,
+                mBatteryHistEntry);
+        mBatteryDiffEntry = spy(mBatteryDiffEntry);
+        // Adds fake testing data.
+        BatteryDiffEntry.sResourceCache.put(
+                "fakeBatteryDiffEntryKey",
+                new BatteryEntry.NameAndIcon("fakeName", /*icon=*/ null, /*iconId=*/ 1));
+    }
+
+    @Test
+    public void onDestroy_activityIsChanging_clearBatteryEntryCache() {
+        doReturn(true).when(mSettingsActivity).isChangingConfigurations();
+        // Ensures the testing environment is correct.
+        assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
+
+        mBatteryChartPreferenceController.onDestroy();
+        assertThat(BatteryDiffEntry.sResourceCache).isEmpty();
+    }
+
+    @Test
+    public void onDestroy_activityIsNotChanging_notClearBatteryEntryCache() {
+        doReturn(false).when(mSettingsActivity).isChangingConfigurations();
+        // Ensures the testing environment is correct.
+        assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
+
+        mBatteryChartPreferenceController.onDestroy();
+        assertThat(BatteryDiffEntry.sResourceCache).isNotEmpty();
+    }
+
+    @Test
+    public void onDestroy_clearPreferenceCache() {
+        // Ensures the testing environment is correct.
+        mBatteryChartPreferenceController.mPreferenceCache.put(
+                PREF_KEY, mPowerGaugePreference);
+        assertThat(mBatteryChartPreferenceController.mPreferenceCache).hasSize(1);
+
+        mBatteryChartPreferenceController.onDestroy();
+        // Verifies the result after onDestroy.
+        assertThat(mBatteryChartPreferenceController.mPreferenceCache).isEmpty();
+    }
+
+    @Test
+    public void onDestroy_removeAllPreferenceFromPreferenceGroup() {
+        mBatteryChartPreferenceController.onDestroy();
+        verify(mAppListGroup).removeAll();
+    }
+
+    @Test
+    public void setBatteryChartViewModel_6Hours() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(6));
+
+        verify(mDailyChartView, atLeastOnce()).setVisibility(View.GONE);
+        verify(mHourlyChartView, atLeastOnce()).setVisibility(View.VISIBLE);
+        verify(mHourlyChartView).setViewModel(new BatteryChartViewModel(
+                List.of(100, 97, 95),
+                List.of("8 am", "10 am", "12 pm"),
+                BatteryChartViewModel.AxisLabelPosition.BETWEEN_TRAPEZOIDS));
+    }
+
+    @Test
+    public void setBatteryChartViewModel_60Hours() {
+        BatteryChartViewModel expectedDailyViewModel = new BatteryChartViewModel(
+                List.of(100, 83, 59, 41),
+                List.of("Sat", "Sun", "Mon", "Mon"),
+                BatteryChartViewModel.AxisLabelPosition.CENTER_OF_TRAPEZOIDS);
+
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(60));
+
+        verify(mDailyChartView, atLeastOnce()).setVisibility(View.VISIBLE);
+        verify(mHourlyChartView, atLeastOnce()).setVisibility(View.GONE);
+        verify(mDailyChartView).setViewModel(expectedDailyViewModel);
+
+        reset(mDailyChartView);
+        reset(mHourlyChartView);
+        doReturn(mLayoutParams).when(mDailyChartView).getLayoutParams();
+        mBatteryChartPreferenceController.mDailyChartIndex = 0;
+        mBatteryChartPreferenceController.refreshUi();
+        verify(mDailyChartView).setVisibility(View.VISIBLE);
+        verify(mHourlyChartView).setVisibility(View.VISIBLE);
+
+        expectedDailyViewModel.setSelectedIndex(0);
+        verify(mDailyChartView).setViewModel(expectedDailyViewModel);
+        verify(mHourlyChartView).setViewModel(new BatteryChartViewModel(
+                List.of(100, 97, 95, 93, 91, 89, 87, 85, 83),
+                List.of("8 am", "10 am", "12 pm", "2 pm", "4 pm", "6 pm", "8 pm", "10 pm",
+                        "12 am"),
+                BatteryChartViewModel.AxisLabelPosition.BETWEEN_TRAPEZOIDS));
+
+        reset(mDailyChartView);
+        reset(mHourlyChartView);
+        doReturn(mLayoutParams).when(mDailyChartView).getLayoutParams();
+        mBatteryChartPreferenceController.mDailyChartIndex = 1;
+        mBatteryChartPreferenceController.mHourlyChartIndex = 6;
+        mBatteryChartPreferenceController.refreshUi();
+        verify(mDailyChartView).setVisibility(View.VISIBLE);
+        verify(mHourlyChartView).setVisibility(View.VISIBLE);
+        expectedDailyViewModel.setSelectedIndex(1);
+        verify(mDailyChartView).setViewModel(expectedDailyViewModel);
+        BatteryChartViewModel expectedHourlyViewModel = new BatteryChartViewModel(
+                List.of(83, 81, 79, 77, 75, 73, 71, 69, 67, 65, 63, 61, 59),
+                List.of("12 am", "2 am", "4 am", "6 am", "8 am", "10 am", "12 pm", "2 pm",
+                        "4 pm", "6 pm", "8 pm", "10 pm", "12 am"),
+                BatteryChartViewModel.AxisLabelPosition.BETWEEN_TRAPEZOIDS);
+        expectedHourlyViewModel.setSelectedIndex(6);
+        verify(mHourlyChartView).setViewModel(expectedHourlyViewModel);
+
+        reset(mDailyChartView);
+        reset(mHourlyChartView);
+        doReturn(mLayoutParams).when(mDailyChartView).getLayoutParams();
+        mBatteryChartPreferenceController.mDailyChartIndex = 2;
+        mBatteryChartPreferenceController.mHourlyChartIndex =
+                BatteryChartViewModel.SELECTED_INDEX_ALL;
+        mBatteryChartPreferenceController.refreshUi();
+        verify(mDailyChartView).setVisibility(View.VISIBLE);
+        verify(mHourlyChartView).setVisibility(View.VISIBLE);
+        expectedDailyViewModel.setSelectedIndex(2);
+        verify(mDailyChartView).setViewModel(expectedDailyViewModel);
+        verify(mHourlyChartView).setViewModel(new BatteryChartViewModel(
+                List.of(59, 57, 55, 53, 51, 49, 47, 45, 43, 41),
+                List.of("12 am", "2 am", "4 am", "6 am", "8 am", "10 am", "12 pm", "2 pm",
+                        "4 pm", "6 pm"),
+                BatteryChartViewModel.AxisLabelPosition.BETWEEN_TRAPEZOIDS));
+    }
+
+    @Test
+    public void refreshUi_normalCase_returnTrue() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(6));
+        assertThat(mBatteryChartPreferenceController.refreshUi()).isTrue();
+    }
+
+    @Test
+    public void refreshUi_batteryIndexedMapIsNull_ignoreRefresh() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(null);
+        assertThat(mBatteryChartPreferenceController.refreshUi()).isFalse();
+    }
+
+    @Test
+    public void refreshUi_dailyChartViewIsNull_ignoreRefresh() {
+        mBatteryChartPreferenceController.mDailyChartView = null;
+        assertThat(mBatteryChartPreferenceController.refreshUi()).isFalse();
+    }
+
+    @Test
+    public void refreshUi_hourlyChartViewIsNull_ignoreRefresh() {
+        mBatteryChartPreferenceController.mHourlyChartView = null;
+        assertThat(mBatteryChartPreferenceController.refreshUi()).isFalse();
+    }
+
+    @Test
+    public void removeAndCacheAllPrefs_emptyContent_ignoreRemoveAll() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(6));
+        mBatteryChartPreferenceController.mBatteryUsageMap = createBatteryUsageMap();
+        doReturn(0).when(mAppListGroup).getPreferenceCount();
+
+        mBatteryChartPreferenceController.refreshUi();
+        verify(mAppListGroup, never()).removeAll();
+    }
+
+    @Test
+    public void removeAndCacheAllPrefs_buildCacheAndRemoveAllPreference() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(6));
+        mBatteryChartPreferenceController.mBatteryUsageMap = createBatteryUsageMap();
+        doReturn(1).when(mAppListGroup).getPreferenceCount();
+        doReturn(mPowerGaugePreference).when(mAppListGroup).getPreference(0);
+        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
+        doReturn(PREF_KEY).when(mPowerGaugePreference).getKey();
+        doReturn(mPowerGaugePreference).when(mAppListGroup).findPreference(PREF_KEY);
+        // Ensures the testing data is correct.
+        assertThat(mBatteryChartPreferenceController.mPreferenceCache).isEmpty();
+
+        mBatteryChartPreferenceController.refreshUi();
+
+        assertThat(mBatteryChartPreferenceController.mPreferenceCache.get(PREF_KEY))
+                .isEqualTo(mPowerGaugePreference);
+        verify(mAppListGroup).removeAll();
+    }
+
+    @Test
+    public void addPreferenceToScreen_emptyContent_ignoreAddPreference() {
+        mBatteryChartPreferenceController.addPreferenceToScreen(
+                new ArrayList<BatteryDiffEntry>());
+        verify(mAppListGroup, never()).addPreference(any());
+    }
+
+    @Test
+    public void addPreferenceToScreen_addPreferenceIntoScreen() {
+        final String appLabel = "fake app label";
+        doReturn(1).when(mAppListGroup).getPreferenceCount();
+        doReturn(mDrawable).when(mBatteryDiffEntry).getAppIcon();
+        doReturn(appLabel).when(mBatteryDiffEntry).getAppLabel();
+        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
+        doReturn(null).when(mAppListGroup).findPreference(PREF_KEY);
+        doReturn(false).when(mBatteryDiffEntry).validForRestriction();
+
+        mBatteryChartPreferenceController.addPreferenceToScreen(
+                Arrays.asList(mBatteryDiffEntry));
+
+        // Verifies the preference cache.
+        final PowerGaugePreference pref =
+                (PowerGaugePreference) mBatteryChartPreferenceController.mPreferenceCache
+                        .get(PREF_KEY);
+        assertThat(pref).isNotNull();
+        // Verifies the added preference configuration.
+        verify(mAppListGroup).addPreference(pref);
+        assertThat(pref.getKey()).isEqualTo(PREF_KEY);
+        assertThat(pref.getTitle()).isEqualTo(appLabel);
+        assertThat(pref.getIcon()).isEqualTo(mDrawable);
+        assertThat(pref.getOrder()).isEqualTo(1);
+        assertThat(pref.getBatteryDiffEntry()).isSameInstanceAs(mBatteryDiffEntry);
+        assertThat(pref.isSingleLineTitle()).isTrue();
+        assertThat(pref.isEnabled()).isFalse();
+    }
+
+    @Test
+    public void addPreferenceToScreen_alreadyInScreen_notAddPreferenceAgain() {
+        final String appLabel = "fake app label";
+        doReturn(1).when(mAppListGroup).getPreferenceCount();
+        doReturn(mDrawable).when(mBatteryDiffEntry).getAppIcon();
+        doReturn(appLabel).when(mBatteryDiffEntry).getAppLabel();
+        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
+        doReturn(mPowerGaugePreference).when(mAppListGroup).findPreference(PREF_KEY);
+
+        mBatteryChartPreferenceController.addPreferenceToScreen(
+                Arrays.asList(mBatteryDiffEntry));
+
+        verify(mAppListGroup, never()).addPreference(any());
+    }
+
+    @Test
+    public void handlePreferenceTreeClick_notPowerGaugePreference_returnFalse() {
+        assertThat(mBatteryChartPreferenceController.handlePreferenceTreeClick(mAppListGroup))
+                .isFalse();
+
+        verify(mMetricsFeatureProvider, never())
+                .action(mContext, SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM);
+        verify(mMetricsFeatureProvider, never())
+                .action(mContext, SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM);
+    }
+
+    @Test
+    public void handlePreferenceTreeClick_forAppEntry_returnTrue() {
+        doReturn(false).when(mBatteryHistEntry).isAppEntry();
+        doReturn(mBatteryDiffEntry).when(mPowerGaugePreference).getBatteryDiffEntry();
+
+        assertThat(mBatteryChartPreferenceController.handlePreferenceTreeClick(
+                mPowerGaugePreference)).isTrue();
+        verify(mMetricsFeatureProvider)
+                .action(
+                        SettingsEnums.OPEN_BATTERY_USAGE,
+                        SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM,
+                        SettingsEnums.OPEN_BATTERY_USAGE,
+                        /* package name */ "none",
+                        /* percentage of total */ 0);
+    }
+
+    @Test
+    public void handlePreferenceTreeClick_forSystemEntry_returnTrue() {
+        mBatteryChartPreferenceController.mBatteryUtils = mBatteryUtils;
+        doReturn(true).when(mBatteryHistEntry).isAppEntry();
+        doReturn(mBatteryDiffEntry).when(mPowerGaugePreference).getBatteryDiffEntry();
+
+        assertThat(mBatteryChartPreferenceController.handlePreferenceTreeClick(
+                mPowerGaugePreference)).isTrue();
+        verify(mMetricsFeatureProvider)
+                .action(
+                        SettingsEnums.OPEN_BATTERY_USAGE,
+                        SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM,
+                        SettingsEnums.OPEN_BATTERY_USAGE,
+                        /* package name */ "none",
+                        /* percentage of total */ 0);
+    }
+
+    @Test
+    public void setPreferenceSummary_setNullContentIfTotalUsageTimeIsZero() {
+        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
+        pref.setSummary(PREF_SUMMARY);
+
+        mBatteryChartPreferenceController.setPreferenceSummary(
+                pref, createBatteryDiffEntry(
+                        /*foregroundUsageTimeInMs=*/ 0,
+                        /*backgroundUsageTimeInMs=*/ 0));
+        assertThat(pref.getSummary()).isNull();
+    }
+
+    @Test
+    public void setPreferenceSummary_setBackgroundUsageTimeOnly() {
+        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
+        pref.setSummary(PREF_SUMMARY);
+
+        mBatteryChartPreferenceController.setPreferenceSummary(
+                pref, createBatteryDiffEntry(
+                        /*foregroundUsageTimeInMs=*/ 0,
+                        /*backgroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS));
+        assertThat(pref.getSummary()).isEqualTo("Background: 1 min");
+    }
+
+    @Test
+    public void setPreferenceSummary_setTotalUsageTimeLessThanAMinute() {
+        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
+        pref.setSummary(PREF_SUMMARY);
+
+        mBatteryChartPreferenceController.setPreferenceSummary(
+                pref, createBatteryDiffEntry(
+                        /*foregroundUsageTimeInMs=*/ 100,
+                        /*backgroundUsageTimeInMs=*/ 200));
+        assertThat(pref.getSummary()).isEqualTo("Total: less than a min");
+    }
+
+    @Test
+    public void setPreferenceSummary_setTotalTimeIfBackgroundTimeLessThanAMinute() {
+        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
+        pref.setSummary(PREF_SUMMARY);
+
+        mBatteryChartPreferenceController.setPreferenceSummary(
+                pref, createBatteryDiffEntry(
+                        /*foregroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS,
+                        /*backgroundUsageTimeInMs=*/ 200));
+        assertThat(pref.getSummary())
+                .isEqualTo("Total: 1 min\nBackground: less than a min");
+    }
+
+    @Test
+    public void setPreferenceSummary_setTotalAndBackgroundUsageTime() {
+        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
+        pref.setSummary(PREF_SUMMARY);
+
+        mBatteryChartPreferenceController.setPreferenceSummary(
+                pref, createBatteryDiffEntry(
+                        /*foregroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS,
+                        /*backgroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS));
+        assertThat(pref.getSummary()).isEqualTo("Total: 2 min\nBackground: 1 min");
+    }
+
+    @Test
+    public void setPreferenceSummary_notAllowShownPackage_setSummayAsNull() {
+        final PowerGaugePreference pref = new PowerGaugePreference(mContext);
+        pref.setSummary(PREF_SUMMARY);
+        final BatteryDiffEntry batteryDiffEntry =
+                spy(createBatteryDiffEntry(
+                        /*foregroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS,
+                        /*backgroundUsageTimeInMs=*/ DateUtils.MINUTE_IN_MILLIS));
+        doReturn("com.android.googlequicksearchbox").when(batteryDiffEntry)
+                .getPackageName();
+
+        mBatteryChartPreferenceController.setPreferenceSummary(pref, batteryDiffEntry);
+        assertThat(pref.getSummary()).isNull();
+    }
+
+    @Test
+    public void onExpand_expandedIsTrue_addSystemEntriesToPreferenceGroup() {
+        doReturn(1).when(mAppListGroup).getPreferenceCount();
+        mBatteryChartPreferenceController.mBatteryUsageMap = createBatteryUsageMap();
+        doReturn("label").when(mBatteryDiffEntry).getAppLabel();
+        doReturn(mDrawable).when(mBatteryDiffEntry).getAppIcon();
+        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
+
+        mBatteryChartPreferenceController.onExpand(/*isExpanded=*/ true);
+
+        final ArgumentCaptor<Preference> captor = ArgumentCaptor.forClass(Preference.class);
+        verify(mAppListGroup).addPreference(captor.capture());
+        // Verifies the added preference.
+        assertThat(captor.getValue().getKey()).isEqualTo(PREF_KEY);
+        verify(mMetricsFeatureProvider)
+                .action(
+                        mContext,
+                        SettingsEnums.ACTION_BATTERY_USAGE_EXPAND_ITEM,
+                        true /*isExpanded*/);
+    }
+
+    @Test
+    public void onExpand_expandedIsFalse_removeSystemEntriesFromPreferenceGroup() {
+        doReturn(PREF_KEY).when(mBatteryHistEntry).getKey();
+        doReturn(mPowerGaugePreference).when(mAppListGroup).findPreference(PREF_KEY);
+        mBatteryChartPreferenceController.mBatteryUsageMap = createBatteryUsageMap();
+        // Verifies the cache is empty first.
+        assertThat(mBatteryChartPreferenceController.mPreferenceCache).isEmpty();
+
+        mBatteryChartPreferenceController.onExpand(/*isExpanded=*/ false);
+
+        verify(mAppListGroup).findPreference(PREF_KEY);
+        verify(mAppListGroup).removePreference(mPowerGaugePreference);
+        assertThat(mBatteryChartPreferenceController.mPreferenceCache).hasSize(1);
+        verify(mMetricsFeatureProvider)
+                .action(
+                        mContext,
+                        SettingsEnums.ACTION_BATTERY_USAGE_EXPAND_ITEM,
+                        false /*isExpanded*/);
+    }
+
+    @Test
+    public void refreshCategoryTitle_setLastFullChargeIntoBothTitleTextView() {
+        mBatteryChartPreferenceController = createController();
+        mBatteryChartPreferenceController.mAppListPrefGroup =
+                spy(new PreferenceCategory(mContext));
+        mBatteryChartPreferenceController.mExpandDividerPreference =
+                spy(new ExpandDividerPreference(mContext));
+        // Simulates select all condition.
+        mBatteryChartPreferenceController.mDailyChartIndex =
+                BatteryChartViewModel.SELECTED_INDEX_ALL;
+        mBatteryChartPreferenceController.mHourlyChartIndex =
+                BatteryChartViewModel.SELECTED_INDEX_ALL;
+
+        mBatteryChartPreferenceController.refreshCategoryTitle();
+
+        ArgumentCaptor<String> captor = ArgumentCaptor.forClass(String.class);
+        // Verifies the title in the preference group.
+        verify(mBatteryChartPreferenceController.mAppListPrefGroup)
+                .setTitle(captor.capture());
+        assertThat(captor.getValue())
+                .isEqualTo("App usage since last full charge");
+        // Verifies the title in the expandable divider.
+        captor = ArgumentCaptor.forClass(String.class);
+        verify(mBatteryChartPreferenceController.mExpandDividerPreference)
+                .setTitle(captor.capture());
+        assertThat(captor.getValue())
+                .isEqualTo("System usage since last full charge");
+    }
+
+    @Test
+    public void selectedSlotText_selectAllDaysAllHours_returnNull() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(60));
+        mBatteryChartPreferenceController.mDailyChartIndex =
+                BatteryChartViewModel.SELECTED_INDEX_ALL;
+        mBatteryChartPreferenceController.mHourlyChartIndex =
+                BatteryChartViewModel.SELECTED_INDEX_ALL;
+
+        assertThat(mBatteryChartPreferenceController.getSlotInformation()).isEqualTo(null);
+    }
+
+    @Test
+    public void selectedSlotText_onlyOneDayDataSelectAllHours_returnNull() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(6));
+        mBatteryChartPreferenceController.mDailyChartIndex = 0;
+        mBatteryChartPreferenceController.mHourlyChartIndex =
+                BatteryChartViewModel.SELECTED_INDEX_ALL;
+
+        assertThat(mBatteryChartPreferenceController.getSlotInformation()).isEqualTo(null);
+    }
+
+    @Test
+    public void selectedSlotText_selectADayAllHours_onlyDayText() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(60));
+        mBatteryChartPreferenceController.mDailyChartIndex = 1;
+        mBatteryChartPreferenceController.mHourlyChartIndex =
+                BatteryChartViewModel.SELECTED_INDEX_ALL;
+
+        assertThat(mBatteryChartPreferenceController.getSlotInformation()).isEqualTo("Sunday");
+    }
+
+    @Test
+    public void selectedSlotText_onlyOneDayDataSelectAnHour_onlyHourText() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(6));
+        mBatteryChartPreferenceController.mDailyChartIndex = 0;
+        mBatteryChartPreferenceController.mHourlyChartIndex = 1;
+
+        assertThat(mBatteryChartPreferenceController.getSlotInformation()).isEqualTo(
+                "10 am - 12 pm");
+    }
+
+    @Test
+    public void selectedSlotText_SelectADayAnHour_dayAndHourText() {
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(60));
+        mBatteryChartPreferenceController.mDailyChartIndex = 1;
+        mBatteryChartPreferenceController.mHourlyChartIndex = 8;
+
+        assertThat(mBatteryChartPreferenceController.getSlotInformation()).isEqualTo(
+                "Sunday 4 pm - 6 pm");
+    }
+
+    @Test
+    public void onSaveInstanceState_restoreSelectedIndexAndExpandState() {
+        final int expectedDailyIndex = 1;
+        final int expectedHourlyIndex = 2;
+        final boolean isExpanded = true;
+        final Bundle bundle = new Bundle();
+        mBatteryChartPreferenceController.mDailyChartIndex = expectedDailyIndex;
+        mBatteryChartPreferenceController.mHourlyChartIndex = expectedHourlyIndex;
+        mBatteryChartPreferenceController.mIsExpanded = isExpanded;
+        mBatteryChartPreferenceController.onSaveInstanceState(bundle);
+        // Replaces the original controller with other values.
+        mBatteryChartPreferenceController.mDailyChartIndex = -1;
+        mBatteryChartPreferenceController.mHourlyChartIndex = -1;
+        mBatteryChartPreferenceController.mIsExpanded = false;
+
+        mBatteryChartPreferenceController.onCreate(bundle);
+        mBatteryChartPreferenceController.setBatteryHistoryMap(createBatteryHistoryMap(25));
+
+        assertThat(mBatteryChartPreferenceController.mDailyChartIndex)
+                .isEqualTo(expectedDailyIndex);
+        assertThat(mBatteryChartPreferenceController.mHourlyChartIndex)
+                .isEqualTo(expectedHourlyIndex);
+        assertThat(mBatteryChartPreferenceController.mIsExpanded).isTrue();
+    }
+
+    @Test
+    public void isValidToShowSummary_returnExpectedResult() {
+        assertThat(mBatteryChartPreferenceController
+                .isValidToShowSummary("com.google.android.apps.scone"))
+                .isTrue();
+
+        // Verifies the item which is defined in the array list.
+        assertThat(mBatteryChartPreferenceController
+                .isValidToShowSummary("com.android.googlequicksearchbox"))
+                .isFalse();
+    }
+
+    private static Long generateTimestamp(int index) {
+        // "2021-04-23 07:00:00 UTC" + index hours
+        return 1619247600000L + index * DateUtils.HOUR_IN_MILLIS;
+    }
+
+    private static Map<Long, Map<String, BatteryHistEntry>> createBatteryHistoryMap(
+            int numOfHours) {
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
+        for (int index = 0; index < numOfHours; index++) {
+            final ContentValues values = new ContentValues();
+            values.put("batteryLevel", Integer.valueOf(100 - index));
+            values.put("consumePower", Integer.valueOf(100 - index));
+            final BatteryHistEntry entry = new BatteryHistEntry(values);
+            final Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+            entryMap.put("fake_entry_key" + index, entry);
+            batteryHistoryMap.put(generateTimestamp(index), entryMap);
+        }
+        return batteryHistoryMap;
+    }
+
+    private Map<Integer, Map<Integer, BatteryDiffData>> createBatteryUsageMap() {
+        final int selectedAll = BatteryChartViewModel.SELECTED_INDEX_ALL;
+        return Map.of(
+                selectedAll, Map.of(
+                        selectedAll, new BatteryDiffData(
+                                Arrays.asList(mBatteryDiffEntry),
+                                Arrays.asList(mBatteryDiffEntry))),
+                0, Map.of(
+                        selectedAll, new BatteryDiffData(
+                                Arrays.asList(mBatteryDiffEntry),
+                                Arrays.asList(mBatteryDiffEntry)),
+                        0, new BatteryDiffData(
+                                Arrays.asList(mBatteryDiffEntry),
+                                Arrays.asList(mBatteryDiffEntry))));
+    }
+
+    private BatteryDiffEntry createBatteryDiffEntry(
+            long foregroundUsageTimeInMs, long backgroundUsageTimeInMs) {
+        return new BatteryDiffEntry(
+                mContext, foregroundUsageTimeInMs, backgroundUsageTimeInMs,
+                /*consumePower=*/ 0, mBatteryHistEntry);
+    }
+
+    private BatteryChartPreferenceController createController() {
+        final BatteryChartPreferenceController controller =
+                new BatteryChartPreferenceController(
+                        mContext, "app_list", /*lifecycle=*/ null,
+                        mSettingsActivity, mFragment);
+        controller.mPrefContext = mContext;
+        return controller;
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryChartViewTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryChartViewTest.java
new file mode 100644
index 0000000..8a43087
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryChartViewTest.java
@@ -0,0 +1,245 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.fuelgauge.batteryusage;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.accessibilityservice.AccessibilityServiceInfo;
+import android.content.Context;
+import android.os.LocaleList;
+import android.view.View;
+import android.view.accessibility.AccessibilityManager;
+
+import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
+import com.android.settings.testutils.FakeFeatureFactory;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.RuntimeEnvironment;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Locale;
+
+@RunWith(RobolectricTestRunner.class)
+public final class BatteryChartViewTest {
+
+    private Context mContext;
+    private BatteryChartView mBatteryChartView;
+    private FakeFeatureFactory mFeatureFactory;
+    private PowerUsageFeatureProvider mPowerUsageFeatureProvider;
+
+    @Mock
+    private AccessibilityServiceInfo mMockAccessibilityServiceInfo;
+    @Mock
+    private AccessibilityManager mMockAccessibilityManager;
+    @Mock
+    private View mMockView;
+
+    @Before
+    public void setUp() {
+        MockitoAnnotations.initMocks(this);
+        mFeatureFactory = FakeFeatureFactory.setupForTest();
+        mPowerUsageFeatureProvider = mFeatureFactory.powerUsageFeatureProvider;
+        mContext = spy(RuntimeEnvironment.application);
+        mContext.getResources().getConfiguration().setLocales(
+                new LocaleList(new Locale("en_US")));
+        mBatteryChartView = new BatteryChartView(mContext);
+        doReturn(mMockAccessibilityManager).when(mContext)
+                .getSystemService(AccessibilityManager.class);
+        doReturn("TalkBackService").when(mMockAccessibilityServiceInfo).getId();
+        doReturn(Arrays.asList(mMockAccessibilityServiceInfo))
+                .when(mMockAccessibilityManager)
+                .getEnabledAccessibilityServiceList(anyInt());
+    }
+
+    @Test
+    public void isAccessibilityEnabled_disable_returnFalse() {
+        doReturn(false).when(mMockAccessibilityManager).isEnabled();
+        assertThat(BatteryChartView.isAccessibilityEnabled(mContext)).isFalse();
+    }
+
+    @Test
+    public void isAccessibilityEnabled_emptyInfo_returnFalse() {
+        doReturn(true).when(mMockAccessibilityManager).isEnabled();
+        doReturn(new ArrayList<AccessibilityServiceInfo>())
+                .when(mMockAccessibilityManager)
+                .getEnabledAccessibilityServiceList(anyInt());
+
+        assertThat(BatteryChartView.isAccessibilityEnabled(mContext)).isFalse();
+    }
+
+    @Test
+    public void isAccessibilityEnabled_validServiceId_returnTrue() {
+        doReturn(true).when(mMockAccessibilityManager).isEnabled();
+        assertThat(BatteryChartView.isAccessibilityEnabled(mContext)).isTrue();
+    }
+
+    @Test
+    public void onClick_invokesCallback() {
+        final int originalSelectedIndex = 2;
+        BatteryChartViewModel batteryChartViewModel = new BatteryChartViewModel(
+                List.of(90, 80, 70, 60), List.of("", "", "", ""),
+                BatteryChartViewModel.AxisLabelPosition.BETWEEN_TRAPEZOIDS);
+        batteryChartViewModel.setSelectedIndex(originalSelectedIndex);
+        mBatteryChartView.setViewModel(batteryChartViewModel);
+        for (int i = 0; i < mBatteryChartView.mTrapezoidSlots.length; i++) {
+            mBatteryChartView.mTrapezoidSlots[i] = new BatteryChartView.TrapezoidSlot();
+            mBatteryChartView.mTrapezoidSlots[i].mLeft = i;
+            mBatteryChartView.mTrapezoidSlots[i].mRight = i + 0.5f;
+        }
+        final int[] selectedIndex = new int[1];
+        mBatteryChartView.setOnSelectListener(
+                trapezoidIndex -> {
+                    selectedIndex[0] = trapezoidIndex;
+                });
+
+        // Verify onClick() a different index 1.
+        mBatteryChartView.mTouchUpEventX = 1;
+        selectedIndex[0] = Integer.MIN_VALUE;
+        mBatteryChartView.onClick(mMockView);
+        assertThat(selectedIndex[0]).isEqualTo(1);
+
+        // Verify onClick() the same index 2.
+        mBatteryChartView.mTouchUpEventX = 2;
+        selectedIndex[0] = Integer.MIN_VALUE;
+        mBatteryChartView.onClick(mMockView);
+        assertThat(selectedIndex[0]).isEqualTo(BatteryChartViewModel.SELECTED_INDEX_ALL);
+    }
+
+    @Test
+    public void clickable_isChartGraphSlotsEnabledIsFalse_notClickable() {
+        mBatteryChartView.setClickableForce(true);
+        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
+                .thenReturn(false);
+
+        mBatteryChartView.onAttachedToWindow();
+
+        assertThat(mBatteryChartView.isClickable()).isFalse();
+        assertThat(mBatteryChartView.mTrapezoidCurvePaint).isNotNull();
+    }
+
+    @Test
+    public void clickable_accessibilityIsDisabled_clickable() {
+        mBatteryChartView.setClickableForce(true);
+        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
+                .thenReturn(true);
+        doReturn(false).when(mMockAccessibilityManager).isEnabled();
+
+        mBatteryChartView.onAttachedToWindow();
+
+        assertThat(mBatteryChartView.isClickable()).isTrue();
+        assertThat(mBatteryChartView.mTrapezoidCurvePaint).isNull();
+    }
+
+    @Test
+    public void clickable_accessibilityIsEnabledWithoutValidId_clickable() {
+        mBatteryChartView.setClickableForce(true);
+        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
+                .thenReturn(true);
+        doReturn(true).when(mMockAccessibilityManager).isEnabled();
+        doReturn(new ArrayList<AccessibilityServiceInfo>())
+                .when(mMockAccessibilityManager)
+                .getEnabledAccessibilityServiceList(anyInt());
+
+        mBatteryChartView.onAttachedToWindow();
+
+        assertThat(mBatteryChartView.isClickable()).isTrue();
+        assertThat(mBatteryChartView.mTrapezoidCurvePaint).isNull();
+    }
+
+    @Test
+    public void clickable_accessibilityIsEnabledWithValidId_notClickable() {
+        mBatteryChartView.setClickableForce(true);
+        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
+                .thenReturn(true);
+        doReturn(true).when(mMockAccessibilityManager).isEnabled();
+
+        mBatteryChartView.onAttachedToWindow();
+
+        assertThat(mBatteryChartView.isClickable()).isFalse();
+        assertThat(mBatteryChartView.mTrapezoidCurvePaint).isNotNull();
+    }
+
+    @Test
+    public void clickable_restoreFromNonClickableState() {
+        final List<Integer> levels = new ArrayList<Integer>();
+        final List<String> texts = new ArrayList<String>();
+        for (int index = 0; index < 13; index++) {
+            levels.add(index + 1);
+            texts.add("");
+        }
+        mBatteryChartView.setViewModel(new BatteryChartViewModel(levels, texts,
+                BatteryChartViewModel.AxisLabelPosition.BETWEEN_TRAPEZOIDS));
+        mBatteryChartView.setClickableForce(true);
+        when(mPowerUsageFeatureProvider.isChartGraphSlotsEnabled(mContext))
+                .thenReturn(true);
+        doReturn(true).when(mMockAccessibilityManager).isEnabled();
+        mBatteryChartView.onAttachedToWindow();
+        // Ensures the testing environment is correct.
+        assertThat(mBatteryChartView.isClickable()).isFalse();
+        // Turns off accessibility service.
+        doReturn(false).when(mMockAccessibilityManager).isEnabled();
+
+        mBatteryChartView.onAttachedToWindow();
+
+        assertThat(mBatteryChartView.isClickable()).isTrue();
+    }
+
+    @Test
+    public void onAttachedToWindow_addAccessibilityStateChangeListener() {
+        mBatteryChartView.onAttachedToWindow();
+        verify(mMockAccessibilityManager)
+                .addAccessibilityStateChangeListener(mBatteryChartView);
+    }
+
+    @Test
+    public void onDetachedFromWindow_removeAccessibilityStateChangeListener() {
+        mBatteryChartView.onAttachedToWindow();
+        mBatteryChartView.mHandler.postDelayed(
+                mBatteryChartView.mUpdateClickableStateRun, 1000);
+
+        mBatteryChartView.onDetachedFromWindow();
+
+        verify(mMockAccessibilityManager)
+                .removeAccessibilityStateChangeListener(mBatteryChartView);
+        assertThat(mBatteryChartView.mHandler.hasCallbacks(
+                mBatteryChartView.mUpdateClickableStateRun))
+                .isFalse();
+    }
+
+    @Test
+    public void onAccessibilityStateChanged_postUpdateStateRunnable() {
+        mBatteryChartView.mHandler = spy(mBatteryChartView.mHandler);
+        mBatteryChartView.onAccessibilityStateChanged(/*enabled=*/ true);
+
+        verify(mBatteryChartView.mHandler)
+                .removeCallbacks(mBatteryChartView.mUpdateClickableStateRun);
+        verify(mBatteryChartView.mHandler)
+                .postDelayed(mBatteryChartView.mUpdateClickableStateRun, 500L);
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryDiffEntryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryDiffEntryTest.java
similarity index 63%
rename from tests/robotests/src/com/android/settings/fuelgauge/BatteryDiffEntryTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryDiffEntryTest.java
index 6ea1390..683f0fd 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryDiffEntryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryDiffEntryTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -35,6 +35,7 @@
 import android.os.UserManager;
 
 import com.android.settings.R;
+import com.android.settings.fuelgauge.BatteryUtils;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -59,15 +60,24 @@
 
     private Context mContext;
 
-    @Mock private ApplicationInfo mockAppInfo;
-    @Mock private PackageManager mockPackageManager;
-    @Mock private UserManager mockUserManager;
-    @Mock private Drawable mockDrawable;
-    @Mock private Drawable mockDrawable2;
-    @Mock private Drawable mockBadgedDrawable;
-    @Mock private BatteryHistEntry mBatteryHistEntry;
-    @Mock private PackageInfo mockPackageInfo;
-    @Mock private ConstantState mockConstantState;
+    @Mock
+    private ApplicationInfo mMockAppInfo;
+    @Mock
+    private PackageManager mMockPackageManager;
+    @Mock
+    private UserManager mMockUserManager;
+    @Mock
+    private Drawable mMockDrawable;
+    @Mock
+    private Drawable mMockDrawable2;
+    @Mock
+    private Drawable mMockBadgedDrawable;
+    @Mock
+    private BatteryHistEntry mBatteryHistEntry;
+    @Mock
+    private PackageInfo mMockPackageInfo;
+    @Mock
+    private ConstantState mMockConstantState;
 
     @Before
     public void setUp() {
@@ -75,20 +85,20 @@
         ShadowUserHandle.reset();
         mContext = spy(RuntimeEnvironment.application);
         doReturn(mContext).when(mContext).getApplicationContext();
-        doReturn(mockUserManager).when(mContext).getSystemService(UserManager.class);
-        doReturn(mockPackageManager).when(mContext).getPackageManager();
+        doReturn(mMockUserManager).when(mContext).getSystemService(UserManager.class);
+        doReturn(mMockPackageManager).when(mContext).getPackageManager();
         BatteryDiffEntry.clearCache();
     }
 
     @Test
     public void testSetTotalConsumePower_returnExpectedResult() {
         final BatteryDiffEntry entry =
-            new BatteryDiffEntry(
-                mContext,
-                /*foregroundUsageTimeInMs=*/ 10001L,
-                /*backgroundUsageTimeInMs=*/ 20002L,
-                /*consumePower=*/ 22.0,
-                /*batteryHistEntry=*/ null);
+                new BatteryDiffEntry(
+                        mContext,
+                        /*foregroundUsageTimeInMs=*/ 10001L,
+                        /*backgroundUsageTimeInMs=*/ 20002L,
+                        /*consumePower=*/ 22.0,
+                        /*batteryHistEntry=*/ null);
         entry.setTotalConsumePower(100.0);
 
         assertThat(entry.getPercentOfTotal()).isEqualTo(22.0);
@@ -97,12 +107,12 @@
     @Test
     public void testSetTotalConsumePower_setZeroValue_returnsZeroValue() {
         final BatteryDiffEntry entry =
-            new BatteryDiffEntry(
-                mContext,
-                /*foregroundUsageTimeInMs=*/ 10001L,
-                /*backgroundUsageTimeInMs=*/ 20002L,
-                /*consumePower=*/ 22.0,
-                /*batteryHistEntry=*/ null);
+                new BatteryDiffEntry(
+                        mContext,
+                        /*foregroundUsageTimeInMs=*/ 10001L,
+                        /*backgroundUsageTimeInMs=*/ 20002L,
+                        /*consumePower=*/ 22.0,
+                        /*batteryHistEntry=*/ null);
         entry.setTotalConsumePower(0);
 
         assertThat(entry.getPercentOfTotal()).isEqualTo(0);
@@ -127,9 +137,9 @@
         final String expectedName = "Ambient display";
         // Generates fake testing data.
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
-        values.put("drainType",
-            Integer.valueOf(BatteryConsumer.POWER_COMPONENT_AMBIENT_DISPLAY));
+                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
+        values.put(BatteryHistEntry.KEY_DRAIN_TYPE,
+                Integer.valueOf(BatteryConsumer.POWER_COMPONENT_AMBIENT_DISPLAY));
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
 
         final BatteryDiffEntry entry = createBatteryDiffEntry(10, batteryHistEntry);
@@ -139,7 +149,7 @@
         assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
         // Verifies the app label in the cache.
         final BatteryEntry.NameAndIcon nameAndIcon =
-            BatteryDiffEntry.sResourceCache.get(entry.getKey());
+                BatteryDiffEntry.sResourceCache.get(entry.getKey());
         assertThat(nameAndIcon.mName).isEqualTo(expectedName);
         assertThat(nameAndIcon.mIconId).isEqualTo(R.drawable.ic_settings_aod);
         // Verifies the restrictable flag in the cache.
@@ -150,11 +160,11 @@
     @Test
     public void testLoadLabelAndIcon_forUserBattery_returnExpectedResult() {
         final String expectedName = "Removed user";
-        doReturn(null).when(mockUserManager).getUserInfo(1001);
+        doReturn(null).when(mMockUserManager).getUserInfo(1001);
         // Generates fake testing data.
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_USER_BATTERY);
-        values.put("userId", Integer.valueOf(1001));
+                ConvertUtils.CONSUMER_TYPE_USER_BATTERY);
+        values.put(BatteryHistEntry.KEY_USER_ID, Integer.valueOf(1001));
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
 
         final BatteryDiffEntry entry = createBatteryDiffEntry(10, batteryHistEntry);
@@ -165,7 +175,7 @@
         assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
         // Verifies the app label in the cache.
         final BatteryEntry.NameAndIcon nameAndIcon =
-            BatteryDiffEntry.sResourceCache.get(entry.getKey());
+                BatteryDiffEntry.sResourceCache.get(entry.getKey());
         assertThat(nameAndIcon.mName).isEqualTo(expectedName);
         assertThat(nameAndIcon.mIconId).isEqualTo(0);
         // Verifies the restrictable flag in the cache.
@@ -178,13 +188,13 @@
         final String expectedAppLabel = "fake app label";
         final String fakePackageName = "com.fake.google.com";
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
-        values.put("uid", /*invalid uid*/ 10001);
-        values.put("packageName", fakePackageName);
-        doReturn(mockAppInfo).when(mockPackageManager)
-            .getApplicationInfo(fakePackageName, 0);
-        doReturn(expectedAppLabel).when(mockPackageManager)
-            .getApplicationLabel(mockAppInfo);
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+        values.put(BatteryHistEntry.KEY_UID, /*invalid uid*/ 10001);
+        values.put(BatteryHistEntry.KEY_PACKAGE_NAME, fakePackageName);
+        doReturn(mMockAppInfo).when(mMockPackageManager)
+                .getApplicationInfo(fakePackageName, 0);
+        doReturn(expectedAppLabel).when(mMockPackageManager)
+                .getApplicationLabel(mMockAppInfo);
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
 
         final BatteryDiffEntry entry = createBatteryDiffEntry(10, batteryHistEntry);
@@ -194,7 +204,7 @@
         assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
         // Verifies the app label in the cache.
         final BatteryEntry.NameAndIcon nameAndIcon =
-            BatteryDiffEntry.sResourceCache.get(entry.getKey());
+                BatteryDiffEntry.sResourceCache.get(entry.getKey());
         assertThat(nameAndIcon.mName).isEqualTo(expectedAppLabel);
         // Verifies the restrictable flag in the cache.
         assertThat(entry.mValidForRestriction).isFalse();
@@ -205,7 +215,7 @@
     public void testGetAppLabel_loadDataFromPreDefinedNameAndUid() {
         final String expectedAppLabel = "Android OS";
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
 
         final BatteryDiffEntry entry = createBatteryDiffEntry(10, batteryHistEntry);
@@ -214,7 +224,7 @@
         assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
         // Verifies the app label in the cache.
         final BatteryEntry.NameAndIcon nameAndIcon =
-            BatteryDiffEntry.sResourceCache.get(entry.getKey());
+                BatteryDiffEntry.sResourceCache.get(entry.getKey());
         assertThat(nameAndIcon.mName).isEqualTo(expectedAppLabel);
     }
 
@@ -222,8 +232,8 @@
     public void testGetAppLabel_nullAppLabel_returnAppLabelInBatteryHistEntry() {
         final String expectedAppLabel = "fake app label";
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
-        values.put("appLabel", expectedAppLabel);
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+        values.put(BatteryHistEntry.KEY_APP_LABEL, expectedAppLabel);
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
 
         final BatteryDiffEntry entry = createBatteryDiffEntry(10, batteryHistEntry);
@@ -236,15 +246,15 @@
     @Test
     public void testGetAppIcon_nonUidConsumer_returnAppIconInBatteryDiffEntry() {
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
+                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
-        mockConstantState(mockDrawable);
+        mockConstantState(mMockDrawable);
 
         final BatteryDiffEntry entry = createBatteryDiffEntry(10, batteryHistEntry);
 
         entry.mIsLoaded = true;
-        entry.mAppIcon = mockDrawable;
-        assertThat(entry.getAppIcon()).isEqualTo(mockDrawable);
+        entry.mAppIcon = mMockDrawable;
+        assertThat(entry.getAppIcon()).isEqualTo(mMockDrawable);
         assertThat(BatteryDiffEntry.sResourceCache).isEmpty();
     }
 
@@ -252,38 +262,38 @@
     public void testGetAppIcon_uidConsumerForNonOwner_returnDefaultActivityIconWithBadge()
             throws Exception {
         ShadowUserHandle.setUid(10);
-        final BatteryDiffEntry entry = createBatteryDiffEntry(mockDrawable);
-        mockConstantState(mockDrawable);
-        mockConstantState(mockBadgedDrawable);
-        doReturn(mockBadgedDrawable).when(mockUserManager)
-            .getBadgedIconForUser(eq(mockDrawable), any());
+        final BatteryDiffEntry entry = createBatteryDiffEntry(mMockDrawable);
+        mockConstantState(mMockDrawable);
+        mockConstantState(mMockBadgedDrawable);
+        doReturn(mMockBadgedDrawable).when(mMockUserManager)
+                .getBadgedIconForUser(eq(mMockDrawable), any());
 
         entry.mAppIcon = null;
-        assertThat(entry.getAppIcon()).isEqualTo(mockBadgedDrawable);
+        assertThat(entry.getAppIcon()).isEqualTo(mMockBadgedDrawable);
     }
 
     @Test
     public void testGetAppIcon_uidConsumerWithNullIcon_returnDefaultActivityIcon()
             throws Exception {
-        final BatteryDiffEntry entry = createBatteryDiffEntry(mockDrawable);
-        mockConstantState(mockDrawable);
+        final BatteryDiffEntry entry = createBatteryDiffEntry(mMockDrawable);
+        mockConstantState(mMockDrawable);
 
         entry.mAppIcon = null;
-        assertThat(entry.getAppIcon()).isEqualTo(mockDrawable);
+        assertThat(entry.getAppIcon()).isEqualTo(mMockDrawable);
         assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
         // Verifies the app label in the cache.
         final BatteryEntry.NameAndIcon nameAndIcon =
-            BatteryDiffEntry.sResourceCache.get(entry.getKey());
-        assertThat(nameAndIcon.mIcon).isEqualTo(mockDrawable);
+                BatteryDiffEntry.sResourceCache.get(entry.getKey());
+        assertThat(nameAndIcon.mIcon).isEqualTo(mMockDrawable);
     }
 
     @Test
     public void testClearCache_clearDataForResourcesAndFlags() {
         BatteryDiffEntry.sResourceCache.put(
-            "fake application key",
-            new BatteryEntry.NameAndIcon("app label", null, /*iconId=*/ 0));
+                "fake application key",
+                new BatteryEntry.NameAndIcon("app label", null, /*iconId=*/ 0));
         BatteryDiffEntry.sValidForRestriction.put(
-            "fake application key", Boolean.valueOf(false));
+                "fake application key", Boolean.valueOf(false));
 
         BatteryDiffEntry.clearCache();
 
@@ -295,83 +305,83 @@
     public void testClearCache_switchLocale_clearCacheIconAndLabel() throws Exception {
         final int userId = UserHandle.getUserId(1001);
         Locale.setDefault(new Locale("en_US"));
-        final BatteryDiffEntry entry1 = createBatteryDiffEntry(mockDrawable);
-        mockConstantState(mockDrawable);
-        assertThat(entry1.getAppIcon()).isEqualTo(mockDrawable);
+        final BatteryDiffEntry entry1 = createBatteryDiffEntry(mMockDrawable);
+        mockConstantState(mMockDrawable);
+        assertThat(entry1.getAppIcon()).isEqualTo(mMockDrawable);
         // Switch the locale into another one.
         Locale.setDefault(new Locale("zh_TW"));
 
-        final BatteryDiffEntry entry2 = createBatteryDiffEntry(mockDrawable2);
+        final BatteryDiffEntry entry2 = createBatteryDiffEntry(mMockDrawable2);
 
         // We should get new drawable without caching.
-        mockConstantState(mockDrawable2);
-        assertThat(entry2.getAppIcon()).isEqualTo(mockDrawable2);
+        mockConstantState(mMockDrawable2);
+        assertThat(entry2.getAppIcon()).isEqualTo(mMockDrawable2);
         // Verifies the cache is updated into the new drawable.
         final BatteryEntry.NameAndIcon nameAndIcon =
-            BatteryDiffEntry.sResourceCache.get(entry2.getKey());
-        assertThat(nameAndIcon.mIcon).isEqualTo(mockDrawable2);
+                BatteryDiffEntry.sResourceCache.get(entry2.getKey());
+        assertThat(nameAndIcon.mIcon).isEqualTo(mMockDrawable2);
     }
 
     @Test
     public void testIsSystemEntry_userBattery_returnTrue() {
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(
-                ConvertUtils.CONSUMER_TYPE_USER_BATTERY,
-                /*uid=*/ 0, /*isHidden=*/ false);
+                createBatteryDiffEntry(
+                        ConvertUtils.CONSUMER_TYPE_USER_BATTERY,
+                        /*uid=*/ 0, /*isHidden=*/ false);
         assertThat(entry.isSystemEntry()).isTrue();
     }
 
     @Test
     public void testIsSystemEntry_systemBattery_returnTrue() {
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(
-                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY,
-                /*uid=*/ 0, /*isHidden=*/ false);
+                createBatteryDiffEntry(
+                        ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY,
+                        /*uid=*/ 0, /*isHidden=*/ false);
         assertThat(entry.isSystemEntry()).isTrue();
     }
 
     @Test
     public void testIsSystemEntry_uidBattery_returnFalse() {
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(
-                ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
-                /*uid=*/ 123, /*isHidden=*/ false);
+                createBatteryDiffEntry(
+                        ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                        /*uid=*/ 123, /*isHidden=*/ false);
         assertThat(entry.isSystemEntry()).isFalse();
     }
 
     @Test
     public void testIsSystemEntry_uidBatteryWithHiddenState_returnTrue() {
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(
-                ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
-                /*uid=*/ 123, /*isHidden=*/ true);
+                createBatteryDiffEntry(
+                        ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                        /*uid=*/ 123, /*isHidden=*/ true);
         assertThat(entry.isSystemEntry()).isTrue();
     }
 
     @Test
     public void testIsSystemEntry_uidBatteryWithSystemProcess_returnFalse() {
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(
-                ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
-                /*uid=*/ 1230, /*isHidden=*/ false);
+                createBatteryDiffEntry(
+                        ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                        /*uid=*/ 1230, /*isHidden=*/ false);
         assertThat(entry.isSystemEntry()).isFalse();
     }
 
     @Test
     public void testIsSystemEntry_uidBatteryWithTetheringProcess_returnTrue() {
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(
-                ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
-                /*uid=*/ BatteryUtils.UID_TETHERING, /*isHidden=*/ false);
+                createBatteryDiffEntry(
+                        ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                        /*uid=*/ BatteryUtils.UID_TETHERING, /*isHidden=*/ false);
         assertThat(entry.isSystemEntry()).isTrue();
     }
 
     @Test
     public void testIsSystemEntry_uidBatteryWithRemovedAppsProcess_returnTrue() {
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(
-                ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
-                /*uid=*/ BatteryUtils.UID_REMOVED_APPS, /*isHidden=*/ false);
+                createBatteryDiffEntry(
+                        ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                        /*uid=*/ BatteryUtils.UID_REMOVED_APPS, /*isHidden=*/ false);
         assertThat(entry.isSystemEntry()).isTrue();
     }
 
@@ -380,30 +390,30 @@
         final String expectedAppLabel = "fake app label";
         final String fakePackageName = "com.fake.google.com";
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
-        values.put("uid", /*invalid uid*/ 10001);
-        values.put("packageName", fakePackageName);
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+        values.put(BatteryHistEntry.KEY_UID, /*invalid uid*/ 10001);
+        values.put(BatteryHistEntry.KEY_PACKAGE_NAME, fakePackageName);
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(10, new BatteryHistEntry(values));
+                createBatteryDiffEntry(10, new BatteryHistEntry(values));
 
         entry.updateRestrictionFlagState();
         // Sets false if the app entry cannot be found.
         assertThat(entry.mValidForRestriction).isFalse();
 
-        doReturn(BatteryUtils.UID_NULL).when(mockPackageManager).getPackageUid(
-            entry.getPackageName(), PackageManager.GET_META_DATA);
+        doReturn(BatteryUtils.UID_NULL).when(mMockPackageManager).getPackageUid(
+                entry.getPackageName(), PackageManager.GET_META_DATA);
         entry.updateRestrictionFlagState();
         // Sets false if the app is invalid package name.
         assertThat(entry.mValidForRestriction).isFalse();
 
-        doReturn(1000).when(mockPackageManager).getPackageUid(
-            entry.getPackageName(), PackageManager.GET_META_DATA);
+        doReturn(1000).when(mMockPackageManager).getPackageUid(
+                entry.getPackageName(), PackageManager.GET_META_DATA);
         entry.updateRestrictionFlagState();
         // Sets false if the app PackageInfo cannot be found.
         assertThat(entry.mValidForRestriction).isFalse();
 
-        doReturn(mockPackageInfo).when(mockPackageManager).getPackageInfo(
-            eq(entry.getPackageName()), anyInt());
+        doReturn(mMockPackageInfo).when(mMockPackageManager).getPackageInfo(
+                eq(entry.getPackageName()), anyInt());
         entry.updateRestrictionFlagState();
         // Sets true if package is valid and PackageInfo can be found.
         assertThat(entry.mValidForRestriction).isTrue();
@@ -413,10 +423,10 @@
     public void testGetPackageName_returnExpectedResult() {
         final String expectedPackageName = "com.fake.google.com";
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
-        values.put("packageName", expectedPackageName);
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+        values.put(BatteryHistEntry.KEY_PACKAGE_NAME, expectedPackageName);
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(10, new BatteryHistEntry(values));
+                createBatteryDiffEntry(10, new BatteryHistEntry(values));
 
         assertThat(entry.getPackageName()).isEqualTo(expectedPackageName);
     }
@@ -425,63 +435,76 @@
     public void testGetPackageName_withProcessName_returnExpectedResult() {
         final String expectedPackageName = "com.fake.google.com";
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
         values.put(
-            "packageName",
-            expectedPackageName + ":privileged_process0");
+                BatteryHistEntry.KEY_PACKAGE_NAME,
+                expectedPackageName + ":privileged_process0");
         final BatteryDiffEntry entry =
-            createBatteryDiffEntry(10, new BatteryHistEntry(values));
+                createBatteryDiffEntry(10, new BatteryHistEntry(values));
 
         assertThat(entry.getPackageName()).isEqualTo(expectedPackageName);
     }
 
+    @Test
+    public void getAppLabel_withOtherUsersUid_returnExpectedLabel() {
+        final ContentValues values = getContentValuesWithType(
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+        values.put(BatteryHistEntry.KEY_UID, BatteryUtils.UID_OTHER_USERS);
+
+        final BatteryDiffEntry batteryDiffEntry = createBatteryDiffEntry(
+                /*consumePower=*/ 0, new BatteryHistEntry(values));
+
+        assertThat(batteryDiffEntry.getAppLabel())
+                .isEqualTo(mContext.getString(R.string.battery_usage_other_users));
+    }
+
     private BatteryDiffEntry createBatteryDiffEntry(
             int consumerType, long uid, boolean isHidden) {
         final ContentValues values = getContentValuesWithType(consumerType);
-        values.put("isHidden", isHidden);
-        values.put("uid", uid);
+        values.put(BatteryHistEntry.KEY_IS_HIDDEN, isHidden);
+        values.put(BatteryHistEntry.KEY_UID, uid);
         return new BatteryDiffEntry(
-            mContext,
-            /*foregroundUsageTimeInMs=*/ 0,
-            /*backgroundUsageTimeInMs=*/ 0,
-            /*consumePower=*/ 0,
-            new BatteryHistEntry(values));
+                mContext,
+                /*foregroundUsageTimeInMs=*/ 0,
+                /*backgroundUsageTimeInMs=*/ 0,
+                /*consumePower=*/ 0,
+                new BatteryHistEntry(values));
     }
 
     private BatteryDiffEntry createBatteryDiffEntry(
-        double consumePower, BatteryHistEntry batteryHistEntry) {
+            double consumePower, BatteryHistEntry batteryHistEntry) {
         final BatteryDiffEntry entry = new BatteryDiffEntry(
-            mContext,
-            /*foregroundUsageTimeInMs=*/ 0,
-            /*backgroundUsageTimeInMs=*/ 0,
-            consumePower,
-            batteryHistEntry);
+                mContext,
+                /*foregroundUsageTimeInMs=*/ 0,
+                /*backgroundUsageTimeInMs=*/ 0,
+                consumePower,
+                batteryHistEntry);
         entry.setTotalConsumePower(100.0);
         return entry;
     }
 
     private static ContentValues getContentValuesWithType(int consumerType) {
         final ContentValues values = new ContentValues();
-        values.put("consumerType", Integer.valueOf(consumerType));
+        values.put(BatteryHistEntry.KEY_CONSUMER_TYPE, Integer.valueOf(consumerType));
         return values;
     }
 
     private BatteryDiffEntry createBatteryDiffEntry(Drawable drawable) throws Exception {
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
-        values.put("uid", 1001);
-        values.put("packageName", "com.a.b.c");
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+        values.put(BatteryHistEntry.KEY_UID, 1001);
+        values.put(BatteryHistEntry.KEY_PACKAGE_NAME, "com.a.b.c");
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
-        doReturn(drawable).when(mockPackageManager).getDefaultActivityIcon();
-        doReturn(null).when(mockPackageManager).getApplicationInfo("com.a.b.c", 0);
-        doReturn(new String[] {"com.a.b.c"}).when(mockPackageManager)
-            .getPackagesForUid(1001);
+        doReturn(drawable).when(mMockPackageManager).getDefaultActivityIcon();
+        doReturn(null).when(mMockPackageManager).getApplicationInfo("com.a.b.c", 0);
+        doReturn(new String[]{"com.a.b.c"}).when(mMockPackageManager)
+                .getPackagesForUid(1001);
         return createBatteryDiffEntry(10, batteryHistEntry);
     }
 
     private void mockConstantState(Drawable drawable) {
-        doReturn(mockConstantState).when(drawable).getConstantState();
-        doReturn(drawable).when(mockConstantState).newDrawable();
+        doReturn(mMockConstantState).when(drawable).getConstantState();
+        doReturn(drawable).when(mMockConstantState).newDrawable();
     }
 
     @Implements(UserHandle.class)
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryEntryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryEntryTest.java
similarity index 88%
rename from tests/robotests/src/com/android/settings/fuelgauge/BatteryEntryTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryEntryTest.java
index 707a658..5ca3aca 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryEntryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryEntryTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -37,7 +37,8 @@
 import android.os.UserManager;
 
 import com.android.settings.R;
-import com.android.settings.fuelgauge.BatteryEntry.NameAndIcon;
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.batteryusage.BatteryEntry.NameAndIcon;
 
 import org.junit.Before;
 import org.junit.Rule;
@@ -62,31 +63,36 @@
     private static final String HIGH_DRAIN_PACKAGE = "com.android.test.screen";
     private static final String ANDROID_PACKAGE = "android";
 
-    @Rule public MockitoRule mocks = MockitoJUnit.rule();
+    @Rule
+    public MockitoRule mocks = MockitoJUnit.rule();
 
     @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private Context mMockContext;
     private Context mContext;
-    @Mock private Handler mockHandler;
-    @Mock private PackageManager mockPackageManager;
-    @Mock private UserManager mockUserManager;
-    @Mock private UidBatteryConsumer mUidBatteryConsumer;
+    @Mock
+    private Handler mMockHandler;
+    @Mock
+    private PackageManager mMockPackageManager;
+    @Mock
+    private UserManager mMockUserManager;
+    @Mock
+    private UidBatteryConsumer mUidBatteryConsumer;
 
     @Before
     public void stubContextToReturnMockPackageManager() {
         mContext = spy(RuntimeEnvironment.application);
-        when(mMockContext.getPackageManager()).thenReturn(mockPackageManager);
+        when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
     }
 
     @Before
     public void stubPackageManagerToReturnAppPackageAndName() throws NameNotFoundException {
-        when(mockPackageManager.getApplicationInfo(anyString(), eq(0) /* no flags */))
+        when(mMockPackageManager.getApplicationInfo(anyString(), eq(0) /* no flags */))
                 .thenAnswer(invocation -> {
                     ApplicationInfo info = new ApplicationInfo();
                     info.packageName = invocation.getArgument(0);
                     return info;
                 });
-        when(mockPackageManager.getApplicationLabel(any(ApplicationInfo.class)))
+        when(mMockPackageManager.getApplicationLabel(any(ApplicationInfo.class)))
                 .thenAnswer(invocation -> LABEL_PREFIX
                         + ((ApplicationInfo) invocation.getArgument(0)).packageName);
     }
@@ -96,7 +102,7 @@
         UidBatteryConsumer consumer = mock(UidBatteryConsumer.class);
         when(consumer.getUid()).thenReturn(APP_UID);
         when(consumer.getPackageWithHighestDrain()).thenReturn(highDrainPackage);
-        return new BatteryEntry(mMockContext, mockHandler, mockUserManager,
+        return new BatteryEntry(mMockContext, mMockHandler, mMockUserManager,
                 consumer, false, APP_UID, packages, packageName);
     }
 
@@ -111,7 +117,7 @@
     private BatteryEntry createUserBatteryConsumer(int userId) {
         UserBatteryConsumer consumer = mock(UserBatteryConsumer.class);
         when(consumer.getUserId()).thenReturn(userId);
-        return new BatteryEntry(mMockContext, mockHandler, mockUserManager,
+        return new BatteryEntry(mMockContext, mMockHandler, mMockUserManager,
                 consumer, false, 0, null, null);
     }
 
@@ -127,7 +133,7 @@
     @Test
     public void batteryEntryForApp_shouldSetLabelAsPackageName_whenPackageCannotBeFound()
             throws Exception {
-        when(mockPackageManager.getApplicationInfo(APP_DEFAULT_PACKAGE_NAME, 0 /* no flags */))
+        when(mMockPackageManager.getApplicationInfo(APP_DEFAULT_PACKAGE_NAME, 0 /* no flags */))
                 .thenThrow(new NameNotFoundException());
 
         BatteryEntry entry = createBatteryEntryForApp(null, APP_DEFAULT_PACKAGE_NAME, null);
@@ -137,7 +143,7 @@
 
     @Test
     public void batteryEntryForApp_shouldSetHighestDrainPackage_whenPackagesCannotBeFoundForUid() {
-        when(mockPackageManager.getPackagesForUid(APP_UID)).thenReturn(null);
+        when(mMockPackageManager.getPackagesForUid(APP_UID)).thenReturn(null);
 
         BatteryEntry entry = createBatteryEntryForApp(null, null, HIGH_DRAIN_PACKAGE);
 
@@ -147,7 +153,7 @@
     @Test
     public void batteryEntryForApp_shouldSetHighestDrainPackage_whenMultiplePackagesFoundForUid() {
         BatteryEntry entry = createBatteryEntryForApp(
-                new String[] {APP_DEFAULT_PACKAGE_NAME, "package2", "package3"}, null,
+                new String[]{APP_DEFAULT_PACKAGE_NAME, "package2", "package3"}, null,
                 HIGH_DRAIN_PACKAGE);
 
         assertThat(entry.getLabel()).isEqualTo(LABEL_PREFIX + HIGH_DRAIN_PACKAGE);
@@ -176,8 +182,8 @@
         when(mUidBatteryConsumer.getTimeInStateMs(UidBatteryConsumer.STATE_FOREGROUND))
                 .thenReturn(100L);
 
-        final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application, mockHandler,
-                mockUserManager, mUidBatteryConsumer, false, 0, null, null);
+        final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application, mMockHandler,
+                mMockUserManager, mUidBatteryConsumer, false, 0, null, null);
 
         assertThat(entry.getTimeInForegroundMs()).isEqualTo(100L);
     }
@@ -195,8 +201,8 @@
         when(mUidBatteryConsumer.getTimeInStateMs(UidBatteryConsumer.STATE_BACKGROUND))
                 .thenReturn(100L);
 
-        final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application, mockHandler,
-                mockUserManager, mUidBatteryConsumer, false, 0, null, null);
+        final BatteryEntry entry = new BatteryEntry(RuntimeEnvironment.application, mMockHandler,
+                mMockUserManager, mUidBatteryConsumer, false, 0, null, null);
 
         assertThat(entry.getTimeInBackgroundMs()).isEqualTo(100L);
     }
@@ -247,7 +253,7 @@
 
     @Test
     public void getKey_UserBatteryConsumer_returnUserId() {
-        doReturn(mockUserManager).when(mMockContext).getSystemService(UserManager.class);
+        doReturn(mMockUserManager).when(mMockContext).getSystemService(UserManager.class);
         final BatteryEntry entry = createUserBatteryConsumer(2);
         final String key = entry.getKey();
         assertThat(key).isEqualTo("U|2");
@@ -256,8 +262,8 @@
     @Test
     public void getNameAndIconFromUserId_nullUserInfo_returnDefaultNameAndIcon() {
         final int userId = 1001;
-        doReturn(mockUserManager).when(mContext).getSystemService(UserManager.class);
-        doReturn(null).when(mockUserManager).getUserInfo(userId);
+        doReturn(mMockUserManager).when(mContext).getSystemService(UserManager.class);
+        doReturn(null).when(mMockUserManager).getUserInfo(userId);
 
         final NameAndIcon nameAndIcon = BatteryEntry.getNameAndIconFromUserId(
                 mContext, userId);
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHistEntryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistEntryTest.java
similarity index 65%
rename from tests/robotests/src/com/android/settings/fuelgauge/BatteryHistEntryTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistEntryTest.java
index 3acb8f3..553c089 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHistEntryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistEntryTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -38,7 +38,7 @@
 public final class BatteryHistEntryTest {
 
     @Mock
-    private BatteryEntry mockBatteryEntry;
+    private BatteryEntry mMockBatteryEntry;
     @Mock
     private BatteryUsageStats mBatteryUsageStats;
 
@@ -50,33 +50,33 @@
     @Test
     public void testConstructor_contentValues_returnsExpectedResult() {
         final int expectedType = 3;
-        when(mockBatteryEntry.getUid()).thenReturn(1001);
-        when(mockBatteryEntry.getLabel()).thenReturn("Settings");
-        when(mockBatteryEntry.getDefaultPackageName())
-            .thenReturn("com.google.android.settings.battery");
-        when(mockBatteryEntry.isHidden()).thenReturn(true);
+        when(mMockBatteryEntry.getUid()).thenReturn(1001);
+        when(mMockBatteryEntry.getLabel()).thenReturn("Settings");
+        when(mMockBatteryEntry.getDefaultPackageName())
+                .thenReturn("com.google.android.settings.battery");
+        when(mMockBatteryEntry.isHidden()).thenReturn(true);
         when(mBatteryUsageStats.getConsumedPower()).thenReturn(5.1);
-        when(mockBatteryEntry.getConsumedPower()).thenReturn(1.1);
-        mockBatteryEntry.mPercent = 0.3;
-        when(mockBatteryEntry.getTimeInForegroundMs()).thenReturn(1234L);
-        when(mockBatteryEntry.getTimeInBackgroundMs()).thenReturn(5689L);
-        when(mockBatteryEntry.getPowerComponentId()).thenReturn(expectedType);
-        when(mockBatteryEntry.getConsumerType())
-            .thenReturn(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
+        when(mMockBatteryEntry.getConsumedPower()).thenReturn(1.1);
+        mMockBatteryEntry.mPercent = 0.3;
+        when(mMockBatteryEntry.getTimeInForegroundMs()).thenReturn(1234L);
+        when(mMockBatteryEntry.getTimeInBackgroundMs()).thenReturn(5689L);
+        when(mMockBatteryEntry.getPowerComponentId()).thenReturn(expectedType);
+        when(mMockBatteryEntry.getConsumerType())
+                .thenReturn(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
         final ContentValues values =
-            ConvertUtils.convert(
-                mockBatteryEntry,
-                mBatteryUsageStats,
-                /*batteryLevel=*/ 12,
-                /*batteryStatus=*/ BatteryManager.BATTERY_STATUS_FULL,
-                /*batteryHealth=*/ BatteryManager.BATTERY_HEALTH_COLD,
-                /*bootTimestamp=*/ 101L,
-                /*timestamp=*/ 10001L);
+                ConvertUtils.convert(
+                        mMockBatteryEntry,
+                        mBatteryUsageStats,
+                        /*batteryLevel=*/ 12,
+                        /*batteryStatus=*/ BatteryManager.BATTERY_STATUS_FULL,
+                        /*batteryHealth=*/ BatteryManager.BATTERY_HEALTH_COLD,
+                        /*bootTimestamp=*/ 101L,
+                        /*timestamp=*/ 10001L);
 
         assertBatteryHistEntry(
-            new BatteryHistEntry(values),
-            /*drainType=*/ expectedType,
-            /*percentOfTotal=*/ mockBatteryEntry.mPercent);
+                new BatteryHistEntry(values),
+                /*drainType=*/ expectedType,
+                /*percentOfTotal=*/ mMockBatteryEntry.mPercent);
     }
 
     @Test
@@ -88,22 +88,22 @@
     @Test
     public void testConstructor_cursor_returnsExpectedResult() {
         assertBatteryHistEntry(
-            createBatteryHistEntry(
-                /*bootTimestamp=*/ 101L,
-                /*timestamp=*/ 10001L,
-                /*totalPower=*/ 5.1,
-                /*consumePower=*/ 1.1,
-                /*foregroundUsageTimeInMs=*/ 1234L,
-                /*backgroundUsageTimeInMs=*/ 5689L,
-                /*batteryLevel=*/ 12),
-            /*drainType=*/ 3,
-            /*percentOfTotal=*/ 0.3);
+                createBatteryHistEntry(
+                        /*bootTimestamp=*/ 101L,
+                        /*timestamp=*/ 10001L,
+                        /*totalPower=*/ 5.1,
+                        /*consumePower=*/ 1.1,
+                        /*foregroundUsageTimeInMs=*/ 1234L,
+                        /*backgroundUsageTimeInMs=*/ 5689L,
+                        /*batteryLevel=*/ 12),
+                /*drainType=*/ 3,
+                /*percentOfTotal=*/ 0.3);
     }
 
     @Test
     public void testGetKey_consumerUidType_returnExpectedString() {
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY);
         values.put(BatteryHistEntry.KEY_UID, 3);
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
 
@@ -113,7 +113,7 @@
     @Test
     public void testGetKey_consumerUserType_returnExpectedString() {
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_USER_BATTERY);
+                ConvertUtils.CONSUMER_TYPE_USER_BATTERY);
         values.put(BatteryHistEntry.KEY_USER_ID, 2);
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
 
@@ -123,7 +123,7 @@
     @Test
     public void testGetKey_consumerSystemType_returnExpectedString() {
         final ContentValues values = getContentValuesWithType(
-            ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
+                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
         values.put(BatteryHistEntry.KEY_DRAIN_TYPE, 1);
         final BatteryHistEntry batteryHistEntry = new BatteryHistEntry(values);
 
@@ -133,31 +133,31 @@
     @Test
     public void testIsAppEntry_returnExpectedResult() {
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY).isAppEntry())
-            .isFalse();
+                .isFalse();
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_USER_BATTERY).isAppEntry())
-            .isFalse();
+                .isFalse();
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_UID_BATTERY).isAppEntry())
-            .isTrue();
+                .isTrue();
     }
 
     @Test
     public void testIsUserEntry_returnExpectedResult() {
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY).isUserEntry())
-            .isFalse();
+                .isFalse();
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_USER_BATTERY).isUserEntry())
-            .isTrue();
+                .isTrue();
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_UID_BATTERY).isUserEntry())
-            .isFalse();
+                .isFalse();
     }
 
     @Test
     public void testIsSystemEntry_returnExpectedResult() {
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY).isSystemEntry())
-            .isTrue();
+                .isTrue();
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_USER_BATTERY).isSystemEntry())
-            .isFalse();
+                .isFalse();
         assertThat(createEntry(ConvertUtils.CONSUMER_TYPE_UID_BATTERY).isSystemEntry())
-            .isFalse();
+                .isFalse();
     }
 
     @Test
@@ -167,39 +167,39 @@
         final long lowerTimestamp = 100L;
         final double ratio = 0.5;
         final BatteryHistEntry lowerHistEntry = createBatteryHistEntry(
-            /*bootTimestamp=*/ 1000L,
-            lowerTimestamp,
-            /*totalPower=*/ 50,
-            /*consumePower=*/ 10,
-            /*foregroundUsageTimeInMs=*/ 100,
-            /*backgroundUsageTimeInMs=*/ 200,
-            /*batteryLevel=*/ 90);
+                /*bootTimestamp=*/ 1000L,
+                lowerTimestamp,
+                /*totalPower=*/ 50,
+                /*consumePower=*/ 10,
+                /*foregroundUsageTimeInMs=*/ 100,
+                /*backgroundUsageTimeInMs=*/ 200,
+                /*batteryLevel=*/ 90);
         final BatteryHistEntry upperHistEntry = createBatteryHistEntry(
-            /*bootTimestamp=*/ 1200L,
-            upperTimestamp,
-            /*totalPower=*/ 80,
-            /*consumePower=*/ 20,
-            /*foregroundUsageTimeInMs=*/ 200,
-            /*backgroundUsageTimeInMs=*/ 300,
-            /*batteryLevel=*/ 80);
+                /*bootTimestamp=*/ 1200L,
+                upperTimestamp,
+                /*totalPower=*/ 80,
+                /*consumePower=*/ 20,
+                /*foregroundUsageTimeInMs=*/ 200,
+                /*backgroundUsageTimeInMs=*/ 300,
+                /*batteryLevel=*/ 80);
 
         final BatteryHistEntry newEntry =
-            BatteryHistEntry.interpolate(
-                slotTimestamp,
-                upperTimestamp,
-                ratio,
-                lowerHistEntry,
-                upperHistEntry);
+                BatteryHistEntry.interpolate(
+                        slotTimestamp,
+                        upperTimestamp,
+                        ratio,
+                        lowerHistEntry,
+                        upperHistEntry);
 
         assertBatteryHistEntry(
-            newEntry, 3, upperHistEntry.mPercentOfTotal,
-            /*bootTimestamp=*/ 1200 - 100,
-            /*timestamp=*/ slotTimestamp,
-            /*totalPower=*/ 50 + 0.5 * (80 - 50),
-            /*consumePower=*/ 10 + 0.5 * (20 - 10),
-            /*foregroundUsageTimeInMs=*/ Math.round(100 + 0.5 * (200 - 100)),
-            /*backgroundUsageTimeInMs=*/ Math.round(200 + 0.5 * (300 - 200)),
-            /*batteryLevel=*/ (int) Math.round(90 + 0.5 * (80 - 90)));
+                newEntry, 3, upperHistEntry.mPercentOfTotal,
+                /*bootTimestamp=*/ 1200 - 100,
+                /*timestamp=*/ slotTimestamp,
+                /*totalPower=*/ 50 + 0.5 * (80 - 50),
+                /*consumePower=*/ 10 + 0.5 * (20 - 10),
+                /*foregroundUsageTimeInMs=*/ Math.round(100 + 0.5 * (200 - 100)),
+                /*backgroundUsageTimeInMs=*/ Math.round(200 + 0.5 * (300 - 200)),
+                /*batteryLevel=*/ (int) Math.round(90 + 0.5 * (80 - 90)));
     }
 
     @Test
@@ -209,31 +209,31 @@
         final long lowerTimestamp = 100L;
         final double ratio = 0.5;
         final BatteryHistEntry upperHistEntry = createBatteryHistEntry(
-            /*bootTimestamp=*/ 1200L,
-            upperTimestamp,
-            /*totalPower=*/ 80,
-            /*consumePower=*/ 20,
-            /*foregroundUsageTimeInMs=*/ 200,
-            /*backgroundUsageTimeInMs=*/ 300,
-            /*batteryLevel=*/ 80);
+                /*bootTimestamp=*/ 1200L,
+                upperTimestamp,
+                /*totalPower=*/ 80,
+                /*consumePower=*/ 20,
+                /*foregroundUsageTimeInMs=*/ 200,
+                /*backgroundUsageTimeInMs=*/ 300,
+                /*batteryLevel=*/ 80);
 
         final BatteryHistEntry newEntry =
-            BatteryHistEntry.interpolate(
-                slotTimestamp,
-                upperTimestamp,
-                ratio,
-                /*lowerHistEntry=*/ null,
-                upperHistEntry);
+                BatteryHistEntry.interpolate(
+                        slotTimestamp,
+                        upperTimestamp,
+                        ratio,
+                        /*lowerHistEntry=*/ null,
+                        upperHistEntry);
 
         assertBatteryHistEntry(
-            newEntry, 3, upperHistEntry.mPercentOfTotal,
-            /*bootTimestamp=*/ 1200 - 100,
-            /*timestamp=*/ slotTimestamp,
-            /*totalPower=*/ 0.5 * 80,
-            /*consumePower=*/ 0.5 * 20,
-            /*foregroundUsageTimeInMs=*/ Math.round(0.5 * 200),
-            /*backgroundUsageTimeInMs=*/ Math.round(0.5 * 300),
-            /*batteryLevel=*/ upperHistEntry.mBatteryLevel);
+                newEntry, 3, upperHistEntry.mPercentOfTotal,
+                /*bootTimestamp=*/ 1200 - 100,
+                /*timestamp=*/ slotTimestamp,
+                /*totalPower=*/ 0.5 * 80,
+                /*consumePower=*/ 0.5 * 20,
+                /*foregroundUsageTimeInMs=*/ Math.round(0.5 * 200),
+                /*backgroundUsageTimeInMs=*/ Math.round(0.5 * 300),
+                /*batteryLevel=*/ upperHistEntry.mBatteryLevel);
     }
 
     private static BatteryHistEntry createEntry(int consumerType) {
@@ -243,21 +243,21 @@
     private static ContentValues getContentValuesWithType(int consumerType) {
         final ContentValues values = new ContentValues();
         values.put(BatteryHistEntry.KEY_CONSUMER_TYPE,
-            Integer.valueOf(consumerType));
+                Integer.valueOf(consumerType));
         return values;
     }
 
     private void assertBatteryHistEntry(
             BatteryHistEntry entry, int drainType, double percentOfTotal) {
         assertBatteryHistEntry(
-            entry, drainType, percentOfTotal,
-            /*bootTimestamp=*/ 101L,
-            /*timestamp=*/ 10001L,
-            /*totalPower=*/ 5.1,
-            /*consumePower=*/ 1.1,
-            /*foregroundUsageTimeInMs=*/ 1234L,
-            /*backgroundUsageTimeInMs=*/ 5689L,
-            /*batteryLevel=*/ 12);
+                entry, drainType, percentOfTotal,
+                /*bootTimestamp=*/ 101L,
+                /*timestamp=*/ 10001L,
+                /*totalPower=*/ 5.1,
+                /*consumePower=*/ 1.1,
+                /*foregroundUsageTimeInMs=*/ 1234L,
+                /*backgroundUsageTimeInMs=*/ 5689L,
+                /*batteryLevel=*/ 12);
     }
 
     private void assertBatteryHistEntry(
@@ -276,7 +276,7 @@
         assertThat(entry.mUserId).isEqualTo(UserHandle.getUserId(1001));
         assertThat(entry.mAppLabel).isEqualTo("Settings");
         assertThat(entry.mPackageName)
-            .isEqualTo("com.google.android.settings.battery");
+                .isEqualTo("com.google.android.settings.battery");
         assertThat(entry.mIsHidden).isTrue();
         assertThat(entry.mBootTimestamp).isEqualTo(bootTimestamp);
         assertThat(entry.mTimestamp).isEqualTo(timestamp);
@@ -288,12 +288,12 @@
         assertThat(entry.mBackgroundUsageTimeInMs).isEqualTo(backgroundUsageTimeInMs);
         assertThat(entry.mDrainType).isEqualTo(drainType);
         assertThat(entry.mConsumerType)
-            .isEqualTo(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
+                .isEqualTo(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
         assertThat(entry.mBatteryLevel).isEqualTo(batteryLevel);
         assertThat(entry.mBatteryStatus)
-            .isEqualTo(BatteryManager.BATTERY_STATUS_FULL);
+                .isEqualTo(BatteryManager.BATTERY_STATUS_FULL);
         assertThat(entry.mBatteryHealth)
-            .isEqualTo(BatteryManager.BATTERY_HEALTH_COLD);
+                .isEqualTo(BatteryManager.BATTERY_HEALTH_COLD);
     }
 
     private BatteryHistEntry createBatteryHistEntry(
@@ -305,7 +305,7 @@
             long backgroundUsageTimeInMs,
             int batteryLevel) {
         final MatrixCursor cursor = new MatrixCursor(
-            new String[] {
+            new String[]{
                 BatteryHistEntry.KEY_UID,
                 BatteryHistEntry.KEY_USER_ID,
                 BatteryHistEntry.KEY_APP_LABEL,
@@ -325,7 +325,7 @@
                 BatteryHistEntry.KEY_BATTERY_STATUS,
                 BatteryHistEntry.KEY_BATTERY_HEALTH});
         cursor.addRow(
-            new Object[] {
+            new Object[]{
                 Long.valueOf(1001),
                 Long.valueOf(UserHandle.getUserId(1001)),
                 "Settings",
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHistoryLoaderTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoaderTest.java
similarity index 91%
rename from tests/robotests/src/com/android/settings/fuelgauge/BatteryHistoryLoaderTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoaderTest.java
index a0fd5fd..5717857 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHistoryLoaderTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoaderTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,18 +13,16 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
+
 import static org.mockito.Mockito.doReturn;
 
 import android.content.Context;
 
 import com.android.settings.testutils.FakeFeatureFactory;
 
-import java.util.HashMap;
-import java.util.Map;
-
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -32,6 +30,9 @@
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
 
+import java.util.HashMap;
+import java.util.Map;
+
 @RunWith(RobolectricTestRunner.class)
 public final class BatteryHistoryLoaderTest {
 
@@ -52,7 +53,7 @@
     public void testLoadIBackground_returnsMapFromPowerFeatureProvider() {
         final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
         doReturn(batteryHistoryMap).when(mFeatureFactory.powerUsageFeatureProvider)
-                .getBatteryHistory(mContext);
+                .getBatteryHistorySinceLastFullCharge(mContext);
 
         assertThat(mBatteryHistoryLoader.loadInBackground())
                 .isSameInstanceAs(batteryHistoryMap);
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHistoryPreferenceTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryPreferenceTest.java
similarity index 95%
rename from tests/robotests/src/com/android/settings/fuelgauge/BatteryHistoryPreferenceTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryPreferenceTest.java
index 83fcbae..7017c43 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryHistoryPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryPreferenceTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -31,6 +31,7 @@
 import androidx.preference.PreferenceViewHolder;
 
 import com.android.settings.R;
+import com.android.settings.fuelgauge.BatteryInfo;
 import com.android.settings.widget.UsageView;
 
 import org.junit.Before;
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryUsageStatsLoaderTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageStatsLoaderTest.java
similarity index 96%
rename from tests/robotests/src/com/android/settings/fuelgauge/BatteryUsageStatsLoaderTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageStatsLoaderTest.java
index 8c47ff6..1d0bca4 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryUsageStatsLoaderTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryUsageStatsLoaderTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/ConvertUtilsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java
similarity index 60%
rename from tests/robotests/src/com/android/settings/fuelgauge/ConvertUtilsTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java
index 42483d0..c9bac03 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/ConvertUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -26,7 +26,10 @@
 import android.os.BatteryUsageStats;
 import android.os.LocaleList;
 import android.os.UserHandle;
+import android.text.format.DateUtils;
 
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
 import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
@@ -54,7 +57,7 @@
     @Mock
     private BatteryUsageStats mBatteryUsageStats;
     @Mock
-    private BatteryEntry mockBatteryEntry;
+    private BatteryEntry mMockBatteryEntry;
 
     private FakeFeatureFactory mFeatureFactory;
     private PowerUsageFeatureProvider mPowerUsageFeatureProvider;
@@ -70,115 +73,117 @@
     @Test
     public void convert_returnsExpectedContentValues() {
         final int expectedType = 3;
-        when(mockBatteryEntry.getUid()).thenReturn(1001);
-        when(mockBatteryEntry.getLabel()).thenReturn("Settings");
-        when(mockBatteryEntry.getDefaultPackageName())
-            .thenReturn("com.google.android.settings.battery");
-        when(mockBatteryEntry.isHidden()).thenReturn(true);
+        when(mMockBatteryEntry.getUid()).thenReturn(1001);
+        when(mMockBatteryEntry.getLabel()).thenReturn("Settings");
+        when(mMockBatteryEntry.getDefaultPackageName())
+                .thenReturn("com.google.android.settings.battery");
+        when(mMockBatteryEntry.isHidden()).thenReturn(true);
         when(mBatteryUsageStats.getConsumedPower()).thenReturn(5.1);
-        when(mockBatteryEntry.getConsumedPower()).thenReturn(1.1);
-        mockBatteryEntry.mPercent = 0.3;
-        when(mockBatteryEntry.getTimeInForegroundMs()).thenReturn(1234L);
-        when(mockBatteryEntry.getTimeInBackgroundMs()).thenReturn(5689L);
-        when(mockBatteryEntry.getPowerComponentId()).thenReturn(expectedType);
-        when(mockBatteryEntry.getConsumerType())
-            .thenReturn(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
+        when(mMockBatteryEntry.getConsumedPower()).thenReturn(1.1);
+        mMockBatteryEntry.mPercent = 0.3;
+        when(mMockBatteryEntry.getTimeInForegroundMs()).thenReturn(1234L);
+        when(mMockBatteryEntry.getTimeInBackgroundMs()).thenReturn(5689L);
+        when(mMockBatteryEntry.getPowerComponentId()).thenReturn(expectedType);
+        when(mMockBatteryEntry.getConsumerType())
+                .thenReturn(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
 
         final ContentValues values =
-            ConvertUtils.convert(
-                mockBatteryEntry,
-                mBatteryUsageStats,
-                /*batteryLevel=*/ 12,
-                /*batteryStatus=*/ BatteryManager.BATTERY_STATUS_FULL,
-                /*batteryHealth=*/ BatteryManager.BATTERY_HEALTH_COLD,
-                /*bootTimestamp=*/ 101L,
-                /*timestamp=*/ 10001L);
+                ConvertUtils.convert(
+                        mMockBatteryEntry,
+                        mBatteryUsageStats,
+                        /*batteryLevel=*/ 12,
+                        /*batteryStatus=*/ BatteryManager.BATTERY_STATUS_FULL,
+                        /*batteryHealth=*/ BatteryManager.BATTERY_HEALTH_COLD,
+                        /*bootTimestamp=*/ 101L,
+                        /*timestamp=*/ 10001L);
 
         assertThat(values.getAsLong(BatteryHistEntry.KEY_UID)).isEqualTo(1001L);
         assertThat(values.getAsLong(BatteryHistEntry.KEY_USER_ID))
-            .isEqualTo(UserHandle.getUserId(1001));
+                .isEqualTo(UserHandle.getUserId(1001));
         assertThat(values.getAsString(BatteryHistEntry.KEY_APP_LABEL))
-            .isEqualTo("Settings");
+                .isEqualTo("Settings");
         assertThat(values.getAsString(BatteryHistEntry.KEY_PACKAGE_NAME))
-            .isEqualTo("com.google.android.settings.battery");
+                .isEqualTo("com.google.android.settings.battery");
         assertThat(values.getAsBoolean(BatteryHistEntry.KEY_IS_HIDDEN)).isTrue();
         assertThat(values.getAsLong(BatteryHistEntry.KEY_BOOT_TIMESTAMP))
-            .isEqualTo(101L);
+                .isEqualTo(101L);
         assertThat(values.getAsLong(BatteryHistEntry.KEY_TIMESTAMP)).isEqualTo(10001L);
         assertThat(values.getAsString(BatteryHistEntry.KEY_ZONE_ID))
-            .isEqualTo(TimeZone.getDefault().getID());
+                .isEqualTo(TimeZone.getDefault().getID());
         assertThat(values.getAsDouble(BatteryHistEntry.KEY_TOTAL_POWER)).isEqualTo(5.1);
         assertThat(values.getAsDouble(BatteryHistEntry.KEY_CONSUME_POWER)).isEqualTo(1.1);
         assertThat(values.getAsDouble(BatteryHistEntry.KEY_PERCENT_OF_TOTAL)).isEqualTo(0.3);
         assertThat(values.getAsLong(BatteryHistEntry.KEY_FOREGROUND_USAGE_TIME))
-            .isEqualTo(1234L);
+                .isEqualTo(1234L);
         assertThat(values.getAsLong(BatteryHistEntry.KEY_BACKGROUND_USAGE_TIME))
-            .isEqualTo(5689L);
+                .isEqualTo(5689L);
         assertThat(values.getAsInteger(BatteryHistEntry.KEY_DRAIN_TYPE)).isEqualTo(expectedType);
         assertThat(values.getAsInteger(BatteryHistEntry.KEY_CONSUMER_TYPE))
-            .isEqualTo(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
+                .isEqualTo(ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY);
         assertThat(values.getAsInteger(BatteryHistEntry.KEY_BATTERY_LEVEL)).isEqualTo(12);
         assertThat(values.getAsInteger(BatteryHistEntry.KEY_BATTERY_STATUS))
-            .isEqualTo(BatteryManager.BATTERY_STATUS_FULL);
+                .isEqualTo(BatteryManager.BATTERY_STATUS_FULL);
         assertThat(values.getAsInteger(BatteryHistEntry.KEY_BATTERY_HEALTH))
-            .isEqualTo(BatteryManager.BATTERY_HEALTH_COLD);
+                .isEqualTo(BatteryManager.BATTERY_HEALTH_COLD);
     }
 
     @Test
     public void convert_nullBatteryEntry_returnsExpectedContentValues() {
         final ContentValues values =
-            ConvertUtils.convert(
-                /*entry=*/ null,
-                /*batteryUsageStats=*/ null,
-                /*batteryLevel=*/ 12,
-                /*batteryStatus=*/ BatteryManager.BATTERY_STATUS_FULL,
-                /*batteryHealth=*/ BatteryManager.BATTERY_HEALTH_COLD,
-                /*bootTimestamp=*/ 101L,
-                /*timestamp=*/ 10001L);
+                ConvertUtils.convert(
+                        /*entry=*/ null,
+                        /*batteryUsageStats=*/ null,
+                        /*batteryLevel=*/ 12,
+                        /*batteryStatus=*/ BatteryManager.BATTERY_STATUS_FULL,
+                        /*batteryHealth=*/ BatteryManager.BATTERY_HEALTH_COLD,
+                        /*bootTimestamp=*/ 101L,
+                        /*timestamp=*/ 10001L);
 
         assertThat(values.getAsLong(BatteryHistEntry.KEY_BOOT_TIMESTAMP))
-            .isEqualTo(101L);
+                .isEqualTo(101L);
         assertThat(values.getAsLong(BatteryHistEntry.KEY_TIMESTAMP))
-            .isEqualTo(10001L);
+                .isEqualTo(10001L);
         assertThat(values.getAsString(BatteryHistEntry.KEY_ZONE_ID))
-            .isEqualTo(TimeZone.getDefault().getID());
+                .isEqualTo(TimeZone.getDefault().getID());
         assertThat(values.getAsInteger(BatteryHistEntry.KEY_BATTERY_LEVEL)).isEqualTo(12);
         assertThat(values.getAsInteger(BatteryHistEntry.KEY_BATTERY_STATUS))
-            .isEqualTo(BatteryManager.BATTERY_STATUS_FULL);
+                .isEqualTo(BatteryManager.BATTERY_STATUS_FULL);
         assertThat(values.getAsInteger(BatteryHistEntry.KEY_BATTERY_HEALTH))
-            .isEqualTo(BatteryManager.BATTERY_HEALTH_COLD);
+                .isEqualTo(BatteryManager.BATTERY_HEALTH_COLD);
         assertThat(values.getAsString(BatteryHistEntry.KEY_PACKAGE_NAME))
-            .isEqualTo(ConvertUtils.FAKE_PACKAGE_NAME);
+                .isEqualTo(ConvertUtils.FAKE_PACKAGE_NAME);
     }
 
     @Test
     public void getIndexedUsageMap_nullOrEmptyHistoryMap_returnEmptyCollection() {
         final int timeSlotSize = 2;
-        final long[] batteryHistoryKeys = new long[] {101L, 102L, 103L, 104L, 105L};
+        final long[] batteryHistoryKeys = new long[]{101L, 102L, 103L, 104L, 105L};
 
         assertThat(ConvertUtils.getIndexedUsageMap(
                 mContext, timeSlotSize, batteryHistoryKeys,
                 /*batteryHistoryMap=*/ null, /*purgeLowPercentageAndFakeData=*/ true))
-            .isEmpty();
+                .isEmpty();
         assertThat(ConvertUtils.getIndexedUsageMap(
                 mContext, timeSlotSize, batteryHistoryKeys,
                 new HashMap<Long, Map<String, BatteryHistEntry>>(),
                 /*purgeLowPercentageAndFakeData=*/ true))
-            .isEmpty();
+                .isEmpty();
     }
+
     @Test
     public void getIndexedUsageMap_returnsExpectedResult() {
         // Creates the fake testing data.
         final int timeSlotSize = 2;
-        final long[] batteryHistoryKeys = new long[] {101L, 102L, 103L, 104L, 105L};
+        final long[] batteryHistoryKeys = new long[]{generateTimestamp(0), generateTimestamp(1),
+                generateTimestamp(2), generateTimestamp(3), generateTimestamp(4)};
         final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
-            new HashMap<>();
+                new HashMap<>();
         final BatteryHistEntry fakeEntry = createBatteryHistEntry(
-            ConvertUtils.FAKE_PACKAGE_NAME, "fake_label", 0, 0L, 0L, 0L);
+                ConvertUtils.FAKE_PACKAGE_NAME, "fake_label", 0, 0L, 0L, 0L);
         // Adds the index = 0 data.
         Map<String, BatteryHistEntry> entryMap = new HashMap<>();
         BatteryHistEntry entry = createBatteryHistEntry(
-            "package1", "label1", 5.0, 1L, 10L, 20L);
+                "package1", "label1", 5.0, 1L, 10L, 20L);
         entryMap.put(entry.getKey(), entry);
         entryMap.put(fakeEntry.getKey(), fakeEntry);
         batteryHistoryMap.put(Long.valueOf(batteryHistoryKeys[0]), entryMap);
@@ -189,38 +194,38 @@
         // Adds the index = 2 data.
         entryMap = new HashMap<>();
         entry = createBatteryHistEntry(
-            "package2", "label2", 10.0, 2L, 15L, 25L);
+                "package2", "label2", 10.0, 2L, 15L, 25L);
         entryMap.put(entry.getKey(), entry);
         entryMap.put(fakeEntry.getKey(), fakeEntry);
         batteryHistoryMap.put(Long.valueOf(batteryHistoryKeys[2]), entryMap);
         // Adds the index = 3 data.
         entryMap = new HashMap<>();
         entry = createBatteryHistEntry(
-            "package2", "label2", 15.0, 2L, 25L, 35L);
+                "package2", "label2", 15.0, 2L, 25L, 35L);
         entryMap.put(entry.getKey(), entry);
         entry = createBatteryHistEntry(
-            "package3", "label3", 5.0, 3L, 5L, 5L);
+                "package3", "label3", 5.0, 3L, 5L, 5L);
         entryMap.put(entry.getKey(), entry);
         entryMap.put(fakeEntry.getKey(), fakeEntry);
         batteryHistoryMap.put(Long.valueOf(batteryHistoryKeys[3]), entryMap);
         // Adds the index = 4 data.
         entryMap = new HashMap<>();
         entry = createBatteryHistEntry(
-            "package2", "label2", 30.0, 2L, 30L, 40L);
+                "package2", "label2", 30.0, 2L, 30L, 40L);
         entryMap.put(entry.getKey(), entry);
         entry = createBatteryHistEntry(
-            "package2", "label2", 75.0, 4L, 40L, 50L);
+                "package2", "label2", 75.0, 4L, 40L, 50L);
         entryMap.put(entry.getKey(), entry);
         entry = createBatteryHistEntry(
-            "package3", "label3", 5.0, 3L, 5L, 5L);
+                "package3", "label3", 5.0, 3L, 5L, 5L);
         entryMap.put(entry.getKey(), entry);
         entryMap.put(fakeEntry.getKey(), fakeEntry);
         batteryHistoryMap.put(Long.valueOf(batteryHistoryKeys[4]), entryMap);
 
         final Map<Integer, List<BatteryDiffEntry>> resultMap =
-            ConvertUtils.getIndexedUsageMap(
-                mContext, timeSlotSize, batteryHistoryKeys, batteryHistoryMap,
-                /*purgeLowPercentageAndFakeData=*/ false);
+                ConvertUtils.getIndexedUsageMap(
+                        mContext, timeSlotSize, batteryHistoryKeys, batteryHistoryMap,
+                        /*purgeLowPercentageAndFakeData=*/ false);
 
         assertThat(resultMap).hasSize(3);
         // Verifies the first timestamp result.
@@ -243,9 +248,9 @@
         // Test getIndexedUsageMap() with purged data.
         ConvertUtils.PERCENTAGE_OF_TOTAL_THRESHOLD = 50;
         final Map<Integer, List<BatteryDiffEntry>> purgedResultMap =
-            ConvertUtils.getIndexedUsageMap(
-                mContext, timeSlotSize, batteryHistoryKeys, batteryHistoryMap,
-                 /*purgeLowPercentageAndFakeData=*/ true);
+                ConvertUtils.getIndexedUsageMap(
+                        mContext, timeSlotSize, batteryHistoryKeys, batteryHistoryMap,
+                        /*purgeLowPercentageAndFakeData=*/ true);
 
         assertThat(purgedResultMap).hasSize(3);
         // Verifies the first timestamp result.
@@ -260,18 +265,18 @@
         assertThat(entryList).hasSize(1);
         // Verifies the fake data is cleared out.
         assertThat(entryList.get(0).getPackageName())
-            .isNotEqualTo(ConvertUtils.FAKE_PACKAGE_NAME);
+                .isNotEqualTo(ConvertUtils.FAKE_PACKAGE_NAME);
 
         // Adds lacked data into the battery history map.
         final int remainingSize = 25 - batteryHistoryKeys.length;
         for (int index = 0; index < remainingSize; index++) {
             batteryHistoryMap.put(105L + index + 1, new HashMap<>());
         }
-        when(mPowerUsageFeatureProvider.getBatteryHistory(mContext))
-            .thenReturn(batteryHistoryMap);
+        when(mPowerUsageFeatureProvider.getBatteryHistorySinceLastFullCharge(mContext))
+                .thenReturn(batteryHistoryMap);
 
         final List<BatteryDiffEntry> batteryDiffEntryList =
-            BatteryChartPreferenceController.getBatteryLast24HrUsageData(mContext);
+                BatteryChartPreferenceController.getAppBatteryUsageData(mContext);
 
         assertThat(batteryDiffEntryList).isNotEmpty();
         final BatteryDiffEntry resultEntry = batteryDiffEntryList.get(0);
@@ -281,11 +286,11 @@
     @Test
     public void getIndexedUsageMap_usageTimeExceed_returnsExpectedResult() {
         final int timeSlotSize = 1;
-        final long[] batteryHistoryKeys = new long[] {101L, 102L, 103L};
+        final long[] batteryHistoryKeys = new long[]{101L, 102L, 103L};
         final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
-            new HashMap<>();
+                new HashMap<>();
         final BatteryHistEntry fakeEntry = createBatteryHistEntry(
-            ConvertUtils.FAKE_PACKAGE_NAME, "fake_label", 0, 0L, 0L, 0L);
+                ConvertUtils.FAKE_PACKAGE_NAME, "fake_label", 0, 0L, 0L, 0L);
         // Adds the index = 0 data.
         Map<String, BatteryHistEntry> entryMap = new HashMap<>();
         entryMap.put(fakeEntry.getKey(), fakeEntry);
@@ -297,14 +302,14 @@
         // Adds the index = 2 data.
         entryMap = new HashMap<>();
         final BatteryHistEntry entry = createBatteryHistEntry(
-            "package3", "label3", 500, 5L, 3600000L, 7200000L);
+                "package3", "label3", 500, 5L, 3600000L, 7200000L);
         entryMap.put(entry.getKey(), entry);
         batteryHistoryMap.put(Long.valueOf(batteryHistoryKeys[2]), entryMap);
 
         final Map<Integer, List<BatteryDiffEntry>> purgedResultMap =
-            ConvertUtils.getIndexedUsageMap(
-                mContext, timeSlotSize, batteryHistoryKeys, batteryHistoryMap,
-                /*purgeLowPercentageAndFakeData=*/ true);
+                ConvertUtils.getIndexedUsageMap(
+                        mContext, timeSlotSize, batteryHistoryKeys, batteryHistoryMap,
+                        /*purgeLowPercentageAndFakeData=*/ true);
 
         assertThat(purgedResultMap).hasSize(2);
         final List<BatteryDiffEntry> entryList = purgedResultMap.get(0);
@@ -313,19 +318,19 @@
         final float ratio = (float) (7200) / (float) (3600 + 7200);
         final BatteryDiffEntry resultEntry = entryList.get(0);
         assertThat(resultEntry.mForegroundUsageTimeInMs)
-            .isEqualTo(Math.round(entry.mForegroundUsageTimeInMs * ratio));
+                .isEqualTo(Math.round(entry.mForegroundUsageTimeInMs * ratio));
         assertThat(resultEntry.mBackgroundUsageTimeInMs)
-            .isEqualTo(Math.round(entry.mBackgroundUsageTimeInMs * ratio));
+                .isEqualTo(Math.round(entry.mBackgroundUsageTimeInMs * ratio));
         assertThat(resultEntry.mConsumePower)
-            .isEqualTo(entry.mConsumePower * ratio);
+                .isEqualTo(entry.mConsumePower * ratio);
     }
 
     @Test
     public void getIndexedUsageMap_hideBackgroundUsageTime_returnsExpectedResult() {
-        final long[] batteryHistoryKeys = new long[] {101L, 102L, 103L};
+        final long[] batteryHistoryKeys = new long[]{101L, 102L, 103L};
         final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
         final BatteryHistEntry fakeEntry = createBatteryHistEntry(
-            ConvertUtils.FAKE_PACKAGE_NAME, "fake_label", 0, 0L, 0L, 0L);
+                ConvertUtils.FAKE_PACKAGE_NAME, "fake_label", 0, 0L, 0L, 0L);
         // Adds the index = 0 data.
         Map<String, BatteryHistEntry> entryMap = new HashMap<>();
         entryMap.put(fakeEntry.getKey(), fakeEntry);
@@ -337,16 +342,16 @@
         // Adds the index = 2 data.
         entryMap = new HashMap<>();
         final BatteryHistEntry entry = createBatteryHistEntry(
-            "package3", "label3", 500, 5L, 3600000L, 7200000L);
+                "package3", "label3", 500, 5L, 3600000L, 7200000L);
         entryMap.put(entry.getKey(), entry);
         batteryHistoryMap.put(Long.valueOf(batteryHistoryKeys[2]), entryMap);
         when(mPowerUsageFeatureProvider.getHideBackgroundUsageTimeSet(mContext))
-            .thenReturn(new HashSet(Arrays.asList((CharSequence) "package3")));
+                .thenReturn(new HashSet(Arrays.asList((CharSequence) "package3")));
 
         final Map<Integer, List<BatteryDiffEntry>> purgedResultMap =
-            ConvertUtils.getIndexedUsageMap(
-                mContext, /*timeSlotSize=*/ 1, batteryHistoryKeys, batteryHistoryMap,
-                /*purgeLowPercentageAndFakeData=*/ true);
+                ConvertUtils.getIndexedUsageMap(
+                        mContext, /*timeSlotSize=*/ 1, batteryHistoryKeys, batteryHistoryMap,
+                        /*purgeLowPercentageAndFakeData=*/ true);
 
         final BatteryDiffEntry resultEntry = purgedResultMap.get(0).get(0);
         assertThat(resultEntry.mBackgroundUsageTimeInMs).isEqualTo(0);
@@ -355,7 +360,7 @@
     @Test
     public void getLocale_nullContext_returnDefaultLocale() {
         assertThat(ConvertUtils.getLocale(/*context=*/ null))
-            .isEqualTo(Locale.getDefault());
+                .isEqualTo(Locale.getDefault());
     }
 
     @Test
@@ -370,6 +375,71 @@
         assertThat(ConvertUtils.getLocale(mContext)).isEqualTo(Locale.getDefault());
     }
 
+    @Test
+    public void resolveMultiUsersData_replaceOtherUsersItemWithExpectedEntry() {
+        final int currentUserId = mContext.getUserId();
+        final Map<Integer, List<BatteryDiffEntry>> entryMap = new HashMap<>();
+        // Without other users time slot.
+        entryMap.put(0, Arrays.asList(
+                createBatteryDiffEntry(
+                        currentUserId,
+                        ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                        /*consumePercentage=*/ 50)));
+        // With other users time slot.
+        final List<BatteryDiffEntry> withOtherUsersList = new ArrayList<>();
+        entryMap.put(1, withOtherUsersList);
+        withOtherUsersList.add(
+                createBatteryDiffEntry(
+                        currentUserId + 1,
+                        ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY,
+                        /*consumePercentage=*/ 20));
+        withOtherUsersList.add(
+                createBatteryDiffEntry(
+                        currentUserId + 2,
+                        ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                        /*consumePercentage=*/ 30));
+        withOtherUsersList.add(
+                createBatteryDiffEntry(
+                        currentUserId + 3,
+                        ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                        /*consumePercentage=*/ 40));
+
+        ConvertUtils.resolveMultiUsersData(mContext, entryMap);
+
+        assertThat(entryMap.get(0).get(0).getPercentOfTotal()).isEqualTo(50);
+        // Asserts with other users items.
+        final List<BatteryDiffEntry> entryList = entryMap.get(1);
+        assertThat(entryList).hasSize(2);
+        assertBatteryDiffEntry(
+                entryList.get(0),
+                currentUserId + 1,
+                /*uid=*/ 0,
+                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY,
+                /*consumePercentage=*/ 20);
+        assertBatteryDiffEntry(
+                entryList.get(1),
+                BatteryUtils.UID_OTHER_USERS,
+                BatteryUtils.UID_OTHER_USERS,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                /*consumePercentage=*/ 70);
+    }
+
+    private BatteryDiffEntry createBatteryDiffEntry(
+            long userId, int counsumerType, double consumePercentage) {
+        final ContentValues values = new ContentValues();
+        values.put(BatteryHistEntry.KEY_USER_ID, userId);
+        values.put(BatteryHistEntry.KEY_CONSUMER_TYPE, counsumerType);
+        final BatteryDiffEntry batteryDiffEntry =
+                new BatteryDiffEntry(
+                        mContext,
+                        /*foregroundUsageTimeInMs=*/ 0,
+                        /*backgroundUsageTimeInMs=*/ 0,
+                        /*consumePower=*/ consumePercentage,
+                        new BatteryHistEntry(values));
+        batteryDiffEntry.setTotalConsumePower(100f);
+        return batteryDiffEntry;
+    }
+
     private static BatteryHistEntry createBatteryHistEntry(
             String packageName, String appLabel, double consumePower,
             long uid, long foregroundUsageTimeInMs, long backgroundUsageTimeInMs) {
@@ -379,20 +449,34 @@
         values.put(BatteryHistEntry.KEY_APP_LABEL, appLabel);
         values.put(BatteryHistEntry.KEY_UID, Long.valueOf(uid));
         values.put(BatteryHistEntry.KEY_CONSUMER_TYPE,
-            Integer.valueOf(ConvertUtils.CONSUMER_TYPE_UID_BATTERY));
+                Integer.valueOf(ConvertUtils.CONSUMER_TYPE_UID_BATTERY));
         values.put(BatteryHistEntry.KEY_CONSUME_POWER, consumePower);
         values.put(BatteryHistEntry.KEY_FOREGROUND_USAGE_TIME,
-            Long.valueOf(foregroundUsageTimeInMs));
+                Long.valueOf(foregroundUsageTimeInMs));
         values.put(BatteryHistEntry.KEY_BACKGROUND_USAGE_TIME,
-            Long.valueOf(backgroundUsageTimeInMs));
+                Long.valueOf(backgroundUsageTimeInMs));
         return new BatteryHistEntry(values);
     }
 
     private static void assertBatteryDiffEntry(
+            BatteryDiffEntry entry, long userId, long uid, int counsumerType,
+            double consumePercentage) {
+        assertThat(entry.mBatteryHistEntry.mUid).isEqualTo(uid);
+        assertThat(entry.mBatteryHistEntry.mUserId).isEqualTo(userId);
+        assertThat(entry.mBatteryHistEntry.mConsumerType).isEqualTo(counsumerType);
+        assertThat(entry.getPercentOfTotal()).isEqualTo(consumePercentage);
+    }
+
+    private static void assertBatteryDiffEntry(
             BatteryDiffEntry entry, int percentOfTotal,
             long foregroundUsageTimeInMs, long backgroundUsageTimeInMs) {
         assertThat((int) entry.getPercentOfTotal()).isEqualTo(percentOfTotal);
         assertThat(entry.mForegroundUsageTimeInMs).isEqualTo(foregroundUsageTimeInMs);
         assertThat(entry.mBackgroundUsageTimeInMs).isEqualTo(backgroundUsageTimeInMs);
     }
+
+    private static Long generateTimestamp(int index) {
+        // "2021-04-23 07:00:00 UTC" + index hours
+        return 1619247600000L + index * DateUtils.HOUR_IN_MILLIS;
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/DataProcessorTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/DataProcessorTest.java
new file mode 100644
index 0000000..883b0e7
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/DataProcessorTest.java
@@ -0,0 +1,950 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge.batteryusage;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import android.content.ContentValues;
+import android.content.Context;
+import android.text.format.DateUtils;
+
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
+import com.android.settings.testutils.FakeFeatureFactory;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.RuntimeEnvironment;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Calendar;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.TimeZone;
+
+@RunWith(RobolectricTestRunner.class)
+public class DataProcessorTest {
+    private static final String FAKE_ENTRY_KEY = "fake_entry_key";
+
+    private Context mContext;
+
+    private FakeFeatureFactory mFeatureFactory;
+    private PowerUsageFeatureProvider mPowerUsageFeatureProvider;
+
+    @Before
+    public void setUp() {
+        MockitoAnnotations.initMocks(this);
+        TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
+
+        mContext = spy(RuntimeEnvironment.application);
+        mFeatureFactory = FakeFeatureFactory.setupForTest();
+        mPowerUsageFeatureProvider = mFeatureFactory.powerUsageFeatureProvider;
+    }
+
+    @Test
+    public void getBatteryLevelData_emptyHistoryMap_returnNull() {
+        assertThat(DataProcessor.getBatteryLevelData(
+                mContext,
+                /*handler=*/ null,
+                /*batteryHistoryMap=*/ null,
+                /*asyncResponseDelegate=*/ null))
+                .isNull();
+        assertThat(DataProcessor.getBatteryLevelData(
+                mContext, /*handler=*/ null, new HashMap<>(), /*asyncResponseDelegate=*/ null))
+                .isNull();
+    }
+
+    @Test
+    public void getBatteryLevelData_notEnoughData_returnNull() {
+        // The timestamps are within 1 hour.
+        final long[] timestamps = {1000000L, 2000000L, 3000000L};
+        final int[] levels = {100, 99, 98};
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
+                createHistoryMap(timestamps, levels);
+
+        assertThat(DataProcessor.getBatteryLevelData(
+                mContext, /*handler=*/ null, batteryHistoryMap, /*asyncResponseDelegate=*/ null))
+                .isNull();
+    }
+
+    @Test
+    public void getBatteryLevelData_returnExpectedResult() {
+        // Timezone GMT+8: 2022-01-01 00:00:00, 2022-01-01 01:00:00, 2022-01-01 02:00:00
+        final long[] timestamps = {1640966400000L, 1640970000000L, 1640973600000L};
+        final int[] levels = {100, 99, 98};
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
+                createHistoryMap(timestamps, levels);
+
+        final BatteryLevelData resultData =
+                DataProcessor.getBatteryLevelData(
+                        mContext,
+                        /*handler=*/ null,
+                        batteryHistoryMap,
+                        /*asyncResponseDelegate=*/ null);
+
+        final List<Long> expectedDailyTimestamps = List.of(timestamps[0], timestamps[2]);
+        final List<Integer> expectedDailyLevels = List.of(levels[0], levels[2]);
+        final List<List<Long>> expectedHourlyTimestamps = List.of(expectedDailyTimestamps);
+        final List<List<Integer>> expectedHourlyLevels = List.of(expectedDailyLevels);
+        verifyExpectedBatteryLevelData(
+                resultData,
+                expectedDailyTimestamps,
+                expectedDailyLevels,
+                expectedHourlyTimestamps,
+                expectedHourlyLevels);
+    }
+
+    @Test
+    public void getHistoryMapWithExpectedTimestamps_emptyHistoryMap_returnEmptyMap() {
+        assertThat(DataProcessor
+                .getHistoryMapWithExpectedTimestamps(mContext, new HashMap<>()))
+                .isEmpty();
+    }
+
+    @Test
+    public void getHistoryMapWithExpectedTimestamps_returnExpectedMap() {
+        // Timezone GMT+8
+        final long[] timestamps = {
+                1640966700000L, // 2022-01-01 00:05:00
+                1640970180000L, // 2022-01-01 01:03:00
+                1640973840000L, // 2022-01-01 02:04:00
+                1640978100000L, // 2022-01-01 03:15:00
+                1640981400000L  // 2022-01-01 04:10:00
+        };
+        final int[] levels = {100, 94, 90, 82, 50};
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
+                createHistoryMap(timestamps, levels);
+
+        final Map<Long, Map<String, BatteryHistEntry>> resultMap =
+                DataProcessor.getHistoryMapWithExpectedTimestamps(mContext, batteryHistoryMap);
+
+        // Timezone GMT+8
+        final long[] expectedTimestamps = {
+                1640966400000L, // 2022-01-01 00:00:00
+                1640970000000L, // 2022-01-01 01:00:00
+                1640973600000L, // 2022-01-01 02:00:00
+                1640977200000L, // 2022-01-01 03:00:00
+                1640980800000L  // 2022-01-01 04:00:00
+        };
+        final int[] expectedLevels = {100, 94, 90, 84, 56};
+        assertThat(resultMap).hasSize(expectedLevels.length);
+        for (int index = 0; index < expectedLevels.length; index++) {
+            assertThat(resultMap.get(expectedTimestamps[index]).get(FAKE_ENTRY_KEY).mBatteryLevel)
+                    .isEqualTo(expectedLevels[index]);
+        }
+    }
+
+    @Test
+    public void getLevelDataThroughProcessedHistoryMap_notEnoughData_returnNull() {
+        final long[] timestamps = {100L};
+        final int[] levels = {100};
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
+                createHistoryMap(timestamps, levels);
+
+        assertThat(
+                DataProcessor.getLevelDataThroughProcessedHistoryMap(mContext, batteryHistoryMap))
+                .isNull();
+    }
+
+    @Test
+    public void getLevelDataThroughProcessedHistoryMap_OneDayData_returnExpectedResult() {
+        // Timezone GMT+8
+        final long[] timestamps = {
+                1640966400000L, // 2022-01-01 00:00:00
+                1640970000000L, // 2022-01-01 01:00:00
+                1640973600000L, // 2022-01-01 02:00:00
+                1640977200000L, // 2022-01-01 03:00:00
+                1640980800000L  // 2022-01-01 04:00:00
+        };
+        final int[] levels = {100, 94, 90, 82, 50};
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
+                createHistoryMap(timestamps, levels);
+
+        final BatteryLevelData resultData =
+                DataProcessor.getLevelDataThroughProcessedHistoryMap(mContext, batteryHistoryMap);
+
+        final List<Long> expectedDailyTimestamps = List.of(timestamps[0], timestamps[4]);
+        final List<Integer> expectedDailyLevels = List.of(levels[0], levels[4]);
+        final List<List<Long>> expectedHourlyTimestamps = List.of(
+                List.of(timestamps[0], timestamps[2], timestamps[4])
+        );
+        final List<List<Integer>> expectedHourlyLevels = List.of(
+                List.of(levels[0], levels[2], levels[4])
+        );
+        verifyExpectedBatteryLevelData(
+                resultData,
+                expectedDailyTimestamps,
+                expectedDailyLevels,
+                expectedHourlyTimestamps,
+                expectedHourlyLevels);
+    }
+
+    @Test
+    public void getLevelDataThroughProcessedHistoryMap_MultipleDaysData_returnExpectedResult() {
+        // Timezone GMT+8
+        final long[] timestamps = {
+                1641038400000L, // 2022-01-01 20:00:00
+                1641060000000L, // 2022-01-02 02:00:00
+                1641067200000L, // 2022-01-02 04:00:00
+                1641081600000L, // 2022-01-02 08:00:00
+        };
+        final int[] levels = {100, 94, 90, 82};
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap =
+                createHistoryMap(timestamps, levels);
+
+        final BatteryLevelData resultData =
+                DataProcessor.getLevelDataThroughProcessedHistoryMap(mContext, batteryHistoryMap);
+
+        final List<Long> expectedDailyTimestamps = List.of(
+                1641038400000L, // 2022-01-01 20:00:00
+                1641052800000L, // 2022-01-02 00:00:00
+                1641081600000L  // 2022-01-02 08:00:00
+        );
+        final List<Integer> expectedDailyLevels = new ArrayList<>();
+        expectedDailyLevels.add(100);
+        expectedDailyLevels.add(null);
+        expectedDailyLevels.add(82);
+        final List<List<Long>> expectedHourlyTimestamps = List.of(
+                List.of(
+                        1641038400000L, // 2022-01-01 20:00:00
+                        1641045600000L, // 2022-01-01 22:00:00
+                        1641052800000L  // 2022-01-02 00:00:00
+                ),
+                List.of(
+                        1641052800000L, // 2022-01-02 00:00:00
+                        1641060000000L, // 2022-01-02 02:00:00
+                        1641067200000L, // 2022-01-02 04:00:00
+                        1641074400000L, // 2022-01-02 06:00:00
+                        1641081600000L  // 2022-01-02 08:00:00
+                )
+        );
+        final List<Integer> expectedHourlyLevels1 = new ArrayList<>();
+        expectedHourlyLevels1.add(100);
+        expectedHourlyLevels1.add(null);
+        expectedHourlyLevels1.add(null);
+        final List<Integer> expectedHourlyLevels2 = new ArrayList<>();
+        expectedHourlyLevels2.add(null);
+        expectedHourlyLevels2.add(94);
+        expectedHourlyLevels2.add(90);
+        expectedHourlyLevels2.add(null);
+        expectedHourlyLevels2.add(82);
+        final List<List<Integer>> expectedHourlyLevels = List.of(
+                expectedHourlyLevels1,
+                expectedHourlyLevels2
+        );
+        verifyExpectedBatteryLevelData(
+                resultData,
+                expectedDailyTimestamps,
+                expectedDailyLevels,
+                expectedHourlyTimestamps,
+                expectedHourlyLevels);
+    }
+
+    @Test
+    public void getTimestampSlots_emptyRawList_returnEmptyList() {
+        final List<Long> resultList =
+                DataProcessor.getTimestampSlots(new ArrayList<>());
+        assertThat(resultList).isEmpty();
+    }
+
+    @Test
+    public void getTimestampSlots_startWithEvenHour_returnExpectedResult() {
+        final Calendar startCalendar = Calendar.getInstance();
+        startCalendar.set(2022, 6, 5, 6, 30, 50); // 2022-07-05 06:30:50
+        final Calendar endCalendar = Calendar.getInstance();
+        endCalendar.set(2022, 6, 5, 22, 30, 50); // 2022-07-05 22:30:50
+
+        final Calendar expectedStartCalendar = Calendar.getInstance();
+        expectedStartCalendar.set(2022, 6, 5, 6, 0, 0); // 2022-07-05 06:00:00
+        final Calendar expectedEndCalendar = Calendar.getInstance();
+        expectedEndCalendar.set(2022, 6, 5, 22, 0, 0); // 2022-07-05 22:00:00
+        verifyExpectedTimestampSlots(
+                startCalendar, endCalendar, expectedStartCalendar, expectedEndCalendar);
+    }
+
+    @Test
+    public void getTimestampSlots_startWithOddHour_returnExpectedResult() {
+        final Calendar startCalendar = Calendar.getInstance();
+        startCalendar.set(2022, 6, 5, 5, 0, 50); // 2022-07-05 05:00:50
+        final Calendar endCalendar = Calendar.getInstance();
+        endCalendar.set(2022, 6, 6, 21, 00, 50); // 2022-07-06 21:00:50
+
+        final Calendar expectedStartCalendar = Calendar.getInstance();
+        expectedStartCalendar.set(2022, 6, 5, 6, 00, 00); // 2022-07-05 06:00:00
+        final Calendar expectedEndCalendar = Calendar.getInstance();
+        expectedEndCalendar.set(2022, 6, 6, 20, 00, 00); // 2022-07-06 20:00:00
+        verifyExpectedTimestampSlots(
+                startCalendar, endCalendar, expectedStartCalendar, expectedEndCalendar);
+    }
+
+    @Test
+    public void getDailyTimestamps_notEnoughData_returnEmptyList() {
+        assertThat(DataProcessor.getDailyTimestamps(new ArrayList<>())).isEmpty();
+        assertThat(DataProcessor.getDailyTimestamps(List.of(100L))).isEmpty();
+    }
+
+    @Test
+    public void getDailyTimestamps_OneDayData_returnExpectedList() {
+        // Timezone GMT+8
+        final List<Long> timestamps = List.of(
+                1640966400000L, // 2022-01-01 00:00:00
+                1640970000000L, // 2022-01-01 01:00:00
+                1640973600000L, // 2022-01-01 02:00:00
+                1640977200000L, // 2022-01-01 03:00:00
+                1640980800000L  // 2022-01-01 04:00:00
+        );
+
+        final List<Long> expectedTimestamps = List.of(
+                1640966400000L, // 2022-01-01 00:00:00
+                1640980800000L  // 2022-01-01 04:00:00
+        );
+        assertThat(DataProcessor.getDailyTimestamps(timestamps)).isEqualTo(expectedTimestamps);
+    }
+
+    @Test
+    public void getDailyTimestamps_MultipleDaysData_returnExpectedList() {
+        // Timezone GMT+8
+        final List<Long> timestamps = List.of(
+                1640988000000L, // 2022-01-01 06:00:00
+                1641060000000L, // 2022-01-02 02:00:00
+                1641160800000L, // 2022-01-03 06:00:00
+                1641254400000L  // 2022-01-04 08:00:00
+        );
+
+        final List<Long> expectedTimestamps = List.of(
+                1640988000000L, // 2022-01-01 06:00:00
+                1641052800000L, // 2022-01-02 00:00:00
+                1641139200000L, // 2022-01-03 00:00:00
+                1641225600000L, // 2022-01-04 00:00:00
+                1641254400000L  // 2022-01-04 08:00:00
+        );
+        assertThat(DataProcessor.getDailyTimestamps(timestamps)).isEqualTo(expectedTimestamps);
+    }
+
+    @Test
+    public void isFromFullCharge_emptyData_returnFalse() {
+        assertThat(DataProcessor.isFromFullCharge(null)).isFalse();
+        assertThat(DataProcessor.isFromFullCharge(new HashMap<>())).isFalse();
+    }
+
+    @Test
+    public void isFromFullCharge_notChargedData_returnFalse() {
+        final Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+        final ContentValues values = new ContentValues();
+        values.put("batteryLevel", 98);
+        final BatteryHistEntry entry = new BatteryHistEntry(values);
+        entryMap.put(FAKE_ENTRY_KEY, entry);
+
+        assertThat(DataProcessor.isFromFullCharge(entryMap)).isFalse();
+    }
+
+    @Test
+    public void isFromFullCharge_chargedData_returnTrue() {
+        final Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+        final ContentValues values = new ContentValues();
+        values.put("batteryLevel", 100);
+        final BatteryHistEntry entry = new BatteryHistEntry(values);
+        entryMap.put(FAKE_ENTRY_KEY, entry);
+
+        assertThat(DataProcessor.isFromFullCharge(entryMap)).isTrue();
+    }
+
+    @Test
+    public void findNearestTimestamp_returnExpectedResult() {
+        long[] results = DataProcessor.findNearestTimestamp(
+                Arrays.asList(10L, 20L, 30L, 40L), /*target=*/ 15L);
+        assertThat(results).isEqualTo(new long[] {10L, 20L});
+
+        results = DataProcessor.findNearestTimestamp(
+                Arrays.asList(10L, 20L, 30L, 40L), /*target=*/ 10L);
+        assertThat(results).isEqualTo(new long[] {10L, 10L});
+
+        results = DataProcessor.findNearestTimestamp(
+                Arrays.asList(10L, 20L, 30L, 40L), /*target=*/ 5L);
+        assertThat(results).isEqualTo(new long[] {0L, 10L});
+
+        results = DataProcessor.findNearestTimestamp(
+                Arrays.asList(10L, 20L, 30L, 40L), /*target=*/ 50L);
+        assertThat(results).isEqualTo(new long[] {40L, 0L});
+    }
+
+    @Test
+    public void getTimestampOfNextDay_returnExpectedResult() {
+        // 2021-02-28 06:00:00 => 2021-03-01 00:00:00
+        assertThat(DataProcessor.getTimestampOfNextDay(1614463200000L))
+                .isEqualTo(1614528000000L);
+        // 2021-12-31 16:00:00 => 2022-01-01 00:00:00
+        assertThat(DataProcessor.getTimestampOfNextDay(1640937600000L))
+                .isEqualTo(1640966400000L);
+    }
+
+    @Test
+    public void isForDailyChart_returnExpectedResult() {
+        assertThat(DataProcessor.isForDailyChart(/*isStartOrEnd=*/ true, 0L)).isTrue();
+        // 2022-01-01 00:00:00
+        assertThat(DataProcessor.isForDailyChart(/*isStartOrEnd=*/ false, 1640966400000L))
+                .isTrue();
+        // 2022-01-01 01:00:05
+        assertThat(DataProcessor.isForDailyChart(/*isStartOrEnd=*/ false, 1640970005000L))
+                .isFalse();
+    }
+
+    @Test
+    public void getBatteryUsageMap_emptyHistoryMap_returnNull() {
+        final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay =
+                new ArrayList<>();
+        hourlyBatteryLevelsPerDay.add(
+                new BatteryLevelData.PeriodBatteryLevelData(new ArrayList<>(), new ArrayList<>()));
+
+        assertThat(DataProcessor.getBatteryUsageMap(
+                mContext, hourlyBatteryLevelsPerDay, new HashMap<>())).isNull();
+    }
+
+    @Test
+    public void getBatteryUsageMap_returnsExpectedResult() {
+        final long[] batteryHistoryKeys = new long[]{
+                1641045600000L, // 2022-01-01 22:00:00
+                1641049200000L, // 2022-01-01 23:00:00
+                1641052800000L, // 2022-01-02 00:00:00
+                1641056400000L, // 2022-01-02 01:00:00
+                1641060000000L, // 2022-01-02 02:00:00
+        };
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
+        final int currentUserId = mContext.getUserId();
+        final BatteryHistEntry fakeEntry = createBatteryHistEntry(
+                ConvertUtils.FAKE_PACKAGE_NAME, "fake_label", /*consumePower=*/ 0, /*uid=*/ 0L,
+                currentUserId, ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                /*foregroundUsageTimeInMs=*/ 0L, /*backgroundUsageTimeInMs=*/ 0L);
+        // Adds the index = 0 data.
+        Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+        BatteryHistEntry entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 5.0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 10L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        entryMap.put(fakeEntry.getKey(), fakeEntry);
+        batteryHistoryMap.put(batteryHistoryKeys[0], entryMap);
+        // Adds the index = 1 data.
+        entryMap = new HashMap<>();
+        entryMap.put(fakeEntry.getKey(), fakeEntry);
+        batteryHistoryMap.put(batteryHistoryKeys[1], entryMap);
+        // Adds the index = 2 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 20.0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 15L,
+                25L);
+        entryMap.put(entry.getKey(), entry);
+        entryMap.put(fakeEntry.getKey(), fakeEntry);
+        batteryHistoryMap.put(batteryHistoryKeys[2], entryMap);
+        // Adds the index = 3 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 40.0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 25L,
+                /*backgroundUsageTimeInMs=*/ 35L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 10.0, /*uid=*/ 3L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY, /*foregroundUsageTimeInMs=*/ 40L,
+                /*backgroundUsageTimeInMs=*/ 50L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package3", "label3", /*consumePower=*/ 15.0, /*uid=*/ 4L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 5L,
+                /*backgroundUsageTimeInMs=*/ 5L);
+        entryMap.put(entry.getKey(), entry);
+        entryMap.put(fakeEntry.getKey(), fakeEntry);
+        batteryHistoryMap.put(batteryHistoryKeys[3], entryMap);
+        // Adds the index = 4 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 40.0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 30L,
+                /*backgroundUsageTimeInMs=*/ 40L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 20.0, /*uid=*/ 3L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY, /*foregroundUsageTimeInMs=*/ 50L,
+                /*backgroundUsageTimeInMs=*/ 60L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package3", "label3", /*consumePower=*/ 40.0, /*uid=*/ 4L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 5L,
+                /*backgroundUsageTimeInMs=*/ 5L);
+        entryMap.put(entry.getKey(), entry);
+        entryMap.put(fakeEntry.getKey(), fakeEntry);
+        batteryHistoryMap.put(batteryHistoryKeys[4], entryMap);
+        final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay =
+                new ArrayList<>();
+        // Adds the day 1 data.
+        List<Long> timestamps =
+                List.of(batteryHistoryKeys[0], batteryHistoryKeys[2]);
+        final List<Integer> levels = List.of(100, 100);
+        hourlyBatteryLevelsPerDay.add(
+                new BatteryLevelData.PeriodBatteryLevelData(timestamps, levels));
+        // Adds the day 2 data.
+        timestamps = List.of(batteryHistoryKeys[2], batteryHistoryKeys[4]);
+        hourlyBatteryLevelsPerDay.add(
+                new BatteryLevelData.PeriodBatteryLevelData(timestamps, levels));
+
+        final Map<Integer, Map<Integer, BatteryDiffData>> resultMap =
+                DataProcessor.getBatteryUsageMap(
+                        mContext, hourlyBatteryLevelsPerDay, batteryHistoryMap);
+
+        BatteryDiffData resultDiffData =
+                resultMap
+                        .get(DataProcessor.SELECTED_INDEX_ALL)
+                        .get(DataProcessor.SELECTED_INDEX_ALL);
+        assertBatteryDiffEntry(
+                resultDiffData.getAppDiffEntryList().get(0), currentUserId, /*uid=*/ 2L,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*consumePercentage=*/ 40.0,
+                /*foregroundUsageTimeInMs=*/ 30, /*backgroundUsageTimeInMs=*/ 40);
+        assertBatteryDiffEntry(
+                resultDiffData.getAppDiffEntryList().get(1), currentUserId, /*uid=*/ 4L,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*consumePercentage=*/ 40.0,
+                /*foregroundUsageTimeInMs=*/ 5, /*backgroundUsageTimeInMs=*/ 5);
+        assertBatteryDiffEntry(
+                resultDiffData.getSystemDiffEntryList().get(0), currentUserId, /*uid=*/ 3L,
+                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY, /*consumePercentage=*/ 20.0,
+                /*foregroundUsageTimeInMs=*/ 50, /*backgroundUsageTimeInMs=*/ 60);
+        resultDiffData = resultMap.get(0).get(DataProcessor.SELECTED_INDEX_ALL);
+        assertBatteryDiffEntry(
+                resultDiffData.getAppDiffEntryList().get(0), currentUserId, /*uid=*/ 2L,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*consumePercentage=*/ 100.0,
+                /*foregroundUsageTimeInMs=*/ 15, /*backgroundUsageTimeInMs=*/ 25);
+        resultDiffData = resultMap.get(1).get(DataProcessor.SELECTED_INDEX_ALL);
+        assertBatteryDiffEntry(
+                resultDiffData.getAppDiffEntryList().get(0), currentUserId, /*uid=*/ 4L,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*consumePercentage=*/ 50.0,
+                /*foregroundUsageTimeInMs=*/ 5, /*backgroundUsageTimeInMs=*/ 5);
+        assertBatteryDiffEntry(
+                resultDiffData.getAppDiffEntryList().get(1), currentUserId, /*uid=*/ 2L,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*consumePercentage=*/ 25.0,
+                /*foregroundUsageTimeInMs=*/ 15, /*backgroundUsageTimeInMs=*/ 15);
+        assertBatteryDiffEntry(
+                resultDiffData.getSystemDiffEntryList().get(0), currentUserId, /*uid=*/ 3L,
+                ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY, /*consumePercentage=*/ 25.0,
+                /*foregroundUsageTimeInMs=*/ 50, /*backgroundUsageTimeInMs=*/ 60);
+    }
+
+    @Test
+    public void getBatteryUsageMap_multipleUsers_returnsExpectedResult() {
+        final long[] batteryHistoryKeys = new long[]{
+                1641052800000L, // 2022-01-02 00:00:00
+                1641056400000L, // 2022-01-02 01:00:00
+                1641060000000L  // 2022-01-02 02:00:00
+        };
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
+        final int currentUserId = mContext.getUserId();
+        // Adds the index = 0 data.
+        Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+        BatteryHistEntry entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 5.0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 10L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 10.0, /*uid=*/ 2L, currentUserId + 1,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 10L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 5.0, /*uid=*/ 3L, currentUserId + 2,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 20L,
+                /*backgroundUsageTimeInMs=*/ 30L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[0], entryMap);
+        // Adds the index = 1 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 15.0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 20L,
+                /*backgroundUsageTimeInMs=*/ 30L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 30.0, /*uid=*/ 2L, currentUserId + 1,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 10L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 15.0, /*uid=*/ 3L, currentUserId + 2,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 30L,
+                /*backgroundUsageTimeInMs=*/ 30L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[1], entryMap);
+        // Adds the index = 2 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 25.0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 20L,
+                /*backgroundUsageTimeInMs=*/ 30L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 50.0, /*uid=*/ 2L, currentUserId + 1,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 20L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 25.0, /*uid=*/ 3L, currentUserId + 2,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 30L,
+                /*backgroundUsageTimeInMs=*/ 30L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[2], entryMap);
+        final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay =
+                new ArrayList<>();
+        List<Long> timestamps = List.of(batteryHistoryKeys[0], batteryHistoryKeys[2]);
+        final List<Integer> levels = List.of(100, 100);
+        hourlyBatteryLevelsPerDay.add(
+                new BatteryLevelData.PeriodBatteryLevelData(timestamps, levels));
+
+        final Map<Integer, Map<Integer, BatteryDiffData>> resultMap =
+                DataProcessor.getBatteryUsageMap(
+                        mContext, hourlyBatteryLevelsPerDay, batteryHistoryMap);
+
+        final BatteryDiffData resultDiffData =
+                resultMap
+                        .get(DataProcessor.SELECTED_INDEX_ALL)
+                        .get(DataProcessor.SELECTED_INDEX_ALL);
+        assertBatteryDiffEntry(
+                resultDiffData.getAppDiffEntryList().get(0), currentUserId, /*uid=*/ 1L,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*consumePercentage=*/ 25.0,
+                /*foregroundUsageTimeInMs=*/ 10, /*backgroundUsageTimeInMs=*/ 10);
+        assertBatteryDiffEntry(
+                resultDiffData.getSystemDiffEntryList().get(0), BatteryUtils.UID_OTHER_USERS,
+                /*uid=*/ BatteryUtils.UID_OTHER_USERS, ConvertUtils.CONSUMER_TYPE_UID_BATTERY,
+                /*consumePercentage=*/ 75.0, /*foregroundUsageTimeInMs=*/ 0,
+                /*backgroundUsageTimeInMs=*/ 0);
+        assertThat(resultMap.get(0).get(0)).isNotNull();
+        assertThat(resultMap.get(0).get(DataProcessor.SELECTED_INDEX_ALL)).isNotNull();
+    }
+
+    @Test
+    public void getBatteryUsageMap_usageTimeExceed_returnsExpectedResult() {
+        final long[] batteryHistoryKeys = new long[]{
+                1641052800000L, // 2022-01-02 00:00:00
+                1641056400000L, // 2022-01-02 01:00:00
+                1641060000000L  // 2022-01-02 02:00:00
+        };
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
+        final int currentUserId = mContext.getUserId();
+        // Adds the index = 0 data.
+        Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+        BatteryHistEntry entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[0], entryMap);
+        // Adds the index = 1 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[1], entryMap);
+        // Adds the index = 2 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 500.0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 3600000L,
+                /*backgroundUsageTimeInMs=*/ 7200000L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[2], entryMap);
+        final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay =
+                new ArrayList<>();
+        List<Long> timestamps = List.of(batteryHistoryKeys[0], batteryHistoryKeys[2]);
+        final List<Integer> levels = List.of(100, 100);
+        hourlyBatteryLevelsPerDay.add(
+                new BatteryLevelData.PeriodBatteryLevelData(timestamps, levels));
+
+        final Map<Integer, Map<Integer, BatteryDiffData>> resultMap =
+                DataProcessor.getBatteryUsageMap(
+                        mContext, hourlyBatteryLevelsPerDay, batteryHistoryMap);
+
+        final BatteryDiffData resultDiffData =
+                resultMap
+                        .get(DataProcessor.SELECTED_INDEX_ALL)
+                        .get(DataProcessor.SELECTED_INDEX_ALL);
+        // Verifies the clipped usage time.
+        final float ratio = (float) (7200) / (float) (3600 + 7200);
+        final BatteryDiffEntry resultEntry = resultDiffData.getAppDiffEntryList().get(0);
+        assertThat(resultEntry.mForegroundUsageTimeInMs)
+                .isEqualTo(Math.round(entry.mForegroundUsageTimeInMs * ratio));
+        assertThat(resultEntry.mBackgroundUsageTimeInMs)
+                .isEqualTo(Math.round(entry.mBackgroundUsageTimeInMs * ratio));
+        assertThat(resultEntry.mConsumePower)
+                .isEqualTo(entry.mConsumePower * ratio);
+        assertThat(resultMap.get(0).get(0)).isNotNull();
+        assertThat(resultMap.get(0).get(DataProcessor.SELECTED_INDEX_ALL)).isNotNull();
+    }
+
+    @Test
+    public void getBatteryUsageMap_hideApplicationEntries_returnsExpectedResult() {
+        final long[] batteryHistoryKeys = new long[]{
+                1641052800000L, // 2022-01-02 00:00:00
+                1641056400000L, // 2022-01-02 01:00:00
+                1641060000000L  // 2022-01-02 02:00:00
+        };
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
+        final int currentUserId = mContext.getUserId();
+        // Adds the index = 0 data.
+        Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+        BatteryHistEntry entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[0], entryMap);
+        // Adds the index = 1 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[1], entryMap);
+        // Adds the index = 2 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 10.0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 10L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 10.0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 10L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[2], entryMap);
+        final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay =
+                new ArrayList<>();
+        List<Long> timestamps = List.of(batteryHistoryKeys[0], batteryHistoryKeys[2]);
+        final List<Integer> levels = List.of(100, 100);
+        hourlyBatteryLevelsPerDay.add(
+                new BatteryLevelData.PeriodBatteryLevelData(timestamps, levels));
+        when(mPowerUsageFeatureProvider.getHideApplicationEntries(mContext))
+                .thenReturn(new CharSequence[]{"package1"});
+
+        final Map<Integer, Map<Integer, BatteryDiffData>> resultMap =
+                DataProcessor.getBatteryUsageMap(
+                        mContext, hourlyBatteryLevelsPerDay, batteryHistoryMap);
+
+        final BatteryDiffData resultDiffData =
+                resultMap
+                        .get(DataProcessor.SELECTED_INDEX_ALL)
+                        .get(DataProcessor.SELECTED_INDEX_ALL);
+        assertBatteryDiffEntry(
+                resultDiffData.getAppDiffEntryList().get(0), currentUserId, /*uid=*/ 2L,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*consumePercentage=*/ 50.0,
+                /*foregroundUsageTimeInMs=*/ 10, /*backgroundUsageTimeInMs=*/ 20);
+    }
+
+    @Test
+    public void getBatteryUsageMap_hideBackgroundUsageTime_returnsExpectedResult() {
+        final long[] batteryHistoryKeys = new long[]{
+                1641052800000L, // 2022-01-02 00:00:00
+                1641056400000L, // 2022-01-02 01:00:00
+                1641060000000L  // 2022-01-02 02:00:00
+        };
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
+        final int currentUserId = mContext.getUserId();
+        // Adds the index = 0 data.
+        Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+        BatteryHistEntry entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[0], entryMap);
+        // Adds the index = 1 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 0L,
+                /*backgroundUsageTimeInMs=*/ 0L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[1], entryMap);
+        // Adds the index = 2 data.
+        entryMap = new HashMap<>();
+        entry = createBatteryHistEntry(
+                "package1", "label1", /*consumePower=*/ 10.0, /*uid=*/ 1L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 10L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        entry = createBatteryHistEntry(
+                "package2", "label2", /*consumePower=*/ 10.0, /*uid=*/ 2L, currentUserId,
+                ConvertUtils.CONSUMER_TYPE_UID_BATTERY, /*foregroundUsageTimeInMs=*/ 10L,
+                /*backgroundUsageTimeInMs=*/ 20L);
+        entryMap.put(entry.getKey(), entry);
+        batteryHistoryMap.put(batteryHistoryKeys[2], entryMap);
+        final List<BatteryLevelData.PeriodBatteryLevelData> hourlyBatteryLevelsPerDay =
+                new ArrayList<>();
+        List<Long> timestamps = List.of(batteryHistoryKeys[0], batteryHistoryKeys[2]);
+        final List<Integer> levels = List.of(100, 100);
+        hourlyBatteryLevelsPerDay.add(
+                new BatteryLevelData.PeriodBatteryLevelData(timestamps, levels));
+        when(mPowerUsageFeatureProvider.getHideBackgroundUsageTimeSet(mContext))
+                .thenReturn(new HashSet(Arrays.asList((CharSequence) "package2")));
+
+        final Map<Integer, Map<Integer, BatteryDiffData>> resultMap =
+                DataProcessor.getBatteryUsageMap(
+                        mContext, hourlyBatteryLevelsPerDay, batteryHistoryMap);
+
+        final BatteryDiffData resultDiffData =
+                resultMap
+                        .get(DataProcessor.SELECTED_INDEX_ALL)
+                        .get(DataProcessor.SELECTED_INDEX_ALL);
+        BatteryDiffEntry resultEntry = resultDiffData.getAppDiffEntryList().get(0);
+        assertThat(resultEntry.mBackgroundUsageTimeInMs).isEqualTo(20);
+        resultEntry = resultDiffData.getAppDiffEntryList().get(1);
+        assertThat(resultEntry.mBackgroundUsageTimeInMs).isEqualTo(0);
+    }
+
+    private static Map<Long, Map<String, BatteryHistEntry>> createHistoryMap(
+            final long[] timestamps, final int[] levels) {
+        final Map<Long, Map<String, BatteryHistEntry>> batteryHistoryMap = new HashMap<>();
+        for (int index = 0; index < timestamps.length; index++) {
+            final Map<String, BatteryHistEntry> entryMap = new HashMap<>();
+            final ContentValues values = new ContentValues();
+            values.put(BatteryHistEntry.KEY_BATTERY_LEVEL, levels[index]);
+            final BatteryHistEntry entry = new BatteryHistEntry(values);
+            entryMap.put(FAKE_ENTRY_KEY, entry);
+            batteryHistoryMap.put(timestamps[index], entryMap);
+        }
+        return batteryHistoryMap;
+    }
+
+    private static BatteryHistEntry createBatteryHistEntry(
+            final String packageName, final String appLabel, final double consumePower,
+            final long uid, final long userId, final int consumerType,
+            final long foregroundUsageTimeInMs, final long backgroundUsageTimeInMs) {
+        // Only insert required fields.
+        final ContentValues values = new ContentValues();
+        values.put(BatteryHistEntry.KEY_PACKAGE_NAME, packageName);
+        values.put(BatteryHistEntry.KEY_APP_LABEL, appLabel);
+        values.put(BatteryHistEntry.KEY_UID, uid);
+        values.put(BatteryHistEntry.KEY_USER_ID, userId);
+        values.put(BatteryHistEntry.KEY_CONSUMER_TYPE, consumerType);
+        values.put(BatteryHistEntry.KEY_CONSUME_POWER, consumePower);
+        values.put(BatteryHistEntry.KEY_FOREGROUND_USAGE_TIME, foregroundUsageTimeInMs);
+        values.put(BatteryHistEntry.KEY_BACKGROUND_USAGE_TIME, backgroundUsageTimeInMs);
+        return new BatteryHistEntry(values);
+    }
+
+    private static void verifyExpectedBatteryLevelData(
+            final BatteryLevelData resultData,
+            final List<Long> expectedDailyTimestamps,
+            final List<Integer> expectedDailyLevels,
+            final List<List<Long>> expectedHourlyTimestamps,
+            final List<List<Integer>> expectedHourlyLevels) {
+        final BatteryLevelData.PeriodBatteryLevelData dailyResultData =
+                resultData.getDailyBatteryLevels();
+        final List<BatteryLevelData.PeriodBatteryLevelData> hourlyResultData =
+                resultData.getHourlyBatteryLevelsPerDay();
+        verifyExpectedDailyBatteryLevelData(
+                dailyResultData, expectedDailyTimestamps, expectedDailyLevels);
+        verifyExpectedHourlyBatteryLevelData(
+                hourlyResultData, expectedHourlyTimestamps, expectedHourlyLevels);
+    }
+
+    private static void verifyExpectedDailyBatteryLevelData(
+            final BatteryLevelData.PeriodBatteryLevelData dailyResultData,
+            final List<Long> expectedDailyTimestamps,
+            final List<Integer> expectedDailyLevels) {
+        assertThat(dailyResultData.getTimestamps()).isEqualTo(expectedDailyTimestamps);
+        assertThat(dailyResultData.getLevels()).isEqualTo(expectedDailyLevels);
+    }
+
+    private static void verifyExpectedHourlyBatteryLevelData(
+            final List<BatteryLevelData.PeriodBatteryLevelData> hourlyResultData,
+            final List<List<Long>> expectedHourlyTimestamps,
+            final List<List<Integer>> expectedHourlyLevels) {
+        final int expectedHourlySize = expectedHourlyTimestamps.size();
+        assertThat(hourlyResultData).hasSize(expectedHourlySize);
+        for (int dailyIndex = 0; dailyIndex < expectedHourlySize; dailyIndex++) {
+            assertThat(hourlyResultData.get(dailyIndex).getTimestamps())
+                    .isEqualTo(expectedHourlyTimestamps.get(dailyIndex));
+            assertThat(hourlyResultData.get(dailyIndex).getLevels())
+                    .isEqualTo(expectedHourlyLevels.get(dailyIndex));
+        }
+    }
+
+    private static void verifyExpectedTimestampSlots(
+            final Calendar start,
+            final Calendar end,
+            final Calendar expectedStart,
+            final Calendar expectedEnd) {
+        expectedStart.set(Calendar.MILLISECOND, 0);
+        expectedEnd.set(Calendar.MILLISECOND, 0);
+        final ArrayList<Long> timestampSlots = new ArrayList<>();
+        timestampSlots.add(start.getTimeInMillis());
+        timestampSlots.add(end.getTimeInMillis());
+        final List<Long> resultList =
+                DataProcessor.getTimestampSlots(timestampSlots);
+
+        for (int index = 0; index < resultList.size(); index++) {
+            final long expectedTimestamp =
+                    expectedStart.getTimeInMillis() + index * DateUtils.HOUR_IN_MILLIS;
+            assertThat(resultList.get(index)).isEqualTo(expectedTimestamp);
+        }
+        assertThat(resultList.get(resultList.size() - 1))
+                .isEqualTo(expectedEnd.getTimeInMillis());
+    }
+
+    private static void assertBatteryDiffEntry(
+            final BatteryDiffEntry entry, final long userId, final long uid,
+            final int consumerType, final double consumePercentage,
+            final long foregroundUsageTimeInMs, final long backgroundUsageTimeInMs) {
+        assertThat(entry.mBatteryHistEntry.mUserId).isEqualTo(userId);
+        assertThat(entry.mBatteryHistEntry.mUid).isEqualTo(uid);
+        assertThat(entry.mBatteryHistEntry.mConsumerType).isEqualTo(consumerType);
+        assertThat(entry.getPercentOfTotal()).isEqualTo(consumePercentage);
+        assertThat(entry.mForegroundUsageTimeInMs).isEqualTo(foregroundUsageTimeInMs);
+        assertThat(entry.mBackgroundUsageTimeInMs).isEqualTo(backgroundUsageTimeInMs);
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/ExpandDividerPreferenceTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ExpandDividerPreferenceTest.java
similarity index 92%
rename from tests/robotests/src/com/android/settings/fuelgauge/ExpandDividerPreferenceTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ExpandDividerPreferenceTest.java
index 9e32da4..e36f948 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/ExpandDividerPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ExpandDividerPreferenceTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,14 +14,13 @@
  * limitations under the License.
  */
 
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
 
 import android.content.Context;
 import android.widget.ImageView;
@@ -74,7 +73,7 @@
 
     @Test
     public void testOnClick_switchExpandStateAndInvokeCallback() {
-        final boolean[] isExpandedArray = new boolean[] {false};
+        final boolean[] isExpandedArray = new boolean[]{false};
         mExpandDividerPreference.mImageView = mImageView;
         mExpandDividerPreference.setOnExpandListener(
                 isExpanded -> isExpandedArray[0] = isExpanded);
@@ -94,7 +93,7 @@
 
     @Test
     public void testSetIsExpanded_updateStateButNotInvokeCallback() {
-        final boolean[] isExpandedArray = new boolean[] {false};
+        final boolean[] isExpandedArray = new boolean[]{false};
         mExpandDividerPreference.mImageView = mImageView;
         mExpandDividerPreference.setOnExpandListener(
                 isExpanded -> isExpandedArray[0] = isExpanded);
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerGaugePreferenceTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreferenceTest.java
similarity index 94%
rename from tests/robotests/src/com/android/settings/fuelgauge/PowerGaugePreferenceTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreferenceTest.java
index 10b89a6..5d599fe 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerGaugePreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerGaugePreferenceTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -55,7 +55,7 @@
         mContext = RuntimeEnvironment.application;
         mRootView = LayoutInflater.from(mContext).inflate(R.layout.preference_app, null);
         mWidgetView =
-            LayoutInflater.from(mContext).inflate(R.layout.preference_widget_summary, null);
+                LayoutInflater.from(mContext).inflate(R.layout.preference_widget_summary, null);
         final LinearLayout widgetFrame = mRootView.findViewById(android.R.id.widget_frame);
         assertThat(widgetFrame).isNotNull();
         widgetFrame.addView(mWidgetView);
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageBaseTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerUsageBaseTest.java
similarity index 95%
rename from tests/robotests/src/com/android/settings/fuelgauge/PowerUsageBaseTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerUsageBaseTest.java
index 451e605..2700930 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageBaseTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerUsageBaseTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.anyInt;
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummaryTest.java
similarity index 91%
rename from tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
rename to tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummaryTest.java
index 843cc99..c049497 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummaryTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package com.android.settings.fuelgauge;
+package com.android.settings.fuelgauge.batteryusage;
 
-import static com.android.settings.fuelgauge.PowerUsageSummary.BATTERY_INFO_LOADER;
-import static com.android.settings.fuelgauge.PowerUsageSummary.KEY_BATTERY_ERROR;
-import static com.android.settings.fuelgauge.PowerUsageSummary.KEY_BATTERY_USAGE;
+import static com.android.settings.fuelgauge.batteryusage.PowerUsageSummary.BATTERY_INFO_LOADER;
+import static com.android.settings.fuelgauge.batteryusage.PowerUsageSummary.KEY_BATTERY_ERROR;
+import static com.android.settings.fuelgauge.batteryusage.PowerUsageSummary.KEY_BATTERY_USAGE;
 
 import static com.google.common.truth.Truth.assertThat;
 
@@ -44,6 +44,8 @@
 
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
+import com.android.settings.fuelgauge.BatteryBroadcastReceiver;
+import com.android.settings.fuelgauge.BatteryUtils;
 import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.XmlTestUtils;
@@ -55,6 +57,7 @@
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Mock;
+import org.mockito.Mockito;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
@@ -74,6 +77,7 @@
     public static void beforeClass() {
         sAdditionalBatteryInfoIntent = new Intent("com.example.app.ADDITIONAL_BATTERY_INFO");
     }
+
     @Mock
     private SettingsActivity mSettingsActivity;
     @Mock
@@ -111,7 +115,7 @@
                 .thenReturn(sAdditionalBatteryInfoIntent);
         when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mRealContext))
                 .thenReturn(true);
-        mFragment.mBatteryUtils = spy(new BatteryUtils(mRealContext));
+        mFragment.mBatteryUtils = Mockito.spy(new BatteryUtils(mRealContext));
         ReflectionHelpers.setField(mFragment, "mVisibilityLoggerMixin", mVisibilityLoggerMixin);
         ReflectionHelpers.setField(mFragment, "mBatteryBroadcastReceiver",
                 mBatteryBroadcastReceiver);
@@ -135,17 +139,7 @@
     }
 
     @Test
-    public void initPreference_chartGraphEnabled_hasCorrectSummary() {
-        mFragment.initPreference();
-
-        verify(mBatteryUsagePreference).setSummary("View usage for past 24 hours");
-    }
-
-    @Test
-    public void initPreference_chartGraphDisabled_hasCorrectSummary() {
-        when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mRealContext))
-                .thenReturn(false);
-
+    public void initPreference_hasCorrectSummary() {
         mFragment.initPreference();
 
         verify(mBatteryUsagePreference).setSummary("View usage from last full charge");
diff --git a/tests/robotests/src/com/android/settings/gestures/LongPressPowerButtonPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/LongPressPowerButtonPreferenceControllerTest.java
deleted file mode 100644
index 5637e96..0000000
--- a/tests/robotests/src/com/android/settings/gestures/LongPressPowerButtonPreferenceControllerTest.java
+++ /dev/null
@@ -1,220 +0,0 @@
-/*
- * Copyright (C) 2021 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.gestures;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.ArgumentMatchers.anyInt;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.app.Application;
-import android.content.res.Resources;
-import android.provider.Settings;
-
-import androidx.annotation.StringRes;
-import androidx.preference.Preference;
-import androidx.test.core.app.ApplicationProvider;
-
-import com.android.settings.R;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.MockitoAnnotations;
-import org.mockito.stubbing.Answer;
-import org.robolectric.RobolectricTestRunner;
-
-@RunWith(RobolectricTestRunner.class)
-public class LongPressPowerButtonPreferenceControllerTest {
-
-    private static final String KEY_LONG_PRESS_POWER_BUTTON =
-            "gesture_power_menu_long_press_for_assist";
-
-    private Application mContext;
-    private Resources mResources;
-    private LongPressPowerButtonPreferenceController mController;
-
-    @Before
-    public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        mContext = spy(ApplicationProvider.getApplicationContext());
-        mResources = mock(Resources.class);
-        when(mContext.getResources()).thenReturn(mResources);
-        when(mResources.getString(anyInt())).thenAnswer((Answer<String>) invocation -> {
-            int id = invocation.getArgument(0);
-            return getString(id);
-        });
-        when(mResources.getBoolean(
-                com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable))
-                .thenReturn(true);
-        mController = new LongPressPowerButtonPreferenceController(mContext,
-                KEY_LONG_PRESS_POWER_BUTTON);
-        mController.mAssistSwitch = mock(Preference.class);
-        mController.mFooterHint = mock(Preference.class);
-    }
-
-    @Test
-    public void isAvailable_configIsTrue_shouldReturnTrue() {
-        when(mResources.getBoolean(
-                com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable))
-                .thenReturn(true);
-
-        assertThat(mController.isAvailable()).isTrue();
-    }
-
-    @Test
-    public void isAvailable_configIsFalse_shouldReturnFalse() {
-        when(mResources.getBoolean(
-                com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable))
-                .thenReturn(false);
-
-        assertThat(mController.isAvailable()).isFalse();
-    }
-
-    @Test
-    public void preferenceChecked_powerMenuHintTextShown() {
-        mController.onPreferenceChange(null, true);
-
-        verify(mController.mFooterHint).setSummary(
-                getString(
-                        R.string.power_menu_power_volume_up_hint));
-        verify(mController.mFooterHint).setVisible(true);
-    }
-
-
-    @Test
-    public void preferenceUnchecked_keyChordEnabled_powerMenuHintTextShown() {
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_keyChordPowerVolumeUp))
-                .thenReturn(
-                 LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_GLOBAL_ACTIONS);
-
-        mController.onPreferenceChange(null, false);
-
-        verify(mController.mFooterHint).setSummary(
-                getString(
-                        R.string.power_menu_power_volume_up_hint));
-        verify(mController.mFooterHint).setVisible(true);
-    }
-
-    @Test
-    public void preferenceChecked_hushGestureEnabled_powerMenuHintTextIncludesHushHint() {
-        when(mResources.getBoolean(
-                com.android.internal.R.bool.config_volumeHushGestureEnabled))
-                .thenReturn(true);
-
-        mController.onPreferenceChange(null, true);
-
-        verify(mController.mFooterHint).setSummary(
-                getString(
-                        R.string.power_menu_power_volume_up_hint) + "\n\n"
-                        + getString(
-                        R.string.power_menu_power_prevent_ringing_hint));
-        verify(mController.mFooterHint).setVisible(true);
-    }
-
-
-    @Test
-    public void preferenceUnchecked_keyChordDisabled_powerMenuHintTextHidden() {
-        mController.onPreferenceChange(null, false);
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_keyChordPowerVolumeUp))
-                .thenReturn(
-                     LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_NO_ACTION);
-
-        verify(mController.mFooterHint).setVisible(false);
-    }
-
-    @Test
-    public void preferenceChecked_longPressPowerSettingSetToAssistant() {
-        mController.onPreferenceChange(null, true);
-
-        assertThat(Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS, -1)).isEqualTo(
-                PowerMenuSettingsUtils.LONG_PRESS_POWER_ASSISTANT_VALUE);
-        assertThat(Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.KEY_CHORD_POWER_VOLUME_UP, -1)).isEqualTo(
-                LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_GLOBAL_ACTIONS);
-    }
-
-    @Test
-    public void preferenceUnchecked_longPressPowerSettingSetToDefaultValue() {
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_longPressOnPowerBehavior))
-                .thenReturn(
-                        PowerMenuSettingsUtils.LONG_PRESS_POWER_GLOBAL_ACTIONS);
-
-        mController.onPreferenceChange(null, false);
-
-        assertThat(Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS, -1)).isEqualTo(
-                PowerMenuSettingsUtils.LONG_PRESS_POWER_GLOBAL_ACTIONS);
-        assertThat(Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.KEY_CHORD_POWER_VOLUME_UP, -1)).isEqualTo(
-                LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_NO_ACTION);
-        verify(mController.mAssistSwitch).setSummary(
-                getString(
-                      R.string.power_menu_summary_long_press_for_assist_disabled_with_power_menu));
-    }
-
-    @Test
-    public void preferenceUnchecked_muteChordDefault_longPressPowerSettingSetToDefaultValue() {
-        // Value out of range chosen deliberately.
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_longPressOnPowerBehavior))
-                .thenReturn(8);
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_keyChordPowerVolumeUp))
-                .thenReturn(
-                    LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_MUTE_TOGGLE);
-
-        mController.onPreferenceChange(null, false);
-
-        assertThat(Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS, -1)).isEqualTo(8);
-        assertThat(Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.KEY_CHORD_POWER_VOLUME_UP, -1)).isEqualTo(
-                LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_MUTE_TOGGLE);
-    }
-
-    @Test
-    public void preferenceUnchecked_assistDefault_setNoAction() {
-        // Ensure that the Assistant is the default behavior for LPP.
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_longPressOnPowerBehavior))
-                .thenReturn(
-                        PowerMenuSettingsUtils.LONG_PRESS_POWER_ASSISTANT_VALUE);
-
-        mController.onPreferenceChange(null, false);
-
-        assertThat(Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS, -1)).isEqualTo(
-                PowerMenuSettingsUtils.LONG_PRESS_POWER_GLOBAL_ACTIONS);
-        assertThat(Settings.Global.getInt(mContext.getContentResolver(),
-                Settings.Global.KEY_CHORD_POWER_VOLUME_UP, -1)).isEqualTo(
-                LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_NO_ACTION);
-        verify(mController.mAssistSwitch).setSummary(getString(
-                    R.string.power_menu_summary_long_press_for_assist_disabled_with_power_menu));
-    }
-
-    private String getString(@StringRes int id) {
-        return ApplicationProvider.getApplicationContext().getString(id);
-    }
-}
diff --git a/tests/robotests/src/com/android/settings/gestures/LongPressPowerFooterPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/LongPressPowerFooterPreferenceControllerTest.java
new file mode 100644
index 0000000..e1cd53e
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/gestures/LongPressPowerFooterPreferenceControllerTest.java
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.gestures;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import android.app.Application;
+import android.content.res.Resources;
+import android.text.TextUtils;
+
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+import com.android.settingslib.widget.FooterPreference;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+
+@RunWith(RobolectricTestRunner.class)
+public class LongPressPowerFooterPreferenceControllerTest {
+
+    private Application mContext;
+    private Resources mResources;
+    private Preference mPreference;
+    private LongPressPowerFooterPreferenceController mController;
+
+    @Before
+    public void setUp() {
+        mContext = spy(ApplicationProvider.getApplicationContext());
+        mResources = spy(mContext.getResources());
+        when(mContext.getResources()).thenReturn(mResources);
+        mPreference = new FooterPreference(mContext);
+        mController = new LongPressPowerFooterPreferenceController(mContext, "test_key");
+
+        PreferenceScreen mScreen = mock(PreferenceScreen.class);
+        when(mScreen.findPreference("test_key")).thenReturn(mPreference);
+        mController.displayPreference(mScreen);
+    }
+
+    @Test
+    public void updateState_longPressPowerForPowerMenu_hidesPreference() {
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isVisible()).isFalse();
+    }
+
+    @Test
+    public void updateState_longPressPowerForAssistant_showsPreference() {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isVisible()).isTrue();
+    }
+
+    @Test
+    public void updateState_notEligible_showsPreference() {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isVisible()).isTrue();
+    }
+
+    @Test
+    public void updateState_hushGestureEnabled_includesPreventRingingHint() {
+        when(mResources.getBoolean(com.android.internal.R.bool.config_volumeHushGestureEnabled))
+                .thenReturn(true);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.getSummary().toString())
+                .isEqualTo(
+                        TextUtils.concat(
+                                mContext.getString(R.string.power_menu_power_volume_up_hint),
+                                "\n\n",
+                                mContext.getString(
+                                        R.string.power_menu_power_prevent_ringing_hint)));
+    }
+
+    @Test
+    public void updateState_hushGestureDisabled_doesNotIncludePreventRingingHint() {
+        when(mResources.getBoolean(com.android.internal.R.bool.config_volumeHushGestureEnabled))
+                .thenReturn(false);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.getSummary().toString())
+                .isEqualTo(mContext.getString(R.string.power_menu_power_volume_up_hint));
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/gestures/LongPressPowerForAssistantPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/LongPressPowerForAssistantPreferenceControllerTest.java
new file mode 100644
index 0000000..e210077
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/gestures/LongPressPowerForAssistantPreferenceControllerTest.java
@@ -0,0 +1,116 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.gestures;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import android.app.Application;
+import android.content.res.Resources;
+
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.core.BasePreferenceController;
+import com.android.settingslib.widget.SelectorWithWidgetPreference;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+
+@RunWith(RobolectricTestRunner.class)
+public class LongPressPowerForAssistantPreferenceControllerTest {
+
+    private Application mContext;
+    private Resources mResources;
+    private SelectorWithWidgetPreference mPreference;
+    private LongPressPowerForAssistantPreferenceController mController;
+
+    @Before
+    public void setUp() {
+        mContext = spy(ApplicationProvider.getApplicationContext());
+        mResources = spy(mContext.getResources());
+        mPreference = new SelectorWithWidgetPreference(mContext);
+        mController = new LongPressPowerForAssistantPreferenceController(mContext, "test_key");
+
+        when(mContext.getResources()).thenReturn(mResources);
+        when(mResources.getBoolean(
+                com.android.internal.R.bool
+                        .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(true);
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(5); // Default to Assistant
+
+        PreferenceScreen mScreen = mock(PreferenceScreen.class);
+        when(mScreen.findPreference("test_key")).thenReturn(mPreference);
+        mController.displayPreference(mScreen);
+        mController.onStart();
+    }
+
+    @Test
+    public void initialState_longPressPowerForPowerMenu_preferenceNotChecked() {
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isChecked()).isFalse();
+    }
+
+    @Test
+    public void initialState_longPressPowerForAssistant_preferenceChecked() {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isChecked()).isTrue();
+    }
+
+    @Test
+    public void getAvailabilityStatus_longPressPowerSettingAvailable_returnsAvailable() {
+        assertThat(mController.getAvailabilityStatus())
+                .isEqualTo(BasePreferenceController.AVAILABLE);
+    }
+
+    @Test
+    public void getAvailabilityStatus_longPressPowerSettingNotAvailable_returnsNotAvailable() {
+        when(mResources.getBoolean(
+                com.android.internal.R.bool
+                        .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(false);
+
+        assertThat(mController.getAvailabilityStatus())
+                .isEqualTo(BasePreferenceController.UNSUPPORTED_ON_DEVICE);
+    }
+
+    @Test
+    public void onClick_updatesSettingsValue_checksPreference() {
+        // Initial state: preference not checked
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+        mController.updateState(mPreference);
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)).isFalse();
+        assertThat(mPreference.isChecked()).isFalse();
+
+        mPreference.performClick();
+
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)).isTrue();
+        assertThat(mPreference.isChecked()).isTrue();
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/gestures/LongPressPowerForPowerMenuPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/LongPressPowerForPowerMenuPreferenceControllerTest.java
new file mode 100644
index 0000000..ea6557b
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/gestures/LongPressPowerForPowerMenuPreferenceControllerTest.java
@@ -0,0 +1,116 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.gestures;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import android.app.Application;
+import android.content.res.Resources;
+
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.core.BasePreferenceController;
+import com.android.settingslib.widget.SelectorWithWidgetPreference;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+
+@RunWith(RobolectricTestRunner.class)
+public class LongPressPowerForPowerMenuPreferenceControllerTest {
+
+    private Application mContext;
+    private Resources mResources;
+    private SelectorWithWidgetPreference mPreference;
+    private LongPressPowerForPowerMenuPreferenceController mController;
+
+    @Before
+    public void setUp() {
+        mContext = spy(ApplicationProvider.getApplicationContext());
+        mResources = spy(mContext.getResources());
+        mPreference = new SelectorWithWidgetPreference(mContext);
+        mController = new LongPressPowerForPowerMenuPreferenceController(mContext, "test_key");
+
+        when(mContext.getResources()).thenReturn(mResources);
+        when(mResources.getBoolean(
+                com.android.internal.R.bool
+                        .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(true);
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(5); // Default to Assistant
+
+        PreferenceScreen mScreen = mock(PreferenceScreen.class);
+        when(mScreen.findPreference("test_key")).thenReturn(mPreference);
+        mController.displayPreference(mScreen);
+        mController.onStart();
+    }
+
+    @Test
+    public void initialState_longPressPowerForPowerMenu_preferenceChecked() {
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isChecked()).isTrue();
+    }
+
+    @Test
+    public void initialState_longPressPowerForAssistant_preferenceNotChecked() {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isChecked()).isFalse();
+    }
+
+    @Test
+    public void getAvailabilityStatus_longPressPowerSettingAvailable_returnsAvailable() {
+        assertThat(mController.getAvailabilityStatus())
+                .isEqualTo(BasePreferenceController.AVAILABLE);
+    }
+
+    @Test
+    public void getAvailabilityStatus_longPressPowerSettingNotAvailable_returnsNotAvailable() {
+        when(mResources.getBoolean(
+                com.android.internal.R.bool
+                        .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(false);
+
+        assertThat(mController.getAvailabilityStatus())
+                .isEqualTo(BasePreferenceController.UNSUPPORTED_ON_DEVICE);
+    }
+
+    @Test
+    public void onClick_updatesSettingsValue_checksPreference() {
+        // Initial state: preference not checked
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+        mController.updateState(mPreference);
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)).isTrue();
+        assertThat(mPreference.isChecked()).isFalse();
+
+        mPreference.performClick();
+
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)).isFalse();
+        assertThat(mPreference.isChecked()).isTrue();
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/gestures/LongPressPowerIllustrationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/LongPressPowerIllustrationPreferenceControllerTest.java
new file mode 100644
index 0000000..37a4c0b
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/gestures/LongPressPowerIllustrationPreferenceControllerTest.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.gestures;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+import android.app.Application;
+
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
+import com.android.settingslib.widget.IllustrationPreference;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+
+@RunWith(RobolectricTestRunner.class)
+public class LongPressPowerIllustrationPreferenceControllerTest {
+
+    private Application mContext;
+    private IllustrationPreference mPreference;
+    private LongPressPowerIllustrationPreferenceController mController;
+
+    @Before
+    public void setUp() {
+        mContext = ApplicationProvider.getApplicationContext();
+        mPreference = new IllustrationPreference(mContext);
+        mController = new LongPressPowerIllustrationPreferenceController(mContext, "test_key");
+
+        PreferenceScreen mScreen = mock(PreferenceScreen.class);
+        when(mScreen.findPreference("test_key")).thenReturn(mPreference);
+        mController.displayPreference(mScreen);
+    }
+
+    @Test
+    public void updateState_longPressPowerForPowerMenu_showsPowerMenuAnimation() {
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.getLottieAnimationResId())
+                .isEqualTo(R.raw.lottie_long_press_power_for_power_menu);
+    }
+
+    @Test
+    public void updateState_longPressPowerForAssistant_showsAssistantAnimation() {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.getLottieAnimationResId())
+                .isEqualTo(R.raw.lottie_long_press_power_for_assistant);
+    }
+}
diff --git a/tests/robotests/src/com/android/settings/gestures/LongPressPowerSensitivityPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/LongPressPowerSensitivityPreferenceControllerTest.java
index 9c99092..d1c0922 100644
--- a/tests/robotests/src/com/android/settings/gestures/LongPressPowerSensitivityPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/LongPressPowerSensitivityPreferenceControllerTest.java
@@ -26,14 +26,20 @@
 import android.content.res.Resources;
 import android.provider.Settings;
 
+import androidx.preference.PreferenceScreen;
 import androidx.test.core.app.ApplicationProvider;
 
+import com.android.settings.widget.LabeledSeekBarPreference;
+import com.android.settingslib.testutils.shadow.ShadowInteractionJankMonitor;
+
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
 
 @RunWith(RobolectricTestRunner.class)
+@Config(shadows = {ShadowInteractionJankMonitor.class})
 public class LongPressPowerSensitivityPreferenceControllerTest {
 
     private static final String KEY_LONG_PRESS_SENSITIVITY =
@@ -43,7 +49,9 @@
 
     private Application mContext;
     private Resources mResources;
+    private LabeledSeekBarPreference mPreference;
     private LongPressPowerSensitivityPreferenceController mController;
+    private PreferenceScreen mScreen;
 
     @Before
     public void setUp() {
@@ -52,11 +60,22 @@
         when(mContext.getResources()).thenReturn(mResources);
 
         when(mResources.getIntArray(
-                com.android.internal.R.array.config_longPressOnPowerDurationSettings))
+                        com.android.internal.R.array.config_longPressOnPowerDurationSettings))
                 .thenReturn(SENSITIVITY_VALUES);
+        when(mResources.getBoolean(
+                        com.android.internal.R.bool
+                                .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(true);
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(5); // Default to Assistant
 
+        mPreference = new LabeledSeekBarPreference(mContext, null);
         mController = new LongPressPowerSensitivityPreferenceController(mContext,
                 KEY_LONG_PRESS_SENSITIVITY);
+
+        mScreen = mock(PreferenceScreen.class);
+        when(mScreen.findPreference(KEY_LONG_PRESS_SENSITIVITY)).thenReturn(mPreference);
+        mController.displayPreference(mScreen);
     }
 
     @Test
@@ -98,46 +117,64 @@
     }
 
     @Test
-    public void longPressForAssistEnabled_isAvailable() {
-        Settings.Global.putInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS,
-                PowerMenuSettingsUtils.LONG_PRESS_POWER_ASSISTANT_VALUE);
+    public void longPressForAssistant_isVisible() {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
 
-        assertThat(mController.getAvailabilityStatus()).isEqualTo(
-                LongPressPowerSensitivityPreferenceController.AVAILABLE);
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isVisible()).isTrue();
     }
 
     @Test
-    public void longPressForAssistDisabled_isNotAvailableDueToDependentSetting() {
-        Settings.Global.putInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS,
-                PowerMenuSettingsUtils.LONG_PRESS_POWER_NO_ACTION);
+    public void longPressForPowerMenu_isHidden() {
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
 
-        assertThat(mController.getAvailabilityStatus()).isEqualTo(
-                LongPressPowerSensitivityPreferenceController.DISABLED_DEPENDENT_SETTING);
+        mController.updateState(mPreference);
+
+        assertThat(mPreference.isVisible()).isFalse();
     }
 
     @Test
-    public void sensitivityValuesAreNull_notAvailable() {
+    public void longPressPowerSettingNotAvailable_notAvailable_isHidden() {
+        when(mResources.getBoolean(
+                        com.android.internal.R.bool
+                                .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(false);
+
+        mController.updateState(mPreference);
+
+        assertThat(mController.getAvailabilityStatus())
+                .isEqualTo(LongPressPowerSensitivityPreferenceController.UNSUPPORTED_ON_DEVICE);
+        assertThat(mPreference.isVisible()).isFalse();
+    }
+
+    @Test
+    public void sensitivityValuesAreNull_notAvailable_isHidden() {
         when(mResources.getIntArray(
                 com.android.internal.R.array.config_longPressOnPowerDurationSettings))
                 .thenReturn(null);
         mController = new LongPressPowerSensitivityPreferenceController(mContext,
                 KEY_LONG_PRESS_SENSITIVITY);
+        mController.displayPreference(mScreen);
+        mController.updateState(mPreference);
 
         assertThat(mController.getAvailabilityStatus()).isEqualTo(
                 LongPressPowerSensitivityPreferenceController.UNSUPPORTED_ON_DEVICE);
+        assertThat(mPreference.isVisible()).isFalse();
     }
 
     @Test
-    public void sensitivityValuesArrayTooShort_notAvailable() {
+    public void sensitivityValuesArrayTooShort_notAvailable_isHidden() {
         when(mResources.getIntArray(
                 com.android.internal.R.array.config_longPressOnPowerDurationSettings))
                 .thenReturn(new int[]{200});
         mController = new LongPressPowerSensitivityPreferenceController(mContext,
                 KEY_LONG_PRESS_SENSITIVITY);
+        mController.displayPreference(mScreen);
+        mController.updateState(mPreference);
 
         assertThat(mController.getAvailabilityStatus()).isEqualTo(
                 LongPressPowerSensitivityPreferenceController.UNSUPPORTED_ON_DEVICE);
+        assertThat(mPreference.isVisible()).isFalse();
     }
 }
diff --git a/tests/robotests/src/com/android/settings/gestures/PowerMenuPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/gestures/PowerMenuPreferenceControllerTest.java
index 1a82a13..0dc16cc 100644
--- a/tests/robotests/src/com/android/settings/gestures/PowerMenuPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/PowerMenuPreferenceControllerTest.java
@@ -18,20 +18,21 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
-import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.when;
 
 import android.content.Context;
 import android.content.res.Resources;
 
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.R;
 import com.android.settings.core.BasePreferenceController;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.RuntimeEnvironment;
 
 @RunWith(RobolectricTestRunner.class)
 public class PowerMenuPreferenceControllerTest {
@@ -41,35 +42,75 @@
 
     private static final String KEY_GESTURE_POWER_MENU = "gesture_power_menu";
 
-
     @Before
     public void setUp() {
-        mContext = spy(RuntimeEnvironment.application);
-        mResources = mock(Resources.class);
-        when(mResources.getBoolean(
-            com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable))
-                .thenReturn(true);
-        when(mContext.getResources()).thenReturn(mResources);
+        mContext = spy(ApplicationProvider.getApplicationContext());
+        mResources = spy(mContext.getResources());
         mController = new PowerMenuPreferenceController(mContext, KEY_GESTURE_POWER_MENU);
+
+        when(mContext.getResources()).thenReturn(mResources);
+        when(mResources.getBoolean(
+                        com.android.internal.R.bool
+                                .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(true);
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(1); // Default to power menu
     }
 
     @Test
-    public void getAvailabilityStatus_assistAvailable_available() {
+    public void getAvailabilityStatus_settingsAvailable_returnsAvailable() {
         when(mResources.getBoolean(
-                com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable))
-                    .thenReturn(true);
+                        com.android.internal.R.bool
+                                .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(true);
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(1); // Default to power menu
 
-        assertThat(mController.getAvailabilityStatus()).isEqualTo(
-                BasePreferenceController.AVAILABLE);
+        assertThat(mController.getAvailabilityStatus())
+                .isEqualTo(BasePreferenceController.AVAILABLE);
     }
 
     @Test
-    public void getAvailabilityStatus_assistUnavailable_unavailable() {
+    public void getAvailabilityStatus_settingsNotAvailable_returnsNotAvailable() {
         when(mResources.getBoolean(
-                com.android.internal.R.bool.config_longPressOnPowerForAssistantSettingAvailable))
-                    .thenReturn(false);
+                        com.android.internal.R.bool
+                                .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(false);
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(1); // Default to power menu
 
-        assertThat(mController.getAvailabilityStatus()).isEqualTo(
-                BasePreferenceController.UNSUPPORTED_ON_DEVICE);
+        assertThat(mController.getAvailabilityStatus())
+                .isEqualTo(BasePreferenceController.UNSUPPORTED_ON_DEVICE);
+    }
+
+    @Test
+    public void getAvailabilityStatus_longPressPowerSettingNotAvailable_returnsNotAvailable() {
+        when(mResources.getBoolean(
+                        com.android.internal.R.bool
+                                .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(true);
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(3); // Default to power off (unsupported setup)
+
+        assertThat(mController.getAvailabilityStatus())
+                .isEqualTo(BasePreferenceController.UNSUPPORTED_ON_DEVICE);
+    }
+
+    @Test
+    public void getSummary_longPressPowerToAssistant_returnsNotAvailable() {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+
+        assertThat(mController.getSummary().toString())
+                .isEqualTo(
+                        mContext.getString(R.string.power_menu_summary_long_press_for_assistant));
+    }
+
+    @Test
+    public void getSummary_longPressPowerToPowerMenu_returnsNotAvailable() {
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+
+        assertThat(mController.getSummary().toString())
+                .isEqualTo(
+                        mContext.getString(R.string.power_menu_summary_long_press_for_power_menu));
     }
 }
diff --git a/tests/robotests/src/com/android/settings/gestures/PowerMenuSettingsUtilsTest.java b/tests/robotests/src/com/android/settings/gestures/PowerMenuSettingsUtilsTest.java
index 25f0320..3f16b63 100644
--- a/tests/robotests/src/com/android/settings/gestures/PowerMenuSettingsUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/PowerMenuSettingsUtilsTest.java
@@ -44,48 +44,123 @@
         mContext = spy(ApplicationProvider.getApplicationContext());
         mResources = mock(Resources.class);
         when(mContext.getResources()).thenReturn(mResources);
+
+        when(mResources.getBoolean(
+                        com.android.internal.R.bool
+                                .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(true);
     }
 
     @Test
-    public void longPressBehaviourValuePresent_returnsValue() {
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_longPressOnPowerBehavior))
-                .thenReturn(0);
-        Settings.Global.putInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS, 1);
-
-        assertThat(PowerMenuSettingsUtils.getPowerButtonSettingValue(mContext)).isEqualTo(1);
+    public void isLongPressPowerForAssistantEnabled_valueSetToAssistant_returnsTrue() {
+        Settings.Global.putInt(
+                mContext.getContentResolver(), Settings.Global.POWER_BUTTON_LONG_PRESS, 5);
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)).isTrue();
     }
 
     @Test
-    public void longPressBehaviourValueNotPresent_returnsDefault() {
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_longPressOnPowerBehavior))
-                .thenReturn(2);
-
-        assertThat(PowerMenuSettingsUtils.getPowerButtonSettingValue(mContext)).isEqualTo(2);
+    public void isLongPressPowerForAssistantEnabled_valueNotSetToAssistant_returnsFalse() {
+        Settings.Global.putInt(
+                mContext.getContentResolver(), Settings.Global.POWER_BUTTON_LONG_PRESS, 3);
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)).isFalse();
     }
 
     @Test
-    public void longPressBehaviourValueSetToAssistant_isAssistEnabledReturnsTrue() {
-        Settings.Global.putInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS, 5);
-        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistEnabled(mContext)).isTrue();
+    public void isLongPressPowerForAssistantEnabled_valueNotSet_defaultToAssistant_returnsTrue() {
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(5);
+
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)).isTrue();
     }
 
     @Test
-    public void longPressBehaviourValueNotSetToAssistant_isAssistEnabledReturnsFalse() {
-        Settings.Global.putInt(mContext.getContentResolver(),
-                Settings.Global.POWER_BUTTON_LONG_PRESS, 3);
-        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistEnabled(mContext)).isFalse();
+    public void isLongPressPowerForAssistantEnabled_valueNotSet_defaultToPowerMenu_returnsFalse() {
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(1);
+
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistantEnabled(mContext)).isFalse();
     }
 
     @Test
-    public void longPressBehaviourDefaultSetToAssistant_isAssistEnabledReturnsFalse() {
-        when(mResources.getInteger(
-                com.android.internal.R.integer.config_longPressOnPowerBehavior))
+    public void isLongPressPowerSettingAvailable_defaultToAssistant_returnsTrue() {
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(5);
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerSettingAvailable(mContext)).isTrue();
+    }
+
+    @Test
+    public void isLongPressPowerSettingAvailable_defaultToPowerMenu_returnsTrue() {
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(1);
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerSettingAvailable(mContext)).isTrue();
+    }
+
+    @Test
+    public void isLongPressPowerSettingAvailable_defaultToPowerOff_returnsFalse() {
+        // Power off is the unsupported option in long press power settings
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
                 .thenReturn(3);
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerSettingAvailable(mContext)).isFalse();
+    }
 
-        assertThat(PowerMenuSettingsUtils.isLongPressPowerForAssistEnabled(mContext)).isFalse();
+    @Test
+    public void isLongPressPowerSettingAvailable_settingDisabled_returnsFalse() {
+        // Disable the setting
+        when(mResources.getBoolean(
+                        com.android.internal.R.bool
+                                .config_longPressOnPowerForAssistantSettingAvailable))
+                .thenReturn(false);
+        when(mResources.getInteger(com.android.internal.R.integer.config_longPressOnPowerBehavior))
+                .thenReturn(1);
+
+        assertThat(PowerMenuSettingsUtils.isLongPressPowerSettingAvailable(mContext)).isFalse();
+    }
+
+    @Test
+    public void setLongPressPowerForAssistant_updatesValue() throws Exception {
+        boolean result = PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+
+        assertThat(result).isTrue();
+        assertThat(
+                        Settings.Global.getInt(
+                                mContext.getContentResolver(),
+                                Settings.Global.POWER_BUTTON_LONG_PRESS))
+                .isEqualTo(5);
+    }
+
+    @Test
+    public void setLongPressPowerForAssistant_updatesKeyChordValueToPowerMenu() throws Exception {
+        PowerMenuSettingsUtils.setLongPressPowerForAssistant(mContext);
+        assertThat(
+                        Settings.Global.getInt(
+                                mContext.getContentResolver(),
+                                Settings.Global.KEY_CHORD_POWER_VOLUME_UP))
+                .isEqualTo(2);
+    }
+
+    @Test
+    public void setLongPressPowerForPowerMenu_updatesValue() throws Exception {
+        boolean result = PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+
+        assertThat(result).isTrue();
+        assertThat(
+                        Settings.Global.getInt(
+                                mContext.getContentResolver(),
+                                Settings.Global.POWER_BUTTON_LONG_PRESS))
+                .isEqualTo(1);
+    }
+
+    @Test
+    public void setLongPressPowerForPowerMenu_updatesKeyChordValueToDefault() throws Exception {
+        when(mResources.getInteger(com.android.internal.R.integer.config_keyChordPowerVolumeUp))
+                .thenReturn(1);
+
+        PowerMenuSettingsUtils.setLongPressPowerForPowerMenu(mContext);
+
+        assertThat(
+                        Settings.Global.getInt(
+                                mContext.getContentResolver(),
+                                Settings.Global.KEY_CHORD_POWER_VOLUME_UP))
+                .isEqualTo(1);
     }
 }
diff --git a/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/BatteryFixSliceTest.java b/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/BatteryFixSliceTest.java
index e4fc9fa..78541db 100644
--- a/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/BatteryFixSliceTest.java
+++ b/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/BatteryFixSliceTest.java
@@ -31,13 +31,13 @@
 import androidx.slice.widget.SliceLiveData;
 
 import com.android.settings.R;
-import com.android.settings.fuelgauge.BatteryUsageStatsLoader;
 import com.android.settings.fuelgauge.batterytip.AppInfo;
 import com.android.settings.fuelgauge.batterytip.BatteryTipLoader;
 import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
 import com.android.settings.fuelgauge.batterytip.tips.EarlyWarningTip;
 import com.android.settings.fuelgauge.batterytip.tips.HighUsageTip;
 import com.android.settings.fuelgauge.batterytip.tips.LowBatteryTip;
+import com.android.settings.fuelgauge.batteryusage.BatteryUsageStatsLoader;
 import com.android.settings.slices.SliceBackgroundWorker;
 
 import org.junit.After;
diff --git a/tests/robotests/src/com/android/settings/notification/MediaVolumePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/MediaVolumePreferenceControllerTest.java
index 7cfcaff..56e83bb 100644
--- a/tests/robotests/src/com/android/settings/notification/MediaVolumePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/MediaVolumePreferenceControllerTest.java
@@ -16,29 +16,71 @@
 
 package com.android.settings.notification;
 
+import static com.android.settings.slices.CustomSliceRegistry.VOLUME_MEDIA_URI;
+
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import android.app.PendingIntent;
 import android.content.Context;
+import android.content.Intent;
 import android.media.AudioManager;
+import android.media.session.MediaController;
+import android.net.Uri;
+
+import androidx.slice.builders.SliceAction;
+
+import com.android.settings.media.MediaOutputIndicatorWorker;
+import com.android.settings.slices.SliceBackgroundWorker;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
+import com.android.settingslib.media.BluetoothMediaDevice;
+import com.android.settingslib.media.MediaDevice;
+import com.android.settingslib.media.MediaOutputConstants;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
 
 @RunWith(RobolectricTestRunner.class)
+@Config(shadows = MediaVolumePreferenceControllerTest.ShadowSliceBackgroundWorker.class)
 public class MediaVolumePreferenceControllerTest {
 
+    private static final String ACTION_LAUNCH_BROADCAST_DIALOG =
+            "android.settings.MEDIA_BROADCAST_DIALOG";
+    private static MediaOutputIndicatorWorker sMediaOutputIndicatorWorker;
+
     private MediaVolumePreferenceController mController;
 
     private Context mContext;
 
+    @Mock
+    private MediaController mMediaController;
+    @Mock
+    private MediaDevice mDevice1;
+    @Mock
+    private MediaDevice mDevice2;
+
     @Before
     public void setUp() {
+        MockitoAnnotations.initMocks(this);
+
         mContext = RuntimeEnvironment.application;
         mController = new MediaVolumePreferenceController(mContext);
+        sMediaOutputIndicatorWorker = spy(
+                new MediaOutputIndicatorWorker(mContext, VOLUME_MEDIA_URI));
+        when(mDevice1.isBLEDevice()).thenReturn(true);
+        when(mDevice2.isBLEDevice()).thenReturn(false);
     }
 
     @Test
@@ -68,4 +110,83 @@
     public void isPublicSlice_returnTrue() {
         assertThat(mController.isPublicSlice()).isTrue();
     }
+
+    @Test
+    public void isSupportEndItem_withBleDevice_returnsTrue() {
+        doReturn(mDevice1).when(sMediaOutputIndicatorWorker).getCurrentConnectedMediaDevice();
+
+        assertThat(mController.isSupportEndItem()).isTrue();
+    }
+
+    @Test
+    public void isSupportEndItem_withNonBleDevice_returnsFalse() {
+        doReturn(mDevice2).when(sMediaOutputIndicatorWorker).getCurrentConnectedMediaDevice();
+
+        assertThat(mController.isSupportEndItem()).isFalse();
+    }
+
+    @Test
+    public void getSliceEndItem_NotSupportEndItem_getsNullSliceAction() {
+        doReturn(mDevice2).when(sMediaOutputIndicatorWorker).getCurrentConnectedMediaDevice();
+
+        final SliceAction sliceAction = mController.getSliceEndItem(mContext);
+
+        assertThat(sliceAction).isNull();
+    }
+
+    @Test
+    public void getSliceEndItem_deviceIsBroadcasting_getsBroadcastIntent() {
+        doReturn(mDevice1).when(sMediaOutputIndicatorWorker).getCurrentConnectedMediaDevice();
+        doReturn(true).when(sMediaOutputIndicatorWorker).isDeviceBroadcasting();
+        doReturn(mMediaController).when(sMediaOutputIndicatorWorker)
+                .getActiveLocalMediaController();
+
+        final SliceAction sliceAction = mController.getSliceEndItem(mContext);
+
+        final PendingIntent endItemPendingIntent = sliceAction.getAction();
+        final PendingIntent expectedToggleIntent = getBroadcastIntent(
+                MediaOutputConstants.ACTION_LAUNCH_MEDIA_OUTPUT_BROADCAST_DIALOG);
+        assertThat(endItemPendingIntent).isEqualTo(expectedToggleIntent);
+    }
+
+    @Test
+    public void getSliceEndItem_deviceIsNotBroadcasting_getsActivityIntent() {
+        final MediaDevice device = mock(BluetoothMediaDevice.class);
+        final CachedBluetoothDevice cachedDevice = mock(CachedBluetoothDevice.class);
+        when(((BluetoothMediaDevice) device).getCachedDevice()).thenReturn(cachedDevice);
+        when(device.isBLEDevice()).thenReturn(true);
+        doReturn(device).when(sMediaOutputIndicatorWorker).getCurrentConnectedMediaDevice();
+        doReturn(false).when(sMediaOutputIndicatorWorker).isDeviceBroadcasting();
+        doReturn(mMediaController).when(sMediaOutputIndicatorWorker)
+                .getActiveLocalMediaController();
+
+        final SliceAction sliceAction = mController.getSliceEndItem(mContext);
+
+        final PendingIntent endItemPendingIntent = sliceAction.getAction();
+        final PendingIntent expectedPendingIntent =
+                getActivityIntent(ACTION_LAUNCH_BROADCAST_DIALOG);
+        assertThat(endItemPendingIntent).isEqualTo(expectedPendingIntent);
+    }
+
+    @Implements(SliceBackgroundWorker.class)
+    public static class ShadowSliceBackgroundWorker {
+
+        @Implementation
+        public static SliceBackgroundWorker getInstance(Uri uri) {
+            return sMediaOutputIndicatorWorker;
+        }
+    }
+
+    private PendingIntent getBroadcastIntent(String action) {
+        final Intent intent = new Intent(action);
+        intent.setPackage(MediaOutputConstants.SYSTEMUI_PACKAGE_NAME);
+        return PendingIntent.getBroadcast(mContext, 0 /* requestCode */, intent,
+                PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE);
+    }
+
+    private PendingIntent getActivityIntent(String action) {
+        final Intent intent = new Intent(action);
+        return PendingIntent.getActivity(mContext, 0 /* requestCode */, intent,
+                PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE);
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/notification/app/NotificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/app/NotificationPreferenceControllerTest.java
index b2f1673..bf529e6 100644
--- a/tests/robotests/src/com/android/settings/notification/app/NotificationPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/app/NotificationPreferenceControllerTest.java
@@ -426,7 +426,7 @@
     private final class TestPreferenceController extends NotificationPreferenceController {
 
         private TestPreferenceController(Context context, NotificationBackend backend) {
-            super(context, backend);
+            super(context, backend, "key");
         }
 
         @Override
diff --git a/tests/robotests/src/com/android/settings/password/ChooseLockPasswordTest.java b/tests/robotests/src/com/android/settings/password/ChooseLockPasswordTest.java
index 3c50c6b..43a49a1 100644
--- a/tests/robotests/src/com/android/settings/password/ChooseLockPasswordTest.java
+++ b/tests/robotests/src/com/android/settings/password/ChooseLockPasswordTest.java
@@ -27,6 +27,7 @@
 import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_NUMERIC_COMPLEX;
 import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_SOMETHING;
 import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED;
+import static android.view.WindowManager.LayoutParams.FLAG_SECURE;
 
 import static com.android.internal.widget.LockPatternUtils.PASSWORD_TYPE_KEY;
 import static com.android.settings.password.ChooseLockGeneric.CONFIRM_CREDENTIALS;
@@ -159,6 +160,21 @@
     }
 
     @Test
+    public void activity_shouldHaveSecureFlag() {
+        PasswordPolicy policy = new PasswordPolicy();
+        policy.quality = PASSWORD_QUALITY_ALPHABETIC;
+        policy.length = 10;
+
+        Intent intent = createIntentForPasswordValidation(
+                /* minMetrics */ policy.getMinMetrics(),
+                /* minComplexity= */ PASSWORD_COMPLEXITY_NONE,
+                /* passwordType= */ PASSWORD_QUALITY_ALPHABETIC);
+        ChooseLockPassword activity = buildChooseLockPasswordActivity(intent);
+        final int flags = activity.getWindow().getAttributes().flags;
+        assertThat(flags & FLAG_SECURE).isEqualTo(FLAG_SECURE);
+    }
+
+    @Test
     public void processAndValidatePasswordRequirements_noMinPasswordComplexity() {
         PasswordPolicy policy = new PasswordPolicy();
         policy.quality = PASSWORD_QUALITY_ALPHABETIC;
diff --git a/tests/robotests/src/com/android/settings/password/ChooseLockPatternTest.java b/tests/robotests/src/com/android/settings/password/ChooseLockPatternTest.java
index f5cc394..1fc10fc 100644
--- a/tests/robotests/src/com/android/settings/password/ChooseLockPatternTest.java
+++ b/tests/robotests/src/com/android/settings/password/ChooseLockPatternTest.java
@@ -16,6 +16,8 @@
 
 package com.android.settings.password;
 
+import static android.view.WindowManager.LayoutParams.FLAG_SECURE;
+
 import static com.google.common.truth.Truth.assertThat;
 import static com.google.common.truth.Truth.assertWithMessage;
 
@@ -107,6 +109,14 @@
         assertThat(iconView.getVisibility()).isEqualTo(View.GONE);
     }
 
+    @Test
+    public void activity_shouldHaveSecureFlag() {
+        final ChooseLockPattern activity = Robolectric.buildActivity(
+                ChooseLockPattern.class, new IntentBuilder(application).build()).setup().get();
+        final int flags = activity.getWindow().getAttributes().flags;
+        assertThat(flags & FLAG_SECURE).isEqualTo(FLAG_SECURE);
+    }
+
     private ChooseLockPattern createActivity(boolean addFingerprintExtra) {
         return Robolectric.buildActivity(
                 ChooseLockPattern.class,
diff --git a/tests/robotests/src/com/android/settings/password/SetupChooseLockPatternTest.java b/tests/robotests/src/com/android/settings/password/SetupChooseLockPatternTest.java
index 53e68d9..e01e023 100644
--- a/tests/robotests/src/com/android/settings/password/SetupChooseLockPatternTest.java
+++ b/tests/robotests/src/com/android/settings/password/SetupChooseLockPatternTest.java
@@ -27,6 +27,7 @@
 import android.os.UserHandle;
 import android.view.View;
 import android.widget.Button;
+import android.widget.TextView;
 
 import androidx.appcompat.app.AlertDialog;
 import androidx.fragment.app.FragmentActivity;
@@ -192,6 +193,18 @@
                 .isEqualTo(application.getString(R.string.lockpattern_retry_button_text));
     }
 
+    @Test
+    public void createActivity_patternDescription_shouldBeShown() {
+        PartnerCustomizationLayout layout = mActivity.findViewById(R.id.setup_wizard_layout);
+
+        final TextView patternDescription =
+                layout.findViewById(R.id.sud_layout_subtitle);
+
+        assertThat(patternDescription.getVisibility()).isEqualTo(View.VISIBLE);
+        assertThat(patternDescription.getText()).isEqualTo(
+                application.getString(R.string.lockpassword_choose_your_pattern_description));
+    }
+
     private ChooseLockPatternFragment findFragment(FragmentActivity activity) {
         return (ChooseLockPatternFragment)
                 activity.getSupportFragmentManager().findFragmentById(R.id.main_content);
diff --git a/tests/robotests/src/com/android/settings/privacy/WorkPolicyInfoPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/privacy/WorkPolicyInfoPreferenceControllerTest.java
index 82444aa..a983228 100644
--- a/tests/robotests/src/com/android/settings/privacy/WorkPolicyInfoPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/privacy/WorkPolicyInfoPreferenceControllerTest.java
@@ -21,6 +21,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
@@ -30,6 +31,7 @@
 import androidx.preference.Preference;
 
 import com.android.settings.enterprise.EnterprisePrivacyFeatureProvider;
+import com.android.settings.safetycenter.SafetyCenterManagerWrapper;
 import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
@@ -52,6 +54,7 @@
         mContext = RuntimeEnvironment.application;
         mFakeFeatureFactory = FakeFeatureFactory.setupForTest();
         mEnterpriseProvider = mFakeFeatureFactory.getEnterprisePrivacyFeatureProvider(mContext);
+        SafetyCenterManagerWrapper.sInstance = mock(SafetyCenterManagerWrapper.class);
     }
 
     @Test
@@ -73,6 +76,15 @@
     }
 
     @Test
+    public void getAvailabilityStatus_safetyCenterEnabled_shouldReturnUnsupported() {
+        when(SafetyCenterManagerWrapper.get().isEnabled(mContext)).thenReturn(true);
+        WorkPolicyInfoPreferenceController controller =
+                new WorkPolicyInfoPreferenceController(mContext, "test_key");
+
+        assertThat(controller.getAvailabilityStatus()).isEqualTo(UNSUPPORTED_ON_DEVICE);
+    }
+
+    @Test
     public void handlePreferenceTreeClick_nonMatchingKey_shouldDoNothing() {
         when(mEnterpriseProvider.hasWorkPolicyInfo()).thenReturn(true);
         WorkPolicyInfoPreferenceController controller =
diff --git a/tests/robotests/src/com/android/settings/testutils/FakeFeatureFactory.java b/tests/robotests/src/com/android/settings/testutils/FakeFeatureFactory.java
index 518aee9..2f24832 100644
--- a/tests/robotests/src/com/android/settings/testutils/FakeFeatureFactory.java
+++ b/tests/robotests/src/com/android/settings/testutils/FakeFeatureFactory.java
@@ -47,6 +47,7 @@
 import com.android.settings.security.SecuritySettingsFeatureProvider;
 import com.android.settings.slices.SlicesFeatureProvider;
 import com.android.settings.users.UserFeatureProvider;
+import com.android.settings.vpn2.AdvancedVpnFeatureProvider;
 import com.android.settings.wifi.WifiTrackerLibProvider;
 import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
 
@@ -87,6 +88,7 @@
     public SecuritySettingsFeatureProvider securitySettingsFeatureProvider;
     public AccessibilitySearchFeatureProvider mAccessibilitySearchFeatureProvider;
     public AccessibilityMetricsFeatureProvider mAccessibilityMetricsFeatureProvider;
+    public AdvancedVpnFeatureProvider mAdvancedVpnFeatureProvider;
 
     /**
      * Call this in {@code @Before} method of the test class to use fake factory.
@@ -136,6 +138,7 @@
         securitySettingsFeatureProvider = mock(SecuritySettingsFeatureProvider.class);
         mAccessibilitySearchFeatureProvider = mock(AccessibilitySearchFeatureProvider.class);
         mAccessibilityMetricsFeatureProvider = mock(AccessibilityMetricsFeatureProvider.class);
+        mAdvancedVpnFeatureProvider = mock(AdvancedVpnFeatureProvider.class);
     }
 
     @Override
@@ -272,4 +275,9 @@
     public AccessibilityMetricsFeatureProvider getAccessibilityMetricsFeatureProvider() {
         return mAccessibilityMetricsFeatureProvider;
     }
+
+    @Override
+    public AdvancedVpnFeatureProvider getAdvancedVpnFeatureProvider() {
+        return mAdvancedVpnFeatureProvider;
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUserManager.java b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUserManager.java
index ea51370..b865ea6 100644
--- a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUserManager.java
+++ b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUserManager.java
@@ -226,4 +226,32 @@
         return new UserInfo(PRIMARY_USER_ID, null, null,
                 UserInfo.FLAG_INITIALIZED | UserInfo.FLAG_ADMIN | UserInfo.FLAG_PRIMARY);
     }
+
+    protected boolean setUserEphemeral(@UserIdInt int userId, boolean enableEphemeral) {
+        UserInfo userInfo = mUserProfileInfos.stream()
+                .filter(user -> user.id == userId)
+                .findFirst()
+                .orElse(super.getUserInfo(userId));
+
+        boolean isSuccess = false;
+        boolean isEphemeralUser =
+                        (userInfo.flags & UserInfo.FLAG_EPHEMERAL) != 0;
+        boolean isEphemeralOnCreateUser =
+                (userInfo.flags & UserInfo.FLAG_EPHEMERAL_ON_CREATE)
+                    != 0;
+        // when user is created in ephemeral mode via FLAG_EPHEMERAL
+        // its state cannot be changed.
+        // FLAG_EPHEMERAL_ON_CREATE is used to keep track of this state
+        if (!isEphemeralOnCreateUser) {
+            isSuccess = true;
+            if (isEphemeralUser != enableEphemeral) {
+                if (enableEphemeral) {
+                    userInfo.flags |= UserInfo.FLAG_EPHEMERAL;
+                } else {
+                    userInfo.flags &= ~UserInfo.FLAG_EPHEMERAL;
+                }
+            }
+        }
+        return isSuccess;
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/users/UserSettingsTest.java b/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
index bb7dd75..d1192c1 100644
--- a/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
@@ -56,6 +56,7 @@
 import android.view.MenuItem;
 
 import androidx.fragment.app.FragmentActivity;
+import androidx.preference.Preference;
 import androidx.preference.PreferenceCategory;
 import androidx.preference.PreferenceManager;
 import androidx.preference.PreferenceScreen;
@@ -152,6 +153,8 @@
         ReflectionHelpers.setField(mFragment, "mDefaultIconDrawable", mDefaultIconDrawable);
         ReflectionHelpers.setField(mFragment, "mAddingUser", false);
         ReflectionHelpers.setField(mFragment, "mMetricsFeatureProvider", mMetricsFeatureProvider);
+        ReflectionHelpers.setField(mFragment, "mRemoveGuestOnExitPreferenceController",
+                mock(RemoveGuestOnExitPreferenceController.class));
 
         doReturn(mUserManager).when(mActivity).getSystemService(UserManager.class);
         doReturn(mPackageManager).when(mActivity).getPackageManager();
@@ -178,6 +181,10 @@
         mFragment.mAddSupervisedUser = mAddSupervisedUserPreference;
         mFragment.mAddGuest = mAddGuestPreference;
         mFragment.mUserListCategory = mock(PreferenceCategory.class);
+        mFragment.mGuestUserCategory = mock(PreferenceCategory.class);
+        mFragment.mGuestCategory = mock(PreferenceCategory.class);
+        mFragment.mGuestResetPreference = mock(Preference.class);
+        mFragment.mGuestExitPreference = mock(Preference.class);
     }
 
     @After
@@ -219,7 +226,7 @@
     @Test
     public void testExitGuest_ShouldLogAction() {
         mUserCapabilities.mIsGuest = true;
-        mFragment.exitGuest();
+        mFragment.clearAndExitGuest();
         verify(mMetricsFeatureProvider).action(any(),
                 eq(SettingsEnums.ACTION_USER_GUEST_EXIT_CONFIRMED));
     }
@@ -227,7 +234,7 @@
     @Test
     public void testExitGuestWhenNotGuest_ShouldNotLogAction() {
         mUserCapabilities.mIsGuest = false;
-        mFragment.exitGuest();
+        mFragment.clearAndExitGuest();
         verify(mMetricsFeatureProvider, never()).action(any(),
                 eq(SettingsEnums.ACTION_USER_GUEST_EXIT_CONFIRMED));
     }
@@ -323,7 +330,6 @@
 
         verify(mAddGuestPreference).setVisible(true);
         verify(mAddGuestPreference).setEnabled(true);
-        verify(mAddGuestPreference).setIcon(any(Drawable.class));
         verify(mAddGuestPreference).setSelectable(true);
     }
 
@@ -371,7 +377,6 @@
 
         verify(mAddGuestPreference).setVisible(true);
         verify(mAddGuestPreference).setEnabled(false);
-        verify(mAddGuestPreference).setIcon(any(Drawable.class));
         verify(mAddGuestPreference).setSelectable(true);
     }
 
@@ -473,9 +478,9 @@
         mFragment.updateUserList();
 
         ArgumentCaptor<UserPreference> captor = ArgumentCaptor.forClass(UserPreference.class);
-        verify(mFragment.mUserListCategory, times(2))
+        verify(mFragment.mGuestUserCategory, times(1))
                 .addPreference(captor.capture());
-        UserPreference guestPref = captor.getAllValues().get(1);
+        UserPreference guestPref = captor.getAllValues().get(0);
         assertThat(guestPref.getUserId()).isEqualTo(INACTIVE_GUEST_USER_ID);
         assertThat(guestPref.getTitle()).isEqualTo("Guest");
         assertThat(guestPref.getIcon()).isNotNull();
@@ -595,9 +600,9 @@
         mFragment.updateUserList();
 
         ArgumentCaptor<UserPreference> captor = ArgumentCaptor.forClass(UserPreference.class);
-        verify(mFragment.mUserListCategory, times(2))
+        verify(mFragment.mGuestUserCategory, times(1))
                 .addPreference(captor.capture());
-        UserPreference userPref = captor.getAllValues().get(1);
+        UserPreference userPref = captor.getAllValues().get(0);
         assertThat(userPref.getUserId()).isEqualTo(INACTIVE_GUEST_USER_ID);
         assertThat(userPref.getSummary()).isNull();
     }
diff --git a/tests/robotests/src/com/android/settings/widget/CardPreferenceTest.java b/tests/robotests/src/com/android/settings/widget/CardPreferenceTest.java
index 85ab609..eba447b 100644
--- a/tests/robotests/src/com/android/settings/widget/CardPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/widget/CardPreferenceTest.java
@@ -16,9 +16,18 @@
 
 package com.android.settings.widget;
 
+import static android.view.View.GONE;
+import static android.view.View.VISIBLE;
+
 import static com.google.common.truth.Truth.assertThat;
+import static com.google.common.truth.Truth.assertWithMessage;
 
 import android.content.Context;
+import android.view.View;
+import android.widget.Button;
+
+import androidx.preference.PreferenceViewHolder;
+import androidx.test.core.app.ApplicationProvider;
 
 import com.android.settings.R;
 
@@ -26,23 +35,301 @@
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.RuntimeEnvironment;
 
 @RunWith(RobolectricTestRunner.class)
 public class CardPreferenceTest {
 
-    private Context mContext;
     private CardPreference mCardPreference;
+    private PreferenceViewHolder mHolder;
 
     @Before
     public void setUp() {
-        mContext = RuntimeEnvironment.application;
-        mContext.setTheme(R.style.SettingsPreferenceTheme);
-        mCardPreference = new CardPreference(mContext);
+        Context context = ApplicationProvider.getApplicationContext();
+        context.setTheme(R.style.Theme_Settings);
+        mCardPreference = new CardPreference(context);
+
+        View rootView = View.inflate(context, R.layout.card_preference_layout, /* parent= */ null);
+        mHolder = PreferenceViewHolder.createInstanceForTests(rootView);
     }
 
     @Test
-    public void getLayoutResource() {
-        assertThat(mCardPreference.getLayoutResource()).isEqualTo(R.layout.card_preference_layout);
+    public void newACardPreference_layoutResourceShouldBeCardPreferenceLayout() {
+        Context context = ApplicationProvider.getApplicationContext();
+        context.setTheme(R.style.SettingsPreferenceTheme);
+
+        CardPreference cardPreference = new CardPreference(context);
+
+        assertThat(cardPreference.getLayoutResource()).isEqualTo(R.layout.card_preference_layout);
+    }
+
+    @Test
+    public void onBindViewHolder_noButtonVisible_buttonsLayoutShouldBeGone() {
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getCardPreferenceButtonsView().getVisibility()).isEqualTo(GONE);
+    }
+
+    @Test
+    public void onBindViewHolder_setPrimaryButtonVisibility_buttonsLayoutShouldBeVisible() {
+        mCardPreference.setPrimaryButtonVisible(true);
+
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getCardPreferenceButtonsView().getVisibility()).isEqualTo(VISIBLE);
+    }
+
+    @Test
+    public void onBindViewHolder_setPrimaryButtonVisibility_shouldApplyToPrimaryButton() {
+        mCardPreference.setPrimaryButtonVisible(true);
+
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getPrimaryButton().getVisibility()).isEqualTo(VISIBLE);
+    }
+
+    @Test
+    public void onBindViewHolder_setSecondaryButtonVisibility_buttonsLayoutShouldBeVisible() {
+        mCardPreference.setSecondaryButtonVisible(true);
+
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getCardPreferenceButtonsView().getVisibility()).isEqualTo(VISIBLE);
+    }
+
+    @Test
+    public void onBindViewHolder_setSecondaryButtonVisibility_shouldApplyToSecondaryButton() {
+        mCardPreference.setSecondaryButtonVisible(true);
+
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getSecondaryButton().getVisibility()).isEqualTo(VISIBLE);
+    }
+
+    @Test
+    public void onBindViewHolder_setPrimaryButtonText_shouldApplyToPrimaryButton() {
+        String expectedText = "primary-button";
+        mCardPreference.setPrimaryButtonText(expectedText);
+
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getPrimaryButton().getText().toString()).isEqualTo(expectedText);
+    }
+
+    @Test
+    public void onBindViewHolder_setSecondaryButtonText_shouldApplyToSecondaryButton() {
+        String expectedText = "secondary-button";
+        mCardPreference.setSecondaryButtonText(expectedText);
+
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getSecondaryButton().getText().toString()).isEqualTo(expectedText);
+    }
+
+    @Test
+    public void onBindViewHolder_initialTextForPrimaryButtonShouldBeEmpty() {
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getPrimaryButton().getText().toString()).isEqualTo("");
+    }
+
+    @Test
+    public void onBindViewHolder_initialTextForSecondaryButtonShouldBeEmpty() {
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getSecondaryButton().getText().toString()).isEqualTo("");
+    }
+
+    @Test
+    public void performClickOnPrimaryButton_shouldCalledClickListener() {
+        final boolean[] hasCalled = {false};
+        View.OnClickListener clickListener = v -> hasCalled[0] = true;
+        mCardPreference.setPrimaryButtonClickListener(clickListener);
+
+        mCardPreference.onBindViewHolder(mHolder);
+        getPrimaryButton().performClick();
+
+        assertThat(hasCalled[0]).isTrue();
+    }
+
+    @Test
+    public void performClickOnSecondaryButton_shouldCalledClickListener() {
+        final boolean[] hasCalled = {false};
+        View.OnClickListener clickListener = v -> hasCalled[0] = true;
+        mCardPreference.setSecondaryButtonClickListener(clickListener);
+
+        mCardPreference.onBindViewHolder(mHolder);
+        getSecondaryButton().performClick();
+
+        assertThat(hasCalled[0]).isTrue();
+    }
+
+    @Test
+    public void onBindViewHolder_primaryButtonDefaultIsGone() {
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getPrimaryButton().getVisibility()).isEqualTo(GONE);
+    }
+
+    @Test
+    public void onBindViewHolder_secondaryButtonDefaultIsGone() {
+        mCardPreference.onBindViewHolder(mHolder);
+
+        assertThat(getSecondaryButton().getVisibility()).isEqualTo(GONE);
+    }
+
+    @Test
+    public void setPrimaryButtonVisibility_setTrueAfterBindViewHolder_shouldBeVisible() {
+        mCardPreference.setPrimaryButtonVisible(false);
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setPrimaryButtonVisible(true);
+
+        assertThat(getPrimaryButton().getVisibility()).isEqualTo(VISIBLE);
+    }
+
+    @Test
+    public void setPrimaryButtonText_setAfterBindViewHolder_setOnUi() {
+        String expectedText = "123456";
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setPrimaryButtonText(expectedText);
+
+        assertThat(getPrimaryButton().getText().toString()).isEqualTo(expectedText);
+    }
+
+    @Test
+    public void setPrimaryButtonText_setNull_shouldBeEmptyText() {
+        final String emptyString = "";
+        mCardPreference.setPrimaryButtonText("1234");
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setPrimaryButtonText(null);
+
+        assertThat(getPrimaryButton().getText().toString()).isEqualTo(emptyString);
+    }
+
+    @Test
+    public void setPrimaryButtonClickListener_setAfterOnBindViewHolder() {
+        final String[] hasCalled = {""};
+        String expectedClickedResult = "was called";
+        View.OnClickListener clickListener = v -> hasCalled[0] = expectedClickedResult;
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setPrimaryButtonClickListener(clickListener);
+        getPrimaryButton().performClick();
+
+        assertThat(hasCalled[0]).isEqualTo(expectedClickedResult);
+    }
+
+    @Test
+    public void setPrimaryButtonClickListener_setNull_shouldClearTheOnClickListener() {
+        final String[] hasCalled = {"not called"};
+        View.OnClickListener clickListener = v -> hasCalled[0] = "called once";
+        mCardPreference.setPrimaryButtonClickListener(clickListener);
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setPrimaryButtonClickListener(null);
+        getPrimaryButton().performClick();
+
+        assertThat(hasCalled[0]).isEqualTo("not called");
+    }
+
+    @Test
+    public void setSecondaryButtonVisibility_setTrueAfterBindViewHolder_shouldBeVisible() {
+        mCardPreference.setSecondaryButtonVisible(false);
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setSecondaryButtonVisible(true);
+
+        assertThat(getSecondaryButton().getVisibility()).isEqualTo(VISIBLE);
+    }
+
+    @Test
+    public void setSecondaryButtonText_setAfterBindViewHolder_setOnUi() {
+        String expectedText = "10101010";
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setSecondaryButtonText(expectedText);
+
+        assertThat(getSecondaryButton().getText().toString()).isEqualTo(expectedText);
+    }
+
+    @Test
+    public void setSecondaryButtonText_setNull_shouldBeEmptyText() {
+        String emptyString = "";
+        mCardPreference.setSecondaryButtonText("1234");
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setSecondaryButtonText(null);
+
+        assertThat(getSecondaryButton().getText().toString()).isEqualTo(emptyString);
+    }
+
+    @Test
+    public void setSecondaryButtonClickListener_setAfterOnBindViewHolder() {
+        final String[] hasCalled = {""};
+        String expectedClickedResult = "2nd was called";
+        View.OnClickListener clickListener = v -> hasCalled[0] = expectedClickedResult;
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setSecondaryButtonClickListener(clickListener);
+        getSecondaryButton().performClick();
+
+        assertThat(hasCalled[0]).isEqualTo(expectedClickedResult);
+    }
+
+    @Test
+    public void setSecondaryButtonClickListener_setNull_shouldClearTheOnClickListener() {
+        final String[] hasCalled = {"not called"};
+        View.OnClickListener clickListener = v -> hasCalled[0] = "called once";
+        mCardPreference.setSecondaryButtonClickListener(clickListener);
+        mCardPreference.onBindViewHolder(mHolder);
+
+        mCardPreference.setSecondaryButtonClickListener(null);
+        getSecondaryButton().performClick();
+
+        assertThat(hasCalled[0]).isEqualTo("not called");
+    }
+
+    @Test
+    public void
+            setPrimaryButtonVisibility_onlyPrimaryButtonVisible_setGone_buttonGroupShouldBeGone() {
+        mCardPreference.setPrimaryButtonVisible(true);
+        mCardPreference.setSecondaryButtonVisible(false);
+        mCardPreference.onBindViewHolder(mHolder);
+        assertWithMessage("PreCondition: buttonsView should be Visible")
+                .that(getCardPreferenceButtonsView().getVisibility())
+                .isEqualTo(VISIBLE);
+
+        mCardPreference.setPrimaryButtonVisible(false);
+
+        assertThat(getCardPreferenceButtonsView().getVisibility()).isEqualTo(GONE);
+    }
+
+    @Test
+    public void
+            setSecondaryButtonVisibility_only2ndButtonVisible_setGone_buttonGroupShouldBeGone() {
+        mCardPreference.setPrimaryButtonVisible(false);
+        mCardPreference.setSecondaryButtonVisible(true);
+        mCardPreference.onBindViewHolder(mHolder);
+        assertWithMessage("PreCondition: buttonsView should be Visible")
+                .that(getCardPreferenceButtonsView().getVisibility())
+                .isEqualTo(VISIBLE);
+
+        mCardPreference.setSecondaryButtonVisible(false);
+
+        assertThat(getCardPreferenceButtonsView().getVisibility()).isEqualTo(GONE);
+    }
+
+    private View getCardPreferenceButtonsView() {
+        return mHolder.findViewById(R.id.card_preference_buttons);
+    }
+
+    private Button getPrimaryButton() {
+        return (Button) mHolder.findViewById(android.R.id.button1);
+    }
+
+    private Button getSecondaryButton() {
+        return (Button) mHolder.findViewById(android.R.id.button2);
     }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/ConfigureWifiSettingsTest.java b/tests/robotests/src/com/android/settings/wifi/ConfigureWifiSettingsTest.java
index 89df035..5e3d715 100644
--- a/tests/robotests/src/com/android/settings/wifi/ConfigureWifiSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/ConfigureWifiSettingsTest.java
@@ -1,41 +1,180 @@
 package com.android.settings.wifi;
 
+import static com.android.settings.wifi.ConfigureWifiSettings.KEY_INSTALL_CREDENTIALS;
+
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
 
+import android.annotation.Nullable;
 import android.content.Context;
+import android.net.wifi.WifiManager;
+import android.os.Bundle;
+import android.os.UserManager;
+import android.view.View;
+import android.widget.TextView;
 
+import androidx.fragment.app.FragmentActivity;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+import androidx.test.core.app.ApplicationProvider;
+
+import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.testutils.XmlTestUtils;
+import com.android.settingslib.core.AbstractPreferenceController;
 
 import org.junit.Before;
+import org.junit.Rule;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.Spy;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
 
 import java.util.List;
 
 @RunWith(RobolectricTestRunner.class)
 public class ConfigureWifiSettingsTest {
 
-    private Context mContext;
+    @Rule
+    public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+    @Spy
+    Context mContext = ApplicationProvider.getApplicationContext();
+    @Mock
+    UserManager mUserManager;
+    @Mock
+    WifiManager mWifiManager;
+    @Mock
+    FragmentActivity mActivity;
+    @Mock
+    WifiWakeupPreferenceController mWifiWakeupPreferenceController;
+    @Mock
+    Preference mInstallCredentialsPref;
+    @Mock
+    PreferenceScreen mPreferenceScreen;
+    @Mock
+    TextView mEmptyView;
+
+    TestConfigureWifiSettings mSettings;
 
     @Before
     public void setUp() {
-        mContext = spy(RuntimeEnvironment.application);
+        when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
+        when(mUserManager.isGuestUser()).thenReturn(false);
+        when(mActivity.getSystemService(WifiManager.class)).thenReturn(mWifiManager);
+
+        mSettings = spy(new TestConfigureWifiSettings());
+        when(mSettings.getContext()).thenReturn(mContext);
+        when(mSettings.getActivity()).thenReturn(mActivity);
+        when(mSettings.use(WifiWakeupPreferenceController.class))
+                .thenReturn(mWifiWakeupPreferenceController);
+        when(mSettings.findPreference(KEY_INSTALL_CREDENTIALS)).thenReturn(mInstallCredentialsPref);
+    }
+
+    @Test
+    public void onAttach_isNotGuestUser_setupController() {
+        when(mUserManager.isGuestUser()).thenReturn(false);
+
+        mSettings.onAttach(mContext);
+
+        verify(mWifiWakeupPreferenceController).setFragment(any());
+    }
+
+    @Test
+    public void onAttach_isGuestUser_doNotSetupController() {
+        when(mUserManager.isGuestUser()).thenReturn(true);
+
+        mSettings.onAttach(mContext);
+
+        verify(mWifiWakeupPreferenceController, never()).setFragment(any());
+    }
+
+    @Test
+    @Config(shadows = ShadowDashboardFragment.class)
+    public void onCreate_isNotGuestUser_setupPreference() {
+        when(mUserManager.isGuestUser()).thenReturn(false);
+
+        mSettings.onCreate(null);
+
+        verify(mInstallCredentialsPref).setOnPreferenceClickListener(any());
+    }
+
+    @Test
+    @Config(shadows = ShadowDashboardFragment.class)
+    public void onCreate_isGuestUser_doNotSetupPreference() {
+        when(mUserManager.isGuestUser()).thenReturn(true);
+
+        mSettings.onCreate(null);
+
+        verify(mInstallCredentialsPref, never()).setOnPreferenceClickListener(any());
+    }
+
+    @Test
+    @Config(shadows = ShadowDashboardFragment.class)
+    public void onViewCreated_isNotGuestUser_doNotRestrictUi() {
+        when(mUserManager.isGuestUser()).thenReturn(false);
+        when(mActivity.findViewById(android.R.id.empty)).thenReturn(mEmptyView);
+        doReturn(mPreferenceScreen).when(mSettings).getPreferenceScreen();
+
+        mSettings.onViewCreated(mock(View.class), null);
+
+        verify(mEmptyView, never()).setVisibility(View.VISIBLE);
+        verify(mPreferenceScreen, never()).removeAll();
+    }
+
+    @Test
+    @Config(shadows = ShadowDashboardFragment.class)
+    public void onViewCreated_isGuestUser_restrictUi() {
+        when(mUserManager.isGuestUser()).thenReturn(true);
+        when(mActivity.findViewById(android.R.id.empty)).thenReturn(mEmptyView);
+        doReturn(mPreferenceScreen).when(mSettings).getPreferenceScreen();
+
+        mSettings.onViewCreated(mock(View.class), null);
+
+        verify(mEmptyView).setVisibility(View.VISIBLE);
+        verify(mPreferenceScreen).removeAll();
     }
 
     @Test
     @Config(qualifiers = "mcc999")
-    public void testNonIndexableKeys_ifPageDisabled_shouldNotIndexResource() {
+    public void getNonIndexableKeys_ifPageDisabled_shouldNotIndexResource() {
         final List<String> niks =
             ConfigureWifiSettings.SEARCH_INDEX_DATA_PROVIDER.getNonIndexableKeys(mContext);
-        final int xmlId = new ConfigureWifiSettings().getPreferenceScreenResId();
 
+        final int xmlId = mSettings.getPreferenceScreenResId();
         final List<String> keys = XmlTestUtils.getKeysFromPreferenceXml(mContext, xmlId);
         assertThat(keys).isNotNull();
         assertThat(niks).containsAtLeastElementsIn(keys);
     }
+
+    public static class TestConfigureWifiSettings extends ConfigureWifiSettings {
+        @Override
+        public <T extends AbstractPreferenceController> T use(Class<T> clazz) {
+            return super.use(clazz);
+        }
+    }
+
+    @Implements(DashboardFragment.class)
+    public static class ShadowDashboardFragment {
+        @Implementation
+        public void onCreate(Bundle icicle) {
+            // do nothing
+        }
+
+        @Implementation
+        public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
+            // do nothing
+        }
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/WifiConfigController2Test.java b/tests/robotests/src/com/android/settings/wifi/WifiConfigController2Test.java
index 5d568fe..9139a28 100644
--- a/tests/robotests/src/com/android/settings/wifi/WifiConfigController2Test.java
+++ b/tests/robotests/src/com/android/settings/wifi/WifiConfigController2Test.java
@@ -16,6 +16,8 @@
 
 package com.android.settings.wifi;
 
+import static com.android.settings.wifi.WifiConfigController2.WIFI_EAP_METHOD_SIM;
+
 import static com.google.common.truth.Truth.assertThat;
 
 import static org.mockito.ArgumentMatchers.anyInt;
@@ -86,6 +88,8 @@
     private AndroidKeystoreAliasLoader mAndroidKeystoreAliasLoader;
     @Mock
     private WifiManager mWifiManager;
+    @Mock
+    Spinner mEapMethodSimSpinner;
     private View mView;
     private Spinner mHiddenSettingsSpinner;
     private Spinner mEapCaCertSpinner;
@@ -141,6 +145,7 @@
                 mContext.getString(R.string.wifi_do_not_provide_eap_user_cert);
         ipSettingsSpinner.setSelection(DHCP);
         mShadowSubscriptionManager = shadowOf(mContext.getSystemService(SubscriptionManager.class));
+        when(mEapMethodSimSpinner.getSelectedItemPosition()).thenReturn(WIFI_EAP_METHOD_SIM);
 
         mController = new TestWifiConfigController2(mConfigUiBase, mView, mWifiEntry,
                 WifiConfigUiBase2.MODE_CONNECT);
@@ -813,10 +818,7 @@
         when(mWifiEntry.getSecurity()).thenReturn(WifiEntry.SECURITY_EAP);
         mController = new TestWifiConfigController2(mConfigUiBase, mView, mWifiEntry,
                 WifiConfigUiBase2.MODE_CONNECT);
-        final Spinner eapMethodSpinner = mock(Spinner.class);
-        when(eapMethodSpinner.getSelectedItemPosition()).thenReturn(
-                WifiConfigController2.WIFI_EAP_METHOD_SIM);
-        mController.mEapMethodSpinner = eapMethodSpinner;
+        mController.mEapMethodSpinner = mEapMethodSimSpinner;
 
         mController.loadSims();
 
@@ -837,10 +839,7 @@
         mShadowSubscriptionManager.setActiveSubscriptionInfoList(Arrays.asList(subscriptionInfo));
         mController = new TestWifiConfigController2(mConfigUiBase, mView, mWifiEntry,
                 WifiConfigUiBase2.MODE_CONNECT);
-        final Spinner eapMethodSpinner = mock(Spinner.class);
-        when(eapMethodSpinner.getSelectedItemPosition()).thenReturn(
-                WifiConfigController2.WIFI_EAP_METHOD_SIM);
-        mController.mEapMethodSpinner = eapMethodSpinner;
+        mController.mEapMethodSpinner = mEapMethodSimSpinner;
 
         mController.loadSims();
 
@@ -849,6 +848,48 @@
     }
 
     @Test
+    public void loadSims_twoSimsWithDifferentCarrierId_showTwoSims() {
+        SubscriptionInfo sub1 = createMockSubscription(1, "sub1", 8888);
+        SubscriptionInfo sub2 = createMockSubscription(2, "sub2", 9999);
+        SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(sub1, sub2));
+        mShadowSubscriptionManager.setActiveSubscriptionInfoList(Arrays.asList(sub1, sub2));
+        when(mWifiEntry.getSecurity()).thenReturn(WifiEntry.SECURITY_EAP);
+        mController = new TestWifiConfigController2(mConfigUiBase, mView, mWifiEntry,
+                WifiConfigUiBase2.MODE_CONNECT);
+        mController.mEapMethodSpinner = mEapMethodSimSpinner;
+        ShadowSubscriptionManager.setDefaultDataSubscriptionId(1);
+
+        mController.loadSims();
+
+        assertThat(mController.mEapSimSpinner.getAdapter().getCount()).isEqualTo(2);
+    }
+
+    @Test
+    public void loadSims_twoSimsWithSameCarrierId_showOneDefaultDataSim() {
+        SubscriptionInfo sub1 = createMockSubscription(1, "sub1", 9999);
+        SubscriptionInfo sub2 = createMockSubscription(2, "sub2", 9999);
+        SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(sub1, sub2));
+        mShadowSubscriptionManager.setActiveSubscriptionInfoList(Arrays.asList(sub1, sub2));
+        when(mWifiEntry.getSecurity()).thenReturn(WifiEntry.SECURITY_EAP);
+        mController = new TestWifiConfigController2(mConfigUiBase, mView, mWifiEntry,
+                WifiConfigUiBase2.MODE_CONNECT);
+        mController.mEapMethodSpinner = mEapMethodSimSpinner;
+        ShadowSubscriptionManager.setDefaultDataSubscriptionId(1);
+
+        mController.loadSims();
+
+        assertThat(mController.mEapSimSpinner.getAdapter().getCount()).isEqualTo(1);
+        assertThat(mController.mEapSimSpinner.getSelectedItem().toString()).isEqualTo("sub1");
+
+        ShadowSubscriptionManager.setDefaultDataSubscriptionId(2);
+
+        mController.loadSims();
+
+        assertThat(mController.mEapSimSpinner.getAdapter().getCount()).isEqualTo(1);
+        assertThat(mController.mEapSimSpinner.getSelectedItem().toString()).isEqualTo("sub2");
+    }
+
+    @Test
     public void loadCaCertificateValue_shouldPersistentAsDefault() {
         setUpModifyingSavedCertificateConfigController(null, null);
 
@@ -940,4 +981,12 @@
         //  certificates are covered by mController.onItemSelected after showSecurityFields end.
         mController.mEapMethodSpinner.setSelection(Eap.TLS);
     }
+
+    private SubscriptionInfo createMockSubscription(int subId, String displayName, int carrierId) {
+        SubscriptionInfo sub = mock(SubscriptionInfo.class);
+        when(sub.getSubscriptionId()).thenReturn(subId);
+        when(sub.getDisplayName()).thenReturn(displayName);
+        when(sub.getCarrierId()).thenReturn(carrierId);
+        return sub;
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/WifiDialogActivityTest.java b/tests/robotests/src/com/android/settings/wifi/WifiDialogActivityTest.java
index 4ceb1e3..c9cc02e 100644
--- a/tests/robotests/src/com/android/settings/wifi/WifiDialogActivityTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/WifiDialogActivityTest.java
@@ -18,6 +18,7 @@
 
 import static android.Manifest.permission.ACCESS_COARSE_LOCATION;
 import static android.Manifest.permission.ACCESS_FINE_LOCATION;
+import static android.os.UserManager.DISALLOW_CONFIG_WIFI;
 
 import static com.android.settings.wifi.WifiDialogActivity.REQUEST_CODE_WIFI_DPP_ENROLLEE_QR_CODE_SCANNER;
 import static com.android.settings.wifi.WifiDialogActivity.RESULT_CONNECTED;
@@ -32,10 +33,12 @@
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import android.app.KeyguardManager;
 import android.content.Intent;
 import android.content.pm.PackageManager;
 import android.net.wifi.WifiConfiguration;
 import android.net.wifi.WifiManager;
+import android.os.UserManager;
 
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settingslib.wifi.AccessPoint;
@@ -58,6 +61,8 @@
     static final int REQUEST_CODE = REQUEST_CODE_WIFI_DPP_ENROLLEE_QR_CODE_SCANNER;
 
     @Mock
+    UserManager mUserManager;
+    @Mock
     PackageManager mPackageManager;
     @Mock
     WifiManager mWifiManager;
@@ -77,6 +82,8 @@
     Intent mResultData;
     @Mock
     WifiConfigController mController;
+    @Mock
+    KeyguardManager mKeyguardManager;
 
     WifiDialogActivity mActivity;
 
@@ -92,7 +99,9 @@
         FakeFeatureFactory.setupForTest();
 
         mActivity = spy(Robolectric.setupActivity(WifiDialogActivity.class));
+        when(mActivity.getSystemService(UserManager.class)).thenReturn(mUserManager);
         when(mActivity.getSystemService(WifiManager.class)).thenReturn(mWifiManager);
+        when(mActivity.getSystemService(KeyguardManager.class)).thenReturn(mKeyguardManager);
     }
 
     @Test
@@ -212,6 +221,20 @@
     }
 
     @Test
+    public void isConfigWifiAllowed_hasNoUserRestriction_returnTrue() {
+        when(mUserManager.hasUserRestriction(DISALLOW_CONFIG_WIFI)).thenReturn(false);
+
+        assertThat(mActivity.isConfigWifiAllowed()).isTrue();
+    }
+
+    @Test
+    public void isConfigWifiAllowed_hasUserRestriction_returnFalse() {
+        when(mUserManager.hasUserRestriction(DISALLOW_CONFIG_WIFI)).thenReturn(true);
+
+        assertThat(mActivity.isConfigWifiAllowed()).isFalse();
+    }
+
+    @Test
     public void hasPermissionForResult_noCallingPackage_returnFalse() {
         when(mActivity.getCallingPackage()).thenReturn(null);
 
@@ -274,4 +297,35 @@
 
         assertThat(result).isTrue();
     }
+
+    @Test
+    public void dismissDialog_hasDialog_dialogDismiss() {
+        mActivity.mDialog = mWifiDialog;
+        mActivity.mDialog2 = mWifiDialog2;
+
+        mActivity.dismissDialog();
+
+        verify(mWifiDialog).dismiss();
+        verify(mWifiDialog2).dismiss();
+    }
+
+    @Test
+    public void onKeyguardLockedStateChanged_keyguardIsNotLocked_doNotDismissDialog() {
+        WifiDialogActivity.LockScreenMonitor lockScreenMonitor =
+                new WifiDialogActivity.LockScreenMonitor(mActivity);
+
+        lockScreenMonitor.onKeyguardLockedStateChanged(false /* isKeyguardLocked */);
+
+        verify(mActivity, never()).dismissDialog();
+    }
+
+    @Test
+    public void onKeyguardLockedStateChanged_keyguardIsLocked_dismissDialog() {
+        WifiDialogActivity.LockScreenMonitor lockScreenMonitor =
+                new WifiDialogActivity.LockScreenMonitor(mActivity);
+
+        lockScreenMonitor.onKeyguardLockedStateChanged(true /* isKeyguardLocked */);
+
+        verify(mActivity).dismissDialog();
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/WifiScanModeActivityTest.java b/tests/robotests/src/com/android/settings/wifi/WifiScanModeActivityTest.java
index 1e3afdb..5937997 100644
--- a/tests/robotests/src/com/android/settings/wifi/WifiScanModeActivityTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/WifiScanModeActivityTest.java
@@ -18,11 +18,17 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import android.content.Context;
+import android.os.UserManager;
 import android.text.TextUtils;
 
+import androidx.test.core.app.ApplicationProvider;
+
 import com.android.settings.testutils.shadow.ShadowUtils;
 import com.android.settingslib.wifi.WifiPermissionChecker;
 
@@ -32,6 +38,7 @@
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Mock;
+import org.mockito.Spy;
 import org.mockito.junit.MockitoJUnit;
 import org.mockito.junit.MockitoRule;
 import org.robolectric.Robolectric;
@@ -47,6 +54,10 @@
 
     @Rule
     public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+    @Spy
+    Context mContext = ApplicationProvider.getApplicationContext();
+    @Mock
+    UserManager mUserManager;
     @Mock
     WifiPermissionChecker mWifiPermissionChecker;
 
@@ -54,7 +65,11 @@
 
     @Before
     public void setUp() {
+        when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
+        when(mUserManager.isGuestUser()).thenReturn(false);
+
         mActivity = spy(Robolectric.setupActivity(WifiScanModeActivity.class));
+        when(mActivity.getApplicationContext()).thenReturn(mContext);
         mActivity.mWifiPermissionChecker = mWifiPermissionChecker;
     }
 
@@ -87,4 +102,22 @@
 
         assertThat(mActivity.mApp).isEqualTo(APP_LABEL);
     }
+
+    @Test
+    public void createDialog_isNotGuestUser_shouldNotFinishDialog() {
+        when(mUserManager.isGuestUser()).thenReturn(false);
+
+        mActivity.createDialog();
+
+        verify(mActivity, never()).finish();
+    }
+
+    @Test
+    public void createDialog_isGuestUser_shouldFinishDialog() {
+        when(mUserManager.isGuestUser()).thenReturn(true);
+
+        mActivity.createDialog();
+
+        verify(mActivity).finish();
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksActivityTest.java b/tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksActivityTest.java
index 8391b8a..dccd023 100644
--- a/tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksActivityTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksActivityTest.java
@@ -18,24 +18,38 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
-import android.annotation.Nullable;
-import android.app.IActivityManager;
-import android.os.RemoteException;
-
 import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.when;
 
+import android.annotation.Nullable;
+import android.app.IActivityManager;
+import android.content.Context;
+import android.os.RemoteException;
+import android.os.UserManager;
+
+import androidx.test.core.app.ApplicationProvider;
+
 import org.junit.Before;
+import org.junit.Rule;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
+import org.mockito.Spy;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
 import org.robolectric.Robolectric;
 import org.robolectric.RobolectricTestRunner;
 
 @RunWith(RobolectricTestRunner.class)
 public class AddAppNetworksActivityTest {
 
+    @Rule
+    public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+    @Spy
+    Context mContext = ApplicationProvider.getApplicationContext();
+    @Mock
+    UserManager mUserManager;
     @Mock
     private IActivityManager mIActivityManager;
 
@@ -43,10 +57,13 @@
 
     @Before
     public void setUp() {
-        MockitoAnnotations.initMocks(this);
+        when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
+        when(mUserManager.isGuestUser()).thenReturn(false);
 
-        mActivity = Robolectric.buildActivity(FakeAddAppNetworksActivity.class).create().get();
+        mActivity = spy(Robolectric.buildActivity(FakeAddAppNetworksActivity.class).create().get());
+        when(mActivity.getApplicationContext()).thenReturn(mContext);
         mActivity.mActivityManager = mIActivityManager;
+        fakeCallingPackage("com.android.settings");
     }
 
     @Test
@@ -84,6 +101,20 @@
         assertThat(mActivity.showAddNetworksFragment()).isFalse();
     }
 
+    @Test
+    public void showAddNetworksFragment_isGuestUser_returnFalse() {
+        when(mUserManager.isGuestUser()).thenReturn(true);
+
+        assertThat(mActivity.showAddNetworksFragment()).isFalse();
+    }
+
+    @Test
+    public void showAddNetworksFragment_notGuestUser_returnTrue() {
+        when(mUserManager.isGuestUser()).thenReturn(false);
+
+        assertThat(mActivity.showAddNetworksFragment()).isTrue();
+    }
+
     private void fakeCallingPackage(@Nullable String packageName) {
         try {
             when(mIActivityManager.getLaunchedFromPackage(any())).thenReturn(packageName);
diff --git a/tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragmentTest.java b/tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragmentTest.java
index 24d4c47..8248789 100644
--- a/tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragmentTest.java
@@ -455,6 +455,36 @@
                 AddAppNetworksFragment.MESSAGE_SHOW_SAVE_FAILED)).isTrue();
     }
 
+    @Test
+    public void uiConfigurationItem_putCrToDisplayedSsid_shouldRemoveCr() {
+        String testSsid = "\r" + FAKE_NEW_WPA_SSID + "\r";
+
+        AddAppNetworksFragment.UiConfigurationItem item =
+                new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0);
+
+        assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID);
+    }
+
+    @Test
+    public void uiConfigurationItem_putLfToDisplayedSsid_shouldRemoveLf() {
+        String testSsid = "\n" + FAKE_NEW_WPA_SSID + "\n";
+
+        AddAppNetworksFragment.UiConfigurationItem item =
+                new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0);
+
+        assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID);
+    }
+
+    @Test
+    public void uiConfigurationItem_putCrLfToDisplayedSsid_shouldRemoveCrLf() {
+        String testSsid = "\r\n" + FAKE_NEW_WPA_SSID + "\r\n";
+
+        AddAppNetworksFragment.UiConfigurationItem item =
+                new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0);
+
+        assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID);
+    }
+
     private void setUpOneScannedNetworkWithScanedLevel4() {
         final ArrayList list = new ArrayList<>();
         list.add(mWifiEntry);
diff --git a/tests/robotests/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2Test.java b/tests/robotests/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2Test.java
index 08bcd2a..274ac16 100644
--- a/tests/robotests/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2Test.java
+++ b/tests/robotests/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2Test.java
@@ -58,6 +58,7 @@
 import android.net.wifi.WifiManager;
 import android.os.Handler;
 import android.provider.Settings;
+import android.telephony.SubscriptionInfo;
 import android.telephony.TelephonyManager;
 import android.view.View;
 import android.view.View.OnClickListener;
@@ -108,6 +109,7 @@
 import java.time.format.DateTimeFormatter;
 import java.time.format.FormatStyle;
 import java.util.Arrays;
+import java.util.List;
 import java.util.stream.Collectors;
 
 // TODO(b/143326832): Should add test cases for connect button.
@@ -1791,4 +1793,74 @@
 
         return pref;
     }
+
+    @Test
+    public void fineSubscriptionInfo_noMatchedCarrierId_returnNull() {
+        setUpSpyController();
+        SubscriptionInfo sub1 = mockSubscriptionInfo(1, "sim1", 1111);
+        SubscriptionInfo sub2 = mockSubscriptionInfo(2, "sim2", 2222);
+        List<SubscriptionInfo> activeSubInfos = Arrays.asList(sub1, sub2);
+
+        SubscriptionInfo info = mController.fineSubscriptionInfo(3333, activeSubInfos, 1);
+
+        assertThat(info).isNull();
+
+        info = mController.fineSubscriptionInfo(3333, activeSubInfos, 2);
+
+        assertThat(info).isNull();
+    }
+
+    @Test
+    public void fineSubscriptionInfo_diffCarrierId_returnMatchedOne() {
+        setUpSpyController();
+        SubscriptionInfo sub1 = mockSubscriptionInfo(1, "sim1", 1111);
+        SubscriptionInfo sub2 = mockSubscriptionInfo(2, "sim2", 2222);
+        List<SubscriptionInfo> activeSubInfos = Arrays.asList(sub1, sub2);
+
+        SubscriptionInfo info = mController.fineSubscriptionInfo(1111, activeSubInfos, 1);
+
+        assertThat(info).isNotNull();
+        assertThat(info.getDisplayName().toString()).isEqualTo("sim1");
+
+        info = mController.fineSubscriptionInfo(1111, activeSubInfos, 2);
+
+        assertThat(info).isNotNull();
+        assertThat(info.getDisplayName().toString()).isEqualTo("sim1");
+
+        info = mController.fineSubscriptionInfo(2222, activeSubInfos, 1);
+
+        assertThat(info).isNotNull();
+        assertThat(info.getDisplayName().toString()).isEqualTo("sim2");
+
+        info = mController.fineSubscriptionInfo(2222, activeSubInfos, 2);
+
+        assertThat(info).isNotNull();
+        assertThat(info.getDisplayName().toString()).isEqualTo("sim2");
+    }
+
+    @Test
+    public void fineSubscriptionInfo_sameCarrierId_returnDefaultDataOne() {
+        setUpSpyController();
+        SubscriptionInfo sub1 = mockSubscriptionInfo(1, "sim1", 1111);
+        SubscriptionInfo sub2 = mockSubscriptionInfo(2, "sim2", 1111);
+        List<SubscriptionInfo> activeSubInfos = Arrays.asList(sub1, sub2);
+
+        SubscriptionInfo info = mController.fineSubscriptionInfo(1111, activeSubInfos, 1);
+
+        assertThat(info).isNotNull();
+        assertThat(info.getDisplayName().toString()).isEqualTo("sim1");
+
+        info = mController.fineSubscriptionInfo(1111, activeSubInfos, 2);
+
+        assertThat(info).isNotNull();
+        assertThat(info.getDisplayName().toString()).isEqualTo("sim2");
+    }
+
+    private SubscriptionInfo mockSubscriptionInfo(int subId, String displayName, int carrierId) {
+        SubscriptionInfo info = mock(SubscriptionInfo.class);
+        when(info.getSubscriptionId()).thenReturn(subId);
+        when(info.getDisplayName()).thenReturn(displayName);
+        when(info.getCarrierId()).thenReturn(carrierId);
+        return info;
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivityTest.java b/tests/robotests/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivityTest.java
index 0c9bf37..d8605de 100644
--- a/tests/robotests/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivityTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/dpp/WifiDppConfiguratorActivityTest.java
@@ -16,16 +16,78 @@
 
 package com.android.settings.wifi.dpp;
 
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.UserManager;
+
+import androidx.test.core.app.ApplicationProvider;
+
+import org.junit.Before;
+import org.junit.Rule;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.Spy;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
 import org.robolectric.Robolectric;
 import org.robolectric.RobolectricTestRunner;
 
 @RunWith(RobolectricTestRunner.class)
 public class WifiDppConfiguratorActivityTest {
+
+    @Rule
+    public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+    @Spy
+    Context mContext = ApplicationProvider.getApplicationContext();
+    @Mock
+    UserManager mUserManager;
+
+    WifiDppConfiguratorActivity mActivity;
+    Intent mIntent;
+
+    @Before
+    public void setUp() {
+        when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
+        when(mUserManager.isGuestUser()).thenReturn(false);
+
+        mIntent = new Intent(WifiDppConfiguratorActivity.ACTION_CONFIGURATOR_QR_CODE_SCANNER);
+        mIntent.putExtra(WifiDppUtils.EXTRA_WIFI_SSID, "GoogleGuest");
+        mIntent.putExtra(WifiDppUtils.EXTRA_WIFI_SECURITY, "WPA");
+        mIntent.putExtra(WifiDppUtils.EXTRA_WIFI_PRE_SHARED_KEY, "\\012345678,");
+
+        mActivity = spy(Robolectric.setupActivity(WifiDppConfiguratorActivity.class));
+        when(mActivity.getApplicationContext()).thenReturn(mContext);
+    }
+
     @Test
     public void launchActivity_noIntentAction_shouldNotFatalException() {
         WifiDppConfiguratorActivity wifiDppConfiguratorActivity =
                 Robolectric.setupActivity(WifiDppConfiguratorActivity.class);
     }
+
+    @Test
+    public void handleIntent_isGuestUser_shouldFinish() {
+        when(mUserManager.isGuestUser()).thenReturn(true);
+
+        mActivity.handleIntent(mIntent);
+
+        verify(mActivity).finish();
+    }
+
+    @Test
+    public void handleIntent_notGuestUser_shouldNotFinish() {
+        when(mUserManager.isGuestUser()).thenReturn(false);
+        doNothing().when(mActivity).showQrCodeScannerFragment();
+
+        mActivity.handleIntent(mIntent);
+
+        verify(mActivity, never()).finish();
+    }
 }
diff --git a/tests/robotests/src/com/android/settings/wifi/slice/WifiSliceTest.java b/tests/robotests/src/com/android/settings/wifi/slice/WifiSliceTest.java
index 67ab7b4..5ed2e8b 100644
--- a/tests/robotests/src/com/android/settings/wifi/slice/WifiSliceTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/slice/WifiSliceTest.java
@@ -33,6 +33,7 @@
 import android.content.pm.PackageManager;
 import android.net.Uri;
 import android.net.wifi.WifiManager;
+import android.os.UserManager;
 
 import androidx.slice.Slice;
 import androidx.slice.SliceItem;
@@ -84,6 +85,8 @@
     @Spy
     Context mContext = ApplicationProvider.getApplicationContext();
     @Mock
+    private UserManager mUserManager;
+    @Mock
     private WifiManager mWifiManager;
     @Mock
     private PackageManager mPackageManager;
@@ -98,6 +101,8 @@
     @Before
     public void setUp() {
         doReturn(mResolver).when(mContext).getContentResolver();
+        doReturn(mUserManager).when(mContext).getSystemService(UserManager.class);
+        doReturn(false).when(mUserManager).isGuestUser();
         doReturn(mWifiManager).when(mContext).getSystemService(WifiManager.class);
         doReturn(WifiManager.WIFI_STATE_ENABLED).when(mWifiManager).getWifiState();
         when(mContext.getPackageManager()).thenReturn(mPackageManager);
@@ -115,6 +120,33 @@
     }
 
     @Test
+    public void getWifiSlice_isGuestUser_shouldReturnNoToggle() {
+        doReturn(true).when(mUserManager).isGuestUser();
+
+        final Slice wifiSlice = mWifiSlice.getSlice();
+        final SliceMetadata metadata = SliceMetadata.from(mContext, wifiSlice);
+        final List<SliceAction> toggles = metadata.getToggles();
+        assertThat(toggles).hasSize(0);
+
+        final int rows = SliceQuery.findAll(wifiSlice, FORMAT_SLICE, HINT_LIST_ITEM,
+                null /* nonHints */).size();
+        // Title row
+        assertThat(rows).isEqualTo(1);
+    }
+
+    @Test
+    public void getWifiSlice_isNotGuestUser_shouldHaveTitleAndToggle() {
+        doReturn(false).when(mUserManager).isGuestUser();
+
+        final Slice wifiSlice = mWifiSlice.getSlice();
+        assertThat(wifiSlice).isNotNull();
+
+        final SliceMetadata metadata = SliceMetadata.from(mContext, wifiSlice);
+        final List<SliceAction> toggles = metadata.getToggles();
+        assertThat(toggles).hasSize(1);
+    }
+
+    @Test
     public void getWifiSlice_fromSIPackage_shouldHaveTitleAndToggle() {
         when(mPackageManager.getPackagesForUid(USER_ID)).thenReturn(new String[]{mSIPackageName});
         when(mPackageManager.getNameForUid(USER_ID)).thenReturn(mSIPackageName);
diff --git a/tests/unit/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsLinkPreferenceControllerTest.java b/tests/unit/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsLinkPreferenceControllerTest.java
index c594131..8799879 100644
--- a/tests/unit/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsLinkPreferenceControllerTest.java
+++ b/tests/unit/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsLinkPreferenceControllerTest.java
@@ -31,6 +31,7 @@
 import android.os.Build;
 import android.service.notification.NotificationListenerFilter;
 
+import androidx.preference.Preference;
 import androidx.test.core.app.ApplicationProvider;
 import androidx.test.ext.junit.runners.AndroidJUnit4;
 
@@ -68,6 +69,11 @@
         mController.setTargetSdk(Build.VERSION_CODES.CUR_DEVELOPMENT + 1);
 
         assertThat(mController.getAvailabilityStatus()).isEqualTo(DISABLED_DEPENDENT_SETTING);
+
+        // disables field
+        Preference p = new Preference(mContext);
+        mController.updateState(p);
+        assertThat(p.isEnabled()).isFalse();
     }
 
     @Test
@@ -77,6 +83,11 @@
         when(mNm.getListenerFilter(mCn, 0)).thenReturn(new NotificationListenerFilter());
 
         assertThat(mController.getAvailabilityStatus()).isEqualTo(DISABLED_DEPENDENT_SETTING);
+
+        // disables field
+        Preference p = new Preference(mContext);
+        mController.updateState(p);
+        assertThat(p.isEnabled()).isFalse();
     }
 
     @Test
@@ -88,6 +99,11 @@
         when(mNm.getListenerFilter(mCn, 0)).thenReturn(nlf);
 
         assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
+
+        // enables field
+        Preference p = new Preference(mContext);
+        mController.updateState(p);
+        assertThat(p.isEnabled()).isTrue();
     }
 
     @Test
@@ -97,5 +113,10 @@
         when(mNm.getListenerFilter(mCn, 0)).thenReturn(new NotificationListenerFilter());
 
         assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
+
+        // enables field
+        Preference p = new Preference(mContext);
+        mController.updateState(p);
+        assertThat(p.isEnabled()).isTrue();
     }
 }
diff --git a/tests/unit/src/com/android/settings/bluetooth/QrCodeScanModeActivityTest.java b/tests/unit/src/com/android/settings/bluetooth/QrCodeScanModeActivityTest.java
new file mode 100644
index 0000000..56764e3
--- /dev/null
+++ b/tests/unit/src/com/android/settings/bluetooth/QrCodeScanModeActivityTest.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settings.bluetooth;
+
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.content.Intent;
+
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+import androidx.test.platform.app.InstrumentationRegistry;
+
+import com.android.settingslib.bluetooth.BluetoothBroadcastUtils;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+
+@RunWith(AndroidJUnit4.class)
+public class QrCodeScanModeActivityTest {
+
+    @Mock
+    private Intent mIntent;
+    private QrCodeScanModeActivity mActivity;
+
+    @Before
+    public void setUp() {
+        mIntent = new Intent(BluetoothBroadcastUtils.ACTION_BLUETOOTH_LE_AUDIO_QR_CODE_SCANNER);
+        InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> {
+            try {
+                mActivity =
+                        spy((QrCodeScanModeActivity) InstrumentationRegistry
+                                .getInstrumentation().newActivity(
+                                        getClass().getClassLoader(),
+                                        QrCodeScanModeActivity.class.getName(), mIntent));
+            } catch (Exception e) {
+                throw new RuntimeException(e); // nothing to do
+            }
+        });
+    }
+
+    @Test
+    public void handleIntent_noIntentAction_shouldFinish() {
+        mIntent = new Intent();
+        mActivity.handleIntent(mIntent);
+        verify(mActivity).finish();
+    }
+
+    @Test
+    public void handleIntent_hasIntentExtra_shouldShowFragment() {
+        doNothing().when(mActivity).showQrCodeScannerFragment(mIntent);
+        mActivity.handleIntent(mIntent);
+        verify(mActivity).showQrCodeScannerFragment(mIntent);
+    }
+
+}
diff --git a/tests/unit/src/com/android/settings/deviceinfo/VolumeOptionMenuControllerTest.java b/tests/unit/src/com/android/settings/deviceinfo/VolumeOptionMenuControllerTest.java
index 8bd9b01..d347f91 100644
--- a/tests/unit/src/com/android/settings/deviceinfo/VolumeOptionMenuControllerTest.java
+++ b/tests/unit/src/com/android/settings/deviceinfo/VolumeOptionMenuControllerTest.java
@@ -55,7 +55,6 @@
     @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private Menu mMenu;
     @Mock private PackageManager mPackageManager;
-    @Mock private StorageManager mStorageManager;
     @Mock private VolumeInfo mExternalVolumeInfo;
     @Mock private VolumeInfo mInternalVolumeInfo;
 
@@ -68,7 +67,6 @@
 
         mContext = spy(ApplicationProvider.getApplicationContext());
         when(mContext.getPackageManager()).thenReturn(mPackageManager);
-        when(mContext.getSystemService(StorageManager.class)).thenReturn(mStorageManager);
 
         when(mInternalVolumeInfo.getId()).thenReturn(INTERNAL_VOLUME_ID);
         when(mInternalVolumeInfo.getType()).thenReturn(VolumeInfo.TYPE_PRIVATE);
@@ -173,17 +171,16 @@
         when(mExternalVolumeInfo.getState()).thenReturn(VolumeInfo.STATE_MOUNTED);
         when(mExternalVolumeInfo.getDiskId()).thenReturn(DISK_ID);
         final DiskInfo externalDiskInfo = mock(DiskInfo.class);
-        when(mStorageManager.findDiskById(DISK_ID)).thenReturn(externalDiskInfo);
         mController.setSelectedStorageEntry(new StorageEntry(mContext, mExternalVolumeInfo));
 
         mController.onPrepareOptionsMenu(mMenu);
 
         verify(mController.mRename, atLeastOnce()).setVisible(true);
         verify(mController.mUnmount, atLeastOnce()).setVisible(true);
-        verify(mController.mFormat, atLeastOnce()).setVisible(true);
-        verify(mController.mMount, never()).setVisible(true);
+        verify(mController.mFormatAsInternal, atLeastOnce()).setVisible(true);
         verify(mController.mFormatAsPortable, never()).setVisible(true);
-        verify(mController.mFormatAsInternal, never()).setVisible(true);
+        verify(mController.mFormat, never()).setVisible(true);
+        verify(mController.mMount, never()).setVisible(true);
         verify(mController.mFree, never()).setVisible(true);
         verify(mController.mForget, never()).setVisible(true);
     }
diff --git a/tests/unit/src/com/android/settings/display/ScreenSaverPreferenceControllerTest.java b/tests/unit/src/com/android/settings/display/ScreenSaverPreferenceControllerTest.java
new file mode 100644
index 0000000..3319e2a
--- /dev/null
+++ b/tests/unit/src/com/android/settings/display/ScreenSaverPreferenceControllerTest.java
@@ -0,0 +1,112 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.display;
+
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.when;
+
+import android.content.Context;
+import android.content.res.Resources;
+import android.os.UserManager;
+
+import androidx.test.core.app.ApplicationProvider;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.mockito.Spy;
+
+@RunWith(AndroidJUnit4.class)
+public class ScreenSaverPreferenceControllerTest {
+    @Spy
+    private final Context mContext = ApplicationProvider.getApplicationContext();
+    @Spy
+    private final Resources mResources = mContext.getResources();
+    @Mock
+    private UserManager mUserManager;
+
+    private ScreenSaverPreferenceController mController;
+
+    @Before
+    public void setup() {
+        MockitoAnnotations.initMocks(this);
+
+        mController = new ScreenSaverPreferenceController(mContext);
+
+        when(mContext.getResources()).thenReturn(mResources);
+        when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
+    }
+
+    @Test
+    public void isAvailable_dreamsEnabledForAllUsers_shouldBeTrueForSystemUser() {
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsSupported)).thenReturn(true);
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsOnlyEnabledForSystemUser))
+                .thenReturn(false);
+        when(mUserManager.isSystemUser()).thenReturn(true);
+        assertTrue(mController.isAvailable());
+    }
+
+    @Test
+    public void isAvailable_dreamsEnabledForAllUsers_shouldBeTrueForNonSystemUser() {
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsSupported)).thenReturn(true);
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsOnlyEnabledForSystemUser))
+                .thenReturn(false);
+        when(mUserManager.isSystemUser()).thenReturn(false);
+        assertTrue(mController.isAvailable());
+    }
+
+    @Test
+    public void isAvailable_dreamsDisabled_shouldBeFalseForSystemUser() {
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsSupported)).thenReturn(false);
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsOnlyEnabledForSystemUser))
+                .thenReturn(false);
+        when(mUserManager.isSystemUser()).thenReturn(true);
+        assertFalse(mController.isAvailable());
+    }
+
+    @Test
+    public void isAvailable_dreamsOnlyEnabledForSystemUser_shouldBeTrueForSystemUser() {
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsSupported)).thenReturn(true);
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsOnlyEnabledForSystemUser))
+                .thenReturn(true);
+        when(mUserManager.isSystemUser()).thenReturn(true);
+        assertTrue(mController.isAvailable());
+    }
+
+    @Test
+    public void isAvailable_dreamsOnlyEnabledForSystemUser_shouldBeFalseForNonSystemUser() {
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsSupported)).thenReturn(true);
+        when(mResources.getBoolean(
+                com.android.internal.R.bool.config_dreamsOnlyEnabledForSystemUser))
+                .thenReturn(true);
+        when(mUserManager.isSystemUser()).thenReturn(false);
+        assertFalse(mController.isAvailable());
+    }
+}
diff --git a/tests/unit/src/com/android/settings/network/ProviderModelSliceTest.java b/tests/unit/src/com/android/settings/network/ProviderModelSliceTest.java
index 66247d3..345631c 100644
--- a/tests/unit/src/com/android/settings/network/ProviderModelSliceTest.java
+++ b/tests/unit/src/com/android/settings/network/ProviderModelSliceTest.java
@@ -42,6 +42,7 @@
 import android.net.ConnectivityManager;
 import android.net.Uri;
 import android.net.wifi.WifiManager;
+import android.os.UserManager;
 import android.telephony.SubscriptionManager;
 import android.telephony.TelephonyManager;
 
@@ -87,6 +88,8 @@
     private MockNetworkProviderWorker mMockNetworkProviderWorker;
 
     @Mock
+    private UserManager mUserManager;
+    @Mock
     private SubscriptionManager mSubscriptionManager;
     @Mock
     private ConnectivityManager mConnectivityManager;
@@ -122,6 +125,8 @@
                         any(), any(), any(), any(), any(), anyLong(), anyLong(), any()))
                 .thenReturn(mWifiPickerTracker);
 
+        when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
+        when(mUserManager.isGuestUser()).thenReturn(false);
         when(mContext.getSystemService(SubscriptionManager.class)).thenReturn(mSubscriptionManager);
         when(mContext.getSystemService(ConnectivityManager.class)).thenReturn(mConnectivityManager);
         when(mContext.getSystemService(TelephonyManager.class)).thenReturn(mTelephonyManager);
@@ -164,6 +169,17 @@
 
     @Test
     @UiThreadTest
+    public void getSlice_isGuestUser_shouldNotAddRow() {
+        when(mUserManager.isGuestUser()).thenReturn(true);
+
+        final Slice slice = mMockProviderModelSlice.getSlice();
+
+        assertThat(slice).isNotNull();
+        verify(mListBuilder, never()).addRow(any());
+    }
+
+    @Test
+    @UiThreadTest
     public void getSlice_noWifiAndHasCarrierNoData_oneCarrier() {
         mWifiList.clear();
         mMockNetworkProviderWorker.updateSelfResults(null);
@@ -320,6 +336,21 @@
     }
 
     @Test
+    public void getBackgroundWorkerClass_isGuestUser_returnNull() {
+        when(mUserManager.isGuestUser()).thenReturn(true);
+
+        assertThat(mMockProviderModelSlice.getBackgroundWorkerClass()).isNull();
+    }
+
+    @Test
+    public void getBackgroundWorkerClass_notGuestUser_returnWorkerClass() {
+        when(mUserManager.isGuestUser()).thenReturn(false);
+
+        assertThat(mMockProviderModelSlice.getBackgroundWorkerClass())
+                .isEqualTo(NetworkProviderWorker.class);
+    }
+
+    @Test
     public void providerModelSlice_hasCorrectUri() {
         assertThat(mMockProviderModelSlice.getUri()).isEqualTo(PROVIDER_MODEL_SLICE_URI);
     }
diff --git a/tests/unit/src/com/android/settings/safetycenter/LockScreenSafetySourceTest.java b/tests/unit/src/com/android/settings/safetycenter/LockScreenSafetySourceTest.java
index e7ce002..9dc39da 100644
--- a/tests/unit/src/com/android/settings/safetycenter/LockScreenSafetySourceTest.java
+++ b/tests/unit/src/com/android/settings/safetycenter/LockScreenSafetySourceTest.java
@@ -55,8 +55,10 @@
 public class LockScreenSafetySourceTest {
 
     private static final String SUMMARY = "summary";
-    private static final String FAKE_ACTION_CHOOSE_LOCK_GENERIC_FRAGMENT = "choose_lock_generic";
-    private static final String FAKE_ACTION_SCREEN_LOCK_SETTINGS = "screen_lock_settings";
+    private static final String FAKE_ACTION_OPEN_SUB_SETTING = "open_sub_setting";
+    private static final String EXTRA_DESTINATION = "destination";
+    private static final String FAKE_CHOOSE_LOCK_GENERIC_FRAGMENT = "choose_lock_generic";
+    private static final String FAKE_SCREEN_LOCK_SETTINGS = "screen_lock_settings";
     private static final SafetyEvent EVENT_SOURCE_STATE_CHANGED =
             new SafetyEvent.Builder(SAFETY_EVENT_TYPE_SOURCE_STATE_CHANGED).build();
 
@@ -157,7 +159,10 @@
                 .isEqualTo(SUMMARY);
         assertThat(safetySourceStatus.getPendingIntent().getIntent()).isNotNull();
         assertThat(safetySourceStatus.getPendingIntent().getIntent().getAction())
-                .isEqualTo(FAKE_ACTION_CHOOSE_LOCK_GENERIC_FRAGMENT);
+                .isEqualTo(FAKE_ACTION_OPEN_SUB_SETTING);
+        assertThat(
+                safetySourceStatus.getPendingIntent().getIntent().getStringExtra(EXTRA_DESTINATION))
+                .isEqualTo(FAKE_CHOOSE_LOCK_GENERIC_FRAGMENT);
     }
 
     @Test
@@ -300,7 +305,9 @@
                 ResourcesUtils.getResourcesString(mApplicationContext,
                         "no_screen_lock_issue_action_label"));
         assertThat(action.getPendingIntent().getIntent().getAction())
-                .isEqualTo(FAKE_ACTION_CHOOSE_LOCK_GENERIC_FRAGMENT);
+                .isEqualTo(FAKE_ACTION_OPEN_SUB_SETTING);
+        assertThat(action.getPendingIntent().getIntent().getStringExtra(EXTRA_DESTINATION))
+                .isEqualTo(FAKE_CHOOSE_LOCK_GENERIC_FRAGMENT);
     }
 
     @Test
@@ -383,9 +390,6 @@
     public void setSafetySourceData_whenShouldShowGearMenu_setGearMenuActionIcon() {
         whenScreenLockIsEnabled();
         when(mSafetyCenterManagerWrapper.isEnabled(mApplicationContext)).thenReturn(true);
-        final Intent launchScreenLockSettings = new Intent(FAKE_ACTION_SCREEN_LOCK_SETTINGS);
-        when(mScreenLockPreferenceDetailsUtils.getLaunchScreenLockSettingsIntent(anyInt()))
-                .thenReturn(launchScreenLockSettings);
         when(mScreenLockPreferenceDetailsUtils.shouldShowGearMenu()).thenReturn(true);
 
         LockScreenSafetySource.setSafetySourceData(mApplicationContext,
@@ -399,7 +403,10 @@
 
         assertThat(iconAction.getIconType()).isEqualTo(IconAction.ICON_TYPE_GEAR);
         assertThat(iconAction.getPendingIntent().getIntent().getAction())
-                .isEqualTo(FAKE_ACTION_SCREEN_LOCK_SETTINGS);
+                .isEqualTo(FAKE_ACTION_OPEN_SUB_SETTING);
+        assertThat(
+                iconAction.getPendingIntent().getIntent().getStringExtra(EXTRA_DESTINATION))
+                .isEqualTo(FAKE_SCREEN_LOCK_SETTINGS);
     }
 
     @Test
@@ -448,9 +455,15 @@
         when(mScreenLockPreferenceDetailsUtils.isAvailable()).thenReturn(true);
         when(mScreenLockPreferenceDetailsUtils.getSummary(anyInt())).thenReturn(SUMMARY);
 
-        Intent launchChooseLockGenericFragment = new Intent(
-                FAKE_ACTION_CHOOSE_LOCK_GENERIC_FRAGMENT);
+        Intent launchChooseLockGenericFragment = new Intent(FAKE_ACTION_OPEN_SUB_SETTING);
+        launchChooseLockGenericFragment.putExtra(EXTRA_DESTINATION,
+                FAKE_CHOOSE_LOCK_GENERIC_FRAGMENT);
         when(mScreenLockPreferenceDetailsUtils.getLaunchChooseLockGenericFragmentIntent(anyInt()))
                 .thenReturn(launchChooseLockGenericFragment);
+
+        Intent launchScreenLockSettings = new Intent(FAKE_ACTION_OPEN_SUB_SETTING);
+        launchScreenLockSettings.putExtra(EXTRA_DESTINATION, FAKE_SCREEN_LOCK_SETTINGS);
+        when(mScreenLockPreferenceDetailsUtils.getLaunchScreenLockSettingsIntent(anyInt()))
+                .thenReturn(launchScreenLockSettings);
     }
 }
diff --git a/tests/unit/src/com/android/settings/search/CustomSiteMapRegistryTest.java b/tests/unit/src/com/android/settings/search/CustomSiteMapRegistryTest.java
index 5eb3b33..a3090c6 100644
--- a/tests/unit/src/com/android/settings/search/CustomSiteMapRegistryTest.java
+++ b/tests/unit/src/com/android/settings/search/CustomSiteMapRegistryTest.java
@@ -23,8 +23,8 @@
 import com.android.settings.backup.UserBackupSettingsActivity;
 import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
 import com.android.settings.connecteddevice.usb.UsbDetailsFragment;
-import com.android.settings.fuelgauge.PowerUsageAdvanced;
-import com.android.settings.fuelgauge.PowerUsageSummary;
+import com.android.settings.fuelgauge.batteryusage.PowerUsageAdvanced;
+import com.android.settings.fuelgauge.batteryusage.PowerUsageSummary;
 import com.android.settings.gestures.GestureNavigationSettingsFragment;
 import com.android.settings.gestures.SystemNavigationGestureSettings;
 import com.android.settings.location.LocationSettings;
diff --git a/tests/unit/src/com/android/settings/security/SecuritySettingsTest.java b/tests/unit/src/com/android/settings/security/SecuritySettingsTest.java
index c50d993..272c840 100644
--- a/tests/unit/src/com/android/settings/security/SecuritySettingsTest.java
+++ b/tests/unit/src/com/android/settings/security/SecuritySettingsTest.java
@@ -16,26 +16,42 @@
 
 package com.android.settings.security;
 
+import static android.content.Context.FACE_SERVICE;
+import static android.content.Context.FINGERPRINT_SERVICE;
+import static android.content.pm.PackageManager.FEATURE_FACE;
+import static android.content.pm.PackageManager.FEATURE_FINGERPRINT;
+
 import static com.android.settings.core.PreferenceXmlParserUtils.METADATA_KEY;
 import static com.android.settings.core.PreferenceXmlParserUtils.MetadataFlag.FLAG_INCLUDE_PREF_SCREEN;
 import static com.android.settings.core.PreferenceXmlParserUtils.MetadataFlag.FLAG_NEED_KEY;
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.when;
 
 import android.annotation.XmlRes;
 import android.content.Context;
+import android.content.pm.PackageManager;
+import android.hardware.face.FaceManager;
+import android.hardware.fingerprint.FingerprintManager;
 import android.os.Bundle;
+import android.os.Looper;
 import android.provider.SearchIndexableResource;
 
+import androidx.test.annotation.UiThreadTest;
 import androidx.test.core.app.ApplicationProvider;
 import androidx.test.ext.junit.runners.AndroidJUnit4;
 
+import com.android.settings.biometrics.combination.CombinedBiometricStatusPreferenceController;
+import com.android.settings.biometrics.face.FaceStatusPreferenceController;
+import com.android.settings.biometrics.fingerprint.FingerprintStatusPreferenceController;
 import com.android.settings.core.PreferenceXmlParserUtils;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.security.trustagent.TrustAgentManager;
 import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settingslib.core.AbstractPreferenceController;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -52,26 +68,44 @@
 
     private Context mContext;
     private SecuritySettingsFeatureProvider mSecuritySettingsFeatureProvider;
+    private SecuritySettings mSecuritySettings;
 
     @Mock
     private TrustAgentManager mTrustAgentManager;
+    @Mock
+    private FaceManager mFaceManager;
+    @Mock
+    private FingerprintManager mFingerprintManager;
+    @Mock
+    private PackageManager mPackageManager;
 
     @Before
+    @UiThreadTest
     public void setup() {
+        if (Looper.myLooper() == null) {
+            Looper.prepare();
+        }
+
         MockitoAnnotations.initMocks(this);
-        mContext = ApplicationProvider.getApplicationContext();
+        mContext = spy(ApplicationProvider.getApplicationContext());
+        when(mContext.getPackageManager()).thenReturn(mPackageManager);
+        when(mPackageManager.hasSystemFeature(FEATURE_FACE)).thenReturn(true);
+        when(mPackageManager.hasSystemFeature(FEATURE_FINGERPRINT)).thenReturn(true);
+        doReturn(mFaceManager).when(mContext).getSystemService(FACE_SERVICE);
+        doReturn(mFingerprintManager).when(mContext).getSystemService(FINGERPRINT_SERVICE);
         FakeFeatureFactory mFeatureFactory = FakeFeatureFactory.setupForTest();
-        mSecuritySettingsFeatureProvider = mFeatureFactory.getSecuritySettingsFeatureProvider();
         SecurityFeatureProvider mSecurityFeatureProvider =
                 mFeatureFactory.getSecurityFeatureProvider();
 
         when(mSecurityFeatureProvider.getTrustAgentManager()).thenReturn(mTrustAgentManager);
+        mSecuritySettingsFeatureProvider = mFeatureFactory.getSecuritySettingsFeatureProvider();
+        mSecuritySettings = new SecuritySettings();
     }
 
     @Test
     public void noAlternativeFragmentAvailable_pageIndexIncluded() throws Exception {
-        when(mSecuritySettingsFeatureProvider.hasAlternativeSecuritySettingsFragment())
-                .thenReturn(false);
+        when(mSecuritySettingsFeatureProvider.hasAlternativeSecuritySettingsFragment()).thenReturn(
+                false);
         BaseSearchIndexProvider indexProvider = SecuritySettings.SEARCH_INDEX_DATA_PROVIDER;
 
         List<String> allXmlKeys = getAllXmlKeys(indexProvider);
@@ -83,8 +117,8 @@
 
     @Test
     public void alternativeFragmentAvailable_pageIndexExcluded() throws Exception {
-        when(mSecuritySettingsFeatureProvider.hasAlternativeSecuritySettingsFragment())
-                .thenReturn(true);
+        when(mSecuritySettingsFeatureProvider.hasAlternativeSecuritySettingsFragment()).thenReturn(
+                true);
         BaseSearchIndexProvider indexProvider = SecuritySettings.SEARCH_INDEX_DATA_PROVIDER;
 
         List<String> allXmlKeys = getAllXmlKeys(indexProvider);
@@ -94,6 +128,45 @@
         assertThat(allXmlKeys).isEmpty();
     }
 
+    @Test
+    @UiThreadTest
+    public void preferenceController_containsFaceWhenAvailable() {
+        when(mFaceManager.isHardwareDetected()).thenReturn(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(false);
+        final List<AbstractPreferenceController> controllers =
+                mSecuritySettings.createPreferenceControllers(mContext);
+
+        assertThat(isFacePrefAvailable(controllers)).isTrue();
+        assertThat(isFingerprintPrefAvailable(controllers)).isFalse();
+        assertThat(isCombinedPrefAvailable(controllers)).isFalse();
+    }
+
+    @Test
+    @UiThreadTest
+    public void preferenceController_containsFingerprintWhenAvailable() {
+        when(mFaceManager.isHardwareDetected()).thenReturn(false);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
+        final List<AbstractPreferenceController> controllers =
+                mSecuritySettings.createPreferenceControllers(mContext);
+
+        assertThat(isFacePrefAvailable(controllers)).isFalse();
+        assertThat(isFingerprintPrefAvailable(controllers)).isTrue();
+        assertThat(isCombinedPrefAvailable(controllers)).isFalse();
+    }
+
+    @Test
+    @UiThreadTest
+    public void preferenceController_containsCombinedBiometricWhenAvailable() {
+        when(mFaceManager.isHardwareDetected()).thenReturn(true);
+        when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
+        final List<AbstractPreferenceController> controllers =
+                mSecuritySettings.createPreferenceControllers(mContext);
+
+        assertThat(isFacePrefAvailable(controllers)).isFalse();
+        assertThat(isFingerprintPrefAvailable(controllers)).isFalse();
+        assertThat(isCombinedPrefAvailable(controllers)).isTrue();
+    }
+
     private List<String> getAllXmlKeys(BaseSearchIndexProvider indexProvider) throws Exception {
         final List<SearchIndexableResource> resources = indexProvider.getXmlResourcesToIndex(
                 mContext, true /* not used*/);
@@ -109,11 +182,29 @@
 
     private List<String> getKeysFromXml(@XmlRes int xmlResId) throws Exception {
         final List<String> keys = new ArrayList<>();
-        final List<Bundle> metadata = PreferenceXmlParserUtils
-                .extractMetadata(mContext, xmlResId, FLAG_NEED_KEY | FLAG_INCLUDE_PREF_SCREEN);
+        final List<Bundle> metadata = PreferenceXmlParserUtils.extractMetadata(mContext, xmlResId,
+                FLAG_NEED_KEY | FLAG_INCLUDE_PREF_SCREEN);
         for (Bundle bundle : metadata) {
             keys.add(bundle.getString(METADATA_KEY));
         }
         return keys;
     }
+
+    boolean isFacePrefAvailable(List<AbstractPreferenceController> controllers) {
+        return controllers.stream().filter(
+                controller -> controller instanceof FaceStatusPreferenceController
+                        && controller.isAvailable()).count() == 1;
+    }
+
+    boolean isFingerprintPrefAvailable(List<AbstractPreferenceController> controllers) {
+        return controllers.stream().filter(
+                controller -> controller instanceof FingerprintStatusPreferenceController
+                        && controller.isAvailable()).count() == 1;
+    }
+
+    boolean isCombinedPrefAvailable(List<AbstractPreferenceController> controllers) {
+        return controllers.stream().filter(
+                controller -> controller instanceof CombinedBiometricStatusPreferenceController
+                        && controller.isAvailable()).count() == 1;
+    }
 }
diff --git a/tests/unit/src/com/android/settings/sound/MediaControlsLockScreenPreferenceControllerTest.java b/tests/unit/src/com/android/settings/sound/MediaControlsLockScreenPreferenceControllerTest.java
new file mode 100644
index 0000000..6c1aede
--- /dev/null
+++ b/tests/unit/src/com/android/settings/sound/MediaControlsLockScreenPreferenceControllerTest.java
@@ -0,0 +1,89 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.sound;
+
+import static com.android.settings.core.BasePreferenceController.AVAILABLE;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.content.ContentResolver;
+import android.content.Context;
+import android.provider.Settings;
+
+import androidx.test.core.app.ApplicationProvider;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@RunWith(AndroidJUnit4.class)
+public class MediaControlsLockScreenPreferenceControllerTest {
+
+    private static final String KEY = "media_controls_lockscreen";
+    private final Context mContext = ApplicationProvider.getApplicationContext();
+
+    private int mOriginalPreference;
+    private ContentResolver mContentResolver;
+    private MediaControlsLockScreenPreferenceController mController;
+
+    @Before
+    public void setUp() {
+        mContentResolver = mContext.getContentResolver();
+        mOriginalPreference = Settings.Secure.getInt(mContentResolver,
+                Settings.Secure.MEDIA_CONTROLS_LOCK_SCREEN, 1);
+        mController = new MediaControlsLockScreenPreferenceController(mContext, KEY);
+    }
+
+    @After
+    public void tearDown() {
+        Settings.Secure.putInt(mContentResolver, Settings.Secure.MEDIA_CONTROLS_LOCK_SCREEN,
+                mOriginalPreference);
+    }
+
+    @Test
+    public void getAvailability_returnAvailable() {
+        assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
+    }
+
+    @Test
+    public void setChecked_disable_shouldTurnOff() {
+        Settings.Secure.putInt(mContentResolver,
+                Settings.Secure.MEDIA_CONTROLS_LOCK_SCREEN, 1);
+
+        assertThat(mController.isChecked()).isTrue();
+
+        mController.setChecked(false);
+
+        assertThat(Settings.Secure.getInt(mContentResolver,
+                Settings.Secure.MEDIA_CONTROLS_LOCK_SCREEN, -1)).isEqualTo(0);
+    }
+
+    @Test
+    public void setChecked_enable_shouldTurnOn() {
+        Settings.Secure.putInt(mContentResolver,
+                Settings.Secure.MEDIA_CONTROLS_LOCK_SCREEN, 0);
+
+        assertThat(mController.isChecked()).isFalse();
+
+        mController.setChecked(true);
+
+        assertThat(Settings.Secure.getInt(mContentResolver,
+                Settings.Secure.MEDIA_CONTROLS_LOCK_SCREEN, -1)).isEqualTo(1);
+    }
+}
diff --git a/tests/unit/src/com/android/settings/testutils/FakeFeatureFactory.java b/tests/unit/src/com/android/settings/testutils/FakeFeatureFactory.java
index 717de79..f565075 100644
--- a/tests/unit/src/com/android/settings/testutils/FakeFeatureFactory.java
+++ b/tests/unit/src/com/android/settings/testutils/FakeFeatureFactory.java
@@ -45,6 +45,7 @@
 import com.android.settings.security.SecuritySettingsFeatureProvider;
 import com.android.settings.slices.SlicesFeatureProvider;
 import com.android.settings.users.UserFeatureProvider;
+import com.android.settings.vpn2.AdvancedVpnFeatureProvider;
 import com.android.settings.wifi.WifiTrackerLibProvider;
 import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
 
@@ -82,6 +83,7 @@
     public SecuritySettingsFeatureProvider securitySettingsFeatureProvider;
     public AccessibilitySearchFeatureProvider mAccessibilitySearchFeatureProvider;
     public AccessibilityMetricsFeatureProvider mAccessibilityMetricsFeatureProvider;
+    public AdvancedVpnFeatureProvider mAdvancedVpnFeatureProvider;
 
     /**
      * Call this in {@code @Before} method of the test class to use fake factory.
@@ -122,6 +124,7 @@
         securitySettingsFeatureProvider = mock(SecuritySettingsFeatureProvider.class);
         mAccessibilitySearchFeatureProvider = mock(AccessibilitySearchFeatureProvider.class);
         mAccessibilityMetricsFeatureProvider = mock(AccessibilityMetricsFeatureProvider.class);
+        mAdvancedVpnFeatureProvider = mock(AdvancedVpnFeatureProvider.class);
     }
 
     @Override
@@ -258,4 +261,9 @@
     public AccessibilityMetricsFeatureProvider getAccessibilityMetricsFeatureProvider() {
         return mAccessibilityMetricsFeatureProvider;
     }
+
+    @Override
+    public AdvancedVpnFeatureProvider getAdvancedVpnFeatureProvider() {
+        return mAdvancedVpnFeatureProvider;
+    }
 }
diff --git a/tests/unit/src/com/android/settings/vpn2/AppManagementFragmentTest.java b/tests/unit/src/com/android/settings/vpn2/AppManagementFragmentTest.java
new file mode 100644
index 0000000..80bb393
--- /dev/null
+++ b/tests/unit/src/com/android/settings/vpn2/AppManagementFragmentTest.java
@@ -0,0 +1,102 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.vpn2;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import android.content.Context;
+import android.os.Looper;
+
+import androidx.test.annotation.UiThreadTest;
+import androidx.test.core.app.ApplicationProvider;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settingslib.RestrictedPreference;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+
+@RunWith(AndroidJUnit4.class)
+public class AppManagementFragmentTest {
+    private static final String FAKE_PACKAGE_NAME = "com.fake.package.name";
+    private static final String ADVANCED_VPN_GROUP_PACKAGE_NAME = "com.advanced.package.name";
+
+    @Rule
+    public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+
+    private AppManagementFragment mFragment;
+    private Context mContext;
+    private FakeFeatureFactory mFakeFeatureFactory;
+    private RestrictedPreference mPreferenceForget;
+
+    @Before
+    @UiThreadTest
+    public void setUp() {
+        if (Looper.myLooper() == null) {
+            Looper.prepare();
+        }
+
+        mFragment = spy(new AppManagementFragment());
+        mContext = spy(ApplicationProvider.getApplicationContext());
+        mPreferenceForget = new RestrictedPreference(mContext);
+
+        mFakeFeatureFactory = FakeFeatureFactory.setupForTest();
+        mFragment.init(ADVANCED_VPN_GROUP_PACKAGE_NAME,
+                mFakeFeatureFactory.getAdvancedVpnFeatureProvider(), mPreferenceForget);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.getAdvancedVpnPackageName())
+                .thenReturn(ADVANCED_VPN_GROUP_PACKAGE_NAME);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.isAdvancedVpnSupported(any()))
+                .thenReturn(true);
+    }
+
+    @Test
+    public void updateRestrictedViews_isAdvancedVpn_hidesForgetPreference() {
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.isAdvancedVpnRemovable())
+                .thenReturn(false);
+        mFragment.updateRestrictedViews();
+        assertThat(mPreferenceForget.isVisible()).isFalse();
+    }
+
+    @Test
+    public void updateRestrictedViews_isNotAdvancedVpn_showsForgetPreference() {
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.isAdvancedVpnRemovable())
+                .thenReturn(false);
+        mFragment.init(FAKE_PACKAGE_NAME,
+                mFakeFeatureFactory.getAdvancedVpnFeatureProvider(), mPreferenceForget);
+        mFragment.updateRestrictedViews();
+        assertThat(mPreferenceForget.isVisible()).isTrue();
+    }
+
+    @Test
+    public void updateRestrictedViews_isAdvancedVpnRemovable_showsForgetPreference() {
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.isAdvancedVpnRemovable())
+                .thenReturn(true);
+        mFragment.init(FAKE_PACKAGE_NAME,
+                mFakeFeatureFactory.getAdvancedVpnFeatureProvider(), mPreferenceForget);
+        mFragment.updateRestrictedViews();
+        assertThat(mPreferenceForget.isVisible()).isTrue();
+    }
+}
diff --git a/tests/unit/src/com/android/settings/vpn2/VpnSettingsTest.java b/tests/unit/src/com/android/settings/vpn2/VpnSettingsTest.java
new file mode 100644
index 0000000..953a524
--- /dev/null
+++ b/tests/unit/src/com/android/settings/vpn2/VpnSettingsTest.java
@@ -0,0 +1,285 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.vpn2;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.app.AppOpsManager;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.os.Looper;
+import android.os.UserHandle;
+import android.text.TextUtils;
+import android.util.ArraySet;
+
+import androidx.preference.Preference;
+import androidx.preference.PreferenceCategory;
+import androidx.preference.PreferenceGroup;
+import androidx.preference.PreferenceManager;
+import androidx.preference.PreferenceScreen;
+import androidx.test.annotation.UiThreadTest;
+import androidx.test.core.app.ApplicationProvider;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import com.android.settings.testutils.FakeFeatureFactory;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+@RunWith(AndroidJUnit4.class)
+public class VpnSettingsTest {
+    private static final int USER_ID_1 = UserHandle.USER_NULL;
+    private static final String VPN_GROUP_KEY = "vpn_group";
+    private static final String VPN_GROUP_TITLE = "vpn_group_title";
+    private static final String VPN_PACKAGE_NAME = "vpn.package.name";
+    private static final String VPN_LAUNCH_INTENT = "vpn.action";
+    private static final String ADVANCED_VPN_GROUP_KEY = "advanced_vpn_group";
+    private static final String ADVANCED_VPN_GROUP_TITLE = "advanced_vpn_group_title";
+    private static final String ADVANCED_VPN_PACKAGE_NAME = "advanced.vpn.package.name";
+    private static final String ADVANCED_VPN_LAUNCH_INTENT = "advanced.vpn.action";
+
+    private final Intent mVpnIntent = new Intent().setAction(VPN_LAUNCH_INTENT);
+    private final Intent mAdvancedVpnIntent = new Intent().setAction(ADVANCED_VPN_LAUNCH_INTENT);
+
+    @Rule
+    public final MockitoRule mMockitoRule = MockitoJUnit.rule();
+
+    @Mock
+    private AppOpsManager mAppOpsManager;
+    @Mock
+    private PackageManager mPackageManager;
+
+    private VpnSettings mVpnSettings;
+    private Context mContext;
+    private PreferenceManager mPreferenceManager;
+    private PreferenceScreen mPreferenceScreen;
+    private PreferenceGroup mAdvancedVpnGroup;
+    private PreferenceGroup mVpnGroup;
+    private FakeFeatureFactory mFakeFeatureFactory;
+
+    @Before
+    @UiThreadTest
+    public void setUp() throws PackageManager.NameNotFoundException {
+        if (Looper.myLooper() == null) {
+            Looper.prepare();
+        }
+
+        mVpnSettings = spy(new VpnSettings());
+        mContext = spy(ApplicationProvider.getApplicationContext());
+        mAdvancedVpnGroup = spy(new PreferenceCategory(mContext));
+        mVpnGroup = spy(new PreferenceCategory(mContext));
+        mAdvancedVpnGroup.setKey(ADVANCED_VPN_GROUP_KEY);
+        mVpnGroup.setKey(VPN_GROUP_KEY);
+        mPreferenceManager = new PreferenceManager(mContext);
+        mPreferenceScreen = mPreferenceManager.createPreferenceScreen(mContext);
+        mPreferenceScreen.addPreference(mAdvancedVpnGroup);
+        mPreferenceScreen.addPreference(mVpnGroup);
+        mFakeFeatureFactory = FakeFeatureFactory.setupForTest();
+        mVpnSettings.init(mPreferenceScreen, mFakeFeatureFactory.getAdvancedVpnFeatureProvider());
+
+        when(mVpnSettings.getContext()).thenReturn(mContext);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider
+                .getAdvancedVpnPreferenceGroupTitle(mContext)).thenReturn(ADVANCED_VPN_GROUP_TITLE);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.getVpnPreferenceGroupTitle(mContext))
+                .thenReturn(VPN_GROUP_TITLE);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.getAdvancedVpnPackageName())
+                .thenReturn(ADVANCED_VPN_PACKAGE_NAME);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.isAdvancedVpnSupported(any()))
+                .thenReturn(true);
+        when(mContext.getPackageManager()).thenReturn(mPackageManager);
+        doReturn(mContext).when(mContext).createContextAsUser(any(), anyInt());
+        doReturn(mContext).when(mContext).createPackageContextAsUser(any(), anyInt(), any());
+        doReturn(mPreferenceManager).when(mVpnGroup).getPreferenceManager();
+        doReturn(mPreferenceManager).when(mAdvancedVpnGroup).getPreferenceManager();
+    }
+
+    @Test
+    public void setShownAdvancedPreferences_hasGeneralVpn_returnsVpnCountAs1() {
+        Set<Preference> updates = new ArraySet<>();
+        AppPreference pref =
+                spy(new AppPreference(mContext, USER_ID_1, VPN_PACKAGE_NAME));
+        updates.add(pref);
+
+        mVpnSettings.setShownAdvancedPreferences(updates);
+
+        assertThat(mVpnGroup.getPreferenceCount()).isEqualTo(1);
+        assertThat(mVpnGroup.isVisible()).isTrue();
+        assertThat(mAdvancedVpnGroup.isVisible()).isFalse();
+    }
+
+    @Test
+    public void setShownAdvancedPreferences_hasAdvancedVpn_returnsAdvancedVpnCountAs1() {
+        Set<Preference> updates = new ArraySet<>();
+        AppPreference pref =
+                spy(new AppPreference(mContext, USER_ID_1, ADVANCED_VPN_PACKAGE_NAME));
+        updates.add(pref);
+
+        mVpnSettings.setShownAdvancedPreferences(updates);
+
+        assertThat(mAdvancedVpnGroup.getPreferenceCount()).isEqualTo(1);
+        assertThat(mAdvancedVpnGroup.isVisible()).isTrue();
+        assertThat(mVpnGroup.isVisible()).isFalse();
+    }
+
+    @Test
+    public void setShownAdvancedPreferences_noVpn_returnsEmpty() {
+        Set<Preference> updates = new ArraySet<>();
+
+        mVpnSettings.setShownAdvancedPreferences(updates);
+
+        assertThat(mAdvancedVpnGroup.getPreferenceCount()).isEqualTo(0);
+        assertThat(mVpnGroup.getPreferenceCount()).isEqualTo(0);
+        assertThat(mAdvancedVpnGroup.isVisible()).isFalse();
+        assertThat(mVpnGroup.isVisible()).isFalse();
+    }
+
+    @Test
+    public void getVpnApps_isAdvancedVpn_returnsOne() throws Exception {
+        ApplicationInfo info = new ApplicationInfo();
+        info.uid = 1111;
+        when(mPackageManager.getApplicationInfo(anyString(), anyInt())).thenReturn(info);
+
+        assertThat(VpnSettings.getVpnApps(mContext, /* includeProfiles= */ false,
+                mFakeFeatureFactory.getAdvancedVpnFeatureProvider(),
+                mAppOpsManager).size()).isEqualTo(1);
+    }
+
+    @Test
+    public void getVpnApps_isNotAdvancedVpn_returnsEmpty() {
+        int uid = 1111;
+        List<AppOpsManager.OpEntry> opEntries = new ArrayList<>();
+        List<AppOpsManager.PackageOps> apps = new ArrayList<>();
+        AppOpsManager.PackageOps packageOps =
+                new AppOpsManager.PackageOps(VPN_PACKAGE_NAME, uid, opEntries);
+        apps.add(packageOps);
+        when(mAppOpsManager.getPackagesForOps((int[]) any())).thenReturn(apps);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.isAdvancedVpnSupported(any()))
+                .thenReturn(false);
+
+        assertThat(VpnSettings.getVpnApps(mContext, /* includeProfiles= */ false,
+                mFakeFeatureFactory.getAdvancedVpnFeatureProvider(),
+                mAppOpsManager)).isEmpty();
+    }
+
+    @Test
+    public void clickVpn_VpnConnected_doesNotStartVpnLaunchIntent()
+            throws PackageManager.NameNotFoundException {
+        Set<Preference> updates = new ArraySet<>();
+        AppPreference pref = spy(new AppPreference(mContext, USER_ID_1, VPN_PACKAGE_NAME));
+        pref.setState(AppPreference.STATE_CONNECTED);
+        updates.add(pref);
+        when(mContext.createPackageContextAsUser(any(), anyInt(), any())).thenReturn(mContext);
+        when(mContext.getPackageManager()).thenReturn(mPackageManager);
+        when(mPackageManager.getLaunchIntentForPackage(any())).thenReturn(mVpnIntent);
+        ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
+        doNothing().when(mContext).startActivityAsUser(captor.capture(), any());
+        mVpnSettings.setShownPreferences(updates);
+
+        mVpnSettings.onPreferenceClick(pref);
+
+        verify(mContext, never()).startActivityAsUser(any(), any());
+    }
+
+    @Test
+    public void clickVpn_VpnDisconnected_startsVpnLaunchIntent()
+            throws PackageManager.NameNotFoundException {
+        Set<Preference> updates = new ArraySet<>();
+        AppPreference pref = spy(new AppPreference(mContext, USER_ID_1, VPN_PACKAGE_NAME));
+        pref.setState(AppPreference.STATE_DISCONNECTED);
+        updates.add(pref);
+        when(mContext.createPackageContextAsUser(any(), anyInt(), any())).thenReturn(mContext);
+        when(mContext.getPackageManager()).thenReturn(mPackageManager);
+        when(mPackageManager.getLaunchIntentForPackage(any())).thenReturn(mVpnIntent);
+        ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
+        doNothing().when(mContext).startActivityAsUser(captor.capture(), any());
+        mVpnSettings.setShownPreferences(updates);
+
+        mVpnSettings.onPreferenceClick(pref);
+
+        verify(mContext).startActivityAsUser(captor.capture(), any());
+        assertThat(TextUtils.equals(captor.getValue().getAction(),
+                VPN_LAUNCH_INTENT)).isTrue();
+    }
+
+    @Test
+    public void clickAdvancedVpn_VpnConnectedDisconnectDialogDisabled_startsAppLaunchIntent()
+            throws PackageManager.NameNotFoundException {
+        Set<Preference> updates = new ArraySet<>();
+        AppPreference pref =
+                spy(new AppPreference(mContext, USER_ID_1, ADVANCED_VPN_PACKAGE_NAME));
+        pref.setState(AppPreference.STATE_CONNECTED);
+        updates.add(pref);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.isDisconnectDialogEnabled())
+                .thenReturn(false);
+        when(mContext.createPackageContextAsUser(any(), anyInt(), any())).thenReturn(mContext);
+        when(mContext.getPackageManager()).thenReturn(mPackageManager);
+        when(mPackageManager.getLaunchIntentForPackage(any())).thenReturn(mAdvancedVpnIntent);
+        ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
+        doNothing().when(mContext).startActivityAsUser(captor.capture(), any());
+        mVpnSettings.setShownAdvancedPreferences(updates);
+
+        mVpnSettings.onPreferenceClick(pref);
+
+        verify(mContext).startActivityAsUser(captor.capture(), any());
+        assertThat(TextUtils.equals(captor.getValue().getAction(),
+                ADVANCED_VPN_LAUNCH_INTENT)).isTrue();
+    }
+
+    @Test
+    public void clickAdvancedVpn_VpnConnectedDisconnectDialogEnabled_doesNotStartAppLaunchIntent()
+            throws PackageManager.NameNotFoundException {
+        Set<Preference> updates = new ArraySet<>();
+        AppPreference pref =
+                spy(new AppPreference(mContext, USER_ID_1, ADVANCED_VPN_PACKAGE_NAME));
+        pref.setState(AppPreference.STATE_CONNECTED);
+        updates.add(pref);
+        when(mFakeFeatureFactory.mAdvancedVpnFeatureProvider.isDisconnectDialogEnabled())
+                .thenReturn(true);
+        when(mContext.createPackageContextAsUser(any(), anyInt(), any())).thenReturn(mContext);
+        when(mContext.getPackageManager()).thenReturn(mPackageManager);
+        when(mPackageManager.getLaunchIntentForPackage(any())).thenReturn(mAdvancedVpnIntent);
+        ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
+        doNothing().when(mContext).startActivityAsUser(captor.capture(), any());
+        mVpnSettings.setShownAdvancedPreferences(updates);
+
+        mVpnSettings.onPreferenceClick(pref);
+
+        verify(mContext, never()).startActivityAsUser(any(), any());
+    }
+}
